@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-vietnamese-wght-normal-6IgcOCM7.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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-ext-wght-normal-DC-KSUi6.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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-wght-normal-BgDaEnEv.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:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-soft-normal-DSA2Kggd.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-soft-normal-DKHvU-YN.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-soft-normal-C-lS_vzd.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{--paper:#fbf5ec;--paper-2:#f3e9dc;--ink:#2b2636;--ink-2:#554e64;--line:#2b263624;--accent:#ad4f2c;--card:#fffbf5cc;--card-strong:#fffbf5f2;--sage:#d6e8cc;--powder:#d5e6f2;--butter:#f8e7ae;--lilac:#e3daf3;--mint:#d3ece0;--peach:#fcd9c4;--rose:#f7d6cf;--dusk:#dcd7f3;--tone:var(--sage);--sky-top:#f4c3b4;--sky-bot:#fbe8d6;--night:0;--serif:"Fraunces Variable", ui-serif, Georgia, serif;--sans:"Geist Variable", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--shadow:0 1px 0 #ffffffb3 inset, 0 18px 50px -14px #3a264847, 0 2px 8px #3a26480f;--gutter:clamp(16px, 4.5vw, 64px);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}body{background:var(--sky-bot);color:var(--ink);font:400 17px/1.58 var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}h1,h2,h3{font-family:var(--serif);font-variation-settings:"SOFT" 100;letter-spacing:-.015em;text-wrap:balance;margin:0;font-weight:600;line-height:1.08}p{text-wrap:pretty;margin:0}a{color:inherit}img,video{max-width:100%;display:block}button{font:inherit;color:inherit}:focus-visible{outline-offset:3px;border-radius:8px;outline:3px solid #3a6fd8}.skip{z-index:50;background:var(--ink);color:var(--paper);border-radius:999px;padding:10px 16px;font-weight:600;text-decoration:none;position:fixed;top:-60px;left:12px}.skip:focus{top:12px}.sky{z-index:0;background:linear-gradient(180deg, var(--sky-top) 0%, var(--sky-bot) 78%);position:fixed;inset:0}.stars{opacity:calc(var(--night) * .9);background-image:radial-gradient(1.5px 1.5px at 8% 12%,#fff 98%,#0000),radial-gradient(1px 1px at 18% 34%,#fff 98%,#0000),radial-gradient(1.5px 1.5px at 27% 8%,#fff 98%,#0000),radial-gradient(1px 1px at 36% 22%,#fff 98%,#0000),radial-gradient(2px 2px at 47% 6%,#fff7d6 98%,#0000),radial-gradient(1px 1px at 55% 30%,#fff 98%,#0000),radial-gradient(1.5px 1.5px at 63% 14%,#fff 98%,#0000),radial-gradient(1px 1px at 71% 40%,#fff 98%,#0000),radial-gradient(1.5px 1.5px at 79% 9%,#fff 98%,#0000),radial-gradient(1px 1px at 86% 26%,#fff 98%,#0000),radial-gradient(2px 2px at 93% 16%,#fff7d6 98%,#0000),radial-gradient(1px 1px at 12% 52%,#fff 98%,#0000),radial-gradient(1px 1px at 41% 46%,#fff 98%,#0000),radial-gradient(1px 1px at 68% 58%,#fff 98%,#0000),radial-gradient(1.5px 1.5px at 90%,#fff 98%,#0000);position:absolute;inset:0 0 35%}#city{z-index:1;opacity:0;touch-action:pan-y;cursor:grab;width:100%;height:100%;transition:opacity .9s;display:block;position:fixed;inset:0}#city.ready{opacity:1}#city.pointing{cursor:pointer}#city.grabbing{cursor:grabbing}.labels{z-index:2;pointer-events:none;position:fixed;inset:0;overflow:hidden}.district,.tag{white-space:nowrap;will-change:transform;position:absolute;top:0;left:0}.district{opacity:0;background:#fffbf5e6;border-radius:999px;align-items:baseline;gap:6px;padding:5px 11px 6px;transition:opacity .35s;display:flex;box-shadow:0 4px 14px -6px #3a264859}.district.on{opacity:1}.district b{font:600 15px/1.1 var(--serif);font-variation-settings:"SOFT" 100}.district span{color:var(--ink-2);font-size:13px;font-weight:500}.tag{background:var(--card-strong);box-shadow:var(--shadow);opacity:0;border-radius:14px;gap:1px;margin-top:-10px;padding:9px 13px 10px;transition:opacity .18s;display:grid}.tag.on{opacity:1}.tag b{font:600 17px/1.15 var(--serif);font-variation-settings:"SOFT" 100}.tag span{color:var(--ink-2);font-size:14px}.tag i{color:var(--accent);margin-top:2px;font-size:13px;font-style:normal;font-weight:600}.top{top:14px;left:var(--gutter);right:var(--gutter);z-index:10;pointer-events:none;justify-content:space-between;align-items:center;gap:12px;display:flex;position:fixed}.brand,.top nav{pointer-events:auto;background:var(--card);-webkit-backdrop-filter:blur(14px)saturate(1.3);backdrop-filter:blur(14px)saturate(1.3);box-shadow:var(--shadow);border-radius:999px}.brand{font:600 18px/1 var(--serif);font-variation-settings:"SOFT" 100;color:var(--ink);align-items:center;gap:9px;padding:8px 16px 8px 10px;text-decoration:none;display:flex}.top nav{gap:2px;padding:5px;display:flex}.top nav a{color:var(--ink);border-radius:999px;padding:8px 13px;font-size:15px;font-weight:550;text-decoration:none}.top nav a:hover{background:#2b263612}.top nav a[aria-current]{background:#2b26361a}.top nav a.cta{background:var(--ink);color:var(--paper)}.dial{right:var(--gutter);z-index:9;background:var(--card);-webkit-backdrop-filter:blur(14px)saturate(1.3);backdrop-filter:blur(14px)saturate(1.3);box-shadow:var(--shadow);color:var(--ink);border-radius:999px;align-items:center;gap:12px;padding:10px 18px 10px 14px;transition:opacity .3s;display:flex;position:fixed;bottom:22px}.dial-sun{fill:#f0a35e;transition:fill .4s}.is-night .dial-sun{fill:#c9cdf5}.dial-text{line-height:1.1;display:grid}.dial-year{font:600 26px/1 var(--serif);font-variation-settings:"SOFT" 100;font-variant-numeric:tabular-nums}.dial-where{color:var(--ink-2);font-size:14px;font-weight:500}.past-city .dial{opacity:0;pointer-events:none}main{z-index:3;pointer-events:none;position:relative}main a,main button,.card,.hero-text,.paper{pointer-events:auto}.card{background:var(--card);-webkit-backdrop-filter:blur(18px)saturate(1.35);backdrop-filter:blur(18px)saturate(1.35);width:min(440px,100%);box-shadow:var(--shadow);border:1px solid #ffffff8c;border-radius:26px;gap:14px;padding:26px 28px 24px;display:grid}.card h2{font-size:clamp(28px,2.7vw,38px)}.pin .card{max-height:calc(100vh - 112px);scrollbar-width:thin;max-height:calc(100svh - 112px);overflow:auto}@media (min-width:761px) and (max-height:800px){.pin{padding-top:76px;padding-bottom:24px}.card{gap:11px;padding:20px 24px 18px}.card .extra,.card .aside{display:none}.card h2{font-size:30px}.card-map .legend{grid-template-columns:repeat(3,minmax(0,1fr))}.card-map .legend button{padding:6px 10px}.card-map .legend b{font-size:14.5px}.card-map .legend span{font-size:13px}.pin .card-map{width:min(530px,100%)}.card .stats li{padding:8px 12px}}@media (min-width:761px) and (max-height:640px){.card-map .legend span,.card-map>p:not(.kicker){display:none}}.kicker{letter-spacing:.02em;color:var(--ink-2);align-items:center;gap:10px;font-size:14px;font-weight:600;display:flex}.num{background:var(--tone);min-width:34px;height:26px;color:var(--ink);font:600 14px/1 var(--serif);font-variation-settings:"SOFT" 100;border-radius:999px;place-items:center;padding:0 8px;display:inline-grid}.quote{font:italic 500 19px/1.4 var(--serif);font-variation-settings:"SOFT" 100;border-left:3px solid var(--tone);padding-left:14px}.aside{color:var(--ink-2);font-size:16px}.chips,.stats{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.chips li{background:var(--tone);border-radius:999px;padding:6px 12px;font-size:15px;font-weight:550;line-height:1.3}.chips a{text-underline-offset:3px;text-decoration-thickness:1px}.stats li{background:var(--tone);border-radius:16px;min-width:112px;padding:10px 14px;display:grid}.stats b{font:600 24px/1.1 var(--serif);font-variation-settings:"SOFT" 100}.stats span{color:var(--ink-2);font-size:14px}.open{color:var(--accent);cursor:pointer;background:0 0;border:0;justify-self:start;align-items:center;gap:8px;padding:4px 0;font-size:16px;font-weight:600;display:inline-flex}.open:after{content:"→";transition:transform .2s}.open:hover:after{transform:translate(3px)}[data-tone=sage]{--tone:var(--sage)}[data-tone=powder]{--tone:var(--powder)}[data-tone=butter]{--tone:var(--butter)}[data-tone=lilac]{--tone:var(--lilac)}[data-tone=mint]{--tone:var(--mint)}[data-tone=peach]{--tone:var(--peach)}[data-tone=rose]{--tone:var(--rose)}[data-tone=night]{--tone:var(--dusk)}.btn{border:1.5px solid var(--ink);background:var(--ink);min-height:46px;color:var(--paper);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-size:16px;font-weight:600;text-decoration:none;transition:transform .15s,background .2s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn.quiet{color:var(--ink);background:#fffbf58c;border-color:#2b263647}.actions{flex-wrap:wrap;gap:10px;display:flex}.hero{min-height:100vh;min-height:100svh;padding:96px var(--gutter) 72px;align-items:center;display:flex;position:relative}.hero-text{gap:20px;max-width:490px;display:grid}.eyebrow{align-items:center;gap:12px;font-size:15px;font-weight:550;line-height:1.35;display:flex}.eyebrow img{border-radius:50%;width:44px;height:44px;box-shadow:0 0 0 3px #fffbf5d9}.eyebrow a{text-underline-offset:3px;text-decoration-thickness:1px}.hero h1{letter-spacing:-.03em;font-size:clamp(54px,6.6vw,100px);line-height:.95}.lede{font-size:clamp(19px,1.5vw,22px);line-height:1.5}.how{color:var(--ink-2);font-size:17px}.scroll-cue{left:var(--gutter);color:var(--ink-2);align-items:center;gap:10px;font-size:14px;font-weight:600;display:flex;position:absolute;bottom:26px}.scroll-cue span{border:2px solid;border-radius:12px;width:22px;height:34px;position:relative}.scroll-cue span:after{content:"";background:currentColor;border-radius:2px;width:4px;height:7px;margin-left:-2px;animation:1.8s ease-in-out infinite cue;position:absolute;top:7px;left:50%}@keyframes cue{0%,to{opacity:1;transform:translateY(0)}60%{opacity:.2;transform:translateY(9px)}}.chapter{height:175vh;position:relative}.finale{height:230vh;position:relative}.pin{height:100vh;height:100svh;padding:84px var(--gutter) 40px;align-items:center;display:flex;position:sticky;top:0}.card-map{width:min(470px,100%)}.legend{grid-template-columns:1fr 1fr;gap:6px;margin:0;padding:0;list-style:none;display:grid}.legend button{text-align:left;cursor:pointer;background:#2b26360d;border:0;border-radius:14px;gap:1px;width:100%;padding:8px 12px;transition:background .15s;display:grid}.legend button:hover,.legend button:focus-visible{background:var(--butter)}.legend b{font-size:15px;font-weight:600;line-height:1.25}.legend span{color:var(--ink-2);font-size:13.5px}.no-webgl .needs-3d{display:none}.js .pin .card{opacity:0;transition:opacity .45s,transform .6s cubic-bezier(.2,.9,.3,1.15);transform:translateY(28px)scale(.985)}.js .in .pin .card{opacity:1;transform:none}.sheet-open .pin .card,.sheet-open .hero-text{visibility:hidden;transition:opacity .2s,visibility 0s .2s;opacity:0!important}.sheet{z-index:20;left:var(--gutter);max-height:calc(100vh - 104px);overscroll-behavior:contain;background:var(--card-strong);-webkit-backdrop-filter:blur(20px)saturate(1.3);backdrop-filter:blur(20px)saturate(1.3);width:min(470px,100vw - 32px);max-height:calc(100svh - 104px);box-shadow:var(--shadow);opacity:0;--tone:var(--sage);border-radius:26px;padding:28px 28px 30px;transition:opacity .24s,transform .3s cubic-bezier(.2,.9,.3,1.2);position:fixed;top:80px;overflow:auto;transform:translateY(14px)scale(.985)}.sheet.on{opacity:1;transform:none}.sheet[data-tone=powder]{--tone:var(--powder)}.sheet[data-tone=butter]{--tone:var(--butter)}.sheet[data-tone=lilac]{--tone:var(--lilac)}.sheet[data-tone=mint]{--tone:var(--mint)}.sheet[data-tone=peach]{--tone:var(--peach)}.sheet[data-tone=rose]{--tone:var(--rose)}.sheet[data-tone=night]{--tone:var(--dusk)}.sheet-close{float:right;cursor:pointer;z-index:1;background:#2b263614;border:0;border-radius:50%;place-items:center;width:42px;height:42px;margin:-10px -12px 0 8px;display:grid;position:sticky;top:0}.sheet-close:hover{background:#2b263624}.sheet-content{gap:14px;display:grid}.sheet-content h2{outline:none;font-size:clamp(28px,2.6vw,36px)}.sheet-content .extra{display:block}.sheet-clips{gap:14px;margin-top:22px;display:grid}.sheet-clips h3{font-size:20px}.sheet-clips .work-card{box-shadow:none;border:1px solid var(--line)}.paper{z-index:4;background:var(--paper);border-radius:34px 34px 0 0;position:relative;box-shadow:0 -24px 60px -20px #281c3c59}.section{padding:clamp(64px, 9vw, 120px) var(--gutter) 0;max-width:1320px;margin:0 auto}.section-head{gap:12px;max-width:720px;margin-bottom:40px;display:grid}.section-head h2{letter-spacing:-.025em;font-size:clamp(38px,4.6vw,64px)}.section-head p:not(.kicker){color:var(--ink-2);font-size:19px}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.work-card{background:#fffdf9;border-radius:24px;flex-direction:column;display:flex;overflow:hidden;box-shadow:inset 0 1px #fffc,0 14px 40px -18px #3a26484d}.work-card video{aspect-ratio:16/9;object-fit:cover;background:var(--paper-2);width:100%;height:auto}.work-body{border-top:5px solid var(--tone);gap:10px;padding:20px 22px 22px;display:grid}.cards .work-card:nth-child(6n+1){--tone:var(--peach)}.cards .work-card:nth-child(6n+2){--tone:var(--sage)}.cards .work-card:nth-child(6n+3){--tone:var(--lilac)}.cards .work-card:nth-child(6n+4){--tone:var(--powder)}.cards .work-card:nth-child(6n+5){--tone:var(--butter)}.cards .work-card:nth-child(6n+6){--tone:var(--rose)}.work-body h3{font-size:26px}.work-body h3 small{font:500 15px/1 var(--sans);color:var(--ink-2);letter-spacing:0;margin-left:6px}.links{flex-wrap:wrap;gap:8px;display:flex}.links a{background:var(--paper-2);border-radius:999px;padding:6px 14px;font-size:15px;font-weight:600;text-decoration:none}.links a:hover{background:var(--tone)}.also{gap:14px;margin-top:40px;display:grid}.also h3{font-size:24px}.also ul,.lists ul{gap:14px;margin:0;padding:0;list-style:none;display:grid}.also li{border-top:1px solid var(--line);grid-template-columns:minmax(180px,240px) 1fr;gap:16px;padding-top:14px;display:grid}.also a,.lists a{color:var(--ink);text-underline-offset:3px;font-weight:600;text-decoration-color:#ad4f2c80;text-decoration-thickness:1.5px}.also a:hover,.lists a:hover{color:var(--accent)}.also span{color:var(--ink-2)}.lists{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;display:grid}.lists h3{margin-bottom:16px;font-size:24px}.lists li{border-top:1px solid var(--line);gap:3px;padding-top:14px;display:grid}.lists span{color:var(--ink-2);font-size:15px}.strip{scroll-snap-type:x mandatory;scrollbar-width:thin;gap:20px;padding:4px 4px 18px;display:flex;overflow-x:auto}.strip figure{scroll-snap-align:start;flex:none;margin:0}.strip img{background:var(--paper-2);border-radius:18px;width:auto;height:clamp(260px,34vw,380px)}.strip figcaption{color:var(--ink-2);margin-top:10px;font-size:15px}.strip figcaption b{color:var(--ink);font-weight:600}.strip-nav{gap:10px;margin-top:8px;display:flex}.strip-nav button{cursor:pointer;background:0 0;border:1.5px solid #2b263640;border-radius:50%;width:48px;height:48px;font-size:20px}.strip-nav button:hover{background:var(--paper-2)}.contact{justify-items:start;gap:18px;padding-bottom:80px;display:grid}.contact h2{letter-spacing:-.035em;font-size:clamp(54px,8vw,120px)}.contact>p{color:var(--ink-2);font-size:20px}.socials{flex-wrap:wrap;gap:22px;display:flex}.socials a{text-underline-offset:4px;font-weight:600}.footer{max-width:1320px;padding:28px var(--gutter) 40px;color:var(--ink-2);border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:16px;margin:0 auto;font-size:15px;display:flex}.viewer{background:0 0;border:0;max-width:min(92vw,1400px);max-height:92vh;padding:0}.viewer::backdrop{background:#1e1628d1}.viewer img{border-radius:14px;max-width:100%;max-height:82vh;margin:0 auto}.viewer-cap{color:#fbf5ec;text-align:center;margin-top:12px;font-size:16px}.viewer-close{color:var(--ink);cursor:pointer;background:#fbf5ec;border:0;border-radius:999px;margin:12px auto 0;padding:10px 18px;font-weight:600;display:block}.perf{z-index:60;color:#fff;background:#14101cd9;border-radius:10px;margin:0;padding:8px 10px;font:12px/1.4 ui-monospace,monospace;position:fixed;bottom:12px;left:12px}@media (max-width:760px),(max-aspect-ratio:21/20){body{font-size:16.5px}.wide-only{display:none}.top{top:10px;left:12px;right:12px}.brand{white-space:nowrap;padding:7px 14px 7px 9px;font-size:17px}.top nav a{padding:8px 11px}.district{padding:4px 9px 5px}.district b{font-size:14px}.district span,.card .quote{display:none}.dial{gap:8px;padding:6px 12px 6px 8px;top:66px;bottom:auto;right:12px}.dial-arc{width:40px;height:22px}.dial-year{font-size:19px}.dial-where{font-size:13px}.hero{align-items:flex-end;padding:0 12px 16px}.hero-text{background:var(--card);-webkit-backdrop-filter:blur(18px)saturate(1.35);backdrop-filter:blur(18px)saturate(1.35);box-shadow:var(--shadow);border-radius:26px;gap:14px;max-width:none;padding:22px 22px 20px}.hero h1{font-size:clamp(42px,12vw,64px)}.lede{font-size:18px}.how{font-size:16px}.scroll-cue{display:none}.pin{align-items:flex-end;padding:0 12px 12px}.card{gap:11px;width:100%;padding:20px 20px 18px}.pin .card{max-height:58vh;max-height:58svh}.card .extra,.card .aside{display:none}.card h2{font-size:27px}.stats li{min-width:0;padding:8px 11px}.stats b{font-size:20px}.legend{gap:6px;padding-bottom:4px;display:flex;overflow-x:auto}.legend li{flex:none}.legend button{width:auto}.sheet{width:auto;max-height:74svh;padding:22px 20px 24px;inset:auto 8px 8px}.cards,.lists{grid-template-columns:1fr}.also li{grid-template-columns:1fr;gap:4px}.strip img{height:240px}}@media (max-width:400px){.top nav .mid-only{display:none}}
