/* Landing (Landing-Wagi.dc.html), O nas, FAQ, Kontakt, Blog, Wpis, strony tekstowe */

/* ---------- Landing ---------- */
.ss-lhero { background: #fff; border-bottom: 1px solid var(--ss-border); }
.ss-lhero__in { padding-top: 72px; display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 6fr); gap: 40px; align-items: end; }
.ss-lhero__copy { display: flex; flex-direction: column; gap: 22px; padding-bottom: 72px; }
.ss-theme .ss-lhero h1 { font-size: clamp(40px, 5vw, 64px); line-height: .98; letter-spacing: -.035em; text-wrap: pretty; }
.ss-lhero p { font-size: 18px; line-height: 1.5; color: var(--ss-body-2); max-width: 46ch; text-wrap: pretty; }
.ss-lhero__btns { display: flex; gap: 12px; flex-wrap: wrap; }
.ss-lhero__nums { display: flex; gap: 28px; margin-top: 12px; font-size: 13.5px; color: var(--ss-body-2); }
.ss-lhero__nums strong { color: var(--ss-ink); font-size: 18px; font-family: var(--ss-font-display); }
.ss-lhero__media { display: flex; align-items: flex-end; justify-content: center; min-height: 520px; }
.ss-lhero__media img { width: 100%; max-height: 560px; object-fit: contain; object-position: bottom; }
.ss-lhero__media .ss-slot { min-height: 520px; }
.ss-lsec { padding-top: 80px; }
.ss-lsec--last { padding-bottom: 88px; }
.ss-steps3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.ss-card2 { background: #fff; border: 1px solid var(--ss-border); border-radius: 20px; padding: 32px; display: flex; flex-direction: column; gap: 12px; }
.ss-card2__n { font-family: var(--ss-font-display); font-size: 13px; font-weight: 700; color: var(--ss-muted); }
.ss-theme .ss-card2 h3 { font-size: 22px; letter-spacing: -.02em; }
.ss-card2 p { font-size: 14.5px; line-height: 1.6; color: var(--ss-body-2); }
.ss-params { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 24px; align-items: stretch; }
.ss-params__box { border-radius: 20px; padding: 44px 40px; display: flex; flex-direction: column; gap: 24px; justify-content: space-between; }
.ss-params__head { display: flex; flex-direction: column; gap: 14px; }
.ss-theme .ss-params h2 { font-size: 34px; line-height: 1.05; letter-spacing: -.03em; }
.ss-params__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.ss-params__chips span { font-size: 13px; font-weight: 600; padding: 8px 12px; border-radius: 999px; border: 1px solid rgba(42,46,69,.18); background: rgba(255,255,255,.6); color: var(--ss-ink); }
.ss-params__note { font-size: 12.5px; color: var(--ss-muted-2); line-height: 1.5; }
.ss-params__media { border-radius: 20px; overflow: hidden; min-height: 420px; position: relative; }
.ss-params__media img, .ss-params__media .ss-slot { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ss-cmphead { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; margin-bottom: 24px; flex-wrap: wrap; }
.ss-cmphead > div { display: flex; flex-direction: column; gap: 10px; }
.ss-theme .ss-cmphead h2 { font-size: 36px; letter-spacing: -.03em; }
.ss-cmphead p { font-size: 15.5px; color: var(--ss-body-2); max-width: 60ch; }
.ss-cmphead > span { font-size: 13.5px; color: var(--ss-body-2); }
.ss-theme .ss-cmphead > span a { font-weight: 700; color: var(--ss-ink); }
.ss-cmp { background: #fff; border: 1px solid var(--ss-border); border-radius: 20px; overflow: hidden; }
.ss-cmp__row { display: grid; grid-template-columns: 160px repeat(var(--ss-cols, 5), minmax(0, 1fr)); border-bottom: 1px solid var(--ss-border); }
.ss-cmp__row--foot { border-bottom: 0; }
.ss-cmp__row--head > div:first-child { padding: 24px 20px; }
.ss-cmp__row--head > a { padding: 24px 16px 20px; display: flex; flex-direction: column; align-items: center; gap: 10px; border-left: 1px solid var(--ss-border); color: var(--ss-ink); text-align: center; background: #fff; }
.ss-cmp__row--head > a.is-hl { background: #EDF3FB; }
.ss-theme .ss-cmp__row--head > a:hover { background: #F8F9FB; color: var(--ss-ink); }
.ss-cmp__img { display: block; width: 110px; height: 110px; background-size: contain; background-position: center; background-repeat: no-repeat; }
.ss-cmp__name { font-family: var(--ss-font-display); font-weight: 700; font-size: 17px; }
.ss-cmp__tag { font-size: 10.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--ss-accent); }
.ss-cmp__label { padding: 14px 20px; font-size: 13px; color: var(--ss-muted); font-weight: 600; display: flex; align-items: center; }
.ss-cmp__cell { padding: 14px 16px; border-left: 1px solid var(--ss-border); font-size: 14px; text-align: center; display: flex; align-items: center; justify-content: center; color: var(--ss-ink); font-weight: 500; }
.ss-cmp__cell.is-b { font-weight: 700; }
.ss-cmp__cell.is-none { color: var(--ss-border-strong); }
.ss-cmp__row--foot > div:first-child { padding: 20px; }
.ss-cmp__row--foot > div:not(:first-child) { padding: 20px 16px; border-left: 1px solid var(--ss-border); display: flex; flex-direction: column; align-items: center; gap: 10px; }
.ss-cmp__price { font-family: var(--ss-font-display); font-weight: 700; font-size: 20px; }
.ss-cmp__old { font-size: 12.5px; color: var(--ss-muted); text-decoration: line-through; margin-top: -8px; }
.ss-cmp__row--foot > div:not(:first-child) .ss-btn { margin-top: auto; }
.ss-cmp .ss-btn--42 { width: 100%; }
.ss-know { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px; }
.ss-know__media { min-height: 440px; border-radius: 20px; overflow: hidden; position: relative; }
.ss-know__media img, .ss-know__media .ss-slot { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ss-know__copy { padding: 48px 44px; display: flex; flex-direction: column; gap: 22px; justify-content: center; }
.ss-theme .ss-know h2 { font-size: 32px; line-height: 1.1; letter-spacing: -.03em; }
.ss-know__copy > div { display: flex; flex-direction: column; gap: 16px; font-size: 15px; line-height: 1.55; color: var(--ss-body-2); }
.ss-know strong { color: var(--ss-ink); }
.ss-cta { border-radius: 20px; padding: 56px 48px; display: flex; justify-content: space-between; align-items: center; gap: 32px; flex-wrap: wrap; }
.ss-cta > div { display: flex; flex-direction: column; gap: 10px; max-width: 56ch; }
.ss-theme .ss-cta h2 { font-size: 34px; line-height: 1.05; letter-spacing: -.03em; }
.ss-cta p { font-size: 15.5px; color: var(--ss-body); line-height: 1.5; }
.ss-cta .ss-btn { padding: 0 28px; flex: none; }

/* ---------- O nas ---------- */
.ss-ahero { padding-top: 64px; display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 6fr); gap: 48px; align-items: center; }
.ss-ahero__copy { display: flex; flex-direction: column; gap: 24px; }
.ss-theme .ss-ahero h1 { font-size: clamp(42px, 5vw, 68px); line-height: .98; letter-spacing: -.04em; text-wrap: pretty; }
.ss-ahero p { font-size: 17px; line-height: 1.55; color: var(--ss-body-2); max-width: 48ch; text-wrap: pretty; }
.ss-ahero__nums { display: flex; gap: 32px; padding-top: 8px; border-top: 1px solid var(--ss-border); margin-top: 8px; }
.ss-ahero__nums > div { display: flex; flex-direction: column; gap: 2px; padding-top: 16px; }
.ss-ahero__nums strong { font-family: var(--ss-font-display); font-size: 30px; font-weight: 700; letter-spacing: -.03em; }
.ss-ahero__nums span { font-size: 13px; color: var(--ss-muted); }
.ss-ahero__media { position: relative; min-height: 560px; }
.ss-ahero__big { position: absolute; inset: 0 80px 80px 0; border-radius: 20px; overflow: hidden; }
.ss-ahero__big img, .ss-ahero__big .ss-slot { width: 100%; height: 100%; object-fit: cover; }
.ss-ahero__prod { position: absolute; right: 0; bottom: 0; width: 260px; height: 260px; background: #fff; border: 1px solid var(--ss-border); border-radius: 20px; display: flex; align-items: center; justify-content: center; box-shadow: 0 24px 48px rgba(42,46,69,.10); }
.ss-ahero__prod img { width: 80%; height: 80%; object-fit: contain; }
.ss-ahero__cap { position: absolute; right: 16px; bottom: 272px; font-size: 12px; color: var(--ss-muted); background: var(--ss-bg-soft); padding: 4px 8px; border-radius: 4px; }
.ss-asec { padding-top: 96px; }
.ss-asec--last { padding-bottom: 96px; }
.ss-timeline { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: 48px; align-items: start; }
.ss-theme .ss-timeline h2 { font-size: 34px; line-height: 1.05; letter-spacing: -.03em; position: sticky; top: 132px; }
.ss-timeline__list { display: flex; flex-direction: column; }
.ss-timeline__i { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 24px; padding: 24px 0; border-top: 1px solid var(--ss-border); }
.ss-timeline__i:last-child { border-bottom: 1px solid var(--ss-border); }
.ss-timeline__y { font-family: var(--ss-font-display); font-size: 22px; font-weight: 700; letter-spacing: -.02em; }
.ss-timeline__y.is-hl { color: var(--ss-accent); }
.ss-timeline__i > div { display: flex; flex-direction: column; gap: 6px; }
.ss-timeline__i strong { font-size: 16px; }
.ss-timeline__i span:not(.ss-timeline__y) { font-size: 14.5px; line-height: 1.6; color: var(--ss-body-2); }
.ss-stages { border-radius: 24px; padding: 64px 56px; display: flex; flex-direction: column; gap: 48px; }
.ss-stages__head { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; flex-wrap: wrap; }
.ss-theme .ss-stages h2 { font-size: 40px; line-height: 1.02; letter-spacing: -.035em; max-width: 22ch; text-wrap: pretty; }
.ss-stages__head span { font-size: 14px; color: var(--ss-body-on-grad); max-width: 36ch; line-height: 1.5; }
.ss-stages__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px; }
.ss-stages__grid > div { display: flex; flex-direction: column; gap: 14px; padding-top: 20px; border-top: 1px solid rgba(42,46,69,.25); }
.ss-stages__n { font-family: var(--ss-font-display); font-size: 48px; font-weight: 700; letter-spacing: -.04em; line-height: 1; color: var(--ss-muted-2); }
.ss-stages__grid strong { font-size: 17px; }
.ss-stages__grid span:not(.ss-stages__n) { font-size: 14px; line-height: 1.6; color: var(--ss-body); }
.ss-team { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px; }
.ss-team__col { display: grid; grid-template-rows: minmax(0, 1fr) auto; gap: 24px; }
.ss-team__col--rev { grid-template-rows: auto minmax(0, 1fr); }
.ss-team__img { min-height: 466px; border-radius: 20px; overflow: hidden; position: relative; }
.ss-team__map { min-height: 280px; border-radius: 20px; overflow: hidden; position: relative; }
.ss-team__img img, .ss-team__img .ss-slot, .ss-team__map img, .ss-team__map .ss-slot { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ss-team__box { padding: 32px; display: flex; flex-direction: column; gap: 12px; }
.ss-team__box p { font-size: 15.5px; line-height: 1.6; color: var(--ss-body-2); }
.ss-team__box--wh { gap: 14px; }
.ss-team__box--wh p { font-size: 14.5px; }
.ss-team__addr { font-family: var(--ss-font-display); font-size: 26px; font-weight: 700; letter-spacing: -.02em; line-height: 1.15; }
.ss-team__btns { display: flex; gap: 10px; flex-wrap: wrap; }
.ss-team__btns .ss-btn--line { font-weight: 600; }
.ss-rules { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.ss-rules > div { display: flex; flex-direction: column; gap: 10px; padding: 28px 0 0; border-top: 2px solid var(--ss-ink); }
.ss-rules strong { font-family: var(--ss-font-display); font-size: 24px; font-weight: 700; letter-spacing: -.02em; line-height: 1.15; }
.ss-rules span { font-size: 14.5px; line-height: 1.6; color: var(--ss-body-2); }

/* ---------- FAQ ---------- */
.ss-faq__in { padding-top: 72px; padding-bottom: 88px; display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 48px; align-items: start; }
.ss-faq__side { display: flex; flex-direction: column; gap: 24px; position: sticky; top: 132px; }
.ss-theme .ss-faq__side h1 { font-size: 44px; line-height: 1; letter-spacing: -.035em; }
.ss-faq__nav { display: flex; flex-direction: column; gap: 2px; }
.ss-faq__nav button { text-align: left; padding: 10px 12px; border: 0; border-radius: 8px; background: transparent; color: var(--ss-ink); font-size: 14.5px; font-weight: 600; cursor: pointer; }
.ss-faq__nav button.is-on { background: var(--ss-ink); color: #fff; }
.ss-faq__main, .ss-faq__group { display: flex; flex-direction: column; gap: 12px; }
.ss-theme .ss-faq__group h2 { font-size: 24px; letter-spacing: -.02em; margin: 0 0 8px; }
.ss-faqacc { display: flex; flex-direction: column; gap: 12px; }
.ss-faqacc__i { background: #fff; border: 1px solid var(--ss-border); border-radius: 14px; overflow: hidden; }
.ss-faqacc .ss-acc__q { padding: 20px 24px; font-size: 16px; }
.ss-faqacc .ss-acc__ic { width: 28px; height: 28px; border-radius: 50%; background: var(--ss-bg-soft-2); display: inline-flex; align-items: center; justify-content: center; font-size: 16px; color: var(--ss-body-2); }
.ss-faqacc .ss-acc__a p { padding: 0 24px 22px; font-size: 15px; line-height: 1.65; max-width: 70ch; }

/* ---------- Kontakt ---------- */
.ss-contact__in { padding-top: 72px; padding-bottom: 88px; display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 48px; align-items: start; }
.ss-contact__side { display: flex; flex-direction: column; gap: 32px; }
.ss-contact__head { display: flex; flex-direction: column; gap: 16px; }
.ss-theme .ss-contact__head h1 { font-size: clamp(40px, 4.5vw, 56px); line-height: 1; letter-spacing: -.035em; }
.ss-contact__head p { font-size: 16px; line-height: 1.55; color: var(--ss-body-2); }
.ss-contact__cards { display: flex; flex-direction: column; gap: 12px; }
.ss-ccard { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 20px 22px; background: #fff; border: 1px solid var(--ss-border); border-radius: 14px; color: var(--ss-ink); }
.ss-theme .ss-ccard:hover { border-color: var(--ss-ink); color: var(--ss-ink); }
.ss-ccard--tel { border: 0; }
.ss-theme .ss-ccard--tel:hover { background: var(--ss-accent-hover); color: #fff; }
.ss-theme .ss-ccard--tel:hover .ss-ccard__l { color: rgba(255,255,255,.75); }
.ss-ccard__c { display: flex; flex-direction: column; gap: 2px; flex: 1; min-width: 0; }
.ss-ccard__l { font-size: 12.5px; color: var(--ss-muted); white-space: nowrap; }
.ss-ccard--tel .ss-ccard__l { color: var(--ss-body-on-grad); }
.ss-ccard__v { font-family: var(--ss-font-display); font-weight: 700; font-size: 20px; }
.ss-ccard__v--lg { font-size: 24px; }
.ss-ccard__arr { font-size: 20px; }
.ss-ccard__arr--muted { color: var(--ss-muted); }
.ss-ccard--static { flex-direction: column; align-items: flex-start; gap: 2px; }
.ss-theme .ss-ccard--static:hover { border-color: var(--ss-border); }
.ss-ccard__addr { font-weight: 600; font-size: 15.5px; line-height: 1.5; }
.ss-ccard__note { font-size: 13px; color: var(--ss-muted); margin-top: 6px; }
.ss-contact__social { display: flex; gap: 8px; flex-wrap: wrap; }
.ss-contact__social a { display: inline-flex; width: 40px; height: 40px; border-radius: 8px; border: 1px solid var(--ss-border); background: #fff; align-items: center; justify-content: center; color: var(--ss-ink); }
.ss-theme .ss-contact__social a:hover { border-color: var(--ss-ink); color: var(--ss-ink); }
.ss-contact__form { padding: 40px; }
.ss-contact__form .wpcf7-form { display: flex; flex-direction: column; gap: 18px; }
.ss-contact__form label { display: flex; flex-direction: column; gap: 6px; font-size: 13px; font-weight: 600; }
.ss-contact__form .ss-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 14px; }
.ss-contact__form .wpcf7-form-control-wrap { display: block; }
.ss-contact__form input.wpcf7-text, .ss-contact__form input.wpcf7-email, .ss-contact__form input.wpcf7-tel, .ss-contact__form select { width: 100%; height: 48px; border: 1px solid var(--ss-border-strong); border-radius: 10px; padding: 0 14px; font-size: 15px; outline: none; background: #fff; color: var(--ss-ink); }
.ss-contact__form select { padding: 0 12px; }
.ss-contact__form textarea { width: 100%; border: 1px solid var(--ss-border-strong); border-radius: 10px; padding: 12px 14px; font-size: 15px; outline: none; resize: vertical; display: block; height: 152px; color: var(--ss-ink); }
.ss-contact__form input:focus, .ss-contact__form select:focus, .ss-contact__form textarea:focus { border-color: var(--ss-ink); }
.ss-contact__form .wpcf7-acceptance label { flex-direction: row; gap: 10px; align-items: flex-start; font-size: 12.5px; font-weight: 400; color: var(--ss-body-2); line-height: 1.5; }
.ss-contact__form .wpcf7-acceptance input { margin-top: 3px; accent-color: var(--ss-ink); width: 16px; height: 16px; flex: none; }
.ss-contact__form .wpcf7-list-item { margin: 0; display: block; }
.ss-submitrow { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.ss-contact__form .wpcf7-submit { height: 52px; padding: 0 28px; border: 0; border-radius: 10px; background: var(--ss-accent); color: #fff; font-size: 15px; font-weight: 700; cursor: pointer; }
.ss-contact__form .wpcf7-submit:hover { background: var(--ss-accent-hover); }
.ss-submitrow__note { font-size: 12.5px; color: var(--ss-muted); }
.ss-contact__form .wpcf7-spinner { margin: 0; }
.ss-contact__form .wpcf7-not-valid-tip { font-size: 12.5px; color: #D64D6F; font-weight: 600; margin-top: 4px; display: block; }
.ss-contact__form .wpcf7-not-valid { border-color: #D64D6F !important; }
.ss-contact__form .wpcf7-response-output { order: -1; margin: 0; padding: 16px 18px; background: var(--ss-ok-bg); color: var(--ss-ok-ink); border-radius: 10px; font-size: 14.5px; font-weight: 600; border: 0; }
.ss-contact__form .wpcf7-form.invalid .wpcf7-response-output, .ss-contact__form .wpcf7-form.failed .wpcf7-response-output, .ss-contact__form .wpcf7-form.unaccepted .wpcf7-response-output { background: var(--ss-sale-bg); color: #9F1239; }
.ss-contact__form .wpcf7-response-output:empty, .ss-contact__form .wpcf7-form.init .wpcf7-response-output { display: none; }
.ss-contact__form .hidden-fields-container { border: 0; padding: 0; margin: 0; display: none; }
.ss-contact__form .screen-reader-response { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

/* ---------- Blog ---------- */
.ss-blog__head { padding-top: 72px; display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; flex-wrap: wrap; }
.ss-blog__head > div:first-child { display: flex; flex-direction: column; gap: 12px; }
.ss-theme .ss-blog__head h1 { font-size: clamp(40px, 4.5vw, 56px); line-height: 1; letter-spacing: -.035em; }
.ss-blog__head p { font-size: 16px; color: var(--ss-body-2); max-width: 56ch; }
.ss-blog__feat { padding-top: 40px; }
.ss-featpost { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); background: #fff; border: 1px solid var(--ss-border); border-radius: 20px; overflow: hidden; color: var(--ss-ink); }
.ss-theme .ss-featpost:hover { border-color: var(--ss-ink); color: var(--ss-ink); }
.ss-featpost__img { min-height: 420px; position: relative; }
.ss-featpost__img img, .ss-featpost__img .ss-slot { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ss-featpost__c { padding: 48px 44px; display: flex; flex-direction: column; gap: 16px; justify-content: center; }
.ss-theme .ss-featpost h2 { font-size: 32px; line-height: 1.1; letter-spacing: -.03em; text-wrap: pretty; }
.ss-featpost p { font-size: 15.5px; line-height: 1.6; color: var(--ss-body-2); }
.ss-featpost__more { font-weight: 700; font-size: 14px; }
.ss-postmeta { font-size: 12px; color: var(--ss-muted); font-weight: 600; }
.ss-blog__grid { padding-top: 24px; padding-bottom: 88px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.ss-blog__grid:empty { padding-bottom: 64px; }
.ss-postcard { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--ss-border); border-radius: 16px; overflow: hidden; color: var(--ss-ink); }
.ss-theme .ss-postcard:hover { border-color: var(--ss-ink); color: var(--ss-ink); }
.ss-postcard__img { aspect-ratio: 3 / 2; position: relative; }
.ss-postcard__img img, .ss-postcard__img .ss-slot { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ss-postcard__c { padding: 20px 22px 24px; display: flex; flex-direction: column; gap: 10px; }
.ss-theme .ss-postcard h3 { font-size: 19px; line-height: 1.25; letter-spacing: -.015em; text-wrap: pretty; }
.ss-postcard p { font-size: 14px; line-height: 1.55; color: var(--ss-body-2); }
.ss-postcard--sm .ss-postcard__c { padding: 18px 20px 22px; gap: 8px; }
.ss-theme .ss-postcard--sm h3 { font-size: 18px; letter-spacing: 0; }

/* ---------- Wpis ---------- */
.ss-post__head { padding-top: 32px; }
.ss-post__intro { max-width: 820px; display: flex; flex-direction: column; gap: 20px; padding-top: 28px; }
.ss-post__meta { display: flex; gap: 10px; align-items: center; font-size: 13px; color: var(--ss-body-2); flex-wrap: wrap; }
.ss-post__cat { font-weight: 700; color: var(--ss-accent); text-transform: uppercase; letter-spacing: .08em; font-size: 12px; }
.ss-theme .ss-post h1 { font-size: clamp(36px, 4.5vw, 56px); line-height: 1.02; letter-spacing: -.035em; text-wrap: pretty; }
.ss-post__lead { font-size: 18px; line-height: 1.55; color: var(--ss-body-2); text-wrap: pretty; }
.ss-post__author { display: flex; align-items: center; gap: 12px; padding-top: 4px; }
.ss-post__ava { width: 40px; height: 40px; border-radius: 50%; background: var(--ss-ink); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-family: var(--ss-font-display); font-weight: 700; font-size: 14px; }
.ss-post__author > span:last-child { display: flex; flex-direction: column; gap: 1px; }
.ss-post__author strong { font-size: 14px; }
.ss-post__author > span > span { font-size: 12.5px; color: var(--ss-muted); }
.ss-post__hero { padding-top: 36px; }
.ss-post__heroimg { aspect-ratio: 21 / 9; border-radius: 20px; overflow: hidden; position: relative; }
.ss-post__heroimg img, .ss-post__heroimg .ss-slot { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ss-post__body { padding-top: 56px; padding-bottom: 96px; display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 4fr); gap: 64px; align-items: start; }
.ss-article { display: flex; flex-direction: column; gap: 22px; font-size: 17px; line-height: 1.7; color: var(--ss-body); max-width: 68ch; }
.ss-theme .ss-article h2 { margin: 24px 0 0; font-size: 28px; line-height: 1.15; letter-spacing: -.025em; color: var(--ss-ink); scroll-margin-top: 140px; }
.ss-theme .ss-article h3 { margin: 16px 0 0; font-size: 21px; line-height: 1.25; letter-spacing: -.015em; color: var(--ss-ink); }
.ss-article ol, .ss-article ul { padding-left: 22px; display: flex; flex-direction: column; gap: 12px; }
.ss-article ul { gap: 10px; }
.ss-article li { margin: 0; }
.ss-article strong { color: var(--ss-ink); }
.ss-article a { color: var(--ss-accent); text-decoration: underline; }
.ss-article img { border-radius: 14px; }
.ss-article figure { margin: 8px 0; }
.ss-callout, .ss-article blockquote { background: var(--ss-grad); border-radius: 16px; padding: 24px 28px; display: flex; flex-direction: column; gap: 6px; color: var(--ss-ink); margin: 8px 0; }
.ss-article blockquote p { font-size: 16px; line-height: 1.5; }
.ss-callout__k, .ss-article blockquote .ss-callout__k { font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; line-height: normal; }
.ss-article__share { border-top: 1px solid var(--ss-border); padding-top: 24px; margin-top: 8px; display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; font-size: 14px; color: var(--ss-body-2); line-height: normal; }
.ss-article__share div { display: flex; gap: 8px; }
.ss-article__share button, .ss-theme .ss-article__share a { height: 38px; padding: 0 14px; border: 1px solid var(--ss-border); border-radius: 8px; background: #fff; font-size: 13px; font-weight: 600; cursor: pointer; color: var(--ss-ink); white-space: nowrap; display: inline-flex; align-items: center; text-decoration: none; }
.ss-post__side { display: flex; flex-direction: column; gap: 20px; position: sticky; top: 132px; }
.ss-sidebox { padding: 22px; border-radius: 16px; display: flex; flex-direction: column; gap: 10px; }
.ss-sidebox__k { font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--ss-muted); }
.ss-sidebox > a:not(.ss-btn):not(.ss-sideprod) { font-size: 14.5px; font-weight: 600; }
.ss-sidebox--prods { gap: 14px; }
.ss-sideprod { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 12px; align-items: center; color: var(--ss-ink); }
.ss-sideprod__img { display: block; width: 64px; height: 64px; border-radius: 10px; background-color: var(--ss-bg-soft); background-size: 84%; background-position: center; background-repeat: no-repeat; }
.ss-sideprod > span:last-child { display: flex; flex-direction: column; gap: 3px; }
.ss-sideprod__n { font-size: 13.5px; font-weight: 600; line-height: 1.3; }
.ss-sideprod__p { font-size: 13px; }
.ss-sidebox--nl { gap: 10px; }
.ss-sidebox__t { font-family: var(--ss-font-display); font-weight: 700; font-size: 18px; letter-spacing: -.01em; }
.ss-sidebox__p { font-size: 13.5px; line-height: 1.5; color: var(--ss-body); }
.ss-nl--blog { flex-wrap: nowrap; }
.ss-nl--blog input[type=email] { height: 44px; border: 1px solid rgba(42,46,69,.25); background: rgba(255,255,255,.7); border-radius: 8px; padding: 0 12px; font-size: 14px; }
.ss-nl--blog button { height: 42px; padding: 0 14px; border-radius: 8px; background: var(--ss-ink); color: #fff; font-size: 13px; }
.ss-nl--blog .ss-nl__msg { position: absolute; top: 100%; left: 0; margin-top: 4px; }
.ss-post__more { padding-bottom: 96px; }
.ss-theme .ss-post__more .ss-headrow h2 { font-size: 26px; }
.ss-blog__grid--more { padding: 0; }

/* ---------- Strona tekstowa ---------- */
.ss-textpage__in { padding-top: 48px; padding-bottom: 88px; }
.ss-theme .ss-textpage h1 { margin: 20px 0 24px; font-size: 44px; line-height: 1; letter-spacing: -.035em; }
.ss-textpage .ss-prose > * { max-width: none; }

/* Ramka „Zwrot zgłosisz tutaj” (shortcode [zwroty]). */
.ss-retbox { display: flex; align-items: center; gap: 18px; margin: 24px 0; padding: 22px 24px; background: var(--ss-grad); border-radius: var(--ss-r-lg); }
.ss-retbox__i { flex: none; width: 48px; height: 48px; border-radius: 50%; background: #fff; color: var(--ss-ink); display: inline-flex; align-items: center; justify-content: center; box-shadow: 0 4px 12px rgba(42,46,69,.12); }
.ss-retbox__c { display: flex; flex-direction: column; gap: 4px; flex: 1; min-width: 0; }
.ss-retbox__c strong { font-family: var(--ss-font-display); font-size: 19px; font-weight: 700; letter-spacing: -.015em; color: var(--ss-ink); }
.ss-retbox__c span { font-size: 14px; line-height: 1.5; color: var(--ss-body-on-grad); }
/* .ss-prose a podkreśla linki w treści - przycisk ma zostać przyciskiem. */
.ss-prose .ss-retbox__btn, .ss-retbox__btn { flex: none; white-space: nowrap; text-decoration: none; color: #fff; }
@media (max-width: 560px) {
	.ss-retbox { flex-wrap: wrap; padding: 20px; }
	.ss-retbox__btn { width: 100%; }
}

/* ---------- Gwarancja (pakiet ochrony, uwagi 25.09) ---------- */
.ss-war__top { padding-top: 56px; display: flex; flex-direction: column; gap: 16px; }
.ss-war__hero { border-radius: 24px; padding: 56px 56px 60px; display: flex; flex-direction: column; align-items: flex-start; gap: 18px; }
.ss-war__badge { width: 60px; height: 60px; border-radius: 16px; background: #fff; color: var(--ss-ink); display: inline-flex; align-items: center; justify-content: center; box-shadow: 0 8px 24px rgba(42, 46, 69, .12); }
.ss-war__hero .ss-kicker { color: var(--ss-body); }
.ss-theme .ss-war__hero h1 { font-size: clamp(36px, 4.6vw, 60px); line-height: 1; letter-spacing: -.035em; max-width: 18ch; text-wrap: pretty; }
.ss-war__hero p { font-size: 17px; line-height: 1.55; color: var(--ss-body); max-width: 60ch; text-wrap: pretty; }
.ss-war__pillars { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.ss-war__pillar { position: relative; background: #fff; border: 1px solid var(--ss-border); border-radius: 20px; padding: 28px 28px 30px; display: flex; flex-direction: column; gap: 4px; }
.ss-war__n { position: absolute; top: 24px; right: 26px; font-family: var(--ss-font-display); font-size: 13px; font-weight: 700; color: var(--ss-muted); }
.ss-war__ic { width: 44px; height: 44px; border-radius: 12px; background: var(--ss-grad); color: var(--ss-ink); display: inline-flex; align-items: center; justify-content: center; margin-bottom: 14px; }
.ss-war__pillar strong { font-family: var(--ss-font-display); font-size: 30px; font-weight: 700; letter-spacing: -.03em; line-height: 1.05; color: var(--ss-ink); }
.ss-war__t { font-size: 15px; font-weight: 600; color: var(--ss-ink); }
.ss-war__pillar p { margin-top: 8px; font-size: 14.5px; line-height: 1.6; color: var(--ss-body-2); }
.ss-war__sec { padding-top: 80px; }
.ss-war__sec--last { padding-bottom: 96px; }
.ss-war__cover { background: #fff; border: 1px solid var(--ss-border); border-radius: 20px; padding: 44px 48px; display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: 48px; align-items: start; }
.ss-theme .ss-war__cover h2, .ss-theme .ss-war__h { font-size: 34px; line-height: 1.05; letter-spacing: -.03em; }
.ss-theme .ss-war__h { margin-bottom: 32px; }
.ss-war__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 32px; }
.ss-war__list li { display: flex; gap: 12px; align-items: flex-start; font-size: 15px; line-height: 1.5; color: var(--ss-body-2); }
.ss-war__tick { flex: none; width: 24px; height: 24px; border-radius: 50%; background: var(--ss-ink); color: #fff; display: inline-flex; align-items: center; justify-content: center; margin-top: -1px; }
.ss-cta > .ss-war__btns { display: flex; flex-direction: row; gap: 12px; flex-wrap: wrap; max-width: none; }
@media (max-width: 860px) {
	.ss-war__hero { padding: 40px 28px; }
	.ss-war__pillars, .ss-war__cover, .ss-war__list { grid-template-columns: 1fr; }
	.ss-war__cover { padding: 32px 24px; gap: 24px; }
	.ss-war__sec { padding-top: 56px; }
	.ss-theme .ss-war__cover h2, .ss-theme .ss-war__h { font-size: 28px; }
}
@media (max-width: 560px) {
	.ss-war__top { padding-top: 24px; }
	.ss-war__hero { padding: 32px 22px; border-radius: 20px; }
	.ss-cta > .ss-war__btns, .ss-war__btns .ss-btn { width: 100%; }
}
