/* Případová studie Hrádek Sport & Facilities: staví na reference.css, vlastní třídy mají předponu hk- */
@font-face{font-family:"HK Cormorant";src:url(/assets/fonts/Hradek/cormorant.woff2) format("woff2");font-weight:300 700;font-style:normal;font-display:swap;unicode-range:U+0020-00FF}
@font-face{font-family:"HK Cormorant";src:url(/assets/fonts/Hradek/cormorant-ext.woff2) format("woff2");font-weight:300 700;font-style:normal;font-display:swap;unicode-range:U+0100-017F}
@font-face{font-family:"HK Cormorant";src:url(/assets/fonts/Hradek/cormorant-i.woff2) format("woff2");font-weight:300 700;font-style:italic;font-display:swap}
@font-face{font-family:"HK Hanken";src:url(/assets/fonts/Hradek/hanken.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"HK Mono";src:url(/assets/fonts/Hradek/space-mono.woff2) format("woff2");font-weight:400;font-display:swap}
.hk{--hk-t:#d97757;--hk-t2:#bd5f41;--hk-ink:#0d0a08;--hk-krem:#f7efe4;--wc-ink:var(--hk-ink);--mint:#d97757;--mint-ink:#bd5f41;--a-on-accent:#fff}

/* ── Úvod: fotka kurtu a čáry přes ni, mají stejný výřez ── */
.hk-hero::after{display:none}
.hk-kurt{position:absolute;inset:0;z-index:-2;animation:csZoom 9s var(--ease) both}
.hk-kurt img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.hk-sit{position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,10,8,.5) 0,rgba(13,10,8,.1) 28%,rgba(13,10,8,.22) 56%,rgba(13,10,8,.82) 100%),linear-gradient(90deg,rgba(13,10,8,.66) 0,rgba(13,10,8,0) 66%)}
.hk-cary{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke-linecap:round;stroke-linejoin:round;-webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.2) 22%,#000 60%);mask-image:linear-gradient(90deg,rgba(0,0,0,.2) 22%,#000 60%)}
.hk-cary path{stroke-dasharray:1;stroke-dashoffset:1;animation:csDraw 1.15s var(--ease-io) calc(.25s + var(--z)*.16s) forwards}
.hk-cary .l{stroke:#f09a78;stroke-width:2.2}
.hk-cary .z{stroke:var(--hk-t);stroke-width:9;stroke-opacity:.22}
.hk-hrana{position:absolute;left:0;right:0;bottom:-1px;z-index:1;--h:clamp(74px,11.5vw,176px);height:calc(var(--h)*.09);background:var(--bg);pointer-events:none}
.hk-hrana svg{position:absolute;right:max(24px,calc((100% - var(--wrap))/2 + 12px));bottom:calc(100% - 1px);display:block;width:auto;height:var(--h);overflow:visible}
.hk-hrana .a{fill:var(--bg)}
.hk-hrana .c{fill:var(--hk-t);animation:hkCarka .6s var(--ease) 1.1s backwards}
@keyframes hkCarka{from{opacity:0;transform:translate(26px,-40px)}}

.cs-big em{background:linear-gradient(90deg,var(--hk-t),#7d1f33 110%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hk .cs-st b{color:var(--ink)}
.hk .cs-st li:nth-child(3) b{color:var(--hk-t2)}

/* ── Rezervace ── */
.hk-rz{background:radial-gradient(72% 92% at 72% 46%,#33201a,var(--hk-ink) 72%)}
.hk-rz .sv-h2 .n{min-width:1.9em;color:var(--hk-t)}
.hk-rz .cs-sp-g{grid-template-columns:minmax(0,.62fr) minmax(0,1.38fr)}
.hk-lg{display:grid;grid-template-columns:repeat(2,max-content);gap:9px 22px;margin:20px 0 18px;padding:0;list-style:none;font:500 14.5px/1 var(--f-body);color:rgba(255,255,255,.84)}
.hk-lg li{display:flex;align-items:center;gap:9px}
.hk-lg i{width:13px;height:13px;border-radius:3px}
.hk-lg .v{background:rgba(90,214,140,.42)}
.hk-lg .o{background:var(--hk-t)}
.hk-lg .m{background:#fff}
.hk-lg .z{background:rgba(255,255,255,.14)}
.hk-g{position:relative}
.hk-g-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 12px;font:500 13px/1.2 var(--f-mono);color:rgba(255,255,255,.62)}
.hk-g-h b{font:600 clamp(16px,.95rem + .3vw,19px)/1.2 var(--f-body);color:#fff}
.hk-m{--cols:40px 46px repeat(14,minmax(0,1fr));display:grid;gap:5px}
.hk-r{display:grid;grid-template-columns:var(--cols);gap:2px;align-items:center}
.hk-r span{font:500 11px/1 var(--f-mono);color:rgba(255,255,255,.56);text-align:center}
.hk-d{display:grid;grid-template-columns:var(--cols);gap:2px}
.hk-dn{grid-row:span 3;align-self:center;font:600 13px/1 var(--f-body);color:#fff}
.hk-dn small{display:block;margin-top:3px;font:400 9.5px/1 var(--f-mono);color:rgba(255,255,255,.5);white-space:nowrap}
.hk-kn{align-self:center;font:500 10px/1 var(--f-mono);color:rgba(255,255,255,.5);white-space:nowrap}
.hk-c{display:block;width:100%;height:clamp(15px,1.45vw,20px);min-width:0;padding:0;border:0;border-radius:3px;background:rgba(255,255,255,.05);transition:opacity .28s ease var(--o,0ms),background-color .16s,box-shadow .16s}
.hk-m:not(.is-in) .hk-c{opacity:0}
.hk-c.v{background:rgba(90,214,140,.34);cursor:pointer}
.hk-c.v:hover,.hk-c.v:focus-visible{background:rgba(90,214,140,.82)}
.hk-c.o{background:var(--hk-t)}
.hk-c.z{background:rgba(255,255,255,.05)}
.hk-c.m{background:#fff;cursor:pointer}
.hk-c.s{background:#5ad68c;box-shadow:0 0 0 2px #fff}
.hk-c:focus-visible{outline:2px solid #fff;outline-offset:1px}
.hk-v{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:72px;margin-top:14px;padding:10px 12px 10px 18px;border-radius:15px;background:rgba(255,255,255,.08)}
.hk-v p{margin:0;font:500 15px/1.3 var(--f-body);color:rgba(255,255,255,.72)}
.hk-v div{min-width:0}
.hk-v b{display:flex;align-items:center;gap:8px;font:600 clamp(15px,.9rem + .25vw,17px)/1.25 var(--f-body);color:#fff}
.hk-v span{display:block;margin-top:3px;font:400 13.5px/1.3 var(--f-body);color:rgba(255,255,255,.72)}
.hk-ok-i{display:grid;place-items:center;flex:none;width:20px;height:20px;border-radius:50%;background:#fff;color:var(--hk-ink)}
.hk-ok-i svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:3.4;stroke-linecap:round;stroke-linejoin:round}
.hk-b{flex:none;height:46px;padding:0 20px;border:0;border-radius:999px;background:var(--hk-t);color:#fff;font:600 14.5px/1 var(--f-body);cursor:pointer;transition:background .16s}
.hk-b:hover{background:var(--hk-t2)}
.hk-b.o{border:1px solid rgba(255,255,255,.3);background:none}
.hk-b.o:hover{background:rgba(255,255,255,.1)}
.hk-g .rz-cur{fill:#fff;stroke:var(--hk-ink);filter:drop-shadow(0 3px 5px rgba(0,0,0,.5))}
.hk-dny{display:none}

/* ── Recepce ── */
.hk-pr{display:grid;gap:0;margin:clamp(18px,2.4vw,28px) 0 0;padding:0;list-style:none}
.hk-pr li{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:11px 0;border-top:1px solid var(--line)}
.hk-pr li:last-child{border-bottom:1px solid var(--line)}
.hk-pr b{font:600 15.5px/1.2 var(--f-body);color:var(--ink)}
.hk-pr span{font:500 13px/1.2 var(--f-mono);color:var(--ink-2)}
.hk-ok-in{min-height:clamp(420px,34vw,470px);padding:clamp(16px,2.2vw,26px)}
.hk-tb{display:flex;gap:4px;margin:0 0 18px;padding:4px;overflow-x:auto;border-radius:999px;background:var(--hk-krem);scrollbar-width:none}
.hk-tb::-webkit-scrollbar{display:none}
.hk-tb button{flex:1 0 auto;height:36px;padding:0 14px;border:0;border-radius:999px;background:none;color:#2e2013;font:600 13px/1 var(--f-body);white-space:nowrap;cursor:pointer;transition:background .16s,color .16s}
.hk-tb button[aria-pressed="true"]{background:#2e2013;color:#fff}
.sv-page .hk-ok-h{margin:0 0 10px;font-family:var(--f-display);font-stretch:125%;font-size:clamp(20px,1rem + .8vw,26px);font-weight:600;letter-spacing:-.02em;text-transform:none;color:var(--ink)}
.hk-ok-h span{display:block;margin-top:3px;font:500 13.5px/1.2 var(--f-body);font-stretch:100%;letter-spacing:0;color:var(--ink-2)}
.hk-st{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:14px;background:#e8f7ee;color:#14532d}
.hk-st.ko{background:#fbeae4;color:#8a3a22}
.hk-st-i{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:50%;background:#1d7a38;color:#fff}
.hk-st.ko .hk-st-i{background:var(--hk-t2)}
.hk-st-i svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.hk-st b{display:block;font:700 clamp(24px,1.1rem + 1.1vw,32px)/1.05 var(--f-body);letter-spacing:-.02em}
.hk-st small{font-size:.5em;font-weight:500;letter-spacing:0}
.hk-st span{display:block;margin-top:3px;font:500 13.5px/1.25 var(--f-body)}
.hk-od{display:block;width:100%;min-height:48px;margin-top:12px;padding:0 14px;border:0;border-radius:12px;background:#1d7a38;color:#fff;font:600 15px/1.1 var(--f-body);cursor:pointer;transition:background .16s,transform .1s}
.hk-od:hover{background:#176530}
.hk-od:active{transform:scale(.985)}
.hk-od[hidden]{display:none}
.hk-hi-w{margin-top:14px;overflow-x:auto}
.hk-hi{width:100%;border-collapse:collapse;font:400 13px/1.25 var(--f-body);color:var(--ink-2)}
.hk-hi th{padding:0 8px 7px 0;font:500 11px/1 var(--f-mono);color:var(--ink-3);text-align:left;white-space:nowrap}
.hk-hi td{padding:7px 8px 7px 0;border-top:1px solid var(--line);white-space:nowrap}
.hk-hi td:nth-child(3){font-weight:600;color:var(--ink)}
.hk-hi tr.new td{animation:hkNovy 1.1s ease}
@keyframes hkNovy{from{background:#e8f7ee}}

/* ── Logo ── */
.hk-lo-st{padding:clamp(26px,4.5vw,64px) clamp(14px,3vw,40px) clamp(52px,6vw,84px)}
.hk-lo-g{display:block;width:min(100%,860px);height:auto;overflow:visible}
.hk-gr path{fill:none;stroke:var(--hk-t);stroke-width:3.5;stroke-dasharray:14 12;opacity:.7}
.hk-gr{opacity:0}
.lo-st.is-in .hk-gr{animation:hkGr 4s ease forwards}
@keyframes hkGr{0%{opacity:0}12%,66%{opacity:1}100%{opacity:0}}
.hk-lp{fill:#0a0a0a;fill-opacity:0;stroke:#0a0a0a;stroke-width:5;stroke-dasharray:1;stroke-dashoffset:1}
.hk-lp.t{stroke:var(--hk-t)}
.lo-st.is-in .hk-lp{animation:loKr 1.05s var(--ease-io) calc(var(--k)*.13s) forwards,loBa .7s ease calc(1.9s + var(--k)*.05s) forwards}
.hk-lo-s{opacity:0}
.lo-st.is-in .hk-lo-s{opacity:1;transition:opacity .6s ease 2.3s}
.hk-lo-f{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(10px,1.4vw,18px);margin:clamp(10px,1.4vw,18px) 0 0;padding:0;list-style:none}
.hk-lo-f li{display:flex;flex-direction:column;justify-content:space-between;gap:12px;min-height:clamp(130px,13vw,180px);padding:clamp(14px,1.8vw,22px);border-radius:18px;background:var(--card);box-shadow:0 0 0 1px var(--line);color:#0a0a0a}
.hk-lo-f svg{display:block;width:min(100%,190px);height:auto;margin:auto 0;fill:currentColor}
.hk-lo-f svg.f{width:clamp(44px,5vw,64px)}
.hk-lo-f span{font:500 13.5px/1.2 var(--f-body);color:var(--ink-2)}
.hk-lo-f .b{background:#0a0a0a;color:#fff;box-shadow:none}
.hk-lo-f .b span{color:rgba(255,255,255,.66)}
.hk-lo-f .c{background:var(--hk-t);color:#fff;box-shadow:none}
.hk-lo-f .c span{color:rgba(255,255,255,.9)}
.hk-lo-f .d{background:var(--hk-krem);box-shadow:none}
.hk-lo-f .d span{color:#6b5a46}

/* ── Barvy a písmo ── */
.hk-plt .plt-c.y{color:#2e2013}
.plt-f{position:absolute;left:clamp(14px,2vw,26px);top:clamp(14px,2vw,26px);width:clamp(64px,7vw,96px);height:clamp(64px,7vw,96px);border-radius:50%;object-fit:cover;box-shadow:0 0 0 3px rgba(255,255,255,.28)}
.plt-c.y .plt-f{box-shadow:0 0 0 3px rgba(46,32,19,.12)}
.hk-py{padding-top:clamp(8px,1vw,16px)}
.hk-ty{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(10px,1.4vw,18px)}
.hk-ty-v{display:flex;flex-direction:column;justify-content:center;min-height:clamp(240px,26vw,360px);margin:0;padding:clamp(22px,4vw,56px);border-radius:clamp(22px,3vw,36px);background:var(--hk-krem);font:500 clamp(2.4rem,1.3rem + 3.6vw,5rem)/1.04 "HK Cormorant",Georgia,serif;letter-spacing:-.01em;color:#0a0a0a}
.hk-ty-v span{display:block}
.hk-ty-v em{display:block;min-height:1.04em;font-style:italic;font-weight:400;color:var(--hk-t)}
.hk-ty-v em::after{content:"";display:inline-block;width:2px;height:.82em;margin-left:5px;vertical-align:-.08em;background:var(--hk-t);animation:hkKurzor 1s steps(2) infinite}
@keyframes hkKurzor{50%{opacity:0}}
.hk-ty-l{display:grid;gap:clamp(10px,1.4vw,18px);margin:0;padding:0;list-style:none}
.hk-ty-l li{display:grid;grid-template-columns:clamp(58px,6vw,84px) minmax(0,1fr);align-items:center;column-gap:14px;padding:clamp(12px,1.5vw,20px) clamp(16px,2vw,24px);border-radius:18px;background:var(--card);box-shadow:0 0 0 1px var(--line)}
.hk-ty-l b{grid-row:span 2;font-weight:400;font-size:clamp(38px,3.8vw,54px);line-height:1;color:var(--ink)}
.hk-ty-l .c{font-family:"HK Cormorant",Georgia,serif;font-weight:500}
.hk-ty-l .h{font-family:"HK Hanken",sans-serif;font-weight:500}
.hk-ty-l .s{font-family:"HK Mono",monospace;font-size:clamp(32px,3.2vw,46px)}
.hk-ty-l span{align-self:end;font:600 15px/1.2 var(--f-body);color:var(--ink)}
.hk-ty-l small{align-self:start;margin-top:2px;font:400 13.5px/1.2 var(--f-body);color:var(--ink-2)}

/* ── Jedna značka všude ── */
.hk-zn-g{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(14px,2.4vw,32px);align-items:start;margin-top:clamp(24px,3vw,44px)}
.hk-zn figure{margin:0}
.hk-zn figcaption{margin-top:10px;font:500 13.5px/1.2 var(--f-body);color:var(--ink-2)}
.hk-z1{grid-row:span 2}
.hk-z1 img{display:block;width:100%;height:auto}
.hk-z2 img,.hk-z3 img{display:block;width:100%;height:auto;border-radius:16px;box-shadow:0 0 0 1px var(--line),var(--shadow-s)}
.hk-z3 img{background:#faf6f0}

/* ── Časová osa ── */
.hk-cas{padding-bottom:clamp(30px,5vw,72px)}
.hk-tl{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(12px,2vw,26px);margin:clamp(26px,3.4vw,48px) 0 0;padding:26px 0 0;list-style:none}
.hk-tl::before{content:"";position:absolute;left:0;right:0;top:6px;height:2px;background:var(--line-strong)}
.hk-tl::after{content:"";position:absolute;left:0;right:0;top:6px;height:2px;background:var(--hk-t);transform:scaleX(0);transform-origin:0 50%;transition:transform 1.4s var(--ease-io) .2s}
.hk-tl.is-in::after{transform:none}
.hk-tl li{position:relative}
.hk-tl li::before{content:"";position:absolute;left:0;top:-26px;width:14px;height:14px;border-radius:50%;background:var(--bg);box-shadow:inset 0 0 0 3px var(--hk-t);z-index:1}
.hk-tl time{display:block;font:500 12.5px/1.2 var(--f-mono);color:var(--hk-t2)}
.hk-tl b{display:block;margin-top:6px;font:600 clamp(15px,.9rem + .25vw,17.5px)/1.28 var(--f-body);color:var(--ink);text-wrap:balance}

/* ── Menší obrazovky ── */
@media (min-width:992px){.hk-kurt{right:-26%}}
@media (max-width:1199.98px){.hk-rz .cs-sp-g{grid-template-columns:minmax(0,1fr)}
.hk-c{height:clamp(15px,2.3vw,21px)}}
@media (max-width:991.98px){.hk-zn-g{grid-template-columns:minmax(0,1fr)}
.hk-z1{grid-row:auto}
.hk-lo-f{grid-template-columns:repeat(2,minmax(0,1fr))}
.hk-tl{grid-template-columns:minmax(0,1fr);gap:18px;padding:0 0 0 26px}
.hk-tl::before,.hk-tl::after{left:6px;right:auto;top:6px;bottom:6px;width:2px;height:auto}
.hk-tl::after{transform:scaleY(0);transform-origin:50% 0}
.hk-tl li::before{left:-26px;top:1px}
.hk-ty{grid-template-columns:minmax(0,1fr)}}
@media (max-width:991.98px){.hk-cary{-webkit-mask-image:linear-gradient(180deg,#000 36%,rgba(0,0,0,.26) 72%);mask-image:linear-gradient(180deg,#000 36%,rgba(0,0,0,.26) 72%)}}
@media (max-width:767.98px){.hk-dny{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin:0 0 10px}
.hk-dny button{min-height:46px;padding:0;border:0;border-radius:10px;background:rgba(255,255,255,.08);color:#fff;font:600 14px/1 var(--f-body);cursor:pointer}
.hk-dny button[aria-pressed="true"]{background:var(--hk-t)}
.hk-dny small{display:block;margin-top:4px;font:400 9.5px/1 var(--f-mono);opacity:.72}
.hk-m.t{gap:3px}
.hk-m.t .hk-r{grid-template-columns:44px repeat(3,minmax(0,1fr));gap:3px}
.hk-m.t .hk-rh span{font-size:11.5px}
.hk-m.t .hk-c{height:27px;border-radius:5px}
.hk-v{min-height:84px;padding-left:14px}
.hk-v span{font-size:13px}
.hk-b{height:44px;padding:0 16px}
.hk-tb span{display:none}
.hk-tb button{text-transform:capitalize}
.hk-lg{grid-template-columns:repeat(2,minmax(0,1fr))}
.hk-ty-v{min-height:220px}
.hk-hrana{--h:70px}
.hk-sit{background:linear-gradient(180deg,rgba(13,10,8,.62) 0,rgba(13,10,8,.34) 30%,rgba(13,10,8,.5) 54%,rgba(13,10,8,.88) 100%)}
.hk .cs-fa{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);column-gap:16px}
.hk-hrana svg{right:24px}
.plt-c{padding-left:96px}
.plt-f{top:50%;width:62px;height:62px;margin-top:-31px}}
@media (prefers-reduced-motion:reduce){.hk-kurt,.hk-hrana .c{animation:none}
.hk-cary path{stroke-dashoffset:0;animation:none}
.hk-c{transition:none}
.hk-m:not(.is-in) .hk-c{opacity:1}
.hk-lp{fill-opacity:1;stroke-dashoffset:0;stroke-opacity:0;animation:none!important}
.hk-lo-s{opacity:1}
.hk-gr{display:none}
.hk-ty-v em::after{animation:none}
.hk-tl::after{transition:none;transform:none}}
.sv-page.sv-js.hk .cs-sc{height:calc(var(--vh)*2.5)}
@media (prefers-reduced-motion:reduce){.sv-page.sv-js.hk .cs-sc{height:auto}}
