/* ============================================================
   konsultantseo360.pl - wspólny arkusz stylów (lokalny, 0 zapytań zewnętrznych)
   Sekcje: czcionka, tokeny, baza, nagłówek, hero, formularz,
   uwiarygodnienie, usługi, dla kogo, proces, opinie, województwa,
   FAQ, stopka, responsywność, strony prawne.
   ============================================================ */

/* ===== Czcionka lokalna (Plus Jakarta Sans - 0 zapytań zewnętrznych) ===== */
@font-face{font-family:'Jakarta';font-style:normal;font-weight:200 800;font-display:swap;
  src:url(/assets/fonts/pjs-latin.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Jakarta';font-style:normal;font-weight:200 800;font-display:swap;
  src:url(/assets/fonts/pjs-latin-ext.woff2) format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

/* ===== Reset / tokens ===== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --c-ink:#0f172a;        /* tekst główny */
  --c-muted:#475569;      /* tekst drugorzędny */
  --c-line:#e2e8f0;       /* linie / obramowania */
  --c-bg:#ffffff;
  --c-soft:#f8fafc;       /* tło sekcji/karty */
  --c-brand:#2563eb;      /* akcent */
  --c-brand-dark:#1d4ed8;
  --c-accent:#059669;     /* "wzrost" - sygnały pozytywne */
  --radius:14px;
  --shadow:0 1px 2px rgba(15,23,42,.06),0 12px 32px -12px rgba(15,23,42,.18);
  --wrap:1200px;
  /* Nowoczesny, lokalny krój (0 zapytań zewnętrznych): Plus Jakarta Sans */
  --font:'Jakarta',system-ui,-apple-system,"Segoe UI","Roboto","Helvetica Neue",Arial,sans-serif;
  --fw-normal:400;
  --fw-medium:500;
  --fw-semibold:600;
  --fw-bold:700;
  --fw-black:800;
}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  font-family:var(--font);
  color:var(--c-ink);
  background:var(--c-bg);
  line-height:1.6;
  font-size:16px;
  font-weight:var(--fw-normal);
  letter-spacing:-.006em;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}
h1,h2,h3{font-weight:var(--fw-black);line-height:1.12;letter-spacing:-.022em}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:20px}

/* Dostępność: pomiń do treści */
.skip{position:absolute;left:-9999px;top:0;background:var(--c-brand);color:#fff;padding:10px 16px;border-radius:0 0 8px 0;z-index:100}
.skip:focus{left:0}
:focus-visible{outline:3px solid var(--c-brand);outline-offset:2px;border-radius:4px}

/* ===== Header / nav ===== */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.9);backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--c-line)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px}

/* Logo + tytuł + opis */
.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}
.brand__mark{width:clamp(38px,4.4vw,46px);height:auto;aspect-ratio:1/1;flex-shrink:0;border-radius:10px}
.brand__text{display:flex;flex-direction:column;line-height:1.15}
.brand__name{font-size:1.15rem;font-weight:800;letter-spacing:-.01em;color:var(--c-ink)}
.brand__desc{font-size:.78rem;font-weight:500;color:var(--c-muted);letter-spacing:.005em}

/* Menu */
.nav__panel{display:flex;align-items:center;gap:28px}
.nav__menu{display:flex;align-items:center;gap:4px;list-style:none}
.nav__link{display:inline-block;padding:10px 14px;border-radius:9px;font-weight:600;font-size:.95rem;color:var(--c-muted);transition:color .15s,background .15s}
.nav__link:hover{color:var(--c-ink);background:var(--c-soft)}
.nav__actions{display:flex;align-items:center;gap:10px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;font-size:.95rem;padding:12px 20px;border-radius:11px;border:1px solid transparent;cursor:pointer;transition:transform .12s,box-shadow .15s,background .15s;white-space:nowrap}
.btn--primary{background:var(--c-brand);color:#fff;box-shadow:0 6px 16px -6px rgba(37,99,235,.6)}
.btn--primary:hover{background:var(--c-brand-dark);transform:translateY(-1px)}
.btn--ghost{background:transparent;color:var(--c-ink);border-color:var(--c-line)}
.btn--ghost:hover{background:var(--c-soft)}
.btn--block{width:100%}

/* Hamburger */
.nav__toggle{display:none;width:46px;height:46px;border:1px solid var(--c-line);border-radius:11px;background:#fff;cursor:pointer;padding:0}
.nav__toggle span,.nav__toggle span::before,.nav__toggle span::after{content:"";display:block;width:20px;height:2px;background:var(--c-ink);border-radius:2px;margin-inline:auto;transition:transform .2s,opacity .2s}
.nav__toggle span::before{transform:translateY(-6px)}
.nav__toggle span::after{transform:translateY(4px)}
.nav[data-open="true"] .nav__toggle span{background:transparent}
.nav[data-open="true"] .nav__toggle span::before{transform:translateY(0) rotate(45deg)}
.nav[data-open="true"] .nav__toggle span::after{transform:translateY(-2px) rotate(-45deg)}

/* ===== Hero ===== */
.hero{padding:clamp(28px,5vw,64px) 0}
.hero__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,4vw,56px);align-items:center}
.hero__eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--c-brand);background:#eff4ff;border:1px solid #dbe6ff;padding:6px 12px;border-radius:999px;margin-bottom:18px}
.hero__eyebrow::before{content:"";flex-shrink:0;width:7px;height:7px;border-radius:50%;background:var(--c-accent)}
.hero h1{font-size:clamp(2rem,4.4vw,3.15rem);line-height:1.08;letter-spacing:-.025em;font-weight:800;color:var(--c-ink)}
.hero h1 em{font-style:normal;color:var(--c-brand)}
.hero__lead{margin-top:18px;font-size:clamp(1.02rem,1.6vw,1.18rem);color:var(--c-muted);max-width:34em}
.hero__points{list-style:none;margin-top:22px;display:flex;flex-direction:column;gap:10px}
.hero__points li{display:flex;align-items:flex-start;gap:10px;font-weight:500;color:var(--c-ink)}
.hero__points svg{flex-shrink:0;margin-top:3px;color:var(--c-accent)}
.hero__cta{margin-top:26px;display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.hero__badges{list-style:none;margin-top:20px;display:flex;flex-wrap:wrap;gap:10px 20px}
.hero__badges li{display:inline-flex;align-items:center;gap:8px;font-size:.9rem;font-weight:600;color:var(--c-ink)}
.hero__badges svg{flex-shrink:0;color:var(--c-accent)}

/* Formularz */
.lead-form{background:var(--c-soft);border:1px solid var(--c-line);border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(22px,3vw,32px)}
.lead-form__title{font-size:1.32rem;font-weight:800;letter-spacing:-.01em}
.lead-form__sub{margin-top:6px;font-size:.94rem;color:var(--c-muted)}
.field{margin-top:16px;position:relative}
.field label{display:block;font-size:.86rem;font-weight:600;color:var(--c-ink);margin-bottom:6px}
.field input,.field textarea{width:100%;font:inherit;font-size:1rem;color:var(--c-ink);background:#fff;border:1px solid var(--c-line);border-radius:10px;padding:12px 14px;transition:border-color .15s,box-shadow .15s}
.field textarea{min-height:96px;resize:vertical}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--c-brand);box-shadow:0 0 0 3px rgba(37,99,235,.15)}
.lead-form .btn{margin-top:18px}

/* Walidacja - dymki błędów */
.field--error input,.field--error textarea{border-color:#dc2626;box-shadow:0 0 0 3px rgba(220,38,38,.12)}
.field__err{display:none;position:relative;margin-top:9px;max-width:100%;background:#dc2626;color:#fff;font-size:.82rem;font-weight:var(--fw-semibold);padding:8px 12px;border-radius:8px;line-height:1.4}
.field__err::before{content:"";position:absolute;top:-4px;left:16px;width:9px;height:9px;background:#dc2626;transform:rotate(45deg)}
.field__err.show{display:inline-block}

/* Zgoda RODO */
.consent{display:flex;gap:11px;align-items:flex-start;margin-top:18px;cursor:pointer}
.consent input{margin-top:2px;width:18px;height:18px;flex-shrink:0;accent-color:var(--c-brand);cursor:pointer}
.consent__text{font-size:.82rem;color:var(--c-muted);line-height:1.5}
.consent__text a{color:var(--c-brand);text-decoration:underline}
.consent--error .consent__text{color:#b91c1c}
.consent--error input{outline:2px solid #dc2626;outline-offset:3px}

/* Komunikat po wysłaniu */
.form-alert{display:none;margin-top:20px;padding:16px 18px;border-radius:12px;font-size:.95rem;line-height:1.5}
.form-alert svg{flex-shrink:0;margin-top:1px}
.form-alert strong{font-weight:var(--fw-bold)}
.form-alert--ok{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}
.form-alert--ok svg{color:var(--c-accent)}
.form-alert--err{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}
.form-alert--err svg{color:#dc2626}
.form-alert.is-shown{display:flex;gap:12px;align-items:flex-start}
#lead-submit.is-loading{opacity:.7;pointer-events:none}
#lead-form.is-sent .field,#lead-form.is-sent .consent,#lead-form.is-sent #err-consent,#lead-form.is-sent #lead-submit,#lead-form.is-sent .lead-form__sub{display:none}
#lead-form.is-sent #lead-success{display:flex;gap:12px;align-items:flex-start;margin-top:8px}
.lead-form__note{margin-top:12px;font-size:.78rem;color:var(--c-muted);line-height:1.5}
.lead-form__note a{color:var(--c-brand);text-decoration:underline}

/* ===== O mnie / autorytet ===== */
.about{border-top:1px solid var(--c-line);background:#fff;padding:clamp(48px,6vw,88px) 0}
.about__eyebrow{font-size:.82rem;font-weight:var(--fw-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--c-brand);margin-bottom:12px}
.about__title{font-size:clamp(1.7rem,3.2vw,2.4rem);max-width:26ch}
.about__lead{margin-top:20px;font-size:clamp(1.05rem,1.6vw,1.2rem);color:var(--c-muted);max-width:64ch}
.about__lead strong{color:var(--c-ink);font-weight:var(--fw-semibold)}
.about__more{margin-top:22px}
.about__grid{margin-top:46px;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(28px,4vw,56px);align-items:stretch}

/* Ekspertyza - jak pracuję (1. os. l.poj.) */
.expertise{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:1fr;gap:16px;list-style:none;height:100%}
.expertise li{padding:22px;border:1px solid var(--c-line);border-radius:var(--radius);background:var(--c-soft);transition:border-color .15s,box-shadow .15s}
.expertise li:hover{border-color:#c7d7f5;box-shadow:0 10px 26px -18px rgba(15,23,42,.25)}
.expertise__ico{width:42px;height:42px;border-radius:11px;background:#eff4ff;color:var(--c-brand);display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.expertise h3{font-size:1.08rem;font-weight:var(--fw-bold);letter-spacing:-.01em}
.expertise p{margin-top:6px;font-size:.94rem;color:var(--c-muted);line-height:1.55}

/* Karta autorytetu / bio */
.bio-card{border:1px solid var(--c-line);border-radius:18px;background:#fff;box-shadow:var(--shadow);padding:clamp(24px,3vw,32px);position:sticky;top:96px}
.bio-card__top{display:flex;align-items:center;gap:15px}
.bio-avatar{width:60px;height:60px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:var(--fw-black);font-size:1.3rem;letter-spacing:.02em;background:linear-gradient(135deg,#4aa6e2,#1c6aac)}
.bio-card__name{font-size:1.2rem;font-weight:var(--fw-black);letter-spacing:-.01em;line-height:1.2}
.bio-card__role{font-size:.9rem;color:var(--c-muted);font-weight:var(--fw-medium)}
.bio-facts{list-style:none;margin-top:22px;display:flex;flex-direction:column;gap:13px}
.bio-facts li{display:flex;align-items:flex-start;gap:10px;font-size:.93rem;color:var(--c-ink);line-height:1.45}
.bio-facts svg{flex-shrink:0;margin-top:2px;color:var(--c-brand)}
.bio-facts strong{font-weight:var(--fw-semibold)}
.bio-cert{margin-top:20px;padding:14px 16px;display:flex;gap:12px;align-items:flex-start;background:#eff4ff;border:1px solid #dbe6ff;border-radius:12px}
.bio-cert svg{flex-shrink:0;color:var(--c-brand);margin-top:1px}
.bio-cert__t{font-size:.9rem;line-height:1.4}
.bio-cert__t strong{display:block;font-weight:var(--fw-bold);color:var(--c-ink)}
.bio-cert__t>span{color:var(--c-muted);font-size:.83rem}
.bio-timeline{margin-top:24px;padding-top:22px;border-top:1px solid var(--c-line)}
.bio-timeline__label{font-size:.76rem;font-weight:var(--fw-bold);letter-spacing:.05em;text-transform:uppercase;color:var(--c-muted);margin-bottom:16px}
.bio-timeline ol{list-style:none}
.bio-timeline li{position:relative;padding-left:26px;padding-bottom:18px;font-size:.93rem}
.bio-timeline li:last-child{padding-bottom:0}
.bio-timeline li::before{content:"";position:absolute;left:3px;top:4px;width:10px;height:10px;border-radius:50%;background:var(--c-brand);z-index:1}
.bio-timeline li::after{content:"";position:absolute;left:7.5px;top:12px;bottom:-2px;width:1px;background:var(--c-line)}
.bio-timeline li:last-child::after{display:none}
.bio-timeline li.is-now::before{background:var(--c-accent);box-shadow:0 0 0 4px rgba(5,150,105,.15)}
.bio-timeline strong{display:block;font-weight:var(--fw-bold);color:var(--c-ink)}
.bio-timeline span{color:var(--c-muted)}

@media (max-width:900px){
  .about__grid{grid-template-columns:1fr;gap:34px}
  .bio-card{position:static}
}
@media (max-width:520px){.expertise{grid-template-columns:1fr}}

/* ===== Usługi ===== */
.services{border-top:1px solid var(--c-line);background:var(--c-soft);padding:clamp(48px,6vw,88px) 0}
.services__eyebrow{font-size:.82rem;font-weight:var(--fw-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--c-brand);margin-bottom:12px}
.services__title{font-size:clamp(1.7rem,3.2vw,2.4rem);max-width:24ch}
.services__lead{margin-top:18px;font-size:clamp(1.02rem,1.5vw,1.15rem);color:var(--c-muted);max-width:60ch}
.services__grid{margin-top:44px;display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:1fr;gap:18px}
.service{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--c-line);border-radius:16px;padding:26px;transition:border-color .15s,box-shadow .15s,transform .15s}
.service:hover{border-color:#c7d7f5;box-shadow:0 14px 30px -20px rgba(15,23,42,.35);transform:translateY(-2px)}
.service__ico{width:46px;height:46px;border-radius:12px;background:#eff4ff;color:var(--c-brand);display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.service h3{font-size:1.15rem;font-weight:var(--fw-bold);letter-spacing:-.01em}
.service p{margin-top:8px;font-size:.95rem;color:var(--c-muted);line-height:1.55}
.service__more{margin-top:auto;padding-top:18px;display:inline-flex;align-items:center;gap:8px;color:var(--c-brand);font-weight:var(--fw-semibold);font-size:.92rem}
.service__more svg{transition:transform .15s}
.service:hover .service__more{color:var(--c-brand-dark)}
.service:hover .service__more svg{transform:translateX(4px)}
.service__more::after{content:"";position:absolute;inset:0}
.services__cta{margin-top:32px;display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;padding:22px 26px;background:#fff;border:1px solid var(--c-line);border-radius:16px}
.services__cta p{font-size:1rem;color:var(--c-ink);font-weight:var(--fw-medium);margin-right:auto}
.services__cta p strong{font-weight:var(--fw-bold)}
@media (max-width:900px){.services__grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.services__grid{grid-template-columns:1fr}}

/* ===== Dla kogo ===== */
.audience{background:#fff;border-top:1px solid var(--c-line);padding:clamp(48px,6vw,88px) 0}
.audience__eyebrow{font-size:.82rem;font-weight:var(--fw-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--c-brand);margin-bottom:12px}
.audience__title{font-size:clamp(1.7rem,3.2vw,2.4rem);max-width:24ch}
.audience__lead{margin-top:18px;font-size:clamp(1.02rem,1.5vw,1.15rem);color:var(--c-muted);max-width:62ch}
.audience__grid{margin-top:44px;display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:1fr;gap:18px}
.aud{display:flex;gap:14px;padding:24px;background:var(--c-soft);border:1px solid var(--c-line);border-radius:16px}
.aud__ico{width:40px;height:40px;flex-shrink:0;border-radius:11px;background:#e7f6ef;color:var(--c-accent);display:flex;align-items:center;justify-content:center}
.aud h3{font-size:1.05rem;font-weight:var(--fw-bold);letter-spacing:-.01em;line-height:1.3}
.aud p{margin-top:7px;font-size:.93rem;color:var(--c-muted);line-height:1.5}
@media (max-width:900px){.audience__grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.audience__grid{grid-template-columns:1fr}}

/* ===== Jak wygląda współpraca (proces) ===== */
.process{background:var(--c-soft);border-top:1px solid var(--c-line);padding:clamp(48px,6vw,88px) 0}
.process__eyebrow{font-size:.82rem;font-weight:var(--fw-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--c-brand);margin-bottom:12px}
.process__title{font-size:clamp(1.7rem,3.2vw,2.4rem);max-width:24ch}
.process__lead{margin-top:18px;font-size:clamp(1.02rem,1.5vw,1.15rem);color:var(--c-muted);max-width:62ch}
.process__grid{margin-top:44px;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.step{position:relative;background:#fff;border:1px solid var(--c-line);border-radius:16px;padding:26px}
.step__num{width:46px;height:46px;border-radius:50%;background:var(--c-brand);color:#fff;font-weight:var(--fw-black);font-size:1.15rem;display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.step h3{font-size:1.1rem;font-weight:var(--fw-bold);letter-spacing:-.01em}
.step p{margin-top:8px;font-size:.93rem;color:var(--c-muted);line-height:1.55}
.step:not(:last-child)::after{content:"";position:absolute;top:49px;right:-13px;width:16px;height:2px;background:var(--c-line)}
.process__cta{margin-top:34px;display:flex;justify-content:center}
@media (max-width:900px){.process__grid{grid-template-columns:repeat(2,1fr)}.step:nth-child(2n)::after{display:none}}
@media (max-width:560px){.process__grid{grid-template-columns:1fr}.step::after{display:none}}

/* ===== Opinie ===== */
.reviews{background:#fff;border-top:1px solid var(--c-line);padding:clamp(48px,6vw,88px) 0}
.reviews__eyebrow{font-size:.82rem;font-weight:var(--fw-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--c-brand);margin-bottom:12px}
.reviews__head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 32px}
.reviews__title{font-size:clamp(1.7rem,3.2vw,2.4rem);max-width:22ch}
.reviews__rating{display:flex;align-items:center;gap:12px}
.stars{display:inline-flex;gap:2px;color:#f59e0b}
.reviews__score{font-weight:var(--fw-black);font-size:1.15rem;color:var(--c-ink)}
.reviews__score span{font-weight:var(--fw-medium);font-size:.9rem;color:var(--c-muted)}
.reviews__grid{margin-top:44px;display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:1fr;gap:18px}
.review{display:flex;flex-direction:column;background:var(--c-soft);border:1px solid var(--c-line);border-radius:16px;padding:26px}
.review .stars{margin-bottom:14px}
.review__text{color:var(--c-ink);font-size:.96rem;line-height:1.6}
.review__author{margin-top:auto;padding-top:20px;display:flex;align-items:center;gap:12px}
.review__avatar{width:46px;height:46px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:var(--fw-bold);font-size:.95rem;letter-spacing:.02em;background:linear-gradient(135deg,#4aa6e2,#1c6aac)}
.review__name{font-weight:var(--fw-bold);font-size:.95rem;line-height:1.25}
.review__role{font-size:.83rem;color:var(--c-muted)}
.review__src{margin-top:2px;font-size:.78rem;color:var(--c-muted)}
@media (max-width:900px){.reviews__grid{grid-template-columns:1fr}}
.reviews__grid.pair{grid-template-columns:repeat(2,1fr)}
@media (max-width:820px){.reviews__grid.pair{grid-template-columns:1fr}}

/* ===== Breadcrumb (okruszki) ===== */
.breadcrumb{padding-top:22px}
.breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:.86rem;color:var(--c-muted)}
.breadcrumb li{display:flex;align-items:center;gap:8px}
.breadcrumb li:not(:last-child)::after{content:"/";color:var(--c-line)}
.breadcrumb a{color:var(--c-muted)}
.breadcrumb a:hover{color:var(--c-brand)}
.breadcrumb [aria-current]{color:var(--c-ink);font-weight:var(--fw-semibold)}

/* ===== Lista kontaktowa ===== */
.contact-list{list-style:none;margin-top:26px;display:flex;flex-direction:column;gap:16px}
.contact-list li{display:flex;align-items:flex-start;gap:14px}
.contact-list__ico{width:42px;height:42px;flex-shrink:0;border-radius:11px;background:#eff4ff;color:var(--c-brand);display:flex;align-items:center;justify-content:center}
.contact-list__k{font-size:.78rem;font-weight:var(--fw-bold);letter-spacing:.03em;text-transform:uppercase;color:var(--c-muted)}
.contact-list__v{font-size:1.02rem;font-weight:var(--fw-semibold);color:var(--c-ink);line-height:1.4}
.contact-list__v a{color:var(--c-brand)}
.contact-list__v a:hover{text-decoration:underline}

/* ===== Prose (treść narracyjna) ===== */
.prose{max-width:72ch}
.prose p{margin-top:16px;color:var(--c-muted);font-size:1.05rem;line-height:1.75}
.prose p:first-child{margin-top:0}
.prose strong{color:var(--c-ink);font-weight:var(--fw-semibold)}
.prose a{color:var(--c-brand);text-decoration:underline;text-underline-offset:2px}
.prose a:hover{color:var(--c-brand-dark)}

/* Narracja + certyfikat obok (2 kolumny) */
.story-grid{margin-top:36px;display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(28px,4vw,52px);align-items:start}
.story-grid .prose{max-width:none}
.story-cert{margin:0}
.story-cert a{display:block;border-radius:14px;overflow:hidden;border:1px solid var(--c-line);box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s}
.story-cert a:hover{transform:translateY(-2px);box-shadow:0 18px 36px -20px rgba(15,23,42,.4)}
.story-cert img{width:100%;height:auto;display:block}
.story-cert figcaption{margin-top:12px;font-size:.84rem;color:var(--c-muted);text-align:center}
@media (max-width:820px){.story-grid{grid-template-columns:1fr;gap:28px}.story-cert{max-width:520px}}

/* Marki (chipsy) */
.brands{margin-top:40px}
.brands__label{font-size:.82rem;font-weight:var(--fw-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--c-muted);margin-bottom:14px}
.brands__list{list-style:none;display:flex;flex-wrap:wrap;gap:10px}
.brands__list li{padding:8px 14px;background:#fff;border:1px solid var(--c-line);border-radius:999px;font-size:.9rem;font-weight:var(--fw-semibold);color:var(--c-ink)}

/* ===== Słownik (glossary) ===== */
.glossary-sec{background:#fff;border-top:1px solid var(--c-line);padding:clamp(48px,6vw,88px) 0}
.glossary-sec__eyebrow{font-size:.82rem;font-weight:var(--fw-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--c-brand);margin-bottom:12px}
.glossary-sec__title{font-size:clamp(1.7rem,3.2vw,2.4rem);max-width:24ch}
.glossary-sec__lead{margin-top:18px;font-size:clamp(1.02rem,1.5vw,1.15rem);color:var(--c-muted);max-width:62ch}
.glossary{margin-top:36px;display:grid;grid-template-columns:1fr 1fr;gap:16px}
.glossary__item{padding:22px;border:1px solid var(--c-line);border-radius:var(--radius);background:var(--c-soft);scroll-margin-top:96px}
.glossary__term{font-size:1.06rem;font-weight:var(--fw-bold);color:var(--c-ink);letter-spacing:-.01em}
.glossary__def{margin-top:8px;font-size:.94rem;color:var(--c-muted);line-height:1.55}
@media (max-width:640px){.glossary{grid-template-columns:1fr}}

/* ===== Mapa strony (HTML sitemap) ===== */
.sitemap-sec{padding:clamp(40px,5vw,72px) 0}
.sitemap{margin-top:28px;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,32px)}
.sitemap__group h2{font-size:1.15rem;font-weight:var(--fw-bold);letter-spacing:-.01em;padding-bottom:10px;border-bottom:1px solid var(--c-line)}
.sitemap__group ul{list-style:none;margin-top:14px;display:flex;flex-direction:column;gap:9px}
.sitemap__group a{color:var(--c-muted);font-size:.98rem;display:inline-flex;align-items:center;gap:8px;transition:color .15s}
.sitemap__group a::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--c-line);flex-shrink:0}
.sitemap__group a:hover{color:var(--c-brand)}
.sitemap__group a:hover::before{background:var(--c-brand)}
@media (max-width:820px){.sitemap{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.sitemap{grid-template-columns:1fr}}

/* ===== Case studies ===== */
.cases-sec{background:var(--c-soft);border-top:1px solid var(--c-line);padding:clamp(48px,6vw,88px) 0}
.cases-sec__eyebrow{font-size:.82rem;font-weight:var(--fw-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--c-brand);margin-bottom:12px}
.cases-sec__title{font-size:clamp(1.7rem,3.2vw,2.4rem);max-width:24ch}
.cases-sec__lead{margin-top:18px;font-size:clamp(1.02rem,1.5vw,1.15rem);color:var(--c-muted);max-width:62ch}
.cases{margin-top:44px;display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:1fr;gap:18px}
.case{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--c-line);border-radius:16px;padding:26px;transition:border-color .15s,box-shadow .15s,transform .15s}
.case:hover{border-color:#c7d7f5;box-shadow:0 14px 30px -20px rgba(15,23,42,.35);transform:translateY(-2px)}
.case__result{align-self:flex-start;font-weight:var(--fw-black);font-size:clamp(1.5rem,2.4vw,2rem);color:var(--c-accent);letter-spacing:-.02em;line-height:1}
.case__client{margin-top:8px;font-size:.8rem;font-weight:var(--fw-bold);letter-spacing:.03em;text-transform:uppercase;color:var(--c-muted)}
.case h3{margin-top:12px;font-size:1.1rem;font-weight:var(--fw-bold);letter-spacing:-.01em}
.case p{margin-top:8px;font-size:.94rem;color:var(--c-muted);line-height:1.55}
.case__more{margin-top:auto;padding-top:16px;display:inline-flex;align-items:center;gap:8px;color:var(--c-brand);font-weight:var(--fw-semibold);font-size:.92rem}
.case__more::after{content:"";position:absolute;inset:0}
@media (max-width:900px){.cases{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.cases{grid-template-columns:1fr}}

/* ===== Blog (wpisy) + sidebar/widgety ===== */
.blog{padding:clamp(40px,5vw,72px) 0}
.blog__layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:clamp(28px,4vw,48px);align-items:start}
.entry-header{margin-bottom:22px}
.entry-title{font-size:clamp(1.9rem,3.6vw,2.6rem);font-weight:var(--fw-black);line-height:1.12;letter-spacing:-.022em}
.entry-meta{margin-top:12px;font-size:.9rem;color:var(--c-muted);display:flex;flex-wrap:wrap;gap:8px 16px}
.entry-thumb{margin:22px 0;border-radius:16px;overflow:hidden;border:1px solid var(--c-line)}
.entry-thumb img{width:100%;height:auto;display:block}
.entry-content{max-width:72ch}
.entry-content p{margin-top:16px;color:#334155;font-size:1.05rem;line-height:1.75}
.entry-content h2{margin-top:32px;font-size:1.5rem;font-weight:var(--fw-black)}
.entry-content h3{margin-top:26px;font-size:1.2rem;font-weight:var(--fw-bold)}
.entry-content ul,.entry-content ol{margin-top:16px;padding-left:22px;color:#334155;line-height:1.7}
.entry-content li{margin-top:8px}
.entry-content a{color:var(--c-brand);text-decoration:underline;text-underline-offset:2px}
.entry-content img{max-width:100%;height:auto;border-radius:12px}
.entry-content blockquote{margin:22px 0;padding:8px 20px;border-left:3px solid var(--c-brand);color:var(--c-ink)}
.post-card{padding:24px 0;border-bottom:1px solid var(--c-line)}
.post-card h2{font-size:1.4rem;font-weight:var(--fw-bold);letter-spacing:-.01em}
.post-card h2 a{color:var(--c-ink)}
.post-card h2 a:hover{color:var(--c-brand)}
.post-card__meta{margin-top:8px;font-size:.86rem;color:var(--c-muted)}
.post-card__excerpt{margin-top:10px;color:var(--c-muted);line-height:1.6}
.post-card__more{margin-top:12px;display:inline-flex;align-items:center;gap:8px;color:var(--c-brand);font-weight:var(--fw-semibold);font-size:.92rem}
.sidebar{position:sticky;top:96px;display:flex;flex-direction:column;gap:22px}
.widget{background:var(--c-soft);border:1px solid var(--c-line);border-radius:var(--radius);padding:22px}
.widget-title{font-size:.82rem;font-weight:var(--fw-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--c-muted);margin-bottom:14px}
.widget ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.widget li{font-size:.95rem;line-height:1.4}
.widget a{color:var(--c-ink)}
.widget a:hover{color:var(--c-brand)}
.widget select,.widget input[type=search]{width:100%;font:inherit;font-size:.95rem;padding:10px 12px;border:1px solid var(--c-line);border-radius:10px;background:#fff}
.widget--cta{background:linear-gradient(135deg,#1d4ed8,#2563eb);border:0;color:#fff;text-align:center}
.widget--cta .widget-title{color:#dbe6ff}
.widget--cta p{color:#eaf1ff;font-size:.95rem;line-height:1.55;margin-bottom:16px}
.pagination{margin-top:28px;display:flex;gap:8px;flex-wrap:wrap}
.pagination[hidden]{display:none}
.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 12px;border:1px solid var(--c-line);border-radius:10px;color:var(--c-ink);font-weight:var(--fw-semibold);background:#fff}
.pagination .page-numbers.current{background:var(--c-brand);color:#fff;border-color:var(--c-brand)}
.pagination a.page-numbers:hover{border-color:var(--c-brand);color:var(--c-brand)}
@media (max-width:900px){.blog__layout{grid-template-columns:1fr}.sidebar{position:static}}

/* ===== FAQ (natywne <details>, 0 JS) ===== */
.faq-sec{background:#fff;border-top:1px solid var(--c-line);padding:clamp(48px,6vw,88px) 0}
.faq-sec__eyebrow{font-size:.82rem;font-weight:var(--fw-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--c-brand);margin-bottom:12px}
.faq-sec__title{font-size:clamp(1.7rem,3.2vw,2.4rem);max-width:24ch}
.faq{margin-top:36px;max-width:840px;border-top:1px solid var(--c-line)}
.faq details{border-bottom:1px solid var(--c-line)}
.faq summary{list-style:none;cursor:pointer;padding:20px 4px;display:flex;justify-content:space-between;align-items:center;gap:16px;font-weight:var(--fw-bold);font-size:1.05rem;color:var(--c-ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex-shrink:0;width:11px;height:11px;border-right:2px solid var(--c-muted);border-bottom:2px solid var(--c-muted);transform:rotate(45deg) translateY(-2px);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(-135deg) translateY(-2px)}
.faq summary:hover{color:var(--c-brand)}
.faq details>p{padding:0 4px 22px;color:var(--c-muted);line-height:1.6;max-width:74ch}

/* ===== CTA końcowe ===== */
.cta-final{background:linear-gradient(135deg,#1d4ed8,#2563eb);color:#fff;padding:clamp(48px,6vw,84px) 0;text-align:center}
.cta-final h2{font-size:clamp(1.7rem,3.4vw,2.5rem);color:#fff;max-width:20ch;margin-inline:auto;letter-spacing:-.022em}
.cta-final p{margin-top:16px;font-size:clamp(1.02rem,1.6vw,1.18rem);color:#dbe6ff;max-width:54ch;margin-inline:auto;line-height:1.6}
.cta-final .btn{margin-top:28px}
.btn--white{background:#fff;color:var(--c-brand);box-shadow:0 8px 20px -8px rgba(0,0,0,.45)}
.btn--white:hover{background:#f1f5f9;transform:translateY(-1px)}
.cta-final__badges{margin-top:24px;display:flex;flex-wrap:wrap;justify-content:center;gap:10px 24px;list-style:none}
.cta-final__badges li{display:inline-flex;align-items:center;gap:8px;font-size:.9rem;font-weight:600;color:#eaf1ff}
.cta-final__badges svg{flex-shrink:0;color:#fff}

/* ===== Stopka ===== */
.footer{background:var(--c-ink);color:#cbd5e1;padding:clamp(48px,6vw,72px) 0 28px}
.footer__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:clamp(24px,4vw,48px)}
.footer__brand{max-width:34ch}
.footer__logo{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.footer__logo img{width:40px;height:40px;border-radius:9px}
.footer__logo span{color:#fff;font-size:1.1rem;font-weight:var(--fw-black);letter-spacing:-.01em}
.footer__desc{font-size:.92rem;line-height:1.6;color:#b2bccd}
.footer__col h3{color:#fff;font-size:.82rem;font-weight:var(--fw-bold);letter-spacing:.05em;text-transform:uppercase;margin-bottom:16px}
.footer__col ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.footer__col a{color:#cbd5e1;font-size:.94rem;transition:color .15s}
.footer__col a:hover{color:#fff}
.footer__social{display:flex;gap:10px;margin-top:18px}
.footer__social a{width:38px;height:38px;border-radius:10px;border:1px solid rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;color:#cbd5e1;transition:background .15s,color .15s}
.footer__social a:hover{background:rgba(255,255,255,.08);color:#fff}
.footer__bottom{margin-top:clamp(32px,4vw,48px);padding-top:24px;border-top:1px solid rgba(255,255,255,.1);display:flex;flex-wrap:wrap;gap:10px 24px;align-items:center;justify-content:space-between}
.footer__bottom p{font-size:.86rem;color:#aab6c7}
.footer__legal{display:flex;flex-wrap:wrap;gap:8px 20px}
.footer__legal a{font-size:.86rem;color:#aab6c7}
.footer__legal a:hover{color:#fff}
@media (max-width:820px){.footer__grid{grid-template-columns:1fr 1fr}.footer__brand{grid-column:1 / -1}}
@media (max-width:520px){.footer__grid{grid-template-columns:1fr}.footer__bottom{flex-direction:column;align-items:flex-start}}

/* ===== Responsywność (główna) ===== */
@media (max-width:960px){
  .hero__grid{grid-template-columns:1fr;gap:32px}
}
@media (max-width:1000px){
  .nav__menu,.nav__actions{display:none}
  .nav__toggle{display:flex;align-items:center;justify-content:center}
  .nav[data-open="true"] .nav__panel{display:flex}
  .nav__panel{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;gap:6px;background:#fff;border-bottom:1px solid var(--c-line);box-shadow:var(--shadow);padding:16px 20px}
  .nav__panel .nav__menu,.nav__panel .nav__actions{display:flex;flex-direction:column;align-items:stretch;gap:6px;width:100%}
  .nav__panel .nav__link{padding:12px 14px;border-radius:10px}
  .nav__panel .btn{width:100%}
  .site-header{position:sticky}
  .nav{position:relative}
}
@media (max-width:420px){
  body{font-size:16px}
  .brand__name{font-size:1.05rem}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* ============================================================
   Strony prawne (polityka prywatności, regulamin)
   Treść scope'owana pod .legal, aby nie kolidować z główną.
   ============================================================ */
.legal-header{border-bottom:1px solid var(--c-line);background:rgba(255,255,255,.9);position:sticky;top:0;backdrop-filter:blur(8px);z-index:50}
.legal-header .wrap{max-width:860px;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px}
.legal-header .brand img{width:40px;height:40px;border-radius:9px}
.legal-header .brand span{font-size:1.1rem;font-weight:800;letter-spacing:-.01em;color:var(--c-ink)}
.legal-header .back{font-size:.92rem;font-weight:600;color:var(--c-brand)}
.legal-header .back:hover{text-decoration:underline}

.legal{padding:clamp(32px,5vw,64px) 0;font-size:16.5px;line-height:1.65}
.legal .wrap{max-width:860px}
.legal .eyebrow{font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--c-brand);margin-bottom:12px}
.legal h1{font-size:clamp(1.9rem,4vw,2.6rem);font-weight:800}
.legal .updated{margin-top:12px;color:var(--c-muted);font-size:.92rem}
.legal .note{margin:26px 0;padding:16px 18px;background:#fffbeb;border:1px solid #fde68a;border-radius:12px;font-size:.92rem;color:#92400e}
.legal h2{margin-top:38px;font-size:1.3rem;font-weight:800}
.legal h2 span{color:var(--c-brand)}
.legal p{margin-top:14px;color:#334155}
.legal ul{margin-top:14px;padding-left:22px;color:#334155}
.legal li{margin-top:8px}
.legal a{color:var(--c-brand)}
.legal a:hover{text-decoration:underline}
.legal strong{font-weight:var(--fw-bold);color:var(--c-ink)}

.legal-footer{border-top:1px solid var(--c-line);background:var(--c-soft);padding:28px 0;margin-top:48px}
.legal-footer .wrap{max-width:860px;display:flex;flex-wrap:wrap;gap:10px 24px;justify-content:space-between;align-items:center}
.legal-footer p{font-size:.86rem;color:var(--c-muted)}
.legal-footer nav{display:flex;gap:20px}
.legal-footer a{font-size:.86rem;color:var(--c-brand)}
.legal-footer a:hover{text-decoration:underline}


/* === Sidebar bloga - nowoczesny, minimalistyczny === */
.sidebar .widget{background:#fff;border:1px solid var(--c-line);border-radius:var(--radius);padding:20px 22px;box-shadow:0 1px 2px rgba(15,23,42,.03)}
.sidebar .widget .wp-block-heading,.sidebar .wp-block-search__label{display:block;font-size:.72rem;font-weight:var(--fw-bold);letter-spacing:.08em;text-transform:uppercase;color:var(--c-muted);margin:0 0 14px}
.sidebar .wp-block-search__inside-wrapper{display:flex;gap:8px}
.sidebar .wp-block-search__input{flex:1;min-width:0;padding:10px 12px;border:1px solid var(--c-line);border-radius:10px;font-size:.95rem;background:var(--c-soft);color:var(--c-ink);transition:border-color .15s,background .15s}
.sidebar .wp-block-search__input:focus{outline:none;border-color:var(--c-brand);background:#fff}
.sidebar .wp-block-search__button{padding:0 16px;border:0;border-radius:10px;background:var(--c-ink);color:#fff;font-weight:var(--fw-semibold);font-size:.9rem;cursor:pointer;transition:background .15s}
.sidebar .wp-block-search__button:hover{background:var(--c-brand)}
.sidebar .wp-block-latest-posts__list{list-style:none;margin:0;padding:0}
.sidebar .wp-block-latest-posts__list li{margin:0}
.sidebar .wp-block-latest-posts__list a{display:block;padding:10px 0;color:var(--c-ink);font-size:.96rem;line-height:1.45;font-weight:var(--fw-medium);border-bottom:1px solid var(--c-line);transition:color .15s}
.sidebar .wp-block-latest-posts__list li:first-child a{padding-top:0}
.sidebar .wp-block-latest-posts__list li:last-child a{border-bottom:0;padding-bottom:0}
.sidebar .wp-block-latest-posts__list a:hover{color:var(--c-brand)}
.sidebar .widget--cta{background:linear-gradient(135deg,#1d4ed8,#2563eb);border:0;color:#fff;text-align:center;box-shadow:0 8px 24px rgba(37,99,235,.18)}
.sidebar .widget--cta .widget-title{color:#dbe6ff}
.sidebar .widget--cta p{color:#eaf1ff}


/* === Blog: archiwum / listing === */
.blog-archive{padding:clamp(28px,5vw,56px) 0}
.blog-archive__head{max-width:62ch;margin-bottom:10px}
.blog-archive__head h1{margin:6px 0 12px}
.blog-archive__intro{color:var(--c-muted);font-size:1.08rem;line-height:1.7}
.post-card__title{font-size:1.4rem;line-height:1.3;font-weight:var(--fw-bold);margin:0}
.post-card__title a{color:var(--c-ink);transition:color .15s}
.post-card__title a:hover{color:var(--c-brand)}
.post-card__meta a{color:var(--c-muted);text-decoration:underline;text-underline-offset:2px}
.post-card__meta a:hover{color:var(--c-brand)}
.blog-archive .post-card:first-of-type{padding-top:8px}

/* === Powiazane wpisy === */
.related-posts{padding:clamp(28px,5vw,56px) 0;border-top:1px solid var(--c-line);background:var(--c-soft)}
.related-posts__title{font-size:1.5rem;font-weight:var(--fw-bold);margin-bottom:20px}
.related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px}
.related-grid .post-card{padding:22px;border:1px solid var(--c-line);border-radius:var(--radius);background:#fff}
.related-grid .post-card__title{font-size:1.12rem}

/* ============================================================
   konsultantseo360.pl - komponenty własne
   ============================================================ */

/* ===== Obraz w hero ===== */
.hero__media{margin-top:22px;border-radius:var(--radius);overflow:hidden;border:1px solid var(--c-line);box-shadow:var(--shadow)}
.hero__media img{width:100%;height:auto;display:block;aspect-ratio:1120/860;object-fit:cover}

/* ===== Menu 2-poziomowe (dropdown) ===== */
.nav__menu li{position:relative}
.has-sub>.nav__link{display:inline-flex;align-items:center;gap:6px}
.has-sub>.nav__link::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-1px);opacity:.6}
.sub-menu{position:absolute;left:0;top:calc(100% + 6px);min-width:280px;background:#fff;border:1px solid var(--c-line);border-radius:12px;box-shadow:var(--shadow);padding:8px;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:2px;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .16s,transform .16s,visibility .16s;z-index:60}
.has-sub:hover>.sub-menu,.has-sub:focus-within>.sub-menu{opacity:1;visibility:visible;transform:translateY(0)}
.sub-menu a{display:block;padding:9px 12px;border-radius:8px;font-size:.9rem;font-weight:var(--fw-medium);color:var(--c-muted);white-space:nowrap}
.sub-menu a:hover{background:var(--c-soft);color:var(--c-brand)}
@media (max-width:1000px){
  .sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;border-left:2px solid var(--c-line);border-radius:0;margin:2px 0 6px 12px;padding:2px 0 2px 8px;grid-template-columns:1fr;min-width:0}
  .has-sub>.nav__link::after{display:none}
  .sub-menu a{padding:8px 10px}
}

/* ===== Pasek uwiarygodnienia / statystyki ===== */
.proof{background:var(--c-ink);color:#e2e8f0;padding:clamp(30px,4vw,44px) 0}
.proof__intro{max-width:62ch;margin-bottom:26px}
.proof__eyebrow{font-size:.8rem;font-weight:var(--fw-bold);letter-spacing:.06em;text-transform:uppercase;color:#7dd3fc;margin-bottom:8px}
.proof__intro h2{color:#fff;font-size:clamp(1.4rem,2.6vw,1.9rem);letter-spacing:-.02em}
.proof__intro p{margin-top:10px;color:#cbd6e6;font-size:1rem;line-height:1.6}
.proof__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.stat{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:22px}
.stat__num{font-size:clamp(1.7rem,3vw,2.3rem);font-weight:var(--fw-black);letter-spacing:-.02em;color:#fff;line-height:1}
.stat__num em{font-style:normal;color:#34d399}
.stat__label{margin-top:8px;font-size:.9rem;color:#cbd5e1;line-height:1.4}
.proof__disclaimer{margin-top:18px;font-size:.82rem;color:#a7b4c8;line-height:1.55}
@media (max-width:820px){.proof__grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:420px){.proof__grid{grid-template-columns:1fr}}

/* ===== Trust bar mini ===== */
.trustbar{display:flex;flex-wrap:wrap;gap:12px 28px;align-items:center;margin-top:22px;padding-top:22px;border-top:1px solid rgba(255,255,255,.1);list-style:none}
.trustbar li{display:inline-flex;align-items:center;gap:9px;font-size:.9rem;font-weight:var(--fw-semibold);color:#e2e8f0}
.trustbar svg{flex-shrink:0;color:#34d399}

/* ===== Siatka województw ===== */
.regions{background:#fff;border-top:1px solid var(--c-line);padding:clamp(48px,6vw,88px) 0}
.regions__eyebrow{font-size:.82rem;font-weight:var(--fw-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--c-brand);margin-bottom:12px}
.regions__title{font-size:clamp(1.7rem,3.2vw,2.4rem);max-width:26ch}
.regions__lead{margin-top:18px;font-size:clamp(1.02rem,1.5vw,1.15rem);color:var(--c-muted);max-width:64ch}
.regions__grid{margin-top:40px;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.region-card{position:relative;display:flex;flex-direction:column;gap:4px;background:var(--c-soft);border:1px solid var(--c-line);border-radius:14px;padding:18px 44px 18px 20px;transition:border-color .15s,box-shadow .15s,transform .15s}
.region-card:hover{border-color:#c7d7f5;box-shadow:0 12px 26px -18px rgba(15,23,42,.3);transform:translateY(-2px)}
.region-card__name{font-size:1.02rem;font-weight:var(--fw-bold);color:var(--c-ink);letter-spacing:-.01em}
.region-card__city{font-size:.86rem;color:var(--c-muted)}
.region-card__more{position:absolute;inset:0}
.region-card__arrow{position:absolute;top:20px;right:16px;color:var(--c-line);transition:color .15s,transform .15s}
.region-card:hover .region-card__arrow{color:var(--c-brand);transform:translateX(3px)}
@media (max-width:900px){.regions__grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:480px){.regions__grid{grid-template-columns:1fr}}

/* ===== Spis treści (podstrony) ===== */
.toc-box{margin-top:30px;background:var(--c-soft);border:1px solid var(--c-line);border-radius:14px;padding:20px 24px}
.toc-box__label{font-size:.76rem;font-weight:var(--fw-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--c-muted);margin-bottom:12px}
.toc-box ol{list-style:none;counter-reset:toc;display:grid;grid-template-columns:1fr 1fr;gap:6px 26px}
.toc-box li{counter-increment:toc;font-size:.95rem}
.toc-box a{display:flex;gap:10px;align-items:baseline;color:var(--c-ink);padding:4px 0}
.toc-box a::before{content:counter(toc,decimal-leading-zero);color:var(--c-brand);font-weight:var(--fw-bold);font-size:.82rem}
.toc-box a:hover{color:var(--c-brand)}
@media (max-width:640px){.toc-box ol{grid-template-columns:1fr}}

/* ===== Treść podstrony (region) ===== */
.region-body{padding:clamp(40px,5vw,72px) 0}
.region-body h2{font-size:clamp(1.5rem,2.8vw,2rem);font-weight:var(--fw-black);letter-spacing:-.02em;margin-top:48px;scroll-margin-top:96px}
.region-body h2:first-of-type{margin-top:0}
.region-body h3{font-size:1.2rem;font-weight:var(--fw-bold);margin-top:28px}
.region-body p{margin-top:15px;color:#334155;font-size:1.06rem;line-height:1.75}
.region-body .region-body__ul{margin-top:15px;padding-left:4px;list-style:none;display:flex;flex-direction:column;gap:10px}
.region-body .region-body__ul li{position:relative;padding-left:30px;color:#334155;line-height:1.65}
.region-body .region-body__ul li::before{content:"";position:absolute;left:0;top:6px;width:18px;height:18px;border-radius:50%;background:#e7f6ef}
.region-body .region-body__ul li::after{content:"";position:absolute;left:6px;top:9px;width:6px;height:10px;border-right:2px solid var(--c-accent);border-bottom:2px solid var(--c-accent);transform:rotate(40deg)}
.region-body strong{color:var(--c-ink);font-weight:var(--fw-semibold)}
.region-body a{color:var(--c-brand);text-decoration:underline;text-underline-offset:2px}
.region-body__figure{margin:26px 0;border-radius:16px;overflow:hidden;border:1px solid var(--c-line);box-shadow:var(--shadow)}
.region-body__figure img{width:100%;height:auto;display:block}
.region-body__figure figcaption{padding:10px 16px;font-size:.84rem;color:var(--c-muted);background:var(--c-soft);border-top:1px solid var(--c-line)}
.region-body__layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(28px,4vw,48px);align-items:start}
.region-aside{position:sticky;top:96px;display:flex;flex-direction:column;gap:18px}
.aside-card{background:#fff;border:1px solid var(--c-line);border-radius:14px;padding:22px;box-shadow:0 1px 2px rgba(15,23,42,.03)}
.aside-card h2,.aside-card h3{font-size:1.05rem;font-weight:var(--fw-bold);margin:0 0 12px}
.aside-card ul{list-style:none;display:flex;flex-direction:column;gap:9px}
.aside-card li a{color:var(--c-ink);font-size:.95rem;display:inline-flex;gap:8px;align-items:center}
.aside-card li a::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--c-brand);flex-shrink:0}
.aside-card li a:hover{color:var(--c-brand)}
.aside-cta{background:linear-gradient(135deg,#1d4ed8,#2563eb);color:#fff;border:0}
.aside-cta h2,.aside-cta h3{color:#fff}
.aside-cta p{font-size:.92rem;color:#eaf1ff;line-height:1.55;margin-bottom:14px}

/* ===== Trójki semantyczne (fact list) ===== */
.facts{margin-top:26px;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fact{background:var(--c-soft);border:1px solid var(--c-line);border-radius:12px;padding:16px 18px}
.fact__k{font-size:.76rem;font-weight:var(--fw-bold);letter-spacing:.03em;text-transform:uppercase;color:var(--c-muted)}
.fact__v{margin-top:4px;font-size:1rem;font-weight:var(--fw-semibold);color:var(--c-ink);line-height:1.4}
@media (max-width:560px){.facts{grid-template-columns:1fr}}

/* ===== Hero: statystyki w jednej linii (kompaktowe, nad CTA) ===== */
.hero__meta{list-style:none;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-top:20px;font-size:.92rem;color:var(--c-muted)}
.hero__meta li{display:inline-flex;align-items:baseline;gap:5px;white-space:nowrap}
.hero__meta li:not(:last-child)::after{content:"·";margin-left:12px;color:#cbd5e1;font-weight:700}
.hero__meta b{font-size:1.05rem;font-weight:var(--fw-black);color:var(--c-ink)}

/* ===== Formularz: stany oparte na atrybutach data-* (spójne z theme.js) ===== */
form[data-form] .form-alert{display:none}
form[data-form] .form-alert.is-shown{display:flex;gap:12px;align-items:flex-start}
form[data-form] [type="submit"].is-loading{opacity:.7;pointer-events:none}
form[data-form].is-sent .field,
form[data-form].is-sent .consent,
form[data-form].is-sent [data-err],
form[data-form].is-sent [type="submit"],
form[data-form].is-sent .lead-form__sub{display:none}
form[data-form].is-sent [data-alert="ok"]{display:flex;gap:12px;align-items:flex-start;margin-top:8px}

/* ===== Zakres usług (chips) ===== */
.scope-list{margin-top:20px;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.scope{display:flex;gap:12px;background:#fff;border:1px solid var(--c-line);border-radius:12px;padding:16px}
.scope__ico{width:38px;height:38px;flex-shrink:0;border-radius:10px;background:#eff4ff;color:var(--c-brand);display:flex;align-items:center;justify-content:center}
.scope h3{font-size:1rem;font-weight:var(--fw-bold)}
.scope p{margin-top:4px;font-size:.9rem;color:var(--c-muted);line-height:1.5}
@media (max-width:640px){.scope-list{grid-template-columns:1fr}}


/* === Mapa strony (HTML sitemap) === */
.sitemap-section{padding:clamp(28px,5vw,56px) 0}
.sitemap-head{margin-bottom:28px;max-width:60ch}
.sitemap-head h1{margin:6px 0 10px}
.sitemap-intro{color:var(--c-muted);font-size:1.08rem;line-height:1.6}
.sitemap-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px}
.sitemap-card{background:var(--c-soft);border:1px solid var(--c-line);border-radius:var(--radius);padding:22px 24px}
.sitemap-card h2{font-size:.76rem;font-weight:var(--fw-bold);letter-spacing:.07em;text-transform:uppercase;color:var(--c-muted);margin-bottom:12px}
.sitemap-card ul{list-style:none;margin:0;padding:0}
.sitemap-card a{display:block;padding:9px 0;color:var(--c-ink);font-weight:var(--fw-medium);border-bottom:1px solid var(--c-line);transition:color .15s}
.sitemap-card li:last-child a{border-bottom:0;padding-bottom:0}
.sitemap-card a:hover{color:var(--c-brand)}
