@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.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}:root{--field:#050504;--text:#f4f2eb;--muted:#aaa89f;--reading:#c8c5ba;--amber:#f2cf63;--surface:#10110e;--line:#35372f;--gutter:clamp(24px, 3.6vw, 64px);--content-width:1320px;--page-inset:max(var(--gutter), calc((100% - var(--content-width)) / 2));--header-height:80px;--ease-out:cubic-bezier(.23, 1, .32, 1);color:var(--text);background:var(--field);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:Manrope Variable,sans-serif}*{box-sizing:border-box}html{scrollbar-color:#6a6c61 var(--field)}body{min-width:320px;margin:0}img{max-width:100%}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit;text-underline-offset:5px}h2{letter-spacing:-.035em;overflow-wrap:break-word;margin:0;font-size:clamp(38px,4.1vw,62px);font-weight:400;line-height:1.12}h2,h3{text-wrap:balance}::selection{background:var(--amber);color:var(--field)}:focus-visible{outline:2px solid var(--amber);outline-offset:6px}section[id]{scroll-margin-top:var(--header-height)}article[id],details[id],:where(a,button,summary,[tabindex]){scroll-margin-top:calc(var(--header-height) + 24px)}:where(a,button,summary){scroll-margin-bottom:16px}#top{scroll-margin-top:0}:is(h1,h2)[tabindex="-1"]:focus{outline:none}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:40;background:var(--text);color:var(--field);padding:12px 18px;position:fixed;top:12px;left:24px;transform:translateY(-180%)}.skip-link:focus{transform:none}.icon{stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;flex:0 0 18px;width:18px;height:18px}.inline-list{margin:0;padding:0;list-style:none}.inline-list li{display:inline-block}.print-only{display:none}.keep-together{max-width:100%;display:inline-block}.section-shell{padding-inline:var(--gutter)}.plain-page{max-width:720px;padding:56px var(--gutter);color:var(--reading);margin-inline:auto;line-height:1.75}.plain-page h1{color:var(--text);letter-spacing:-.035em;margin:0 0 14px;font-size:40px;font-weight:400}.plain-page h2{color:var(--text);letter-spacing:-.02em;margin:44px 0 14px;font-size:24px;font-weight:400}.plain-page li{margin-bottom:14px}#root>.plain-page{visibility:hidden;animation:0s linear 4s forwards plain-page-appear}@keyframes plain-page-appear{to{visibility:visible}}@media (height<=599px){section[id]{scroll-margin-top:0}article[id],details[id],:where(a,button,summary,[tabindex]){scroll-margin-top:24px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important}}.tactile-button{color:var(--text);cursor:pointer;vertical-align:middle;background:0 0;border:0;border-radius:3px;min-height:54px;margin:0;padding:0;text-decoration:none;display:inline-block;position:relative}.tactile-button--primary{width:180px}.button-motion{min-height:inherit;transform:translate(var(--pull-x,0px), var(--pull-y,0px));display:block}.button-surface{min-height:inherit;transition:transform .16s var(--ease-out), background-color .18s ease;background:linear-gradient(165deg,#30312d 0%,#1d1e1b 26%,#121310 80%);border-radius:3px;justify-content:center;align-items:center;gap:18px;padding:6px 18px;font-size:14px;font-weight:450;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #62635b,inset 1px 0 #3c3e36,inset -1px 0 #b8983c,inset 0 -1px #363b31,0 6px 16px #0008}.button-surface:before{content:"";pointer-events:none;opacity:.13;background:radial-gradient(ellipse at var(--reflection-x,100%) var(--reflection-y,80%), #f5d87a 0%, transparent 67%);transition:opacity .18s;position:absolute;inset:0}.button-surface>span,.button-surface>svg{position:relative}.tactile-button--secondary .button-surface{color:#d2d0c8;background:linear-gradient(165deg,#161714,#0c0d0b);box-shadow:inset 0 1px #35372f,inset 0 -1px #22241e,inset 1px 0 #292c24,inset -1px 0 #3a3b31}.tactile-button--secondary .button-surface:before{opacity:.06}.tactile-button svg{stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;flex:0 0 17px;width:17px;height:17px}.tactile-button:active .button-surface{transition-duration:80ms;transform:scale(.975)}.tactile-button:focus-visible .button-motion,.tactile-button:focus-visible .button-surface{transform:none}@media (hover:hover) and (pointer:fine){.tactile-button:hover .button-surface:before{opacity:.24}.tactile-button--secondary:hover .button-surface:before{opacity:.14}}@media (width<=700px){.tactile-button{min-height:52px}.tactile-button--primary{width:160px}.button-surface{gap:17px;padding:6px 13px;font-size:13px}}@media (width<=370px){.tactile-button--primary{width:142px}.button-surface{gap:10px;padding:6px 10px;font-size:12px}}@media (prefers-reduced-motion:reduce){.button-motion,.tactile-button:active .button-surface{transform:none}}@media (forced-colors:active){.button-surface{border:1px solid buttontext}a.tactile-button .button-surface{border-color:linktext}}:root{--title-size:clamp(32px, 4.8vw, 72px);--title-top:28svh;--sun-dock-top:calc(var(--header-height) + 20px);--sun-dock-size:min(44vw, 64svh, 640px);--hero-bottom:22px}.intro-track{position:relative}.hero{min-height:100svh;padding:var(--title-top) var(--page-inset) var(--hero-bottom);isolation:isolate;background:#000;flex-direction:column;display:flex;position:relative;overflow:hidden}.site[data-intro=scrub] .intro-track{height:200svh}.site[data-intro=scrub] .hero{height:100svh;min-height:0;padding:0;display:block;position:sticky;top:0}.site-header{height:var(--header-height);z-index:30;pointer-events:none;position:fixed;inset:0 0 auto}.header-field{background:var(--field);border-bottom:1px solid #35372f80;position:absolute;inset:0}.site-navigation{top:18px;left:calc(var(--page-inset) - 6px);pointer-events:auto;gap:30px;display:flex;position:absolute}.site-navigation a{justify-content:center;align-items:center;min-width:44px;min-height:44px;font-size:14px;text-decoration:none;display:flex}.site-navigation a:hover{text-decoration:underline}.site-navigation a[aria-current=true]{text-decoration:underline;-webkit-text-decoration-color:var(--amber);text-decoration-color:var(--amber);text-underline-offset:9px;text-decoration-thickness:1px}.intro-skip{top:18px;right:var(--page-inset);min-height:44px;color:var(--text);font:inherit;cursor:pointer;pointer-events:auto;background:0 0;border:0;align-items:center;gap:13px;padding:0 4px 0 14px;font-size:13px;display:none;position:absolute}.intro-skip:hover{text-underline-offset:5px;text-decoration:underline}.intro-skip:active{color:var(--amber)}.site[data-intro=scrub] .intro-skip{display:flex}.wordmark{top:18px;right:var(--page-inset);opacity:0;visibility:hidden;pointer-events:none;align-items:center;gap:12px;min-height:44px;font-size:14px;text-decoration:none;display:flex;position:absolute}.wordmark[data-visible=true],.wordmark:focus-visible{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .24s}.wordmark:focus-visible~.intro-skip{visibility:hidden!important}.wordmark:hover .wordmark-name{text-decoration:underline}.sun-mark{width:27px;height:27px;display:block}.name-destination{top:var(--title-top);left:var(--page-inset);width:1px;height:1.1em;font-size:var(--title-size);visibility:hidden;position:absolute}.name-lockup{z-index:2;width:max-content;max-width:100%;font-size:var(--title-size);letter-spacing:-.035em;white-space:nowrap;transform-origin:0 0;text-shadow:0 0 3px #000,0 0 3px #000,0 2px 18px #000b;flex-wrap:wrap;align-items:baseline;gap:.22em;margin:0;font-weight:400;line-height:1.1;display:flex;position:relative}.name-lockup>span{flex-shrink:0;display:block}.site[data-intro=scrub] .name-lockup{flex-wrap:nowrap;max-width:none;font-size:clamp(28px,9vw,96px);position:absolute;top:0;left:0}.scroll-cue{z-index:2;color:var(--muted);white-space:nowrap;pointer-events:none;align-items:center;gap:14px;font-size:12px;display:none;position:absolute;bottom:64px;left:50%;transform:translate(-50%)}.site[data-intro=scrub] .scroll-cue{display:flex}.introduction{z-index:2;max-width:min(540px,43vw);margin-top:28px;position:relative}.introduction:focus{outline:none}.site[data-intro=scrub] .introduction{top:calc(var(--title-top) + var(--title-size) * 1.1 + 28px);left:var(--page-inset);margin-top:0;position:absolute}.intro-copy{max-width:540px;color:var(--text);letter-spacing:-.015em;text-wrap:balance;margin:0;font-size:clamp(20px,1.7vw,25px);line-height:1.6}.hero-primary{margin-top:30px}.solar-scene{z-index:0;pointer-events:none;position:absolute;inset:0}.solar-position,.solar-destination{top:var(--sun-dock-top);right:var(--page-inset);width:var(--sun-dock-size);max-width:var(--sun-pixel-limit,900px);aspect-ratio:1;transform-origin:0 0;position:absolute}.solar-destination{visibility:hidden}.site[data-intro=scrub] .solar-position{width:min(88svh,94vw,900px);top:0;left:0;right:auto}.solar-plane{transform-origin:50%;width:100%;height:100%;transition:transform .7s var(--ease-out);position:relative;transform:scale(.884956)}.solar-scene--close .solar-plane{transform:scale(1)}[data-instant=true] .solar-plane{transition:none}.solar-media{object-fit:contain;width:100%;height:100%;display:block;position:absolute;inset:0}.sun-still{opacity:0}.sun-still[data-whole=true]{opacity:1}.solar-video{opacity:0}.solar-video--ready{opacity:1}.solar-scene[data-still=true] .solar-video{opacity:0}.hero-footer{z-index:2;justify-content:space-between;align-items:flex-end;gap:24px;margin-top:auto;padding-top:40px;display:flex;position:relative}.site[data-intro=scrub] .hero-footer{bottom:var(--hero-bottom);left:var(--page-inset);right:var(--page-inset);margin-top:0;padding-top:0;position:absolute}.hero-controls{align-items:center;gap:13px;display:flex}.scene-tools .tactile-button{width:148px;min-height:44px}.scene-tools .button-surface{gap:12px;font-size:12px}.media-status{max-width:330px;min-height:20px;color:var(--muted);margin:8px 0 0;font-size:12px;line-height:1.6}.solar-attribution{text-align:right}.source-credit{color:#e1ded3;text-align:right;flex-direction:column;gap:5px;padding:5px 0;font-size:12px;line-height:1.45;text-decoration:none;display:flex}.source-credit>span:last-child{color:#c1bdb0}.source-usage{color:#c1bdb0;justify-content:flex-end;align-items:center;min-height:28px;font-size:12px;text-decoration:none;display:flex}.source-usage:hover{text-decoration:underline}.source-credit svg,.source-usage svg{stroke:currentColor;stroke-width:1.2px;flex-basis:11px;width:11px;height:11px;margin-left:4px}.source-credit:focus-visible,.source-usage:focus-visible{outline-offset:2px}@media (hover:hover) and (pointer:fine){.source-credit:hover{text-decoration:underline}}@media (width<=1000px) and (width>=701px){:root{--title-top:39svh;--sun-dock-size:min(42vw, 30svh, 420px)}.introduction{max-width:58vw}.source-credit{max-width:232px}}@media (width<=900px) and (width>=701px){.scroll-cue{bottom:112px}}@media (width<=900px) and (width>=701px) and (height<=799px){.site[data-intro=scrub] .scroll-cue{display:none}}@media (width<=700px){:root{--title-size:clamp(28px, 8.1vw, 36px);--title-top:42svh;--sun-dock-top:calc(var(--header-height) + 12px);--sun-dock-size:min(62vw, calc(var(--title-top) - var(--sun-dock-top) - 20px), 280px);--hero-bottom:16px}.site[data-intro=scrub] .intro-track{height:175svh}.site-navigation{left:var(--page-inset);gap:24px}.site-navigation a{justify-content:flex-start;font-size:13px}.wordmark{justify-content:flex-end;min-width:44px}.wordmark-name{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.scroll-cue{bottom:198px}.introduction{max-width:none;margin-top:24px}.site[data-intro=scrub] .introduction{top:calc(var(--title-top) + var(--title-size) * 1.1 + 24px);right:var(--page-inset)}.intro-copy{font-size:20px;line-height:1.5}.hero-primary{margin-top:24px}.hero-footer{flex-direction:column;align-items:flex-start;gap:12px}.hero-controls{gap:10px}.scene-tools .tactile-button{width:146px}.solar-attribution{text-align:left}.source-credit{text-align:left;gap:1px;padding-block:0}.source-usage{justify-content:flex-start;min-height:26px}.source-usage:focus-visible{outline-offset:0}}@media (width<=370px){:root{--title-top:38svh}.site-navigation{gap:12px}.intro-copy{font-size:18px}.hero-controls{gap:8px}.scene-tools .tactile-button{width:132px}}@media (height<=699px) and (width<=700px),(height<=599px){:root{--title-top:290px;--sun-dock-top:calc(var(--header-height) + 12px);--sun-dock-size:min(36vw, calc(100svh - 112px), 300px)}.hero{min-height:820px}.introduction{max-width:min(540px,100%)}}@media (height<=699px) and (width<=700px){:root{--sun-dock-size:min(62vw, max(calc(100svh - 176px), 72px), 260px);--title-top:calc(var(--sun-dock-top) + var(--sun-dock-size) + 24px)}}@media (height<=599px) and (width>=701px){.introduction{max-width:min(540px,46vw)}}@media (height<=599px){.site-header{position:absolute}.wordmark{display:none}}@media (height<=480px){.zoom-control{display:none}}.work-section{background:var(--surface);padding-top:clamp(80px,8vw,128px);padding-bottom:40px;position:relative}.work-section:before{content:"";background:linear-gradient(90deg, var(--line), #726130 65%, var(--line));height:1px;position:absolute;top:0;left:0;right:0}.section-heading{max-width:var(--content-width);justify-content:space-between;align-items:flex-end;gap:40px;margin:0 auto 78px;display:flex}.section-heading>p{color:var(--muted);text-wrap:balance;max-width:330px;margin:0;font-size:15px;line-height:1.7}.projects{max-width:var(--content-width);margin-inline:auto}.project{padding-bottom:64px}.project+.project{border-top:1px solid var(--line);padding-top:64px}.project-heading{justify-content:space-between;align-items:flex-start;gap:36px;margin-bottom:36px;display:flex}.project h3{letter-spacing:-.025em;overflow-wrap:break-word;max-width:770px;margin:0;font-size:clamp(28px,3vw,44px);font-weight:400;line-height:1.18}.project--featured h3{max-width:650px;font-size:clamp(36px,3.9vw,56px)}.project-organization{color:var(--text);margin:21px 0 5px;font-size:15px}.project-role,.project-date{color:var(--muted);margin:0;font-size:13px;line-height:1.7}.project-date{text-align:right;white-space:nowrap;flex-shrink:0;padding-top:7px}.project-date>span{display:block}.figures{border-top:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));gap:28px clamp(24px,4vw,64px);margin:0 0 44px;padding:28px 0 0;list-style:none;display:grid}.figure{flex-direction:column;min-width:0;display:flex}.figure-value{letter-spacing:-.035em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:clamp(24px,2.3vw,34px);line-height:1.1}.figure-label{overflow-wrap:break-word;margin-top:10px;font-size:14px;line-height:1.45}.figure-detail{color:var(--muted);overflow-wrap:break-word;font-size:12px;line-height:1.6}.project-body{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:clamp(40px,7vw,112px);display:grid}.project-summary{color:#dedbd1;max-width:42ch;margin:0;font-size:clamp(18px,1.65vw,24px);line-height:1.55}.project-tools{color:var(--muted);margin-top:27px;font-size:12px;line-height:1.8}.project-link{align-items:center;gap:8px;width:fit-content;min-height:44px;margin-top:16px;font-size:13px;text-decoration:none;display:flex}.project-link:hover{text-decoration:underline}.project-link:focus-visible,.case-permalink:focus-visible{outline-offset:3px}.project-link svg{stroke-width:1.2px;flex-basis:11px;width:11px;height:11px}.project-facts{margin:0}.project-facts>div{grid-template-columns:94px 1fr;gap:14px;margin-bottom:20px;display:grid}.project-facts>div:last-child{margin-bottom:0}.project-facts dt{color:var(--muted);padding-top:3px;font-size:12px}.project-facts dd{color:var(--reading);max-width:72ch;margin:0;font-size:15px;line-height:1.75}.project-visual{margin:0 0 36px;container-type:inline-size}.project-visual-art{background:var(--surface);overflow-anchor:none;height:272px;position:relative}@container (width>=640px){.project-visual-art{height:304px}}@container (width>=960px){.project-visual-art{height:288px}}.project-visual-host{position:absolute;inset:0}.project-visual-host>svg,.project-visual-host>canvas{width:100%;height:100%;display:block;position:absolute;inset:0;overflow:visible}.project-visual-host text{font-variant-numeric:tabular-nums;font-family:Manrope Variable,sans-serif}.project-visual-probe{visibility:hidden;white-space:nowrap;pointer-events:none;font:400 12px Manrope Variable,sans-serif;position:absolute;top:0;right:0}.project-visual-caption{min-height:32px;color:var(--muted);justify-content:space-between;align-items:center;gap:24px;margin-top:10px;font-size:12px;line-height:1.45;display:flex}.project-visual-caption>span{text-wrap:balance;max-width:72ch}@container (width<480px){.project-visual-caption{flex-wrap:wrap;row-gap:8px}.project-visual-caption>span{flex-basis:100%}.visual-toggle{margin-left:auto}}.visual-toggle{border:1px solid var(--line);color:#d2d0c8;cursor:pointer;min-width:6.25em;min-height:30px;transition:transform .16s var(--ease-out), border-color .18s ease, color .18s ease;background:linear-gradient(165deg,#1a1b18,#0d0e0c);border-radius:3px;flex:none;justify-content:center;align-items:center;gap:7px;padding:3px 11px 3px 10px;font:450 12px/1.25 Manrope Variable,sans-serif;display:inline-flex;position:relative}.visual-toggle:before{content:"";position:absolute;inset:-8px -4px}.visual-toggle:after{content:"";border-radius:inherit;pointer-events:none;opacity:.06;background:radial-gradient(at 100% 80%,#f5d87a 0%,#0000 67%);transition:opacity .18s;position:absolute;inset:0}.visual-toggle>svg,.visual-toggle>span{z-index:1;position:relative}.visual-toggle svg{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:10px;height:10px}.visual-toggle:active{transition-duration:80ms;transform:scale(.975)}.visual-toggle:focus-visible{outline:2px solid var(--amber);outline-offset:3px}.case-details{margin-top:30px}.case-details summary{cursor:pointer;width:fit-content;min-height:48px;color:var(--text);align-items:center;gap:48px;padding:6px 0;font-size:14px;list-style:none;display:flex}.case-details summary::-webkit-details-marker{display:none}.disclosure-icon{width:20px;height:20px;stroke:var(--amber);stroke-width:1.25px}.case-details[open] .disclosure-vertical{display:none}.case-content{border-top:1px solid var(--line);margin-top:18px;padding:28px 0 0}.case-blocks{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 72px;display:grid}.case-blocks h4{margin:0 0 13px;font-size:17px;font-weight:500}.case-blocks p{color:var(--reading);max-width:72ch;margin:0 0 15px;font-size:14px;line-height:1.85}.comparison{max-width:760px;margin-bottom:40px}.comparison table{border-collapse:collapse;text-align:left;font-variant-numeric:tabular-nums;width:100%;font-size:14px}.comparison caption{text-align:left;margin-bottom:16px;font-size:16px}.comparison th,.comparison td{border-bottom:1px solid var(--line);overflow-wrap:anywhere;padding:12px 14px 12px 0;line-height:1.6}.comparison thead th{color:var(--muted);font-size:12px;font-weight:400}.comparison tbody th{font-weight:400}.case-links{color:var(--muted);margin:28px 0 0;font-size:12px}.case-permalink{padding:12px 0;display:inline-block}@media (hover:hover) and (pointer:fine){.case-details summary:hover>span{text-decoration:underline}.visual-toggle:hover{color:var(--text);border-color:#4b4d44}.visual-toggle:hover:after{opacity:.14}}@media (prefers-reduced-motion:reduce){.visual-toggle:active{transform:none}}@media (forced-colors:active){.disclosure-icon{stroke:currentColor}.visual-toggle{border-color:buttontext}.project-visual-art{forced-color-adjust:none}}@media (width<=1000px) and (width>=701px){.project-heading{gap:24px}.figures{grid-template-columns:repeat(2,minmax(0,1fr))}.project-body{gap:36px}.project-facts>div{grid-template-columns:1fr;gap:6px}}@media (width<=700px){.project-visual{margin-bottom:28px}.section-heading{margin-bottom:48px;display:block}.section-heading>p{margin-top:23px;font-size:14px}.project{padding-bottom:42px}.project+.project{padding-top:42px}.project-heading{margin-bottom:26px;display:block}.project-organization{font-size:14px}.project-role{font-size:12px}.project-date{text-align:left;white-space:normal;padding-top:13px;font-size:12px}.project-date>span{margin-left:10px;display:inline}.figures{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px;margin-bottom:32px;padding-top:24px}.figure-label{font-size:13px}.project-body{grid-template-columns:1fr;gap:30px}.project-summary{font-size:19px}.project-facts>div{margin-bottom:20px;display:block}.project-facts dt{margin-bottom:6px}.project-facts dd,.case-blocks p{font-size:16px}.case-details{margin-top:18px}.case-blocks{grid-template-columns:1fr;gap:18px}.comparison table{font-size:13px}.comparison thead th{font-size:12px}.comparison th:first-child{width:30%}}.about-section{background:#080906;padding-block:clamp(90px,9vw,144px)}.about-main,.about-detail{max-width:var(--content-width);grid-template-columns:1.15fr .85fr;gap:clamp(60px,11vw,176px);margin-inline:auto;display:grid}.about-detail{border-top:1px solid var(--line);margin-top:90px;padding-top:44px}.about-section h3{letter-spacing:-.02em;margin:0 0 7px;font-size:23px;font-weight:450}.biography{max-width:600px;margin-top:38px}.biography p{color:#cbc8be;margin:0 0 24px;font-size:clamp(18px,1.5vw,22px);line-height:1.8}.biography .signature{color:var(--muted);margin-top:38px;font-size:16px}.education>p{color:var(--reading);font-size:14px;line-height:1.7}.education .school{color:var(--muted);margin-top:0;margin-bottom:20px}.education .graduation{color:var(--text)}.graduation span{margin-left:20px;display:inline-block}.listing{color:var(--reading);margin-top:24px;font-size:14px;line-height:1.7}.listing h4{color:var(--muted);margin:0 0 5px;font-size:12px;font-weight:400}.listing .inline-list{text-wrap:balance}.credentials{border-top:1px solid var(--line);margin-top:34px;padding-top:32px}.credentials ul{margin:20px 0 0;padding:0;list-style:none}.credentials li{margin-bottom:18px}.credentials li:last-child{margin-bottom:0}.listing p{color:var(--muted);margin:2px 0 0;font-size:12px;line-height:1.7}.credentials a,.listing a,.credential-name{color:var(--text);font-size:14px;line-height:1.6;text-decoration:none}.credentials a:hover,.listing a:hover{text-decoration:underline}.credentials a,.listing a{padding-block:3px}.credentials a:focus-visible,.listing a:focus-visible{outline-offset:0}.credentials a svg,.listing a svg{stroke-width:1.2px;vertical-align:baseline;width:11px;height:11px;margin-left:6px;display:inline-block}.credential-meta{color:var(--muted);margin-top:3px;font-size:12px;line-height:1.7;display:block}.skills dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 48px;margin:22px 0 0;display:grid}.skills dt{color:var(--muted);margin-bottom:7px;font-size:12px}.skills dd{color:var(--reading);margin:0;font-size:14px;line-height:1.85}.earlier p{color:var(--muted);margin:0;font-size:13px;line-height:1.7}.earlier .earlier-organization{color:var(--text);margin-top:20px;font-size:15px}.earlier .earlier-summary{color:var(--reading);max-width:60ch;margin-top:16px;font-size:15px;line-height:1.75}@media (width<=1000px) and (width>=861px){.about-main,.about-detail{gap:54px}}@media (width<=860px){.about-main,.about-detail{grid-template-columns:1fr;gap:0}.biography p:last-child{margin-bottom:0}.about-background,.credentials,.about-detail,.earlier{border-top:1px solid var(--line);margin-top:44px;padding-top:38px}}@media (width<=700px){.biography{margin-top:28px}.biography p{font-size:18px}.biography .signature{margin-top:26px}.skills dl{grid-template-columns:1fr;gap:18px}.earlier .earlier-summary{font-size:16px}}.contact-section{background:#000;padding-block:clamp(78px,8vw,128px) clamp(64px,7vw,104px)}.contact-main{max-width:var(--content-width);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(40px,6vw,96px);margin-inline:auto;display:grid}.contact-main h2{font-size:clamp(44px,5.2vw,76px)}.contact-location{color:var(--muted);margin:23px 0 0;font-size:15px}.contact-options{margin-top:44px}.contact-options .tactile-button{min-width:260px;max-width:100%;min-height:58px}.contact-options .button-surface{justify-content:space-between;padding-inline:22px;font-size:18px}.contact-options .button-surface>span{overflow-wrap:anywhere;min-width:0}.contact-links{flex-wrap:wrap;gap:4px 34px;margin:16px 0 0;padding:0;list-style:none;display:flex}.contact-links a{align-items:center;gap:12px;min-height:48px;font-size:14px;text-decoration:none;display:flex}.contact-links a:hover{text-decoration:underline}.closing-sun{width:min(38vw,460px,max(180px,100svh - 300px));display:block;position:relative}.closing-sun img{width:100%;height:auto;display:block}.closing-video{object-fit:contain;opacity:0;width:100%;height:100%;position:absolute;inset:0}.closing-video[data-ready=true]{opacity:1}.site-footer{background:#000}.site-footer-inner{max-width:var(--content-width);border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:25px;margin-inline:auto;padding-block:28px;display:flex}.site-footer p{margin:0;font-size:13px;line-height:1.7}.footer-identity>span{color:var(--muted);font-size:12px;display:block}.back-to-top{align-items:center;gap:15px;min-height:44px;font-size:13px;text-decoration:none;display:flex}.back-to-top:hover{text-decoration:underline}@media (height<=599px){.closing-sun{align-self:end}}@media (width<=700px){.contact-main{grid-template-columns:1fr;gap:40px}.closing-sun{justify-self:end;width:min(62vw,280px,max(96px,100svh - 230px))}.contact-options{margin-top:34px}.site-footer-inner{flex-wrap:wrap;gap:6px 25px}.footer-identity{flex-basis:100%}.back-to-top{gap:8px}}@media print{@page{margin:12mm 14mm}:root{--gutter:0px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff}*,:before,:after{color:#111!important;box-shadow:none!important;text-shadow:none!important;background:0 0!important}.project-role,.project-date,.project-tools,.project-facts dt,.figure-detail,.section-heading>p,.school,.graduation span,.listing h4,.credential-meta,.skills dt,.earlier-role,.earlier-date{color:#555!important}.skip-link,.site-header,.solar-scene,.name-destination,.scroll-cue,.hero-primary,.hero-footer,.contact-section,.site-footer,.disclosure-icon,.case-links,.work-section:before,.icon,.project-visual{display:none!important}.site[data-intro] .intro-track{height:auto;position:static}.site[data-intro] .hero{height:auto;min-height:0;padding:0;display:block;position:static;overflow:visible}.site[data-intro] .name-lockup{position:static;font-size:26pt!important;transform:none!important}.name-lockup>span{opacity:1!important;transform:none!important}.site[data-intro] .introduction{max-width:none;margin-top:6pt;position:static;opacity:1!important}.intro-copy{max-width:none;font-size:12pt;line-height:1.45}.print-only{margin:5pt 0 0;font-size:10pt;display:block}h2{font-size:16pt}h2,h3,h4,.project-heading,summary{break-after:avoid}.figures,.case-content{break-before:avoid}.project-heading,.figures,.project-facts>div,.case-blocks section,.comparison,.credentials li,.skills dl>div,.earlier{break-inside:avoid}.work-section,.about-section{padding-block:14pt 0}.section-heading{margin-bottom:8pt;display:block}.section-heading>p{max-width:none;margin-top:3pt;font-size:10pt;line-height:1.4}.project{padding-bottom:10pt}.project+.project{border-top:.5pt solid #bbb;padding-top:10pt}.project-heading{gap:18pt;margin-bottom:6pt;display:flex}.project h3,.project--featured h3{max-width:none;font-size:13pt}.project-organization{margin:3pt 0 0;font-size:10pt}.project-role,.project-date{font-size:9pt;line-height:1.45}.project-date{text-align:right;flex-shrink:0;max-width:none;padding-top:2pt}.project-date>span{margin-left:0;display:block}.figures{border-color:#bbb;grid-template-columns:repeat(4,minmax(0,1fr));gap:8pt 14pt;margin-bottom:8pt;padding-top:7pt}.figure-value{font-size:14pt}.figure-label{margin-top:3pt;font-size:9pt;line-height:1.35}.figure-detail{margin-top:2pt;font-size:8pt;line-height:1.4}.project-body{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:16pt}.project-summary{max-width:none;font-size:10.5pt;line-height:1.45}.project-tools{margin-top:6pt;font-size:8.5pt;line-height:1.5}.project-link{width:auto;min-height:0;margin-top:6pt;font-size:9pt;display:block}.project-facts>div{grid-template-columns:58pt 1fr;gap:8pt;margin-bottom:6pt;display:grid}.project-facts dt{margin:0;padding-top:1pt;font-size:8.5pt}.project-facts dd,.case-blocks p{max-width:none;font-size:9.5pt;line-height:1.45}details::details-content{content-visibility:visible!important;display:block!important}.case-details{margin-top:8pt}.case-details summary{min-height:0;padding:0;font-size:9pt;font-weight:600}.case-content{border-color:#bbb;margin-top:5pt;padding-top:8pt}.comparison{max-width:none;margin-bottom:10pt}.comparison caption{margin-bottom:4pt;font-size:10pt}.comparison table{font-size:9.5pt}.comparison th,.comparison td{border-color:#bbb;padding:4pt 10pt 4pt 0}.comparison thead th{font-size:8.5pt}.case-blocks{grid-template-columns:repeat(2,minmax(0,1fr));gap:8pt 20pt}.case-blocks h4{margin-bottom:3pt;font-size:10pt}.case-blocks p{margin-bottom:5pt}.about-main,.about-detail{grid-template-columns:1fr 1fr;gap:22pt}.about-detail{border-color:#bbb;margin-top:8pt;padding-top:8pt}.about-background,.earlier{border-top:0;margin-top:0;padding-top:0}.about-section h3{margin-bottom:3pt;font-size:12pt}.biography{max-width:none;margin-top:8pt}.biography p{margin-bottom:7pt;font-size:10pt;line-height:1.5}.biography .signature{margin-top:0;font-size:10pt}.education>p,.listing,.skills dd,.earlier p,.earlier .earlier-summary{font-size:9.5pt;line-height:1.45}.education .school{margin-bottom:6pt}.education>p{margin-block:0 2pt}.listing{margin-top:8pt}.listing h4,.skills dt,.earlier .earlier-date{font-size:8.5pt}.credentials{border-color:#bbb;margin-top:10pt;padding-top:8pt}.credentials ul{margin-top:6pt}.credentials li{margin-bottom:5pt}.credentials a,.listing a,.credential-name{width:auto;min-height:0;padding:0;font-size:9.5pt;line-height:1.4;display:block}.listing p{margin-top:1pt;font-size:8.5pt;line-height:1.4;color:#555!important}.credential-meta{margin-top:1pt;font-size:8.5pt;line-height:1.4}.skills dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:8pt 20pt;margin-top:8pt}.skills dt{margin-bottom:2pt}.earlier .earlier-organization{margin-top:8pt;font-size:10.5pt}.earlier .earlier-summary{max-width:none;margin-top:6pt}a{text-decoration:none}.credentials a:after,.listing a:after,.project-link:after{content:" (" attr(href) ")";overflow-wrap:anywhere;font-size:8pt;color:#555!important}}
