@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-wght-normal-CnvboYUG.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-wght-normal-Ca2vKHc0.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-wght-normal-ukD16Tqj.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/atkinson-hyperlegible-next-latin-ext-400-normal-BalHKn7d.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-next-latin-ext-400-normal-qxMiU51n.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/atkinson-hyperlegible-next-latin-400-normal-FfmJh7DR.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-next-latin-400-normal-DPp7N0cD.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/atkinson-hyperlegible-next-latin-ext-600-normal-kZZEtAc7.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-next-latin-ext-600-normal-BBAQIogt.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/atkinson-hyperlegible-next-latin-600-normal-BBuhw47K.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-next-latin-600-normal-BhgCag5w.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/atkinson-hyperlegible-next-latin-ext-700-normal-CBw-mJf_.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-next-latin-ext-700-normal-292QVhS1.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/atkinson-hyperlegible-next-latin-700-normal-Dpiyiu63.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-next-latin-700-normal-C2qZD_Q9.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ivory:#faf6ee;--ivory-2:#f3ede1;--paper:#fffdf8;--ink:#1a2130;--ink-2:#3a4254;--muted:#5c6474;--line:#e5ddcd;--line-2:#d8cfbd;--blue:#1e3a5f;--blue-2:#2b4f7c;--blue-ink:#10233b;--blue-tint:#e3eaf3;--terra:#c4552d;--terra-ink:#a8431f;--terra-tint:#f8e4da;--olive:#5b6b3a;--ok:#2c6e49;--ok-tint:#e1f0e6;--warn:#9a5b0b;--warn-tint:#fbefd6;--danger:#a3261b;--danger-tint:#fbe3df;--focus:#1e63c7;--font-display:"Fraunces Variable", "Iowan Old Style", Georgia, serif;--font-body:"Atkinson Hyperlegible Next", system-ui, -apple-system, "Segoe UI", sans-serif;--r-s:8px;--r-m:14px;--r-l:22px;--shadow-1:0 1px 2px #1a21300f, 0 1px 1px #1a21300a;--shadow-2:0 8px 24px -10px #10233b38, 0 2px 6px #10233b0f;--shadow-3:0 24px 48px -16px #10233b59;--tabbar-h:64px;--header-h:64px;--safe-b:env(safe-area-inset-bottom,0px);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;overflow-x:clip}body{background:var(--ivory);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.5;overflow-x:clip}img,svg{max-width:100%;display:block}a{color:var(--blue);text-underline-offset:3px}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:6px}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.015em;font-variation-settings:"opsz" 72, "SOFT" 30;margin:0;font-weight:600;line-height:1.12}h1{font-size:clamp(2rem,6.2vw,3.6rem)}h2{font-size:clamp(1.35rem,3.4vw,1.9rem)}h3{font-variation-settings:"opsz" 24;font-size:1.15rem}p{margin:0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--blue);color:#fff;border-radius:var(--r-s);padding:10px 16px;transition:top .15s;position:absolute;top:-60px;left:12px}.skip-link:focus{top:12px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important}}.wrap{width:100%;max-width:1200px;margin:0 auto;padding:0 18px}.shell-main{min-height:100dvh;padding-bottom:calc(var(--tabbar-h) + var(--safe-b) + 24px)}.topbar{z-index:40;background:color-mix(in srgb, var(--ivory) 88%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(14px);border-bottom:1px solid #0000;transition:border-color .2s;position:sticky;top:0}.topbar.scrolled{border-bottom-color:var(--line)}.topbar-inner{height:var(--header-h);align-items:center;gap:16px;display:flex}.brand{color:var(--ink);font-family:var(--font-display);letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:10px;font-size:1.12rem;font-weight:650;text-decoration:none;display:inline-flex}.brand img{width:30px;height:30px}.brand small{font-family:var(--font-body);color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:500;line-height:1;display:block}.topnav{gap:4px;margin-left:12px;display:none}.topnav a{color:var(--ink-2);border-radius:999px;padding:8px 12px;font-size:.95rem;font-weight:600;text-decoration:none}.topnav a:hover{background:var(--ivory-2)}.topnav a.active{background:var(--blue);color:#fff}.topbar-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.tabbar{z-index:50;height:calc(var(--tabbar-h) + var(--safe-b));padding-bottom:var(--safe-b);background:color-mix(in srgb, var(--paper) 92%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(16px);border-top:1px solid var(--line);grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.tabbar a{color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:.72rem;font-weight:600;text-decoration:none;display:flex;position:relative}.tabbar a svg{stroke-width:2px;width:22px;height:22px}.tabbar a.active{color:var(--blue)}.tabbar a.active:before{content:"";background:var(--terra);border-radius:0 0 3px 3px;width:28px;height:3px;position:absolute;top:0}.tabbar .badge{background:var(--terra);color:#fff;border-radius:999px;place-items:center;min-width:17px;height:17px;padding:0 4px;font-size:.66rem;display:grid;position:absolute;top:8px;left:calc(50% + 6px)}@media (min-width:960px){.topnav{display:flex}.tabbar{display:none}.shell-main{padding-bottom:64px}.wrap{padding:0 32px}}.site-footer{border-top:1px solid var(--line);color:var(--muted);margin-top:56px;padding:28px 0 8px;font-size:.88rem}.site-footer .cols{flex-wrap:wrap;align-items:baseline;gap:12px 28px;display:flex}.site-footer a{color:var(--ink-2)}.btn{border:1px solid var(--line-2);background:var(--paper);min-height:44px;color:var(--ink);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:.95rem;font-weight:650;text-decoration:none;transition:background .15s,border-color .15s,transform .1s;display:inline-flex}.btn:hover{background:var(--ivory-2)}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn svg{flex:none;width:18px;height:18px}.btn-primary{background:var(--blue);border-color:var(--blue);color:#fff}.btn-primary:hover{background:var(--blue-ink)}.btn-accent{background:var(--terra);border-color:var(--terra);color:#fff}.btn-accent:hover{background:var(--terra-ink)}.btn-ghost{background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--ivory-2)}.btn-danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn-sm{min-height:36px;padding:0 14px;font-size:.88rem}.icon-btn{border:1px solid var(--line);background:var(--paper);width:44px;height:44px;color:var(--ink);border-radius:999px;flex:none;place-items:center;display:inline-grid}.icon-btn:hover{background:var(--ivory-2)}.icon-btn svg{width:20px;height:20px}.icon-btn.on{background:var(--terra-tint);color:var(--terra-ink);border-color:#efc3ad}.chip{border:1px solid var(--line-2);background:var(--paper);min-height:38px;color:var(--ink-2);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:.9rem;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.chip svg{width:16px;height:16px}.chip:hover{border-color:var(--blue-2)}.chip[aria-pressed=true],.chip.active{background:var(--blue);border-color:var(--blue);color:#fff}.chip-row{scrollbar-width:none;scroll-snap-type:x proximity;gap:8px;margin:0 -18px;padding:2px 18px 4px;display:flex;overflow-x:auto}.chip-row::-webkit-scrollbar{display:none}.chip-row>*{scroll-snap-align:start}@media (min-width:960px){.chip-row{flex-wrap:wrap;margin:0;padding:2px 0 4px}}.tag{letter-spacing:.01em;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:.76rem;font-weight:700;line-height:1.3;display:inline-flex}.tag svg{width:13px;height:13px}.trust{border:1px solid #0000;border-radius:999px;align-items:center;gap:5px;padding:3px 9px 3px 7px;font-size:.76rem;font-weight:700;line-height:1.3;display:inline-flex}.trust svg{width:14px;height:14px}.trust.ok{background:var(--ok-tint);color:var(--ok)}.trust.warn{background:var(--warn-tint);color:var(--warn);border-color:#efd9a8}.trust.info{background:var(--blue-tint);color:var(--blue)}.status-tag{background:var(--danger-tint);color:var(--danger)}.live-dot{background:var(--terra);border-radius:50%;flex:none;width:9px;height:9px;display:inline-block;position:relative}.live-dot:after{content:"";border:2px solid var(--terra);opacity:0;border-radius:50%;animation:1.8s cubic-bezier(0,0,.2,1) infinite ping;position:absolute;inset:-4px}@keyframes ping{0%{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(1.8)}}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--terra-ink);font-size:.78rem;font-weight:700}.muted{color:var(--muted)}.small{font-size:.88rem}.section{margin-top:40px}.section-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:14px;display:flex}.section-head a{white-space:nowrap;font-size:.92rem;font-weight:650}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-m);box-shadow:var(--shadow-1)}.notice{border-radius:var(--r-m);background:var(--blue-tint);color:var(--blue-ink);align-items:flex-start;gap:12px;padding:14px 16px;font-size:.93rem;display:flex}.notice svg{flex:none;width:20px;height:20px;margin-top:1px}.notice.warn{background:var(--warn-tint);color:#6b3f06}.notice.danger{background:var(--danger-tint);color:#7a1c13}.notice.ok{background:var(--ok-tint);color:#1d4f33}.skeleton{background:linear-gradient(90deg, var(--ivory-2) 0%, #ece4d4 40%, var(--ivory-2) 80%);border-radius:var(--r-s);background-size:200% 100%;animation:1.4s linear infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.state{text-align:center;color:var(--muted);justify-items:center;gap:10px;padding:40px 20px;display:grid}.state svg{width:36px;height:36px;color:var(--line-2)}.state h3{color:var(--ink)}.field{gap:6px;display:grid}.field label,.field .label{font-size:.9rem;font-weight:650}.field .hint{color:var(--muted);font-size:.82rem}.input,.select,.textarea{border-radius:var(--r-s);border:1px solid var(--line-2);background:#fff;width:100%;min-height:46px;padding:10px 14px;font-size:1rem}.textarea{resize:vertical;min-height:110px}.input:focus,.select:focus,.textarea:focus{border-color:var(--focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--focus) 22%, transparent);outline:none}.form-grid{gap:16px;display:grid}.check{align-items:flex-start;gap:10px;font-size:.92rem;display:flex}.check input{width:20px;height:20px;accent-color:var(--blue);margin-top:2px}.search-box{border:1.5px solid var(--line-2);box-shadow:var(--shadow-2);background:#fff;border-radius:999px;align-items:center;gap:8px;padding:6px 6px 6px 18px;transition:border-color .15s,box-shadow .15s;display:flex;position:relative}.search-box:focus-within{border-color:var(--blue);box-shadow:0 0 0 4px color-mix(in srgb, var(--blue) 14%, transparent), var(--shadow-2)}.search-box>svg{width:20px;height:20px;color:var(--muted);flex:none}.search-box input{background:0 0;border:0;flex:1;min-width:0;padding:8px 0;font-size:1.05rem}.search-box input:focus{outline:none}.search-box .btn{min-height:44px}.interpretation{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:.88rem;display:flex}.interpretation .pill{background:var(--blue-tint);color:var(--blue);border-radius:999px;align-items:center;gap:4px;padding:3px 10px;font-weight:650;display:inline-flex}.hero{padding:18px 0 8px;position:relative}.hero .kicker{color:var(--muted);align-items:center;gap:10px;font-size:.92rem;font-weight:600;display:flex}.hero h1{max-width:14ch;margin:10px 0 6px}.hero h1 em{color:var(--terra);font-style:italic;font-weight:500}.hero .lede{color:var(--ink-2);max-width:44ch;font-size:1.05rem}.hero-search{gap:12px;margin-top:20px;display:grid}.hero-grid{gap:28px;display:grid}.hero-map{display:none}@media (min-width:960px){.hero{padding-top:36px}.hero-grid{grid-template-columns:1.1fr .9fr;align-items:stretch}.hero-map{border-radius:var(--r-l);border:1px solid var(--line);min-height:380px;box-shadow:var(--shadow-2);display:block;position:relative;overflow:hidden}}.quick-grid{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:22px;display:grid}.quick{border-radius:var(--r-m);background:var(--paper);border:1px solid var(--line);color:var(--ink);text-align:center;justify-items:center;gap:8px;padding:14px 6px 12px;font-size:.84rem;font-weight:650;text-decoration:none;transition:transform .15s,box-shadow .15s;display:grid}.quick:hover{box-shadow:var(--shadow-2);transform:translateY(-2px)}.quick .ic{border-radius:14px;place-items:center;width:44px;height:44px;display:grid}.quick .ic svg{width:22px;height:22px}.live-strip{scroll-snap-type:x mandatory;scrollbar-width:none;grid-auto-columns:minmax(250px,78%);grid-auto-flow:column;gap:12px;margin:0 -18px;padding:4px 18px 12px;display:grid;overflow-x:auto}.live-strip::-webkit-scrollbar{display:none}.live-strip>*{scroll-snap-align:start}@media (min-width:960px){.live-strip{grid-auto-columns:calc(25% - 9px);margin:0;padding:4px 0 12px}}.live-card{border-radius:var(--r-m);background:var(--blue);color:#fff;isolation:isolate;align-content:start;gap:10px;min-height:168px;padding:16px;text-decoration:none;display:grid;position:relative;overflow:hidden}.live-card:before{content:"";z-index:-1;background:radial-gradient(circle,#d9653b8c,#0000 70%);border-radius:50%;width:150px;height:150px;position:absolute;top:-40px;right:-40px}.live-card.soon{background:var(--paper);color:var(--ink);border:1px solid var(--line)}.live-card.soon:before{background:radial-gradient(circle,#1e3a5f1f,#0000 70%)}.live-card .when{letter-spacing:.02em;align-items:center;gap:8px;font-size:.82rem;font-weight:700;display:inline-flex}.live-card h3{font-size:1.2rem;line-height:1.2}.live-card .where{opacity:.85;align-items:center;gap:6px;margin-top:auto;font-size:.88rem;display:flex}.live-card .where svg{width:15px;height:15px}.timeline{gap:0;display:grid;position:relative}.tl-hour{grid-template-columns:58px 1fr;gap:12px;display:grid;position:relative}.tl-hour+.tl-hour{margin-top:4px}.tl-time{font-family:var(--font-display);color:var(--ink-2);text-align:right;font-variant-numeric:tabular-nums;padding-top:14px;font-size:1.05rem;font-weight:600}.tl-items{border-left:2px solid var(--line);gap:8px;padding:6px 0 10px 18px;display:grid;position:relative}.tl-items:before{content:"";background:var(--ivory);border:2px solid var(--line-2);border-radius:50%;width:10px;height:10px;position:absolute;top:20px;left:-6px}.tl-hour.past .tl-time{color:var(--line-2)}.tl-hour.current .tl-items{border-left-color:var(--terra)}.tl-hour.current .tl-items:before{background:var(--terra);border-color:var(--terra)}.tl-now{color:var(--terra-ink);align-items:center;gap:8px;margin:4px 0 8px 70px;font-size:.82rem;font-weight:700;display:flex}.tl-now:after{content:"";background:linear-gradient(90deg, var(--terra), transparent);flex:1;height:2px}.ev-card{border-radius:var(--r-m);background:var(--paper);border:1px solid var(--line);color:inherit;grid-template-columns:auto 1fr auto;align-items:start;gap:14px;padding:14px;text-decoration:none;transition:box-shadow .15s,border-color .15s,transform .15s;display:grid;position:relative}.ev-card:hover{box-shadow:var(--shadow-2);border-color:var(--line-2)}.ev-card.selected{border-color:var(--blue);box-shadow:0 0 0 2px var(--blue)}.ev-card .cat{border-radius:14px;flex:none;place-items:center;width:46px;height:46px;display:grid}.ev-card .cat svg{width:22px;height:22px}.ev-card .body{gap:4px;min-width:0;display:grid}.ev-card .title{font-family:var(--font-display);color:var(--ink);font-variation-settings:"opsz" 24;font-size:1.07rem;font-weight:600;line-height:1.22}.ev-card .meta{color:var(--muted);flex-wrap:wrap;gap:4px 12px;font-size:.86rem;display:flex}.ev-card .meta span{align-items:center;gap:5px;display:inline-flex}.ev-card .meta svg{width:14px;height:14px}.ev-card .tags{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.ev-card .why{color:var(--muted);align-items:baseline;gap:6px;font-size:.8rem;display:flex}.ev-card .why svg{flex:none;width:13px;height:13px;transform:translateY(2px)}.ev-card.cancelled .title{text-decoration:line-through;-webkit-text-decoration-color:var(--danger);text-decoration-color:var(--danger)}.date-block{background:var(--ivory-2);border-radius:12px;align-content:center;justify-items:center;width:50px;height:56px;line-height:1;display:grid}.date-block .wd{text-transform:uppercase;letter-spacing:.06em;color:var(--terra-ink);font-size:.68rem;font-weight:700}.date-block .d{font-family:var(--font-display);margin:2px 0 1px;font-size:1.45rem;font-weight:650}.date-block .m{text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:700}.list{gap:10px;display:grid}.grid-cards{gap:12px;display:grid}@media (min-width:720px){.grid-cards{grid-template-columns:repeat(2,1fr)}}@media (min-width:1100px){.grid-cards.three{grid-template-columns:repeat(3,1fr)}}.collections{scroll-snap-type:x mandatory;scrollbar-width:none;grid-auto-columns:minmax(230px,70%);grid-auto-flow:column;gap:12px;margin:0 -18px;padding:2px 18px 10px;display:grid;overflow-x:auto}.collections::-webkit-scrollbar{display:none}@media (min-width:960px){.collections{grid-template-columns:repeat(3,1fr);grid-auto-flow:row;margin:0;padding:2px 0 10px}}.coll-card{border-radius:var(--r-l);color:#fff;scroll-snap-align:start;isolation:isolate;align-content:end;gap:6px;min-height:190px;padding:18px;text-decoration:none;display:grid;position:relative;overflow:hidden}.coll-card.blue{background:var(--blue)}.coll-card.terracotta{background:var(--terra)}.coll-card.olive{background:var(--olive)}.coll-card .deco{z-index:-1;opacity:.22;position:absolute;inset:0}.coll-card h3{font-size:1.35rem}.coll-card p{opacity:.9;font-size:.9rem}.coll-card .count{letter-spacing:.06em;text-transform:uppercase;opacity:.85;font-size:.76rem;font-weight:700;position:absolute;top:16px;left:18px}.place-card{border-radius:var(--r-m);background:var(--paper);border:1px solid var(--line);color:inherit;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;display:grid}.place-card:hover{box-shadow:var(--shadow-2)}.place-card .cat{border-radius:12px;place-items:center;width:40px;height:40px;display:grid}.place-card .cat svg{width:20px;height:20px}.place-card strong{font-weight:700;line-height:1.25;display:block}.explore{display:grid}.explore-head{top:var(--header-h);z-index:20;background:color-mix(in srgb, var(--ivory) 94%, transparent);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line);gap:10px;padding:12px 0 10px;display:grid;position:sticky}.seg{background:var(--ivory-2);border:1px solid var(--line);border-radius:999px;padding:3px;display:inline-flex}.seg button{color:var(--ink-2);background:0 0;border:0;border-radius:999px;align-items:center;gap:6px;min-height:36px;padding:7px 14px;font-size:.88rem;font-weight:650;display:inline-flex}.seg button svg{width:16px;height:16px}.seg button[aria-pressed=true]{background:var(--paper);color:var(--blue);box-shadow:var(--shadow-1)}.explore-body{padding-top:14px}.split{gap:16px;display:grid}@media (min-width:960px){.split{grid-template-columns:minmax(380px,460px) 1fr;align-items:start}.split .map-pane{top:calc(var(--header-h) + 128px);height:calc(100dvh - var(--header-h) - 150px);border-radius:var(--r-l);border:1px solid var(--line);position:sticky;overflow:hidden}}.map-full{inset:var(--header-h) 0 calc(var(--tabbar-h) + var(--safe-b)) 0;z-index:10;position:fixed}@media (min-width:960px){.map-full{inset:var(--header-h) 0 0 0}}.map-root{background:#eae6dc;position:absolute;inset:0}.map-root .maplibregl-ctrl-group{box-shadow:var(--shadow-2);border-radius:12px}.map-root .maplibregl-ctrl-group button{width:38px;height:38px}.map-overlay-top{z-index:5;pointer-events:none;gap:8px;display:grid;position:absolute;top:12px;left:12px;right:12px}.map-overlay-top>*{pointer-events:auto}.map-overlay-top .chip{box-shadow:var(--shadow-1)}@media (min-width:960px){.map-overlay-top{width:440px;right:auto}}.map-legend{background:color-mix(in srgb, var(--paper) 92%, transparent);color:var(--ink-2);box-shadow:var(--shadow-1);border-radius:999px;flex-wrap:wrap;gap:10px;width:max-content;padding:6px 12px;font-size:.78rem;font-weight:650;display:inline-flex}.map-legend i{vertical-align:-1px;border-radius:50%;width:10px;height:10px;margin-right:5px;display:inline-block}.map-fallback{text-align:center;color:var(--ink-2);background:repeating-linear-gradient(45deg,#efe9dc,#efe9dc 12px,#ebe4d5 12px 24px);place-items:center;padding:24px;display:grid;position:absolute;inset:0}.sheet{z-index:6;background:var(--paper);touch-action:none;border-radius:22px 22px 0 0;flex-direction:column;transition:height .28s cubic-bezier(.2,.8,.2,1);display:flex;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -12px 32px -12px #10233b4d}.sheet-handle{cursor:grab;background:0 0;border:0;place-items:center;width:100%;padding:10px 0 6px;display:grid}.sheet-handle span{background:var(--line-2);border-radius:999px;width:42px;height:5px}.sheet-body{touch-action:pan-y;overscroll-behavior:contain;flex:1;padding:0 14px 16px;overflow-y:auto}@media (min-width:960px){.sheet{border-radius:var(--r-l);width:420px;box-shadow:var(--shadow-3);inset:120px auto 16px 16px;height:auto!important}.sheet-handle{display:none}.sheet-body{padding-top:14px}}.map-marker-popup{font-family:var(--font-body)}.day-strip{scrollbar-width:none;grid-auto-columns:minmax(58px,1fr);grid-auto-flow:column;gap:6px;padding-bottom:4px;display:grid;overflow-x:auto}.day-strip::-webkit-scrollbar{display:none}.day-btn{border:1px solid var(--line);background:var(--paper);border-radius:14px;justify-items:center;gap:2px;padding:8px 4px;line-height:1.1;display:grid;position:relative}.day-btn .wd{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:.7rem;font-weight:700}.day-btn .d{font-family:var(--font-display);font-size:1.35rem;font-weight:650}.day-btn .n{color:var(--muted);font-size:.7rem}.day-btn[aria-pressed=true]{background:var(--blue);border-color:var(--blue);color:#fff}.day-btn[aria-pressed=true] .wd,.day-btn[aria-pressed=true] .n{color:#d5e0ee}.detail-hero{padding:18px 0 22px;position:relative}.detail-hero .band{z-index:-1;position:absolute;inset:0 -100vmax}.detail-hero .crumbs{align-items:center;gap:8px;margin-bottom:14px;display:flex}.detail-hero h1{max-width:22ch;margin:10px 0 12px;font-size:clamp(1.9rem,5.4vw,3rem)}.detail-hero .summary{color:var(--ink-2);max-width:60ch;font-size:1.08rem}.detail-grid{gap:18px;display:grid}@media (min-width:960px){.detail-grid{grid-template-columns:1fr 380px;align-items:start}.detail-grid aside{top:calc(var(--header-h) + 16px);position:sticky}}.facts{gap:0;padding:4px 0;display:grid}.fact{grid-template-columns:40px 1fr;align-items:start;gap:10px;padding:14px 16px;display:grid}.fact+.fact{border-top:1px solid var(--line)}.fact .ic{background:var(--ivory-2);width:40px;height:40px;color:var(--blue);border-radius:12px;place-items:center;display:grid}.fact .ic svg{width:20px;height:20px}.fact .k{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-size:.78rem;font-weight:700}.fact .v{font-size:1.02rem;font-weight:650}.fact .v small{color:var(--muted);font-size:.86rem;font-weight:500;display:block}.action-bar{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.action-bar .btn{border-radius:var(--r-m);flex-direction:column;gap:4px;min-height:68px;padding:10px 4px;font-size:.8rem}.action-bar .btn svg{width:20px;height:20px}.mini-map{border-radius:var(--r-m);border:1px solid var(--line);height:200px;position:relative;overflow:hidden}.prov{gap:0;display:grid}.prov-row{grid-template-columns:110px 1fr;gap:12px;padding:12px 16px;font-size:.92rem;display:grid}.prov-row+.prov-row{border-top:1px dashed var(--line)}.prov-row .k{color:var(--ink-2);font-weight:700}.prov-row blockquote{border-left:3px solid var(--terra);background:var(--ivory);color:var(--ink-2);border-radius:0 6px 6px 0;margin:6px 0 0;padding:6px 10px;font-size:.86rem;font-style:italic}.prov-row .src{color:var(--muted);margin-top:4px;font-size:.8rem}.prov-status{vertical-align:-.15em;color:var(--muted);align-items:center;margin-left:2px;display:inline-flex}.prov-status svg{width:14px;height:14px}.status-banner{border-radius:var(--r-m);background:var(--danger);color:#fff;align-items:center;gap:12px;padding:14px 16px;font-weight:700;display:flex}.occ-list{gap:6px;display:grid}.occ-list li{border-radius:var(--r-s);background:var(--ivory);justify-content:space-between;gap:12px;padding:8px 12px;font-size:.92rem;display:flex}ul.clean{margin:0;padding:0;list-style:none}details.disclosure{border-radius:var(--r-m);background:var(--paper);border:1px solid var(--line)}details.disclosure>summary{cursor:pointer;align-items:center;gap:10px;padding:14px 16px;font-weight:700;list-style:none;display:flex}details.disclosure>summary::-webkit-details-marker{display:none}details.disclosure>summary .chev{margin-left:auto;transition:transform .2s}details.disclosure[open]>summary .chev{transform:rotate(180deg)}details.disclosure>.inner{padding:0 16px 16px}.chat{gap:16px;padding-bottom:120px;display:grid}.bubble{border-radius:18px;max-width:88%;padding:12px 16px;font-size:.98rem}.bubble.user{background:var(--blue);color:#fff;border-bottom-right-radius:6px;justify-self:end}.bubble.bot{background:var(--paper);border:1px solid var(--line);border-bottom-left-radius:6px;justify-self:start;gap:8px;max-width:100%;display:grid}.bubble.bot p+p{margin-top:2px}.chat-input{left:0;right:0;bottom:calc(var(--tabbar-h) + var(--safe-b));z-index:30;background:linear-gradient(180deg, transparent, var(--ivory) 30%);padding:10px 0;position:fixed}@media (min-width:960px){.chat-input{padding-bottom:20px;bottom:0}}.suggestions{flex-wrap:wrap;gap:8px;display:flex}.page-head{gap:8px;padding:22px 0 8px;display:grid}.page-head p{color:var(--ink-2);max-width:60ch}.kv{grid-template-columns:max-content 1fr;gap:6px 16px;font-size:.92rem;display:grid}.kv dt{color:var(--muted);font-weight:650}.kv dd{margin:0}.hours{gap:4px;display:grid}.hours div{justify-content:space-between;gap:12px;font-size:.93rem;display:flex}.toast{left:50%;bottom:calc(var(--tabbar-h) + var(--safe-b) + 16px);z-index:80;background:var(--ink);color:#fff;box-shadow:var(--shadow-3);border-radius:999px;padding:12px 18px;font-size:.92rem;font-weight:650;animation:.2s ease-out toast-in;position:fixed;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}}@media (min-width:960px){.toast{bottom:24px}}.dialog-backdrop{z-index:90;background:#10233b73;align-items:end;display:grid;position:fixed;inset:0}@media (min-width:720px){.dialog-backdrop{place-items:center}}.dialog{background:var(--paper);width:100%;max-width:560px;max-height:92dvh;padding:20px 20px calc(20px + var(--safe-b));box-shadow:var(--shadow-3);border-radius:22px 22px 0 0;overflow-y:auto}@media (min-width:720px){.dialog{border-radius:var(--r-l);padding-bottom:20px}}.dialog-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.stack{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.spacer{flex:1}.text-link{color:var(--blue);text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:650;text-decoration:underline}@media (max-width:599px){.hide-mobile{display:none}}
