@font-face{font-family:Montserrat Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/montserrat-cyrillic-ext-wght-normal.CO5hGrJv.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/montserrat-cyrillic-wght-normal.EAA9jha_.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/montserrat-vietnamese-wght-normal.k7S-YeeD.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/montserrat-latin-ext-wght-normal.BsZE-iaG.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/montserrat-latin-wght-normal.l_AIctKy.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--background:#f7f5f2;--text:#1e1e1c;--white:#fff;--night:#193550;--panel:#eae7e1;--muted:#575b5d;--line:#d4d2ce;--amber:#fbbf24;--on-night-muted:#c3cfda;--on-night-line:#446078;--control-line:#8197ac;--focus:#805900;--gutter:clamp(1.5rem, 6vw, 7rem);--max-width:90rem}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--background);color:var(--text);margin:0;font-family:Montserrat Variable,Montserrat,system-ui,sans-serif;font-size:1rem;line-height:1.7}a{color:inherit;text-underline-offset:.3em}a:hover{text-decoration-thickness:2px}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.04em;font-weight:450;line-height:1.15}:focus-visible{outline:3px solid var(--focus);outline-offset:6px}.site-header :focus-visible,.hero :focus-visible,.approach :focus-visible,.contact :focus-visible,.site-footer :focus-visible{outline-color:var(--amber)}main:focus{outline:none}section[id]{scroll-margin-top:2rem}.container{width:100%;max-width:var(--max-width);padding-inline:var(--gutter);margin-inline:auto}.skip-link{z-index:10;background:var(--white);color:var(--text);padding:.8rem 1.2rem;position:fixed;top:-6rem;left:1rem}.skip-link:focus{top:1rem}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-header{z-index:2;width:min(1440px,100% - 2*clamp(20px,4.5vw,72px));max-width:1440px;min-height:96px;color:var(--white);justify-content:space-between;align-items:center;gap:32px;margin-inline:auto;padding:0;display:flex;position:absolute;inset:0 0 auto}.wordmark{flex-shrink:0;align-items:center;min-height:44px;display:inline-flex}.wordmark img{width:160px;height:auto}.header-actions{align-items:center;gap:20px;margin-left:auto;display:flex}.desktop-nav{gap:clamp(20px,2.2vw,32px);font-size:13px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.desktop-nav a{padding-block:12px;text-decoration:none}.desktop-nav a:hover{text-underline-offset:6px;text-decoration:underline}.languages{align-items:center;gap:8px;font-size:13px;display:flex}.languages a{color:#ffffffbf;align-items:center;min-height:44px;padding-inline:5px;text-decoration:none;display:inline-flex}.languages [aria-current]{color:var(--white);text-underline-offset:7px;font-weight:600;text-decoration:underline}.languages span{color:#ffffffbf}.mobile-menu{display:none}.hero{isolation:isolate;min-height:min(900px,100svh);color:var(--white);background:var(--night);flex-direction:column;justify-content:center;padding-top:9rem;padding-bottom:11rem;display:flex;position:relative}.hero-scene,.hero-shade{z-index:-1;position:absolute;inset:0}.hero-scene img{object-fit:cover;object-position:center 65%;color:#0000;width:100%;height:100%;font-size:0}.hero-shade{background:linear-gradient(90deg,#0a1c2ecc,#0a1c2e8c 38%,#0a1c2e14 75%),linear-gradient(#0a1c2e33,#0000 70%,#0a1c2e40)}.hero h1{text-wrap:balance;max-width:14.5ch;font-size:clamp(2.7rem,4.5vw,4.8rem);font-weight:450;line-height:1.14}.hero h1 span{display:block}.hero-description{text-wrap:pretty;max-width:32rem;margin-top:1.75rem;font-size:clamp(1rem,1.35vw,1.2rem);line-height:1.7}.hero-actions{flex-wrap:wrap;align-items:center;gap:1rem 2rem;margin-top:2.5rem;display:flex}.button{background:var(--white);min-height:52px;color:var(--text);text-align:center;border:1px solid #0000;justify-content:center;align-items:center;padding:.85rem 1.5rem;font-size:.9rem;font-weight:550;line-height:1.5;text-decoration:none;display:inline-flex}.button:hover{background:var(--background);text-decoration:underline}.text-link{align-items:center;min-height:48px;font-size:.9rem;display:inline-flex}.hero-caption{align-items:center;gap:.65rem;font-size:.6875rem;line-height:1.5;display:flex;position:absolute;bottom:2rem;left:0;right:0}.caption-dot{background:var(--amber);border-radius:50%;flex-shrink:0;width:5px;height:5px}.applications{padding-block:clamp(4rem,7vw,7rem)}.section-label{margin-bottom:1.5rem;font-size:.8rem}.section-intro{grid-template-columns:1.2fr 1fr;align-items:start;gap:4rem;display:grid}h2{text-wrap:balance;font-size:clamp(2rem,3.1vw,3.2rem)}.section-intro p{max-width:30rem;color:var(--muted)}.application-grid{grid-template-columns:1fr 1fr;align-items:start;gap:clamp(2rem,4vw,4rem);margin-top:3.5rem;display:grid}.application-grid article:last-child{margin-top:5rem}.application-image{margin:0}.application-image img{aspect-ratio:6/5;object-fit:cover;background:var(--night);width:100%;height:auto;color:var(--white)}.application-image figcaption{color:var(--muted);padding-top:.65rem;font-size:.625rem}.application-copy{padding-top:1.75rem}h3{font-size:clamp(1.6rem,2.3vw,2.25rem)}.application-copy>p{max-width:35rem;color:var(--muted);margin-top:1.25rem}.application-copy>p.contexts{color:var(--text);border-top:1px solid var(--line);padding-top:1.25rem;font-size:.75rem}.urban-story{padding-block:clamp(3.5rem,6vw,6rem)}.urban-story+.urban-story{border-top:1px solid var(--line)}.urban-story-intro{grid-template-columns:1fr 1fr;align-items:end;gap:clamp(2rem,5vw,5rem);margin-bottom:clamp(2rem,4vw,3.5rem);display:grid}.urban-story-intro h2{max-width:18ch}.urban-story-intro p{max-width:55ch;color:var(--muted)}.urban-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.5rem,3vw,3rem);display:grid}.urban-story--solar .urban-pair{grid-template-columns:1fr}.urban-scene{min-width:0;margin:0}.urban-scene a{display:block}.urban-scene img{aspect-ratio:16/9;background:var(--night);width:100%;height:auto}.urban-scene figcaption{padding-top:1rem}.urban-scene h3{font-size:clamp(1.1rem,1.7vw,1.5rem);line-height:1.3}.urban-scene figcaption p{max-width:62ch;color:var(--muted);margin-top:.6rem;font-size:.875rem}.urban-story-note{color:var(--muted);margin-top:1.5rem;font-size:.65rem}@media (width<=700px){.urban-story-intro,.urban-pair{grid-template-columns:1fr;gap:1.5rem}}.approach{background:var(--night);color:var(--white);padding-block:clamp(4rem,7vw,7rem)}.approach-heading{grid-template-columns:1.2fr 1fr;align-items:start;gap:4rem;display:grid}.approach-heading h2{max-width:17ch}.approach-heading>p{color:var(--on-night-muted)}.approach-grid{grid-template-columns:1.2fr 1fr;align-items:start;gap:4rem;margin-top:4rem;display:grid}.lighting-diagram{border-top:1px solid var(--on-night-line);margin:0;padding-top:1.5rem}.lighting-diagram figcaption{font-size:.875rem}.lighting-diagram svg{width:100%;margin-top:1.25rem;display:block}.diagram-labels{text-align:center;color:var(--on-night-muted);grid-template-columns:3fr 1fr 2fr;gap:.5rem;font-size:clamp(.625rem,1vw,.75rem);display:grid}.diagram-note{color:var(--on-night-muted);max-width:27rem;margin-top:2rem;font-size:.6875rem;line-height:1.6}.criteria-list{margin:0}.criteria-list>div{border-top:1px solid var(--on-night-line);padding:1.25rem 0}.criteria-list dt{font-size:1rem;font-weight:550}.criteria-list dd{color:var(--on-night-muted);margin:.65rem 0 0;font-size:.875rem;line-height:1.8}.project{background:var(--panel);padding-block:clamp(4rem,7vw,7rem)}.project-inner{grid-template-columns:1.2fr 1fr;gap:4rem;display:grid}.project h2{white-space:pre-line}.project p{color:var(--muted);max-width:32rem}.project .text-link{margin-top:1rem}.project-steps{grid-template-columns:repeat(3,1fr);gap:2.5rem;margin:3.5rem 0 0;padding:0;list-style:none;display:grid}.project-steps li{border-top:1px solid var(--line);padding-top:1.5rem}.step-number{color:var(--muted);font-size:.75rem}.project-steps h3{letter-spacing:-.025em;margin-block:1.25rem 1rem;font-size:1.35rem}.project-steps p{font-size:.875rem}.questions{grid-template-columns:.8fr 1.2fr;gap:5rem;padding-block:clamp(4rem,7vw,7rem);display:grid}.questions h2{max-width:12ch}.question-list{border-top:1px solid var(--line)}.question-list details{border-bottom:1px solid var(--line)}.question-list summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1.5rem;min-height:64px;padding-block:1.25rem;font-size:.95rem;font-weight:550;line-height:1.6;list-style:none;display:flex}.question-list summary::-webkit-details-marker{display:none}.question-icon{flex:0 0 14px;height:14px;position:relative}.question-icon:before,.question-icon:after{content:"";background:currentColor;position:absolute}.question-icon:before{width:14px;height:1px;top:6px}.question-icon:after{width:1px;height:14px;left:6px}details[open] .question-icon:after{display:none}.question-list p{color:var(--muted);padding:0 2.5rem 1.5rem 0;font-size:.875rem;line-height:1.8}.contact{background:var(--night);color:var(--white);padding-block:clamp(4rem,7vw,7rem)}.contact-grid{grid-template-columns:.9fr 1.1fr;align-items:start;gap:clamp(3rem,8vw,8rem);display:grid}.contact-intro h2{max-width:12ch;font-size:clamp(2.5rem,4vw,4rem)}.contact-intro>p:not(.section-label){color:var(--on-night-muted);max-width:25rem;margin-top:1.5rem}.contact-intro .text-link{margin-top:2rem}.contact-fields{border:0;min-width:0;margin:0;padding:0}.contact-fields legend{margin-bottom:1.5rem;padding:0;font-size:.9rem}.field-pair{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.field{min-width:0}.contact-fields>.field{margin-top:1.5rem}.field-wide{grid-column:1/-1}.field label{color:var(--on-night-muted);margin-bottom:.6rem;font-size:.75rem;display:block}.field input,.field textarea{border:1px solid var(--control-line);width:100%;min-height:48px;font:inherit;color:var(--white);background:#ffffff0a;border-radius:0;padding:.75rem;font-size:1rem}.field textarea{resize:vertical;min-height:8rem;display:block}.contact-notice{color:var(--on-night-muted);margin:0 0 1.5rem;font-size:.8rem}.contact-fields button{border:1px solid var(--on-night-line);min-height:48px;font:inherit;color:var(--on-night-muted);cursor:not-allowed;text-align:left;background:0 0;margin-top:1.25rem;padding:.75rem 1.25rem;font-size:.8rem}.privacy-link{color:var(--on-night-muted);margin-top:1.25rem;font-size:.7rem;display:block}.contact-optin{grid-template-columns:auto 1fr;align-items:start;gap:.35rem .6rem;margin-top:1.5rem;display:grid}.contact-optin input[type=checkbox]{width:1.25rem;min-width:1.25rem;height:1.25rem;min-height:0;accent-color:var(--amber);margin:.2rem 0 0;padding:0}.contact-optin label{color:var(--white);font-size:.8rem;line-height:1.5}.contact-optin-help{color:var(--on-night-muted);grid-column:2;margin:0;font-size:.75rem;line-height:1.5}.contact-optin-help a{text-underline-offset:.15em;text-decoration:underline}.contact-lab-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.contact-fields button[hidden]{display:none}.contact-fields button:not(:disabled){cursor:pointer}.contact-status{min-height:1.25rem;color:var(--on-night-muted);margin:.9rem 0 0;font-size:.75rem;line-height:1.5}.site-footer{background:var(--night);color:var(--white);border-top:1px solid var(--on-night-line);padding-block:2.5rem}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2rem;font-size:.75rem;line-height:1.7;display:flex}.footer-inner p{color:var(--on-night-muted);margin-top:.5rem}.footer-links{flex-wrap:wrap;gap:.25rem 2rem;display:flex}.footer-links a{align-items:center;min-height:44px;display:inline-flex}.legal-document .site-header{background:var(--night);position:relative}.legal-content{max-width:66rem;padding-block:4rem 6rem}.legal-content h1{margin-block:2rem;font-size:clamp(2.5rem,6vw,4rem)}.legal-intro{color:var(--muted);font-size:1.125rem}.legal-content section{border-top:1px solid var(--line);margin-top:2.5rem;padding-top:2rem}.legal-content h2{text-wrap:initial;font-size:1.4rem}.legal-content section p{color:var(--muted);margin-top:1rem}@media (width>=701px) and (height<=700px){.hero{min-height:700px}}@media (width<=900px){.section-intro,.project-inner,.approach-heading{grid-template-columns:1fr;gap:1.5rem}.approach-grid,.questions{gap:2rem}}@media (width<=700px){.hero{min-height:0;padding-top:8.5rem;padding-bottom:27rem}.hero-scene{height:39rem;top:auto}.hero-scene img{object-position:center bottom}.hero-shade{background:linear-gradient(180deg, var(--night) 0%, var(--night) 32%, #193550e6 43%, #19355000 70%, #0a1c2e4d 100%)}.hero h1{max-width:15ch;font-size:clamp(2.4rem,8.5vw,3.6rem)}.hero-description{max-width:29rem;margin-top:1.5rem}.hero-actions{flex-direction:column;align-items:flex-start;gap:.5rem;margin-top:2rem}.hero-actions .button{min-width:15rem;max-width:100%}.hero-caption{font-size:.65rem;bottom:1.5rem}.application-grid{grid-template-columns:1fr;gap:2.5rem;margin-top:2.5rem}.application-grid article:last-child{margin-top:0}.approach-grid,.project-steps,.questions,.contact-grid{grid-template-columns:1fr}.approach-grid{gap:3rem;margin-top:2.5rem}.project-steps{gap:2rem}.project-steps li{grid-template-columns:2rem 1fr;align-items:baseline;column-gap:1rem;display:grid}.project-steps h3{margin:0 0 1rem}.project-steps p{grid-column:2}.questions h2{max-width:none}.contact-grid{gap:3rem}.field-pair{grid-template-columns:1fr;gap:1.25rem}.contact-intro h2{max-width:none}.site-footer{padding-block:2rem}}@media (width<=760px){.site-header{gap:16px;width:calc(100% - 48px);min-height:84px}.wordmark img{width:140px}.header-actions{gap:12px}.languages{gap:2px;font-size:12px}.languages a{padding-inline:4px}.desktop-nav{display:none}.mobile-menu{display:block}.mobile-menu summary{cursor:pointer;border:1px solid #ffffff8c;min-height:44px;padding:10px 12px;font-size:12px;list-style:none}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-links{z-index:5;border:1px solid var(--on-night-line);background:#193550fa;padding:16px 24px;display:grid;position:absolute;top:100%;left:0;right:0}.mobile-links a{padding-block:12px;text-decoration:none}}@media (width<=380px){.site-header,.header-actions{gap:8px}.wordmark img{width:120px}}@media (width<=360px){.hero h1{font-size:2rem}}.hero,.hero-scene,.hero-scene img,.hero-shade{animation:none}.diagram-pole,.diagram-head,.diagram-beam{opacity:1}@supports (animation-timeline:view()){.lighting-diagram{view-timeline-name:--diagram;view-timeline-axis:block}.diagram-pole,.diagram-head,.diagram-beam{animation-name:diagram-reveal;animation-timing-function:linear;animation-fill-mode:both;animation-timeline:--diagram}.diagram-pole{animation-range:entry 10% cover 30%}.diagram-head{animation-range:entry 20% cover 40%}.diagram-beam{animation-range:cover 25% cover 60%}@keyframes diagram-reveal{0%{opacity:0}to{opacity:1}}}@media (width<=700px){@supports (animation-timeline:view()){.diagram-pole,.diagram-head,.diagram-beam{animation-range:entry cover 30%}}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.diagram-pole,.diagram-head,.diagram-beam{opacity:1;animation:none}}
