:root{
  --bg:#0b0f1a; --ink:#f2f5fa; --muted:#b8c2d3; --panel:#0f1424;
  --accent:#ff8800; --border:rgba(255,255,255,.12); --max:1150px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--ink);overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
.container{width:min(var(--max),92%);margin:0 auto}
.center{text-align:center}
.site-header.fixed{position:sticky;top:0;z-index:50;background:linear-gradient(180deg,rgba(11,15,26,.85),rgba(11,15,26,.6) 90%, transparent)}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0}
.brand{display:flex;align-items:center;gap:10px}
.brand-mark{width:38px;height:auto;display:block}
.brand-text{font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.nav{display:flex;gap:14px;flex-wrap:wrap}
.nav a{padding:8px 10px;border:1px solid var(--border);border-radius:999px}
.nav-toggle{display:none;border:1px solid var(--border);background:transparent;color:var(--ink);padding:6px 10px;border-radius:8px}
@media (max-width:820px){
  .nav{display:none}
  .nav.open{display:flex;flex-direction:column;gap:10px;position:absolute;top:64px;right:4%;background:var(--panel);padding:10px;border:1px solid var(--border);border-radius:12px}
  .nav-toggle{display:inline-block}
}
.hero{position:relative}
.slider{position:relative;overflow:hidden}
.slide{
  position:relative;min-height:560px;display:grid;align-items:center;
  background:var(--panel) center/cover no-repeat; background-image:var(--bg);
  padding:24px 0;
}
.slide::before{
  content:"";position:absolute;inset:0;background:
    radial-gradient(600px 300px at 15% 5%, rgba(255,255,255,.06), transparent 60%),
    linear-gradient(180deg, rgba(11,15,26,.7), rgba(11,15,26,.4) 35%, rgba(11,15,26,.85));
}
.slide-media{position:relative;z-index:1;display:flex;align-items:flex-end;justify-content:center}
.slide-media.full{align-items:center}
.slide-content{position:relative;z-index:1;max-width:820px;margin:0 auto;text-align:center;padding:0 16px}
.slide h1{font-size:clamp(26px,5vw,44px);margin:0 0 8px;font-weight:900;letter-spacing:.03em}
.slide h1 .sub{font-size:clamp(16px,3vw,20px);font-weight:700;color:var(--muted)}
.slide h2.tight{font-size:clamp(22px,4vw,36px);margin:0 0 8px;font-weight:900}
.lead{color:var(--ink);opacity:.9}
.slider-arrow{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.35);border:1px solid var(--border);color:#fff;padding:8px 12px;border-radius:10px;z-index:2}
.slider-arrow:hover{background:rgba(0,0,0,.5)}
.slider-arrow.prev{left:10px}
.slider-arrow.next{right:10px}
.slider-dots{position:absolute;left:0;right:0;bottom:12px;display:flex;gap:8px;justify-content:center;z-index:2}
.slider-dots button{width:10px;height:10px;border-radius:50%;border:1px solid var(--border);background:transparent;opacity:.7}
.slider-dots button[aria-selected="true"]{background:var(--accent);opacity:1;border-color:var(--accent)}
.section{padding:44px 0}
.rule{border:0;height:1px;background:var(--border);margin:10px 0 20px}
.grid{display:grid;gap:18px}
.grid-2{grid-template-columns:1fr}
.grid-3{grid-template-columns:1fr}
@media(min-width:900px){
  .grid-2{grid-template-columns:1fr 1fr}
  .grid-3{grid-template-columns:repeat(3,1fr)}
}
.card{background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02));border:1px solid var(--border);border-radius:18px;padding:22px}
.hours{width:100%;border-collapse:collapse;border:1px solid var(--border);border-radius:12px;overflow:hidden}
.hours th,.hours td{padding:10px;border-bottom:1px solid var(--border)}
.hours th{width:40%;text-align:left;color:var(--muted)}
.hours tr:last-child td{border-bottom:0}
.muted{color:var(--muted)}
.note{color:var(--ink);opacity:.85}
.event{background:rgba(255,255,255,.03);border:1px solid var(--border);border-left:6px solid var(--accent);border-radius:14px;padding:14px}
.event h3,.event h4{margin:0 0 6px}
.meta,.emeta{color:var(--muted);font-size:.95rem}
.tags,.etags{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
.tag{font-size:.75rem;border:1px solid var(--border);padding:4px 8px;border-radius:999px}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 16px}
.pill{padding:8px 12px;border-radius:999px;border:1px solid var(--border);font-weight:800;opacity:.55;cursor:pointer}
.pill[data-active="1"]{opacity:1;box-shadow:0 0 0 2px rgba(255,255,255,.12)}
#popup-overlay{position:fixed;inset:0;background:rgba(0,0,0,.65);display:none;z-index:9998}
#popup{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);
  background:#0c1020;color:#fff;border:2px solid var(--accent);border-radius:16px;padding:22px;width:min(92vw,560px);
  box-shadow:0 12px 42px rgba(0,0,0,.5);display:none;z-index:9999}
#popup .close{position:absolute;top:10px;right:12px;background:transparent;border:0;color:#fff;font-size:1.6rem;cursor:pointer}
.popup-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.popup-img{display:block;width:100%;height:auto;border-radius:10px;margin-top:12px;border:1px solid var(--border)}
