/* Typografia (zatwierdzona wersja B).
   Jedna skala rozmiarów dla całej strony, cyfry wyrównane do wersalików, ciaśniejsze nagłówki,
   lepszy kontrast tekstu, polskie zasady łamania (spójniki z twardą spacją dodaje typo-b.js). */
:root{
  --fs-hero:clamp(42px,5.5vw,76px);
  --fs-h2:clamp(34px,4.1vw,56px);
  --fs-h3:clamp(22px,2.2vw,30px);
  --fs-lead:clamp(17.5px,1.45vw,19.5px);
  --fs-body:16.5px;
  --fs-small:14px;
  --fs-label:11.5px;
  --text:#38433F;
  --muted:#5E6A66;
}
body{font-size:var(--fs-body);line-height:1.68;text-rendering:optimizeLegibility}
/* cyfry wersalikowe wszędzie (Raleway domyślnie ma cyfry nautyczne, np. „15 lat” z opadającą piątką).
   !important, bo skrót „font” w arkuszu A zeruje ustawienia cyfr na wielu elementach */
*,*::before,*::after{font-feature-settings:"kern","liga","lnum"!important}
p,li,figcaption,summary,details p{text-wrap:pretty}
p{hanging-punctuation:first}

/* nagłówki: jedna skala, ciaśniejsza interlinia i światło przy dużych stopniach */
h1,h2,h3{font-variant-numeric:lining-nums;font-kerning:normal}
.hero h1{font-size:var(--fs-hero);font-weight:200;line-height:1.02;letter-spacing:-.028em}
.head h2,.stack h2,.about-txt h2,.book h2,.places .head h2{font-size:var(--fs-h2);font-weight:300;line-height:1.06;letter-spacing:-.024em}
h1 em,h2 em{font-size:1.06em;letter-spacing:-.005em;line-height:.9}
.path h3,.panel h3,.pv h3,.why h3,.clinic h3,.price h3{font-size:var(--fs-h3);font-weight:300;line-height:1.18;letter-spacing:-.014em}
.price h3{font-weight:400}

/* lead i akapity sekcji (w A etykieta nad nagłówkiem dziedziczyła styl leadu: 17,5 px i cienki krój) */
.head .eyebrow{font-family:var(--display);font-weight:500;line-height:1;color:var(--pine)}
.head p,.about-txt .lead{font-size:var(--fs-lead);line-height:1.6;font-weight:300;color:var(--text);max-width:54ch}
.about-txt p{font-size:var(--fs-body);max-width:62ch}
.about-txt .lead{font-family:var(--display);color:var(--ink)}

/* etykiety (eyebrow, „Zabierz ze sobą”, numer gabinetu): jeden styl */
.eyebrow,.head .eyebrow,.price .who,.prep-col .lbl,.panel .lab,.clinic-no,.zl-days small{font-size:var(--fs-label);font-weight:500;letter-spacing:.17em;line-height:1.2}
nav ul{font-size:12px;letter-spacing:.11em}

/* cyfry: tabelaryczne tam, gdzie stoją w kolumnach lub się zmieniają */
.result .count b,.zl-days b,.score b,.trust b,.step .n,.v3 .num,.week li{font-variant-numeric:lining-nums tabular-nums}
.score b{font-weight:200;letter-spacing:-.045em}

/* drobny tekst: bez schodzenia poniżej 13 px, żeby był czytelny na telefonie */
.trust span,.step span,.check-note,.note,.map-note,.places .map-note,.fact,.assure span,.copy{font-size:13.5px;line-height:1.5}
.points span,.contact li,.price ul,.place p{font-size:15px}

/* przyciski: odrobina światła w wersalikach i cyfrach */
.btn{letter-spacing:.012em}
.nav .btn{letter-spacing:.02em}

/* cytaty: wiszący cudzysłów otwierający, żeby tekst trzymał krawędź */
.slide blockquote{text-indent:-.44em;line-height:1.22;letter-spacing:-.005em}
.slide figcaption{font-size:13.5px;letter-spacing:.01em}

/* podpis pod „O mnie”: odręczny akcent zamiast drobnej kursywy */
.about-txt .sign-off{font-size:40px;line-height:1;margin-top:4px}

/* FAQ: pytania odrobinę cięższe dla lepszej czytelności */
summary{font-size:clamp(18px,1.6vw,20.5px);font-weight:400;line-height:1.4}
details p{font-size:var(--fs-body);color:var(--text)}

/* listy objawów i obszarów: wyraźniejszy rytm */
.signs .t{font-weight:300;letter-spacing:-.008em}
.areas .w{letter-spacing:-.02em}

@media (max-width:620px){
  :root{--fs-body:16px}
  .hero h1{font-weight:300;letter-spacing:-.022em}
  .head h2,.stack h2,.about-txt h2,.book h2,.places .head h2{letter-spacing:-.018em;line-height:1.08}
}
