:root{
  --smaragd:#1D4A42; --smaragd-tmava:#132F2A;
  --tyrkys:#2E9E8F; --tyrkys-tmavy:#1F7A6D;
  --salvej:#6FA287; --salvej-tmava:#4F836B;
  --zlata:#F0CE5E; --zlata-tmava:#E9BE3F;
  --zelen-svetla:#DFEDE7; --karta:#F3F6F4; --kremova:#FBF3D9;
  --ink:#26262E; --muted:#5F6662; --linka:#D9E1DC;
  --sirka:1080px; --radius:14px;
  color-scheme: only light;
}
*{box-sizing:border-box;margin:0;padding:0}
[hidden]{display:none !important}
html{scroll-behavior:smooth;scroll-padding-top:96px;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*{animation-duration:.01ms !important;transition-duration:.01ms !important}}
body{font-family:Arial,Helvetica,sans-serif;font-size:1.0625rem;line-height:1.65;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;color:var(--smaragd);line-height:1.22;text-wrap:balance}
h1{font-size:clamp(1.7rem,4.2vw,3rem)}
h2{font-size:clamp(1.5rem,3vw,2.1rem)}
h3{font-size:1.12rem}
p,li{max-width:66ch}
a{color:var(--tyrkys-tmavy)}
a:hover{color:var(--smaragd)}
img{max-width:100%;height:auto}
strong{color:var(--smaragd)}
abbr[title]{text-decoration-style:dotted;cursor:help}
.wrap{width:100%;max-width:var(--sirka);margin-inline:auto;padding-inline:20px}
.uzsi{max-width:760px}
.skip{position:absolute;left:-9999px;top:0;background:var(--zlata);color:var(--smaragd);padding:.7em 1.2em;font-weight:bold;z-index:999;border-radius:0 0 8px 0}
.skip:focus{left:0;top:0}
:focus-visible{outline:3px solid var(--tyrkys-tmavy);outline-offset:3px;border-radius:5px}
.hero :focus-visible,footer :focus-visible,.tmava :focus-visible{outline-color:var(--zlata)}

.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.7em 1.7em;border-radius:999px;font-weight:bold;font-size:1.02rem;text-decoration:none;border:2px solid transparent;text-align:center}
.btn-dvojity{flex-direction:column;gap:1px;padding-block:.6em;line-height:1.25}
.btn-pod{display:block;font-weight:normal;font-size:.78rem;opacity:.82;letter-spacing:.01em}
.btn-zlata{background:linear-gradient(135deg,var(--zlata),var(--zlata-tmava));color:var(--smaragd)}
.btn-zlata:hover{background:var(--zlata-tmava);color:var(--smaragd)}
.btn-obrys{border-color:#fff;color:#fff}
.btn-obrys:hover{background:#fff;color:var(--smaragd)}
.btn-obrys-tm{border-color:var(--smaragd);color:var(--smaragd)}
.btn-obrys-tm:hover{background:var(--smaragd);color:#fff}

header.site{background:#fff;border-bottom:1px solid var(--linka)}
header.site .wrap{display:flex;align-items:center;gap:8px 20px;flex-wrap:nowrap;padding-block:10px}
.logo{font-family:Georgia,serif;font-weight:bold;color:var(--smaragd);font-size:1.18rem;text-decoration:none;display:flex;align-items:center;min-height:44px;margin-right:auto;white-space:nowrap}
nav.hlavni ul{list-style:none;display:flex;flex-wrap:nowrap;gap:4px}
nav.hlavni a{display:flex;align-items:center;min-height:44px;padding:0 12px;white-space:nowrap;text-decoration:none;color:var(--smaragd);font-weight:bold;font-size:.95rem;border-radius:8px}
nav.hlavni a:hover{background:var(--zelen-svetla);color:var(--smaragd);text-decoration:underline}
nav.hlavni a[aria-current]{background:var(--zelen-svetla);text-decoration:underline}
header .btn{font-size:.95rem;min-height:44px;padding:.5em 1.3em}
@media(min-width:900px){header.site{position:sticky;top:0;z-index:50}}
@media(max-width:899px){.logo{font-size:1.04rem}nav.hlavni a{padding:0 9px;font-size:.9rem}}
@media(max-width:520px){header.site .wrap{gap:6px 10px}.logo{font-size:.95rem}nav.hlavni a{padding:0 7px;font-size:.83rem}}
@media(max-width:380px){.logo{font-size:.88rem}nav.hlavni a{padding:0 5px;font-size:.78rem}}

.hero{background:var(--smaragd);color:#fff}
.hero .wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:44px;align-items:center;padding-block:clamp(36px,6vw,64px)}
.hero.jednoduchy{padding-block:0}
.hero.jednoduchy .wrap{display:block;padding-block:clamp(30px,4.5vw,48px)}
.hero h1{color:#fff;margin-block:.3em .45em}
.hero p{color:#DDEBE4}
.stitek{color:var(--zlata);font-weight:bold;letter-spacing:.12em;font-size:.82rem;text-transform:uppercase;max-width:none}
.zvyraz{color:var(--zlata);font-weight:bold}
.hero p.zvyraz{color:var(--zlata)}
.hero-cta{margin-top:1.5em;display:flex;gap:12px;flex-wrap:wrap;align-items:stretch}
.hero-foto{justify-self:center;max-width:330px}
.hero-foto img{display:block;border-radius:22px;border:5px solid var(--zlata);box-shadow:0 18px 50px rgba(0,0,0,.3)}
.hero-pod{margin-top:1.5em;font-size:.9rem;color:#BFD8CE;text-wrap:pretty}
@media(max-width:980px){.hero .wrap{grid-template-columns:1fr 200px;gap:30px}.hero-foto{max-width:200px;align-self:start}}
@media(max-width:760px){.hero .wrap{grid-template-columns:1fr 160px;gap:22px}.hero-foto{max-width:160px}}
@media(max-width:560px){.hero .wrap{display:flex;flex-direction:column;gap:20px}.hero-foto{order:-1;max-width:142px;align-self:flex-start}.hero-foto img{border-width:4px;border-radius:18px}}

.pasek{background:var(--kremova);padding:14px 20px;font-weight:bold;color:var(--smaragd);text-align:center}
.pasek p{max-width:none;margin-inline:auto}
section{padding-block:clamp(40px,6vw,68px)}
section.seda{background:var(--karta)}
section.tmava{background:var(--smaragd);color:#DDEBE4}
section.tmava h2,section.tmava h3{color:#fff}
.tmava p{color:#DDEBE4}
.tmava a:not(.btn){color:var(--zlata)}
.tmava .btn-zlata{color:var(--smaragd)}
.tmava .btn-obrys{color:#fff}
.tmava .fajfky li::before{background:var(--zlata)}
.tmava .fajfky li::after{color:var(--smaragd)}
.tldr{background:var(--zelen-svetla);border-left:6px solid var(--tyrkys-tmavy);padding:14px 18px;border-radius:0 12px 12px 0;font-weight:bold;color:var(--smaragd);max-width:none;margin-block:1em 1.6em}
.uvod{margin-top:.8em}
section h2{margin-bottom:.7em}
.pozn{margin-top:22px;font-size:.93rem;color:var(--muted)}

.mrizka{display:grid;grid-template-columns:repeat(auto-fit,minmax(232px,1fr));gap:18px;margin-top:30px}
.karta{background:#fff;border:1px solid var(--linka);border-radius:var(--radius);padding:22px}
.seda .karta{background:#fff;border-color:transparent}
.karta h3{margin-bottom:.4em;display:flex;gap:9px;align-items:baseline}
.karta p{font-size:.95rem;color:var(--muted);max-width:none}
.tecka{flex:0 0 auto;width:11px;height:11px;border-radius:50%;translate:0 -1px}

.osnova{list-style:none;margin-top:28px;display:grid;gap:2px;border:1px solid var(--linka);border-radius:var(--radius);overflow:hidden;background:var(--linka)}
.osnova li{background:#fff;display:grid;grid-template-columns:auto 1fr auto;gap:6px 18px;align-items:baseline;padding:18px 22px;max-width:none}
.osnova .cislo{font-family:Georgia,serif;font-weight:bold;color:var(--tyrkys-tmavy);font-size:1.1rem;font-variant-numeric:tabular-nums}
.osnova .nazev{font-weight:bold;color:var(--smaragd)}
.osnova .cas{color:var(--muted);font-size:.88rem;font-variant-numeric:tabular-nums;white-space:nowrap}
.osnova .popis{grid-column:2/-1;color:var(--muted);font-size:.95rem;max-width:62ch}
@media(max-width:600px){.osnova li{grid-template-columns:auto 1fr}.osnova .cas{grid-column:2;justify-self:start}.osnova .popis{grid-column:2}}

ul.fajfky{list-style:none;margin-top:20px;display:grid;gap:.75em}
@media(min-width:900px){ul.fajfky{grid-template-columns:1fr 1fr;gap:1.1em 46px}ul.fajfky li{max-width:none}}
ul.fajfky li{padding-left:2.1em;position:relative}
ul.fajfky li::before{content:"";position:absolute;left:0;top:.15em;width:1.45em;height:1.45em;border-radius:50%;background:var(--tyrkys-tmavy)}
ul.fajfky li::after{content:"\2713";position:absolute;left:0;top:.15em;width:1.45em;height:1.45em;color:#fff;font-weight:bold;font-size:.8em;display:flex;align-items:center;justify-content:center}

.ceny{display:grid;grid-template-columns:repeat(auto-fit,minmax(262px,1fr));gap:20px;margin-top:34px;align-items:stretch}
.cena{border:1px solid var(--linka);border-radius:16px;padding:28px;display:flex;flex-direction:column;background:#fff}
.cena.top{border:2px solid var(--zlata-tmava);background:var(--kremova);position:relative}
.odznak{position:absolute;top:-13px;left:24px;background:var(--zlata-tmava);color:var(--smaragd);font-weight:bold;font-size:.78rem;padding:.32em 1em;border-radius:999px;letter-spacing:.04em}
.cena h3{font-size:1.05rem;letter-spacing:.08em}
.castka{font-family:Georgia,serif;font-size:2.05rem;color:var(--smaragd);font-weight:bold;margin-block:.25em .1em;font-variant-numeric:tabular-nums}
.cena .dan{font-size:.85rem;color:var(--muted);max-width:none}
.cena ul{list-style:none;margin-block:18px 24px;display:grid;gap:.5em}
.cena li{padding-left:1.6em;position:relative;font-size:.95rem;max-width:none}
.cena li::before{content:"\2713";position:absolute;left:0;color:var(--salvej-tmava);font-weight:bold}
.cena .btn{margin-top:auto;width:100%}

.omne{display:grid;grid-template-columns:auto 1fr;gap:34px;align-items:center}
.omne>img{width:250px;height:auto;border-radius:18px;border:4px solid var(--zlata);object-fit:cover}
@media(max-width:700px){.omne>img{width:220px}}
@media(max-width:700px){.omne{grid-template-columns:1fr;justify-items:start;text-align:left;gap:24px}}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.duo img{border-radius:18px;border:4px solid var(--zlata);display:block}
@media(max-width:780px){.duo{grid-template-columns:1fr;gap:26px}}

.kroky{counter-reset:krok;margin-top:28px;display:grid;gap:22px;list-style:none}
@media(min-width:920px){.kroky{grid-template-columns:repeat(3,1fr);gap:34px}.kroky li{max-width:none;padding-left:0;padding-top:0;min-height:0}.kroky li::before{position:static;margin-bottom:12px}}
.kroky li{position:relative;padding-left:66px;max-width:62ch;min-height:46px;padding-top:.35em}
.kroky li::before{counter-increment:krok;content:counter(krok);position:absolute;left:0;top:0;width:46px;height:46px;border-radius:50%;background:var(--tyrkys-tmavy);color:#fff;font-family:Georgia,serif;font-weight:bold;font-size:1.3rem;display:flex;align-items:center;justify-content:center}
.kroky .detail{display:block;color:var(--muted);font-size:.95rem;margin-top:.25em}
.tmava .kroky li::before{background:var(--zlata);color:var(--smaragd)}
.tmava .kroky .detail{color:#BFD8CE}

.faq{margin-top:26px;display:grid;gap:12px}
details{border:1px solid var(--linka);border-radius:12px;background:#fff}
summary{padding:15px 20px;min-height:48px;display:flex;align-items:center;font-weight:bold;cursor:pointer;color:var(--smaragd);border-radius:12px}
summary:hover{color:var(--tyrkys-tmavy)}
details[open] summary{border-bottom:1px solid var(--linka);border-radius:12px 12px 0 0}
.odpoved{padding:15px 20px;color:var(--muted)}
.odpoved p{max-width:66ch}
.odpoved p + p{margin-top:.7em}

.zaver{text-align:center}
.zaver p{margin-inline:auto}
.zaver .hero-cta{justify-content:center}
.zaver-foto{display:none}
@media(min-width:900px){
  .zaver .wrap{display:grid;grid-template-columns:1fr 250px;gap:40px;align-items:center;text-align:left}
  .zaver .zaver-text p{margin-inline:0}
  .zaver .hero-cta{justify-content:flex-start}
  .zaver-foto{display:block;width:200px;height:auto;justify-self:end;align-self:end;margin-block:-10px -40px}
}

.pravni{padding-block:clamp(36px,5vw,56px)}
.pravni h2{font-size:1.4rem;margin-top:1.8em;margin-bottom:.5em}
.pravni h3{margin-top:1.3em;margin-bottom:.35em}
.pravni p,.pravni li{margin-bottom:.6em}
.pravni ul,.pravni ol{margin-left:1.3em;margin-bottom:.9em}
.pravni ol.hlavni{list-style:decimal}
.upozorneni{background:var(--kremova);border:2px solid var(--zlata-tmava);border-radius:12px;padding:18px 22px;margin-block:1.4em}
.upozorneni p{max-width:none;margin-bottom:0}

footer.site{background:var(--smaragd-tmava);color:#CFE0D8;padding-block:44px;font-size:.92rem;margin-top:0}
footer.site a{color:#fff}
footer.site .wrap{display:grid;grid-template-columns:1fr 1fr;gap:28px 56px}
@media(max-width:640px){footer.site .wrap{grid-template-columns:1fr;gap:26px}}
footer.site .radek{line-height:1.7;max-width:none}
footer.site .jmeno{margin-bottom:.55em}
footer.site p,footer.site li{max-width:44ch}
footer h2{font-size:.85rem;color:#fff;letter-spacing:.1em;text-transform:uppercase;font-family:Arial,sans-serif;margin-bottom:.8em}
footer ul{list-style:none;display:grid;gap:.45em}
footer .radek{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.18);padding-top:18px;font-size:.86rem;color:#BFD8CE}
.doplnit{border-bottom:2px dotted var(--zlata);color:#fff}
section .doplnit,.pravni .doplnit{border-bottom-color:var(--zlata-tmava);color:inherit}

/* --- tlačítko, které vypadá jako odkaz (patička) --- */
.odkaz-btn{background:none;border:0;padding:0;font:inherit;color:#fff;text-decoration:underline;cursor:pointer}
.odkaz-btn:hover{color:var(--zlata)}

/* --- cookie lištka --- */
.cookie-listka{position:fixed;left:0;right:0;bottom:0;z-index:200;background:#fff;border-top:3px solid var(--smaragd);box-shadow:0 -6px 28px rgba(0,0,0,.18)}
.cookie-obsah{max-width:var(--sirka);margin-inline:auto;padding:18px 20px;display:grid;grid-template-columns:1fr auto;gap:16px 28px;align-items:center}
.cookie-listka h2{font-size:1.05rem;margin-bottom:.25em}
.cookie-listka p{font-size:.93rem;color:var(--muted);max-width:72ch}
.cookie-tlacitka{display:flex;gap:10px;flex-wrap:wrap}
.cookie-tlacitka .btn{min-height:44px;padding:.55em 1.3em;font-size:.95rem}
@media(max-width:720px){.cookie-obsah{grid-template-columns:1fr}.cookie-tlacitka .btn{flex:1 1 auto}}

/* --- jednoduchá cenová karta (jeden produkt) --- */
.cena-solo{max-width:440px;margin-top:0}
.cena-blok{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:44px;align-items:start;margin-top:8px}
.cena-blok .cena-text p{max-width:none}
.cena-blok .cena-text h2{margin-bottom:.7em}
.pozn-pod{margin-top:1.6em;max-width:78ch}
@media(max-width:900px){.cena-blok{grid-template-columns:1fr;gap:28px}.cena-solo{margin-top:4px}}
.cena-solo .castka{font-size:2.4rem}

/* --- bio --- */
.omne .klienti{font-size:.95rem;color:var(--muted);max-width:none}

.podnadpis{margin-top:2.2em;font-size:1.35rem;font-family:Georgia,'Times New Roman',serif;color:var(--smaragd)}
.podnadpis + .mrizka{margin-top:18px}

.odkaz-btn.tmavy{color:var(--tyrkys-tmavy)}
.odkaz-btn.tmavy:hover{color:var(--smaragd)}

/* --- hero tlačítka: zůstanou vedle sebe i v užších šířkách --- */
@media(max-width:980px){.hero-cta .btn{font-size:.95rem;padding:.65em 1.15em;min-height:46px}}
@media(max-width:760px){.hero-cta .btn{font-size:.9rem;padding:.6em .95em}}
@media(max-width:560px){.hero-cta{gap:10px}.hero-cta .btn{flex:1 1 100%;font-size:1rem;padding:.7em 1.2em;min-height:48px}}

/* ===================== OBJEDNÁVKOVÁ STRÁNKA ===================== */
.objednavka{padding-block:clamp(32px,5vw,56px)}
.objednavka-mrizka{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:40px;align-items:start}
@media(max-width:880px){.objednavka-mrizka{grid-template-columns:1fr;gap:32px}
  .souhrn{order:-1}}
.objednavka-formular{min-width:0}
.souhrn-karta{background:var(--kremova);border:2px solid var(--zlata-tmava);border-radius:16px;padding:26px}
.souhrn-karta h2{font-size:1.05rem;letter-spacing:.06em;text-transform:uppercase;font-family:Arial,sans-serif;color:var(--smaragd);margin-bottom:.7em}
.souhrn-nazev{font-family:Georgia,'Times New Roman',serif;font-size:1.2rem;color:var(--smaragd);font-weight:bold;max-width:none}
.souhrn-karta .castka{margin-block:.15em 0}
.souhrn-karta .dan{max-width:none}
.souhrn-karta ul{list-style:none;display:grid;gap:.5em;margin-top:16px}
.souhrn-karta li{padding-left:1.6em;position:relative;font-size:.95rem;max-width:none}
.souhrn-karta li::before{content:"\2713";position:absolute;left:0;color:var(--salvej-tmava);font-weight:bold}
.souhrn-karta hr{border:0;border-top:1px solid var(--zlata-tmava);opacity:.5;margin-block:20px}
.souhrn-jistoty li::before{content:"\2022";font-size:1.2em;line-height:1}
.objednavka-pomoc{margin-top:18px}
@media(min-width:881px){.souhrn{position:sticky;top:96px}}

/* --- vložený prodejní formulář FAPI ve firemním designu --- */
.fapi-obal{min-height:320px}
.fapi-obal .fapi-form-wrapper,
.fapi-obal form{font-family:Arial,Helvetica,sans-serif !important;color:var(--ink) !important}
.fapi-obal h1,.fapi-obal h2,.fapi-obal h3,.fapi-obal legend{
  font-family:Georgia,'Times New Roman',serif !important;color:var(--smaragd) !important}
.fapi-obal label,.fapi-obal .control-label{
  font-weight:bold !important;color:var(--smaragd) !important;font-size:.94rem !important}
.fapi-obal input[type=text],.fapi-obal input[type=email],.fapi-obal input[type=tel],
.fapi-obal input[type=number],.fapi-obal input:not([type]),.fapi-obal select,.fapi-obal textarea{
  width:100% !important;min-height:48px !important;padding:.6em .8em !important;
  border:1px solid var(--linka) !important;border-radius:10px !important;
  background:#fff !important;color:var(--ink) !important;font-size:1rem !important;
  font-family:Arial,Helvetica,sans-serif !important;box-shadow:none !important}
.fapi-obal input:focus,.fapi-obal select:focus,.fapi-obal textarea:focus{
  outline:3px solid var(--tyrkys-tmavy) !important;outline-offset:2px !important;
  border-color:var(--tyrkys-tmavy) !important}
.fapi-obal input[type=checkbox],.fapi-obal input[type=radio]{
  width:20px !important;height:20px !important;min-height:0 !important;accent-color:var(--tyrkys-tmavy)}
.fapi-obal a{color:var(--tyrkys-tmavy) !important;text-decoration:underline}
.fapi-obal button,.fapi-obal input[type=submit],.fapi-obal .btn{
  background:linear-gradient(135deg,var(--zlata),var(--zlata-tmava)) !important;
  color:var(--smaragd) !important;border:2px solid transparent !important;border-radius:999px !important;
  font-weight:bold !important;font-size:1.05rem !important;min-height:52px !important;
  padding:.7em 1.9em !important;cursor:pointer;font-family:Arial,Helvetica,sans-serif !important;
  box-shadow:none !important;text-transform:none !important}
.fapi-obal button:hover,.fapi-obal input[type=submit]:hover{background:var(--zlata-tmava) !important}
.fapi-obal button:focus-visible,.fapi-obal input[type=submit]:focus-visible{
  outline:3px solid var(--smaragd) !important;outline-offset:3px !important}
.fapi-obal table{width:100% !important;border-collapse:collapse}
.fapi-obal td,.fapi-obal th{border-color:var(--linka) !important}

.citat{background:var(--kremova);border:2px solid var(--zlata);border-radius:var(--radius);padding:30px 34px;margin-top:26px;display:grid;grid-template-columns:auto 1fr;gap:8px 26px;align-items:start}
.citat .foto{grid-row:1/3;width:108px;height:108px;border-radius:50%;object-fit:cover;border:3px solid var(--zlata);display:block}
.citat blockquote p{font-family:Georgia,'Times New Roman',serif;font-size:1.12rem;line-height:1.55;color:var(--smaragd);max-width:68ch;position:relative}

.citat figcaption{margin-top:.9em;display:block}
.citat .jmeno{display:block;font-weight:bold;color:var(--smaragd)}
.citat .role{display:block;font-size:.92rem;color:var(--muted);margin-top:.15em}
.citat:not(:has(.foto)){grid-template-columns:1fr}
@media(max-width:620px){.citat{grid-template-columns:1fr;padding:24px 22px;gap:14px}.citat .foto{grid-row:auto;width:76px;height:76px}}
.prehravac{position:relative;width:100%;aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;background:#000;border:3px solid var(--zlata);margin-top:6px}
.prehravac iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.skryty-nadpis{position:absolute;left:-9999px}

/* --- brána ke kurzu (stránka pro kupující) --- */
.brana{background:var(--kremova);border:2px solid var(--zlata);border-radius:var(--radius);padding:clamp(22px,4vw,34px);max-width:560px}
.brana h3{font-size:1.25rem;margin-bottom:.35em}
.brana p{color:var(--muted);max-width:48ch}
.brana form{display:flex;flex-wrap:wrap;gap:10px;margin-top:1.2em}
.brana input{flex:1 1 220px;min-width:0;min-height:48px;padding:.6em .9em;font-size:1rem;font-family:inherit;color:var(--ink);background:#fff;border:2px solid var(--linka);border-radius:999px}
.brana input:focus{border-color:var(--tyrkys-tmavy);outline:none}
.brana .btn{flex:0 0 auto}
.brana-chyba{margin-top:1em;color:#8A2B20;font-weight:bold;max-width:52ch}
@media(max-width:420px){.brana form{flex-direction:column}.brana .btn{width:100%}}
