/* Vinotéka Úponek (ukázka FORMA, smyšlený podnik; generuje vizitka/tools/ukazka-uponek.py). Identita: stránka je nalévání vína, nahoře ryzlink, dole frankovka, celou stránkou roste jedna réva. */
@font-face{font-family:'Fraunces';font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/fraunces-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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/fraunces-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}
@font-face{font-family:'Fraunces Fallback';src:local('Georgia');size-adjust:103%}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/source-sans-3-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}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/source-sans-3-cs.woff2) format('woff2');unicode-range:U+10C-10F,U+11A-11B,U+147-148,U+158-159,U+160-161,U+164-165,U+16E-16F,U+17D-17E}

:root{
  --ryz:#ece7a4;--ryz2:#f6f2cb;--zla:#e3d27a;--jan:#d9a441;--ruz:#d2645f;--rub:#962145;--fra:#571235;--skl:#290c23;--skl2:#1c0819;
  --list:#2c5426;--list2:#4d8030;--mlady:#cfe08a;
  --ink:#28101f;--ink2:#533347;
  --serif:'Fraunces','Fraunces Fallback',Georgia,'Times New Roman',serif;
  --sans:'Source Sans 3',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --pad:1.25rem;--top:3.75rem;
  --h1:clamp(3.35rem,14.4vw,5rem);--h2:clamp(2.75rem,11.6vw,4rem);--lead:1.25rem;
}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none !important}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--top) + .8rem);background:var(--ryz);scrollbar-color:var(--rub) var(--ryz)}
body{margin:0;font:400 1.0625rem/1.55 var(--sans);color:var(--ink);background:var(--ryz);overflow-x:hidden;overflow-x:clip}
h1,h2,h3,.lt{font-family:var(--serif);font-weight:560;margin:0;letter-spacing:-.012em}
h1,h2{line-height:1;text-wrap:balance;letter-spacing:-.022em}
h1{font-size:var(--h1)}
h2{font-size:var(--h2)}
h3{font-size:1.4rem;line-height:1.14}
p{margin:0 0 .9em}
a{color:inherit;text-underline-offset:.2em}
svg{display:block;max-width:100%}
::selection{background:var(--rub);color:var(--ryz2)}
input,textarea{caret-color:var(--rub)}
:focus-visible{outline:3px solid var(--ink);outline-offset:3px;border-radius:2px}
.regal :focus-visible,.temata :focus-visible,.konec :focus-visible,.kontakt :focus-visible,.foot :focus-visible,.degustace .tast-copy :focus-visible,.pult :focus-visible{outline-color:var(--ryz)}
.vh{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.defs{position:absolute;width:0;height:0;overflow:hidden}
.skip{position:absolute;left:.5rem;top:-4rem;z-index:60;background:var(--ink);color:var(--ryz);padding:.6rem .9rem;font-weight:700}
.skip:focus{top:.5rem}
.nw{white-space:nowrap}
.fine{font-size:1rem;margin-top:.8rem}
.lead{font-size:var(--lead);line-height:1.42}
.stranka{position:relative;isolation:isolate}
main,section,.foot{position:relative}
.wrap{position:relative;z-index:2;width:min(100% - 2*var(--pad),92rem);margin-inline:auto}

/* réva: zadní vrstva leží pod obsahem, přední nad ním, kreslí ji skript */
.reva{position:absolute;left:0;top:0;width:100%;height:100%;overflow:hidden;pointer-events:none;fill:none}
.reva-zad{z-index:1}
.reva-pred{z-index:3}
.rc{fill:none;stroke-linecap:round;stroke-linejoin:round}
.r-sv{stroke:#2f5f26}.r-ze{stroke:#b9d070}.r-tm{stroke:#a3bd58}.r-vi{stroke:#e3d27a}.r-ko{stroke:#ece7a4}
.t-sv{--l1:#2f5f26;--l2:#4d8030;--lv:#d4e394;--g1:#3c1b4f;--g2:#8d6aa6;--gs:#2f5f26}
.t-ze{--l1:#7fa23e;--l2:#a9c65a;--lv:#2c5426;--g1:#2a1238;--g2:#7f5a99;--gs:#b9d070}
.t-tm{--l1:#47702c;--l2:#6b9638;--lv:#cfe08a;--g1:#7a3d8c;--g2:#c79dd6;--gs:#a3bd58}
.t-vi{--l1:#3f6a2c;--l2:#5f8c36;--lv:#d4e394;--g1:#2a0d33;--g2:#a06db8;--gs:#e3d27a}
.t-ko{--l1:#47702c;--l2:#6b9638;--lv:#cfe08a;--g1:#7a3d8c;--g2:#c79dd6;--gs:#ece7a4}
.t-st{--l1:#2f5f26;--l2:#4d8030;--lv:transparent}
.lf1{fill:var(--l1)}.lf2{fill:var(--l2)}
.lfv{fill:none;stroke:var(--lv);stroke-width:1.6;stroke-linecap:round}
.g1{fill:var(--g1)}
.g2{fill:none;stroke:var(--g2);stroke-width:2.4;stroke-linecap:round}
.gs{fill:none;stroke:var(--gs);stroke-width:3.2;stroke-linecap:round}
.rp{fill:none;stroke-linecap:round}
.ru{fill:none;stroke-linecap:round;stroke-width:1.7}
.ro{transform-origin:0 0}
.reva .ro{transform:scale(.12) rotate(-22deg);opacity:0;transition:transform .8s cubic-bezier(.2,.75,.25,1),opacity .25s}
.reva .on>.ro{transform:none;opacity:1}
.reva .ru{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .9s cubic-bezier(.3,.5,.3,1)}
.reva .ru.on{stroke-dashoffset:0}
.reva.hned .ro,.reva.hned .ru{transition:none}
.tip{fill:none;stroke-linecap:round;stroke-width:2.2}
.carka{fill:var(--ryz)}

/* tlačítka */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:3.25rem;padding:.6rem 1.6rem;border:0;border-radius:999px;background:var(--rub);color:var(--ryz2);font:700 1.125rem/1.15 var(--sans);text-decoration:none;cursor:pointer;transition:background .18s,color .18s,transform .14s}
.btn:hover{background:#7b1737}
.btn:active{transform:translateY(1px)}
.btn-line{background:transparent;color:inherit;box-shadow:inset 0 0 0 2px currentColor}
.btn-line:hover{background:var(--ink);color:var(--ryz)}
.btn-sm{min-height:2.75rem;padding:.4rem 1.1rem;font-size:1.0625rem}
.cta{display:flex;flex-wrap:wrap;gap:.7rem;margin:1.5rem 0 0}

/* záhlaví: světlé v prodejně, tmavé ve sklepě, ve scéně se schová */
.top{position:sticky;top:0;z-index:40;background:var(--ryz);color:var(--ink);transition:transform .32s cubic-bezier(.3,.6,.3,1)}
.top.pryc:not(:focus-within){transform:translateY(-101%)}
.top.tma{background:var(--skl2);color:var(--ryz2)}
.top.tma .btn{background:var(--ryz);color:var(--ink)}
.top.tma .btn:hover{background:#fff}
.top-in{display:flex;align-items:center;gap:.6rem;min-height:var(--top);width:min(100% - 2*var(--pad),92rem);margin-inline:auto}
.brand{display:flex;flex-direction:column;line-height:1;text-decoration:none;margin-right:auto}
.brand-w{font:600 1.5rem/1 var(--serif);letter-spacing:-.015em}
.brand-s{font-size:.875rem;margin-top:.14rem}
.nav{display:none}

/* úvod */
.hero{background:var(--ryz);overflow:hidden;overflow:clip}
.hero-in{position:relative;z-index:2;display:grid}
.hero-t{padding:1.5rem var(--pad) 1.6rem}
.lede{font-size:1.25rem;line-height:1.4;margin:1rem 0 0;max-width:34rem}
.hero-fakta{display:none}
.hero-art{position:relative;width:min(100%,27rem);margin-inline:auto}
.oblouk{width:100%;height:auto;overflow:visible}
.r-uvod .h-reva{fill:none;stroke:#2f5f26;stroke-width:6;stroke-linecap:round}
.arch-in{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--ryz2);padding:12% 7% 15%}
.lamp{position:absolute;top:0;left:50%;width:1.05rem;height:1.05rem;margin-left:-.525rem;border-radius:50%;background:#6d5560}
.lamp::before{content:"";position:absolute;left:50%;bottom:100%;width:2px;height:3rem;background:#6d5560;margin-left:-1px}
.live{display:block;width:100%}
.live.is-open .lamp{background:#ffe9a8;box-shadow:0 0 0 .3rem rgb(255 225 150 / .22),0 0 2.2rem .8rem rgb(244 196 96 / .5)}
.live-main{font:560 clamp(1.7rem,8vw,2.5rem)/1.02 var(--serif);letter-spacing:-.015em;margin:0 0 .4rem}
.live.is-open .live-main{color:#ffe9a8}
.live-sub{margin:0;font-size:1.125rem;line-height:1.3}

/* pult: zelený pás a osm lahví stojících na hraně */
.pult{background:var(--list);color:var(--ryz2);padding-top:3.2rem}
.pult h2{color:var(--ryz)}
.pult-hlava{display:grid;gap:1rem}
.pult-txt p:last-child{margin-bottom:0}
.lahve{position:relative;z-index:2;list-style:none;margin:2.4rem auto 0;padding:0;width:min(100% - 2*var(--pad),92rem);display:grid;grid-template-columns:repeat(8,minmax(0,1fr));column-gap:.3rem}
.lahve li{display:contents}
.lahve::before{content:"";position:absolute;grid-column:1/-1;grid-row-start:2;left:calc(50% - 50vw);right:calc(50% - 50vw);top:0;bottom:0;background:var(--ryz);z-index:-1}
.lh{grid-row:1;width:100%;height:auto;align-self:end;transition:transform .2s cubic-bezier(.3,.6,.3,1)}
.lahve li:not(#lahev-h):hover .lh{transform:translateY(-.5rem)}
.stitek{fill:#f6f2cb}
.lh-t{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;gap:0 .8rem;align-items:baseline;margin:0;padding:.62rem 0;color:var(--ink);border-bottom:1px solid rgb(40 16 31 / .22)}
.lh-t b{font:560 1.3rem/1.15 var(--serif);letter-spacing:-.01em}
.lh-t span{grid-row:2;color:var(--ink2)}
.lh-t em{grid-row:1/span 2;align-self:center;font:560 1.45rem/1 var(--serif);color:var(--rub)}
.lh-t em,.card-p b,.facts b,.hours td,.t-v{font-variant-numeric:lining-nums tabular-nums}

/* služby: visačky na drátě */
.sluzby{background:var(--ryz);padding:3.4rem 0 3rem}
.sl-hlava{display:grid;gap:.8rem}
.drat{display:none}
.visacky{position:relative;z-index:2;list-style:none;margin:2rem auto 0;padding:0;width:min(100% - 2*var(--pad),92rem);display:grid;gap:.7rem}
.v{position:relative;padding:1.05rem 1.2rem 1.1rem 3.6rem;border-radius:999px 14px 14px 999px;background:var(--ryz2);color:var(--ink)}
.v::before{content:"";position:absolute;left:1.3rem;top:50%;width:1rem;height:1rem;margin-top:-.5rem;border-radius:50%;background:var(--ryz);box-shadow:inset 0 0 0 2px rgb(40 16 31 / .55)}
.v h3{margin-bottom:.2rem}
.v p{margin:0}
.v2{background:var(--jan)}.v3{background:var(--list);color:var(--ryz2)}.v4{background:var(--ruz)}.v6{background:var(--rub);color:var(--ryz2)}

/* prostor: předsíň scény */
.prostor{background:var(--ryz);padding:2.6rem 0 1.4rem}
.prostor-in{display:grid;gap:1.2rem}
.cisla{list-style:none;margin:1.6rem 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.cisla b{display:block;font:560 clamp(3.6rem,17vw,5rem)/1 var(--serif);letter-spacing:-.02em;color:var(--rub);font-variant-numeric:lining-nums}
.cisla span{display:block;line-height:1.3;margin-top:.25rem}

/* sestup do sklepa */
.sestup{background:var(--skl)}
.stage{position:relative;z-index:5;height:100vh;height:100svh;overflow:hidden;background:var(--ryz);--u:min(1.25vw,1.15vh);--oko:72%;--z:1;perspective:calc(var(--u)*110);perspective-origin:50% var(--oko)}
.pohyb .sestup{height:440vh}
.pohyb .stage{position:sticky;top:0;height:100vh;height:100svh;--oko:57%}
.tunel{position:absolute;left:50%;top:var(--oko);width:0;height:0;transform-style:preserve-3d;will-change:transform}
.ram{position:absolute;left:calc(var(--u)*-75/var(--z));top:calc(var(--u)*-95/var(--z));width:calc(var(--u)*150/var(--z));height:calc(var(--u)*190/var(--z));max-width:none;overflow:visible;will-change:transform;backface-visibility:hidden}
.sc{position:absolute;left:calc(var(--u)*-50);top:0;width:calc(var(--u)*100);transform-origin:50% 0}
.dno{position:absolute;left:calc(var(--u)*-50);top:0;width:calc(var(--u)*100);height:calc(var(--u)*260);transform-origin:50% 0;background:var(--skl)}
.dno-s{left:calc(var(--u)*-400);width:calc(var(--u)*800);visibility:hidden}
.zed-v{visibility:hidden}
.zed,.zed-v{position:absolute;max-width:none;overflow:visible}
.zed{left:calc(var(--u)*-100);top:calc(var(--u)*-100);width:calc(var(--u)*200);height:calc(var(--u)*200)}
.zed-v{left:calc(var(--u)*-50);top:calc(var(--u)*-50);width:calc(var(--u)*100);height:calc(var(--u)*100)}
.kabel{position:absolute;left:calc(var(--u)*-.8);bottom:0;top:auto;width:calc(var(--u)*1.6);height:calc(var(--u)*300);background:#14060f}
.rv0{pointer-events:none}
.rv0-c{fill:none;stroke:#2f5f26;stroke-width:11;stroke-linecap:round;stroke-dasharray:1}
.pohyb .rv0-c{stroke-dashoffset:1;transition:stroke-dashoffset 1.3s cubic-bezier(.3,.4,.3,1)}
.pohyb .rv0 .ro{transform:scale(.1) rotate(-20deg);opacity:0;transition:transform .7s cubic-bezier(.2,.75,.25,1),opacity .2s}
.pohyb .rv0.on .rv0-c{stroke-dashoffset:0}
.pohyb .rv0.on .ro{transform:none;opacity:1}
.d1{transition-delay:.1s !important}.d2{transition-delay:.2s !important}.d3{transition-delay:.3s !important}.d4{transition-delay:.4s !important}.d5{transition-delay:.5s !important}.d6{transition-delay:.6s !important}.d7{transition-delay:.7s !important}.d8{transition-delay:.8s !important}.d9{transition-delay:.9s !important}
.zabradli{position:absolute;left:0;top:calc(var(--u)*-20);width:calc(var(--u)*390);height:calc(var(--u)*40);max-width:none;transform-origin:0 50%;overflow:visible;will-change:transform}
.hud{position:absolute;inset:0;z-index:2;pointer-events:none;color:var(--ink);transition:color .25s}
.stage.tma .hud{color:var(--ryz2)}
.hud-t{position:absolute;left:var(--pad);top:1.1rem}
.t-v{margin:0;font:500 clamp(4.4rem,21vw,5.8rem)/.92 var(--serif);letter-spacing:-.025em}
.t-j{font-size:.5em;vertical-align:.62em;letter-spacing:0;margin-left:.08em}
.t-n{margin:.5rem 0 0;font-size:1.125rem;font-weight:600}
.hud-v{position:absolute;left:var(--pad);right:var(--pad);top:9.6rem}
.hv{width:fit-content;max-width:100%;margin:0 0 .4rem;padding:.5rem .9rem .6rem;font:560 clamp(1.4rem,6vw,2rem)/1.1 var(--serif);letter-spacing:-.012em;color:var(--ink);background:var(--ryz2);border-radius:.4rem;text-wrap:balance}
.pohyb .hv{position:absolute;left:0;top:0;margin:0;opacity:0;transition:opacity .3s}
.pohyb .hv.on{opacity:1}

/* regál */
.regal{background:var(--skl);color:var(--ryz2);padding:3.4rem 0 4rem}
.regal h2{color:var(--ryz)}
.regal-hlava{display:grid;gap:.9rem}
.rack-wrap{display:grid;gap:1.4rem;margin-top:2rem}
.rack{--rg:.55rem;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem var(--rg)}
.cell{min-width:0;display:flex}
.cell-wide{grid-column:span 2}
.cell-a{display:flex;flex-direction:column;flex:1;min-width:0;text-decoration:none;color:inherit;border-radius:6px}
.slot{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:inherit;column-gap:var(--rg);width:100%}
.nik{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1.08;padding-top:6%;border-radius:999px 999px 4px 4px;background:var(--skl2);box-shadow:inset 0 .6rem 1.1rem rgb(0 0 0 / .55);transition:background .2s}
.bt{display:block;width:66%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,var(--f) 0 33%,#100b0c 34% 40%,#23452b 41% 68%,#132416 69% 100%);box-shadow:0 .4rem .7rem rgb(0 0 0 / .6),inset 0 0 0 1px rgb(255 255 255 / .1);transition:transform .34s cubic-bezier(.2,.8,.25,1),box-shadow .34s}
.cell-a:hover .nik{background:var(--fra)}
.cell-a[aria-current="true"] .nik{background:var(--rub)}
.cell-a[aria-current="true"] .bt{transform:scale(1.16);box-shadow:0 .9rem 1.3rem rgb(0 0 0 / .55)}
.tagl{display:block;margin-top:.42rem;font-weight:600;font-size:1.0625rem;line-height:1.15;text-align:center;overflow-wrap:anywhere}
.cell-a[aria-current="true"] .tagl{color:var(--ryz)}
.cards{min-width:0;scroll-margin-top:5rem}
.js .cards{display:grid}
.js .card{grid-area:1/1}
.card[hidden]{display:block !important;visibility:hidden}
.card{background:var(--ryz2);color:var(--ink);scroll-margin-top:5rem}
.pull{background:var(--skl2);overflow:hidden;padding:.8rem 0 .8rem 0}
.bs{width:min(100%,26rem);height:auto}
.bs-s{fill:#23452b}.bs-k{fill:var(--f)}.bs-e{fill:var(--ryz2)}.bs-c{fill:none;stroke:var(--ink);stroke-width:4;stroke-linecap:round}
.js .card:not([hidden]) .bs{animation:pullout .7s cubic-bezier(.2,.8,.25,1) both}
@keyframes pullout{from{transform:translateX(-58%)}to{transform:none}}
.card-body{margin:.6rem;padding:1.3rem 1.1rem 1.25rem;text-align:center;border:1.5px solid var(--ink);outline:1.5px solid var(--ink);outline-offset:-6px}
.card-k{margin:0 0 .35rem;font-weight:600;color:var(--rub)}
.card h3{font-size:clamp(1.85rem,7.4vw,2.5rem);line-height:1.04;margin-bottom:.7rem;text-wrap:balance}
.card-t{margin-bottom:1rem}
.card-p{display:flex;flex-wrap:wrap;justify-content:center;gap:.2rem 1.5rem;margin:0}
.card-p b{font:560 1.45rem/1.2 var(--serif);color:var(--rub);white-space:nowrap}
.wn-h{margin:1rem 0 .3rem;font-weight:600}
.wn{list-style:none;margin:0;padding:0;font-size:1.0625rem;display:flex;flex-wrap:wrap;justify-content:center;gap:0 .9rem}

/* degustace a lístek */
.degustace{background:var(--rub);color:var(--ryz2);padding:3.6rem 0 4rem}
.degustace h2{color:var(--ryz)}
.tast-grid{display:grid;gap:2.4rem}
.tast-copy .lead{margin-top:1rem}
.sklenky{display:flex;gap:.2rem;margin:1.6rem 0 1.2rem;max-width:26rem}
.sk{width:16.6%;height:auto;overflow:visible}
.sk-o{fill:none;stroke:var(--ryz2);stroke-width:1.8;stroke-linecap:round}
.facts{list-style:none;margin:0 0 1.4rem;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.facts b{display:block;font:560 clamp(2rem,9.6vw,2.9rem)/1 var(--serif);letter-spacing:-.015em;color:var(--ryz)}
.facts span{display:block;margin-top:.2rem;line-height:1.3}
.next-box h3{font-family:var(--sans);font-size:1.0625rem;font-weight:700;letter-spacing:0;margin-bottom:.25rem}
.next-box p{margin:0}
.next-box a{color:var(--ryz)}
.next-d{display:block;margin-bottom:.3rem;font:560 1.5rem/1.2 var(--serif);letter-spacing:-.01em;color:var(--ryz)}
.ticket{position:relative;background:var(--ryz2);color:var(--ink);scroll-margin-top:5rem;--tk:var(--rub)}
.tk-head{position:relative;padding:1.3rem 1.2rem 1.1rem;border-bottom:2px dashed rgb(40 16 31 / .4)}
.tk-head h3{font-size:clamp(1.9rem,8vw,2.5rem);line-height:1.02;color:var(--rub)}
.tk-head p{margin:.4rem 0 0;color:var(--ink2)}
.tk-head::before,.tk-head::after{content:"";position:absolute;bottom:-.8rem;width:1.6rem;height:1.6rem;border-radius:50%;background:var(--tk)}
.tk-head::before{left:-.8rem}.tk-head::after{right:-.8rem}
.tk-body{padding:1.3rem 1.2rem}
.seg{border:0;margin:0 0 1rem;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
.seg legend{padding:0;font-weight:700;margin-bottom:.4rem}
.seg-o{position:relative;display:block}
.seg-o input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.seg-o span{display:block;padding:.6rem .7rem;background:#fffbe0;box-shadow:inset 0 0 0 2px rgb(40 16 31 / .35);text-align:center;line-height:1.2;transition:background .15s}
.seg-o b{display:block;font:560 1.2rem/1.2 var(--serif)}
.seg-o small{font-size:1rem;color:var(--ink2)}
.seg-o:hover span{background:#fff}
.seg-o input:checked + span{background:var(--rub);box-shadow:none;color:var(--ryz2)}
.seg-o input:checked + span small{color:var(--ryz2)}
.seg-o input:focus-visible + span{outline:3px solid var(--ink);outline-offset:3px}
.fld{margin:0 0 1rem}
.fld label,.lbl{display:block;font-weight:700;margin-bottom:.3rem}
.fld input[type=date],.fld select{width:100%;min-width:0;min-height:3.1rem;border:0;box-shadow:inset 0 0 0 2px rgb(40 16 31 / .45);background:#fffbe0;color:var(--ink);font:inherit;font-size:1.125rem;padding:.4rem .75rem;border-radius:0}
.ticket :focus-visible{outline-color:var(--ink)}
[aria-invalid="true"]{box-shadow:inset 0 0 0 2px #a3122f !important}
.stepper{display:flex;align-items:center;gap:.8rem}
.st-b{width:3.1rem;height:3.1rem;border-radius:50%;border:0;box-shadow:inset 0 0 0 2px var(--rub);background:#fffbe0;color:var(--rub);font:700 1.6rem/1 var(--sans);cursor:pointer;transition:background .15s,color .15s}
.st-b:hover{background:var(--rub);color:var(--ryz2)}
.stepper output{min-width:2ch;text-align:center;font:560 1.9rem/1 var(--serif);font-variant-numeric:lining-nums tabular-nums}
.tk-hint{min-height:1.5em;margin:0 0 .6rem;font-weight:600}
.tk-hint.is-bad{color:#8f0f2c}
.tk-sum{margin:0 0 .2rem;padding:.7rem .85rem;background:var(--ryz)}
.tk-sum span{display:block;font-weight:700;font-size:1rem}
.tk-sum b{font:560 1.25rem/1.25 var(--serif)}
.ticket .cta{margin-top:1rem}
.ticket .btn{width:100%}
.ticket .fine{color:var(--ink2)}
.prev{margin-top:.8rem}
.prev summary{cursor:pointer;font-weight:700;color:var(--rub);padding:.5rem 0;min-height:2.75rem}
.prev pre{white-space:pre-wrap;font:inherit;background:#fffbe0;padding:.7rem .8rem;margin:.4rem 0 0}
.nojs-only{display:block}
.js .nojs-only{display:none}

/* témata čtvrtků */
.temata{background:var(--fra);color:var(--ryz2);padding:3.4rem 0 0}
.temata h2{color:var(--ryz)}
.tem-hlava{display:grid;gap:.8rem}
.log{position:relative;z-index:2;list-style:none;margin:2rem 0 0;padding:0}
.tema{display:grid;grid-template-columns:1fr;gap:.1rem;padding:1.05rem var(--pad) 1.1rem;box-shadow:inset 0 1px 0 rgb(246 242 203 / .2)}
.lt{font-size:1.0625rem;font-family:var(--sans);font-weight:600;letter-spacing:0}
.tn{font:560 clamp(1.9rem,8vw,2.4rem)/1.06 var(--serif);letter-spacing:-.015em}
.tema small{font-size:1.0625rem}
.nejbl{display:none;font-style:normal;font-weight:700}
.tema{transition:background .18s}
.tema:hover{background:rgb(246 242 203 / .07)}
.tema.is-next{background:var(--ryz);color:var(--ink);box-shadow:none}
.tema.is-next .nejbl{display:block}
.tema.t2.is-next{background:var(--jan)}.tema.t3.is-next{background:var(--ruz)}.tema.t4.is-next{background:var(--ryz2)}.tema.t5.is-next{background:var(--zla)}

/* konec */
.konec{background:var(--skl);color:var(--ryz);padding:4rem 0 3.6rem}
.konec h2{font-size:clamp(2.5rem,11.7vw,5rem);line-height:1.02}
.konec h2 span{display:block}
.konec h2{width:max-content;max-width:100%}
.k1{color:var(--ryz)}.k2{color:var(--jan)}.k3{color:var(--ruz)}
.btn-velke{min-height:3.75rem;padding-inline:2rem;font-size:1.25rem}
.konec .btn:not(.btn-line){background:var(--ryz);color:var(--ink)}
.konec .btn:not(.btn-line):hover{background:#fff}
.konec .btn-line{color:var(--ryz)}
.konec .btn-line:hover{background:var(--ryz);color:var(--ink)}

/* kontakt */
.kontakt{background:var(--skl);color:var(--ryz2);padding:1rem 0 4rem}
.kontakt h2{font-size:clamp(2.1rem,8.8vw,3rem);color:var(--ryz)}
.kontakt h3{font-size:1.75rem;color:var(--ryz);margin-bottom:.7rem}
.contact-grid{display:grid;gap:2.4rem}
.cdl{margin:1.2rem 0 0;display:grid;gap:.9rem}
.cdl dt{font-weight:700}
.cdl dd{margin:0;font-size:1.25rem}
.cdl small{display:block;font-size:1rem;margin-top:.15rem}
.tel-b{min-height:2.75rem;padding:.15rem 0;border:0;border-bottom:2px solid currentColor;background:none;color:inherit;font:inherit;cursor:pointer;text-align:left}
.tel-b:hover{color:var(--jan)}
.fake{display:block;font-size:1rem;margin-top:.2rem}
.hours{border-collapse:collapse;width:100%}
.hours th,.hours td{text-align:left;padding:.45rem .55rem;font-weight:400;box-shadow:inset 0 -1px 0 rgb(246 242 203 / .18)}
.hours td{text-align:right}
.hours tr.is-today{background:var(--ryz);color:var(--ink)}
.hours tr.is-today th,.hours tr.is-today td{font-weight:700;box-shadow:none}
.how ul{margin:0;padding:0;list-style:none}
.how li{padding:.55rem 0;box-shadow:inset 0 -1px 0 rgb(246 242 203 / .18)}

/* patička */
.foot{background:var(--skl);color:var(--ryz2);overflow:hidden;overflow:clip}
.slovo{position:relative;z-index:2;margin:0;padding-top:1rem;font:560 clamp(5rem,27vw,30rem)/.86 var(--serif);letter-spacing:-.035em;text-align:center;color:var(--ryz)}
.sl-u{position:relative}
.foot-in{display:grid;gap:.3rem;padding:calc(2.4rem + 5vw) 0 2.2rem}
.foot p{margin:0}
.forma{font-size:1rem}
.foot-back{display:inline-block;padding:.5rem 0;font-weight:700;color:var(--ryz)}

/* vysvětlení ukázky */
.pop{max-width:min(30rem,calc(100vw - 2rem));padding:1.5rem 1.5rem 1.6rem;border:0;color:var(--ink);background:var(--ryz2);box-shadow:0 30px 60px -20px rgb(0 0 0 / .8)}
.pop::backdrop{background:rgb(28 8 25 / .74)}
.pop[open]{position:fixed;inset:0;margin:auto;height:fit-content;z-index:100}
.pop h2{font-size:clamp(1.8rem,7vw,2.3rem);color:var(--rub);margin:0 0 .7rem}
.pop p{margin:0 0 1.2rem}
.pop .btn{width:100%}
.pop :focus-visible{outline-color:var(--ink)}

@media (min-resolution:1.5dppx){.stage{--z:1.5}}
@media (max-width:899px) and (min-resolution:2.5dppx){.stage{--z:2}}
@media (min-width:600px){
  :root{--pad:2rem}
  .rack{grid-template-columns:repeat(4,minmax(0,1fr))}
  .tema{padding-inline:calc(var(--pad));grid-template-columns:8rem minmax(0,1fr);column-gap:1rem}
  .tema small{grid-column:2}
  .tema .nejbl{grid-column:1;grid-row:2}
}
@media (min-width:900px){
  :root{--pad:clamp(2.5rem,4.4vw,4.5rem);--top:4.75rem;--h1:clamp(4rem,7vw,7.6rem);--h2:clamp(3.4rem,6.4vw,7rem);--lead:clamp(1.3rem,1.65vw,1.65rem)}
  body{font-size:1.125rem}
  h3{font-size:1.65rem}
  .fine,.seg-o small,.fake,.cdl small,.forma,.tk-sum span{font-size:1.0625rem}
  .nav{display:flex;gap:clamp(1rem,2.2vw,2.2rem);margin:0 clamp(.8rem,2vw,2rem) 0 auto}
  .nav a{text-decoration:none;font-weight:600;font-size:1.125rem;padding:.3rem .1rem;background:linear-gradient(currentColor,currentColor) 0 100%/0 2px no-repeat;transition:background-size .18s}
  .nav a:hover{background-size:100% 2px}
  .brand{margin-right:0}
  .brand-w{font-size:1.75rem}
  .hero-in{grid-template-columns:minmax(0,1fr) auto;min-height:calc(100svh - var(--top));padding-left:max(var(--pad),calc((100% - 92rem)/2))}
  .hero-t{align-self:center;padding:2rem 0 2.4rem}
  .hero h1{max-width:9.2em}
  .lede{font-size:clamp(1.3rem,1.65vw,1.6rem);margin-top:1.5rem;max-width:30em}
  .hero .cta{margin-top:2rem}
  .hero-fakta{display:grid;grid-template-columns:auto 1fr;gap:.2rem 1.2rem;margin:2.4rem 0 0;max-width:36rem}
  .hero-fakta div{display:contents}
  .hero-fakta dt{font-weight:700}
  .hero-fakta dd{margin:0}
  .hero-art{align-self:end;width:min(50vw,calc((100svh - var(--top) - .5rem)*.8667),50.2rem);margin:0}
  .live-main{font-size:clamp(2rem,3vw,3.1rem)}
  .live-sub{font-size:1.25rem}
  .pult{padding-top:clamp(4.5rem,8vw,8rem)}
  .pult h2{max-width:4.7em}
  .pult-hlava{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:3rem;align-items:end}
  .pult-txt{padding-bottom:.4rem}
  .lahve{margin-top:clamp(3rem,5vw,5rem);column-gap:clamp(.8rem,2vw,2.4rem)}
  .lh{width:min(100%,8.2rem);justify-self:center}
  .lh-t{grid-column:auto;grid-row:2;display:block;text-align:center;padding:1.15rem 0 0;border:0}
  .lh-t b{display:block;font-size:clamp(1.0625rem,1.55vw,1.35rem);hyphens:manual}
  .lh-t span{display:block}
  .lh-t em{display:block;margin-top:.35rem;font-size:1.65rem}
  .sluzby{padding:clamp(5rem,9vw,9rem) 0 clamp(3rem,5vw,5rem)}
  .sl-hlava{grid-template-columns:minmax(0,1.5fr) minmax(0,.5fr);gap:3rem;align-items:end}
  .drat{display:block;position:relative;z-index:2;height:2px;margin-top:clamp(2.5rem,4vw,4rem);background:var(--ink)}
  .visacky{grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(.7rem,1.3vw,1.4rem);margin-top:0;align-items:start}
  .v{--s:3rem;margin-top:var(--s);padding:3.4rem 1.05rem 1.35rem;border-radius:999px 999px 10px 10px;text-align:center;transform-origin:50% calc(var(--s)*-1);transition:transform .22s cubic-bezier(.3,.6,.3,1)}
  .v:hover{transform:rotate(-1.6deg)}
  .v:nth-child(even):hover{transform:rotate(1.6deg)}
  .v::before{left:50%;top:1.3rem;margin:0 0 0 -.5rem}
  .v::after{content:"";position:absolute;left:50%;bottom:calc(100% - 1.8rem);width:2px;height:calc(var(--s) + 1.8rem);margin-left:-1px;background:var(--ink)}
  .v h3{margin-bottom:.5rem}
  .v2{--s:5.4rem}.v3{--s:2.2rem}.v4{--s:6.6rem}.v5{--s:3.6rem}.v6{--s:7.8rem}
  .prostor{padding:clamp(4rem,7vw,7rem) 0 clamp(3rem,5vw,5rem)}
  .prostor-in{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:3rem;align-items:start}
  .cisla{gap:2rem}
  .cisla b{font-size:clamp(4.5rem,7vw,7rem)}
  .stage{--oko:57%}
  .hud-t{left:max(var(--pad),calc((100% - 92rem)/2));top:1.8rem}
  .t-v{font-size:clamp(4.6rem,9.4vw,9rem)}
  .hud-v{left:auto;right:max(var(--pad),calc((100% - 92rem)/2));top:2.4rem;width:min(28%,24rem)}
  .hv{margin-left:auto;font-size:clamp(1.6rem,2.3vw,2.3rem);padding:.7rem 1.1rem .8rem}
  .pohyb .hv{left:auto;right:0;width:100%}
  .regal{padding:clamp(5rem,8vw,8rem) 0 clamp(5rem,9vw,9rem)}
  .regal-hlava{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:3rem;align-items:end}
  .rack-wrap{gap:clamp(2rem,4vw,4.5rem);align-items:start;margin-top:clamp(2.5rem,4vw,4rem)}
  .cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}
  .js .rack-wrap{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)}
  .js .cards{grid-template-columns:minmax(0,1fr);gap:0}
  .rack{--rg:1.1rem;gap:1.5rem var(--rg)}
  .tagl{font-size:1.25rem;margin-top:.55rem}
  .card-body{padding:2rem 1.8rem 1.8rem}
  .card h3{font-size:clamp(2.2rem,3.2vw,3.1rem)}
  .card-t{font-size:1.1875rem}
  .card-p b{font-size:1.7rem}
  .degustace{padding:clamp(5rem,8vw,8rem) 0}
  .tast-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(2.5rem,5vw,6rem);align-items:start}
  .sklenky{max-width:32rem;margin:2.2rem 0 1.8rem}
  .next-d{font-size:1.75rem}
  .tk-head{padding:1.7rem 1.8rem 1.4rem}
  .tk-body{padding:1.7rem 1.8rem}
  .temata{padding-top:clamp(5rem,8vw,8rem)}
  .tem-hlava{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:3rem;align-items:end}
  .log{margin-top:clamp(2.5rem,4vw,4rem)}
  .tema{grid-template-columns:8.5rem minmax(0,1.75fr) minmax(0,1fr) 6.5rem;align-items:baseline;gap:1.5rem;padding:1.45rem max(var(--pad),calc((100% - 92rem)/2))}
  .lt{font-size:1.25rem}
  .tn{font-size:clamp(2.1rem,3.5vw,3.9rem)}
  .tema small{grid-column:auto;font-size:1.1875rem}
  .tema .nejbl{grid-column:auto;grid-row:auto;text-align:right}
  .tema .nejbl{display:block;visibility:hidden}
  .tema.is-next .nejbl{visibility:visible}
  .konec{padding:clamp(6rem,10vw,10rem) 0 clamp(3rem,5vw,5rem)}
  .konec h2{font-size:clamp(4rem,9.4vw,10.6rem)}
  .konec .cta{margin-top:2.6rem}
  .kontakt{padding:clamp(3rem,5vw,5rem) 0 clamp(3rem,6vw,6rem)}
  .kontakt h2{font-size:clamp(2.6rem,3.4vw,3.6rem)}
  .contact-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.8fr) minmax(0,1fr);gap:clamp(2rem,5vw,6rem);align-items:start}
  .foot-in{grid-template-columns:1fr auto auto;gap:2.4rem;align-items:center}
}
@media (max-width:359px){
  .brand-s{display:none}
  .top-cta{padding-inline:.8rem}
}
@media (max-width:339px){
  .top-in{gap:.35rem}
  .top-cta{padding-inline:.6rem}
}
@media (prefers-reduced-motion:no-preference){
  /* réva v úvodu vyroste při načtení: jen CSS, takže ji má i stránka bez JavaScriptu; hotovo do 1,2 s */
  .h-reva{stroke-dasharray:1;animation:rust 1.15s cubic-bezier(.3,.3,.3,1) both}
  .r-uvod .ro{animation:list .6s cubic-bezier(.2,.75,.25,1) both}
  .z1{animation-delay:.1s}.z2{animation-delay:.17s}.z3{animation-delay:.24s}.z4{animation-delay:.31s}.z5{animation-delay:.38s}.z6{animation-delay:.45s}
  .z7{animation-delay:.5s}.z8{animation-delay:.55s}.z9{animation-delay:.6s}.z10{animation-delay:.64s}.z11{animation-delay:.68s}.z12{animation-delay:.72s}
}
@keyframes rust{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes list{from{transform:scale(.1) rotate(-20deg);opacity:0}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none !important;transition:none !important}
}

/* poloha kleneb a schodů v prostoru: generuje ukazka-uponek.py */
.r0{transform:translate3d(0,calc(var(--u)*0.00),calc(var(--u)*-90.00)) scale(var(--z))}
.r1{transform:translate3d(0,calc(var(--u)*21.00),calc(var(--u)*-164.00)) scale(var(--z))}
.r2{transform:translate3d(0,calc(var(--u)*42.00),calc(var(--u)*-238.00)) scale(var(--z))}
.r3{transform:translate3d(0,calc(var(--u)*63.00),calc(var(--u)*-312.00)) scale(var(--z))}
.r4{transform:translate3d(0,calc(var(--u)*84.00),calc(var(--u)*-386.00)) scale(var(--z))}
.r5{transform:translate3d(0,calc(var(--u)*105.00),calc(var(--u)*-460.00)) scale(var(--z))}
.s0{background:#f1edbc;transform:translate3d(0,calc(var(--u)*48.00),calc(var(--u)*-90.00)) rotateX(-90deg)}
.s1{background:#cabe83;transform:translate3d(0,calc(var(--u)*55.50),calc(var(--u)*-116.43)) rotateX(-90deg)}
.s2{background:#ece2a5;transform:translate3d(0,calc(var(--u)*63.00),calc(var(--u)*-142.86)) rotateX(-90deg)}
.s3{background:#c5b069;transform:translate3d(0,calc(var(--u)*70.50),calc(var(--u)*-169.29)) rotateX(-90deg)}
.s4{background:#e7cf8b;transform:translate3d(0,calc(var(--u)*78.00),calc(var(--u)*-195.71)) rotateX(-90deg)}
.s5{background:#bf9446;transform:translate3d(0,calc(var(--u)*85.50),calc(var(--u)*-222.14)) rotateX(-90deg)}
.s6{background:#e2b575;transform:translate3d(0,calc(var(--u)*93.00),calc(var(--u)*-248.57)) rotateX(-90deg)}
.s7{background:#ba7149;transform:translate3d(0,calc(var(--u)*100.50),calc(var(--u)*-275.00)) rotateX(-90deg)}
.s8{background:#de9386;transform:translate3d(0,calc(var(--u)*108.00),calc(var(--u)*-301.43)) rotateX(-90deg)}
.s9{background:#ac4a50;transform:translate3d(0,calc(var(--u)*115.50),calc(var(--u)*-327.86)) rotateX(-90deg)}
.s10{background:#c5707e;transform:translate3d(0,calc(var(--u)*123.00),calc(var(--u)*-354.29)) rotateX(-90deg)}
.s11{background:#882241;transform:translate3d(0,calc(var(--u)*130.50),calc(var(--u)*-380.71)) rotateX(-90deg)}
.s12{background:#a45872;transform:translate3d(0,calc(var(--u)*138.00),calc(var(--u)*-407.14)) rotateX(-90deg)}
.s13{background:#621537;transform:translate3d(0,calc(var(--u)*145.50),calc(var(--u)*-433.57)) rotateX(-90deg)}
.dno{transform:translate3d(0,calc(var(--u)*153.00),calc(var(--u)*-460.00)) rotateX(-90deg)}
.zed{transform:translate3d(0,calc(var(--u)*95.00),calc(var(--u)*-710.00))}.zed-v{transform:translate3d(0,calc(var(--u)*95.00),calc(var(--u)*-710.50)) scale(4)}
.kabel{transform:translate3d(0,calc(var(--u)*77.00),calc(var(--u)*-709.50))}
.zabradli{transform:translate3d(calc(var(--u)*40.00),calc(var(--u)*28.00),calc(var(--u)*-90.00)) rotateY(90deg) rotateZ(15.84deg) rotateX(-52deg)}
[data-z="morava"],#z-morava{--f:#d9a441}[data-z="rakousko"],#z-rakousko{--f:#d8d27c}[data-z="nemecko"],#z-nemecko{--f:#ece7a4}[data-z="italie"],#z-italie{--f:#b3264c}[data-z="portugalsko"],#z-portugalsko{--f:#6fa04a}[data-z="gruzie"],#z-gruzie{--f:#d0813a}[data-z="recko"],#z-recko{--f:#8fc0c0}[data-z="slovensko"],#z-slovensko{--f:#d2645f}[data-z="jar"],#z-jar{--f:#c9b04e}[data-z="zeland"],#z-zeland{--f:#a8cf6c}[data-z="australie"],#z-australie{--f:#7a1a48}
.arch-in{left:27.38%;top:31.74%;width:47.81%;height:54.24%}
.sc{height:calc(var(--u)*26.93)}
.stage[data-f="0"]{background:#ece7a4}.stage[data-f="1"]{background:#e3d27a}.stage[data-f="2"]{background:#d9a441}.stage[data-f="3"]{background:#d2645f}.stage[data-f="4"]{background:#962145}.stage[data-f="5"]{background:#571235}.stage[data-f="6"]{background:#290c23}
/* FORMA-POLISH (generuje vizitka/tools/ukazky-polish.py) */
:where(input,textarea){caret-color:#962145}
:where(a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible){outline:3px solid #962145;outline-offset:3px}
:where(a){text-underline-offset:.2em}
:where(table,dd,time,data,[class*=cen],[class*=price],[class*=hod],[class*=hours],[class*=doba],[class*=kc]){font-variant-numeric:tabular-nums}
/* /FORMA-POLISH */
