/* FizjoManufaktura, arkusz główny, wersja 3 (07.09.2026)
   Paleta z logo FM. Wzorce układu: fizjointouch.pl (pasek zaufania, hero z kartami,
   kafle wejściowe, karta ocen) i uzdroviskopoznan.pl (duża fotografia, oddech, spokój).
   Zasada kontrastu: #70ceeb i #4ab0d9 NIGDY jako tekst na białym. */

/* Open Sans, font zmienny (oś wagi 300 do 800, ten sam plik daje 400, 600 i 700; bez syntetycznego pogrubienia).
   Pliki w css/fonts/. Zmiana style.css = podbicie wersja_css w src/_data/site.json. */
@font-face{font-family:"Open Sans";font-style:italic;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("/css/fonts/open-sans-i-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}
@font-face{font-family:"Open Sans";font-style:italic;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("/css/fonts/open-sans-i-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+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Open Sans";font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("/css/fonts/open-sans-n-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}
@font-face{font-family:"Open Sans";font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("/css/fonts/open-sans-n-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+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}

:root{
  --granat:#212255; --granat-2:#2c2e6b; --granat-3:#171838;
  --granat-tekst:#18233f; --granat-link:#021859;
  --niebieski:#0468bf; --szary:#5e6b82;
  --blekit:#70ceeb; --blekit-2:#4ab0d9; --blekit-tlo:#eaf6fb;
  --tlo:#f2f5f9; --linia:#dfe5ee; --bialy:#fff; --zloty:#f5b301;
  --wide:1200px; --tekst:720px; --r:16px;
  --cien:0 1px 3px rgba(23,24,56,.05), 0 10px 30px rgba(23,24,56,.07);
  --cien-h:0 4px 10px rgba(23,24,56,.07), 0 22px 48px rgba(23,24,56,.14);
  --cien-karta:0 18px 50px rgba(23,24,56,.28);
}


*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
[id]{scroll-margin-top:96px}
#cookie-tytul:focus{outline:none}
body{margin:0;font-family:"Open Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  font-size:17px;line-height:1.65;color:var(--granat-tekst);background:var(--bialy);
  padding-bottom:76px;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--granat-link);text-underline-offset:3px}
a:hover,a:focus{color:var(--niebieski)}
:focus-visible{outline:3px solid var(--niebieski);outline-offset:3px;border-radius:6px}
h1,h2,h3{color:var(--granat);line-height:1.15;margin:0 0 .5em;letter-spacing:-.02em}
h1{font-size:2.125rem;font-weight:700}
h2{font-size:1.625rem;font-weight:700}
h3{font-size:1.0625rem;font-weight:600;letter-spacing:0}
.akcent{font-style:italic;font-weight:400;color:var(--niebieski)}
.hero .akcent,.cta-tresc .akcent,.wyroznik .akcent{color:var(--blekit)}
p{margin:0 0 1em}
.wrap{width:100%;max-width:var(--wide);margin:0 auto;padding:0 20px}
.waski{max-width:var(--tekst);margin-left:auto;margin-right:auto}
section{padding:52px 0}
main{min-height:55vh}
.tlo{background:var(--tlo)}
.pomoc{color:var(--szary);font-size:.9375rem}
.wstep{color:var(--szary);max-width:620px;margin-bottom:28px}

/* etykieta sekcji: kreska, ikona, tekst */
.etykieta{display:flex;align-items:center;gap:10px;font-size:.75rem;font-weight:700;
  letter-spacing:.16em;text-transform:uppercase;color:var(--niebieski);margin-bottom:14px}
.etykieta::before{content:"";width:28px;height:2px;background:var(--blekit-2);flex:none}

.skip{position:absolute;left:-9999px}
.skip:focus{left:8px;top:8px;background:var(--granat);color:#fff;padding:10px 14px;z-index:200}

/* pasek użytkowy */
.pasek-info{background:var(--granat-3);color:#c8cfe4;font-size:.8125rem}
.pasek-info .wrap{display:flex;flex-wrap:wrap;gap:6px 22px;padding-top:9px;padding-bottom:9px;align-items:center}
.pasek-info .prawo{margin-left:auto;display:flex;gap:18px;align-items:center}
.pasek-info a{color:#fff;text-decoration:none;font-weight:700}
.pasek-info .ocena{color:#fff}
.pasek-info .gw{color:var(--zloty);letter-spacing:1px}
.pasek-info .tylko-desktop{display:none}
@media (min-width:680px){.pasek-info .tylko-desktop{display:inline}}
@media (max-width:679px){.pasek-info .prawo{margin-left:0;width:100%;justify-content:space-between}}

/* nagłówek */
.top{border-bottom:1px solid var(--linia);background:rgba(255,255,255,.94);
  backdrop-filter:saturate(180%) blur(10px);position:sticky;top:0;z-index:90}
.top .wrap{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding-top:14px;padding-bottom:14px}
.logo img{height:38px;width:auto}
.top .tel{margin-left:auto;font-weight:700;text-decoration:none;white-space:nowrap;color:var(--granat)}
.top .cta{display:none}
.menu-btn{background:none;border:1px solid var(--linia);border-radius:10px;padding:9px 13px;
  font:inherit;font-weight:600;color:var(--granat);cursor:pointer}
.top nav{flex-basis:100%;order:3}
#menu{list-style:none;margin:0;padding:0 0 6px}
#menu[hidden]{display:none}
#menu li{border-top:1px solid var(--linia)}
#menu a{display:block;padding:14px 0;text-decoration:none;font-weight:600;color:var(--granat)}
#menu a.wyroz{color:var(--niebieski)}
.orly{display:block;height:38px;width:auto;margin:6px 0 12px}
#menu[hidden]+.orly{display:none}

/* HERO ciemny z fotografią */
.hero{position:relative;background:var(--granat-3);color:#fff;overflow:hidden;padding:44px 0 40px}
.hero-foto{position:absolute;inset:0;z-index:0;display:block;opacity:.30}
.hero-foto img{width:100%;height:100%;object-fit:cover;object-position:center 30%;display:block;filter:blur(3px);transform:scale(1.04)}
.hero::after{content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(105deg,var(--granat-3) 8%,rgba(23,24,56,.92) 42%,rgba(23,24,56,.55) 100%)}
.hero .wrap{position:relative;z-index:2}
.hero h1{color:#fff;font-size:2.25rem;margin-bottom:.4em}
.hero .lead{color:#d6dcec;font-size:1.0625rem;max-width:33em}
.plakietka{display:inline-flex;align-items:center;gap:9px;border:1px solid rgba(255,255,255,.28);
  border-radius:999px;padding:7px 16px;font-size:.75rem;font-weight:700;letter-spacing:.11em;
  text-transform:uppercase;color:#cfe7f5;margin-bottom:22px;background:rgba(255,255,255,.06)}
.plakietka svg{width:15px;height:15px;color:var(--blekit)}
.btny{display:flex;flex-direction:column;gap:11px;margin:26px 0 0}
.btn{display:inline-block;text-align:center;padding:16px 26px;border-radius:11px;font-weight:700;
  text-decoration:none;font-size:1.0625rem;border:2px solid transparent;
  transition:background .16s,color .16s,border-color .16s,transform .16s,box-shadow .16s}
.btn-1{background:var(--blekit);color:var(--granat)}
.btn-1:hover,.btn-1:focus{background:#8fdcf2;color:var(--granat);transform:translateY(-2px);box-shadow:0 10px 26px rgba(112,206,235,.35)}
.btn-2{background:transparent;color:#fff;border-color:rgba(255,255,255,.45)}
.btn-2:hover,.btn-2:focus{color:#fff;border-color:#fff;background:rgba(255,255,255,.08);transform:translateY(-2px)}
.btn-c1{background:var(--granat);color:#fff}
.btn-c1:hover,.btn-c1:focus{background:var(--granat-2);color:#fff;transform:translateY(-2px);box-shadow:var(--cien)}
.btn-c2{background:#fff;color:var(--granat);border-color:var(--granat)}
.btn-c2:hover,.btn-c2:focus{color:var(--granat-link);border-color:var(--granat-link);transform:translateY(-2px)}

/* karty pływające w hero */
.hero-karty{position:relative;z-index:2;display:grid;gap:14px;margin-top:32px}
.karta{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16);
  border-radius:var(--r);padding:18px 20px;backdrop-filter:blur(6px)}
.karta .duza{font-size:2.25rem;font-weight:700;color:#fff;line-height:1;letter-spacing:-.02em}
.karta .gw{color:var(--zloty);letter-spacing:2px;font-size:.9375rem;margin:6px 0 2px}
.karta small{color:#c8cfe4;font-size:.8125rem;display:block}
.karta h3,.karta .h3{margin:0;color:#fff;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;
  opacity:.75;margin-bottom:12px}
.awatary{display:flex;flex-wrap:wrap;gap:0}
.awatary img{width:42px;height:42px;border-radius:50%;object-fit:cover;
  border:2px solid var(--granat-3);margin-right:-10px;background:var(--tlo)}
.awatary .wiecej-os{width:42px;height:42px;border-radius:50%;background:var(--blekit);
  color:var(--granat);font-weight:700;font-size:.8125rem;display:flex;align-items:center;
  justify-content:center;border:2px solid var(--granat-3);margin-right:-10px}
.cytat-hero{display:flex;gap:13px;align-items:flex-start;background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.16);border-radius:var(--r);padding:16px 18px;backdrop-filter:blur(6px)}
.cytat-hero .inicjaly{width:38px;height:38px;border-radius:50%;background:var(--blekit);
  color:var(--granat);font-weight:700;font-size:.8125rem;display:flex;align-items:center;
  justify-content:center;flex:none}
.cytat-hero p{margin:0;font-size:.9375rem;color:#e6ebf5;font-style:italic;line-height:1.5}
.cytat-hero small{color:#a9b3cd;font-size:.75rem;display:block;margin-top:6px;font-style:normal}

/* kafle wejściowe */
.wejscia{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.wejscia a{display:flex;align-items:center;gap:14px;padding:18px 20px;border-radius:var(--r);
  background:var(--tlo);text-decoration:none;border:1px solid transparent;
  transition:transform .16s,box-shadow .16s,background .16s}
.wejscia a:hover,.wejscia a:focus{transform:translateY(-2px);box-shadow:var(--cien);background:#fff;border-color:var(--linia)}
.wejscia .ik{width:44px;height:44px;border-radius:12px;background:#fff;color:var(--niebieski);
  display:flex;align-items:center;justify-content:center;flex:none}
.wejscia .ik svg{width:22px;height:22px}
.wejscia b{display:block;color:var(--granat);font-size:1rem}
.wejscia span{display:block;color:var(--szary);font-size:.875rem}
.wejscia .strzalka{margin-left:auto;color:var(--niebieski);font-weight:700}
.wejscia li.glowna a{background:var(--granat);border-color:var(--granat)}
.wejscia li.glowna a:hover{background:var(--granat-2)}
.wejscia li.glowna .ik{background:rgba(255,255,255,.14);color:var(--blekit)}
.wejscia li.glowna b{color:#fff}
.wejscia li.glowna span{color:#bcc4dc}
.wejscia li.glowna .strzalka{color:var(--blekit)}

/* kafle objawów */
.kafle{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:14px}
.kafle a{display:flex;flex-direction:column;height:100%;padding:24px 22px;border:1px solid var(--linia);
  border-radius:var(--r);text-decoration:none;background:#fff;box-shadow:var(--cien);
  transition:transform .16s,box-shadow .16s,border-color .16s}
.kafle a:hover,.kafle a:focus{transform:translateY(-4px);box-shadow:var(--cien-h);border-color:var(--blekit)}
.kafle .ikona{width:48px;height:48px;border-radius:14px;background:var(--blekit-tlo);color:var(--niebieski);
  display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.kafle .ikona svg{width:26px;height:26px}
.kafle b{display:block;color:var(--granat);font-size:1.0625rem;line-height:1.3;margin-bottom:7px}
.kafle span{display:block;color:var(--szary);font-size:.9rem;line-height:1.5}
.kafle .strzalka{margin-top:16px;color:var(--niebieski);font-weight:700;font-size:.9rem}

/* zespół */
.zespol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:18px}
.osoba{border:1px solid var(--linia);border-radius:var(--r);overflow:hidden;background:#fff;
  box-shadow:var(--cien);display:flex;flex-direction:column;transition:transform .16s,box-shadow .16s}
.osoba:hover{transform:translateY(-4px);box-shadow:var(--cien-h)}
.osoba img{width:100%;aspect-ratio:1/1;object-fit:cover;background:var(--tlo)}
.osoba .tresc{padding:18px 20px 20px;display:flex;flex-direction:column;flex:1}
.osoba .nazwa{color:var(--granat);font-weight:700;font-size:1.0625rem;display:block}
.osoba .pwz{color:var(--szary);font-size:.85rem;display:block;margin-top:2px}
.osoba .przy{margin:13px 0 16px;font-size:.9375rem}
.osoba .przy b{color:var(--granat);display:block;font-size:.7rem;letter-spacing:.12em;
  text-transform:uppercase;margin-bottom:4px;font-weight:700}
.osoba .wiecej{margin-top:auto;font-weight:700;text-decoration:none;color:var(--niebieski)}
.osoba .wiecej:hover{text-decoration:underline}

/* kroki */
.kroki{list-style:none;counter-reset:k;margin:0 0 24px;padding:0;display:grid;gap:22px}
.kroki li{counter-increment:k;position:relative;padding-left:60px}
.kroki li::before{content:counter(k);position:absolute;left:0;top:-4px;width:44px;height:44px;
  border-radius:13px;background:var(--granat);color:#fff;font-weight:700;display:flex;
  align-items:center;justify-content:center;font-size:1.125rem}
.kroki b{color:var(--granat);display:block}
.mocne{background:#fff;border-left:6px solid var(--blekit);border-radius:0 var(--r) var(--r) 0;
  padding:20px 24px;box-shadow:var(--cien)}
.mocne p:last-child{margin-bottom:0}

/* opinie */
.ocena-pas{display:flex;align-items:center;gap:18px;background:#fff;border:1px solid var(--linia);
  border-radius:var(--r);padding:18px 22px;box-shadow:var(--cien);margin-bottom:24px;flex-wrap:wrap}
.ocena-pas .liczba{font-size:2.25rem;font-weight:700;color:var(--granat);line-height:1;letter-spacing:-.02em}
.ocena-pas .gw{color:var(--zloty);letter-spacing:2px}
.ocena-pas .opis{color:var(--szary);font-size:.9rem}
.opinie{display:grid;gap:16px;margin-bottom:22px}
.opinia{background:#fff;border:1px solid var(--linia);border-radius:var(--r);padding:22px;
  box-shadow:var(--cien);display:flex;flex-direction:column}
.opinia .glowa{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.opinia .inicjaly{width:40px;height:40px;border-radius:50%;background:var(--blekit-tlo);
  color:var(--granat);font-weight:700;font-size:.875rem;display:flex;align-items:center;
  justify-content:center;flex:none}
.opinia .kto{font-weight:700;color:var(--granat);font-size:.9375rem;line-height:1.2}
.opinia .kiedy{color:var(--szary);font-size:.8125rem}
.opinia .gw{color:var(--zloty);letter-spacing:2px;margin-left:auto;font-size:.875rem}
.opinia blockquote{margin:0 0 14px;font-size:1rem;line-height:1.6}
.opinia cite{font-style:normal;color:var(--szary);font-size:.8125rem;margin-top:auto}

/* sekcja dwukolumnowa */
.duo{display:grid;gap:26px;align-items:center}
.duo .foto{border-radius:var(--r);overflow:hidden;box-shadow:var(--cien-h)}

/* wyróżnik */
.wyroznik{background:var(--granat);color:#fff;border-radius:var(--r);padding:32px 26px;
  box-shadow:var(--cien-karta)}
.wyroznik h2{color:#fff}
.wyroznik .etykieta{color:var(--blekit)}
.wyroznik .etykieta::before{background:var(--blekit)}
.wyroznik p{color:#d6dcec}
.wyroznik a{color:var(--blekit);font-weight:700}

/* FAQ */
.faq details{background:#fff;border:1px solid var(--linia);border-radius:var(--r);
  padding:18px 22px;margin-bottom:10px;box-shadow:var(--cien)}
.faq details[open]{border-color:var(--blekit)}
.faq summary{color:var(--granat);font-weight:600;cursor:pointer;list-style:none;
  display:flex;align-items:flex-start;gap:12px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:"+";color:var(--niebieski);font-weight:700;font-size:1.25rem;line-height:1.25}
.faq details[open] summary::before{content:"–"}
.faq p{margin:12px 0 0}

/* kontakt */
.kontakt-siatka{display:grid;gap:24px}
#mapa{border-radius:var(--r);overflow:hidden;box-shadow:var(--cien);min-height:280px;
  background:var(--tlo);display:flex;align-items:center;justify-content:center}
#mapa p{color:var(--szary);font-size:.9rem;padding:20px;text-align:center;margin:0}
#mapa p a{display:inline-block;padding:10px 6px}

/* stopka: miękka, 3 kolumny, jasne linki, błękit tylko przy najechaniu */
.stopka{background:var(--granat-3);color:#dfe5f5;margin-top:56px;padding:56px 0 28px;font-size:.9375rem;
  border-radius:28px 28px 0 0;box-shadow:0 -12px 40px rgba(23,24,56,.08)}
.stopka-kolumny{display:grid;gap:36px 32px}
.stopka h2{color:#fff;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;margin:0 0 16px;opacity:.6}
.stopka a{color:#fff;text-decoration:none;border-bottom:1px solid transparent;transition:color .15s,border-color .15s}
.stopka a:hover,.stopka a:focus{color:var(--blekit);border-bottom-color:var(--blekit)}
.stopka ul{list-style:none;margin:0;padding:0}
.stopka li{margin-bottom:11px}
.stopka-logo{font-weight:700;font-size:1.375rem;letter-spacing:-.01em;color:#fff;margin:0 0 6px}
.stopka-logo span{color:var(--blekit)}
.stopka-tagline{margin:0 0 18px;color:#aab2ca;max-width:34ch}
.stopka address{font-style:normal;line-height:1.9;color:#dfe5f5}
.stopka-dol{border-top:1px solid rgba(255,255,255,.14);margin-top:40px;padding-top:22px;font-size:.8125rem;color:#aab2ca;line-height:1.7}
.stopka-dol p{margin:0 0 4px}
.stopka-dol a{color:#dfe5f5;text-decoration:underline;border-bottom:0}
.link-btn{background:none;border:0;padding:0;font:inherit;color:#fff;cursor:pointer;border-bottom:1px solid transparent}
.link-btn:hover,.link-btn:focus{color:var(--blekit);border-bottom-color:var(--blekit)}
@media (max-width:679px){.stopka nav ul{display:grid;grid-template-columns:1fr 1fr;gap:2px 16px}}
@media (min-width:680px){.stopka-kolumny{grid-template-columns:1fr 1fr}.stopka-marka{grid-column:1/-1}}
@media (min-width:960px){.stopka{margin-top:72px;padding:64px 0 30px;border-radius:36px 36px 0 0}.stopka-kolumny{grid-template-columns:1.5fr 1fr 1fr;gap:0 48px}.stopka-marka{grid-column:auto}}

/* pasek przyklejony */
.pasek{position:fixed;left:0;right:0;bottom:0;z-index:100;background:var(--granat);
  padding:10px 12px;display:flex;gap:10px;box-shadow:0 -6px 24px rgba(23,24,56,.26)}
.pasek a{flex:1;text-align:center;padding:14px 8px;border-radius:11px;text-decoration:none;
  font-weight:700;font-size:1rem}
.pasek .tel{background:#fff;color:var(--granat)}
.pasek .rez{background:var(--blekit);color:var(--granat)}


/* ---------- tablet ---------- */
@media (min-width:680px){
  .kafle{grid-template-columns:1fr 1fr}
  .zespol{grid-template-columns:1fr 1fr}
  .opinie{grid-template-columns:1fr 1fr}
  .wejscia{grid-template-columns:1fr 1fr}
  .btny{flex-direction:row}
  .btn{flex:0 0 auto}
  .hero-karty{grid-template-columns:auto auto;justify-content:start;align-items:start}
}

/* ---------- komputer ---------- */
@media (min-width:960px){
  body{padding-bottom:0}
  h1{font-size:3rem}
  h2{font-size:2.125rem}
  section{padding:84px 0}
  .top .wrap{flex-wrap:nowrap;padding-top:16px;padding-bottom:16px}
  .top nav{flex-basis:auto;order:2;margin-left:auto}
  .menu-btn{display:none}
  #menu{display:flex;gap:2px;padding:0;margin:0}
  #menu[hidden]{display:flex}
  #menu li{border:0}
  #menu a{padding:10px 13px;white-space:nowrap;border-radius:9px}
  #menu a:hover{background:var(--tlo)}
  #menu a.wyroz{background:var(--blekit-tlo)}
  .top nav{display:flex;align-items:center;gap:14px}
  #menu[hidden]+.orly,.orly{display:block;margin:0;height:34px}
  .top .tel{margin-left:22px;order:3}
  .top .cta{display:inline-block;order:4;margin-left:14px;padding:12px 22px;font-size:.9375rem}

  .hero{padding:88px 0 84px;min-height:600px;display:flex;align-items:center}
  .hero-foto{opacity:.34}
  .hero-foto img{object-position:center 26%}
  .hero::after{background:linear-gradient(100deg,var(--granat-3) 4%,rgba(23,24,56,.94) 38%,rgba(23,24,56,.42) 100%)}
  .hero .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:64px;align-items:center;width:100%}
  .hero h1{font-size:3.5rem;line-height:1.06}
  .hero .lead{font-size:1.1875rem}
  .hero-karty{margin-top:0;grid-template-columns:1fr;gap:16px;justify-content:stretch}
  .karta .duza{font-size:2.75rem}

  .wejscia{grid-template-columns:repeat(4,1fr);gap:16px}
  .wejscia a{flex-direction:column;align-items:flex-start;gap:12px;padding:22px}
  .wejscia .strzalka{margin-left:0}
  .kafle{grid-template-columns:repeat(3,1fr);gap:22px}
  .zespol{grid-template-columns:repeat(4,1fr);gap:22px}
  .kroki{grid-template-columns:repeat(3,1fr);gap:30px}
  .kroki li{padding-left:0;padding-top:60px}
  .kroki li::before{top:0;left:0}
  .opinie{grid-template-columns:repeat(3,1fr);gap:20px}
  .duo{grid-template-columns:1fr 1fr;gap:64px}
  .duo.odwrot .foto{order:-1}
  .wyroznik{padding:52px 56px}
  .kontakt-siatka{grid-template-columns:1fr 1.25fr;gap:48px;align-items:start}
  .faq-siatka{max-width:840px;margin:0 auto}
  .pasek{display:none}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* ============================================================
   STRONA OBJAWOWA (artykuł)
   Dodane 07.09.2026. Wzorzec: WZORZEC_STRONY_OBJAWOWEJ_FM, część A2.
   ============================================================ */

/* okruszki */
.okruszki{font-size:.8125rem;color:var(--szary);padding:16px 0 0}
.okruszki ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.okruszki li::after{content:"›";margin-left:6px;color:var(--linia)}
.okruszki li:last-child::after{content:""}
.okruszki a{color:var(--szary)}

/* nagłówek artykułu, jasny (nie ciemny hero, bo to strona do czytania) */
.art-gora{padding:24px 0 8px}
.art-gora h1{font-size:1.875rem;letter-spacing:-.015em;margin-bottom:18px}
.sygnatura{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center;font-size:.875rem;
  color:var(--szary);border-top:1px solid var(--linia);border-bottom:1px solid var(--linia);
  padding:14px 0;margin-bottom:26px}
.sygnatura .autor{color:var(--granat);font-weight:700}
.sygnatura .kropka{color:var(--linia)}
.sygnatura a{color:var(--szary);text-decoration:underline}
.art .lead{font-size:1.125rem;color:var(--granat-tekst)}

/* najważniejsze informacje */
.kluczowe{background:var(--blekit-tlo);border-radius:var(--r);padding:24px 24px 20px;margin:28px 0}
.kluczowe h2{font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--niebieski);margin-bottom:14px}
.kluczowe ul{margin:0;padding-left:20px}
.kluczowe li{margin-bottom:9px}
.kluczowe li:last-child{margin-bottom:0}

/* spis treści */
.spis{border:1px solid var(--linia);border-radius:var(--r);padding:20px 24px;margin:0 0 34px}
.spis h2{font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--szary);margin-bottom:12px}
.spis ol{margin:0;padding-left:22px;columns:1}
.spis li{margin-bottom:6px}
.spis a{color:var(--granat-link)}

/* typografia artykułu */
.art h2{margin:44px 0 14px;font-size:1.5rem;scroll-margin-top:84px}
.art h2:first-of-type{margin-top:34px}
.art h3{margin:26px 0 8px}
.art ul,.art ol{padding-left:22px;margin:0 0 1.15em}
.art li{margin-bottom:9px}
.art .art-mocne{color:var(--granat);font-weight:700}

/* czerwone flagi */
.alarm{background:#fff4f2;border:1px solid #f3c9c0;border-left:4px solid #c0392b;
  border-radius:var(--r);padding:20px 22px;margin:20px 0}
.alarm p{margin:0}
.alarm .naglowek{color:#a5301f;font-weight:700;display:block;margin-bottom:6px}
.alarm .numer{font-size:1.25rem;font-weight:700;color:#a5301f;white-space:nowrap}
.flagi{background:#fff;border:1px solid var(--linia);border-radius:var(--r);
  padding:22px 24px;margin:20px 0;box-shadow:var(--cien)}
.flagi ol{margin:0;padding-left:22px}
.flagi li{margin-bottom:12px}
.flagi li:last-child{margin-bottom:0}

/* wezwanie wplecione w treść */
.cta-tresc{background:var(--granat);color:#fff;border-radius:var(--r);padding:24px 24px;
  margin:30px 0;box-shadow:var(--cien-karta)}
.cta-tresc p{color:#d6dcec;margin:0 0 16px}
.cta-tresc strong{color:#fff}
.cta-tresc .btny{margin:0}
.cta-samodzielny{max-width:760px;margin:36px 0 0}
.cta-tresc .tel-link{color:var(--blekit);font-weight:700;text-decoration:none;white-space:nowrap}

/* karty osób w artykule */
.art .zespol{margin:22px 0 0}
.osoba .pomaga{color:var(--szary);font-size:.9rem;margin:10px 0 16px}
.osoba .btn{margin-top:auto;font-size:.9375rem;padding:12px 18px}

/* stopka artykułu */
.art-stopka{border-top:1px solid var(--linia);margin-top:48px;padding-top:28px}
.zrodla{font-size:.875rem;color:var(--szary)}
.zrodla ol{padding-left:20px}
.zrodla li{margin-bottom:12px}
.zrodla cite{font-style:italic}
.zrodla a{color:var(--granat-link);word-break:break-word}
.zastrzezenie{font-size:.875rem;color:var(--szary);background:var(--tlo);
  border-radius:var(--r);padding:16px 18px;margin:22px 0}
.linki-bok{font-size:.9375rem;margin-top:22px}
.linki-bok b{color:var(--granat);display:block;margin-bottom:4px}
.linki-bok a{color:var(--granat-link)}

@media (min-width:900px){
  .art-gora h1{font-size:2.5rem}
  .art h2{font-size:1.75rem}
  .spis ol{columns:2;column-gap:32px}
  .art .zespol{grid-template-columns:1fr 1fr;gap:22px}
  .cta-tresc{padding:30px 34px}
  .cta-tresc .btny{flex-direction:row}
}

/* ============================================================
   STRONA OBJAWOWA: UKŁAD DESKTOPOWY
   Dodane 07.09.2026. Poprawka po uwadze: strona miała tylko widok mobilny.
   Mobile bez zmian, jedna kolumna. Od 1024px: pasmo nagłówka z kartą
   rezerwacji oraz treść z przyklejonym spisem po lewej.
   ============================================================ */

.art-gora{background:var(--tlo);border-bottom:1px solid var(--linia);padding:26px 0 30px}
.art-gora-tekst{max-width:720px}
.art-tresc{max-width:720px;margin:0 auto;padding-top:8px}
.art-uklad{padding-top:0}

/* karta rezerwacji w nagłówku */
.art-karta{background:#fff;border:1px solid var(--linia);border-radius:var(--r);
  padding:22px 24px;box-shadow:var(--cien);margin-top:26px;max-width:720px}
.art-karta .tytul{font-size:1.0625rem;font-weight:700;color:var(--granat);margin:0 0 6px}
.art-karta .opis{color:var(--szary);font-size:.9375rem;margin:0 0 16px}
.art-karta .btn{display:block;width:100%}
.art-karta .numer{display:block;text-align:center;font-weight:700;font-size:1.125rem;
  color:var(--granat);text-decoration:none;padding:12px 0 4px}
.art-karta .drobne{color:var(--szary);font-size:.8125rem;margin:8px 0 0;line-height:1.5}

/* kolumna boczna */
.art-boczny{margin:0 0 30px}
.boczny-tel{font-size:.875rem;margin:14px 0 0}
.boczny-tel a{color:var(--granat-link);font-weight:600}
.spis a.aktywny{color:var(--niebieski);font-weight:700}
/* spis na telefonie zwinięty, żeby nie spychał treści o 470 px */
.spis-przelacz{display:none;width:100%;text-align:left;background:var(--tlo);border:1px solid var(--linia);border-radius:10px;padding:10px 12px;font:inherit;font-size:.9375rem;font-weight:600;color:var(--granat);cursor:pointer}
.spis-przelacz::after{content:"▾";float:right}
.spis-przelacz[aria-expanded="true"]::after{content:"▴"}
@media (max-width:1023px){
  .spis-przelacz{display:block}
  .spis:not(.otwarty) ol{display:none}
  .spis.otwarty ol{margin-top:12px}
  .spis{padding:16px 18px;margin-bottom:24px}
}

@media (min-width:1024px){
  .art-gora{padding:44px 0 48px}
  .art-gora-uklad{display:grid;grid-template-columns:minmax(0,1fr) 320px;
    gap:56px;align-items:start;max-width:1120px;margin:0 auto}
  .art-karta{margin-top:0;position:sticky;top:96px}

  .art-uklad{display:grid;grid-template-columns:250px minmax(0,720px);
    gap:60px;align-items:start;justify-content:center;padding-top:46px}
  .art-boczny{position:sticky;top:96px;margin:0;max-height:calc(100vh - 130px);overflow:auto}
  .art-tresc{margin:0;padding-top:0;max-width:720px}

  .spis{border:0;border-left:2px solid var(--linia);border-radius:0;
    padding:0 0 0 20px;margin:0}
  .spis ol{columns:1;padding-left:20px}
  .spis li{margin-bottom:9px;font-size:.9375rem}

  .art h2:first-of-type{margin-top:0}
}

/* korekty typograficzne po obejrzeniu układu desktopowego 07.09.2026 */
.kluczowe h2{letter-spacing:.1em;font-size:.8125rem}
.spis h2{letter-spacing:.1em;font-size:.75rem}
@media (min-width:1024px){
  .art-uklad{grid-template-columns:268px minmax(0,720px);gap:56px}
  .spis h2{white-space:nowrap}
}

/* mobile: spis treści zwięzły, w dwóch kolumnach, żeby nie spychał treści */
@media (max-width:1023px){
  .spis ol{columns:2;column-gap:24px;font-size:.9375rem}
  .spis li{break-inside:avoid}
}

/* ============================================================
   WERSJA 4 (08.09.2026). Reszta serwisu: panel zgód, rezerwacja, huby,
   metody, karty terapeutów, cennik, opinie, poradnik, dokumenty, 404.
   ============================================================ */
#menu a.aktywne{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px}
@media (min-width:960px){#menu a.aktywne{text-decoration:none;background:var(--tlo)}#menu a.wyroz.aktywne{background:var(--blekit-tlo)}}

.naglowek-strony{background:var(--tlo);border-bottom:1px solid var(--linia);padding:22px 0 34px}
.naglowek-strony h1{font-size:2rem;margin:10px 0 12px}
.naglowek-strony .wstep{margin-bottom:0;max-width:680px}
@media (min-width:960px){.naglowek-strony{padding:36px 0 48px}.naglowek-strony h1{font-size:2.75rem}}

/* panel zgód, C10 */
/* Panel zgód: ten sam komponent i wygląd co na stawianiebaniek.pl (cookie-consent.css, 08.09.2026),
   kolory z palety FM: akcent granat, przycisk główny „Akceptuję” wypełniony i większy. */
.cookie-consent{--cc-accent:var(--granat);--cc-accent-dark:var(--granat-2);
  position:fixed;left:16px;right:16px;bottom:88px;z-index:2147483000;max-width:520px;margin:0 auto;max-height:calc(100vh - 100px);overflow:auto;
  background:#fff;color:var(--granat-tekst);border:1px solid rgba(33,34,85,.14);border-radius:14px;box-shadow:0 18px 48px rgba(23,24,56,.22);
  padding:20px;font-size:14px;line-height:1.5;display:none}
.cookie-consent.is-visible{display:block}
.cookie-consent h3{margin:0 0 8px;font-size:18px;font-weight:700;color:var(--granat)}
.cookie-consent .cookie-description{margin:0 0 14px;color:var(--szary)}
.cookie-consent .cookie-description a{color:var(--granat-link);text-decoration:underline}
.cookie-options{display:flex;flex-direction:column;gap:12px;margin:0 0 16px}
.cookie-option{display:flex;align-items:center;justify-content:space-between;gap:14px}
.cookie-option h4{margin:0 0 2px;font-size:14px;font-weight:700;color:var(--granat)}
.cookie-option p{margin:0;font-size:12px;color:var(--szary);line-height:1.4}
.cookie-toggle{position:relative;display:inline-block;width:44px;height:24px;flex:0 0 auto}
.cookie-toggle input{position:absolute;opacity:0;width:0;height:0}
.cookie-slider{position:absolute;inset:0;background:#c9ccd1;border-radius:999px;transition:.2s;cursor:pointer}
.cookie-slider::before{content:"";position:absolute;left:3px;top:3px;width:18px;height:18px;background:#fff;border-radius:50%;transition:.2s}
.cookie-toggle input:checked + .cookie-slider{background:var(--cc-accent)}
.cookie-toggle input:checked + .cookie-slider::before{transform:translateX(20px)}
.cookie-toggle input:disabled + .cookie-slider{opacity:.55;cursor:not-allowed}
.cookie-toggle input:focus-visible + .cookie-slider{outline:3px solid var(--niebieski);outline-offset:2px}
.cookie-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:flex-end}
.cookie-button{appearance:none;border:2px solid #8b8f96;background:#fff;color:#3f434a;border-radius:999px;padding:9px 16px;font-family:inherit;font-weight:700;font-size:13px;cursor:pointer;line-height:1.1}
.cookie-button.secondary{border-color:#8b8f96;color:#3f434a}
.cookie-button.primary{background:var(--cc-accent-dark);border-color:var(--cc-accent-dark);color:#fff;font-size:16px;padding:13px 30px;box-shadow:0 6px 16px rgba(23,24,56,.22)}
.cookie-button:hover{filter:brightness(.96)}
.cookie-button:focus-visible{outline:3px solid var(--niebieski);outline-offset:2px}
.cookie-reopen{position:fixed;left:16px;bottom:16px;z-index:2147482000;background:#fff;color:var(--szary);border:1px solid rgba(33,34,85,.16);border-radius:999px;padding:8px 14px;font-family:inherit;font-size:12px;font-weight:700;cursor:pointer;box-shadow:0 8px 24px rgba(23,24,56,.14);display:none}
@media (max-width:560px){.cookie-consent{max-width:none}.cookie-actions{justify-content:space-between}.cookie-button{flex:1 1 auto}.cookie-button.primary{flex:1 1 100%}}
@media (min-width:960px){.cookie-consent{left:auto;right:24px;bottom:24px}.cookie-reopen:not([hidden]){display:inline-block}}

/* rezerwacja, C3 */
.rezerwacja{background:#fff;border:1px solid var(--linia);border-radius:var(--r);padding:18px;box-shadow:var(--cien)}
.rez-widget{min-height:420px;display:flex;align-items:center;justify-content:center;background:var(--tlo);border-radius:12px;overflow:hidden}
.rez-widget .rez-czekaj{color:var(--szary);font-size:.9375rem;text-align:center;padding:24px;margin:0}
.rez-widget .rez-czekaj a{display:block;margin-top:8px;font-weight:700}
.rez-widget .zl-url,.rez-widget a[data-zl-widget-facility]{display:block;padding:24px;font-weight:700}
.rez-tel{margin:14px 0 0;font-size:.9375rem;color:var(--szary)}
.rez-tel a{font-weight:700;color:var(--granat-link);white-space:nowrap}
.mapa-zgoda{background:var(--granat);color:#fff;border:0;border-radius:10px;padding:11px 16px;font:inherit;font-weight:700;cursor:pointer;margin-top:10px}

/* kafle metod (T4) */
.metody-lista{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.metody-lista a{display:block;padding:20px 22px;border:1px solid var(--linia);border-radius:var(--r);background:#fff;text-decoration:none;box-shadow:var(--cien);height:100%;transition:transform .16s,box-shadow .16s,border-color .16s}
.metody-lista a:hover,.metody-lista a:focus{transform:translateY(-3px);box-shadow:var(--cien-h);border-color:var(--blekit)}
.metody-lista b{display:block;color:var(--granat);font-size:1.0625rem;margin-bottom:6px}
.metody-lista span{display:block;color:var(--szary);font-size:.9rem;line-height:1.5}
.metody-lista .przy{margin-top:10px;font-size:.8125rem;color:var(--niebieski);font-weight:700}
@media (min-width:680px){.metody-lista{grid-template-columns:1fr 1fr}}
@media (min-width:960px){.metody-lista{grid-template-columns:repeat(3,1fr);gap:20px}}

.linki-siatka{list-style:none;margin:0 0 1.2em;padding:0;display:grid;gap:8px}
.linki-siatka a{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--linia);border-radius:12px;text-decoration:none;color:var(--granat);font-weight:600;background:#fff}
.linki-siatka a::after{content:"→";margin-left:auto;color:var(--niebieski)}
.linki-siatka a:hover{border-color:var(--blekit);background:var(--blekit-tlo)}
@media (min-width:680px){.linki-siatka{grid-template-columns:1fr 1fr}}

.fakty{list-style:none;margin:0 0 1.4em;padding:0;display:grid;gap:12px}
.fakty li{background:var(--tlo);border-radius:12px;padding:14px 16px}
.fakty b{display:block;color:var(--niebieski);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:4px}
.fakty span{color:var(--granat);font-weight:700;font-size:1.0625rem}
@media (min-width:680px){.fakty{grid-template-columns:repeat(3,1fr)}}

/* karta terapeuty, T7 */
.osoba-gora{display:grid;gap:22px;align-items:start}
.osoba-gora picture{display:block}
.osoba-gora img{width:min(100%,340px);aspect-ratio:1/1;object-fit:cover;border-radius:var(--r);box-shadow:var(--cien-h)}
.osoba-gora h1{font-size:2rem;margin:0 0 4px}
.osoba-gora .tytuly{color:var(--szary);margin:0 0 6px}
.osoba-gora .pwz-duzy{display:inline-block;background:var(--blekit-tlo);color:var(--granat);font-weight:700;border-radius:999px;padding:6px 14px;font-size:.875rem;margin:6px 0 18px}
.osoba-gora .btny{margin-top:0}
@media (min-width:800px){.osoba-gora{grid-template-columns:340px 1fr;gap:48px;align-items:center}}
/* T7: dwie kolumny od 1024 px, treść 720 px + przyklejona karta */
.osoba-uklad{display:grid;gap:28px;align-items:start}
.osoba-karta{margin-top:8px;max-width:720px}
.karta-lista{list-style:none;margin:6px 0 14px;padding:0;display:grid;gap:6px}
.karta-lista a{display:block;padding:8px 12px;border:1px solid var(--linia);border-radius:10px;text-decoration:none;color:var(--granat);font-weight:600;font-size:.875rem;background:#fff}
.karta-lista a:hover{border-color:var(--blekit);background:var(--blekit-tlo)}
/* T8 i inne: ogólny układ dwukolumnowy z kartą wizyty */
.uklad-2k{display:grid;gap:28px;align-items:start}
.uklad-2k>*{min-width:0}
.uklad-2k>.tekst-strony{max-width:720px}
.karta-wizyty{margin-top:8px;max-width:720px}
/* T5: ten sam wzorzec */
.metoda-uklad{display:grid;gap:28px;align-items:start}
.metoda-tresc{max-width:720px}
.metoda-tresc .zespol{margin:18px 0 8px}
.metoda-karta{margin-top:8px;max-width:720px}
@media (min-width:680px){.metoda-tresc .zespol{grid-template-columns:1fr 1fr;gap:18px}}
@media (min-width:1024px){
  .osoba-uklad,.metoda-uklad,.uklad-2k{grid-template-columns:minmax(0,720px) 320px;gap:60px;justify-content:start}
  .uklad-2k-szeroki{grid-template-columns:minmax(0,760px) 320px;gap:48px}
  .osoba-karta,.metoda-karta,.karta-wizyty{position:sticky;top:96px;margin-top:0}
  .metoda-tresc .zespol{grid-template-columns:1fr 1fr}
}
.osoba-tresc h2{font-size:1.5rem;margin:40px 0 12px}
.osoba-tresc h3{margin:24px 0 8px}
.bio p{max-width:65ch}
.bio ul{padding-left:22px}
.bio ul li{margin-bottom:8px}

/* cennik, T8 */
.cennik{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--linia);border-radius:var(--r);overflow:hidden;box-shadow:var(--cien);font-size:.9375rem}
.cennik th,.cennik td{text-align:left;padding:14px 16px;border-top:1px solid var(--linia);vertical-align:top}
.cennik thead th{background:var(--tlo);color:var(--granat);font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;border-top:0}
.cennik td:last-child,.cennik th:last-child{text-align:right;white-space:nowrap;font-weight:700;color:var(--granat)}
.cennik .grupa td,.cennik .grupa th{background:var(--granat);color:#fff;font-weight:700;text-align:left;font-size:.95rem;letter-spacing:.03em;border-top:0}
.cennik .opis{display:block;margin-top:4px;font-size:.86rem;line-height:1.45;color:var(--szary);font-weight:400}
.cennik .podgrupa th{background:var(--blekit-tlo);color:var(--granat);font-weight:700;text-align:left;font-size:.8rem;letter-spacing:.11em;text-transform:uppercase;padding-left:36px;box-shadow:inset 5px 0 0 var(--granat)}
.cennik .wpodgrupie td:first-child{padding-left:36px;box-shadow:inset 5px 0 0 var(--blekit-tlo)}
.cennik-uwagi{font-size:.9rem;color:var(--szary);margin-top:18px}
.cennik-uwagi p{margin-bottom:.5em}
.tabela-scroll{overflow-x:auto}

/* opinie */
.opinie-filtr{display:grid;gap:10px;background:#fff;border:1px solid var(--linia);border-radius:var(--r);padding:16px;box-shadow:var(--cien);margin-bottom:22px}
.opinie-filtr label{font-size:.8125rem;color:var(--szary);display:block}
.opinie-filtr select,.opinie-filtr input{width:100%;padding:11px 12px;border:1px solid var(--linia);border-radius:10px;font:inherit;font-size:1rem;color:var(--granat-tekst);background:#fff;margin-top:4px}
.opinie-filtr .wynik{align-self:end;font-size:.9rem;color:var(--szary)}
@media (min-width:800px){.opinie-filtr{grid-template-columns:1fr 1fr 1.4fr auto;align-items:end}}
.opinie-wiecej{margin:24px auto 0;display:block}
.opinie-wiecej[hidden]{display:none}
[hidden]{display:none}
.zrodla-opinii{display:grid;gap:12px;margin:0 0 26px}
.zrodla-opinii a{display:flex;align-items:center;gap:14px;padding:16px 18px;border:1px solid var(--linia);border-radius:var(--r);background:#fff;text-decoration:none;color:var(--granat)}
.zrodla-opinii .liczba{font-size:1.75rem;font-weight:700;line-height:1}
.zrodla-opinii small{display:block;color:var(--szary);font-size:.8125rem}
@media (min-width:680px){.zrodla-opinii{grid-template-columns:1fr 1fr}}

/* poradnik */
.wpisy{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.wpisy a{display:flex;flex-direction:column;height:100%;padding:22px;border:1px solid var(--linia);border-radius:var(--r);background:#fff;text-decoration:none;box-shadow:var(--cien);transition:transform .16s,box-shadow .16s}
.wpisy a:hover{transform:translateY(-3px);box-shadow:var(--cien-h)}
.wpisy .data{color:var(--szary);font-size:.8125rem;margin-bottom:8px}
.wpisy b{color:var(--granat);font-size:1.0625rem;line-height:1.35;margin-bottom:8px}
.wpisy span{color:var(--szary);font-size:.9rem;line-height:1.5}
.wpisy .objaw{margin-top:auto;padding-top:12px;font-size:.8125rem;font-weight:700;color:var(--niebieski)}
@media (min-width:680px){.wpisy{grid-template-columns:1fr 1fr}}
@media (min-width:960px){.wpisy{grid-template-columns:repeat(3,1fr);gap:22px}}
.wpis-tresc{max-width:720px;overflow-wrap:anywhere}
.wpis-tresc table{width:100%;min-width:480px;border-collapse:collapse;font-size:.9rem;margin:0}
.wpis-tresc td,.wpis-tresc th{border:1px solid var(--linia);padding:8px 10px;vertical-align:top;text-align:left}
.wpis-tresc .tabela-scroll{margin:16px 0}
.wpis-tresc img{max-width:100%;height:auto;border-radius:12px}
.wpis-tresc img{border-radius:12px;margin:18px 0}
.wpis-tresc h2{font-size:1.5rem;margin:36px 0 12px}
.wpis-tresc h3{margin:24px 0 8px}
.wpis-tresc ul,.wpis-tresc ol{padding-left:22px}
.wpis-tresc li{margin-bottom:8px}
.wpis-tresc table{width:100%;border-collapse:collapse;font-size:.9375rem}
.wpis-tresc td,.wpis-tresc th{border:1px solid var(--linia);padding:8px 10px;text-align:left}
.wpis-do-objawu{background:var(--blekit-tlo);border-radius:var(--r);padding:20px 22px;margin:34px 0}
.wpis-do-objawu b{color:var(--granat);display:block;margin-bottom:6px}
.grupa-poradnika h2{margin-top:44px}

/* dokument prawny, T11 */
.dokument{max-width:820px;margin:0 auto;font-size:1rem;overflow-wrap:anywhere}
.dokument h1{font-size:1.75rem}
.dokument h2{font-size:1.25rem;margin:32px 0 10px}
.dokument h3{font-size:1.0625rem;margin:22px 0 8px}
.dokument table{width:100%;min-width:480px;border-collapse:collapse;font-size:.9rem;margin:0}
.dokument .tabela-scroll{margin:16px 0}
.dokument td,.dokument th{border:1px solid var(--linia);padding:8px 10px;vertical-align:top;text-align:left}
.dokument ul,.dokument ol{padding-left:24px}
.dokument img{margin:12px 0}
.dokument-meta{font-size:.875rem;color:var(--szary);border-bottom:1px solid var(--linia);padding-bottom:14px;margin-bottom:26px}
.dokument-archiwum{background:var(--tlo);border-radius:12px;padding:14px 16px;font-size:.9rem;color:var(--szary);margin-bottom:22px}
.dokumenty-lista{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.dokumenty-lista a{display:block;padding:16px 18px;border:1px solid var(--linia);border-radius:12px;background:#fff;text-decoration:none;color:var(--granat);font-weight:600}
.dokumenty-lista a:hover{border-color:var(--blekit)}
.dokumenty-lista small{display:block;color:var(--szary);font-weight:400;font-size:.8125rem;margin-top:3px}
.tekst-strony.tekst-szeroki{max-width:1120px}
@media (min-width:800px){.dokumenty-lista{grid-template-columns:1fr 1fr;gap:14px}}

/* kontakt */
.kontakt-karty{display:grid;gap:14px;margin:0 0 26px}
.kontakt-karty div{background:#fff;border:1px solid var(--linia);border-radius:var(--r);padding:20px 22px;box-shadow:var(--cien)}
.kontakt-karty b{display:block;color:var(--niebieski);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px}
.kontakt-karty p{margin:0;font-size:1.0625rem}
.kontakt-karty a{font-weight:700;text-decoration:none}
@media (min-width:680px){.kontakt-karty{grid-template-columns:1fr 1fr}}
.do-uzupelnienia{background:#fff8e6;border:1px dashed #d9a400;border-radius:10px;padding:10px 14px;font-size:.875rem;color:#6b5200}

.strona-404{text-align:center;padding:80px 0}
.strona-404 h1{font-size:2.5rem}
.strona-404 .btny{justify-content:center}

/* hub objawów */
.hub-wstep{display:grid;gap:26px;align-items:center;margin-bottom:34px}
.mapa-ciala{display:grid;grid-template-columns:1fr 112px 1fr;align-items:stretch;width:100%;max-width:520px;justify-self:center}
.mapa-ciala svg{width:112px;height:auto;display:block}
.mapa-ciala .mc-linie{stroke:var(--linia);stroke-width:1.5;stroke-dasharray:3 3}
.mc-kolumna{position:relative;min-height:100%}
.mc-etykieta{position:absolute;transform:translateY(-50%);font-size:.88rem;font-weight:700;color:var(--granat);text-decoration:none;line-height:1.2;border-bottom:2px solid var(--blekit);padding-bottom:1px;white-space:nowrap}
.mc-lewa .mc-etykieta{right:6px}.mc-prawa .mc-etykieta{left:6px}
.mc-etykieta:hover,.mc-etykieta:focus{color:var(--niebieski);border-color:var(--niebieski)}
@media (max-width:599px){.mc-etykieta{font-size:.82rem;white-space:normal;width:calc(100% - 6px);border-bottom:0;text-decoration:underline;text-decoration-color:var(--blekit);text-underline-offset:3px}.mc-lewa .mc-etykieta{text-align:right}}
@media (min-width:900px){.hub-wstep{grid-template-columns:1fr 480px}.mapa-ciala{grid-template-columns:1fr 160px 1fr;max-width:560px}.mapa-ciala svg{width:160px}.mc-etykieta{font-size:.95rem}}
.nie-wiesz{background:var(--granat);color:#fff;border-radius:var(--r);padding:26px;margin-top:34px;box-shadow:var(--cien-karta)}
.nie-wiesz h2{color:#fff;font-size:1.375rem}
.nie-wiesz p{color:#d6dcec}
.nie-wiesz a{color:var(--blekit);font-weight:700}

/* strona rezerwacji */
.rez-uklad{display:grid;gap:28px;align-items:start}
@media (min-width:960px){.rez-uklad{grid-template-columns:1.2fr .8fr;gap:48px}}
.rez-boczny .zespol{grid-template-columns:1fr;gap:10px}
/* karty zespołu na telefonie: poziome i zwarte (jedna kolumna, 8 kart) */
@media (max-width:679px){
  .zespol .osoba{flex-direction:row;align-items:center}
  .zespol .osoba .osoba-foto{flex:none}
  .zespol .osoba img{width:96px;height:96px;aspect-ratio:1/1;border-radius:12px;margin:12px 0 12px 12px}
  .zespol .osoba .tresc{padding:10px 14px}
  .zespol .osoba .przy{margin:4px 0 6px;font-size:.85rem}
  .zespol .osoba .przy b{display:none}
  .zespol .osoba .nazwa{font-size:1rem}
  .zespol .osoba .pwz{font-size:.78rem}
}
.rez-boczny .osoba{flex-direction:row;align-items:center}
.rez-boczny .osoba .osoba-foto{flex:none}
.rez-boczny .osoba img{width:84px;height:84px;aspect-ratio:1/1}
.rez-boczny .osoba .tresc{padding:10px 14px}
.rez-boczny .osoba .przy{margin:4px 0 6px;font-size:.85rem}
.rez-boczny .osoba .przy b{display:none}
.rez-boczny .osoba .nazwa{font-size:1rem}
.rez-boczny .osoba .pwz{font-size:.78rem}

/* drobne */
.tekst-strony{max-width:720px}
.tekst-strony h2{font-size:1.5rem;margin:40px 0 12px}
.tekst-strony h3{margin:24px 0 8px}
.tekst-strony ul,.tekst-strony ol{padding-left:22px}
.tekst-strony li{margin-bottom:8px}
.uwaga{background:var(--tlo);border-left:6px solid var(--blekit);border-radius:0 var(--r) var(--r) 0;padding:16px 20px;margin:20px 0}
.uwaga p:last-child{margin-bottom:0}
.sygnatura-krotka{font-size:.875rem;color:var(--szary);margin:0 0 20px}
.sygnatura-krotka b{color:var(--granat)}
.przycisk-srodek{text-align:center;margin-top:26px}
.btn.szeroki{display:block}
.pomoc a{color:var(--granat-link)}
.osoba .osoba-foto{display:block}
/* mikroobietnice pod pierwszym ekranem (A7 wzorca: miejsce = strona główna) */
.mikro{list-style:none;margin:22px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 18px;font-size:.875rem;color:#cfe7f5}
.mikro li{display:flex;align-items:center;gap:7px}
.mikro li::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--blekit)}
.kroki-pion .kroki{grid-template-columns:1fr}
@media (min-width:960px){.kroki-pion .kroki{grid-template-columns:1fr;gap:20px}.kroki-pion .kroki li{padding-left:60px;padding-top:0}.kroki-pion .kroki li::before{top:-4px}}
/* widget po wczytaniu: bez wyśrodkowania, żeby iframe mógł rosnąć w dół */
.rez-widget[data-gotowe]{display:block;background:#fff;min-height:0}
.rez-widget iframe{width:100%!important;border:0}

/* Strona główna na telefonie (runda 5, @cmo): blok „Z czym przychodzisz?” schowany poniżej 680 px (trzy wejścia do tego samego), zespół do 4 kart + link */
@media (max-width:679px){.sekcja-wejscia{display:none}.osoba-dalej{display:none}}
.zespol-caly{margin:18px 0 0;font-weight:600}

/* Dowód społeczny (runda 5, grywalizacja nr 3): liczba opinii z zespol_opinie.json, tylko gdy >= 10 */
.osoba .opinie-licznik{display:block;font-size:.8125rem;color:var(--szary);margin:-4px 0 8px}
.opinie-licznik-duzy{font-size:.9375rem;margin:6px 0 10px}
/* Ścieżka dla niegotowych: link do poradnika na bolkregoslupa.pl (etap 1, bez formularza) */
.nie-gotowa{background:var(--blekit-tlo);border-radius:var(--r);padding:20px 22px;margin:34px 0}
.nie-gotowa b{color:var(--granat);display:block;margin-bottom:6px}
.nie-gotowa p{margin:0 0 10px}
.nie-gotowa a{font-weight:600}
