@font-face{font-family:Manrope;src:url('/assets/manrope.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
@font-face{font-family:Plex;src:url('/assets/mono.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
:root{color-scheme:dark;--bg:#111111;--panel:#181818;--line:#333333;--text:#f4f4f0;--muted:#a2a2a0;--soft:#747472;--font:Manrope,Arial,sans-serif;--mono:Plex,monospace;--gutter:clamp(22px,4.1vw,72px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.5}img{display:block;max-width:100%}button{color:inherit}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid white;outline-offset:5px}::selection{background:#efefed;color:#111}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:450}button{border:0}button,a{transition:background .2s,color .2s,opacity .2s}a:hover{color:#fff}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}.skip-link{position:fixed;top:-100px;left:20px;background:white;color:black;padding:12px 20px;z-index:100}.skip-link:focus{top:12px}
.site-header{height:112px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:30px}.wordmark{display:flex;align-items:center;gap:17px;font-weight:650;letter-spacing:.12em;font-size:14px;line-height:1.45}.brand-symbol{font-size:31px;letter-spacing:-.12em;font-weight:450;margin-right:5px}.wordmark-sub{display:block;font-family:var(--mono);color:var(--muted);font-size:8px;letter-spacing:.1em;margin-top:4px}.site-header nav{display:flex;gap:35px;align-items:center;font-size:12px}.site-header nav>a{padding:14px 0;position:relative;color:#b5b5b3}.site-header nav>a:hover,.site-header nav>a[aria-current]{color:white}.site-header nav>a[aria-current]::after{content:'';position:absolute;bottom:6px;left:0;width:4px;height:4px;border-radius:50%;background:white}.site-header nav>.nav-access{margin-left:27px;border:1px solid #484848;padding:10px 15px;display:flex;gap:24px;color:var(--text)}.nav-access:hover{background:#262626}.menu-toggle{display:none;background:none}
.eyebrow,.section-index{font-family:var(--mono);font-size:10px;font-weight:400;letter-spacing:.1em;line-height:1.6;text-transform:uppercase;color:var(--muted)}.hero{padding:0 var(--gutter)}.hero-topline{padding-top:30px;display:flex;justify-content:space-between;gap:20px;align-items:center}.hero-topline .eyebrow{font-size:9px}.location{font-family:var(--mono);font-size:9px;display:flex;align-items:center;gap:10px;color:var(--muted);white-space:nowrap}.location time{margin-left:12px;min-width:38px}.status-dot{width:5px;height:5px;border-radius:50%;background:#dededc;box-shadow:0 0 10px #fff3}.hero-body{display:grid;grid-template-columns:1.03fr 1fr;align-items:center;min-height:640px;gap:10px}.hero-copy{position:relative;z-index:1;padding:40px 0 70px}.hero h1{font-size:clamp(60px,6.6vw,110px);line-height:1.065;letter-spacing:-.067em;font-weight:400}.muted-word{color:#858583}.hero-copy>p{font-size:14px;line-height:1.9;color:#aaa;max-width:330px;margin-top:30px}.text-link{display:inline-flex;align-items:center;gap:30px;font-size:12px;min-height:44px;color:var(--text)}.text-link span{font-size:20px;transition:transform .2s}.text-link:hover span{transform:translate(3px,-3px)}.hero-copy>.text-link{margin-top:24px;border-bottom:1px solid #6b6b68;padding-bottom:8px}.generative{height:530px;position:relative;align-self:center;background:radial-gradient(ellipse at 48% 48%,#ffffff04,transparent 65%)}.generative canvas{width:100%;height:100%;display:block;touch-action:pan-y}.canvas-coordinates{position:absolute;top:36px;right:0;font:9px/1.8 var(--mono);color:var(--soft);pointer-events:none}.canvas-cross{position:absolute;font:18px var(--mono);color:#777;pointer-events:none}.cross-one{top:48px;left:0}.cross-two{right:0;bottom:91px}.canvas-controls{position:absolute;bottom:42px;left:0;right:0;display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px solid var(--line);padding-top:9px}.canvas-controls .eyebrow{font-size:8px;letter-spacing:.08em}.canvas-controls>div{display:flex;align-items:center}.canvas-controls button{background:none;font:9px var(--mono);padding:10px;color:var(--muted);min-height:40px}.canvas-controls .form-reset{font-size:18px;padding-right:0;width:32px}.form-slider{position:absolute;bottom:15px;left:0;right:0;display:flex;align-items:center;gap:20px;font:8px var(--mono);color:var(--soft);letter-spacing:.08em;margin:0}.form-slider input{accent-color:#ddd;width:100%;height:18px;padding:0;background:none;border:0;margin:0}.canvas-fallback{position:absolute;top:40%;left:10%;color:var(--muted)}.hero-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:20px 0 23px;gap:20px;color:var(--soft);font:8px var(--mono);letter-spacing:.1em}.scroll-hint{display:flex;align-items:center;gap:28px}.scroll-hint span{font-size:16px;color:var(--text)}
.section-wrap{padding-left:var(--gutter);padding-right:var(--gutter)}.work-section{padding-top:98px;padding-bottom:92px;border-top:1px solid var(--line)}.section-heading{display:grid;grid-template-columns:1fr auto;align-items:end;gap:20px;margin-bottom:36px}.section-heading .section-index{grid-column:1/-1;margin-bottom:5px}.section-heading h2,.about-strip h2{font-size:clamp(28px,3.1vw,49px);letter-spacing:-.045em;line-height:1.25}.section-heading>.text-link{margin-bottom:0}.filter-bar{border-top:1px solid var(--line);padding:16px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.filter-options{display:flex;gap:22px;flex-wrap:wrap}.filter-options button,.filter-options a{font-size:11px;color:#9b9b98;background:none;min-height:44px;padding:7px 0}.filter-options [aria-pressed=true],.filter-options [aria-current]{color:#f7f7f5}.filter-options [aria-pressed=true]::before,.filter-options [aria-current]::before{content:'';display:inline-block;width:5px;height:5px;background:#f7f7f5;border-radius:50%;margin-right:9px;vertical-align:2px}.filter-options button span{font:8px var(--mono);vertical-align:super;margin-left:6px;color:var(--soft)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:54px 28px}.project-card{min-width:0}.project-image{display:block;aspect-ratio:1.46;background:#202020;position:relative;overflow:hidden;border:1px solid #ffffff06}.project-image img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);transition:transform .6s ease,filter .6s ease;opacity:.88}.project-image:hover img{transform:scale(1.035);opacity:1}.image-label{position:absolute;top:18px;left:18px;font:8px var(--mono);letter-spacing:.06em;padding:6px 9px;background:#111c;color:#ddd}.image-arrow{position:absolute;right:18px;bottom:18px;background:#111a;border:1px solid #aaa7;width:36px;height:36px;display:grid;place-items:center;font-size:20px;backdrop-filter:blur(5px);transition:background .2s}.project-image:hover .image-arrow{background:#ededeb;color:#111}.project-caption{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-top:20px}.project-caption .eyebrow{font-size:8px;margin-bottom:6px}.project-caption h3{font-size:25px;letter-spacing:-.035em;line-height:1.35}.project-year{font:9px var(--mono);color:var(--muted);white-space:nowrap;margin-bottom:5px}.project-summary{color:var(--muted);font-size:12px;line-height:1.8;max-width:92%;margin-top:13px}.image-placeholder{width:100%;height:100%;display:grid;place-items:center;font-size:32px;letter-spacing:-.04em;background:linear-gradient(135deg,transparent 49.8%,#7773 50%,transparent 50.2%),#202020}.about-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-top:70px;padding-bottom:75px;display:grid;grid-template-columns:1fr 2fr 1fr;gap:42px}.about-strip .section-index{padding-top:8px}.about-strip p{color:var(--muted);font-size:13px;line-height:1.9;margin:24px 0 10px;max-width:400px}.discipline-list{align-self:end;font-size:11px;line-height:2.6;color:var(--muted);display:flex;flex-direction:column;border-left:1px solid var(--line);padding-left:25px}.research-section{padding-top:88px;padding-bottom:85px}.publication-list{border-top:1px solid var(--line)}.publication{display:grid;grid-template-columns:90px 1fr 45px;gap:26px;padding:27px 0;border-bottom:1px solid var(--line);align-items:start}.publication-year{font:11px var(--mono);color:var(--muted);padding-top:5px}.publication h3{font-size:17px;line-height:1.5;max-width:800px;letter-spacing:-.02em}.publication p{font:9px/1.7 var(--mono);color:var(--muted);margin-top:8px}.publication p.authors{font:12px/1.8 var(--font)}.publication-arrow{font-size:24px;justify-self:end;color:#888}.publication:hover .publication-arrow{color:white}.elsewhere{padding-top:55px;padding-bottom:70px;border-top:1px solid var(--line)}.practice-links{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:35px}.practice-links a{display:block;border-bottom:1px solid var(--line);padding-bottom:18px}.practice-links a>span:last-child{display:flex;align-items:center;justify-content:space-between;font-size:30px;letter-spacing:-.035em;margin-top:8px}.practice-links b{font-size:25px;font-weight:400}
.site-footer{padding:68px var(--gutter) 25px;background:#e4e4df;color:#171717}.site-footer .eyebrow{color:#62625f}.footer-contact{font-size:clamp(30px,4.6vw,76px);line-height:1.3;letter-spacing:-.05em;display:flex;align-items:center;justify-content:space-between;margin:17px 0 61px;gap:25px}.footer-contact:hover{color:#555}.footer-contact span{font-size:.8em}.footer-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #aeaeaa;padding-top:23px;gap:24px;font:9px/1.6 var(--mono);color:#585855}.footer-bottom>div{display:flex;gap:23px}.footer-bottom a:hover{color:#111}
.page-content{padding-top:47px;padding-bottom:100px;min-height:65vh}.page-intro{padding-top:35px;margin-bottom:62px}.page-intro h1,.message-page h1{font-size:clamp(45px,6vw,88px);line-height:1.13;letter-spacing:-.055em;margin:24px 0}.page-intro>p:last-of-type{font-size:15px;color:var(--muted);max-width:530px;line-height:1.9}.page-intro>.button{margin-top:25px}.back-link{color:var(--muted)}.project-intro{max-width:1000px}.project-intro>p:last-of-type{font-size:20px;max-width:700px}.project-cover{margin:0}.project-cover img{width:100%;height:auto;max-height:730px;object-fit:cover;filter:grayscale(1);background:#181818}.project-cover figcaption{font:10px/1.8 var(--mono);color:var(--muted);padding:14px 0}.project-details{display:grid;grid-template-columns:1fr 2fr;gap:10%;margin-top:65px}.project-details dl{margin:0}.project-details dt{font:10px var(--mono);color:var(--muted);margin-bottom:12px}.project-details dd{margin:0 0 27px;font-size:13px;line-height:1.9}.prose h2{font-size:28px;letter-spacing:-.035em;margin:0 0 24px}.prose p{color:var(--muted);font-size:15px;line-height:1.95;margin:0 0 24px}.prose p.lead{font-size:23px;line-height:1.7;color:#e0e0dd}.prose p+h2{margin-top:42px}.prose a:not(.button){text-decoration:underline;text-underline-offset:5px}.button{background:var(--text);color:#171717;min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:12px 20px;font-size:12px;line-height:1.5;border:1px solid var(--text);font-weight:600}.button:hover{background:#c4c4c0;color:#111;border-color:#c4c4c0}.button.secondary{background:none;color:var(--text);border-color:#5a5a57}.button.secondary:hover{background:#292929}.button-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px}.research-end{padding-top:40px}.research-end>p{color:var(--muted);margin-bottom:24px;font-size:13px}.about-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:10%;align-items:start}.about-statement{border:1px solid var(--line);aspect-ratio:1;background:linear-gradient(90deg,transparent 49.85%,#ffffff0b 50%,transparent 50.15%),linear-gradient(0deg,transparent 49.85%,#ffffff0b 50%,transparent 50.15%),#171717;display:flex;align-items:center;justify-content:center;flex-direction:column;position:relative}.oversized-mark{font-size:clamp(100px,17vw,240px);letter-spacing:-.14em;padding-right:.1em;font-weight:300;line-height:1.1;color:#b6b6b0}.about-statement .eyebrow{position:absolute;bottom:22px;left:22px;font-size:8px}.about-facts{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;margin-top:80px}.about-facts>div{border-top:1px solid var(--line);padding-top:23px}.about-facts h3{font-size:23px;margin:13px 0 8px}.about-facts p:not(.eyebrow){font-size:12px;color:var(--muted);margin-bottom:15px}.about-facts a{font-size:12px;display:inline-flex;align-items:center;min-height:44px}.source-note{font:10px/1.9 var(--mono);color:var(--muted);margin-top:55px}.source-note a{color:#ddd;text-decoration:underline;text-underline-offset:4px}.links-page{max-width:1080px;margin:0 auto}.link-tree{border-top:1px solid var(--line)}.link-tree>a{display:grid;grid-template-columns:60px 1fr 40px;align-items:center;gap:22px;border-bottom:1px solid var(--line);padding:29px 0;transition:padding .3s}.link-tree>a:hover{padding-left:12px;padding-right:12px;background:#ffffff03}.link-number{font:10px var(--mono);color:var(--soft)}.link-tree strong{display:block;font-size:27px;letter-spacing:-.035em;font-weight:450}.link-tree small{display:block;color:var(--muted);font-size:11px;margin-top:6px}.link-tree>a>span:last-child{font-size:28px;text-align:right}.narrow{max-width:880px;margin-left:auto;margin-right:auto}.message-page{padding-top:120px}.message-page>p:not(.eyebrow){margin:25px 0;color:var(--muted)}
.auth-page{min-height:650px;display:grid;grid-template-columns:1.1fr 1fr;padding:80px var(--gutter);gap:10%}.auth-aside{position:relative}.auth-aside h1{font-size:clamp(35px,4.2vw,65px);letter-spacing:-.05em;line-height:1.2;margin:33px 0 20px}.auth-aside>p:not(.eyebrow){font-size:14px;color:var(--muted)}.auth-geometry{font-size:120px;font-weight:200;letter-spacing:-.1em;color:#555;line-height:2}.auth-form{max-width:420px;padding-top:5px;width:100%}.auth-form h2{font-size:35px;letter-spacing:-.04em;margin:24px 0 10px}.auth-form>p:not(.eyebrow){color:var(--muted);font-size:13px;margin-bottom:27px}label{display:block;font-size:12px;margin-bottom:22px;line-height:1.8}input:not([type=checkbox]):not([type=range]),textarea,select{display:block;width:100%;margin-top:9px;padding:12px 13px;background:#191919;color:#eee;border:1px solid #454545;border-radius:0;font-size:14px;min-height:47px;line-height:1.6}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#81817d}input[type=file]{font-size:11px!important}input[type=file]::file-selector-button{background:#333;border:0;color:#eee;padding:8px;margin-right:10px;cursor:pointer}.auth-form .button{width:100%;margin-top:4px;justify-content:space-between}.form-help,.field-hint{font-size:11px!important;color:var(--muted);font-weight:400;line-height:1.8}.field-hint{display:block;margin-top:5px}.form-help{margin-top:24px}.form-help a{text-decoration:underline;text-underline-offset:4px;display:inline-flex;align-items:center;min-height:44px}.form-message{border:1px solid #b5b5ae;padding:16px;background:#2a2a28;font-size:13px;margin:20px 0}.workspace-nav{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:10px 0 20px;gap:20px}.workspace-nav>div{display:flex;gap:25px;flex-wrap:wrap}.workspace-nav a,.text-button{font-size:11px;background:none;min-height:44px;display:inline-flex;align-items:center;padding:0;color:var(--muted)}.workspace-nav a:hover,.text-button:hover{color:white}.stack-form{max-width:580px}.empty-state{border:1px solid var(--line);padding:40px}.empty-state h2{font-size:26px;letter-spacing:-.03em}.empty-state p{color:var(--muted);font-size:13px;margin:12px 0}.admin-projects{border-top:1px solid var(--line)}.admin-projects article{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:24px 0;border-bottom:1px solid var(--line)}.admin-projects h2{font-size:25px;margin-top:7px;letter-spacing:-.03em}.editor-form{display:grid;grid-template-columns:1.6fr 1fr;gap:65px}.editor-panel{padding:25px;border:1px solid var(--line);margin:0 0 25px;min-width:0}.editor-panel h2,.editor-panel legend{font-size:19px;letter-spacing:-.03em;margin-bottom:20px}.editor-panel label:last-child{margin-bottom:0}.editor-panel .field-hint{margin-bottom:20px}.editor-panel legend{margin:0;padding:0 8px}.checkbox-label{display:flex;align-items:center;gap:12px;min-height:34px;margin:12px 0}.checkbox-label input{width:17px;height:17px;accent-color:white;flex-shrink:0}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.editor-sidebar>.button{width:100%;margin-bottom:12px}.editor-sidebar>.text-link{width:100%;justify-content:center}.client-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:55px;align-items:start}.client-list article{border-top:1px solid var(--line);padding:23px 0}.client-list h2{font-size:25px;letter-spacing:-.035em;margin:5px 0}.client-list p:not(.eyebrow){font-size:12px;color:var(--muted);margin-bottom:20px}.credential-panel{padding:28px;border:1px solid #aaa;background:#222;margin-bottom:40px;overflow-wrap:anywhere}.credential-panel h2{margin-bottom:12px}.credential-panel p,.credential-panel dl{font-size:13px;color:var(--muted)}.credential-panel dt{margin-top:12px}.credential-panel dd{margin-left:0;color:white}.credential-panel code{font-family:var(--mono);user-select:all}
@media(min-width:1600px){.hero-body{min-height:710px}.generative{height:620px}.project-image{aspect-ratio:1.6}body{max-width:2000px;margin:0 auto}}
@media(max-width:1050px){.hero-body{min-height:590px}.generative{height:460px}.hero h1{font-size:clamp(56px,7.4vw,80px)}.site-header nav{gap:23px}.site-header nav>.nav-access{margin-left:0}.about-strip{grid-template-columns:1fr 2fr}.discipline-list{grid-column:2}.hero-copy>p{max-width:300px}.about-layout{gap:6%}.editor-form{gap:30px}.client-layout{gap:30px}.project-year{font-size:8px}.footer-bottom>span:nth-child(2){display:none}}
@media(max-width:760px){:root{--gutter:24px}.site-header{height:88px}.wordmark{font-size:12px;gap:14px}.wordmark-sub{font-size:7px}.brand-symbol{font-size:29px}.menu-toggle{display:flex;gap:25px;align-items:center;font-size:12px;padding:12px 0;min-height:44px}.menu-toggle span{font-size:23px}.site-header nav{display:none;position:absolute;top:87px;left:0;right:0;padding:22px var(--gutter) 30px;background:#191919;z-index:20;border-bottom:1px solid #555;flex-direction:column;align-items:stretch;gap:0}.site-header nav[data-open=true]{display:flex}.site-header nav>a{font-size:20px;padding:14px 0}.site-header nav>.nav-access{font-size:13px;padding:13px;margin-top:18px;justify-content:space-between}.site-header nav>a[aria-current]::after{bottom:7px}.hero-topline{padding-top:26px;align-items:start}.hero-topline .eyebrow{max-width:230px;line-height:1.9;font-size:8px}.location{font-size:8px;gap:7px}.location time{display:none}.hero-body{display:flex;flex-direction:column;gap:0;min-height:0;align-items:stretch}.hero-copy{padding:48px 0 15px}.hero h1{font-size:clamp(57px,11vw,83px);letter-spacing:-.065em}.hero-copy>p{max-width:340px;margin-top:25px;font-size:13px}.hero-copy>.text-link{margin-top:16px;font-size:12px}.generative{width:100%;height:390px;margin-top:8px}.canvas-coordinates{top:12px}.cross-one{top:22px}.canvas-controls{bottom:38px}.form-slider{bottom:11px}.hero-bottom{padding:17px 0;font-size:7px;line-height:1.7;gap:28px}.hero-bottom>span:first-child{max-width:175px}.scroll-hint{gap:14px;white-space:nowrap}.work-section{padding-top:62px;padding-bottom:60px}.section-heading{gap:18px;margin-bottom:28px}.section-heading .section-index{margin-bottom:3px}.section-heading h2{font-size:30px}.section-heading>.text-link{gap:12px;font-size:10px;min-height:34px}.section-index{font-size:9px}.filter-bar{padding:11px 0;margin-bottom:15px}.filter-options{gap:20px}.filter-options button,.filter-options a{font-size:10px}.desktop-only{display:none}.project-grid{gap:37px 18px}.project-image{aspect-ratio:1.15}.image-label{font-size:6px;top:10px;left:10px;padding:5px 6px}.image-arrow{width:28px;height:28px;font-size:17px;bottom:10px;right:10px}.project-caption{align-items:start;flex-direction:column;gap:6px;margin-top:14px}.project-caption h3{font-size:21px}.project-caption .eyebrow{font-size:7px;line-height:1.8}.project-year{margin-bottom:0;font-size:8px}.project-summary{font-size:11px;margin-top:9px;max-width:100%}.about-strip{padding-top:40px;padding-bottom:44px;grid-template-columns:1fr;gap:25px}.about-strip h2{font-size:33px}.about-strip p{margin-top:20px}.discipline-list{grid-column:auto;display:grid;grid-template-columns:1fr 1fr;border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:20px;line-height:2.5}.research-section{padding-top:54px;padding-bottom:52px}.research-section .section-heading{grid-template-columns:1fr}.research-section .section-heading>.text-link{justify-self:start}.publication{grid-template-columns:44px 1fr 18px;gap:15px;padding:23px 0}.publication h3{font-size:14px}.publication-year{font-size:9px;padding-top:3px}.publication p{font-size:8px}.publication-arrow{font-size:20px}.elsewhere{padding-top:38px;padding-bottom:45px}.practice-links{grid-template-columns:1fr;gap:30px;margin-top:25px}.practice-links a>span:last-child{font-size:29px}.site-footer{padding-top:44px}.footer-contact{font-size:36px;margin-bottom:42px;align-items:start}.footer-bottom{flex-direction:column;align-items:start;gap:18px;font-size:9px}.footer-bottom>div{width:100%;justify-content:space-between;gap:15px}.page-content{padding-top:26px;padding-bottom:65px}.page-intro{padding-top:25px;margin-bottom:38px}.page-intro h1,.message-page h1{font-size:clamp(42px,9.5vw,66px);overflow-wrap:anywhere;margin:20px 0}.page-intro>p:last-of-type{font-size:13px}.project-intro>p:last-of-type{font-size:17px}.project-details{grid-template-columns:1fr;gap:25px;margin-top:32px}.project-details aside dl{display:grid;grid-template-columns:90px 1fr;gap:14px}.project-details dt{margin-top:5px}.project-details dd{margin-bottom:7px}.project-cover figcaption{font-size:8px}.prose p{font-size:14px}.prose h2{font-size:25px}.prose p.lead{font-size:19px}.about-layout{grid-template-columns:1fr;gap:33px}.about-statement{aspect-ratio:1.5}.oversized-mark{font-size:150px}.about-facts{grid-template-columns:1fr;gap:25px;margin-top:45px}.source-note{font-size:9px}.link-tree>a{grid-template-columns:25px 1fr 25px;gap:14px;padding:23px 0}.link-tree strong{font-size:24px}.link-tree small{font-size:10px}.link-tree>a>span:last-child{font-size:25px}.auth-page{grid-template-columns:1fr;gap:40px;padding-top:44px;padding-bottom:60px}.auth-aside h1{font-size:42px;margin-top:23px}.auth-aside>p:not(.eyebrow){font-size:13px}.auth-geometry{display:none}.auth-form{max-width:none;border-top:1px solid var(--line);padding-top:30px}.auth-form h2{font-size:29px;margin-top:16px}input:not([type=checkbox]):not([type=range]),textarea,select{font-size:16px}.workspace-nav{gap:15px;align-items:start}.workspace-nav>div{gap:5px 20px}.workspace-nav a,.text-button{font-size:10px}.editor-form{grid-template-columns:1fr;gap:18px}.editor-panel{padding:21px}.field-pair{grid-template-columns:1fr;gap:0}.client-layout{grid-template-columns:1fr;gap:25px}.client-layout>.stack-form{max-width:none}.admin-projects article{align-items:start;gap:15px}.admin-projects h2{font-size:21px}.admin-projects .button-row{gap:10px;flex-wrap:nowrap}.admin-projects .text-link{font-size:10px}.admin-projects .button{padding:10px 15px}.admin-projects .eyebrow{font-size:8px}.empty-state{padding:28px}.credential-panel{padding:22px}}
@media(max-width:420px){.project-grid{grid-template-columns:1fr}.project-image{aspect-ratio:1.35}.project-caption{flex-direction:row;align-items:end;gap:12px}.project-caption h3{font-size:25px}.project-caption .eyebrow{font-size:8px}.project-summary{font-size:12px}.image-label{font-size:7px;top:14px;left:14px}.hero h1{font-size:60px}.generative{height:355px}.filter-options{gap:15px}.filter-options button,.filter-options a{font-size:9px}.footer-contact{font-size:31px}.section-heading h2{font-size:28px}.admin-projects article{flex-direction:column;gap:12px}.admin-projects .button-row{align-self:stretch;justify-content:space-between}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.project-image:hover img{transform:none}}

/* Morphogenesis study */
.hero-body:has(.morphogenesis){min-height:730px}.morphogenesis{height:650px;display:flex;flex-direction:column;border-left:1px solid #ffffff12;padding-left:26px}.morph-stage{height:390px;min-height:0;position:relative}.morphogenesis .morph-stage canvas{width:100%;height:100%;display:block;touch-action:pan-y}.morph-stage-label{position:absolute;right:5px;top:15px;font-size:8px}.morph-dashboard{border-top:1px solid var(--line);padding-top:12px;flex:1;min-height:0}.morph-head,.morph-head>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.morph-head button{background:none;color:#aaa;font:9px var(--mono);padding:8px;min-height:36px}.morph-head button:hover{color:white}.morph-bottom{display:grid;grid-template-columns:minmax(0,1fr) 155px;gap:18px;margin-top:13px}.morph-sliders label{display:grid;grid-template-columns:79px minmax(0,1fr) 34px;gap:8px;align-items:center;margin:0 0 7px;color:#aaa;font:9px var(--mono);text-transform:uppercase;letter-spacing:.05em}.morph-sliders input{width:100%;margin:0;accent-color:#e6e6e3;height:18px}.morph-sliders output{text-align:right;color:#eee}.design-space{position:relative;border-left:1px solid #ffffff18;padding-left:10px;min-width:0}.morphogenesis .design-space canvas{width:100%;height:133px;display:block}.design-space .eyebrow{display:block;text-align:center;font-size:8px;line-height:1.5}.design-space [data-space-location]{font-size:6px;letter-spacing:0;white-space:nowrap}.canvas-fallback{top:25%}

/* Editorial pages and enquiry flow */
.inquiry-columns{display:grid;grid-template-columns:1fr 1fr;gap:6%}.inquiry-columns>section>h2{font-size:28px;letter-spacing:-.04em;margin-bottom:18px}.inquiry-columns>section>p{color:var(--muted);font-size:13px}.inquiry-item{border-top:1px solid var(--line);padding:22px 0}.inquiry-item h3{font-size:23px;letter-spacing:-.03em;margin:8px 0}.inquiry-item>a{font-size:12px;display:inline-flex;min-height:30px;align-items:center}.inquiry-item>p:not(.eyebrow){font-size:12px;color:var(--muted);margin:12px 0;white-space:pre-wrap;overflow-wrap:anywhere}.inquiry-item form{margin-top:10px}
.schedule-editor{margin-top:28px}.schedule-editor h2{font-size:21px}.schedule-editor .form-help{margin:8px 0 20px}.schedule-editor fieldset{border:0;padding:0;margin:0 0 20px}.schedule-editor legend{font-size:12px;margin-bottom:10px}.schedule-days{display:flex;gap:10px;flex-wrap:wrap}.schedule-days label{margin:0;display:flex;gap:7px;align-items:center;min-height:44px;padding:6px 11px;border:1px solid #555;cursor:pointer}.schedule-days input{accent-color:white}.schedule-editor>.button{margin-top:8px}
.home-ideas{padding-top:75px;padding-bottom:85px;border-top:1px solid var(--line)}.home-ideas .ideas-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.home-ideas .idea-card{padding:26px 22px 25px 0}.home-ideas .idea-card:nth-child(even){padding-left:0;border-left:0}.home-ideas .idea-card:not(:first-child){padding-left:22px;border-left:1px solid var(--line)}.home-ideas .idea-card h2{font-size:clamp(23px,2.2vw,31px)}
.ideas-toolbar{display:flex;align-items:end;justify-content:space-between;border-top:1px solid var(--line);padding:24px 0;gap:20px}.search-label{width:min(400px,100%);margin:0;color:var(--muted);font:10px var(--mono);text-transform:uppercase;letter-spacing:.08em}.search-label input{font-family:var(--font);text-transform:none;letter-spacing:0}.ideas-grid,.partner-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line)}.idea-card,.partner-card{padding:33px 28px 45px 0;min-width:0;border-bottom:1px solid var(--line)}.idea-card:nth-child(even),.partner-card:nth-child(even){padding-left:28px;border-left:1px solid var(--line)}.idea-card>div{display:flex;justify-content:space-between;color:#bbb}.idea-card h2,.partner-card h2{font-size:clamp(25px,2.6vw,38px);line-height:1.25;letter-spacing:-.04em;margin:20px 0 17px}.idea-card>p,.partner-card>p:not(.eyebrow){color:var(--muted);font-size:13px;line-height:1.8;max-width:620px}.idea-card .text-link,.partner-card>a{margin-top:21px;font-size:11px;display:inline-flex;align-items:center;min-height:44px}.empty-results{padding:30px 0;color:var(--muted)}.article-intro{max-width:1000px}.article-byline{font:10px var(--mono);color:var(--muted);margin-top:25px;letter-spacing:.08em}.article-byline span{margin:0 12px}.article-layout{display:grid;grid-template-columns:210px minmax(0,760px);gap:9%;align-items:start}.article-aside{border-top:1px solid var(--line);padding-top:20px;color:var(--muted);font-size:11px;position:sticky;top:30px}.article-aside p{margin-bottom:15px}.article-aside a{min-height:44px;display:inline-flex;align-items:center;color:#eee}.article-body h2{margin-top:36px}.article-body blockquote{margin:0 0 40px;padding:28px 0 28px 24px;border-left:1px solid #ddd}.article-body blockquote p{font-size:24px;line-height:1.5;color:#eee;margin:0}.article-body blockquote cite{display:block;color:var(--muted);font:10px var(--mono);font-style:normal;margin-top:15px}.references{border-top:1px solid var(--line);margin-top:54px;padding-top:24px}.references ul{padding-left:18px;color:#ddd;font-size:12px;line-height:2}.references>p:last-child{font-size:11px}.layer-study{margin:38px 0 45px;padding:16px;border:1px solid #6a6a67;background:#151515}.layer-study-top{display:flex;justify-content:space-between;gap:15px;margin-bottom:13px}.layer-study-top .eyebrow{font-size:8px}.layer-study canvas{display:block;width:100%;height:370px;touch-action:pan-y;border:1px solid #3b3b39}.layer-controls{display:grid;grid-template-columns:repeat(2,1fr);gap:3px 18px;margin-top:16px}.layer-controls label{font:10px var(--mono);text-transform:uppercase;color:#ddd;margin:0;display:flex;align-items:center;gap:9px;min-height:36px}.layer-controls input{accent-color:#eee;width:15px;height:15px}.layer-depth{display:flex;align-items:end;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:15px;padding-top:14px}.layer-depth label{font:10px var(--mono);color:#ddd;margin:0;min-width:170px}.layer-depth input{display:block;width:100%;accent-color:#eee;margin-top:8px}.layer-depth output{font:9px var(--mono);color:#aaa;text-align:right}.industrial-intro{border-top:1px solid var(--line);padding:28px 0;display:flex;align-items:end;justify-content:space-between;gap:30px}.industrial-intro>p{font-size:19px;line-height:1.65;max-width:700px}.partner-card .eyebrow{font-size:9px}.partner-card>a{color:#eee}.publication-links{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:10px}.publication-links a{font:9px var(--mono);color:#d0d0cc;text-decoration:underline;text-underline-offset:4px;min-height:24px}.footer-actions{display:flex;gap:22px;flex-wrap:wrap;margin:-35px 0 40px;font-size:12px}.footer-actions a{text-decoration:underline;text-underline-offset:5px}.contact-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);gap:10%;align-items:start}.contact-side{border-top:1px solid var(--line)}.contact-side>div{padding:26px 0;border-bottom:1px solid var(--line)}.contact-side h2{font-size:32px;letter-spacing:-.04em;margin:12px 0}.contact-side p{color:var(--muted);font-size:13px;line-height:1.8;margin-bottom:17px}.contact-side p a{color:#eee}.trap{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.book-layout{display:grid;grid-template-columns:minmax(250px,1fr) minmax(280px,1fr);gap:8%;align-items:start}.slot-list{max-height:670px;overflow:auto;padding-right:12px;margin-top:17px}.slot-list h2{font:11px var(--mono);color:var(--muted);margin:21px 0 7px}.slot{display:block;margin:0 0 8px;cursor:pointer}.slot input{position:absolute;opacity:0;width:1px;height:1px}.slot span{display:block;padding:13px 15px;border:1px solid #51514f;font:12px var(--mono);transition:background .2s}.slot:hover span,.slot input:checked+span{background:#e7e7e3;color:#111;border-color:#e7e7e3}.slot input:focus-visible+span{outline:2px solid white;outline-offset:3px}.booking-fields .editor-panel{margin-top:17px}.booking-fields .button{width:100%}
@media(max-width:1100px){.site-header nav{gap:17px}.site-header nav>.nav-access{padding:9px}.morphogenesis{height:610px;padding-left:12px}.morph-stage{height:355px}.morph-bottom{grid-template-columns:minmax(0,1fr) 118px;gap:8px}.morph-sliders label{grid-template-columns:64px minmax(0,1fr) 29px;font-size:8px}.design-space [data-space-location]{font-size:5px}}
@media(max-width:900px){.site-header{height:88px}.menu-toggle{display:flex;gap:25px;align-items:center;font-size:12px;padding:12px 0;min-height:44px}.menu-toggle span{font-size:23px}.site-header nav{display:none;position:absolute;top:87px;left:0;right:0;padding:22px var(--gutter) 30px;background:#191919;z-index:20;border-bottom:1px solid #555;flex-direction:column;align-items:stretch;gap:0}.site-header nav[data-open=true]{display:flex}.site-header nav>a{font-size:20px;padding:14px 0}.site-header nav>.nav-access{font-size:13px;padding:13px;margin-top:18px;justify-content:space-between}.site-header nav>a[aria-current]::after{bottom:7px}}
@media(max-width:760px){.hero-body:has(.morphogenesis){min-height:0}.morphogenesis{height:560px;margin:12px 0 20px;padding:0;border:0;border-top:1px solid #ffffff18}.morph-stage{height:300px;flex:0 0 300px}.morph-bottom{grid-template-columns:minmax(0,1fr) 125px;gap:7px}.morph-sliders label{grid-template-columns:62px minmax(0,1fr) 30px;margin-bottom:10px}.morphogenesis .design-space canvas{height:145px}.morph-dashboard{padding-top:9px}.morph-head{align-items:start}.morph-head .eyebrow{font-size:8px}.morph-head button{font-size:8px}.ideas-grid,.partner-grid{grid-template-columns:1fr}.idea-card,.idea-card:nth-child(even),.partner-card,.partner-card:nth-child(even){padding:25px 0 31px;border-left:0}.idea-card h2,.partner-card h2{font-size:29px}.article-layout{grid-template-columns:1fr;gap:24px}.article-aside{position:static}.article-intro{margin-bottom:35px}.layer-study{margin:28px -8px;padding:10px}.layer-study canvas{height:310px}.layer-study-top .eyebrow:last-child{display:none}.layer-controls{gap:0 10px}.layer-controls label{font-size:8px}.layer-depth{display:block}.layer-depth output{display:block;margin-top:16px;text-align:left}.industrial-intro{display:block}.industrial-intro>p{font-size:16px;margin-bottom:20px}.contact-layout,.book-layout{grid-template-columns:1fr;gap:32px}.contact-side{margin-top:20px}.slot-list{max-height:350px}.footer-actions{margin:-23px 0 32px}}
@media(max-width:760px){.home-ideas{padding-top:55px;padding-bottom:60px}.home-ideas .section-heading{grid-template-columns:1fr}.home-ideas .section-heading .text-link{justify-self:start}.home-ideas .ideas-grid{grid-template-columns:1fr}.home-ideas .idea-card,.home-ideas .idea-card:not(:first-child){padding:24px 0;border-left:0}.home-ideas .idea-card h2{font-size:29px}}
@media(max-width:760px){.inquiry-columns{grid-template-columns:1fr;gap:50px}.workspace-nav{flex-wrap:wrap}.workspace-nav form{margin-left:auto}}
@media(max-width:420px){.morphogenesis{height:535px}.morph-stage{height:285px;flex-basis:285px}.morph-bottom{grid-template-columns:minmax(0,1fr) 98px}.morph-sliders label{grid-template-columns:54px minmax(0,1fr) 26px;gap:3px;font-size:7px}.morphogenesis .design-space canvas{height:128px}.design-space .eyebrow{font-size:7px}.design-space [data-space-location]{font-size:4.5px}.layer-study canvas{height:245px}.footer-bottom>div{flex-wrap:wrap;justify-content:start}}
/* Interactive field studies: shared monochrome controls and readable touch targets. */
.footer-actions{gap:20px 56px;margin-top:-12px}.footer-actions a{display:inline-flex;align-items:center;min-height:44px;padding:7px 0}
.email-reveal{display:inline-flex;align-items:center;gap:12px;flex-wrap:wrap}.email-reveal .text-button{min-height:44px;padding:8px 0;font-size:12px;text-decoration:underline;text-underline-offset:5px}.revealed-email{overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:5px}
.project-card[data-project="borg-markkula"] .project-image{display:flex;align-items:center;justify-content:center}.project-card[data-project="borg-markkula"] .project-image img{width:50%;height:50%;object-fit:contain;transform:none}
.project-card[data-project="citizen"] img{object-fit:contain;background:#dedede}.project-gallery{margin:35px 0 65px}.project-gallery img{width:100%;max-height:850px;object-fit:contain;filter:grayscale(1)}.project-gallery figcaption{color:var(--muted);font:10px var(--mono);margin-top:12px}
.morphogenesis{height:720px}.morph-stage{height:420px;flex:0 0 420px}.morph-stage canvas{cursor:grab}.morph-stage canvas:active{cursor:grabbing}.morph-stage-label{left:12px;right:auto;top:9px;font-size:8px}.morph-head .eyebrow{font-size:8px}.morph-head button,.chair-presets button,.study-tabs button,.study-motion,.study-action{border:1px solid #454545;background:#111;color:#bbb;font:9px var(--mono);min-height:36px;padding:8px 11px}.morph-head button:hover,.chair-presets button:hover,.study-tabs button:hover,.study-motion:hover,.study-action:hover{color:white;border-color:#aaa}.chair-presets{display:flex;gap:6px;margin-top:12px}.chair-presets button[aria-pressed="true"],.study-tabs button[aria-pressed="true"]{color:#111;background:#eee;border-color:#eee}.chair-presets [data-chair-view]{margin-left:auto}.morph-bottom{margin-top:6px}.morph-sliders label{grid-template-columns:72px minmax(0,1fr) 46px;margin:0;font-size:9px;min-height:35px}.morphogenesis .design-space canvas{height:143px}.design-space [data-space-location]{white-space:normal;display:block;font-size:6px;line-height:1.8;max-width:125px;margin:5px auto}.design-space .eyebrow{font-size:7px}
.morph-sliders input[type=range],.study-controls input[type=range]{appearance:none;-webkit-appearance:none;display:block;background:transparent;width:100%;height:34px;margin:0;padding:0;cursor:ew-resize;border:0;accent-color:white}
.morph-sliders input[type=range]::-webkit-slider-runnable-track,.study-controls input[type=range]::-webkit-slider-runnable-track{height:1px;background:#777}.morph-sliders input[type=range]::-webkit-slider-thumb,.study-controls input[type=range]::-webkit-slider-thumb{appearance:none;width:9px;height:13px;margin-top:-6px;border:1px solid #fff;border-radius:0;background:#e8e8e8;box-shadow:0 0 0 3px #111}.morph-sliders input[type=range]::-moz-range-track,.study-controls input[type=range]::-moz-range-track{height:1px;background:#777}.morph-sliders input[type=range]::-moz-range-thumb,.study-controls input[type=range]::-moz-range-thumb{width:9px;height:13px;border:1px solid white;border-radius:0;background:#eee}
.interactive-study{margin:35px 0 50px;border:1px solid #484848;background:#0b0b0b;padding:22px;max-width:100%;color:#eee}.study-heading .eyebrow{font-size:9px}.article-body .study-heading h2{font-size:28px;line-height:1.2;margin:12px 0;letter-spacing:-.04em}.article-body .study-heading p{font-size:12px;color:#aaa;line-height:1.65;margin:0 0 20px}.study-tabs{display:flex;gap:8px;flex-wrap:wrap}.study-tabs button{min-height:40px}.study-stage{position:relative;border-bottom:1px solid #383838;margin:12px 0}.study-stage canvas{display:block;width:100%;height:370px;touch-action:pan-y}.terrain-study .study-stage canvas{height:430px}.stage-caption{display:block;padding:0 6px 13px;font:8px var(--mono);color:#999;letter-spacing:.04em}.study-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 25px;margin:20px 0}.study-controls label{display:grid;grid-template-columns:1fr auto;color:#bbb;font:10px var(--mono);margin:0;align-items:center}.study-controls input{grid-column:1/-1;grid-row:2}.study-controls output{grid-column:2;grid-row:1;color:#eee;font-size:10px}.study-readout{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;border-top:1px solid #333;font:10px var(--mono);line-height:1.8}.study-readout .study-motion{flex-shrink:0;min-height:40px}.study-readout output{color:#f2f2f2}.article-body .study-probe{font:9px/1.8 var(--mono);min-height:34px;margin:5px 0;color:#aaa}.article-body .study-explanation,.article-body .study-method p{font-size:11px;line-height:1.8;color:#aaa;margin:12px 0}.study-method{border-top:1px solid #333;margin-top:20px;padding-top:12px}.study-method summary{font:10px var(--mono);cursor:pointer;min-height:34px;display:list-item;list-style:revert}.study-method a{text-decoration:underline;text-underline-offset:4px}.study-code{display:block;white-space:pre-wrap;overflow-wrap:anywhere;background:#171717;padding:12px;font:10px/1.8 var(--mono);color:#eee}.study-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;border-top:1px solid #333;padding-top:15px}.study-stats span{display:block;font:8px var(--mono);color:#999}.study-stats output{display:block;font:17px var(--mono);margin-top:5px}.study-actions{display:flex;gap:8px;flex-wrap:wrap}.study-action{min-height:40px}
@media(max-width:1100px){.morphogenesis{height:680px}.morph-stage{height:370px;flex-basis:370px}.morph-sliders label{grid-template-columns:61px minmax(0,1fr) 39px;font-size:8px}.chair-presets button{padding:7px;font-size:8px}}
@media(max-width:760px){.morphogenesis{height:auto;padding-bottom:10px}.morph-stage{height:330px;flex-basis:330px}.morph-head button{min-height:40px}.morph-head>div{gap:6px}.morph-sliders label{min-height:40px;font-size:9px;grid-template-columns:69px minmax(0,1fr) 46px}.morph-bottom{grid-template-columns:minmax(0,1fr) 110px}.morphogenesis .design-space canvas{height:160px}.chair-presets button{min-height:40px;font-size:9px}.interactive-study{margin:28px -6px;padding:15px}.terrain-study .study-stage canvas{height:340px}.study-stage canvas{height:290px}.study-controls{gap:10px 18px}.study-controls label,.study-controls output{font-size:9px}.study-readout{font-size:9px}.study-stats output{font-size:15px}.footer-actions{gap:16px 40px;margin-top:2px}}
@media(max-width:380px){.morph-bottom{grid-template-columns:minmax(0,1fr) 88px;gap:4px}.morph-sliders label{grid-template-columns:58px minmax(0,1fr) 38px;font-size:8px;gap:4px}.chair-presets button{padding:7px;font-size:8px}.morph-head .eyebrow{max-width:110px;line-height:1.6}.terrain-study .study-stage canvas{height:290px}.study-controls{grid-template-columns:1fr}.study-tabs{gap:5px}.study-tabs button{font-size:8px;padding:8px}.study-readout{flex-wrap:wrap}.footer-actions{gap:8px 32px}}
/* Native image proportions and a drawn monogram avoid distorted source imagery. */
.project-cover{margin:0 0 20px;border-top:1px solid #333;padding-top:28px}.project-cover img{display:block;width:auto;height:auto;max-width:100%;max-height:780px;object-fit:contain;margin-inline:auto;background:transparent}.project-cover figcaption{max-width:760px;margin:0 auto;padding:18px 0 0;font-size:10px}.project-cover[data-project="borg-markkula"] img{max-width:230px;max-height:230px}.native-gallery img{display:block;width:auto;height:auto;max-width:100%;max-height:780px;margin:0 auto}.native-gallery figcaption{max-width:760px;margin:16px auto 0}.architectural-mark{display:block;width:62%;height:auto;max-width:290px;overflow:visible}.mark-guides{stroke:#363636;stroke-width:.7;stroke-dasharray:2 5}.mark-letter{stroke:#d6d6d0;stroke-width:4.5;stroke-linejoin:round}.mark-slash{stroke:#777;stroke-width:1.2}.typing-word{display:inline-block;min-width:1px;position:relative}.typing-word:after{content:'';display:inline-block;width:1px;height:.74em;margin-left:.05em;background:#999;animation:typing-caret 1s steps(2,end) infinite}.typing-tail{white-space:nowrap}@keyframes typing-caret{50%{opacity:0}}.page-intro:has([data-typing-word]) h1{min-height:2.25em}
@media(min-width:1100px){.page-intro:has([data-typing-word]) h1{min-height:1.25em}}
@media(max-width:760px){.project-cover img{max-height:70svh}.project-cover{padding-top:20px}.architectural-mark{width:66%}.typing-tail{display:block}.typing-word{max-width:100%;font-size:clamp(32px,8vw,64px)}.page-intro:has([data-typing-word]) h1{min-height:2.5em}}
@media(prefers-reduced-motion:reduce){.typing-word:after{display:none}}
.article-photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:35px 0}.article-photo-pair figure{margin:0;min-width:0}.article-photo-pair img{width:100%;height:380px;object-fit:contain;filter:grayscale(1);background:#151515}.article-photo-pair figcaption{font:10px/1.8 var(--mono);color:#999;margin-top:16px}.article-photo-pair strong{display:block;color:#ddd;font-weight:400;margin-bottom:5px}.article-photo-pair a{text-decoration:underline;text-underline-offset:3px}.campus-options{display:flex;gap:7px;flex-wrap:wrap}.campus-options button{border:1px solid #555;background:#111;padding:10px;font:9px var(--mono);min-height:44px;flex:1;color:#bbb}.campus-options button[aria-pressed=true]{background:#eee;color:#111}.campus-options button:disabled{cursor:default;opacity:.5}.campus-priority-title{border-top:1px solid #333;padding-top:18px;font-size:9px!important}.campus-weights{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:760px){.article-photo-pair{grid-template-columns:1fr;gap:30px}.article-photo-pair img{height:auto;max-height:520px;width:auto;max-width:100%;margin:auto}.campus-options button{font-size:8px;min-width:90px}.campus-weights{grid-template-columns:1fr}}

.floor-selector{margin-top:8px}.study-action[aria-pressed=true]{background:#eee;color:#111}.study-action:disabled{opacity:.45;cursor:default}.terrain-study .study-stage canvas{height:520px}@media(max-width:760px){.terrain-study .study-stage canvas{height:360px}}

.marina-categories{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.marina-categories button{padding:10px 4px;display:grid;gap:8px;text-align:center;font-size:8px}.marina-categories button>span:first-child{font-size:15px}.marina-categories output{font:11px var(--mono)}.marina-actions{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin:0 0 22px}.marina-actions label{display:grid;gap:7px;font:10px var(--mono)}.marina-actions select{background:#151515;color:#eee;font:10px var(--mono);border:1px solid #555;min-height:42px;max-width:100%;padding:8px}.marina-study .study-stage canvas{height:410px;cursor:pointer}.marina-study .study-stats output{font-size:16px}@media(max-width:760px){.marina-study .study-stage canvas{height:270px}.marina-categories{gap:3px}.marina-categories button{font-size:7px;line-height:1.5;padding:8px 2px}.marina-categories button>span:first-child{font-size:12px}.marina-study .study-stats output{font-size:12px}}

.article-photo-pair .article-photo-wide{grid-column:1/-1}.article-photo-pair .article-photo-wide img{height:auto;max-height:620px;width:auto;max-width:100%;margin:auto}.article-photo-pair img{max-width:100%}

.marina-brief{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:22px 0 12px}.marina-brief label{display:grid;gap:8px;margin:0;font:10px var(--mono)}.marina-brief select{width:100%;height:44px;margin:0;border:1px solid #555;background:#141414;color:#ddd;font:10px var(--mono);padding:8px}.marina-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:8px}.marina-actions .study-action{margin:0;min-height:44px;padding:10px 6px;font-size:9px}.marina-tide{border-block:1px solid #333;padding:18px 0}.marina-tide .eyebrow{font-size:8px;margin-bottom:12px}.marina-tide .study-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.marina-tide .study-controls{grid-template-columns:1fr;margin:12px 0}.marina-tide .study-tabs button{font-size:9px;padding:10px 4px}.marina-study .study-stage canvas{height:450px}@media(max-width:760px){.marina-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.marina-brief{gap:9px}.marina-brief select{font-size:9px}.marina-tide .study-tabs button{font-size:8px}.marina-study .study-stage canvas{height:290px}}

.campus-study .study-stage canvas{height:490px;cursor:crosshair}.campus-study .study-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.campus-study .campus-weights{grid-template-columns:repeat(2,minmax(0,1fr))}.campus-legend{display:flex;flex-wrap:wrap;gap:10px 18px;font:8px var(--mono);color:#aaa;margin:14px 0}.campus-legend span{display:flex;align-items:center;gap:6px}.campus-legend i{display:inline-block;width:10px;height:10px;border:1px solid #888}.legend-teaching{background:#1c1c1c}.legend-shared{background:#282828}.legend-circulation{background:#414141}@media(max-width:760px){.campus-study .study-stage canvas{height:340px}.campus-study .study-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.campus-study .campus-weights{grid-template-columns:1fr}.campus-legend{font-size:7px;gap:8px}}

.campus-study .study-stage canvas{height:auto;aspect-ratio:1.35/1}.campus-study[data-campus-mode=plan] .study-stage canvas{aspect-ratio:1.15/1}.campus-study[data-campus-mode=volumes] .study-stage canvas{aspect-ratio:2/1}@media(max-width:760px){.campus-study[data-campus-mode=plan] .study-stage canvas{aspect-ratio:.85/1}}

.consent-banner{position:fixed;z-index:100;right:var(--gutter);bottom:20px;left:var(--gutter);max-width:560px;margin-left:auto;display:flex;align-items:center;gap:20px;padding:14px 16px 14px 18px;background:var(--panel);border:1px solid var(--line);box-shadow:0 12px 32px rgba(0,0,0,.45);font-size:13px;line-height:1.5}.consent-banner p{margin:0;color:var(--muted)}.consent-banner p a{color:var(--text);text-decoration:underline;text-underline-offset:3px}.consent-banner div{display:flex;gap:8px;flex-shrink:0}.consent-banner .button{min-height:38px;margin:0;padding:8px 14px}@media(max-width:560px){.consent-banner{right:16px;bottom:16px;left:16px;flex-direction:column;align-items:stretch;gap:12px}.consent-banner .button{flex:1}}
