@font-face{font-family:'Playfair Display';font-style:normal;font-weight:400;font-display:swap;src:url(pismo/playfair-display-400.woff2) format('woff2')}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:700;font-display:swap;src:url(pismo/playfair-display-700.woff2) format('woff2')}
@font-face{font-family:'Work Sans';font-style:normal;font-weight:400;font-display:swap;src:url(pismo/work-sans-400.woff2) format('woff2')}
@font-face{font-family:'Work Sans';font-style:normal;font-weight:700;font-display:swap;src:url(pismo/work-sans-700.woff2) format('woff2')}

:root{
  --podklad:#1D1915;
  --podklad-2:#26201B;
  --tmavy:#120F0C;
  --text:#F1E7D6;
  --text-tlumeny:#CDBFA9;
  --akcent:#D9923B;
  --na-akcentu:#1D1915;
  --vres:#8C6A7E;
  --vres-text:#BFA2B3;
  --na-tmavem:#F1E7D6;
  --linka:rgba(217,146,59,.45);
  --fokus:#F4C27F;
  --deska:rgba(29,25,21,.88);
  --nadpisy:'Playfair Display', Georgia, serif;
  --pismo:'Work Sans', system-ui, sans-serif;
  --kontejner:1200px;
  --okraj:max(16px, (100vw - var(--kontejner)) / 2);
  --vyska-hlavicky:64px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:calc(var(--vyska-hlavicky) + 12px);-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:var(--podklad);color:var(--text);font:400 17px/1.6 var(--pismo)}
img{max-width:100%;height:auto;display:block}
a{color:var(--text);text-decoration-color:var(--akcent);text-underline-offset:3px}
a:hover{color:var(--akcent)}
:focus-visible{outline:2px solid var(--fokus);outline-offset:3px}
h1,h2,h3{font-family:var(--nadpisy);font-weight:400;line-height:1.15;margin:0 0 .5em;text-wrap:balance}
h1{font-size:clamp(28px, 1.2rem + 2.2vw, 46px)}
h2{font-size:clamp(26px, 1.4rem + .6vw, 34px)}
h3{font-size:22px}
p{margin:0 0 1em}

.preskok{position:absolute;left:16px;top:-80px;z-index:50;background:var(--akcent);color:var(--na-akcentu);padding:12px 16px}
.preskok:focus{top:12px}

.nadpisek{font-size:16px;letter-spacing:.14em;text-transform:uppercase;color:var(--vres-text);margin:0 0 10px;display:flex;align-items:center;gap:10px}
.nadpisek::before{content:"";width:28px;height:1px;background:var(--akcent)}
.vedeni{color:var(--text-tlumeny);max-width:62ch;font-size:18px}
.drobne{color:var(--text-tlumeny);font-size:16px;max-width:66ch}
.dale a{display:inline-flex;align-items:center;min-height:44px;gap:8px;font-weight:700}
.dale a::after{content:"";width:8px;height:8px;border-top:2px solid var(--akcent);border-right:2px solid var(--akcent);transform:rotate(45deg)}

/* tlačítka */
.tl{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border-radius:2px;font-weight:700;font-size:16px;text-decoration:none;border:1px solid var(--akcent);transition:background-color .2s,color .2s}
.tl--hlavni{background:var(--akcent);color:var(--na-akcentu)}
.tl--hlavni:hover{background:#E8A955;color:var(--na-akcentu)}
.tl--obrys{background:transparent;color:var(--text)}
.tl--obrys:hover{background:var(--akcent);color:var(--na-akcentu)}
.tl--maly{min-height:44px;padding:8px 16px;font-size:15px}

/* ===== menu: odsun ===== */
html[data-menu-otevreno]{scroll-padding-top:0}
.menu-wr .jen-bezjs, html:not(.menu-wr) [data-menu-prepinac], html:not(.menu-wr) .zavrit{display:none}
.odsun{position:relative;z-index:1;background:var(--podklad)}
.menu{background:var(--tmavy);color:var(--text);padding:24px var(--okraj)}
.menu-wr .menu{position:fixed;inset:0;z-index:20;overflow-y:auto;background:var(--tmavy);padding:72px 32px 40px}
.menu-wr .menu:not([data-otevreno]){visibility:hidden}
.menu__nadpis{font-family:var(--nadpisy);font-size:22px;color:var(--akcent);margin-bottom:20px}
.menu ul{list-style:none;margin:0;padding:0}
.menu__obsah > ul > li{border-top:1px solid var(--linka);padding:6px 0}
.menu__odkaz{display:flex;align-items:center;min-height:44px;font-family:var(--nadpisy);font-size:24px;text-decoration:none}
.menu__pod{display:flex;flex-wrap:wrap;gap:0 18px;padding-bottom:6px}
.menu__pod a{display:inline-flex;align-items:center;min-height:44px;font-size:15px;color:var(--text-tlumeny);text-decoration:none}
.menu__pod a:hover{color:var(--akcent)}
.menu__obsah > .tl{margin-top:24px}
.menu__mail{display:flex;align-items:center;min-height:44px;margin-top:8px;color:var(--text-tlumeny);white-space:nowrap}
.zavrit{position:fixed;top:12px;right:var(--okraj);z-index:21;display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:8px 16px;background:var(--podklad);color:var(--text);border:1px solid var(--akcent);border-radius:2px;font:700 15px var(--pismo);cursor:pointer}
.zavrit__znak{width:16px;height:16px;position:relative}
.zavrit__znak::before,.zavrit__znak::after{content:"";position:absolute;left:0;top:7px;width:16px;height:2px;background:var(--akcent);transform:rotate(45deg)}
.zavrit__znak::after{transform:rotate(-45deg)}
@media (prefers-reduced-motion:no-preference){
  .menu-wr body{transition:background-color 0s .5s, overflow 0s .5s;transition-behavior:allow-discrete}
  html.menu-wr[data-menu-otevreno] body{background:var(--tmavy);overflow-x:clip;transition:none}
  .menu-wr .odsun{transform-origin:0 calc(var(--menu-posun-y, 0px) + 50vh);clip-path:inset(0 round 0);
    transition:transform .5s cubic-bezier(.7,0,.2,1), clip-path 0s .5s}
  html.menu-wr[data-menu-otevreno] .odsun{transform:translateX(42vw) scale(.85);transition:transform .5s cubic-bezier(.7,0,.2,1), clip-path 0s;
    clip-path:inset(var(--menu-posun-y, 0px) 0 calc(100% - var(--menu-posun-y, 0px) - 100vh) round 19px)}
  .menu-wr body::before{content:"";position:fixed;inset:0;z-index:0;border-radius:19px;box-shadow:0 32px 90px rgb(0 0 0 / .6), 0 0 0 1px var(--akcent);
    transform-origin:0 50%;opacity:0;pointer-events:none;transition:transform .5s cubic-bezier(.7,0,.2,1), opacity .5s}
  html.menu-wr[data-menu-otevreno] body::before{transform:translateX(42vw) scale(.85);opacity:1}
  .menu-wr .menu{right:auto;width:42vw;background:transparent;transition:visibility 0s .5s;padding:72px 40px 40px max(32px, 5vw)}
  .menu-wr .menu[data-otevreno]{transition-delay:0s}
  .zavrit{inset:0 0 0 42vw;background:transparent;border:0;padding:0;align-items:flex-start;justify-content:flex-start}
  .zavrit__text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .zavrit__znak{margin:14px 0 0 -22px;width:44px;height:44px;border-radius:50%;background:var(--akcent)}
  .zavrit__znak::before,.zavrit__znak::after{left:13px;top:21px;width:18px;background:var(--na-akcentu)}
  html.menu-wr:not([data-menu-otevreno]):has(.menu a:hover, .menu a:focus-visible) :is(body, .odsun, .menu),
  html.menu-wr:not([data-menu-otevreno]):has(.menu a:hover, .menu a:focus-visible) body::before{transition:none}
}
@media (prefers-reduced-motion:no-preference) and (max-width:760px){
  html.menu-wr[data-menu-otevreno] .odsun,
  html.menu-wr[data-menu-otevreno] body::before{transform:translateX(calc(100vw - 64px)) scale(.86)}
  .menu-wr .menu{width:calc(100vw - 64px);padding:64px 20px 32px}
  .zavrit{left:calc(100vw - 64px)}
  .zavrit__znak{margin:14px 0 0 -10px}
}

/* hlavička */
.hlavicka{position:sticky;top:0;z-index:10;background:var(--deska);border-bottom:1px solid var(--linka)}
.hlavicka__radek{display:flex;align-items:center;gap:20px;min-height:var(--vyska-hlavicky);padding:8px var(--okraj)}
.hlavicka__logo{margin-right:auto;font-family:var(--nadpisy);font-size:22px;text-decoration:none;white-space:nowrap;line-height:1.2}
.hlavicka__logo span{font-family:var(--pismo);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--akcent);margin-left:6px}
.hlavicka__odkaz{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;font-size:15px}
.prepinac{order:3;display:inline-flex;align-items:center;gap:10px;min-height:44px;min-width:44px;padding:8px 14px;background:transparent;color:var(--text);border:1px solid var(--akcent);border-radius:2px;font:700 15px var(--pismo);cursor:pointer}
.prepinac__car{width:18px;height:2px;background:var(--akcent);box-shadow:0 -6px 0 var(--akcent),0 6px 0 var(--akcent)}
.jen-bezjs{order:3;display:inline-flex;align-items:center;min-height:44px}
@media (max-width:899px){
  .hlavicka__odkaz{display:none}
  .prepinac__text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .prepinac{padding:8px 12px}
  .hlavicka__radek{gap:12px}
}
@media (max-width:420px){.hlavicka__logo span{display:none}}
@media (max-width:359px){.hlavicka__tl{display:none}}

/* ===== úvod U2 ===== */
.u2{position:relative;display:grid;align-items:end;min-height:clamp(560px, 50vw, 860px);padding:48px var(--okraj)}
.u2__foto{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 80%}
.u2__deska{position:relative;justify-self:start;max-width:min(500px, 60%);padding:30px 34px;background:var(--deska);border:1px solid var(--akcent)}
.u2__perex{color:var(--text);font-size:18px}
.u2__cena{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline;padding:12px 0;margin:0 0 20px;border-top:1px solid var(--linka);border-bottom:1px solid var(--linka)}
.u2__cena b{font-family:var(--nadpisy);font-size:30px;color:var(--akcent);font-weight:700}
.u2__cena span:last-child{color:var(--text-tlumeny);font-size:16px}
.u2__akce{display:flex;flex-wrap:wrap;gap:12px}
.u2__popisek{position:absolute;top:24px;right:var(--okraj);margin:0;padding:6px 12px;font-size:16px;background:var(--deska);border:1px solid var(--linka);color:var(--text)}
@media (max-width:899px){
  .u2{display:block;min-height:0;padding:0}
  .u2__foto{position:static;height:auto;aspect-ratio:16 / 10;max-height:45svh;object-position:50% 45%}
  .u2__deska{max-width:none;padding:24px 16px 32px;background:var(--podklad);border:0;border-bottom:1px solid var(--linka)}
  .u2__popisek{display:none}
}

/* ===== páteř: polovina ===== */
[data-pater-stojan]{display:none}
.polovina__drzak{position:relative}
.polovina__drzak img{width:100%;aspect-ratio:16 / 10;object-fit:cover}
.deska{margin:0;padding:10px 16px;background:var(--deska);border-top:1px solid var(--akcent);font-size:16px;color:var(--text)}
.deska span{font-family:var(--nadpisy);color:var(--akcent);margin-right:10px}
.polovina__oddil{padding:40px 16px 56px;border-bottom:1px solid var(--linka)}
@media (min-width:900px){
  .polovina{display:grid;grid-template-columns:5fr 7fr}
  .polovina__obraz{grid-column:1;grid-row:var(--r)}
  .polovina__oddil{grid-column:2;grid-row:var(--r);padding:clamp(64px, 11vh, 112px) clamp(24px, 4.5vw, 72px);border-bottom:0;border-left:1px solid var(--linka)}
  .polovina__oddil:first-of-type{min-height:calc(100vh - var(--vyska-hlavicky))}
  .polovina__drzak{position:sticky;top:var(--vyska-hlavicky);height:min(calc(100vh - var(--vyska-hlavicky)), 100%);display:flex;flex-direction:column}
  .polovina__drzak img{flex:1;min-height:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover}
  .polovina__drzak .deska{position:absolute;left:24px;right:24px;bottom:24px;border:1px solid var(--akcent)}
  [data-pater-jede] > [data-pater-stojan]{display:block;grid-column:1;grid-row:1 / span var(--pater-pocet);
    align-self:start;position:sticky;top:var(--vyska-hlavicky);height:calc(100vh - var(--vyska-hlavicky));z-index:1;visibility:hidden}
  [data-pater-kopie]{position:absolute;inset:0;opacity:0;transition:opacity .7s}
  [data-pater-kopie][data-aktivni]{opacity:1}
  [data-pater-stoji] > [data-pater-stojan]{visibility:visible}
  [data-pater-stoji] > [data-pater-obraz]{visibility:hidden}
}
@media (prefers-reduced-motion:reduce){[data-pater-kopie]{transition:none}}

/* ===== V ceně: lístek ===== */
.listek{list-style:none;margin:28px 0 0;padding:0;display:grid;grid-template-columns:1fr;gap:8px 40px}
@media (min-width:1100px){.listek{grid-template-columns:1fr 1fr}}
.listek__polozka{padding:14px 0;border-top:1px solid var(--linka)}
.listek__polozka > p:last-child{margin:6px 0 0;color:var(--text-tlumeny);font-size:16px}
.listek__radek{display:flex;align-items:baseline;gap:8px;margin:0}
.listek__nazev{display:inline-flex;align-items:center;gap:10px;font-family:var(--nadpisy);font-size:21px}
.listek__nazev svg{color:var(--akcent);flex:none;align-self:center}
.listek__tecky{flex:1;min-width:16px;border-bottom:2px dotted var(--vres);transform:translateY(-5px)}
.listek__hodnota{color:var(--akcent);font-weight:700;font-size:16px;text-align:right}
.listek__nadpis{margin:36px 0 0;font-size:20px;color:var(--vres-text)}
.listek--drobny{margin-top:12px;gap:0 40px}
.listek--drobny .listek__polozka{padding:10px 0}
.listek--drobny .listek__nazev{font-family:var(--pismo);font-size:16px}

/* ===== Pokoje a řez ===== */
.rez{margin:32px 0 36px}
.rez__scena{display:grid;grid-template-columns:repeat(3, 1fr);gap:12px}
.rez__scena img{display:block;width:100%;aspect-ratio:16 / 9;object-fit:cover;border:1px solid var(--linka)}
.motor-rez .rez__scena{position:relative;grid-template-columns:1fr;gap:0;aspect-ratio:16 / 9;overflow:hidden;touch-action:pan-y;user-select:none;border:1px solid var(--akcent)}
.motor-rez .rez__scena img{grid-area:1 / 1;height:100%;aspect-ratio:auto;border:0}
.rez__ovladani{display:flex;align-items:center;gap:16px;margin-top:14px;font-size:16px;color:var(--text-tlumeny)}
.rez__ovladani input{flex:1;height:44px;accent-color:var(--akcent);cursor:pointer}
html:not(.motor-rez) .rez__ovladani{display:none}
.rez__popisky{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:repeat(3, 1fr);gap:12px;font-size:16px;color:var(--text-tlumeny)}
.rez__popisky li{padding:10px 12px;border-top:2px solid var(--linka);transition:border-color .3s,color .3s}
.rez__popisky b{display:block;font-family:var(--nadpisy);font-weight:400;font-size:19px;color:var(--text)}
.rez__popisky li[aria-current]{border-top-color:var(--akcent);color:var(--text)}
.rez__popisky li[aria-current] b{color:var(--akcent)}
@media (max-width:599px){
  .rez__scena,.rez__popisky{grid-template-columns:1fr}
  .motor-rez .rez__popisky{grid-template-columns:1fr}
}

.pokoje{display:grid;gap:16px}
.pokoj{display:grid;grid-template-columns:1fr auto;gap:20px 28px;align-items:end;padding:24px;background:var(--podklad-2);border:1px solid var(--linka);border-left:3px solid var(--akcent)}
.pokoj h3{margin-bottom:8px}
.pokoj__text p{margin-bottom:12px;color:var(--text-tlumeny)}
.pokoj__vybava{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 8px}
.pokoj__vybava li{font-size:16px;padding:4px 10px;border:1px solid var(--vres);color:var(--vres-text);border-radius:2px}
.pokoj__cena{text-align:right}
.pokoj__cena p{margin:0 0 12px;font-size:16px;color:var(--text-tlumeny);white-space:nowrap}
.pokoj__cena b{display:block;font-family:var(--nadpisy);font-size:34px;color:var(--akcent);line-height:1.1}
@media (max-width:599px){
  .pokoj{grid-template-columns:1fr;padding:20px 16px}
  .pokoj__cena{text-align:left}
  .pokoj__cena .tl{width:100%}
}

/* ===== Kalkulačka ===== */
.kalk{display:grid;grid-template-columns:minmax(0, 1.6fr) minmax(0, 1fr) minmax(0, 1fr);gap:18px 20px;margin-top:28px;padding:24px;border:1px solid var(--linka);background:var(--podklad-2)}
.kalk__pole{display:flex;flex-direction:column;gap:6px}
.kalk label,.kalk legend{font-size:16px;color:var(--text-tlumeny)}
.kalk select,.kalk input[type=number]{min-height:48px;padding:8px 12px;font:400 17px var(--pismo);color:var(--text);background:var(--podklad);border:1px solid var(--vres);border-radius:2px;width:100%}
.kalk__volba{grid-column:span 3;display:flex;flex-wrap:wrap;gap:8px 20px;margin:0;padding:0;border:0}
.kalk__volba legend{float:left;width:100%;margin-bottom:6px}
.kalk__volba label{display:inline-flex;align-items:center;gap:10px;min-height:44px;color:var(--text);font-size:16px;cursor:pointer}
.kalk__volba input{width:20px;height:20px;accent-color:var(--akcent)}
.kalk__vysledek{grid-column:1 / -1;display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px 20px;padding-top:18px;border-top:1px solid var(--akcent)}
.kalk__popis{margin:0;color:var(--text-tlumeny);font-size:16px}
.kalk__cena{grid-row:span 2;grid-column:2;margin:0;font-family:var(--nadpisy);font-size:46px;line-height:1;color:var(--akcent)}
.kalk__pozn{margin:0;font-size:16px}
.kalk__vysledek .tl{grid-column:1 / -1;justify-self:start;margin-top:12px}
.kalk + .drobne{margin-top:16px}
@media (max-width:599px){
  .kalk{grid-template-columns:1fr 1fr;padding:18px 14px}
  .kalk__pole:first-child{grid-column:1 / -1}
  .kalk__volba{grid-column:1 / -1}
  .kalk__cena{font-size:38px}
  .kalk__vysledek .tl{width:100%}
}

/* ===== Okolí: léto a zima ===== */
.sezony{margin-top:24px}
.sezony__vstup{position:absolute;opacity:0;width:1px;height:1px}
.sezony__prepinac{display:inline-flex;border:1px solid var(--akcent);border-radius:2px;margin-bottom:20px}
.sezony__prepinac label{display:inline-flex;align-items:center;min-height:44px;padding:8px 22px;cursor:pointer;font-weight:700}
#sez-leto:checked ~ .sezony__prepinac label[for=sez-leto],
#sez-zima:checked ~ .sezony__prepinac label[for=sez-zima]{background:var(--akcent);color:var(--na-akcentu)}
#sez-leto:focus-visible ~ .sezony__prepinac label[for=sez-leto],
#sez-zima:focus-visible ~ .sezony__prepinac label[for=sez-zima]{outline:2px solid var(--fokus);outline-offset:3px}
#sez-leto:checked ~ .tipy--zima,#sez-zima:checked ~ .tipy--leto{display:none}
.tipy{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:16px}
.tipy li{padding:20px;border:1px solid var(--linka);background:var(--podklad-2)}
.tipy h3{font-size:21px}
.tipy p{color:var(--text-tlumeny);font-size:16px;margin-bottom:10px}
.tipy__vzdalenost{color:var(--vres-text)!important;font-size:16px!important;letter-spacing:.06em;text-transform:uppercase;margin:0!important}
@media (max-width:599px){.tipy{grid-template-columns:1fr}}

/* ===== Ceník: balíčky ===== */
.balicky{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:1fr;gap:16px;margin:28px 0 20px}
.balicek{display:flex;flex-direction:column;padding:22px 20px;border:1px solid var(--linka);background:var(--podklad-2)}
.balicek h3{font-size:21px;margin-bottom:10px}
.balicek__cena{margin:0 0 8px;color:var(--text-tlumeny);font-size:16px}
.balicek__cena b{display:block;font-family:var(--nadpisy);font-size:40px;line-height:1.1;color:var(--akcent)}
.balicek__text{color:var(--text-tlumeny);font-size:16px}
.balicek .tl{margin-top:auto}
@media (max-width:479px){.balicky{grid-template-columns:1fr;grid-auto-rows:auto}}

/* ===== Otázky ===== */
.otazky{max-width:820px;margin-top:24px;border-top:1px solid var(--linka)}
.otazky details{border-bottom:1px solid var(--linka)}
.otazky summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;padding:12px 0;cursor:pointer;font-family:var(--nadpisy);font-size:21px;list-style:none}
.otazky summary::-webkit-details-marker{display:none}
.otazky summary::after{content:"+";flex:none;width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--akcent);color:var(--akcent);font-family:var(--pismo)}
.otazky details[open] summary::after{content:"–"}
.otazky details p{color:var(--text-tlumeny);padding-bottom:8px}

/* ===== Cesta ===== */
.cesta{margin:24px 0 8px;display:grid;gap:0}
.cesta > div{display:grid;grid-template-columns:170px 1fr;gap:16px;padding:16px 0;border-top:1px solid var(--linka)}
.cesta dt{font-family:var(--nadpisy);font-size:20px;color:var(--akcent)}
.cesta dd{margin:0;color:var(--text-tlumeny)}
@media (max-width:599px){.cesta > div{grid-template-columns:1fr;gap:4px}}

/* ===== Kontakt ===== */
.vyzva{display:grid;justify-items:center;text-align:center;gap:6px;padding:64px var(--okraj);background:var(--tmavy);border-top:1px solid var(--akcent);border-bottom:1px solid var(--akcent)}
.vyzva .nadpisek{justify-content:center}
.vyzva h2{font-size:clamp(22px, 1rem + .6vw, 28px);margin:0}
.vyzva__tel{font-family:var(--nadpisy);font-size:clamp(32px, 1.2rem + 2.4vw, 48px);color:var(--akcent);text-decoration:none;white-space:nowrap;line-height:1.2;margin:6px 0 18px;min-height:44px}
.vyzva__tel:hover{color:var(--text)}
.kontakt__radek{display:grid;grid-template-columns:5fr 7fr;gap:40px;align-items:center;padding:56px var(--okraj)}
.kontakt__udaje dl{margin:16px 0 0}
.kontakt__udaje dl > div{padding:12px 0;border-top:1px solid var(--linka)}
.kontakt__udaje dt{font-size:16px;letter-spacing:.14em;text-transform:uppercase;color:var(--vres-text)}
.kontakt__udaje dd{margin:2px 0 0;font-size:18px;white-space:nowrap}
.kontakt__udaje dd a{display:inline-flex;align-items:center;min-height:44px}
.kontakt__mapa{margin:0}
.kontakt__mapa img{width:100%;aspect-ratio:3 / 2;object-fit:cover;border:1px solid var(--akcent)}
.kontakt__mapa figcaption{font-size:16px;color:var(--text-tlumeny);margin-top:8px}
@media (max-width:899px){
  .kontakt__radek{grid-template-columns:1fr;gap:24px;padding:40px 16px}
  .kontakt__udaje dd{white-space:normal}
  .kontakt__udaje dd a{white-space:nowrap}
}

/* ===== Patička ===== */
.paticka{background:var(--tmavy);border-top:1px solid var(--linka);padding:48px var(--okraj) 32px}
.paticka__mapa{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:24px 32px}
@media (min-width:1100px){.paticka__mapa{grid-template-columns:repeat(7, minmax(0, 1fr));gap:24px 20px}}
.paticka h3{font-family:var(--pismo);font-size:16px;letter-spacing:.14em;text-transform:uppercase;color:var(--akcent);margin-bottom:8px}
.paticka ul{list-style:none;margin:0;padding:0}
.paticka li a{display:inline-flex;align-items:center;min-height:36px;font-size:16px;color:var(--text-tlumeny);text-decoration:none}
.paticka li a:hover{color:var(--akcent)}
.paticka__spodek{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 32px;margin-top:40px;padding-top:20px;border-top:1px solid var(--linka);font-size:16px;color:var(--text-tlumeny)}
.paticka__spodek a{display:inline-flex;align-items:center;min-height:44px}
@media (max-width:599px){.paticka li a{min-height:44px}}

/* Completion: shared pages, same palette and typography. */
button,input,select{font-family:var(--pismo)}
button.tl{cursor:pointer;line-height:1.6}
[hidden]{display:none!important}
.kalk__rozpis{grid-column:1 / -1;list-style:none;padding:12px 0 0;margin:0;color:var(--text-tlumeny);font-size:16px}
[data-kalk-mail]{grid-column:1 / -1;min-height:44px;display:inline-flex;align-items:center}
.stranka-uvod{max-width:1280px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;padding:48px 40px}
.stranka-uvod p{max-width:60ch;color:var(--text-tlumeny)}
.stranka-uvod figure{margin:0}
.stranka-uvod img{width:100%;aspect-ratio:3 / 2;object-fit:cover;border:1px solid var(--akcent)}
.stranka-uvod figcaption{font-size:16px;color:var(--text-tlumeny);margin-top:10px}
.stranka-obsah{max-width:1280px;margin:0 auto;padding:48px 40px;border-top:1px solid var(--linka)}
.stranka-obsah>p{max-width:85ch}
.stranka-uzka{max-width:900px}
.balicky--uplne{grid-template-columns:repeat(4,minmax(0,1fr));padding:0;list-style:none;align-items:stretch;grid-auto-rows:auto}
.balicky--uplne .balicek--doplnkovy{grid-column:span 2}
.balicky--uplne .balicek__cena{min-height:96px}
.balicky--uplne .balicek__text{flex:1}
.sezony__tlacitka{display:none}
[data-pripraveno] .sezony__tlacitka{display:inline-flex}
.sezony__tlacitka button{padding:12px 24px;min-height:48px;background:transparent;color:var(--text);border:0;cursor:pointer;font-size:17px}
.sezony__tlacitka [aria-selected=true]{background:var(--akcent);color:var(--na-akcentu)}
[role=tabpanel]+[role=tabpanel]{margin-top:40px}
.sbalit{margin-top:28px}
.poznamka{margin-top:40px;padding:24px;background:var(--podklad-2);border:1px solid var(--linka)}
.postup{display:grid;grid-template-columns:4fr 7fr;gap:56px}
.postup__hlava{display:flex;flex-direction:column;justify-content:space-between;align-items:start;gap:24px}
.postup ol{list-style:none;margin:0;padding:0;counter-reset:krok}
.postup li{display:grid;grid-template-columns:56px 1fr;gap:20px;padding:24px 0;border-top:1px solid var(--linka);counter-increment:krok}
.postup__cislo::before{content:counter(krok,decimal-leading-zero);font-family:var(--nadpisy);font-size:32px;color:var(--akcent)}
.kontakt__radek--stranka{padding:0;align-items:stretch}
.kontakt__radek--stranka .kontakt__mapa{display:flex;flex-direction:column}
.kontakt__radek--stranka .kontakt__mapa img{height:100%;min-height:360px;flex:1}
.kontakt__radek--stranka figcaption{flex:none}
.paticka__mapa{grid-template-columns:repeat(3,minmax(0,1fr))}
.paticka__mapa p{font-size:16px;color:var(--text-tlumeny)}
.paticka__spodek p:first-child{max-width:78ch}
@media(min-width:900px){.pokoj{grid-template-columns:1fr}.pokoj__cena{text-align:left}.pokoj__cena b{display:inline}}
@media(max-width:899px){
.stranka-uvod{grid-template-columns:1fr;padding:32px 16px;gap:32px}
.stranka-obsah{padding:32px 16px}
.postup{grid-template-columns:1fr;gap:28px}
.balicky--uplne{grid-template-columns:repeat(2,minmax(0,1fr))}
.balicky--uplne .balicek--doplnkovy{grid-column:auto}
h1{font-size:34px}
}
@media(max-width:599px){
.paticka__mapa,.balicky--uplne{grid-template-columns:1fr}
.kalk__cena{font-size:34px}
.balicky--uplne .balicek__cena{min-height:0}
.vyzva__tel{font-size:30px}
.postup li{grid-template-columns:40px 1fr;gap:12px}
}
@media(max-width:479px){
.hlavicka__logo{display:none}
.hlavicka__tl{display:inline-flex;margin-right:auto;font-size:16px;padding:8px 10px;white-space:nowrap}
.hlavicka__radek{gap:8px}
}
@media(prefers-reduced-motion:reduce){
*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}
}

