
:root{--bg:#fff8ec;--ink:#24133a;--muted:#6d6180;--card:#ffffff;--line:rgba(36,19,58,.12);--purple:#57268d;--gold:#f2b632;--grad:linear-gradient(90deg,#7b3fc4,#e2559b,#f2b632);--shadow:0 30px 60px -28px rgba(43,23,69,.45)}
[data-theme=night]{--bg:#0e0916;--ink:#fff;--muted:#b8aecb;--card:rgba(255,255,255,.06);--line:rgba(255,255,255,.12);--shadow:0 30px 70px -30px rgba(0,0,0,.8)}
*{box-sizing:border-box;margin:0;padding:0}html{background:var(--bg)}
body{font-family:Manrope,system-ui,sans-serif;color:var(--ink);background:var(--bg);min-height:100vh;overflow-x:hidden;position:relative}
.orbs{position:fixed;inset:0;pointer-events:none;z-index:0}.orbs i{position:absolute;width:46vmax;height:46vmax;border-radius:50%;filter:blur(90px);opacity:.28}
.orbs i:nth-child(1){background:#7b3fc4;left:-14vmax;top:-18vmax}.orbs i:nth-child(2){background:#e2559b;right:-16vmax;top:10vmax}.orbs i:nth-child(3){background:#f2b632;left:30vmax;bottom:-26vmax;opacity:.18}
[data-theme=day] .orbs i{opacity:.16}
.top,main,.bottom{position:relative;z-index:1}
.top{display:flex;justify-content:center;padding:18px 20px 0}.logo{width:148px;height:auto}[data-theme=night] .logo{filter:brightness(0) invert(1)}
main{max-width:1120px;margin:0 auto;padding:clamp(14px,2.4vh,30px) clamp(16px,4vw,32px) 36px}
.ask{text-align:center;max-width:760px;margin:0 auto}
.kicker{display:inline-block;font-weight:800;font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--purple);background:rgba(123,63,196,.1);padding:6px 12px;border-radius:99px}
[data-theme=night] .kicker{color:var(--gold);background:rgba(242,182,50,.1)}
h1{font-family:"Bricolage Grotesque",Manrope,sans-serif;font-weight:800;font-size:clamp(32px,4.9vw,60px);line-height:1;letter-spacing:-.03em;margin:12px 0 10px}
h1 span{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.lede{font-size:clamp(15px,1.5vw,17px);line-height:1.55;color:var(--muted);max-width:620px;margin:0 auto}
.locate{margin-top:14px;border:1px solid var(--line);background:var(--card);color:var(--ink);font:700 14px Manrope,sans-serif;padding:9px 16px;border-radius:99px;cursor:pointer;backdrop-filter:blur(8px)}
.locate:hover{border-color:var(--purple)}.locate-msg{min-height:18px;margin-top:6px;font-size:14px;color:var(--muted)}
.locs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,2.6vw,28px);margin-top:clamp(8px,1.6vh,18px)}
.loc{display:flex;flex-direction:column;text-decoration:none;color:inherit;background:var(--card);border:1px solid var(--line);border-radius:26px;overflow:hidden;box-shadow:var(--shadow);
  transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .35s;animation:rise .7s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--d);backdrop-filter:blur(10px)}
.loc:hover{transform:translateY(-8px) rotate(-.4deg);border-color:rgba(242,182,50,.7)}
.loc:nth-child(2):hover{transform:translateY(-8px) rotate(.4deg)}
.loc.closest{outline:3px solid var(--gold);outline-offset:4px}
@keyframes rise{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
.win{margin:12px 12px 0;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:#1b1030}
.bar{display:flex;align-items:center;gap:6px;padding:9px 12px;background:#2b1745}.bar i{width:9px;height:9px;border-radius:50%;background:#ff6b6b}.bar i:nth-child(2){background:#f2b632}.bar i:nth-child(3){background:#45d483}
.bar span{margin-left:10px;font:600 12px Manrope,sans-serif;color:#d9cfee;background:rgba(255,255,255,.08);padding:3px 10px;border-radius:99px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.shot{position:relative;aspect-ratio:16/7.5;overflow:hidden}.shot img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.loc:hover .shot img{transform:scale(1.06)}
.status,.last,.near{position:absolute;left:12px;font:800 12.5px Manrope,sans-serif;padding:7px 12px;border-radius:99px;backdrop-filter:blur(8px)}
.status{top:12px;background:rgba(14,9,22,.72);color:#fff}.status.open{background:rgba(20,120,70,.85)}.status.closed{background:rgba(120,30,40,.82)}
.last{top:12px;left:auto;right:12px;background:var(--gold);color:#24133a}.near{bottom:12px;background:#fff;color:#24133a}
.info{padding:14px 20px 18px;display:flex;flex-direction:column;gap:4px;flex:1}
.eyebrow{font-weight:800;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.info h2{font-family:"Bricolage Grotesque",Manrope,sans-serif;font-size:clamp(28px,3.2vw,40px);line-height:1;letter-spacing:-.02em}
.addr{color:var(--muted);font-size:15px}.note{font-weight:700;font-size:14.5px;color:var(--purple)}[data-theme=night] .note{color:var(--gold)}
details{margin-top:4px;font-size:14px;color:var(--muted)}summary{cursor:pointer;font-weight:700;list-style:none}summary::after{content:" +"}details[open] summary::after{content:" -"}
.hours{list-style:none;margin-top:8px;display:grid;gap:4px}.hours li{display:flex;justify-content:space-between;gap:10px;border-bottom:1px dashed var(--line);padding:4px 0}.hours b{color:var(--ink)}
.go{margin-top:auto;align-self:flex-start;font-weight:800;font-size:15.5px;background:var(--purple);color:#fff;padding:11px 18px;border-radius:13px;transition:background .3s}
.go b{display:inline-block;transition:transform .3s}.loc:hover .go b{transform:translateX(5px)}[data-theme=night] .go{background:var(--gold);color:#24133a}
.foot-note{text-align:center;margin-top:34px;color:var(--muted);font-size:14.5px}.foot-note a{color:inherit;font-weight:700}
.bottom{text-align:center;padding:24px 16px 34px;color:var(--muted);font-size:13px}
@media(max-width:760px){.locs{grid-template-columns:1fr}.logo{width:126px}.loc:hover{transform:none}.shot{aspect-ratio:16/8}.top{padding-top:12px}}
@media(min-width:761px) and (max-height:820px){.top{padding-top:12px}.logo{width:126px}h1{font-size:clamp(30px,4.2vw,48px);margin:8px 0 6px}.lede{font-size:15px}.locate{margin-top:10px}.shot{aspect-ratio:16/6.4}.info{padding:12px 18px 14px}.note{display:none}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
