:root{--paper:#f6f7f3;--paper-2:#eceee6;--ink:#1c2a22;--ink-2:#4c5b52;--rule:#cfd5cb;--pine:#2f5d3a;--pine-2:#1f3d2b;--amber:#e6a93b;--amber-2:#c98a1e;--ember:#c9552e;--lake:#6c9bb5;--lake-2:#dde9f0;--font-body:"Atkinson Hyperlegible",system-ui,-apple-system,"Segoe UI",sans-serif;--font-display:"Young Serif",Georgia,serif;--measure:68ch;--wrap:1080px;--radius:10px}*{box-sizing:border-box}html{color-scheme:light}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:18px;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--pine);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--pine-2)}:focus-visible{outline:3px solid var(--amber);outline-offset:2px;border-radius:3px}h1,h2,h3{font-family:var(--font-display);font-weight:400;line-height:1.12;margin:0 0 .4em;letter-spacing:-.005em}h1{font-size:clamp(2.4rem,6vw,4.4rem)}h2{font-size:clamp(1.6rem,3vw,2.1rem);margin-top:1.4em}h3{font-size:1.25rem;font-family:var(--font-body);font-weight:700;margin-top:1.2em}p{margin:0 0 1em;max-width:var(--measure)}.muted,small{color:var(--ink-2)}code{font-family:ui-monospace,Menlo,monospace;font-size:.92em;background:var(--paper-2);padding:0 .3em;border-radius:4px}table{border-collapse:collapse;width:100%;font-size:.95rem}td,th{text-align:left;vertical-align:top;padding:.55rem .6rem;border-bottom:1px solid var(--rule)}th{font-weight:700;color:var(--ink-2);font-size:.85rem}.btn,button{font:inherit;font-weight:700;color:#fff;background:var(--pine);border:0;border-radius:999px;padding:.65rem 1.2rem;cursor:pointer;text-decoration:none;display:inline-block}.btn:hover,button:hover{background:var(--pine-2);color:#fff}button.quiet{background:transparent;color:var(--pine);border:2px solid var(--rule)}button.quiet[aria-pressed=true]{border-color:var(--pine);background:#e4ece6}button:disabled{opacity:.5;cursor:default}input,textarea{font:inherit}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}.topbar{border-bottom:1px solid var(--rule);background:var(--paper);position:-webkit-sticky;position:sticky;top:0;z-index:20}.topbar .wrap{display:flex;align-items:center;gap:1.2rem;min-height:60px;flex-wrap:wrap}.brand{font-family:var(--font-display);font-size:1.25rem;color:var(--ink);text-decoration:none}.brand span{color:var(--pine)}.nav{display:flex;gap:.2rem;flex-wrap:wrap;margin-left:auto}.nav a{text-decoration:none;padding:.4rem .7rem;border-radius:999px;color:var(--ink-2);font-weight:700;font-size:.95rem}.nav a:hover,.nav a[aria-current=page]{background:var(--paper-2);color:var(--ink)}main{padding:2rem 0 4rem}footer{border-top:1px solid var(--rule);padding:1.5rem 0 3rem;color:var(--ink-2);font-size:.9rem}.hero{padding:1.5rem 0 1rem}.hero .kicker{color:var(--ink-2);font-size:1.05rem;margin:0 0 .4rem}.hero h1{margin-bottom:.2em}.hero .when{font-size:1.3rem;margin:0 0 .5rem}.lights{display:block;width:100%;max-width:900px;height:auto;margin:.5rem 0 1.5rem}.quick{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-gap:.9rem;gap:.9rem;margin:1.5rem 0 2.5rem}.quick a{display:block;text-decoration:none;color:var(--ink);background:#fff;border:1px solid var(--rule);border-radius:var(--radius);padding:1rem 1.1rem}.quick a strong{display:block;font-size:1.15rem;margin-bottom:.2rem}.quick a:hover{border-color:var(--pine)}.demo-note{background:var(--lake-2);border-left:4px solid var(--lake);padding:.8rem 1rem;border-radius:0 var(--radius) var(--radius) 0;font-size:.95rem;max-width:70ch}.rooms{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:.4rem 2rem;gap:.4rem 2rem;max-width:980px}.rooms div{display:grid;grid-template-columns:1fr 1.4fr;grid-gap:1rem;gap:1rem;padding:.5rem 0;border-bottom:1px solid var(--rule)}.rooms div b{font-weight:700}.daytabs{display:flex;gap:.4rem;flex-wrap:wrap;margin:.5rem 0 1.5rem;position:-webkit-sticky;position:sticky;top:60px;background:var(--paper);padding:.6rem 0;z-index:10}.daytabs a{text-decoration:none;font-weight:700;padding:.4rem .9rem;border-radius:999px;border:2px solid var(--rule);color:var(--ink)}.daytabs a:hover{border-color:var(--pine)}.day{margin:0 0 2.5rem;scroll-margin-top:130px}.day h2{margin-top:.5rem}.day h2 small{font-family:var(--font-body);font-size:1rem;color:var(--ink-2);margin-left:.6rem}.events{list-style:none;margin:0;padding:0;max-width:820px}.events li{display:grid;grid-template-columns:150px 1fr;grid-gap:1rem;gap:1rem;padding:.5rem .6rem;border-bottom:1px solid var(--rule);align-items:baseline}.events li.sales{background:var(--lake-2);border-radius:6px}.events li.public{box-shadow:inset 4px 0 0 var(--ember)}.events .t{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink-2);font-size:.95rem}.events .loc{display:block}.events .loc,.legend-inline{color:var(--ink-2);font-size:.9rem}.legend-inline{margin-bottom:1rem}.legend-inline i{display:inline-block;width:14px;height:14px;border-radius:3px;vertical-align:-2px;margin-right:.3rem}@media (max-width:560px){.events li{grid-template-columns:1fr;gap:.1rem}}.salesroom-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.9fr);grid-gap:1.6rem;gap:1.6rem;align-items:start}@media (max-width:900px){.salesroom-grid{grid-template-columns:1fr}}.mapwrap{background:#fff;border:1px solid var(--rule);border-radius:var(--radius);padding:.6rem}.mapwrap svg{width:100%;height:auto;display:block}.map-table{cursor:pointer}.map-table.active rect,.map-table:hover rect{stroke:#000;stroke-width:2.5}.map-table.dim rect{opacity:.25}.map-table text{pointer-events:none}.card{background:#fff;border:1px solid var(--rule);border-radius:var(--radius);padding:1rem 1.1rem;position:-webkit-sticky;position:sticky;top:76px}.card h3{margin-top:0}.card .cat{display:inline-block;padding:.1rem .55rem;border-radius:999px;font-size:.85rem;font-weight:700;color:#1c2a22}.card dl{display:grid;grid-template-columns:auto 1fr;grid-gap:.25rem .8rem;gap:.25rem .8rem;margin:.8rem 0 0;font-size:.95rem}.card dt{color:var(--ink-2)}.card dd{margin:0}.filters{display:flex;gap:.4rem;flex-wrap:wrap;margin:.6rem 0 1rem}.filters button{font-size:.85rem;padding:.35rem .75rem}.filters button i{display:inline-block;width:11px;height:11px;border-radius:3px;margin-right:.35rem;vertical-align:-1px}.report{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));grid-gap:.8rem;gap:.8rem;margin:1rem 0}.report div{background:#fff;border:1px solid var(--rule);border-radius:var(--radius);padding:.8rem 1rem}.report b{display:block;font-size:1.7rem;font-family:var(--font-display);font-weight:400}.report span{color:var(--ink-2);font-size:.9rem}.listing td:first-child{white-space:nowrap;font-weight:700}details summary{cursor:pointer;font-weight:700}.admin-scroll{overflow-x:auto;background:#fff;border:1px solid var(--rule);border-radius:var(--radius)}.admin{font-size:.9rem;min-width:960px}.admin thead th{position:-webkit-sticky;position:sticky;top:0;background:#fff}.admin td:first-child{white-space:nowrap;font-weight:700}.admin td div+div{margin-top:.2rem}.mark{font-weight:700;margin-left:.15rem}.mark.ok{color:var(--pine)}.mark.no{color:var(--ember)}.sr{position:absolute;width:1px;height:1px;clip:rect(0 0 0 0);white-space:nowrap}.sr,.walk{overflow:hidden}.walk{position:relative;width:100%;height:min(78vh,760px);background:#141b17;border-radius:var(--radius);border:1px solid var(--rule)}.walk canvas{display:block;width:100%!important;height:100%!important}.walk .hud{position:absolute;left:0;right:0;bottom:0;padding:.7rem 1rem;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.65));font-size:.95rem;pointer-events:none}.walk .hud b{font-size:1.05rem}.walk .overlay{position:absolute;inset:0;z-index:1;display:grid;place-items:center;background:rgba(20,27,23,.55);color:#fff;text-align:center;cursor:pointer}.walk .overlay div{max-width:36ch;padding:1.5rem}.walk .cross{position:absolute;left:50%;top:50%;width:10px;height:10px;margin:-5px 0 0 -5px;border:2px solid rgba(255,255,255,.8);border-radius:50%;pointer-events:none}.walk .mode{position:absolute;top:.7rem;right:.7rem;display:flex;gap:.4rem;z-index:2}.walk .mode button{font-size:.85rem;padding:.35rem .8rem}.chat{max-width:760px}.chat .log{display:flex;flex-direction:column;gap:.8rem;min-height:300px;margin-bottom:1rem}.chat .msg{padding:.8rem 1rem;border-radius:var(--radius);max-width:62ch}.chat .msg.user{align-self:flex-end;background:var(--pine);color:#fff;white-space:pre-wrap}.chat .msg.bot{align-self:flex-start;background:#fff;border:1px solid var(--rule)}.chat .msg.bot>:first-child{margin-top:0}.chat .msg.bot>:last-child{margin-bottom:0}.chat .msg.bot ol,.chat .msg.bot p,.chat .msg.bot ul{margin:0 0 .7rem}.chat .msg.bot ol,.chat .msg.bot ul{padding-left:1.3rem}.chat .msg.bot li+li{margin-top:.25rem}.chat form{display:flex;gap:.5rem}.chat input{flex:1 1;padding:.7rem .9rem;border:2px solid var(--rule);border-radius:999px}.chat input:focus{border-color:var(--pine);outline:none}.chat .starters{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 1rem}.chat .starters button{font-size:.9rem;padding:.35rem .8rem}