@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2)format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.woff)format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2)format("woff2"),url(/assets/dm-sans-latin-500-normal-Dr3UlScf.woff)format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-400-normal-B-1hWBU7.woff2)format("woff2"),url(/assets/cormorant-garamond-latin-400-normal-B7YtguxJ.woff)format("woff")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-400-italic-Dc_OZ8oc.woff2)format("woff2"),url(/assets/cormorant-garamond-latin-400-italic-BLh7T8o8.woff)format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-latin-500-normal-BsRWmXhO.woff2)format("woff2"),url(/assets/cormorant-garamond-latin-500-normal-zIXX3Q-H.woff)format("woff")}:root{--ivory-50:#f6f3ed;--ivory-100:#eee9df;--ivory-200:#e1d9cd;--ivory-300:#c9bead;--stone-500:#877f72;--stone-600:#6c675d;--stone-700:#504c43;--stone-900:#2d322b;--stone-950:#232820;--bronze-100:#eadcc5;--bronze-400:#b89561;--bronze-600:#82643b;--green-600:#58654d;--red-600:#9d4e3c;--white:#fffdf8;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--space-10:128px;--font-body:"DM Sans", sans-serif;--font-display:"Cormorant Garamond", Georgia, serif;--text-xs:12px;--text-sm:14px;--text-base:16px;--text-lg:18px;--text-xl:24px;--display-sm:clamp(38px, 4.6vw, 68px);--display-lg:clamp(76px, 8.6vw, 136px);--radius-sm:2px;--radius-md:6px;--radius-lg:10px;--radius-full:50%;--shadow-overlay:0 12px 40px #2d322b0c, 0 2px 8px #2d322b08;--duration-fast:.15s;--duration-normal:.25s;--duration-slow:.4s;--ease-out:cubic-bezier(.16, 1, .3, 1);--z-base:0;--z-raised:1;--z-ui:10;--z-nav:20;--z-modal:40;--z-toast:50;--surface:var(--ivory-50);--surface-raised:var(--white);--surface-muted:var(--ivory-100);--surface-inverse:var(--stone-900);--text:var(--stone-900);--muted:var(--stone-600);--subtle:var(--stone-500);--accent:var(--bronze-600);--accent-soft:var(--bronze-100);--border:var(--ivory-200);--success:var(--green-600);--error:var(--red-600);--page-gutter:clamp(24px, 4.4vw, 80px);--button-fill:var(--stone-900);--button-ink:var(--ivory-50)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{background:var(--surface);color:var(--text);font-family:var(--font-body);font-size:var(--text-base);-webkit-font-smoothing:antialiased;margin:0}button,a,input,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button,input{font:inherit}button{color:inherit;cursor:pointer;background:0 0;border:0}button:disabled{opacity:.45;cursor:wait}a{color:inherit;text-decoration:none}button,a,summary,input{outline-offset:5px}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent)}svg.lucide{stroke-width:1.5px;flex:none;width:18px;height:18px}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--font-display);letter-spacing:-.035em;text-wrap:balance;font-weight:400;line-height:1.02}h2{font-size:var(--display-sm)}h2 em,h1 em{font-weight:400}p{line-height:1.75}button{min-height:44px}::selection{background:var(--accent-soft)}[hidden]{display:none!important}.eyebrow{letter-spacing:.17em;text-transform:uppercase;font-size:11px;font-weight:500}.small-note{color:var(--muted);font-size:11px}.section-wrap{padding-left:var(--page-gutter);padding-right:var(--page-gutter);max-width:1680px;margin-inline:auto}.text-link{border-bottom:1px solid var(--border);align-items:center;gap:16px;min-height:44px;padding-bottom:4px;font-size:12px;display:inline-flex}.text-link svg{transition:transform var(--duration-normal) var(--ease-out)}.text-link:hover svg{transform:translate(3px,-3px)}.primary-action{background:var(--button-fill);color:var(--button-ink);letter-spacing:.02em;border-radius:var(--radius-sm);min-height:52px;transition:background var(--duration-normal), transform var(--duration-normal);justify-content:space-between;align-items:center;gap:24px;padding:16px 24px;font-size:12px;display:inline-flex}.primary-action:hover{background:var(--accent);transform:translateY(-2px)}.primary-action svg{width:19px;height:19px}.icon-button{border-radius:var(--radius-md);justify-content:center;align-items:center;width:44px;min-width:44px;display:inline-flex}.icon-button:hover{background:var(--surface-muted)}.skip-link{background:var(--surface-inverse);color:var(--surface);z-index:var(--z-toast);padding:16px;position:fixed;top:-80px;left:24px}.skip-link:focus{top:16px}.site-header{z-index:var(--z-nav);height:108px;padding:0 var(--page-gutter);justify-content:space-between;align-items:center;gap:32px;display:flex;position:absolute;top:0;left:0;right:0}.brand{flex:none;align-items:center;gap:13px;display:flex}.brand-symbol{width:42px;height:42px;stroke:var(--accent);stroke-width:1.3px}.brand>span{font-family:var(--font-display);letter-spacing:-.02em;font-size:25px;font-weight:500;line-height:1}.brand small{font:9px var(--font-body);color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin-top:8px;display:block}.site-header nav{gap:34px;margin-left:auto;margin-right:42px;display:flex}.site-header nav a{padding:14px 0;font-size:12px;position:relative}.site-header nav a:after{content:"";background:var(--accent);transform-origin:0;width:100%;height:1px;transition:transform var(--duration-normal);position:absolute;bottom:6px;left:0;transform:scaleX(0)}.site-header nav a:hover:after{transform:scaleX(1)}.header-action{border-bottom:1px solid var(--stone-900);align-items:center;gap:22px;padding:8px 0;font-size:12px;display:flex}.header-action:hover{color:var(--accent)}.hero{isolation:isolate;height:min(980px,100svh);min-height:800px;position:relative;overflow:hidden}.hero:after{content:"";background:linear-gradient(transparent, var(--surface));pointer-events:none;height:20%;z-index:var(--z-raised);position:absolute;bottom:0;left:0;right:0}.hero-heading{left:var(--page-gutter);z-index:var(--z-ui);pointer-events:none;position:absolute;top:21%}.hero-heading .eyebrow{color:var(--muted);align-items:center;gap:12px;margin-bottom:24px;display:flex}.little-line{background:var(--accent);width:24px;height:1px}h1{font-size:var(--display-lg);margin-left:-4px;line-height:.84}h1 em{color:var(--accent)}.hero-tagline{letter-spacing:-.025em;margin-top:32px;font-size:18px;line-height:1.5}.hero-heading .primary-action{pointer-events:auto;margin-top:28px}.hero-heading>*{animation:rise-in .9s var(--ease-out) both}.hero-heading>h1{animation-delay:80ms}.hero-heading>.hero-tagline{animation-delay:.15s}.hero-heading>.primary-action{animation-delay:.21s}#hero-model-slot{z-index:var(--z-base);pointer-events:none;position:absolute;inset:66px 0 0 11%}.model-stage{pointer-events:auto;width:100%;height:100%;transition:opacity .6s;position:relative}#city-canvas{touch-action:pan-y;outline-offset:-6px;cursor:grab;opacity:0;width:100%;height:100%;transition:opacity .9s var(--ease-out);display:block}.model-ready #city-canvas{opacity:1}#city-canvas:active{cursor:grabbing}.model-loading{color:var(--muted);align-items:center;gap:16px;font-size:12px;display:flex;position:absolute;top:48%;left:58%;transform:translate(-50%,-50%)}.loading-dial{border:1px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:2s linear infinite rotate}.model-fallback{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:8% 10% 10% 24%}.model-fallback img{max-width:100%;max-height:75%}.model-fallback p{text-align:center;max-width:350px;color:var(--muted);font-size:12px}.model-tooltip{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-overlay);pointer-events:none;white-space:nowrap;z-index:var(--z-ui);padding:10px 16px;font-size:12px;position:absolute;transform:translate(-50%,-100%)}.hero-caption{z-index:var(--z-ui);color:var(--muted);pointer-events:none;align-items:flex-start;gap:10px;display:flex;position:absolute;top:29%;right:6%}.hero-caption p{font-size:11px;line-height:1.6}.caption-marker{border:1px solid var(--accent);border-radius:50%;width:6px;height:6px;margin-top:5px}.caption-rule{background:var(--ivory-300);transform-origin:100%;width:76px;height:1px;position:absolute;top:38px;left:-79px;transform:rotate(-35deg)}.hero-side-note{writing-mode:vertical-rl;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-size:9px;position:absolute;top:51%;right:22px}.hero-bottom{bottom:48px;left:var(--page-gutter);right:var(--page-gutter);z-index:var(--z-ui);justify-content:space-between;align-items:center;gap:16px;display:flex;position:absolute}.scroll-cue{color:var(--muted);flex:1;align-items:center;gap:15px;font-size:11px;display:flex}.scroll-cue>span{border:1px solid var(--ivory-300);border-radius:50%;place-items:center;width:36px;height:36px;display:grid}.scroll-cue svg{width:14px;height:14px}.scroll-cue:hover>span{background:var(--accent-soft)}.hero-view-controls{background:color-mix(in srgb, var(--surface-raised) 87%, transparent);border:1px solid var(--border);border-radius:var(--radius-md);flex-wrap:wrap;align-items:center;gap:8px;max-width:100%;padding:4px 8px;display:flex;box-shadow:0 4px 16px #2d322b04}.hero-view-controls button{color:var(--muted);border-radius:var(--radius-sm);align-items:center;gap:7px;padding:0 12px;font-size:11px;display:flex}.hero-view-controls button[aria-pressed=true]{background:var(--surface-muted);color:var(--text)}.hero-view-controls button:hover{color:var(--accent)}.hero-view-controls svg{width:15px;height:15px}.hero-view-controls .icon-button{padding:0}[data-drone-tour]{white-space:nowrap}.hero-view-controls [data-drone-tour][aria-pressed=true]{background:var(--surface-inverse);color:var(--surface)}.drone-status{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-md);pointer-events:none;flex-direction:column;gap:6px;max-width:calc(100% - 48px);padding:12px 16px;font-size:12px;display:flex;position:absolute;bottom:116px;right:28px}.drone-status .eyebrow{color:var(--accent);font-size:9px}#explorer .drone-status{bottom:72px;left:24px;right:auto}.control-divider{background:var(--border);width:1px;height:20px}.model-disclaimer{color:var(--muted);text-align:right;flex:1;font-size:9px}.section-kicker{align-items:center;gap:24px;margin-bottom:56px;display:flex}.section-kicker .eyebrow{white-space:nowrap;color:var(--accent)}.kicker-rule{background:var(--border);flex:1;height:1px}.vision{padding-top:72px;padding-bottom:110px}.vision-grid{grid-template-columns:1.15fr 1fr;gap:9%;display:grid}.vision h2{font-size:clamp(52px,5.6vw,84px)}.vision-copy{max-width:490px;padding-top:4px}.vision-copy p{color:var(--muted);font-size:15px}.vision-copy p+p{margin-top:16px}.vision-copy .text-link{margin-top:18px}.principle-numbers{border-top:1px solid var(--border);grid-template-columns:repeat(3,1fr);gap:48px;margin:64px 0 0;padding-top:32px;display:grid}.principle-numbers dt{color:var(--muted);margin-bottom:8px;font-size:11px}.principle-numbers dd{font-family:var(--font-display);font-variant-numeric:tabular-nums;align-items:baseline;gap:24px;margin:0;font-size:70px;line-height:1;display:flex}.principle-numbers dd span{font:12px var(--font-body);color:var(--muted)}.anatomy{padding-top:32px;padding-bottom:96px}.anatomy-grid{grid-template-columns:1.1fr 1fr;align-items:center;gap:8%;display:grid}.plan-drawing{background:var(--surface-muted);padding:24px 32px}.drawing-top,.drawing-bottom{color:var(--muted);justify-content:space-between;align-items:center;gap:16px;font-size:10px;display:flex}.drawing-top .eyebrow{font-size:10px}.plan-drawing img{aspect-ratio:1;object-fit:contain;width:100%;height:auto;display:block}.drawing-bottom{border-top:1px solid var(--ivory-200);padding-top:8px}.drawing-bottom .text-link{border:0;gap:8px;font-size:11px}.drawing-bottom svg{width:15px}.anatomy-copy h2{font-size:clamp(42px,4.2vw,62px)}.section-intro{color:var(--muted);max-width:370px;margin-top:24px;font-size:14px}.anatomy-list{margin:32px 0 0;padding:0;list-style:none}.anatomy-list li{border-top:1px solid var(--border);align-items:baseline;gap:22px;padding:24px 0;display:flex}.anatomy-list li>span{font-family:var(--font-display);color:var(--accent);font-size:18px}.anatomy-list h3{letter-spacing:-.02em;font-size:14px;font-weight:500}.anatomy-list p{color:var(--muted);max-width:350px;margin-top:8px;font-size:12px}.programme{padding-top:32px;padding-bottom:100px}.programme-head{justify-content:space-between;align-items:end;gap:32px;display:flex}.programme-head p{color:var(--muted);max-width:370px;font-size:13px}.programme-content{grid-template-columns:1fr 1.15fr;gap:10%;min-height:395px;margin-top:48px;display:grid}.programme-tabs{flex-direction:column;display:flex}.programme-tabs button{text-align:left;border-top:1px solid var(--border);align-items:center;gap:24px;min-height:62px;padding:20px 0;display:flex}.programme-tabs button:last-child{border-bottom:1px solid var(--border)}.programme-tabs .tab-number{color:var(--muted);font-variant-numeric:tabular-nums;font-size:10px}.programme-tabs .tab-name{letter-spacing:-.02em;font-size:15px}.programme-tabs svg{color:var(--subtle);width:15px;transition:transform var(--duration-normal);margin-left:auto}.programme-tabs button[aria-selected=true]{color:var(--accent)}.programme-tabs button[aria-selected=true] .tab-name{font-weight:500}.programme-tabs button[aria-selected=true] svg{color:var(--accent);transform:rotate(-45deg)}.programme-tabs button:hover{color:var(--accent)}.programme-detail{background:var(--surface-muted);flex-direction:column;justify-content:flex-start;padding:40px;display:flex;position:relative;overflow:hidden}.programme-detail .eyebrow{color:var(--accent);font-size:10px}.programme-detail h3{font:400 38px/1.1 var(--font-display);letter-spacing:-.025em;max-width:290px;margin-top:24px}.programme-detail p{color:var(--muted);max-width:370px;margin-top:18px;font-size:13px;position:relative}.programme-detail .programme-meta{color:var(--accent);margin-top:22px;font-size:10px}.programme-detail .text-link{border-color:var(--ivory-300);align-self:start;margin-top:auto;padding-top:12px;position:relative}.programme-clock{opacity:.13;pointer-events:none;width:230px;height:230px;position:absolute;top:-45px;right:-54px;transform:rotate(-20deg)}.programme-clock circle,.programme-clock path{fill:none;stroke:var(--accent);stroke-width:1px}.programme-clock text{fill:var(--accent);font-family:var(--font-display);font-size:11px}.brief{padding-top:24px;padding-bottom:96px}.brief-grid{grid-template-columns:.85fr 1.15fr;gap:10%;display:grid}.brief-intro p{color:var(--muted);max-width:350px;margin-top:28px;font-size:14px}.status-note{color:var(--accent);align-items:center;gap:10px;margin-top:28px;font-size:10px;display:flex}.status-note>span{background:var(--accent);border-radius:50%;width:6px;height:6px}.brief-items details{border-top:1px solid var(--border)}.brief-items details:last-child{border-bottom:1px solid var(--border)}.brief-items summary{cursor:pointer;align-items:center;gap:18px;min-height:76px;font-size:13px;font-weight:500;list-style:none;display:flex}.brief-items summary::-webkit-details-marker{display:none}.brief-items summary>span{color:var(--accent);font-size:10px;font-weight:400}.brief-items summary svg{width:15px;transition:transform var(--duration-normal);margin-left:auto}.brief-items details[open] summary svg{transform:rotate(45deg)}.brief-answer{padding:0 28px 28px 34px}.brief-answer p{color:var(--muted);font-size:12px}.answer-source{color:var(--accent);margin-top:14px;font-size:9px;line-height:1.5;display:block}.source-note{color:var(--muted);border-top:1px solid var(--border);max-width:700px;margin-top:64px;padding-top:24px;font-size:10px}.closing{border-top:1px solid var(--border);padding-top:72px;padding-bottom:88px;position:relative;overflow:hidden}.closing>.eyebrow{color:var(--accent)}.closing h2{z-index:var(--z-raised);margin-top:32px;font-size:clamp(48px,5.4vw,78px);position:relative}.closing .primary-action{z-index:var(--z-raised);margin-top:36px;position:relative}.closing-watermark{font:550px var(--font-display);color:var(--ivory-100);pointer-events:none;position:absolute;bottom:-135px;right:5%}.site-footer{border-top:1px solid var(--border);padding:32px var(--page-gutter);justify-content:space-between;align-items:center;gap:24px;display:flex}.footer-brand{font-family:var(--font-display);white-space:nowrap;align-items:center;gap:20px;font-size:22px;display:flex}.footer-brand span{font:10px var(--font-body);color:var(--muted);letter-spacing:.04em}.site-footer p,.site-footer>a:last-child{color:var(--muted);font-size:10px}.site-footer>a:last-child{align-items:center;gap:18px;min-height:44px;display:flex}.site-footer svg{width:14px}#explorer{background:var(--surface);width:100vw;max-width:none;height:100dvh;max-height:none;color:var(--text);border:0;margin:0;padding:0;overflow:hidden}#explorer::backdrop{background:var(--surface)}.explorer-header{border-bottom:1px solid var(--border);align-items:center;gap:48px;height:86px;padding:0 28px;display:flex}.explorer-header .eyebrow{color:var(--accent);font-size:9px}.explorer-header h2{letter-spacing:-.025em;margin-top:4px;font-size:30px}.explorer-header>p{color:var(--muted);margin-right:auto;font-size:12px}.close-explorer{align-items:center;gap:18px;min-height:44px;padding:0 8px;font-size:12px;display:flex}.close-explorer:hover{color:var(--accent)}.close-explorer svg{width:20px}.explorer-body{height:calc(100% - 86px);display:flex}.explorer-viewport{background:var(--surface);flex:1;min-width:0;position:relative;overflow:hidden}#explorer-model-slot{position:absolute;inset:0}#explorer #city-canvas{touch-action:none}#explorer .model-fallback{inset:10%}.explorer-toolbar{pointer-events:none;flex-wrap:wrap;align-items:center;gap:8px;display:flex;position:absolute;top:24px;left:24px;right:24px}.explorer-toolbar>*{pointer-events:auto;background:var(--surface-raised)}.segmented{border:1px solid var(--border);border-radius:var(--radius-md);gap:4px;padding:4px;display:flex}.segmented button{border-radius:var(--radius-sm);min-height:36px;color:var(--muted);flex:1;padding:0 12px;font-size:11px}.segmented button[aria-pressed=true]{color:var(--text);background:var(--surface-muted)}.segmented button:hover{background:var(--surface-muted)}.tool-button{border:1px solid var(--border);border-radius:var(--radius-md);align-items:center;gap:8px;min-height:46px;padding:0 12px;font-size:11px;display:flex}.tool-button[aria-pressed=true]{background:var(--surface-inverse);color:var(--surface)}.tool-button svg{width:16px}.explorer-toolbar>.icon-button{border:1px solid var(--border);height:46px}.explorer-help{pointer-events:none;justify-content:space-between;gap:24px;display:flex;position:absolute;bottom:24px;left:24px;right:24px}.explorer-help span{color:var(--muted);background:var(--surface);border-radius:var(--radius-sm);padding:8px;font-size:10px}.inspector{border-left:1px solid var(--border);overscroll-behavior:contain;background:var(--surface-raised);flex:none;width:324px;padding:28px 24px;overflow-y:auto}.inspector-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.inspector-heading .eyebrow{color:var(--accent);font-size:10px}.inspector-heading>span:last-child{color:var(--muted);font-size:10px}.precinct-buttons{grid-template-columns:repeat(6,1fr);gap:6px;margin-top:22px;display:grid}.precinct-buttons button{border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-display);min-height:38px;font-size:15px}.precinct-buttons button[aria-pressed=true]{background:var(--surface-inverse);border-color:var(--surface-inverse);color:var(--surface)}.precinct-buttons button:hover{border-color:var(--accent)}.precinct-buttons button.is-future{opacity:.45;border-style:dashed}.precinct-detail{min-height:137px;margin:24px 0}.precinct-detail .eyebrow{color:var(--accent);font-size:9px}.precinct-detail h3{font:34px/1.05 var(--font-display);letter-spacing:-.025em;margin-top:10px}.precinct-detail>p{color:var(--muted);margin-top:10px;font-size:11px}.precinct-detail .precinct-facts{color:var(--accent);gap:16px;margin-top:16px;font-size:10px;display:flex}.inspector-section{border-top:1px solid var(--border);padding:20px 0}.field-heading{justify-content:space-between;align-items:baseline;font-size:12px;display:flex}.field-heading output{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:32px;line-height:1}.inspector input[type=range]{width:100%;accent-color:var(--accent);cursor:pointer;height:24px;margin:16px 0 0;display:block}.range-ends{color:var(--muted);justify-content:space-between;margin-top:4px;font-size:9px;display:flex}.control-label{margin-bottom:12px;font-size:12px}.phase-controls button{min-height:36px}.control-help{color:var(--muted);min-height:30px;margin-top:12px;font-size:10px;line-height:1.5}.layer-controls{flex-wrap:wrap;gap:6px;display:flex}.layer-controls button{border:1px solid var(--border);border-radius:var(--radius-sm);min-height:34px;padding:0 8px;font-size:10px}.layer-controls button[aria-pressed=true]{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.export-button{background:var(--surface-inverse);width:100%;color:var(--surface);border-radius:var(--radius-sm);align-items:center;gap:10px;margin-top:4px;padding:12px 16px;font-size:11px;display:flex}.export-button svg{width:15px;height:15px}.export-button svg:last-child{margin-left:auto}.export-button:hover{background:var(--accent)}.inspector-footnote{color:var(--muted);text-align:center;margin-top:10px;font-size:9px;line-height:1.5}.toast{z-index:var(--z-toast);background:var(--surface-inverse);color:var(--surface);box-shadow:var(--shadow-overlay);border-radius:var(--radius-md);width:max-content;max-width:calc(100vw - 32px);padding:14px 24px;font-size:12px;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast.in-dialog{position:absolute}.reveal{opacity:1}.js-reveals .reveal{opacity:0;transition:opacity .65s var(--ease-out), transform .65s var(--ease-out);transform:translateY(22px)}.js-reveals .reveal.is-visible{opacity:1;transform:translateY(0)}@keyframes rise-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes rotate{to{transform:rotate(360deg)}}@media (width>=1700px){.hero-heading{left:calc(50vw - 760px)}.hero-bottom{left:calc(50vw - 760px);right:calc(50vw - 760px)}.hero{height:1000px;max-height:100svh}.hero-caption{right:12%}}@media (width<=1150px){.site-header nav{gap:24px;margin-right:12px}.hero{min-height:760px}.hero-heading{top:24%}h1{font-size:100px}.hero-caption{top:25%;right:7%}.hero-side-note,.model-disclaimer{display:none}.hero-bottom{bottom:40px}.hero-view-controls{margin-left:auto}.vision-grid{gap:6%}.vision h2{font-size:62px}.principle-numbers dd{gap:16px}.principle-numbers dd span{font-size:10px}.anatomy-grid{gap:5%}.plan-drawing{padding:24px}.programme-content{gap:6%}.brief-grid{gap:7%}.anatomy-list li{padding:18px 0}.anatomy-list p{font-size:11px}.site-footer .footer-brand span{display:none}}@media (width<=850px){.site-header{gap:16px;height:90px}.site-header nav{display:none}.header-action{margin-left:auto}.brand-symbol{width:36px;height:36px}.brand>span{font-size:23px}.brand small{font-size:8px}.hero{height:960px;min-height:880px;max-height:none}.hero-heading{top:135px}.hero-heading .eyebrow{margin-bottom:20px}h1{font-size:110px}.hero-tagline{margin-top:24px;font-size:15px}.hero-heading .primary-action{margin-top:22px;padding:14px 20px;font-size:11px}.hero-caption{top:55%;right:7%}#hero-model-slot{inset:305px -10% 30px -12%}.hero-bottom{bottom:30px}.scroll-cue{font-size:10px}.hero-view-controls button{padding:0 8px;font-size:10px}.hero-view-controls{gap:4px}.vision{padding-top:56px;padding-bottom:80px}.vision h2{font-size:54px}.vision-grid{grid-template-columns:1fr 1fr;gap:32px}.vision-copy p{font-size:13px}.section-kicker{margin-bottom:40px}.section-kicker .eyebrow,.small-note{font-size:10px}.principle-numbers{gap:24px;margin-top:48px}.principle-numbers dd{font-size:56px;display:block}.principle-numbers dd span{margin-top:12px;font-size:11px;display:block}.principle-numbers dt{font-size:10px}.anatomy{padding-bottom:72px}.anatomy-grid{grid-template-columns:1fr;gap:40px}.plan-drawing,.anatomy-copy{width:100%;max-width:630px;margin:auto}.anatomy-copy h2{font-size:52px}.section-intro{max-width:430px}.anatomy-list p{max-width:500px;font-size:13px}.programme-content{grid-template-columns:1fr 1fr;gap:24px}.programme-detail{padding:28px}.programme-detail h3{font-size:32px}.programme-tabs .tab-name{font-size:13px}.programme-tabs button{gap:14px}.programme-head h2{font-size:52px}.programme-head p{font-size:12px}.brief-grid{grid-template-columns:1fr;gap:40px}.brief-intro{grid-template-columns:1fr 1fr;gap:0 32px;display:grid}.brief-intro h2{font-size:52px}.brief-intro p{margin-top:0}.brief-intro .status-note{grid-column:2;margin-top:16px}.brief-items summary{font-size:14px}.brief-answer p{font-size:13px}.source-note{margin-top:40px}.site-footer{flex-wrap:wrap;gap:16px}.site-footer>p{margin-left:auto}.site-footer>a:last-child{display:none}.inspector{width:285px;padding:24px 18px}.explorer-header{padding:0 20px}.explorer-header>p{display:none}.close-explorer{margin-left:auto}.explorer-help{flex-direction:column;align-items:flex-start;gap:0}.explorer-help span:last-child{font-size:8px}.explorer-toolbar{gap:6px;top:16px;left:12px;right:12px}.explorer-toolbar .segmented button,.tool-button{padding:0 8px}.tool-button span{display:none}.tool-button[data-drone-tour] span{display:inline}}@media (width<=560px){.hero{height:910px;min-height:0}.site-header{height:86px}.brand{gap:10px}.brand-symbol{width:34px;height:34px}.brand>span{font-size:23px}.brand small{letter-spacing:.1em;font-size:7px}.header-action{border:1px solid var(--border);border-radius:var(--radius-full);justify-content:center;gap:0;min-width:38px;font-size:0}.header-action svg{width:17px}.hero-heading{top:133px}.hero-heading .eyebrow{margin-bottom:24px;font-size:9px}h1{font-size:100px;line-height:.86}.hero-tagline{margin-top:22px;font-size:14px}.hero-tagline br{display:none}.hero-heading .primary-action{gap:20px;min-height:46px;margin-top:20px;padding:12px 18px;font-size:10px}#hero-model-slot{inset:398px -21% 72px}.hero-caption{gap:6px;top:76%;right:6%}.hero-caption p{font-size:9px}.caption-rule{width:32px;top:20px;left:-35px}.hero-bottom{flex-wrap:wrap;justify-content:center;gap:12px;bottom:22px}.scroll-cue{flex:auto;order:2;justify-content:center;font-size:9px}.scroll-cue>span{width:24px;height:24px}.scroll-cue svg{width:12px}.hero-view-controls{flex:none;justify-content:center;width:max-content;margin:0 auto;padding:3px 6px}.hero-view-controls button{min-height:40px;font-size:10px}.hero-view-controls svg{width:14px}.hero-view-controls [data-camera] svg{display:none}.hero-view-controls [data-drone-tour]{min-width:93px}.drone-status{padding:8px 12px;font-size:10px;bottom:12px;right:16%}#explorer .drone-status{bottom:36px;left:12px}.hero-view-controls .icon-button{width:36px;min-width:36px}.hero:after{height:15%}.model-loading{font-size:10px;left:50%}.model-fallback{inset:5% 14%}.model-fallback p{max-width:240px;font-size:10px}.vision{padding-top:44px;padding-bottom:64px}.section-kicker{gap:14px;margin-bottom:32px}.section-kicker .eyebrow{letter-spacing:.13em;font-size:9px}.section-kicker .small-note{display:none}.vision-grid{grid-template-columns:1fr;gap:28px}.vision h2{font-size:55px}.vision-copy p{font-size:14px}.vision-copy{max-width:410px}.vision-copy .text-link{font-size:11px}.principle-numbers{gap:16px;margin-top:36px;padding-top:24px}.principle-numbers dt{min-height:27px;font-size:9px;line-height:1.5}.principle-numbers dd{font-size:50px}.principle-numbers dd span{max-width:90px;margin-top:8px;font-size:9px;line-height:1.5}.anatomy{padding-top:12px;padding-bottom:64px}.plan-drawing{padding:16px}.drawing-top,.drawing-top .eyebrow,.drawing-bottom>span{font-size:8px}.drawing-bottom .text-link{font-size:9px}.anatomy-copy h2{font-size:48px}.section-intro{margin-top:20px;font-size:13px}.anatomy-list{margin-top:24px}.anatomy-list li{gap:18px;padding:20px 0}.anatomy-list p{font-size:12px}.anatomy-list h3{font-size:13px}.programme{padding-top:0;padding-bottom:64px}.programme-head{display:block}.programme-head h2{font-size:52px}.programme-head p{margin-top:24px;font-size:13px}.programme-content{grid-template-columns:1fr;gap:24px;margin-top:28px}.programme-tabs{grid-template-columns:1fr 1fr;gap:0 20px;display:grid}.programme-tabs button{gap:9px;min-height:54px;padding:12px 0}.programme-tabs .tab-name{font-size:11px}.programme-tabs .tab-number{font-size:8px}.programme-tabs svg{width:12px}.programme-tabs button:nth-last-child(2){border-bottom:1px solid var(--border)}.programme-detail{min-height:350px;padding:28px}.programme-detail h3{font-size:36px}.programme-detail p{font-size:13px}.programme-detail .text-link{font-size:11px}.brief{padding-top:0;padding-bottom:64px}.brief-intro{display:block}.brief-intro h2{font-size:52px}.brief-intro p{margin-top:24px;font-size:13px}.brief-intro .status-note{margin-top:20px}.brief-grid{gap:28px}.brief-items summary{gap:14px;min-height:68px;font-size:12px}.brief-answer{padding:0 0 24px 28px}.brief-answer p{font-size:12px}.answer-source{font-size:8px}.source-note{margin-top:32px;font-size:9px}.closing{padding-top:48px;padding-bottom:64px}.closing>.eyebrow{font-size:9px}.closing h2{font-size:48px;line-height:1.05}.closing .primary-action{padding:14px 20px;font-size:11px}.closing-watermark{font-size:370px;bottom:-74px;right:-24px}.site-footer{padding:24px var(--page-gutter)}.footer-brand{font-size:22px}.site-footer>p{text-align:right;max-width:110px;font-size:8px;line-height:1.6}.explorer-header{gap:16px;height:72px;padding:0 16px}.explorer-header h2{font-size:26px}.explorer-header .eyebrow{font-size:8px}.close-explorer{gap:8px;min-height:44px;padding:0;font-size:10px}.close-explorer svg{width:18px}.explorer-body{overscroll-behavior:contain;flex-direction:column;height:calc(100% - 72px);display:flex;overflow-y:auto}.explorer-viewport{border-bottom:1px solid var(--border);flex:none;height:49dvh;min-height:300px;overflow:hidden}.inspector{border-left:0;width:100%;padding:24px;overflow:visible}.precinct-buttons{grid-template-columns:repeat(6,1fr)}.precinct-buttons button{min-height:44px}.precinct-detail{min-height:0;margin-bottom:24px}.inspector-section{padding:20px 0}.layer-controls button{min-height:44px;padding:0 12px}.segmented button{min-height:40px}.explorer-toolbar{top:12px}.explorer-help{bottom:6px;left:8px;right:8px}.explorer-help span{padding:4px;font-size:8px}.explorer-help span:last-child{display:none}.explorer-toolbar .tool-button{min-height:50px}.explorer-toolbar>.icon-button{height:50px}.range-ends,.control-help,.inspector-footnote{font-size:11px}.field-heading label,.control-label{font-size:14px}.export-button,.precinct-detail>p{font-size:12px}.precinct-detail .precinct-facts{font-size:11px}.inspector input[type=range]{height:36px}.model-tooltip{padding:8px 12px;font-size:10px}.toast{font-size:11px;bottom:16px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.js-reveals .reveal{opacity:1;transform:none}.loading-dial{border-color:var(--accent)}}@media print{.site-header,.hero-bottom,.primary-action,.site-footer,.hero-caption,.hero-side-note,.scroll-cue,.text-link,dialog,.toast,.programme-tabs{display:none!important}.hero{height:600px;min-height:0}.hero-heading{top:40px}.hero h1{font-size:80px}#hero-model-slot{inset:50px 0 0}.hero-tagline{font-size:14px}.section-wrap{break-inside:avoid;padding:32px!important}.reveal{opacity:1!important;transform:none!important}.brief-items details,.brief-items details>*,.programme-content{display:block}.programme-detail{min-height:280px}.closing{display:none}}@media (width<=560px){.hero{height:100svh;min-height:800px}.hero-heading{top:126px}h1{font-size:92px}.hero-heading .eyebrow{margin-bottom:22px}.hero-tagline{margin-top:20px}.hero-heading .primary-action{margin-top:18px}#hero-model-slot{inset:370px -17% 80px}.hero-caption{top:74%;right:5%}.hero-bottom{bottom:18px}.hero-view-controls{order:0}.scroll-cue{flex:none;width:100%}.hero-caption{display:none}}@media (hover:hover) and (pointer:fine){.primary-action:active,.export-button:active{transform:translateY(0)scale(.98)}}
