/* Aneta Salehová — styl webu (domovská stránka). Vychází ze schváleného konceptu z 30. 9. 2026 (design-assets/koncept/index.html),
   od 12. 10. 2026 v béžové paletě; DESIGN.md popisuje rozhodnutí. Písmo: Outfit 300/400/500 pro text, od 27. 10. 2026 Newsreader 300 pro nadpisy a velká čísla (šedý druhý řádek v kurzívě; 17.–27. 10. DM Serif Display kurzíva, 14.–17. 10. Tenor Sans; head.php: lokální soubory, jinak Google Fonts). */
:root{
  /* ===== barvy: světlý základ „víc béžová“ (schváleno 12. 10. 2026; krém a písek podle Koru Space) a od 27. 10. 2026 tmavé plochy a akcent v bordó
     z Anetina setu (kolo 5, varianta A; do 27. 10. espresso #251B15 a hlína #84502E). Text na světlém zůstává espresso (--ink). =====
     Kontrasty a shodu palety hlídá src/nastroje/kontrola-vzhledu.py. Změna palety = změna tady, v text.css, v tom skriptu a v DESIGN.md. */
  --bg-rgb:239,230,218; --white-rgb:249,243,234; --black-rgb:62,28,35; --akcent-d-rgb:125,38,56;   /* kanály pro průhledné překryvy: rgba(var(--bg-rgb),.5) */
  --bg:#EFE6DA;        /* základ stránky (krém) */
  --paper:#E3D7C5;     /* druhé světlé pozadí (písek) */
  --white:#F9F3EA;     /* karty na světlém a světlý text na tmavém */
  --black:#3E1C23;     /* bordó (27. 10. odpoledne ztlumené z #4E1D28): tmavé sekce, tmavá tlačítka, lišta na telefonu */
  --ink:#251B15;       /* text na světlém */
  --card:#4B272F;      /* karty v tmavých sekcích (dřív #5E2A35) */
  --ink-2:#51443A;     /* druhotný text na světlém */
  --muted:#66584B;     /* tlumený text na světlém */
  --muted-d:#D6B9BD;   /* tlumený text na tmavém */
  --on-d-1:#F6E8E6; --on-d-2:#EBD6D5; --on-d-3:#DFC7C7;   /* světlý text na tmavém: citace, druhotný, třetí úroveň */
  --grey-l:#807366;    /* šedý druhý řádek nadpisu na světlém (velké písmo) */
  --grey-d:#C39EA5;    /* totéž na tmavém */
  --line:rgba(var(--black-rgb),.14); --line-d:rgba(var(--bg-rgb),.16);
  /* jediná akcentní barva: víno (od 27. 10.; do té doby hlína jako Koru). --akcent na tmavém (světlá růžová), --akcent-d na světlém (tmavší kvůli kontrastu 4,5 : 1) */
  --akcent:#F2BCA9; --akcent-d:#7D2638; --akcent-tlumena:#8F5A64;
  /* druhá tmavá barva: espresso jen pro Reference (Oliver 27. 10., kolo 7 „Střídání“ — Trénink a Kontakt bordó, Reference espresso; hodnoty = tmavé plochy do 27. 10.).
     Sekce s class="sec dark espresso" si přes pravidlo .dark.espresso přemapuje tmavé tokeny — i pro všechno uvnitř (tlačítko a nadpis karty „Chceš být další?“
     jsou proto v espressu, stejně jako v náhledu, ze kterého Oliver vybíral); tlačítka mimo Reference, lišta a „Balíček 10“ zůstávají bordó. */
  --espresso:#251B15; --espresso-rgb:37,27,21; --espresso-card:#31261E; --espresso-muted:#AC9F90;
  --espresso-on-1:#E6DACB; --espresso-on-2:#D1C5B4; --espresso-on-3:#BBAE9D; --espresso-grey:#8D8171;
  /* fotky: barva je sjednocená přímo v souborech (src/nastroje/priprav-fotky.py); tady jen jemné zrno a teplý nádech přes fotku (soft-light) */
  --foto:saturate(1) contrast(1.02);
  --nadech:linear-gradient(135deg,rgba(160,100,60,.20),rgba(244,225,200,.22));
  --r:22px;
  --pad:clamp(20px,4vw,56px);
  --max:1320px;
  --sec:clamp(88px,11vw,168px);
  --hdr:76px;
  --zrno:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n' x='0' y='0' width='100%25' height='100%25'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url%28%23n%29'/%3E%3C/svg%3E");
  --list:clamp(24px,3.2vw,44px);
  /* ===== písmo nadpisů (Oliver 27. 10. 2026: Newsreader 300 — kolo 4, „ten font je těžký“; 17.–27. 10. DM Serif Display v kurzívě podle Anetiny ukázky,
     14.–17. 10. Tenor Sans; text, menu a tlačítka zůstávají Outfit). Newsreader je statický řez s optickou velikostí 72 (head.php), rovně i v kurzívě:
     velikost ×.98, prostrkání ×.45 a řádkování +.06. Rovný řez dává --nadpisy-styl (font-style v každém pravidle), šedý druhý řádek velkých nadpisů
     je v kurzívě přes --nadpisy-styl-druhy (pravidlo pod .h2). Při změně písma upravit těchto osm hodnot (alternativy a jejich hodnoty: DESIGN.md „Písmo“).
     Shodu se text.css hlídá src/nastroje/kontrola-vzhledu.py. */
  --font-nadpisy:'Newsreader',Georgia,serif;
  --nadpisy-vaha:300;
  --nadpisy-velikost:.98;
  --nadpisy-prostrkani:.45;
  --nadpisy-radkovani:.06;
  --nadpisy-mezery:0;
  --nadpisy-styl:normal;--nadpisy-styl-druhy:italic;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:var(--hdr)}
body{margin:0;font-family:Outfit,system-ui,sans-serif;font-size:17px;line-height:1.6;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
.dark{background:var(--black);color:var(--white)}
.sec{background:var(--bg)}
.sec.dark{background:var(--black)}   /* základní sekce má vlastní podklad, aby „listy“ s rounded rohy byly vidět i přes písek */
.dark.espresso{--black:var(--espresso);--black-rgb:var(--espresso-rgb);--card:var(--espresso-card);--muted-d:var(--espresso-muted);--on-d-1:var(--espresso-on-1);--on-d-2:var(--espresso-on-2);--on-d-3:var(--espresso-on-3);--grey-d:var(--espresso-grey)}   /* Reference v espressu (27. 10.) */
.hero{background:var(--bg)}
.eyebrow{font-size:12px;font-weight:500;letter-spacing:.18em;text-transform:uppercase}
.grey{color:var(--grey-l)}
.dark .grey{color:var(--grey-d)}
svg.ar{width:16px;height:16px;transition:transform .35s cubic-bezier(.2,.7,.2,1)}

/* tlačítka — pilulka s kolečkem a šipkou (jako Next.Move) */
.btn{display:inline-flex;align-items:center;gap:14px;border-radius:999px;padding:6px 24px 6px 6px;font-size:15px;font-weight:500;transition:background .25s,color .25s}
.btn .i{width:40px;height:40px;border-radius:50%;display:grid;place-items:center}
.btn:hover svg.ar,.row:hover svg.ar,.clinks a:hover svg.ar,.float-card:hover svg.ar{transform:rotate(-45deg)}
.btn-light{background:var(--white);color:var(--black)}.btn-light .i{background:var(--black);color:var(--white)}
.btn-dark{background:var(--black);color:var(--white)}.btn-dark .i{background:var(--white);color:var(--black)}
.btn-sm{padding:4px 18px 4px 4px;font-size:14px}.btn-sm .i{width:32px;height:32px}

/* hlavička */
.hdr{position:sticky;top:0;z-index:50;background:rgba(var(--bg-rgb),.88);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:var(--ink);border-bottom:1px solid var(--line)}
.hdr-in{display:flex;align-items:center;gap:32px;height:var(--hdr)}
.logo{display:flex;align-items:center;gap:14px;line-height:1.1;font-weight:500;letter-spacing:.18em;text-transform:uppercase;font-size:14px}
.logo-znak{width:38px;height:auto;flex:none;display:block}
.logo-txt{display:flex;flex-direction:column}
.logo-txt span{font-size:10.5px;letter-spacing:.24em;color:var(--muted);font-weight:400;margin-top:5px}
.nav{display:flex;gap:30px;margin-left:auto;font-size:15px}
.nav a{color:var(--ink-2);transition:color .2s}.nav a:hover{color:var(--black)}
.burger{display:none;margin-left:auto;flex-shrink:0;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:none;color:var(--ink);cursor:pointer;place-items:center}   /* flex-shrink:0 — anglicky na 320–340 px se smrsklo na 32 px (v Chromu ovál) a v Safari přečnívalo 6 px za okno (20. 10. 2026) */
.burger i{display:block;width:18px;height:1.5px;background:currentColor;box-shadow:0 -6px 0 currentColor,0 6px 0 currentColor}

/* úvod */
.hero{position:relative;min-height:calc(100svh - var(--hdr));display:flex;align-items:flex-end;overflow:hidden}
.hero-photo{position:absolute;top:0;right:0;bottom:0;width:58%;margin:0}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:68% 38%;filter:var(--foto)}
.hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--bg) 0%,var(--bg) 5%,rgba(var(--bg-rgb),.93) 12%,rgba(var(--bg-rgb),.8) 20%,rgba(var(--bg-rgb),.6) 30%,rgba(var(--bg-rgb),.38) 42%,rgba(var(--bg-rgb),.18) 54%,rgba(var(--bg-rgb),.06) 64%,rgba(var(--bg-rgb),0) 72%),linear-gradient(180deg,var(--bg) 0%,rgba(var(--bg-rgb),0) 16%)}
.hero .wrap{position:relative;width:100%;padding-bottom:clamp(40px,6vw,80px);padding-top:clamp(56px,8vw,120px)}
.hero-txt{max-width:760px}
.hero-txt>*{animation:rise .9s cubic-bezier(.2,.7,.2,1) both}
.hero-txt>:nth-child(2){animation-delay:.08s}.hero-txt>:nth-child(3){animation-delay:.16s}.hero-txt>:nth-child(4){animation-delay:.24s}.hero-txt>:nth-child(5){animation-delay:.32s}
@keyframes rise{from{opacity:0;transform:translateY(18px)}}
.hero-eb{color:var(--ink-2);display:flex;align-items:center;gap:12px;margin:0 0 28px}
.dot{width:8px;height:8px;border-radius:50%;background:var(--akcent-d);box-shadow:0 0 0 4px rgba(var(--akcent-d-rgb),.22)}
.h1{font-family:var(--font-nadpisy);font-style:var(--nadpisy-styl,normal);word-spacing:var(--nadpisy-mezery,-.08em);font-weight:var(--nadpisy-vaha,400);font-size:calc(clamp(52px,7.6vw,116px) * var(--nadpisy-velikost,.94));line-height:calc(.95 + var(--nadpisy-radkovani,.07));letter-spacing:calc(-.045em * var(--nadpisy-prostrkani,.75));margin:0}
.lead{font-size:clamp(17px,1.4vw,20px);color:var(--ink-2);max-width:31em;margin:28px 0 36px;font-weight:300}
.cta-row{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.link-u{border-bottom:1px solid rgba(var(--black-rgb),.4);padding-bottom:3px;font-size:15px}
.facts{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:56px;margin:64px 0 0;padding-top:28px;border-top:1px solid var(--line)}
.facts dt{font-family:var(--font-nadpisy);font-style:var(--nadpisy-styl,normal);word-spacing:var(--nadpisy-mezery,-.08em);font-size:calc(30px * var(--nadpisy-velikost,.94));font-weight:var(--nadpisy-vaha,400);letter-spacing:calc(-.02em * var(--nadpisy-prostrkani,.75));line-height:calc(1.1 + var(--nadpisy-radkovani,.07))}
.facts dd{margin:6px 0 0;font-size:13px;color:var(--muted)}
.float-card{position:absolute;right:var(--pad);bottom:clamp(40px,6vw,80px);z-index:2;width:300px;background:rgba(var(--white-rgb),.80);color:var(--ink);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(var(--black-rgb),.10);border-radius:18px;padding:18px 18px 18px 22px;display:flex;align-items:center;justify-content:space-between;gap:16px;animation:rise .9s .45s cubic-bezier(.2,.7,.2,1) both}
.float-card small{display:block;color:var(--muted);font-size:11px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:6px}
.float-card b{font-weight:400;font-size:17px;line-height:1.3;display:block}
.float-card .i{flex:none;width:42px;height:42px;border-radius:50%;background:var(--black);color:var(--white);display:grid;place-items:center}

/* sekce obecně */
.sec{padding:var(--sec) 0}
.paper{background:var(--paper)}
.label{display:flex;align-items:center;gap:14px;margin:0 0 28px;color:var(--muted)}
.dark .label{color:var(--muted-d)}
.h2{font-family:var(--font-nadpisy);font-style:var(--nadpisy-styl,normal);word-spacing:var(--nadpisy-mezery,-.08em);font-weight:var(--nadpisy-vaha,400);font-size:calc(clamp(42px,5.6vw,84px) * var(--nadpisy-velikost,.94));line-height:calc(.98 + var(--nadpisy-radkovani,.07));letter-spacing:calc(-.04em * var(--nadpisy-prostrkani,.75));margin:0}
.h1 .grey,.h2 .grey,.statement .g,.about-end .grey{font-style:var(--nadpisy-styl-druhy,inherit)}   /* kolo 4 (27. 10.): rovné písmo, šedý druhý řádek v kurzívě */
.sec-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:end;margin-bottom:clamp(48px,6vw,88px)}
.sec-intro{font-size:clamp(17px,1.35vw,19px);color:var(--muted);max-width:30em;margin:0;font-weight:300}
.dark .sec-intro{color:var(--on-d-3)}

/* o mně */
.statement{font-family:var(--font-nadpisy);font-style:var(--nadpisy-styl,normal);word-spacing:var(--nadpisy-mezery,-.08em);font-size:calc(clamp(28px,3.3vw,48px) * var(--nadpisy-velikost,.94));line-height:calc(1.1 + var(--nadpisy-radkovani,.07));letter-spacing:calc(-.03em * var(--nadpisy-prostrkani,.75));font-weight:var(--nadpisy-vaha,400);max-width:22em;margin:0 0 clamp(64px,8vw,128px);text-wrap:balance}
.statement .g{color:var(--grey-l)}
.about{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(32px,7vw,128px);align-items:start}
.about-media{position:relative}
.about-media.s-druhou{padding:0 12% 12% 0}
@media (min-width:901px) and (min-height:760px){.about-media{position:sticky;top:calc(var(--hdr) + 44px)}}   /* dlouhý text vpravo: fotky zůstávají při čtení vlevo na očích (žádný předek nemá overflow:hidden). 44 px = pod pilulku ukazatele km (sahá 35 px pod hlavičku); 760 px = výška bloku fotek 614 + hlavička + odsazení, v nižším okně (notebook) se fotky nelepí, aby se spodní neschovala pod okraj */
.about-img{margin:0;border-radius:var(--r);overflow:hidden;aspect-ratio:4/5}
.about-img img,.about-img2 img{width:100%;height:100%;object-fit:cover;filter:var(--foto)}
.about-img2{position:absolute;right:0;bottom:0;width:44%;aspect-ratio:1;margin:0;border-radius:18px;overflow:hidden;border:8px solid var(--bg)}
.about-txt h3{font-family:var(--font-nadpisy);font-style:var(--nadpisy-styl,normal);word-spacing:var(--nadpisy-mezery,-.08em);font-size:calc(clamp(30px,2.8vw,42px) * var(--nadpisy-velikost,.94));font-weight:var(--nadpisy-vaha,400);letter-spacing:calc(-.03em * var(--nadpisy-prostrkani,.75));margin:0 0 10px;line-height:calc(1.1 + var(--nadpisy-radkovani,.07))}
.about-txt p{color:var(--ink-2);margin:0 0 16px;max-width:33em}
/* Anetin text: závěrečná věta je „nápis“ (písmo nadpisů), druhá půlka šedě jako u nadpisů (věta pod pozdravem od 27. 10. není) */
.about-txt .about-end{font-family:var(--font-nadpisy);font-style:var(--nadpisy-styl,normal);word-spacing:var(--nadpisy-mezery,-.08em);font-size:calc(clamp(28px,2.7vw,38px) * var(--nadpisy-velikost,.94));font-weight:var(--nadpisy-vaha,400);letter-spacing:calc(-.03em * var(--nadpisy-prostrkani,.75));line-height:calc(1.12 + var(--nadpisy-radkovani,.07));color:var(--ink);margin:40px 0 0;max-width:16em;text-wrap:balance}
.certs{list-style:none;padding:0;margin:44px 0 0;border-top:1px solid var(--line)}
.certs li{display:grid;grid-template-columns:150px 1fr;gap:16px;padding:18px 0;border-bottom:1px solid var(--line);font-size:16.5px}
.certs li span{color:var(--muted);font-size:12px;letter-spacing:.14em;text-transform:uppercase;padding-top:3px}
/* řada Anetiných oblíbených fotek pod O mně (17. 10. 2026): šířka jako obsah (.wrap), sloupce v poměru stran fotek (4 : 5 = 4fr, široká 8 : 5 = 8fr) —
   všechny mají stejnou výšku a řada přesně vyplní šířku; na telefonu vodorovné posouvání se zarážkami (bez JS) */
.galerie{list-style:none;max-width:var(--max);margin:clamp(56px,7vw,104px) auto 0;padding:0 var(--pad);display:grid;grid-template-columns:4fr 8fr 4fr 4fr;gap:12px}
.galerie li{border-radius:18px;overflow:hidden;aspect-ratio:4/5;background:var(--paper)}
.galerie li.siroka{aspect-ratio:8/5}
.galerie img{display:block;width:100%;height:100%;object-fit:cover;filter:var(--foto)}
.galerie:focus-visible{outline:2px solid var(--akcent-d);outline-offset:-2px}   /* tabindex="0": posuvnou řadu jde zaostřit a posouvat šipkami; obrys dovnitř, ať je na telefonu vidět i po stranách */
@media (max-width:900px){   /* od 900 px dolů jeden sloupec jako zbytek webu; na tabletu by v jedné řadě byly fotky jen ~110 px široké */
  /* pevná šířka položek: sloupce „auto“ by se v posuvném gridu smrskly na šířku okna a fotky by se překrývaly (ověřeno 17. 10.); široká = dvojnásobek → stejná výška */
  .galerie{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:max-content;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--pad);scrollbar-width:none;padding-bottom:4px}
  .galerie::-webkit-scrollbar{display:none}
  .galerie li{width:clamp(220px,68vw,280px);scroll-snap-align:start}
  .galerie li.siroka{width:calc(2 * clamp(220px,68vw,280px))}
}

/* trénink */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.steps li{background:var(--card);border:1px solid var(--line-d);border-radius:var(--r);padding:28px 26px 30px;min-height:300px;display:flex;flex-direction:column}
.steps .n{font-size:13px;color:var(--muted-d);letter-spacing:.12em}
.steps h3{font-family:var(--font-nadpisy);font-style:var(--nadpisy-styl,normal);word-spacing:var(--nadpisy-mezery,-.08em);font-size:calc(25px * var(--nadpisy-velikost,.94));font-weight:var(--nadpisy-vaha,400);letter-spacing:calc(-.015em * var(--nadpisy-prostrkani,.75));margin:auto 0 12px;line-height:calc(1.15 + var(--nadpisy-radkovani,.07))}
.steps p{margin:0;color:var(--on-d-3);font-size:15.5px;line-height:1.55}
.train-media{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:14px;margin-top:14px}
.train-media figure{margin:0;border-radius:var(--r);overflow:hidden;min-height:440px;position:relative;border:1px solid var(--line-d)}
.train-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:var(--foto)}
.train-media img{object-position:50% 35%}   /* výpad (17. 10.): hlava i chodidla v rámečku */
.train-media figcaption{position:absolute;left:22px;bottom:20px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;background:rgba(var(--black-rgb),.6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:8px 14px;border-radius:999px}
.info{background:var(--white);color:var(--black);border-radius:var(--r);padding:38px 36px}
.info h3{font-family:var(--font-nadpisy);font-style:var(--nadpisy-styl,normal);word-spacing:var(--nadpisy-mezery,-.08em);font-size:calc(30px * var(--nadpisy-velikost,.94));font-weight:var(--nadpisy-vaha,400);margin:0 0 26px;letter-spacing:calc(-.025em * var(--nadpisy-prostrkani,.75))}
.info dl{margin:0}
.info dl div{display:grid;grid-template-columns:140px 1fr;gap:16px;padding:17px 0;border-top:1px solid var(--line)}
.info dt{color:var(--muted);font-size:14px}
.info dd{margin:0;font-size:16px}

/* výživa */
.nutri{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,7vw,128px);align-items:start}
.nutri-telo .checks{margin-top:0}   /* 27. 10.: místo ukázkového dne jsou vpravo body — začínají nahoře vedle nadpisu; na mobilu odstup dělá mezera mřížky */
.nutri .h2{font-size:calc(clamp(42px,4.6vw,68px) * var(--nadpisy-velikost,.94))}
.nutri .sec-intro{margin:26px 0 0}   /* úvod jejími slovy (19. 10.), odsazení jako v Běhu */
.checks{list-style:none;padding:0;margin:40px 0 36px;display:grid;gap:15px}
.checks li{display:flex;gap:14px;align-items:flex-start;font-size:17px}
.checks li::before{content:"";flex:none;width:24px;height:24px;border-radius:50%;margin-top:1px;background:var(--akcent-d) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F9F3EA' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4L18 8'/%3E%3C/svg%3E") center/13px no-repeat}
.flow{list-style:none;padding:0;margin:0 0 44px;display:flex;flex-wrap:wrap;gap:8px;counter-reset:f}
.flow li{counter-increment:f;border:1px solid var(--line);border-radius:999px;padding:7px 18px 7px 7px;font-size:14.5px;display:flex;align-items:center;gap:10px}
.flow li::before{content:counter(f);width:26px;height:26px;border-radius:50%;background:var(--paper);display:grid;place-items:center;font-size:12px}

/* ceník */
.grp{font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;color:var(--muted);margin:0 0 16px}
.rows{display:grid;gap:10px;margin-bottom:64px}
.rows:last-child{margin-bottom:0}
.row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:36px;background:var(--white);border-radius:20px;padding:24px 24px 24px 32px;transition:box-shadow .3s}
.row:hover{box-shadow:0 14px 40px rgba(var(--black-rgb),.07)}
.row h3{font-family:var(--font-nadpisy);font-style:var(--nadpisy-styl,normal);word-spacing:var(--nadpisy-mezery,-.08em);font-size:calc(22px * var(--nadpisy-velikost,.94));font-weight:var(--nadpisy-vaha,400);margin:0;letter-spacing:calc(-.01em * var(--nadpisy-prostrkani,.75));display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.row p{margin:4px 0 0;color:var(--muted);font-size:15px}
.badge{font-family:Outfit,system-ui,sans-serif;font-style:normal;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:500;border-radius:999px;padding:5px 11px;background:var(--paper);color:var(--black)}
.badge.b{background:var(--black);color:var(--white)}
.row-p{text-align:right}
.row-p strong{font-family:var(--font-nadpisy);font-style:var(--nadpisy-styl,normal);word-spacing:var(--nadpisy-mezery,-.08em);display:block;font-size:calc(clamp(28px,2.6vw,38px) * var(--nadpisy-velikost,.94));font-weight:var(--nadpisy-vaha,400);letter-spacing:calc(-.03em * var(--nadpisy-prostrkani,.75));line-height:calc(1.1 + var(--nadpisy-radkovani,.07));white-space:nowrap}
.row-p span{font-size:13px;color:var(--muted)}
.row-go{width:50px;height:50px;border-radius:50%;background:var(--black);color:var(--white);display:grid;place-items:center}

/* kontakt */
.contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"hlava foto" "odkazy foto";grid-template-rows:auto 1fr;column-gap:clamp(40px,6vw,120px);row-gap:0;align-items:start}
.kontakt-hlava{grid-area:hlava}.contact-grid .clinks{grid-area:odkazy;margin-top:clamp(36px,4vw,56px)}   /* kontakty hned pod nadpisem, fotka vpravo (Oliver 19. 10.: bez prázdného rohu) */
.contact .sec-intro{margin-top:28px}
/* fotka v Kontaktu (Oliver 17. 10.; od 19. 10. na počítači vpravo vedle nadpisu a kontaktů, na mobilu až za kontakty) — teplejší konec stránky */
.kontakt-foto{grid-area:foto;justify-self:end;align-self:center;margin:0;width:min(100%,440px);aspect-ratio:4/5;border-radius:var(--r);overflow:hidden;border:1px solid var(--line-d)}
.kontakt-foto img{display:block;width:100%;height:100%;object-fit:cover;filter:var(--foto)}
@media (max-width:900px){.contact-grid{grid-template-areas:"hlava" "odkazy" "foto";grid-template-rows:auto}.kontakt-foto{justify-self:start;margin-top:clamp(32px,8vw,48px);width:min(64%,300px)}}   /* na mobilu fotka až za kontakty, menší */
.clinks{list-style:none;margin:0;padding:0;border-top:1px solid var(--line-d)}
.clinks a{display:grid;grid-template-columns:140px 1fr auto;align-items:center;gap:16px;padding:26px 0;border-bottom:1px solid var(--line-d)}
.clinks .k{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted-d)}
.clinks .v{font-size:clamp(20px,2vw,28px);font-weight:300;letter-spacing:-.015em}
.clinks .go{width:46px;height:46px;border-radius:50%;border:1px solid var(--line-d);display:grid;place-items:center;transition:background .3s,color .3s}
.clinks a:hover .go{background:var(--white);color:var(--black)}
.ftr{padding:28px 0 32px;border-top:1px solid var(--line-d);font-size:13px;color:var(--muted-d)}
.ftr .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}

/* běh — velké číslo 3:15 (od 17. 10. přes spodní okraj fotky) */
.beh{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);grid-template-areas:"media hlava" "media txt";grid-template-rows:auto 1fr;column-gap:clamp(40px,7vw,128px);row-gap:0;align-items:start}
.beh-hlava{grid-area:hlava}.beh-media{grid-area:media}.beh-txt{grid-area:txt}   /* HTML v pořadí nadpis → fotka a kalkulačka → body (mobil, čtečky); na počítači fotka vlevo přes oba řádky (Oliver 19. 10.) */
@media (max-width:900px){.beh{grid-template-areas:"hlava" "media" "txt";grid-template-rows:auto}.beh-media{margin-top:clamp(32px,8vw,48px)}}
.velke-cislo{font-family:var(--font-nadpisy);font-style:var(--nadpisy-styl,normal);word-spacing:var(--nadpisy-mezery,-.08em);font-size:calc(clamp(96px,13vw,200px) * var(--nadpisy-velikost,.94));font-weight:var(--nadpisy-vaha,400);letter-spacing:calc(-.06em * var(--nadpisy-prostrkani,.75));line-height:calc(.85 + var(--nadpisy-radkovani,.07));margin:0;font-variant-numeric:tabular-nums;white-space:nowrap}
.velke-pod{margin:22px 0 0;color:var(--muted);font-size:13px;letter-spacing:.18em;text-transform:uppercase;font-weight:500}
.beh-hlava .sec-intro{margin:26px 0 0}
.beh-body{list-style:none;padding:0;margin:40px 0 44px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.beh-body li{background:var(--white);border-radius:18px;padding:22px 24px}
.beh-body b{display:block;font-weight:400;font-size:19px;letter-spacing:-.01em;margin-bottom:6px}
.beh-body span{color:var(--muted);font-size:15px;line-height:1.5}
.beh-plan{margin:20px 0 0;font-size:15px}
/* fotka v Běhu (Oliver 17. 10.): vpravo v levém sloupci, velké číslo 3:15 přes její spodní okraj — jako ve sportovním magazínu */
.beh-foto{margin:0 0 0 auto;width:62%;aspect-ratio:4/5;border-radius:var(--r);overflow:hidden}
.beh-foto img{display:block;width:100%;height:100%;object-fit:cover;filter:var(--foto)}
.beh-foto + .velke-cislo{position:relative;z-index:1;margin-top:-.42em}

/* časté otázky — nativní <details>, funguje bez JS */
.faq{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(40px,7vw,128px);align-items:start}
.faq-list{border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line)}
.faq-list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px 0;font-size:clamp(18px,1.6vw,22px);letter-spacing:-.01em}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"+";flex:none;width:38px;height:38px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;font-size:22px;font-weight:300;line-height:1;transition:transform .3s,background .3s,color .3s}
.faq-list details[open] summary::after{transform:rotate(45deg);background:var(--akcent-d);color:var(--white);border-color:var(--akcent-d)}
.faq-list details p{margin:0 0 26px;color:var(--ink-2);max-width:40em}
.faq-list details p a{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
/* značka „Doplní Aneta“ — vypisuje ji PHP jen při SOUKROMY_NAHLED = true (includes/config.php); v ostrém provozu se nevypíše */
.doplnit{display:inline-block;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:500;background:#FFF1BF;color:#5C4600;border-radius:999px;padding:3px 9px;margin-right:8px;vertical-align:2px}

/* monogram v patičce */
.mono-s{width:24px;height:auto;display:inline-block;vertical-align:middle;margin:-3px 12px 0 0;color:var(--white)}

/* viditelné zvýraznění při ovládání klávesnicí */
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--akcent-d);outline-offset:4px;border-radius:6px}
.dark :focus-visible,.mbar :focus-visible,.ftr :focus-visible{outline-color:var(--akcent)}
.ref-cta :focus-visible{outline-color:var(--akcent-d)}

/* reference — skutečné zprávy klientů (HTML: includes/sections/reference.php z data/reference.php) */
.ref-hlavni{margin:0 0 clamp(14px,2vw,24px);padding:clamp(28px,4.5vw,64px);background:var(--card);border:1px solid var(--line-d);border-radius:var(--r)}
.ref-hlavni blockquote{margin:0}
.ref-hlavni blockquote p{margin:0;font-size:clamp(22px,2.6vw,38px);font-weight:300;line-height:1.28;letter-spacing:-.02em;color:var(--white);text-wrap:pretty;max-width:34em}
.ref-hlavni blockquote::before{content:"\201C";display:block;font-size:clamp(76px,8vw,120px);line-height:.55;color:var(--akcent-tlumena);margin-bottom:clamp(18px,2.4vw,30px)}
.vynech{color:var(--grey-d)}
.ref-cela{margin-top:clamp(22px,3vw,34px);border-top:1px solid var(--line-d)}
.ref-cela summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:14px;padding:18px 0;font-size:15px;color:var(--on-d-2);letter-spacing:.02em}
.ref-cela summary::-webkit-details-marker{display:none}
.ref-cela summary::after{content:"+";width:32px;height:32px;border-radius:50%;border:1px solid var(--line-d);display:grid;place-items:center;font-size:20px;font-weight:300;line-height:1;transition:transform .3s,background .3s,color .3s}
.ref-cela[open] summary::after{transform:rotate(45deg);background:var(--white);color:var(--black);border-color:var(--white)}
.ref-cela div{max-width:46em;padding:0 0 8px}
.ref-cela p{margin:0 0 16px;color:var(--on-d-3);font-size:16.5px;line-height:1.65}
.ref{columns:3;column-gap:14px}
.ref:focus-visible{outline:2px solid var(--akcent);outline-offset:-2px}   /* role=region, tabindex=0: na telefonu jde řadu posouvat šipkami */
.ref-karta{break-inside:avoid;margin:0 0 14px;background:var(--card);border:1px solid var(--line-d);border-radius:var(--r);padding:28px 26px 24px;display:block}
.ref-karta blockquote{margin:0}
.ref-karta blockquote p{margin:0;font-size:17px;font-weight:300;line-height:1.58;color:var(--on-d-1)}
.ref-karta blockquote::before{content:"\201C";display:block;font-size:56px;line-height:.6;color:var(--akcent-tlumena);margin-bottom:14px}
.ref-cta{background:var(--white);color:var(--black);border-color:var(--white);display:flex;flex-direction:column;gap:6px}
.ref-cta h3{font-family:var(--font-nadpisy);font-style:var(--nadpisy-styl,normal);word-spacing:var(--nadpisy-mezery,-.08em);margin:0;font-size:calc(26px * var(--nadpisy-velikost,.94));font-weight:var(--nadpisy-vaha,400);letter-spacing:calc(-.025em * var(--nadpisy-prostrkani,.75));line-height:calc(1.15 + var(--nadpisy-radkovani,.07))}
.ref-cta p{margin:0 0 18px;color:var(--ink-2);font-size:15.5px}
.ref-cta .btn{align-self:flex-start}

/* kalkulačka tempa — ovládání se ukáže až s JS, bez něj zůstane „3:15 · Můj maraton“ */
.tempo-trate{border:0;padding:0;margin:34px 0 22px;display:flex;flex-wrap:wrap;gap:8px}
.tempo-trate legend,.tempo-label{font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;color:var(--muted);padding:0;margin-bottom:12px}
.tempo-label{display:block;margin-bottom:4px}
.tempo-trate label{cursor:pointer}
.tempo-trate input{position:absolute;opacity:0;pointer-events:none}
.tempo-trate span{display:inline-block;border:1px solid var(--line);border-radius:999px;padding:8px 16px;font-size:14px;background:var(--white);transition:background .2s,color .2s}
.tempo-trate input:checked+span{background:var(--akcent-d);color:var(--white);border-color:var(--akcent-d)}
.tempo-trate input:focus-visible+span{outline:2px solid var(--akcent-d);outline-offset:3px}
.tempo input[type=range]{-webkit-appearance:none;appearance:none;width:100%;max-width:440px;height:32px;background:transparent;margin:0;cursor:pointer}
.tempo input[type=range]::-webkit-slider-runnable-track{height:2px;background:linear-gradient(90deg,var(--akcent-d) var(--v,50%),var(--ink) var(--v,50%));border-radius:2px}
.tempo input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;border-radius:50%;background:var(--akcent-d);border:5px solid var(--paper);box-shadow:0 0 0 1px var(--akcent-d);margin-top:-11px}
.tempo input[type=range]::-moz-range-track{height:2px;background:var(--ink)}
.tempo input[type=range]::-moz-range-progress{height:2px;background:var(--akcent-d)}
.tempo input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--akcent-d);border:5px solid var(--paper);box-shadow:0 0 0 1px var(--akcent-d)}
.tempo input[type=range]:focus-visible{outline:2px solid var(--akcent-d);outline-offset:4px}
.tempo-vystup{display:flex;gap:30px;margin:14px 0 0;font-size:14px;color:var(--muted)}
.tempo-vystup b{font-size:30px;font-weight:300;color:var(--ink);letter-spacing:-.02em;margin-right:4px;font-variant-numeric:tabular-nums}
.tempo-srovnani{margin:12px 0 0;font-size:15px;max-width:26em}

/* zvýraznění aktuální sekce v menu */
.nav a{position:relative}
.nav a.je-tu{color:var(--black)}
.nav a.je-tu::after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:1px;background:var(--akcent-d)}

/* jemné vyjetí při scrollování — čistě CSS (scroll-driven), žádný JS. Kde to prohlížeč
   neumí, je obsah rovnou vidět; krytí nikdy pod 60 % — obsah nikdy nezůstane skrytý. */
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .sec-head,.statement,.cil,.about-media,.about-txt,.steps li,.train-media>*,.beh-hlava,.beh-txt,.beh-body li,.nutri>*,.ref-hlavni,.ref-karta,.row,.faq-list details,.clinks li{
      animation:vyjed linear both;animation-timeline:view();animation-range:entry 0% entry 55%}
  }
}
@keyframes vyjed{from{opacity:.6;translate:0 36px}to{opacity:1;translate:0 0}}

/* přepínač jazyka a odkazy v patičce */
.nav a.jazyk{border:1px solid var(--line);border-radius:999px;padding:3px 11px;font-size:12px;letter-spacing:.12em;color:var(--ink)}
.nav a.jazyk:hover{background:var(--black);color:var(--white)}
.ftr a{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}

/* ===== designový upgrade 1. 10. 2026 ===== */

/* 1) scroll = běh: ukazatel kilometrů v hlavičce (JS jen nastavuje --p, 0–1) */
.km{position:absolute;left:0;right:0;bottom:-1px;height:2px;pointer-events:none;z-index:2}
.km-vypln{position:absolute;inset:0;background:var(--akcent-d);transform-origin:0 50%;transform:scaleX(var(--p,0))}
.km-z{position:absolute;bottom:0;width:1px;height:8px;background:rgba(var(--black-rgb),.30)}
.km-hlava{position:absolute;top:10px;left:calc(var(--p,0)*100%);transform:translateX(calc(var(--p,0)*-100%));display:flex;gap:5px;align-items:baseline;white-space:nowrap;font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);background:rgba(var(--bg-rgb),.94);border:1px solid var(--line);border-radius:999px;padding:3px 11px;font-variant-numeric:tabular-nums;opacity:calc(clamp(0,calc((var(--p,0) - .006)*70),1)*var(--akt,0));transition:opacity .4s}
.km-hlava b{font-weight:500;color:var(--akcent-d)}

/* 3) akcentní barva — drobnosti */
::selection{background:var(--akcent-d);color:var(--white)}
.btn .i{transition:background .25s,color .25s}
.btn:hover .i{background:var(--akcent-d);color:var(--white)}

/* 4) S čím ti pomůžu — velká typografická tabulka */
.cile{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.cile li{border-bottom:1px solid var(--line)}
.cil{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) 56px;align-items:center;column-gap:clamp(16px,3vw,48px);padding:clamp(22px,2.8vw,36px) 0;color:var(--ink)}
.cil h3{font-family:var(--font-nadpisy);font-style:var(--nadpisy-styl,normal);word-spacing:var(--nadpisy-mezery,-.08em);margin:0;font-size:calc(clamp(30px,4.2vw,60px) * var(--nadpisy-velikost,.94));font-weight:var(--nadpisy-vaha,400);letter-spacing:calc(-.035em * var(--nadpisy-prostrkani,.75));line-height:calc(1.02 + var(--nadpisy-radkovani,.07));transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.cil p{margin:0;color:var(--muted);font-size:16px;line-height:1.5;max-width:26em;transition:color .3s}
.cil-sipka{justify-self:end;width:52px;height:52px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;transition:background .3s,color .3s,border-color .3s}
.cil-sipka svg{width:18px;height:18px}
.cil:focus-visible .cil-sipka{background:var(--akcent-d);border-color:var(--akcent-d);color:var(--white)}
@media (hover:hover){
  .cil:hover h3{transform:translateX(14px)}
  .cil:hover p{color:var(--ink)}
  .cil:hover .cil-sipka{background:var(--akcent-d);border-color:var(--akcent-d);color:var(--white)}
  .cil:hover svg.ar{transform:rotate(-45deg)}
}

/* 5) ceník: nejvýhodnější balíček + porovnání ceny za jeden trénink */
.row-top{background:var(--black);color:var(--white)}
.row-top:hover{box-shadow:0 18px 48px rgba(var(--black-rgb),.2)}
.row-top p,.row-top .row-p span{color:var(--on-d-3)}
.row-top .badge.b{background:var(--akcent);color:var(--black)}   /* víno na bordó by splývalo (27. 10.) */
.row-top .row-go{background:var(--white);color:var(--black)}
.cena-trenink{margin:0 0 clamp(40px,5vw,64px);padding:clamp(22px,3vw,34px) clamp(22px,3vw,36px);background:var(--white);border-radius:20px}
.cena-trenink .grp{margin-bottom:6px}
.cena-radky{list-style:none;margin:0;padding:0}
.cena-radky li{display:grid;grid-template-columns:minmax(120px,.7fr) minmax(0,2.4fr) 112px 56px;align-items:center;column-gap:20px;padding:14px 0;border-top:1px solid var(--line)}
.cena-radky li:first-child{border-top:0}
.cena-nazev{font-size:15px;color:var(--muted)}
.cena-pruh{display:block;height:10px;border-radius:99px;background:rgba(var(--black-rgb),.07);overflow:hidden}
.cena-pruh i{display:block;height:100%;width:var(--w);border-radius:inherit;background:var(--ink);transform-origin:0 50%}
.cena-radky .top .cena-pruh i{background:var(--akcent-d)}
.cena-radky b{font-family:var(--font-nadpisy);font-style:var(--nadpisy-styl,normal);word-spacing:var(--nadpisy-mezery,-.08em);font-size:calc(clamp(20px,2vw,26px) * var(--nadpisy-velikost,.94));font-weight:var(--nadpisy-vaha,400);letter-spacing:calc(-.02em * var(--nadpisy-prostrkani,.75));text-align:right;font-variant-numeric:tabular-nums}
.cena-uspora{font-size:13px;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}
.cena-radky .top .cena-uspora{color:var(--akcent-d);font-weight:500}
@keyframes roste{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@supports (animation-timeline:view()){
  @media (prefers-reduced-motion:no-preference){
    .cena-pruh i{animation:roste linear both;animation-timeline:view();animation-range:entry 5% entry 75%}
  }
}

/* 6) fotky: jemné zrno a barevný nádech sjednotí různé zdroje */
.hero-photo::before,.about-img::after,.train-media figure::after,.galerie li::after,.beh-foto::after,.kontakt-foto::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:var(--zrno),var(--nadech);background-size:200px 200px,100% 100%;mix-blend-mode:soft-light;opacity:.6}
.about-img,.galerie li,.beh-foto,.kontakt-foto{position:relative}
.train-media figcaption{z-index:2}

/* 7) kalkulačka tempa: běžecká dráha, kolečko běží tempem podle zvoleného času */
.tempo-dole{display:flex;align-items:center;justify-content:space-between;gap:18px;max-width:440px;margin-top:14px}
.tempo-dole .tempo-vystup{margin:0}
.draha{width:136px;height:auto;flex:none;color:var(--ink)}
.draha circle{fill:var(--akcent-d)}

/* 8) sekce na sebe navazují jako „listy“ — zaoblené horní rohy přes předchozí sekci */
main>section:not(:first-child){position:relative;margin-top:calc(var(--list)*-1);border-radius:var(--list) var(--list) 0 0}

/* spodní lišta na mobilu */
.mbar{display:none}

@media (max-width:1080px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.float-card{display:none}.ref{columns:2}}
@media (max-width:900px){
  :root{--hdr:68px}
  .km-hlava{display:none}   /* pilulka s km při čtení zakrývala text (Oliver 19. 10.); postup dál ukazuje čára pod hlavičkou */
  .nav,.hdr .btn-sm{display:none}
  .burger{display:grid}
  .nav.open{display:flex;flex-direction:column;position:absolute;top:var(--hdr);left:0;right:0;background:var(--bg);padding:8px var(--pad) 28px;gap:0;border-bottom:1px solid var(--line)}
  .nav.open a{padding:16px 0;border-bottom:1px solid var(--line);font-size:22px;font-weight:300;color:var(--ink)}
  .hero{min-height:0;display:block}
  /* výška fotky se snižuje na nižších telefonech, aby pod ní zbylo místo na nadpis, perex, tlačítko i odkaz nad spodní lištou (iPhone 12–14: 390×844) */
  .hero-photo{position:relative;width:100%;height:min(52svh,calc(100svh - 430px));min-height:340px}
  .hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,var(--bg) 3%,rgba(var(--bg-rgb),.90) 17%,rgba(var(--bg-rgb),.5) 38%,rgba(var(--bg-rgb),0) 66%),linear-gradient(180deg,var(--bg) 0%,rgba(var(--bg-rgb),0) 14%)}
  .hero .wrap{margin-top:-104px;padding-top:0}
  .hero-eb{margin-bottom:20px}
  .lead{margin:22px 0 28px}
  .hero-grid,.about,.nutri,.contact-grid,.sec-head,.train-media,.beh,.faq,.ref{grid-template-columns:1fr}
  .logo-znak{width:34px}
  .nav.open a.je-tu::after{display:none}
  .nav.open a.jazyk{border:0;border-bottom:1px solid var(--line);border-radius:0;padding:16px 0;font-size:22px;letter-spacing:0}
  .nav.open a.je-tu::before{content:"";position:absolute;left:-14px;top:50%;width:6px;height:6px;border-radius:50%;background:var(--akcent-d);transform:translateY(-50%)}
  .sec-head{gap:24px}
  .facts{gap:32px;margin-top:48px}
  .row{grid-template-columns:1fr auto;padding:22px}
  .row-go{display:none}
  .about-media{max-width:560px}
}
@media (max-width:760px){
  .mbar{display:grid;grid-template-columns:repeat(3,1fr);position:fixed;left:12px;right:12px;bottom:12px;z-index:60;background:rgba(var(--black-rgb),.9);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--line-d);border-radius:999px;padding:6px}
  .mbar a{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--white);font-size:14.5px;padding:12px 0;border-radius:999px}
  .mbar a:first-child{background:var(--white);color:var(--black)}
  body{padding-bottom:86px}
}
/* nízké telefony (iPhone SE, menší Androidy): menší úvodní fotka, aby hlavní tlačítko bylo nad spodní lištou */
@media (max-width:760px) and (max-height:760px){.hero-photo{height:42svh;min-height:260px}}
/* úzké telefony (360 px): anglický perex je delší, fotka musí být nižší, aby odkaz nad lištou zůstal vidět */
@media (max-width:380px){.hero-photo{height:min(46svh,calc(100svh - 470px));min-height:240px}}
/* 27. 10.: delší perex Anetinými slovy posunul tlačítka — na nízkých telefonech o kus nižší fotka (375×667: odkaz na ceník nad lištou; EN 320×568: hlavní tlačítko nad lištou) */
@media (max-width:760px) and (max-height:680px){.hero-photo{height:min(38svh,calc(100svh - 440px));min-height:210px}.hero .wrap .h1{font-size:calc(44px * var(--nadpisy-velikost,.94))}}
@media (max-width:760px) and (max-height:650px){.hero-photo{height:min(38svh,calc(100svh - 455px));min-height:170px}}
/* úplně nízké obrazovky (≈ 568 px): vedlejší odkaz se skryje, ceník je dostupný z nabídky */
@media (max-width:760px) and (max-height:600px){.hero-photo{height:min(30svh,calc(100svh - 418px));min-height:140px}.hero .wrap .h1{font-size:calc(40px * var(--nadpisy-velikost,.94))}.lead{font-size:16px;margin:16px 0 20px}.cta-row .link-u{display:none}}
@media (max-width:640px){   /* telefon: další reference do vodorovně posuvné řady (Oliver 19. 10.; pod sebou zabíraly 4,7 obrazovky), jako řada fotek v O mně */
  .ref{columns:auto;display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:min(84%,330px);gap:12px;align-items:stretch;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--pad);scrollbar-width:none;margin:0 calc(-1 * var(--pad));padding:0 var(--pad) 4px}
  .ref::-webkit-scrollbar{display:none}
  .ref-karta{margin:0;scroll-snap-align:start;animation:none;display:flex;flex-direction:column}   /* scroll-driven vyjetí by se v posuvné řadě vázalo na ni, ne na stránku */
  .ref-cta{justify-content:center}
  .row h3{flex-direction:column;align-items:flex-start;gap:8px}   /* štítek balíčku vždy pod názvem — jinak se zalamoval podle délky názvu (na 390 px „Balíček 10“ pod, „Balíček 5“ vedle; 27. 10.) */
}
@media (max-width:560px){
  .hide-s{display:none}
  .hero .h1{font-size:calc(clamp(44px,13.5vw,56px) * var(--nadpisy-velikost,.94))}
  .logo-txt span{font-size:9.5px;letter-spacing:.14em;white-space:nowrap}
  .hdr-in{gap:16px}   /* nejmenší mezera logo–tlačítko; kde je místo, pohltí ji margin-left:auto tlačítka — projeví se jen tam, kde chybí (česky na 320 px chybělo 0,5 px a jméno se zalomilo na dva řádky) */
  .beh-body{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}
  .steps li{min-height:0}.steps h3{margin-top:36px}
  .facts{grid-template-columns:repeat(3,minmax(min-content,1fr));gap:14px}   /* sloupec ne užší než nejdelší slovo: „Next.Move“ na 320 px přečníval o 13 px (Safari i na 360 px); kde se vejde, zůstávají sloupce stejné */
  .facts dt{font-size:calc(22px * var(--nadpisy-velikost,.94))}
  .row{grid-template-columns:1fr;gap:10px}
  .row-p{text-align:left}
  .clinks a{grid-template-columns:1fr auto;gap:6px 16px}
  .clinks .k{grid-column:1/-1}
  .certs li,.info dl div{grid-template-columns:1fr;gap:2px}
  .info{padding:30px 24px}
  .train-media figure{min-height:320px}
}
/* nejužší telefony (320–359 px): anglický podtitul „Training · Running · Nutrition“ je delší než český a vedle tlačítka menu se nevešel; česky beze změny.
   Celé px: Safari počítá šířku znaků u 9,5 px jako u 10 px (Chrome přesně), při 9 px vychází v obou stejně (160,5 px). */
@media (max-width:359px){.logo-txt span:lang(en){font-size:9px;letter-spacing:.08em}}
/* odkaz „Přeskočit na obsah“ — viditelný jen při ovládání klávesnicí */
.skip{position:absolute;left:12px;top:-72px;z-index:100;background:var(--white);color:var(--black);padding:12px 22px;border-radius:999px;font-size:14.5px;font-weight:500;transition:top .2s}
.skip:focus{top:12px;box-shadow:0 8px 28px rgba(var(--black-rgb),.25)}   /* stín jen při zaostření — skrytý odkaz je jen 72 px nad oknem a stín by do něj prosvítal */
main:focus{outline:none}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}html{scroll-behavior:auto}}
/* upgrade 1. 10.: mobil */
@media (max-width:900px){
  .cil{grid-template-columns:minmax(0,1fr) 46px;grid-template-areas:"t a" "p p";row-gap:8px;column-gap:14px;padding:20px 0}
  .cil h3{grid-area:t;font-size:calc(clamp(28px,8.4vw,38px) * var(--nadpisy-velikost,.94))}
  .cil p{grid-area:p;font-size:15px}
  .cil-sipka{grid-area:a;width:44px;height:44px}
  .cena-radky li{grid-template-columns:1fr auto auto;row-gap:10px;column-gap:14px}
  .cena-pruh{grid-column:1/-1;order:4}
  .tempo-dole{gap:12px}
  .tempo-dole .tempo-vystup{gap:18px}
  .draha{width:100px}
}
