[hidden]{display:none!important}:root{--bg:#0b0812;--bg2:#141020;--bg3:#1d1730;--ink:#f6f1ff;--mut:#a79fbd;--line:rgb(var(--t) / .078);--gold:#ffd27a;--rose:#ff5fa2;--vio:#8b5cf6;--gr:linear-gradient(120deg,var(--gold),var(--rose) 55%,var(--vio));--r:20px;--e:cubic-bezier(.2,.8,.2,1);--t:255 255 255;--navb:#0b0812f0;--hb:#0b0812f2;--glass:#0b0812e6;--pop:#171225;--ocard:linear-gradient(160deg,#1d1730,#120e1c);--mapbg:#1a1626;--dho:rgba(5,3,10,.7);--hsh:0 2px 6px #000c,0 0 40px #0009;color-scheme:dark}
[data-theme=light]{--bg:#e8e0d6;--bg2:#ddd4c8;--bg3:#d2c8bb;--ink:#2a2030;--mut:#5a4f60;--line:#2a203024;--gold:#7d500e;--rose:#b02a5c;--vio:#5a3db0;--gr:linear-gradient(120deg,#efb75e,#e0568c 55%,#7a56d8);--t:42 32 48;--navb:#e3dacff2;--hb:#e8e0d6eb;--glass:#e6ddd2f0;--pop:#efe8de;--ocard:linear-gradient(160deg,#ece4d9,#ddd3c6);--mapbg:#d6cdc1;--dho:rgba(232,224,214,.8);--hsh:0 1px 0 #fff6;color-scheme:light}
[data-theme=light] :is(.pc,.bt,.lb,.dt){--t:255 255 255;--ink:#f6f1ff;--mut:#d3cae6;--gold:#ffd27a;--bg2:#141020;--line:#ffffff14;color:var(--ink)}
[data-theme=light] body{background:linear-gradient(180deg,#e2d8d4 0,var(--bg) 520px) no-repeat,var(--bg)}[data-theme=light] .dark-tiles{filter:sepia(.18) saturate(.85) brightness(.9)}[data-theme=light] .grt{filter:none}[data-theme=light] .ob{background:#efe8de;border-color:#2a203026;box-shadow:0 18px 40px -26px #2a203066,inset 0 1px #fff8}[data-theme=light] .mcol img{opacity:.22}[data-theme=light] .pin{border-color:#efe8de}[data-theme=light] .panel,[data-theme=light] .cl a{box-shadow:inset 0 1px #fff5}[data-theme=light] .btn{box-shadow:0 10px 26px -12px #b02a5c88}[data-theme=light] .chip[aria-pressed=true]{background:#2a2030;color:#efe8de}[data-theme=light] ::selection{color:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 "Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit}button{font:inherit;color:inherit}::selection{background:var(--rose);color:#fff}:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:6px}
.skip{position:fixed;left:-999px}.skip:focus{left:12px;top:12px;z-index:99;background:var(--gold);color:#000;padding:8px 14px;border-radius:10px}
.serif{font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;letter-spacing:-.02em}
.nav{position:fixed;inset:0 0 auto;z-index:800;display:flex;align-items:center;gap:28px;padding:14px clamp(16px,4vw,48px);transition:background .4s}.nav.solid{background:var(--navb);border-bottom:1px solid var(--line)}
.logo{display:flex;gap:9px;align-items:center;text-decoration:none;font-weight:700;font-size:20px;letter-spacing:-.02em}.logo svg{width:28px}
.nav nav{display:flex;gap:4px}.nav nav a{text-decoration:none;color:var(--mut);padding:8px 14px;border-radius:30px;transition:.2s}.nav nav a:hover,.nav nav a[aria-current]{color:var(--ink);background:rgb(var(--t) / .063)}.navr{margin-left:auto;display:flex;gap:8px}
sup{background:var(--rose);color:#fff;border-radius:10px;font-size:10px;padding:1px 6px;margin-left:3px}sup:empty{display:none}
.ghost{background:rgb(var(--t) / .051);border:1px solid var(--line);padding:8px 16px;border-radius:30px;cursor:pointer;text-decoration:none;font-size:14px}.ghost:hover{background:rgb(var(--t) / .102)}
.btn{display:inline-flex;align-items:center;gap:8px;border:0;cursor:pointer;padding:13px 22px;border-radius:40px;font-weight:600;text-decoration:none;background:var(--gr);color:#1a0b12;box-shadow:0 10px 30px -10px #ff5fa2aa;transition:transform .2s var(--e)}.btn:hover{transform:translateY(-2px)}.btn.s{background:rgb(var(--t) / .071);color:var(--ink);box-shadow:none;border:1px solid var(--line)}
.boot{height:100vh;display:grid;place-items:center}.spin{width:42px;height:42px;border-radius:50%;border:3px solid #fff2;border-top-color:var(--rose);animation:sp 1s linear infinite}@keyframes sp{to{transform:rotate(1turn)}}
/* HERO */
.hero{position:relative;min-height:min(880px,100vh);display:grid;place-items:center;overflow:hidden;padding:120px 20px 80px;isolation:isolate}
.aur{position:absolute;inset:-20%;z-index:-1;pointer-events:none;background:radial-gradient(40% 35% at 20% 30%,#8b5cf655,transparent 70%),radial-gradient(35% 30% at 80% 20%,#ff5fa244,transparent 70%),radial-gradient(40% 40% at 60% 85%,#ffd27a2a,transparent 70%);animation:aur 18s ease-in-out infinite alternate;will-change:transform}@keyframes aur{to{transform:translate(4%,-3%) rotate(8deg) scale(1.1)}}
.mosaic{position:absolute;inset:0;z-index:-3;display:flex;gap:18px;justify-content:center;transform:rotate(-8deg) scale(1.25)}.hero::after{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(88% 75% at 50% 50%,var(--bg) 25%,transparent 85%)}
.mcol{display:flex;flex-direction:column;gap:18px;animation:drift 60s linear infinite;will-change:transform;backface-visibility:hidden}.hero.off .mcol,.hero.off .aur{animation-play-state:paused}.mcol:nth-child(2n){animation-direction:reverse;animation-duration:75s}.mcol img{opacity:.26;width:170px;height:auto;border-radius:14px;aspect-ratio:3/4;object-fit:cover;background:rgb(var(--t) / .031)}@keyframes drift{to{transform:translateY(-50%)}}
.hin{text-align:center;max-width:920px;position:relative}.hin::before{content:"";position:absolute;inset:-40px -80px;z-index:-1;background:radial-gradient(closest-side,var(--hb) 55%,transparent);pointer-events:none}.hero h1,.dg h1,.rh1 h1{text-shadow:var(--hsh)}.eyebrow{display:inline-flex;gap:8px;align-items:center;border:1px solid var(--line);background:rgb(var(--t) / .039);padding:6px 14px;border-radius:30px;font-size:13px;color:var(--mut)}.dot{width:7px;height:7px;border-radius:50%;background:#4ade80;box-shadow:0 0 10px #4ade80}
.hero h1{font-size:clamp(44px,8vw,104px);line-height:.98;margin:22px 0 18px;font-weight:600}.grt{text-shadow:none;filter:drop-shadow(0 2px 8px #000c);background:var(--gr);-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{color:var(--mut);font-size:clamp(17px,2vw,21px);max-width:620px;margin:0 auto 34px}
.omni{position:relative;max-width:720px;margin:0 auto;text-align:left}.ob{display:flex;align-items:center;background:rgb(var(--t) / .063);border:1px solid rgb(var(--t) / .133);border-radius:60px;padding:8px 8px 8px 22px;box-shadow:0 30px 80px -20px #000c,inset 0 1px #fff2;transition:.25s}.ob:focus-within{border-color:#ffd27a88;box-shadow:0 30px 80px -20px #000c,0 0 0 6px #ffd27a1a}
.ob svg{width:20px;opacity:.6;flex:none}.ob input{flex:1;background:none;border:0;outline:0;font-size:18px;padding:12px 14px;color:var(--ink);min-width:0}.ob input::placeholder{color:#a79fbd99}
.qw{position:relative;flex:1;display:flex;min-width:0}.typed{position:absolute;left:14px;right:8px;top:50%;height:1.5em;line-height:1.5em;contain:strict;transform:translateY(-50%);pointer-events:none;color:#a79fbdb3;font-size:18px;white-space:nowrap;overflow:hidden;text-overflow:clip}.typed::after{content:"";display:inline-block;width:2px;height:1.05em;background:var(--gold);vertical-align:-3px;margin-left:2px;animation:bl 1s steps(1) infinite}.typed.still::after{display:none}@keyframes bl{50%{opacity:0}}
.pz{position:relative;display:flex;align-items:center;flex:none;border-left:1px solid rgb(var(--t) / .133);margin:0 8px 0 2px;padding-left:12px}.pz input{flex:none;width:118px;font-size:16px;padding:10px 4px;font-variant-numeric:tabular-nums}.pz input[aria-invalid=true]{color:#ff9db8}.pz select{appearance:none;background:rgb(var(--t) / .051);border:1px solid var(--line);border-radius:30px;color:var(--ink);font-size:13px;padding:6px 10px;cursor:pointer;outline-offset:2px}.pz select option{background:var(--bg2)}.pn{position:absolute;left:12px;top:calc(100% + 4px);font-size:11px;color:var(--gold);white-space:nowrap;pointer-events:none}.pn:empty{display:none}
.ac{position:absolute;left:0;right:0;top:calc(100% + 18px);background:var(--pop);border:1px solid var(--line);border-radius:22px;padding:8px;z-index:50;box-shadow:0 30px 80px #000a;max-height:420px;overflow:auto}.ac h6{margin:10px 12px 4px;color:var(--mut);font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.ac [role=option]{display:flex;gap:12px;align-items:center;padding:9px 12px;border-radius:12px;cursor:pointer}.ac [aria-selected=true],.ac [role=option]:hover{background:rgb(var(--t) / .071)}.ac .ic{width:34px;height:34px;border-radius:10px;background:rgb(var(--t) / .063);display:grid;place-items:center;flex:none;overflow:hidden}.ac .ic img{width:100%;height:100%;object-fit:cover}.ac small{color:var(--mut);margin-left:auto;white-space:nowrap}
.qk{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:22px}.qk button{background:rgb(var(--t) / .039);border:1px solid var(--line);border-radius:30px;padding:7px 14px;font-size:14px;cursor:pointer;color:var(--mut);transition:.2s}.qk button:hover{color:var(--ink);border-color:rgb(var(--t) / .251)}
.stats{display:flex;gap:clamp(20px,6vw,70px);justify-content:center;margin-top:56px}.stats b{display:block;font-size:clamp(28px,4vw,44px);font-weight:600}.stats span{color:var(--mut);font-size:14px}
/* SECTIONS */
.sec{padding:70px clamp(16px,4vw,48px);max-width:1440px;margin:auto}.sh{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:26px}.sh h2{font-size:clamp(28px,4vw,46px);margin:0;font-weight:600;line-height:1.05}.sh p{color:var(--mut);margin:6px 0 0}.sh a{color:var(--mut);white-space:nowrap}
.rw{position:relative}.rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(250px,290px);gap:20px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding:8px 4px 10px;margin:-8px -4px -2px;scroll-padding-inline:4px;scrollbar-width:thin;scrollbar-color:#ff5fa270 rgb(var(--t) / .039)}.rail>*{scroll-snap-align:start}
.rail::-webkit-scrollbar{height:6px}.rail::-webkit-scrollbar-track{background:rgb(var(--t) / .039);border-radius:6px}.rail::-webkit-scrollbar-thumb{background:linear-gradient(90deg,#ffd27a99,#ff5fa2aa);border-radius:6px}
.rail .rv{transform:none}.rail.hold{scroll-snap-type:none}
.ra{position:absolute;z-index:5;top:calc(50% - 30px);width:46px;height:46px;border-radius:50%;border:1px solid rgb(var(--t) / .149);background:var(--glass);color:var(--ink);font-size:24px;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 20px -6px #000;transition:opacity .25s,transform .2s;touch-action:none;-webkit-user-select:none;user-select:none}.ra:hover{border-color:#ffd27a88}.ra:active{transform:scale(.92)}.ra.l{left:-14px}.ra.r{right:-14px}.ra:disabled{opacity:.14;cursor:default;box-shadow:none}.ra:disabled:active{transform:none}.ra svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
@media (hover:none) and (pointer:coarse){.ra{display:none}}
.rail .pc{content-visibility:auto;contain-intrinsic-size:auto 280px auto 373px}
.pc{position:relative;display:block;text-decoration:none;border-radius:var(--r);overflow:hidden;background:var(--bg2);border:1px solid var(--line);transition:transform .35s var(--e),box-shadow .35s;outline-offset:4px}.pc:hover{transform:translateY(-6px);box-shadow:0 30px 60px -20px #000,0 0 0 1px rgb(var(--t) / .133)}
.pc .ph{aspect-ratio:3/4;position:relative;overflow:hidden}.pc .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s var(--e)}.pc .ph .pbg{transform:scale(1.2)}.pc:hover .ph img{transform:scale(1.06)}.pc .ph::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 30%,#0b0812cc 58%,#0b0812 92%)}
.pc .ill img{filter:grayscale(.3) brightness(.8)}.pc .cap{position:absolute;left:0;right:0;bottom:0;padding:16px;z-index:2}.pc h3{text-shadow:0 1px 2px #000,0 0 18px #000;margin:0 0 4px;font-size:18px;line-height:1.2;font-weight:600}.pc .m{color:#d9d2ea;font-size:13px}
.dt{position:absolute;z-index:2;top:12px;left:12px;background:#0b0812d9;border:1px solid rgb(var(--t) / .133);border-radius:14px;padding:6px 10px;text-align:center;line-height:1}.dt b{display:block;font-size:22px}.dt span{font-size:11px;text-transform:uppercase;color:var(--gold);letter-spacing:.08em}
.hrt{position:absolute;z-index:3;top:12px;right:12px;width:40px;height:40px;border-radius:50%;border:0;background:#0b0812c8;cursor:pointer;display:grid;place-items:center;transition:transform .2s}.hrt:active{transform:scale(.85)}.hrt svg{width:20px;fill:none;stroke:#fff;stroke-width:2}.hrt[aria-pressed=true] svg{fill:var(--rose);stroke:var(--rose)}
.why{display:inline-block;margin-top:6px;font-size:11px;padding:2px 8px;border-radius:20px;background:#ffd27a22;color:var(--gold)}.uv{display:inline-block;margin-top:6px;font-size:11px;padding:2px 8px;border-radius:20px;background:rgb(var(--t) / .094);color:#ddd}
.bento{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:190px;gap:16px}.bt{position:relative;border-radius:var(--r);overflow:hidden;text-decoration:none;border:1px solid var(--line);background:var(--bg2);padding:20px;display:flex;flex-direction:column;justify-content:end;transition:transform .35s var(--e)}.bt:hover{transform:scale(1.02)}.bt img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.45;z-index:0}.bt::before{content:"";position:absolute;inset:0;background:linear-gradient(transparent 20%,#0b0812e8);z-index:1}.bt>*:not(img){position:relative;z-index:2}.bt b{font-size:22px}.bt span{color:var(--mut)}.bt.w{grid-column:span 2}.bt.t{grid-row:span 2}
/* EXPLORE */
.ex{display:grid;grid-template-columns:minmax(420px,1fr) minmax(0,1.05fr);height:100vh;padding-top:68px}.exl{overflow:auto;padding:18px clamp(14px,2vw,28px) 40px;scrollbar-width:thin}.exm{position:sticky;top:0;height:calc(100vh - 68px);padding:0 14px 14px 0}#xmap{height:100%;border-radius:24px;border:1px solid var(--line)}
.fbar{position:sticky;top:-18px;z-index:20;background:linear-gradient(var(--bg) 80%,transparent);padding:10px 0 14px;display:grid;gap:10px}.fbar .ob{padding:4px 4px 4px 18px}.fbar .ob input{font-size:16px;padding:10px}
.chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:2px}.chip{flex:none;border:1px solid var(--line);background:rgb(var(--t) / .031);border-radius:30px;padding:7px 14px;font-size:14px;cursor:pointer;color:var(--mut);transition:.2s;white-space:nowrap}.chip[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.chip:hover{border-color:rgb(var(--t) / .251)}
select.chip,input.chip{appearance:none;color:var(--ink);background:rgb(var(--t) / .031)}input.chip{color-scheme:dark;padding:5px 10px}
.rh{display:flex;justify-content:space-between;align-items:center;color:var(--mut);font-size:14px;margin:4px 2px 14px}
.tl{display:flex;gap:4px;align-items:end;height:64px;margin:4px 0 10px}.tl button{flex:1;border:0;background:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px;padding:0;height:100%;justify-content:end}.tl i{display:block;width:100%;border-radius:6px 6px 2px 2px;background:rgb(var(--t) / .110);transition:.3s}.tl button:hover i{background:rgb(var(--t) / .251)}.tl button[aria-pressed=true] i{background:var(--gr)}.tl small{font-size:10px;color:var(--mut);text-transform:uppercase}
.xl{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px}.xl .pc.hl{box-shadow:0 0 0 2px var(--gold)}.empty{text-align:center;padding:60px 20px;color:var(--mut)}
.pin{width:30px;height:30px;border-radius:50% 50% 50% 4px;transform:rotate(-45deg);background:var(--gr);border:2px solid #fff;box-shadow:0 6px 14px #0009;transition:transform .2s}.pin.on{transform:rotate(-45deg) scale(1.4)}
.marker-cluster{background:#ff5fa233!important}.marker-cluster div{background:linear-gradient(135deg,#ff5fa2,#8b5cf6)!important;color:#fff;font-weight:700}
.leaflet-container{background:var(--mapbg);font:inherit}.dark-tiles{filter:brightness(.72) invert(1) contrast(.9) hue-rotate(200deg) saturate(.35) brightness(.85)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:var(--pop);color:var(--ink);border-radius:16px}.leaflet-popup-content a{color:var(--gold)}
.mtog{position:absolute;z-index:500;top:14px;left:50%;transform:translateX(-50%);background:var(--glass);border:1px solid var(--line);border-radius:30px;padding:8px 14px;font-size:13px;display:flex;gap:6px;align-items:center}
/* DETAIL */
.dh{position:relative;min-height:88vh;display:grid;align-items:end;padding:120px clamp(16px,5vw,64px) 50px;overflow:hidden;isolation:isolate}.dbg{position:absolute;inset:0;z-index:-1;width:100%;height:100%;opacity:0;transition:opacity .6s;background:var(--bg)}.dbg.on{opacity:1}.dh::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(var(--dho),var(--dho)),linear-gradient(transparent 40%,var(--bg))}
.dg{display:grid;grid-template-columns:minmax(260px,420px) 1fr;gap:clamp(24px,5vw,70px);align-items:end;max-width:1300px;margin:auto;width:100%}.pf{border-radius:22px;overflow:hidden;box-shadow:0 50px 100px -30px #000;cursor:zoom-in;border:1px solid rgb(var(--t) / .133);view-transition-name:poster;background:var(--bg2)}.pf img{width:100%;height:auto;display:block}
.dg h1{font-size:clamp(34px,5.4vw,72px);line-height:1.02;margin:12px 0 18px;font-weight:600}.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:24px 0}.fact{background:rgb(var(--t) / .043);border:1px solid var(--line);border-radius:16px;padding:14px 16px}.fact small{display:block;color:var(--mut);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.fact b{font-weight:600}
.acts{display:flex;flex-wrap:wrap;gap:10px}.warnb{display:inline-flex;gap:8px;background:#ffd27a1f;color:var(--gold);border-radius:12px;padding:8px 12px;font-size:14px}
.cd{display:inline-block;margin:6px 0 0;padding:8px 16px;border-radius:30px;background:rgb(var(--t) / .07);border:1px solid var(--line);font-weight:600;font-size:clamp(16px,1.6vw,19px);font-variant-numeric:tabular-nums}
.dmap{height:360px;border-radius:24px;border:1px solid var(--line)}.two{display:grid;grid-template-columns:1.3fr 1fr;gap:24px}.panel{background:var(--bg2);border:1px solid var(--line);border-radius:24px;padding:24px}.panel dl{display:grid;grid-template-columns:120px 1fr;gap:10px;margin:0}.panel dt{color:var(--mut)}.panel dd{margin:0}
.gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.gal button{border:0;padding:0;border-radius:14px;overflow:hidden;cursor:zoom-in;aspect-ratio:3/4;background:var(--bg2)}.gal img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--e)}.gal button:hover img{transform:scale(1.07)}
.lb{position:fixed;inset:0;z-index:1500;background:#05030af7;display:grid;grid-template-columns:70px 1fr 70px;align-items:center;animation:fi .25s}.lb figure{margin:0;text-align:center;display:grid;place-items:center;height:100vh;padding:30px 0}.lb img{max-width:100%;max-height:84vh;border-radius:12px;box-shadow:0 40px 80px #000}.lb figcaption{color:var(--mut);margin-top:12px}.lb button{background:rgb(var(--t) / .078);border:0;width:52px;height:52px;border-radius:50%;font-size:28px;cursor:pointer;margin:auto}.lbx{position:absolute;top:20px;right:20px}@keyframes fi{from{opacity:0}}
/* REGION */
.rh1{padding:140px clamp(16px,5vw,64px) 30px;max-width:1440px;margin:auto}.rh1 h1{font-size:clamp(40px,7vw,90px);margin:0;line-height:1}.kp{display:flex;gap:28px;flex-wrap:wrap;margin-top:24px}.kp b{font-size:34px;display:block}.kp span{color:var(--mut)}
.tln{border-left:1px solid var(--line);margin-left:8px;padding-left:28px}.tln h3{position:relative;font-size:28px;margin:40px 0 16px}.tln h3::before{content:"";position:absolute;left:-36px;top:12px;width:15px;height:15px;border-radius:50%;background:var(--gr);box-shadow:0 0 20px #ff5fa2}
/* ONBOARDING */
.onb{position:fixed;inset:0;z-index:1400;background:#05030ae6;display:grid;place-items:center;padding:16px;animation:fi .3s}.ocard{background:var(--ocard);border:1px solid rgb(var(--t) / .122);border-radius:28px;max-width:560px;width:100%;padding:34px;box-shadow:0 60px 120px #000}.ocard h2{font-size:32px;margin:0 0 8px}.ocard p{color:var(--mut);margin:0 0 20px}.steps{display:flex;gap:6px;margin-bottom:22px}.steps i{height:4px;flex:1;border-radius:4px;background:rgb(var(--t) / .102)}.steps i.on{background:var(--gr)}
.ocard .chips{flex-wrap:wrap}.ocard input{width:100%;background:rgb(var(--t) / .051);border:1px solid var(--line);border-radius:14px;padding:14px;color:var(--ink);font-size:18px}.orow{display:flex;justify-content:space-between;margin-top:26px;align-items:center}.link{background:none;border:0;color:var(--mut);cursor:pointer;text-decoration:underline}
#toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,30px);opacity:0;background:var(--ink);color:var(--bg);padding:12px 20px;border-radius:40px;font-weight:600;z-index:2000;transition:.35s var(--e);pointer-events:none;box-shadow:0 20px 40px #0008}#toast.on{opacity:1;transform:translate(-50%,0)}
footer{border-top:1px solid var(--line);padding:40px clamp(16px,4vw,48px);color:var(--mut);font-size:14px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.rv{opacity:0;transform:translateY(24px);transition:opacity .8s var(--e),transform .8s var(--e)}.rv.in{opacity:1;transform:none}
::view-transition-old(root),::view-transition-new(root){animation-duration:.35s}
@media(max-width:960px){.nav nav{display:none}.ex{grid-template-columns:1fr;height:auto}.exm{position:relative;height:46vh;order:-1;padding:0 12px}.bento{grid-template-columns:repeat(2,1fr)}.dg,.two{grid-template-columns:1fr}.dg .pf{max-width:340px}.mosaic img{width:120px}}
@media(max-width:600px){.ob{flex-wrap:wrap;border-radius:26px;padding:6px 6px 8px 16px;row-gap:4px}.ob>svg{display:none}.qw{flex:1 1 100%}.ob .btn{padding:10px 16px}.pz{flex:1 1 150px;min-width:0;margin:0 8px 0 4px;border-left:0;padding-left:0;gap:6px}.pz input{width:62px;flex:none}.pn{position:static;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.typed{font-size:16px}.fbar .ob input,.ob input{font-size:16px}.bento{grid-template-columns:1fr}.bt.w{grid-column:auto}.stats{gap:18px}.hero h1{font-size:44px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}}

.thm{width:38px;height:38px;padding:0;display:grid;place-items:center}.thm svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.thm .sun{display:none}[data-theme=light] .thm .sun{display:block}[data-theme=light] .thm .moon{display:none}

/* KALENDÁŘ (struktura v3) */
.kalh{max-width:1100px;padding:110px clamp(16px,4vw,48px) 10px}.kalh h1{font-size:clamp(34px,5vw,60px)}.kj{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 0}.kj .chip{text-decoration:none;color:var(--ink)}.kj .chip:hover{border-color:#ffd27a88}
.kal{padding-top:10px;max-width:1100px}.mon{margin-bottom:26px;scroll-margin-top:60px}.mon h2{position:sticky;top:66px;z-index:2;background:var(--bg);margin:0;padding:10px 0 8px;font-size:clamp(24px,3vw,32px);font-weight:600;border-bottom:1px solid var(--line)}.mon h2 small{font:500 14px Inter,ui-sans-serif,system-ui,sans-serif;color:var(--mut);margin-left:6px}
.cl{list-style:none;margin:0;padding:0}.cl li{display:grid;grid-template-columns:90px 1fr;gap:12px;padding:10px 4px;border-bottom:1px solid var(--line)}.cl .d{font-weight:700;color:var(--gold);font-variant-numeric:tabular-nums}.cl a{text-decoration:none;font-weight:600}.cl a:hover{color:var(--gold);text-decoration:underline}.cl .m{color:var(--mut);font-size:14px}

/* KRAJE: všech 14 na jednu obrazovku */
.krp{height:100vh;height:100svh;min-height:520px;display:flex;flex-direction:column;padding:76px clamp(14px,3vw,40px) 16px;max-width:1600px;margin:auto;gap:clamp(8px,1.6vh,16px)}
.krh{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap}.krh h1{font-size:clamp(28px,5.2vh,56px);margin:0;line-height:1}
.kgr{flex:1;min-height:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:clamp(6px,1.2vh,14px)}
.kgr .bt{padding:clamp(10px,1.6vh,18px);border-radius:16px;min-height:0}.kgr .bt b{font-size:clamp(14px,2.1vh,20px);line-height:1.15}.kgr .bt span{font-size:clamp(12px,1.6vh,14px)}.kgr .bt.w{grid-column:span 2}.kgr .bt:hover{transform:scale(1.015)}
@media(max-width:960px){.kgr{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,1fr))}.kgr .bt.w{grid-column:span 2}}
@media(max-width:600px){.krp{padding-top:70px}.kgr{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(7,minmax(0,1fr))}.kgr .bt.w{grid-column:auto}.kgr .bt{padding:8px 10px;border-radius:12px}.kgr .bt b{font-size:13.5px}.kgr .bt span{font-size:12px}}

/* úvod: kompaktní rytmus řad */
.hero~.sec{padding-top:20px;padding-bottom:12px}.hero~.sec .sh{margin-bottom:10px}.hero~.sec .sh h2{font-size:clamp(22px,2.5vw,32px)}.hero~.sec .sh p{margin-top:2px;font-size:14px}.hero~.sec .bento{grid-auto-rows:160px}.hero+.sec{padding-top:36px}
@media(max-width:600px){.hero~.sec{padding-top:14px;padding-bottom:8px}.hero~.sec .sh{margin-bottom:8px}}

/* PSČ → obce: rozbalovací seznam */
.pdd{position:absolute;left:0;top:calc(100% + 18px);width:min(360px,86vw);max-height:min(440px,60vh);overflow:auto;overscroll-behavior:contain;background:var(--pop);border:1px solid var(--line);border-radius:18px;padding:6px;z-index:60;box-shadow:0 24px 60px -10px #000a}
.pdd [role=option]{display:flex;gap:10px;align-items:center;min-height:44px;padding:8px 12px;border-radius:12px;cursor:pointer;font-size:14px;line-height:1.3}.pdd [role=option]:hover,.pdd [aria-selected=true]{background:rgb(var(--t) / .08)}
.pdd .pt{flex:1;min-width:0}.pdd .pt span{color:var(--mut)}.pdd .po{font-size:12px}.pdd small{color:var(--gold);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.pdd .pe{padding:12px;color:var(--mut);font-size:14px}
[data-theme=light] .pdd{box-shadow:0 24px 50px -18px #2a203066}
@media(max-width:600px){.pz input{width:96px}.pdd{left:-6px;width:calc(100vw - 44px)}}

.theme-switching *,.theme-switching *::before,.theme-switching *::after{transition:none!important}::view-transition-old(root),::view-transition-new(root){animation-duration:.28s;animation-timing-function:ease}@media(prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}
@media(max-width:600px){#toast{width:max-content;max-width:calc(100vw - 32px);text-align:center;font-size:14px;line-height:1.35;padding:10px 16px;border-radius:18px;bottom:calc(16px + env(safe-area-inset-bottom))}}

.fnav{flex-basis:100%;display:flex;flex-direction:column;gap:8px;line-height:1.75;padding-bottom:20px;border-bottom:1px solid var(--line)}.fnav b{color:var(--ink);font-weight:600}.fnav a{color:inherit;text-decoration:none}.fnav a:hover{color:var(--ink);text-decoration:underline}
