@font-face{font-family:Playfair Display Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/_astro/playfair-display-cyrillic-wght-normal.5WvUvBgz.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/_astro/playfair-display-vietnamese-wght-normal.Cabi7G8-.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:Playfair Display Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/_astro/playfair-display-latin-ext-wght-normal.CT1r92Rl.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:Playfair Display Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/_astro/playfair-display-latin-wght-normal.BOwq7MWX.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:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-sans-3-cyrillic-ext-wght-normal.c-5QAGAI.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-sans-3-cyrillic-wght-normal.BMDVbyM7.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-sans-3-greek-ext-wght-normal.BXZfsJY4.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-sans-3-greek-wght-normal.Cc-u-6OI.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-sans-3-vietnamese-wght-normal.BDs68eHQ.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:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-sans-3-latin-ext-wght-normal.C8iNium2.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-sans-3-latin-wght-normal.Bo_j9asI.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}:root{--radius-card:2px;--on-dark:color-mix(in srgb, var(--cream) 94%, white);--on-dark-muted:color-mix(in srgb, var(--cream) 80%, var(--ink));--paper:color-mix(in srgb, var(--cream) 55%, white);--ink-shadow:color-mix(in srgb, var(--ink) 45%, transparent);--accent-glow:color-mix(in srgb, var(--accent) 28%, transparent);--wrap:78rem;--header-h:72px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 16px)}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--cream);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:1.0625rem;line-height:1.65;overflow-x:clip}@media (width>=768px){body{font-size:1.125rem}}h1,h2,h3,h4{font-family:var(--font-head);letter-spacing:-.008em;text-wrap:balance;font-variant-numeric:lining-nums;margin:0;font-weight:520;line-height:1.1}p{margin:0 0 1em}img{max-width:100%;height:auto;display:block}a{color:inherit}ul[role=list],ol[role=list]{margin:0;padding:0;list-style:none}::selection{background:var(--accent-soft);color:var(--ink)}:focus-visible{outline:3px solid var(--accent-text);outline-offset:3px;border-radius:2px}.band-ink :focus-visible,.on-dark :focus-visible,.site-footer :focus-visible,.cwa :focus-visible{outline-color:var(--accent-soft)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{inset-inline-start:1rem;z-index:100;background:var(--ink);color:var(--cream);padding:.8rem 1.2rem;font-weight:600;text-decoration:none;position:absolute;top:-100px}.skip-link:focus{top:1rem}.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:1.1rem}@media (width>=640px){.wrap{padding-inline:1.5rem}}@media (width>=1024px){.wrap{padding-inline:2rem}}.wrap-narrow{max-width:50rem}.band{padding-block:clamp(3.75rem,8vw,6.5rem);position:relative}.band-tight{padding-block:clamp(2.75rem,5vw,4rem);position:relative}.band-paper{background:var(--paper)}.band-sand{background:var(--sand)}.band-ink{background:var(--ink);color:var(--on-dark)}.kicker{font-family:var(--font-body);letter-spacing:.22em;text-transform:uppercase;color:var(--accent-text);align-items:center;gap:.6rem;margin:0 0 .9rem;font-size:.76rem;font-weight:600;display:inline-flex}.kicker:before{content:"";background:var(--accent);width:1.75rem;height:2px}.band-ink .kicker,.on-dark .kicker{color:var(--accent-soft)}.band-ink .kicker:before{background:var(--accent-soft)}.section-rule{background:var(--accent);width:56px;height:2px;margin-top:1rem;display:block}.h-hero{letter-spacing:-.018em;font-size:clamp(2.5rem,6.4vw,5rem);font-weight:500;line-height:1.02}.h-xl{font-size:clamp(2.1rem,4.6vw,3.5rem);line-height:1.05}.h-lg{font-size:clamp(1.8rem,3.4vw,2.6rem);line-height:1.08}.h-md{font-size:clamp(1.25rem,2vw,1.5rem);line-height:1.2}.accent-em{color:var(--accent-text);font-style:italic;font-weight:450}.band-ink .accent-em,.hero .accent-em{color:var(--accent-soft)}.lede{color:var(--muted);max-width:42rem;font-size:clamp(1.06rem,1.4vw,1.2rem);line-height:1.65}.band-ink .lede,.on-dark .lede{color:var(--on-dark-muted)}.muted{color:var(--muted)}.band-ink .muted{color:var(--on-dark-muted)}.small{font-size:.9rem}.caps{letter-spacing:.16em;text-transform:uppercase;font-size:.76rem;font-weight:600}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem 2rem;margin-bottom:2rem;display:flex}.section-head p{margin:.75rem 0 0}.link{color:var(--accent-text);text-underline-offset:3px;text-decoration:underline 1px}.link:hover{text-decoration-thickness:2px}.band-ink .link{color:var(--accent-soft)}.btn{cursor:pointer;max-width:100%;min-height:48px;font:600 .78rem/1.2 var(--font-body);letter-spacing:.14em;text-transform:uppercase;background:var(--ink);color:var(--cream);border:1px solid var(--ink);border-radius:0;justify-content:center;align-items:center;gap:.55rem;padding:.8rem 1.5rem;text-decoration:none;transition:background-color .2s,color .2s,border-color .2s,box-shadow .25s,transform .25s;display:inline-flex}.btn:hover{background:var(--accent-soft);border-color:var(--accent-soft);color:var(--ink);box-shadow:0 10px 24px -16px var(--ink-shadow)}.btn-accent{background:var(--accent-soft);border-color:var(--accent-soft);color:var(--ink)}.btn-accent:hover{background:var(--cream);border-color:var(--cream)}.btn-line{color:var(--ink);border-color:var(--ink);background:0 0}.btn-line:hover{background:var(--ink);color:var(--cream);border-color:var(--ink)}.band-ink .btn-line,.hero .btn-line{color:var(--on-dark);border-color:color-mix(in srgb, var(--cream) 55%, transparent)}.band-ink .btn-line:hover,.hero .btn-line:hover{background:var(--on-dark);color:var(--ink)}.btn-sm{min-height:44px;padding:.5rem 1rem;font-size:.72rem}.btn .arrow{transition:transform .25s}.btn:hover .arrow{transform:translate(4px)}@media (width<=640px){.btn{white-space:normal;text-align:center}}.more-link{min-height:44px;color:var(--accent-text);align-items:center;gap:.4rem;font-weight:600;text-decoration:none;display:inline-flex}.more-link:hover{text-underline-offset:4px;text-decoration:underline}.top-strip{background:var(--ink);color:var(--on-dark-muted);font-size:.78rem}.top-strip .wrap{justify-content:space-between;align-items:center;gap:1rem;min-height:34px;display:flex}.top-strip a{color:var(--on-dark);align-items:center;min-height:34px;text-decoration:none;display:inline-flex}.top-strip a:hover{text-decoration:underline}.site-header{z-index:40;background:color-mix(in srgb, var(--cream) 94%, transparent);border-bottom:1px solid var(--line);position:sticky;top:0}@media (width>=900px){.site-header{backdrop-filter:saturate(1.4)blur(10px)}}.site-header .wrap{min-height:var(--header-h);justify-content:space-between;align-items:center;gap:1rem;display:flex}.brand{color:var(--ink);align-items:center;gap:.7rem;min-height:44px;text-decoration:none;display:inline-flex}.brand-mark{background:var(--ink);width:42px;height:42px;color:var(--accent-soft);font:600 1rem/1 var(--font-head);letter-spacing:.02em;flex:none;place-items:center;display:grid}.brand-name{font:560 1.3rem/1.05 var(--font-head);letter-spacing:-.01em}.brand-name small{font:600 .64rem/1.4 var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);display:block}.nav-list{align-items:center;gap:.25rem;display:flex}.nav-list a{min-height:44px;color:var(--ink);border-bottom:2px solid #0000;align-items:center;padding:0 .75rem;font-size:.92rem;font-weight:500;text-decoration:none;display:inline-flex}.nav-list a:hover{border-bottom-color:var(--accent)}.nav-list a[aria-current=page]{border-bottom-color:var(--ink);font-weight:650}.nav-cta{margin-inline-start:.5rem}.menu-btn{display:none}@media (width<=1000px){.menu-btn{border:1px solid color-mix(in srgb, var(--ink) 35%, transparent);min-width:44px;min-height:44px;color:var(--ink);font:600 .8rem var(--font-body);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;align-items:center;gap:.5rem;padding:0 .9rem;display:inline-flex}.site-nav{top:100%;background:var(--cream);border-bottom:1px solid var(--line);box-shadow:0 24px 40px -30px var(--ink-shadow);max-height:calc(100dvh - var(--header-h));position:absolute;inset-inline:0;overflow-y:auto}.site-nav[data-open=false]{display:none}.nav-list{flex-direction:column;align-items:stretch;gap:0;padding:.5rem 1.1rem 1.25rem}.nav-list a{border-bottom:1px solid var(--line);min-height:52px;font-size:1.05rem}.nav-list a[aria-current=page]{border-bottom-color:var(--line);color:var(--accent-text)}.nav-cta{margin:1rem 0 0}.nav-cta .btn{width:100%}}@media (width>=1001px){.site-nav[data-open]{display:block}}.hero{background:var(--ink);color:var(--on-dark);isolation:isolate;position:relative;overflow:hidden}.hero:before{content:"";z-index:-2;background:radial-gradient(90% 120% at 85% 0%, var(--deep) 0%, var(--ink) 60%);position:absolute;inset:0}.hero-photo{z-index:-2;position:absolute;inset:0}.hero-photo img{object-fit:cover;width:100%;height:100%}.hero-photo:after{content:"";background:linear-gradient(90deg, color-mix(in srgb, var(--ink) 92%, transparent) 0%, color-mix(in srgb, var(--ink) 70%, transparent) 55%, color-mix(in srgb, var(--ink) 35%, transparent) 100%);position:absolute;inset:0}.hero-inner{gap:2.5rem;padding-block:clamp(3.5rem,9vw,7rem) clamp(7rem,14vw,10rem);display:grid;position:relative}@media (width>=1000px){.hero-inner{grid-template-columns:minmax(0,1.35fr) minmax(0,.9fr);align-items:end}}.hero h1{color:var(--on-dark);max-width:15ch}.hero .lede{margin-top:1.4rem}.hero-actions{flex-wrap:wrap;gap:.75rem;margin-top:2rem;display:flex}.hero-search{border:1px solid color-mix(in srgb, var(--cream) 40%, transparent);background:color-mix(in srgb, var(--cream) 8%, transparent);max-width:34rem;margin-top:2rem;display:flex}.hero-search label{flex:1}.hero-search input{width:100%;min-height:54px;color:var(--on-dark);font:400 1rem var(--font-body);background:0 0;border:0;padding:0 1rem}.hero-search input::placeholder{color:var(--on-dark-muted);opacity:1}.hero-search input:focus{outline:none}.hero-search:focus-within{outline:3px solid var(--accent-soft);outline-offset:2px}.hero-search button{border:0}.hero-panel{border:1px solid color-mix(in srgb, var(--cream) 22%, transparent);background:color-mix(in srgb, var(--ink) 55%, transparent);padding:1.5rem}@media (width>=900px){.hero-panel{backdrop-filter:blur(6px)}}.hero-panel h2{color:var(--on-dark);margin-bottom:1rem;font-size:1.15rem}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));gap:0;display:grid}.stat{background:var(--ink);outline:1px solid color-mix(in srgb, var(--cream) 18%, transparent);outline-offset:-.5px;padding:1rem}.stat b{font:500 clamp(1.8rem, 3vw, 2.4rem)/1 var(--font-head);color:var(--accent-soft);display:block}.stat span{color:var(--on-dark-muted);font-size:.85rem}.hero--centered .hero-photo:after{background:linear-gradient(180deg, color-mix(in srgb, var(--ink) 66%, transparent) 0%, color-mix(in srgb, var(--ink) 80%, transparent) 55%, color-mix(in srgb, var(--ink) 94%, transparent) 100%)}.hero--centered .hero-inner{text-align:center;grid-template-columns:minmax(0,1fr);justify-items:center}.hero--centered h1{max-width:18ch;margin-inline:auto}.hero--centered .lede{margin-inline:auto}.hero--centered .hero-search{width:100%;margin-inline:auto}.hero--centered .hero-actions{justify-content:center}.hero--centered .hero-panel{backdrop-filter:none;background:0 0;border:0;width:100%;max-width:56rem;padding:0}.hero--centered .hero-panel h2{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.hero--centered .hero-panel .small{display:none}.hero--centered .stat{background:color-mix(in srgb, var(--ink) 72%, transparent)}.hero--split .stat{background:0 0}.hero--split .stat-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,7.5rem),1fr))}@media (width>=1000px){.hero--split .hero-photo{inset-inline-start:52%}.hero--split .hero-photo:after{background:linear-gradient(90deg, var(--ink) 0%, color-mix(in srgb, var(--ink) 0%, transparent) 30%)}.hero--split .hero-inner{grid-template-columns:minmax(0,.5fr) minmax(0,.5fr);align-items:center}.hero--split .hero-inner>div:first-child{padding-inline-end:1rem}.hero--split .hero-panel{backdrop-filter:none;background:0 0;border:0;grid-column:1;padding:0}.hero--split .hero-panel h2,.hero--split .hero-panel .small{display:none}}.hero .kicker{color:var(--accent-soft)}.hero .kicker:before{background:var(--accent-soft)}.hero-credit{inset-inline-end:1rem;z-index:2;color:var(--on-dark);background:color-mix(in srgb, var(--ink) 80%, transparent);margin:0;padding:.15rem .5rem;font-size:.72rem;position:absolute;bottom:calc(clamp(70px,12vw,150px) + .4rem)}.hero-credit a{color:var(--on-dark)}.skyline{inset-inline:0;z-index:-1;width:100%;height:clamp(70px,12vw,150px);color:var(--accent-soft);pointer-events:none;position:absolute;bottom:-1px}.skyline .fill{fill:var(--cream)}.skyline .stroke{fill:none;stroke:currentColor;stroke-width:1.4px;opacity:.55}.demo-ribbon{color:#5a3e00;background:#fff4d6;border-bottom:1px solid #e8d29a;font-size:.92rem}.demo-ribbon .wrap{padding-block:.6rem}.page-head{background:var(--sand);border-bottom:1px solid var(--line);padding-block:clamp(2.5rem,6vw,4.5rem) clamp(2rem,4vw,3rem)}.page-head h1{max-width:22ch;font-size:clamp(2.1rem,5vw,3.6rem);line-height:1.04}.page-head .lede{margin-top:1rem}.crumbs{margin-bottom:1.2rem;font-size:.88rem}.crumbs ol{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.crumbs li:not(:last-child):after{content:"/";color:var(--muted);margin-inline-start:.4rem}.crumbs a{color:var(--accent-text);text-underline-offset:3px;padding-block:.25rem;text-decoration:underline;display:inline-block}.grid{gap:1rem;display:grid}@media (width>=640px){.grid-2,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1000px){.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width>=640px) and (width<=999px){.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-card);flex-direction:column;padding:1.35rem;transition:transform .3s cubic-bezier(.22,.61,.36,1),box-shadow .3s,border-color .3s;display:flex;position:relative}.card-link:hover,.card-link:focus-within{border-color:color-mix(in srgb, var(--accent) 70%, var(--line));box-shadow:0 18px 40px -26px var(--ink-shadow);transform:translateY(-3px)}.card-link .stretched:after{content:"";z-index:1;position:absolute;inset:0}.card-link .stretched:focus-visible{outline:none}.card-link:has(.stretched:focus-visible){outline:3px solid var(--accent-text);outline-offset:3px}.card h3{font-size:1.28rem;line-height:1.2}.card h3 a{text-decoration:none}.card .meta{color:var(--muted);margin-top:.35rem;font-size:.9rem}.card p{margin:.6rem 0 0}.card-top{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.card-foot{z-index:2;flex-wrap:wrap;gap:.4rem;margin-top:auto;padding-top:1rem;display:flex;position:relative}.card-rule{border-top:3px solid var(--accent)}.icon-tile{border:1px solid color-mix(in srgb, var(--accent) 65%, transparent);background:color-mix(in srgb, var(--accent-soft) 22%, var(--paper));width:2.75rem;height:2.75rem;color:var(--accent-text);flex:none;place-items:center;transition:background-color .3s,color .3s;display:inline-grid}.card-link:hover .icon-tile{background:var(--ink);color:var(--accent-soft);border-color:var(--ink)}.icon{flex:none;width:1.25rem;height:1.25rem}.count-badge{font:500 2rem/1 var(--font-head);color:var(--accent-text)}.comm-card{min-height:12rem}.comm-card .count-row{align-items:baseline;gap:.5rem;margin-top:1rem;display:flex}@media (width<=639px){.swipe{scroll-snap-type:x mandatory;padding-bottom:.5rem;scrollbar-width:thin;grid-auto-columns:84%;grid-auto-flow:column;gap:.85rem;margin-inline:-1.1rem;padding-inline:1.1rem;display:grid;overflow-x:auto}.swipe>*{scroll-snap-align:start;position:relative}.tiles-2{grid-template-columns:repeat(2,minmax(0,1fr))}.tiles-2 .card{padding:1rem}.tiles-2 .card h3{font-size:1.05rem}}.tag{background:var(--sand);color:var(--ink);border-radius:2px;align-items:center;gap:.3rem;padding:.2rem .6rem;font-size:.8rem;font-weight:600;line-height:1.4;display:inline-flex}.tag-pop{background:color-mix(in srgb, var(--pop) 12%, white);color:color-mix(in srgb, var(--pop) 82%, black)}.tag-town{background:var(--cream);border:1px solid var(--line)}.tag-confirm{border:1.5px dashed color-mix(in srgb, var(--accent-text) 70%, transparent);color:var(--accent-text);background:0 0}.chips{flex-wrap:wrap;gap:.5rem;display:flex}@media (width<=639px){.chips.scroll{flex-wrap:nowrap;padding-bottom:.4rem;overflow-x:auto}.chips.scroll>*{flex:none}}.chip{border:1px solid color-mix(in srgb, var(--ink) 35%, transparent);background:var(--paper);min-height:44px;color:var(--ink);font:500 .92rem var(--font-body);cursor:pointer;align-items:center;gap:.45rem;padding:.4rem 1rem;text-decoration:none;display:inline-flex}.chip:hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent-soft) 20%, var(--paper))}.chip[aria-pressed=true],.chip[aria-current=page]{background:var(--ink);color:var(--cream);border-color:var(--ink)}.chip .n{background:var(--sand);color:var(--ink);border-radius:999px;padding:0 .45rem;font-size:.78rem;font-weight:700}.chip[aria-pressed=true] .n,.chip[aria-current=page] .n{background:var(--accent-soft)}.field-row{gap:1rem;display:grid}@media (width>=700px){.field-row.two{grid-template-columns:1fr 1fr}}.label{margin-bottom:.35rem;font-size:.92rem;font-weight:600;display:block}.hint{color:var(--muted);margin:-.15rem 0 .4rem;font-size:.85rem;display:block}.field{border:1px solid color-mix(in srgb, var(--ink) 45%, var(--line));background:var(--paper);width:100%;min-height:48px;color:var(--ink);font:400 1rem var(--font-body);border-radius:0;padding:.65rem 1rem}textarea.field{resize:vertical;min-height:9rem}.field:focus{outline:3px solid var(--accent-text);outline-offset:1px}.field[aria-invalid=true]{border-width:2px;border-color:#b42318}.field-error{color:#b42318;margin-top:.35rem;font-size:.9rem;font-weight:600}select.field{appearance:none;cursor:pointer;background-image:linear-gradient(45deg, transparent 50%, var(--ink) 50%), linear-gradient(135deg, var(--ink) 50%, transparent 50%);background-position:calc(100% - 1.3rem),calc(100% - .95rem);background-repeat:no-repeat;background-size:6px 6px;padding-inline-end:2.75rem}.radio-row{border:0;flex-wrap:wrap;gap:.5rem;margin:0;padding:0;display:flex}.radio-row legend{margin-bottom:.5rem;padding:0;font-size:.92rem;font-weight:600}.radio-row label{border:1px solid color-mix(in srgb, var(--ink) 35%, transparent);background:var(--paper);cursor:pointer;align-items:center;gap:.5rem;min-height:44px;padding:.4rem 1rem;display:inline-flex}.radio-row input{width:1.1rem;height:1.1rem;accent-color:var(--ink)}.radio-row label:has(input:checked){border-color:var(--ink);background:color-mix(in srgb, var(--accent-soft) 25%, var(--paper));font-weight:600}.radio-row label:has(input:focus-visible){outline:3px solid var(--accent-text);outline-offset:2px}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.notice{border-inline-start:4px solid var(--accent);background:var(--sand);padding:1rem 1.2rem}.notice-ok{border-color:var(--pop);background:color-mix(in srgb, var(--pop) 10%, white)}.notice-err{color:#7a1a12;background:#fef3f2;border-color:#b42318}.filters{background:var(--paper);border:1px solid var(--line);gap:.9rem;padding:1.25rem;display:grid}@media (width>=800px){.filters{grid-template-columns:2fr 1fr 1fr 1fr;align-items:end}}.results-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin:1.5rem 0 1rem;display:flex}.listing-list{gap:.85rem;display:grid}@media (width>=800px){.listing-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1200px){.listing-list.wide{grid-template-columns:repeat(3,minmax(0,1fr))}}.listing-card .cat{letter-spacing:.14em;text-transform:uppercase;color:var(--accent-text);font-size:.74rem;font-weight:650}.listing-card .addr{color:var(--muted);gap:.4rem;margin-top:.5rem;font-size:.92rem;display:flex}.listing-card .addr .icon{width:1rem;height:1rem;margin-top:.25rem}[hidden]{display:none!important}.empty{text-align:center;border:1px dashed var(--line);background:var(--paper);padding:2rem}.detail-grid{gap:2rem;display:grid}@media (width>=960px){.detail-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:3rem}}.facts{border-top:1px solid var(--line);gap:0;margin:0;display:grid}.facts>div{border-bottom:1px solid var(--line);grid-template-columns:8.5rem 1fr;gap:1rem;padding:.9rem 0;display:grid}@media (width<=480px){.facts>div{grid-template-columns:1fr;gap:.15rem}}.facts dt{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding-top:.2rem;font-size:.76rem;font-weight:650}.facts dd{white-space:pre-line;overflow-wrap:anywhere;margin:0}.action-row{flex-wrap:wrap;gap:.6rem;margin-top:1.5rem;display:flex}.aside-card{background:var(--paper);border:1px solid var(--line);padding:1.4rem}.aside-card+.aside-card{margin-top:1rem}.aside-card h2{margin-bottom:.6rem;font-size:1.2rem}.source-line{color:var(--muted);font-size:.9rem}.prose{max-width:44rem;font-size:1.08rem;line-height:1.75}.prose>*+*{margin-top:1.05em}.prose p{margin:0}.prose h2{margin-top:1.9em;font-size:clamp(1.55rem,2.6vw,2.05rem)}.prose h3{margin-top:1.5em;font-size:1.3rem}.prose ul,.prose ol{padding-inline-start:1.3em}.prose li+li{margin-top:.35em}.prose a{color:var(--accent-text);text-underline-offset:3px;text-decoration:underline}.prose blockquote{border-inline-start:3px solid var(--accent);color:var(--muted);margin-inline:0;padding-inline-start:1rem}.prose table{border-collapse:collapse;width:100%;font-size:.98rem}.prose th,.prose td{border-bottom:1px solid var(--line);text-align:start;padding:.55rem}.toc{border-inline-start:2px solid var(--accent);padding-inline-start:1.1rem}.toc h2{font-size:.8rem;font-family:var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:.6rem;font-weight:650}.toc a{color:var(--ink);padding:.35rem 0;text-decoration:none;display:block}.toc a:hover{color:var(--accent-text);text-decoration:underline}@media (width>=1000px){.guide-grid{grid-template-columns:15rem minmax(0,1fr);gap:3.5rem;display:grid}.guide-grid .toc{top:calc(var(--header-h) + 1.5rem);align-self:start;position:sticky}}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;min-height:44px;padding:1rem 0;font-weight:600;list-style-position:outside}.faq details>div{padding-bottom:1rem}.event{grid-template-columns:4.5rem 1fr;align-items:start;gap:1.1rem;display:grid}.event-date{text-align:center;border:1px solid var(--line);background:var(--paper);padding:.6rem .3rem;line-height:1.1}.event-date .d{font:500 1.9rem/1 var(--font-head);color:var(--accent-text);display:block}.event-date .m,.event-date .w{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.72rem;font-weight:650;display:block}.cta-band{align-items:center;gap:1.5rem;display:grid}@media (width>=900px){.cta-band{grid-template-columns:1.4fr 1fr}}.site-footer{background:var(--ink);color:var(--on-dark-muted);padding-block:3.5rem 2rem;font-size:.95rem}.site-footer h2{font:650 .76rem var(--font-body);letter-spacing:.18em;text-transform:uppercase;color:var(--accent-soft);margin-bottom:.9rem}.footer-grid{gap:2rem;display:grid}@media (width>=800px){.footer-grid{grid-template-columns:1.4fr 1fr 1fr 1fr}}.site-footer a{color:var(--on-dark);align-items:center;min-height:40px;text-decoration:none;display:inline-flex}.site-footer a:hover{text-underline-offset:3px;text-decoration:underline}.footer-brand{font:520 1.6rem/1.1 var(--font-head);color:var(--on-dark);margin-bottom:.6rem}.footer-bottom{border-top:1px solid color-mix(in srgb, var(--cream) 18%, transparent);flex-wrap:wrap;justify-content:space-between;gap:.5rem 1.5rem;margin-top:2.5rem;padding-top:1.25rem;font-size:.86rem;display:flex}.footer-bottom a{text-underline-offset:3px;min-height:32px;text-decoration:underline}@media (width<=799px){.footer-col details summary{cursor:pointer;border-bottom:1px solid color-mix(in srgb, var(--cream) 15%, transparent);justify-content:space-between;align-items:center;min-height:48px;list-style:none;display:flex}.footer-col details summary:after{content:"+";color:var(--accent-soft);font-size:1.3rem}.footer-col details[open] summary:after{content:"–"}.footer-col h2{margin:0}}@media (width>=800px){.footer-col details>summary{pointer-events:none;list-style:none}}.cwa{background:color-mix(in srgb, var(--ink) 88%, black);color:var(--on-dark-muted);padding-block:2.5rem}.cwa-card{border:1px solid color-mix(in srgb, var(--accent) 45%, transparent);align-items:center;gap:1.5rem;padding:1.75rem;display:grid;position:relative}.cwa-card:before{content:"";border:1px solid color-mix(in srgb, var(--accent) 18%, transparent);pointer-events:none;position:absolute;inset:7px}@media (width>=800px){.cwa-card{grid-template-columns:auto 1fr auto;gap:2rem}}.cwa-photo{border:3px solid var(--accent-soft);background:#cfe3f7;border-radius:60px 60px 4px 4px;width:120px;height:140px;overflow:hidden}.cwa-photo img{object-fit:cover;object-position:50% 20%;width:100%;height:100%}.cwa h2{font:520 1.45rem/1.2 var(--font-head);color:var(--on-dark);margin-bottom:.4rem}.cwa p{margin:0 0 .5rem}.cwa-badges{flex-wrap:wrap;gap:.5rem;margin-top:.6rem;display:flex}.cwa-badge{border:1px solid color-mix(in srgb, var(--accent-soft) 55%, transparent);min-height:28px;color:var(--on-dark);letter-spacing:.12em;text-transform:uppercase;align-items:center;padding:3px 10px;font-size:.7rem;display:inline-flex}.cwa-actions{flex-direction:column;gap:.6rem;display:flex}.cwa-actions .btn{width:100%}.btn-wa{color:#fff;background:#157f3f;border-color:#157f3f}.btn-wa:hover{color:#fff;background:#0f6531;border-color:#0f6531}@media (prefers-reduced-motion:no-preference){.js .reveal{opacity:0;transition:opacity .7s,transform .7s cubic-bezier(.22,.61,.36,1);transform:translateY(14px)}.js .reveal.is-in,.js .swipe .reveal{opacity:1;transform:none}.hero .rise{animation:.9s cubic-bezier(.22,.61,.36,1) both rise}.hero .rise-2{animation-delay:.12s}.hero .rise-3{animation-delay:.24s}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.skyline .stroke{stroke-dasharray:2600;stroke-dashoffset:2600px;animation:3.2s ease-out .2s forwards draw}@keyframes draw{to{stroke-dashoffset:0}}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}}@media print{.top-strip,.site-header,.site-footer,.cwa,.no-print{display:none!important}body{background:#fff}}@media (forced-colors:active){.btn,.chip,.card{border:1px solid canvastext}}.hero .lede{color:var(--on-dark-muted)}.nav-list a.btn{color:var(--cream);border-bottom:1px solid var(--ink);padding:.5rem 1rem}.nav-list a.btn:hover{color:var(--ink)}.card a.stretched{text-decoration:none}.card a.stretched:hover{text-underline-offset:4px;text-decoration:underline 1px}.h-card{font-size:1.28rem;line-height:1.2}@media (width<=799px){.filters{grid-template-columns:1fr 1fr;gap:.75rem;padding:1rem}.filters>div:first-child,.filters>div:nth-child(4){grid-column:1/-1}.filters .label{font-size:.85rem}}@media (width<=640px){.top-strip .wrap>span{display:none}.top-strip .wrap{justify-content:flex-end}}.hood-index{columns:3 14rem;column-gap:2rem}.hood-index li{break-inside:avoid;padding-block:.25rem}
