/* ===================================================================
   DRUHÝ DESIGN — „Doma“
   Samostatný styl pro vstupní stránku pro rodinné domy. ZÁMĚRNĚ
   nenačítá styl.css: dokud by dědil původní vzhled, byl by to pořád
   stejný web jen jinak poskládaný.

   Čím se liší od hlavního webu:
   - podklad teplá krémová místo bílé, kontrast tmavě zelený místo modré
   - jedno tenké bezpatkové písmo Inter Tight, velké nadpisy ve slabém řezu
   - hero = video přes celou plochu s obřím nadpisem (stavba podle zaptec.com)
   - z původní identity zůstala jen oranžová, a to jako doplněk
   Pohyb obsluhuje /doma.js; bez JS je všechno vidět a nic se nehýbe.
   =================================================================== */

@font-face{
  font-family:'Inter Tight'; font-style:normal; font-weight:100 900; font-display:swap;
  src:url(/fonty/inter-tight-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:'Inter Tight'; font-style:normal; font-weight:100 900; font-display:swap;
  src:url(/fonty/inter-tight-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{
  --krem:#f6f1e8;
  --pisek:#ece4d6;
  --inkoust:#1c1a17;
  --inkoust-mek:#5f594f;
  --les:#28352e;
  --oranz:#e8601c;
  --broskev:#f3b48f;
  --linka:#d9cfbe;
  --nadpis:'Inter Tight', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --plyne:cubic-bezier(.2,.75,.2,1);
  interpolate-size:allow-keywords;
}

*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0; background:var(--krem); color:var(--inkoust);
  font-family:var(--nadpis); font-size:17px; line-height:1.66; font-weight:400;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
img,video{ max-width:100%; display:block; }
a{ color:inherit; }
::selection{ background:var(--oranz); color:#fff; }

h1,h2,h3{ font-family:var(--nadpis); margin:0; }
h1{ font-size:clamp(2.6rem, 6.6vw, 5.6rem); line-height:1; font-weight:300; letter-spacing:-.04em; }
h2{ font-size:clamp(1.9rem, 3.4vw, 3rem); line-height:1.1; font-weight:300; letter-spacing:-.03em; }
h2 em,h1 em{ font-style:normal; color:var(--oranz); }
h3{ font-size:1.2rem; line-height:1.3; font-weight:500; letter-spacing:-.01em; }
p{ margin:0 0 1em; color:var(--inkoust-mek); }
p:last-child{ margin-bottom:0; }
strong{ color:var(--inkoust); font-weight:600; }

.d-sirka{ max-width:1240px; margin:0 auto; padding:0 28px; }
.d-uzke{ max-width:720px; }
.d-blok{ padding:clamp(76px, 9vw, 140px) 0; }
.d-pisek{ background:var(--pisek); }
.d-les{ background:var(--les); color:#efeae0; }
.d-les h2,.d-les h3{ color:#fff; }
.d-les p{ color:rgba(239,234,224,.74); }
section[id]{ scroll-margin-top:76px; }

/* štítek nad nadpisem: verzálky s linkou, která se při objevení vytáhne */
.d-oko{
  display:flex; align-items:center; gap:14px;
  font-size:.74rem; font-weight:500; letter-spacing:.16em; text-transform:uppercase;
  color:var(--oranz); margin:0 0 22px;
}
.d-oko::before{
  content:""; width:30px; height:1px; background:currentColor; flex:none;
  transform-origin:left; transition:transform .9s var(--plyne) .15s;
}
.d-les .d-oko{ color:var(--broskev); }

/* ---------- hlavička ----------
   Výchozí stav je plná krémová lišta, takže bez JS je vždy čitelná.
   Skript přidá .d-pruhledna, dokud je stránka nahoře nad videem. */
.d-hlava{
  position:fixed; top:0; left:0; right:0; z-index:50;
  background:rgba(246,241,232,.92); backdrop-filter:blur(14px) saturate(1.2);
  border-bottom:1px solid rgba(28,26,23,.08);
  transition:background .5s ease, border-color .5s ease, color .5s ease;
}
.d-hlava .d-sirka{ display:flex; align-items:center; gap:34px; height:72px; max-width:1400px; }
.d-znacka{ display:flex; align-items:center; gap:11px; text-decoration:none; margin-right:auto; }
.d-znacka span.d-blesk{
  width:28px; height:28px; background:var(--oranz); display:grid; place-items:center; border-radius:2px;
  transition:transform .5s var(--plyne);
}
.d-znacka:hover span.d-blesk{ transform:rotate(-12deg) scale(1.06); }
.d-znacka b{ font-weight:600; font-size:1.06rem; letter-spacing:-.015em; }
.d-menu{ display:flex; gap:30px; }
.d-menu a{ position:relative; text-decoration:none; font-size:.9rem; color:var(--inkoust-mek); transition:color .3s; }
.d-menu a::after{
  content:""; position:absolute; left:0; right:0; bottom:-5px; height:1px; background:currentColor;
  transform:scaleX(0); transform-origin:right; transition:transform .45s var(--plyne);
}
.d-menu a:hover{ color:var(--inkoust); }
.d-menu a:hover::after{ transform:scaleX(1); transform-origin:left; }
.d-hlava.d-pruhledna{ background:transparent; backdrop-filter:none; border-color:rgba(255,255,255,.16); color:#fff; }
.d-hlava.d-pruhledna .d-menu a{ color:rgba(255,255,255,.82); }
.d-hlava.d-pruhledna .d-menu a:hover{ color:#fff; }
.d-hlava.d-pruhledna .d-tl-plne{ background:#fff; color:var(--inkoust); }
.d-hlava.d-pruhledna .d-tl-plne:hover{ background:var(--oranz); color:#fff; }

/* tenký ukazatel, kolik stránky už je za námi (vkládá ho skript) */
.d-prubeh{
  position:fixed; top:0; left:0; right:0; height:2px; z-index:60; pointer-events:none;
  background:var(--oranz); transform-origin:left; transform:scaleX(0);
}

/* ---------- tlačítka ---------- */
.d-tl{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  padding:15px 26px; border-radius:2px; text-decoration:none;
  font-size:.93rem; font-weight:500; letter-spacing:-.005em; border:1px solid transparent; cursor:pointer;
  font-family:var(--nadpis);
  transition:background .35s ease, color .35s ease, border-color .35s ease, transform .35s var(--plyne);
}
.d-tl-plne{ background:var(--inkoust); color:var(--krem); }
.d-tl-plne:hover{ background:var(--oranz); }
.d-tl-ram{ border-color:rgba(28,26,23,.35); color:var(--inkoust); }
.d-tl-ram:hover{ border-color:var(--inkoust); background:var(--inkoust); color:var(--krem); }
/* šipka, která se při najetí posune */
.d-tl-sipka::after{
  content:"→"; display:inline-block; transition:transform .45s var(--plyne);
}
.d-tl-sipka:hover::after{ transform:translateX(5px); }
.d-les .d-tl-ram{ border-color:rgba(255,255,255,.45); color:#fff; }
.d-les .d-tl-ram:hover{ background:#fff; color:var(--les); }

/* ---------- hero: video přes celou plochu, obří nadpis dole ---------- */
.d-kino{
  position:relative; min-height:min(100svh, 1000px); color:#fff;
  display:flex; align-items:flex-end; overflow:hidden; background:#151816;
}
.d-kino-pozadi{ position:absolute; inset:-4% 0 0; will-change:transform; }
.d-kino-pozadi img,
.d-kino-pozadi video{ width:100%; height:100%; object-fit:cover; max-width:none; }
.d-kino-pozadi video{ position:absolute; inset:0; }
.d-kino::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:
    linear-gradient(180deg, rgba(10,12,11,.42) 0%, rgba(10,12,11,0) 22%),
    linear-gradient(0deg, rgba(10,12,11,.8) 0%, rgba(10,12,11,.36) 40%, rgba(10,12,11,0) 66%);
}
.d-kino-obsah{
  position:relative; z-index:2; width:100%; max-width:1400px; margin:0 auto;
  padding:0 28px clamp(30px,4.4vw,56px); will-change:transform, opacity;
}
.d-kino .d-oko{ color:#fff; }
.d-kino h1{
  font-size:clamp(3rem, 8.4vw, 8.6rem); line-height:.94; letter-spacing:-.05em;
  font-weight:300; margin:0 0 clamp(26px,3.2vw,44px); max-width:12ch;
}
.d-kino h1 em{ color:var(--broskev); }
.d-kino-spodek{
  position:relative; display:grid; grid-template-columns:minmax(0,44ch) auto 1fr; gap:clamp(20px,3vw,48px);
  align-items:end; padding-top:clamp(22px,2.4vw,30px);
}
.d-kino-spodek::before{
  content:""; position:absolute; top:0; left:0; right:0; height:1px; background:rgba(255,255,255,.26);
  transform-origin:left;
}
.d-kino-spodek p{ color:rgba(255,255,255,.82); margin:0; font-size:1.04rem; }
.d-kino .d-hero-cta{ display:flex; gap:12px; flex-wrap:wrap; }
.d-kino .d-tl-plne{ background:var(--oranz); color:#fff; }
.d-kino .d-tl-plne:hover{ background:#fff; color:var(--inkoust); }
.d-kino .d-tl-ram{ border-color:rgba(255,255,255,.5); color:#fff; }
.d-kino .d-tl-ram:hover{ background:#fff; border-color:#fff; color:var(--inkoust); }
.d-dolu{
  justify-self:end; display:flex; align-items:center; gap:12px; text-decoration:none;
  font-size:.88rem; color:#fff; white-space:nowrap;
}
.d-dolu i{
  width:40px; height:40px; border:1px solid rgba(255,255,255,.6); border-radius:50%;
  display:grid; place-items:center; font-style:normal; transition:background .3s, color .3s;
}
.d-dolu svg{ animation:d-houpe 2.4s ease-in-out infinite; }
.d-dolu:hover i{ background:#fff; color:var(--inkoust); }
@keyframes d-houpe{ 0%,100%{ transform:translateY(-2px); } 50%{ transform:translateY(3px); } }
.d-ai{
  position:absolute; z-index:2; right:16px; top:86px; font-size:.7rem;
  color:rgba(255,255,255,.58); letter-spacing:.02em;
}

/* úvod: video se pomalu usadí, nadpis vyjede po slovech, spodek dojede */
.d-animuj .d-kino-pozadi{ transform:scale(1.1); }
.d-animuj.d-hotovo .d-kino-pozadi{ transform:none; transition:transform 2.8s cubic-bezier(.16,.8,.24,1); }
.d-animuj .d-kino .d-oko,.d-animuj.d-kino .d-oko{ opacity:0; }
.d-animuj.d-hotovo .d-oko{ opacity:1; transition:opacity .9s ease .2s; }
.d-animuj .d-kino-spodek::before{ transform:scaleX(0); }
.d-animuj.d-hotovo .d-kino-spodek::before{ transform:none; transition:transform 1.4s var(--plyne) .5s; }
.d-animuj .d-kino-spodek > *{ opacity:0; transform:translateY(16px); }
.d-animuj.d-hotovo .d-kino-spodek > *{ opacity:1; transform:none; transition:opacity .9s ease, transform .9s var(--plyne); }
.d-animuj.d-hotovo .d-kino-spodek > :nth-child(1){ transition-delay:.75s; }
.d-animuj.d-hotovo .d-kino-spodek > :nth-child(2){ transition-delay:.88s; }
.d-animuj.d-hotovo .d-kino-spodek > :nth-child(3){ transition-delay:1s; }

/* slova vyjíždějí zpod masky — hero hned, nadpisy sekcí při objevení */
.d-slovo{ display:inline-block; overflow:hidden; vertical-align:top; padding-bottom:.1em; margin-bottom:-.1em; }
.d-slovo > span{ display:inline-block; }
.d-slova .d-slovo > span{ transform:translateY(108%); }
.d-slova.d-videt .d-slovo > span,
.d-animuj.d-hotovo .d-slova .d-slovo > span{ transform:none; transition:transform 1.05s var(--plyne); }

/* ---------- pruh faktů: velká tenká čísla mezi linkami ---------- */
.d-fakta{ display:grid; grid-template-columns:repeat(4,1fr); }
.d-fakta > div{ padding:6px 28px 6px 0; margin-right:28px; border-right:1px solid var(--linka); }
.d-fakta > div:last-child{ border-right:0; margin-right:0; }
.d-fakta b{ font-size:clamp(1.9rem,2.8vw,2.6rem); font-weight:300; letter-spacing:-.035em; display:block; line-height:1.05; margin-bottom:10px; font-variant-numeric:tabular-nums; }
.d-fakta span{ font-size:.9rem; color:var(--inkoust-mek); display:block; line-height:1.55; }

/* ---------- dva sloupce ---------- */
.d-dva{ display:grid; grid-template-columns:.9fr 1.1fr; gap:clamp(28px,6vw,96px); align-items:start; }

/* ---------- kroky: linka se při objevení vytáhne zleva ---------- */
.d-krok{ position:relative; display:grid; grid-template-columns:64px 1fr; gap:22px; padding:28px 0; }
.d-krok::before{
  content:""; position:absolute; top:0; left:0; right:0; height:1px; background:var(--linka);
  transform-origin:left;
}
.d-krok b{ font-size:.82rem; font-weight:500; letter-spacing:.12em; color:var(--oranz); line-height:2; }
.d-krok h3{ margin-bottom:6px; }
.d-krok p{ font-size:.98rem; }

/* ---------- karty: horní linka, při najetí oranžová ---------- */
.d-tri{ display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(24px,3.4vw,52px); }
.d-karta{ position:relative; padding-top:26px; }
.d-karta::before,.d-karta::after{ content:""; position:absolute; top:0; left:0; right:0; height:1px; }
.d-karta::before{ background:var(--inkoust); opacity:.22; }
.d-karta::after{ background:var(--oranz); transform:scaleX(0); transform-origin:left; transition:transform .7s var(--plyne); }
.d-karta:hover::after{ transform:scaleX(1); }
.d-karta h3{ margin-bottom:10px; font-size:1.28rem; }
.d-karta p{ font-size:.98rem; }
.d-pozn{ margin-top:14px; font-size:.86rem; color:var(--oranz); font-weight:500; }
.d-pozn a{ color:var(--oranz); text-decoration:none; background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat; transition:background-size .5s var(--plyne); padding-bottom:2px; }
.d-pozn a:hover{ background-size:100% 1px; }

/* ---------- pás s fotkou: fotka se odkryje stažením opony ---------- */
.d-pas{ display:grid; grid-template-columns:1.1fr .9fr; align-items:stretch; background:var(--les); overflow:hidden; }
.d-pas-foto{ position:relative; overflow:hidden; min-height:380px; }
.d-pas img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.d-pas .d-sirka{ display:flex; align-items:center; padding:clamp(48px,6vw,96px) clamp(28px,5vw,80px); max-width:none; margin:0; }
.d-pas-text{ max-width:40ch; }
.d-pas h2{ color:#fff; margin-bottom:16px; }
.d-pas p{ color:rgba(239,234,224,.76); margin:0; }
.d-opona img{ clip-path:inset(0 100% 0 0); transform:scale(1.14); }
.d-opona.d-videt img{ clip-path:inset(0 0 0 0); transform:none; transition:clip-path 1.5s cubic-bezier(.7,0,.2,1), transform 2.2s var(--plyne); }

.d-ai-pas{ position:absolute; left:14px; bottom:12px; z-index:2; font-size:.7rem; color:rgba(255,255,255,.7); text-shadow:0 1px 6px rgba(0,0,0,.6); }
.d-pas img{ object-position:60% 50%; }
.d-opona .d-ai-pas{ opacity:0; }
.d-opona.d-videt .d-ai-pas{ opacity:1; transition:opacity .8s ease 1.2s; }

/* ---------- video ---------- */
.d-video{ pointer-events:none; border-radius:2px; background:var(--pisek); width:100%; height:auto; aspect-ratio:16/9; display:block; }
.d-video-obal{ overflow:hidden; border-radius:2px; }

/* ---------- cena ---------- */
.d-cena{ display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(24px,3vw,44px); }
.d-cena > div{ position:relative; padding:28px 0 0; }
.d-cena > div::before{ content:""; position:absolute; top:0; left:0; right:0; height:1px; background:var(--inkoust); transform-origin:left; }
.d-cena .d-hlavni::before{ background:var(--oranz); height:2px; }
.d-cena .d-typ{ font-size:.72rem; font-weight:500; letter-spacing:.16em; text-transform:uppercase; color:var(--inkoust-mek); }
.d-cena .d-castka{ font-size:clamp(2rem,3vw,2.7rem); font-weight:300; letter-spacing:-.035em; display:block; margin:12px 0 14px; line-height:1; }
.d-cena .d-hlavni .d-castka{ color:var(--oranz); }
.d-cena p{ font-size:.96rem; }

/* ---------- dotazy: plynulé rozbalení, plus se otočí na křížek ---------- */
.d-dotaz{ border-top:1px solid var(--linka); }
.d-dotaz:last-of-type{ border-bottom:1px solid var(--linka); }
.d-dotaz summary{
  list-style:none; cursor:pointer; padding:26px 52px 26px 0; position:relative;
  font-size:1.14rem; font-weight:400; letter-spacing:-.015em; transition:color .3s;
}
.d-dotaz summary:hover{ color:var(--oranz); }
.d-dotaz summary::-webkit-details-marker{ display:none; }
.d-dotaz summary::before,.d-dotaz summary::after{
  content:""; position:absolute; right:8px; top:50%; width:14px; height:1.5px; background:var(--oranz);
  transition:transform .5s var(--plyne);
}
.d-dotaz summary::after{ transform:rotate(90deg); }
.d-dotaz[open] summary::after{ transform:rotate(180deg); }
.d-dotaz[open] summary::before{ transform:rotate(180deg); }
.d-dotaz::details-content{
  height:0; overflow:clip; opacity:0;
  transition:height .55s var(--plyne), opacity .45s ease, content-visibility .55s allow-discrete;
}
.d-dotaz[open]::details-content{ height:auto; opacity:1; }
.d-dotaz p{ margin:0 0 26px; max-width:64ch; font-size:.98rem; }

/* ---------- formulář: jen spodní linky, popisky malé ---------- */
.d-form label{ display:block; font-size:.74rem; font-weight:500; letter-spacing:.1em; text-transform:uppercase; margin-bottom:4px; }
.d-form input,.d-form select,.d-form textarea{
  width:100%; padding:10px 0 12px; border:0; border-bottom:1px solid var(--linka); border-radius:0;
  background:transparent; font:inherit; font-size:1rem; color:var(--inkoust);
  transition:border-color .35s ease;
}
.d-les .d-form input,.d-les .d-form select,.d-les .d-form textarea{ border-color:rgba(255,255,255,.26); color:#fff; }
.d-les .d-form select option{ color:var(--inkoust); }
.d-les .d-form input::placeholder,.d-les .d-form textarea::placeholder{ color:rgba(255,255,255,.38); }
.d-les .d-form label{ color:rgba(255,255,255,.66); }
.d-form input:focus,.d-form select:focus,.d-form textarea:focus{ outline:none; border-color:var(--broskev); }
.d-form textarea{ min-height:90px; resize:vertical; }
.d-pole{ margin-bottom:22px; }
.d-hp{ position:absolute; left:-9999px; }
.d-gdpr{ font-size:.82rem; margin-top:16px; }

/* ---------- patička ---------- */
.d-pata{ background:var(--inkoust); color:rgba(246,241,232,.68); padding:72px 0 32px; font-size:.9rem; }
.d-pata a{ color:rgba(246,241,232,.68); text-decoration:none; display:block; margin-bottom:8px; transition:color .3s, transform .4s var(--plyne); }
.d-pata a:hover{ color:#fff; transform:translateX(3px); }
.d-pata h4{ color:#fff; font-size:.74rem; font-weight:500; letter-spacing:.16em; text-transform:uppercase; margin:0 0 18px; }
.d-pata-mrizka{ display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:40px; margin-bottom:52px; }
.d-pata-spodek{ border-top:1px solid rgba(255,255,255,.1); padding-top:24px; font-size:.78rem; line-height:1.65; color:rgba(246,241,232,.46); }

/* ---------- objevování při posunu (třídy přidává skript) ---------- */
.d-odhal{ opacity:0; transform:translateY(28px); }
.d-odhal.d-videt{ opacity:1; transform:none; transition:opacity 1s ease, transform 1.1s var(--plyne); }
.d-oko.d-odhal::before{ transform:scaleX(0); }
.d-videt .d-oko::before,.d-oko.d-videt::before{ transform:none; }
.d-krok.d-odhal::before,.d-cena .d-odhal::before{ transform:scaleX(0); }
.d-krok.d-videt::before,.d-cena .d-videt::before{ transform:none; transition:transform 1.2s var(--plyne) .1s; }
.d-zvetsi{ transform:scale(.94); opacity:.4; }
.d-zvetsi.d-videt{ transform:none; opacity:1; transition:transform 1.4s var(--plyne), opacity 1s ease; }


/* ---------- přeskočit na obsah (klávesnice) ---------- */
.d-skip{ position:absolute; left:-9999px; top:8px; z-index:100; background:var(--inkoust); color:var(--krem); padding:10px 16px; }
.d-skip:focus{ left:12px; }
a:focus-visible,button:focus-visible{ outline:2px solid var(--oranz); outline-offset:3px; }

/* ---------- tlačítka, která vkládají sdílené skripty (kalkulačka, lišta souhlasu) ---------- */
.btn{ display:inline-flex; align-items:center; justify-content:center; padding:13px 22px; border-radius:2px; font:inherit; font-size:.92rem; font-weight:500; cursor:pointer; text-decoration:none; border:1px solid transparent; transition:background .3s, color .3s, border-color .3s; }
.btn-primary{ background:var(--oranz); color:#fff; }
.btn-primary:hover{ background:var(--inkoust); }
.btn-outline{ background:transparent; color:var(--inkoust); border-color:rgba(28,26,23,.35); }
.btn-outline:hover{ border-color:var(--inkoust); }

/* ---------- kalkulačka na lesní zelené ---------- */
.d-kalk{ background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.14); padding:clamp(22px,3vw,34px); }
#kalkulacka{ min-height:300px; }
.kalk-hlava{ display:flex; justify-content:space-between; gap:14px; font-size:.72rem; font-weight:500; letter-spacing:.16em; text-transform:uppercase; color:rgba(246,241,232,.6); margin-bottom:10px; }
.kalk-pct{ color:var(--broskev); }
.kalk-bar{ height:2px; background:rgba(255,255,255,.14); overflow:hidden; margin-bottom:26px; }
.kalk-bar i{ display:block; height:100%; background:var(--oranz); transition:width .5s var(--plyne); }
.kalk-bar.hotovo i{ background:var(--broskev); }
.kalk-otazka{ color:#fff; font-size:1.4rem; font-weight:300; letter-spacing:-.02em; margin:0 0 20px; }
.kalk-volby{ display:grid; gap:8px; }
.kalk-volby button{ text-align:left; font:inherit; font-size:.96rem; cursor:pointer; background:transparent; border:1px solid rgba(255,255,255,.2); color:#fff; padding:15px 18px; border-radius:2px; transition:background .25s, border-color .25s, transform .35s var(--plyne); }
.kalk-volby button:hover{ background:rgba(255,255,255,.07); border-color:var(--broskev); transform:translateX(4px); }
.kalk-zpet,.kalk-znovu{ margin-top:16px; background:none; border:0; color:rgba(246,241,232,.6); font:inherit; font-size:.86rem; cursor:pointer; padding:4px 0; }
.kalk-zpet:hover,.kalk-znovu:hover{ color:#fff; }
.kalk-body{ list-style:none; padding:0; margin:0 0 22px; display:grid; gap:10px; }
.kalk-body li{ position:relative; padding-left:24px; color:rgba(246,241,232,.82); font-size:.95rem; line-height:1.5; }
.kalk-body li::before{ content:""; position:absolute; left:2px; top:.45em; width:11px; height:6px; border-left:1.5px solid var(--broskev); border-bottom:1.5px solid var(--broskev); transform:rotate(-45deg); }
.kalk-cena{ display:flex; justify-content:space-between; align-items:baseline; gap:16px; flex-wrap:wrap; border-top:1px solid rgba(255,255,255,.16); padding-top:18px; }
.kalk-cena span{ color:rgba(246,241,232,.6); font-size:.72rem; font-weight:500; letter-spacing:.16em; text-transform:uppercase; }
.kalk-cena strong{ font-size:clamp(1.5rem,3vw,2.1rem); font-weight:300; letter-spacing:-.03em; color:var(--broskev); }
.kalk-pozn{ color:rgba(246,241,232,.6); font-size:.85rem; margin-top:12px; }
.kalk-konec{ display:flex; gap:14px; align-items:center; flex-wrap:wrap; margin-top:22px; }
.d-les .btn-primary:hover{ background:#fff; color:var(--inkoust); }

/* ---------- zpráva po odeslání formuláře ---------- */
.form-zprava{ margin-top:16px; padding:14px 16px; border-left:2px solid var(--oranz); background:rgba(255,255,255,.06); color:#fff; font-size:.94rem; }
.form-zprava.ok{ border-left-color:var(--broskev); }
.form-zprava a{ color:var(--broskev); }

/* ---------- lišta souhlasu s měřením (vkládá ji /mereni.js) ---------- */
.cookies{ position:fixed; left:16px; right:16px; bottom:16px; z-index:80; max-width:560px; margin-left:auto;
  background:var(--krem); color:var(--inkoust); border:1px solid var(--linka); padding:18px 20px;
  box-shadow:0 18px 40px rgba(28,26,23,.18); display:grid; gap:14px; font-size:.9rem; }
.cookies p{ margin:0; color:var(--inkoust-mek); }
.cookies a{ color:var(--inkoust); }
.cookies-btn{ display:flex; gap:10px; flex-wrap:wrap; }

@media (max-width:900px){
  .d-dva{ grid-template-columns:1fr; }
  .d-tri,.d-cena{ grid-template-columns:1fr; }
  .d-kino-spodek{ grid-template-columns:1fr; }
  .d-dolu{ display:none; }
  .d-fakta{ grid-template-columns:1fr 1fr; row-gap:30px; }
  .d-fakta > div:nth-child(2n){ border-right:0; margin-right:0; }
  .d-menu{ display:none; }
  .d-pata-mrizka{ grid-template-columns:1fr 1fr; }
  .d-pas{ grid-template-columns:1fr; }
  .d-pas-foto{ min-height:260px; }
}
@media (max-width:520px){
  /* na telefonu se značka i tlačítko musí vejít na jeden řádek */
  .d-hlava .d-sirka{ gap:12px; height:62px; padding:0 18px; }
  .d-sirka{ padding:0 20px; }
  .d-znacka b, .d-hlava .d-tl{ white-space:nowrap; }
  .d-hlava .d-tl{ padding:10px 14px; font-size:.84rem; }
  .d-hero-cta .d-tl{ width:100%; }
  .d-kino{ min-height:100svh; }
  .d-kino-obsah{ padding:0 20px 28px; }
  .d-kino h1{ font-size:clamp(2.8rem, 14vw, 3.8rem); }
  .d-fakta{ grid-template-columns:1fr; }
  .d-fakta > div{ border-right:0; margin-right:0; padding:0 0 22px; border-bottom:1px solid var(--linka); }
  .d-fakta > div:last-child{ border-bottom:0; padding-bottom:0; }
  .d-ai{ top:72px; }
  .d-kino::after{ background:
    linear-gradient(180deg, rgba(10,12,11,.45) 0%, rgba(10,12,11,0) 18%),
    linear-gradient(0deg, rgba(10,12,11,.9) 0%, rgba(10,12,11,.6) 50%, rgba(10,12,11,.12) 78%); }
}
@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
  *,*::before,*::after{ animation:none !important; transition:none !important; }
  .d-odhal,.d-zvetsi,.d-slova .d-slovo > span,.d-opona img,
  .d-animuj .d-kino-pozadi,.d-animuj .d-kino-spodek > *{ opacity:1 !important; transform:none !important; clip-path:none !important; }
}
