:root{--ink:#161514;--paper:#F4EFE9;--green:#C8CDC9;--ochre:#ECD0B0}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:400 18px/1.6 'DM Sans',sans-serif}a{color:inherit;text-underline-offset:5px}header{position:sticky;top:0;z-index:3;background:#f4efe9f5;border-bottom:1px solid #16151426}.bar{max-width:1164px;margin:auto;padding:22px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{font-size:30px;font-weight:500;letter-spacing:-2px;text-decoration:none}nav{display:flex;align-items:center;gap:28px}nav a{text-decoration:none;font-size:15px}.button{display:inline-flex;gap:30px;background:var(--ink);color:var(--paper);border-radius:40px;padding:13px 24px;text-decoration:none;border:0;font:inherit;cursor:pointer}.button:hover{background:#DA8D48;color:#161514}:focus-visible{outline:3px solid #DA8D48;outline-offset:5px}.wrap{max-width:1164px;margin:auto;padding:72px 32px}h1,h2,h3{font-weight:500;line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(44px,6.5vw,86px);max-width:900px;margin:18px 0 30px}h2{font-size:clamp(32px,4vw,48px);margin:0 0 32px}h3{font-size:27px;margin:24px 0 16px}p,li{max-width:66ch}p{margin:0 0 24px}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:12px}.hero{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:32px}.hero h1{font-size:clamp(44px,5.8vw,76px)}.hero svg{width:100%;height:auto}.band:nth-of-type(even){background:var(--green)}.band:nth-of-type(3n){background:var(--ochre)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.grid p{font-size:16px}.grid article{border-top:1px solid #16151470;padding-top:16px}.number{font-size:13px;letter-spacing:.1em}img{display:block;width:100%;height:auto;max-height:650px;object-fit:cover;margin:28px 0}.grid img{aspect-ratio:4/3;object-fit:cover}footer{background:#161514;color:#F4EFE9}footer .wrap{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px;font-size:14px}footer a{display:block;margin-bottom:8px}footer .logo{font-size:42px}label{display:block;margin-bottom:24px}input,select,textarea{display:block;width:100%;padding:14px;border:1px solid #16151470;background:transparent;color:inherit;font:inherit;margin-top:8px;border-radius:0}form{max-width:740px}textarea{min-height:160px}.notice{border-left:3px solid #DA8D48;padding:15px 20px;background:#ECD0B0;margin-bottom:32px}.skip{position:absolute;top:-100px}.skip:focus{top:5px;background:white;z-index:10}.wide{width:100%}ul{padding-left:22px}li{margin-bottom:18px}small{font-size:14px} @media(max-width:760px){.bar{padding:16px;flex-wrap:wrap;gap:12px}nav{gap:16px;flex-wrap:wrap}nav a{font-size:13px}nav .button{padding:8px 14px}.wrap{padding:48px 20px}.hero,.grid,footer .wrap{grid-template-columns:1fr}.hero{gap:20px}.hero svg{max-height:320px}h1{font-size:44px}footer .wrap{gap:24px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
/* Visual system informed by the original OUTLIER website. */
body{background:#f8f5f2;line-height:1.35}header{background:#f8f5f2f5;border:0;position:relative}.bar{max-width:none;padding:24px 4.4%}.logo{font-size:28px;letter-spacing:-1.5px}nav .button{background:transparent;color:var(--ink);padding:0;border-radius:0}nav a:before{content:'•';margin-right:7px}.wrap{max-width:1440px;padding:110px 4.4%}.editorial-hero{min-height:610px;padding:100px 2.5% 100px;display:grid;grid-template-columns:1.65fr 1fr;gap:8%;align-items:center}.editorial-hero h1{font-size:clamp(64px,8.3vw,128px);line-height:.99;letter-spacing:-.065em;margin:0;font-weight:500}.editorial-hero h1 span{display:block}.hero-copy{max-width:340px;justify-self:end;margin-right:5%;font-size:17px;line-height:1.15}.text-link{display:inline-block;text-decoration:none;border-bottom:1px solid #161514;padding:0 0 7px;margin-top:14px}.feature-photo{position:relative;height:780px;overflow:hidden}.feature-photo>img{width:100%;height:100%;max-height:none;margin:0;object-fit:cover}.project-panel{position:absolute;left:14%;bottom:8%;background:#f8f5f2;padding:32px;width:285px}.project-panel h2{font-size:27px;letter-spacing:-.04em;margin-bottom:46px}.project-panel p{font-size:30px;letter-spacing:-.04em}.project-panel p:first-of-type{font-size:18px}.project-panel a{font-size:16px;text-decoration:none}.project-panel hr{border:0;border-top:1px solid #16151430;margin:24px 0}.band:nth-of-type(n){background:transparent;border-bottom:1px solid #16151425}.band .wrap{display:grid;grid-template-columns:1fr 1fr;gap:20px 8%}.band h2{font-size:clamp(44px,5vw,76px);grid-column:1;grid-row:2/8}.band h3,.band p:not(.eyebrow),.band ul{grid-column:2}.band .eyebrow{grid-column:1/-1}.band h3{margin:0}.band p{margin-bottom:28px}.section-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;margin-bottom:64px}.section-heading .eyebrow{grid-column:1/-1}.section-heading h2{font-size:clamp(44px,5vw,76px);margin:0}.section-heading>a{justify-self:end}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px 28px}.project-grid article:last-child{grid-column:1/-1;width:70%;margin:auto}.image-frame{overflow:hidden}.image-frame img{aspect-ratio:4/3;object-fit:cover;margin:0;transition:transform .9s cubic-bezier(.2,.7,.2,1)}.image-frame:hover img{transform:scale(1.035)}.caption{display:flex;justify-content:space-between;align-items:baseline;gap:16px}.caption h3{font-size:24px}.caption span{font-size:14px}.footer-wordmark{font-size:clamp(70px,20.5vw,350px);line-height:1;letter-spacing:-.075em;padding:40px 3% 0;font-weight:500}footer{background:#c8cdc9;color:#161514}footer .wrap{padding-top:60px}footer .button{background:transparent;color:inherit;padding:0}.approach-diagram{max-width:800px;margin:80px auto}.reveal{transition:opacity .8s ease,transform 1s cubic-bezier(.2,.7,.2,1)}.reveal.pending{opacity:0;transform:translateY(35px)}.editorial-hero h1 span{animation:enter 1s both}.editorial-hero h1 span:nth-child(2){animation-delay:.12s}.editorial-hero h1 span:nth-child(3){animation-delay:.24s}@keyframes enter{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@media(max-width:760px){.bar{padding:22px 20px}nav{gap:12px}.editorial-hero{padding:65px 20px 60px;min-height:0;grid-template-columns:1fr;gap:36px}.editorial-hero h1{font-size:clamp(52px,11.8vw,88px)}.hero-copy{justify-self:start;max-width:340px;margin:0;font-size:16px;line-height:1.4}.feature-photo{height:620px}.feature-photo>img{object-position:60% center}.project-panel{left:20px;bottom:24px;width:220px;padding:24px}.project-panel h2{margin-bottom:26px}.project-panel p{font-size:26px}.wrap{padding:65px 20px}.band .wrap{display:block}.band h2{margin-bottom:45px}.band h3{margin-top:30px}.section-heading{display:block}.section-heading>a{margin-top:30px}.project-grid{grid-template-columns:1fr;gap:35px}.project-grid article:last-child{width:100%}.caption{display:block}.caption h3{margin-bottom:8px}.footer-wordmark{font-size:20vw;padding-top:45px}}@media(prefers-reduced-motion:reduce){.reveal,.image-frame img{transition:none}.reveal.pending{opacity:1;transform:none}.editorial-hero h1 span{animation:none}}

.editorial-hero{grid-template-columns:1.8fr 1fr}.editorial-hero h1{font-size:clamp(60px,7.4vw,116px)}.hero-copy{line-height:1.4}.studio-intro{max-width:1050px}.studio-intro h2,.invitation h2{font-size:clamp(42px,5vw,76px)}.studio-intro p{max-width:640px;margin-left:auto}.studio-intro .eyebrow{margin-left:0}.studio-intro>a{margin-left:calc(100% - 640px)}.project-grid article:last-child{grid-column:auto;width:100%}.service-row,.bio-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.service-row:nth-of-type(odd)>div:first-child{order:2}.service-row img{aspect-ratio:4/5;object-fit:cover;margin:0}.bio-grid img{max-height:850px;object-fit:cover;height:auto}.bio-grid{align-items:start}.feature-photo>img{will-change:transform;transform:translateY(var(--photo-y,0px)) scale(1.1)}.project-panel{transform:translateY(var(--panel-y,0px))}.project-panel h2{transform:scale(var(--title-scale,1));transform-origin:left top}.footer-wordmark{transform:scale(var(--footer-scale,1));transform-origin:center bottom;will-change:transform}footer{overflow:hidden}.invitation{border-top:1px solid #16151430}.lead{font-size:23px;max-width:800px}@media(max-width:760px){.editorial-hero{grid-template-columns:1fr}.editorial-hero h1{font-size:11.3vw}.service-row,.bio-grid{grid-template-columns:1fr;gap:32px}.service-row:nth-of-type(odd)>div:first-child{order:0}.studio-intro>a{margin-left:0}.studio-intro p{margin-left:0}.service-row img{aspect-ratio:4/3}}@media(prefers-reduced-motion:reduce){.feature-photo>img,.project-panel,.project-panel h2,.footer-wordmark{transform:none!important;will-change:auto}}

/* Builder partnership revision */
body,header,.project-panel{background:#F4EFE9}.editorial-hero h1{font-size:clamp(55px,6.6vw,106px)}.project-grid a{text-decoration:none}.project-cover{width:100%;max-height:900px;margin:0;object-fit:cover}.project-gallery{display:grid;grid-template-columns:1fr 1fr;gap:28px}.project-gallery img{margin:0;aspect-ratio:3/2;max-height:none}.project-gallery img:nth-child(3){grid-column:1/-1;aspect-ratio:16/9}.headshot{border-radius:50%;aspect-ratio:1!important;width:min(100%,340px)!important;height:auto!important;margin:0 auto!important}.roadmap{display:grid;grid-template-columns:60px 1fr 1.3fr;gap:30px;border-top:1px solid #16151440;padding:45px 0}.roadmap h2{font-size:36px}.roadmap ul{padding-left:20px}.roadmap li{margin-bottom:10px}.roadmap p{font-size:16px}.check{display:flex;gap:12px;align-items:start}.check input{width:22px;flex-shrink:0;margin:4px 0}details{max-width:740px;margin:25px 0}summary{cursor:pointer;font-weight:500}details p{margin-top:18px}button:disabled{cursor:not-allowed;opacity:.55}@media(max-width:760px){.editorial-hero h1{font-size:11vw}.roadmap{grid-template-columns:1fr;gap:12px}.roadmap h2{margin-bottom:12px}.project-gallery{grid-template-columns:1fr}.project-gallery img:nth-child(3){grid-column:auto}.headshot{width:230px!important}}

.hybrid-model{display:grid;grid-template-columns:1fr 1.5fr;gap:5%;align-items:center;padding-top:0}.hybrid-model svg{width:100%;height:auto}.model-controls button{width:100%;background:none;border:0;border-top:1px solid #16151440;padding:24px 0;text-align:left;font:500 21px 'DM Sans',sans-serif;cursor:pointer;color:#161514}.model-controls button span{font-size:13px;margin-right:22px}.model-controls button[aria-pressed=true]{color:#435e64}.model-controls h2{font-size:32px;margin-top:28px}.model-note{font-size:13px;opacity:.7}.roof-layer,.insulation,.airflow,.sun-path{transition:transform 1s ease,opacity .7s ease}.insulation,.airflow,.sun-path{opacity:0}.hybrid-model[data-layer=envelope] .roof-layer{transform:translateY(-45px)}.hybrid-model[data-layer=envelope] .insulation{opacity:1}.hybrid-model[data-layer=air] .roof-layer{transform:translateY(-65px);opacity:.14}.hybrid-model[data-layer=air] .airflow{opacity:1}.hybrid-model[data-layer=air] .fresh,.hybrid-model[data-layer=air] .extract{stroke-dasharray:12 10;animation:air 3s linear infinite}.hybrid-model[data-layer=solar] .sun-path{opacity:1}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.principles h2{font-size:34px}@keyframes air{to{stroke-dashoffset:-88}}@media(max-width:760px){.hybrid-model,.principles{grid-template-columns:1fr}.hybrid-model svg{grid-row:1}.hybrid-model{gap:24px}.principles{gap:35px}}@media(prefers-reduced-motion:reduce){.roof-layer,.insulation,.airflow,.sun-path{transition:none}.airflow path{animation:none!important}}

/* Design-led refinement */
.editorial-hero h1{font-size:clamp(56px,6.8vw,110px)}.roadmap-step{border-top:1px solid #16151435;padding:0;transition:background .6s}.roadmap-step h2{margin:0}.roadmap-toggle{display:grid;grid-template-columns:65px 1fr 30px;align-items:center;gap:20px;width:100%;padding:35px 20px;background:none;border:0;color:inherit;text-align:left;font:500 clamp(25px,3vw,42px)/1.15 'DM Sans',sans-serif;letter-spacing:-.04em;cursor:pointer}.stage-icon{font-size:28px}.stage-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .55s cubic-bezier(.2,.7,.2,1),opacity .4s;opacity:0}.stage-inner{overflow:hidden;margin:0 65px 0 105px}.stage-inner ul{columns:2;column-gap:40px;margin:0 0 24px}.stage-inner li{break-inside:avoid;font-size:18px}.stage-inner p{padding-bottom:32px;margin:0;max-width:800px}.roadmap-step.is-open{background:#82969b12}.roadmap-step.is-open .stage-panel{grid-template-rows:1fr;opacity:1}.roadmap-step.is-open .stage-icon{transform:rotate(45deg)}.stage-icon{transition:transform .4s}@media(max-width:760px){.editorial-hero h1{font-size:10.6vw}.roadmap-toggle{grid-template-columns:32px 1fr 22px;padding:26px 8px;gap:12px}.stage-inner{margin:0 20px 0 52px}.stage-inner ul{columns:1}.stage-inner li{font-size:16px}}@media(prefers-reduced-motion:reduce){.roadmap-step,.stage-panel,.stage-icon{transition:none!important}}

.project-title h1{max-width:1100px}.project-title>.eyebrow{margin-top:50px}.project-editorial{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr);gap:12%;align-items:start}.project-editorial p{line-height:1.6}.project-editorial>div>p:first-of-type{line-height:1.2}.project-facts{border-top:1px solid #16151440;padding-top:32px;position:sticky;top:30px}.rating-graphic{position:relative;max-width:230px;margin:0 auto 15px}.rating-graphic svg{width:100%;display:block}.rating-graphic strong{position:absolute;bottom:0;left:0;right:0;text-align:center;font-size:54px;font-weight:500;letter-spacing:-.05em}.rating-graphic small{font-size:20px}.fact-label{text-align:center;font-size:14px}.project-facts dt{font-size:12px;text-transform:uppercase;letter-spacing:.1em;margin-top:24px}.project-facts dd{margin:7px 0;font-size:22px}.project-facts .evidence-note{font-size:12px;line-height:1.5;border-top:1px solid #16151430;padding-top:18px;margin-top:28px}.project-gallery figure{margin:0}.project-gallery figure img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.project-gallery figcaption{font-size:13px;margin-top:12px}.film-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.film-grid a{padding:40px;background:#82969b22;text-decoration:none;display:block;transition:background .3s}.film-grid a:hover{background:#82969b44}.play-mark{display:block;font-size:26px;margin-bottom:35px}.film-grid h3{font-size:30px}.film-grid a>span:last-child{font-size:14px}.confirmed{object-fit:cover!important;object-position:50% 22%!important;height:340px!important;width:340px!important}.resource-card{background:#82969b22;padding:45px;display:grid;grid-template-columns:1.5fr 1fr;gap:45px;align-items:center}.resource-card h2{margin-bottom:24px}@media(max-width:760px){.project-editorial{grid-template-columns:1fr;gap:45px}.project-facts{position:static}.film-grid,.resource-card{grid-template-columns:1fr}.confirmed{width:250px!important;height:250px!important}.film-grid a{padding:26px}.resource-card{padding:25px}} 

html:not(.roadmap-ready) .stage-panel{grid-template-rows:1fr;opacity:1}.confirmed{object-position:50% 25%!important}
.hybrid-model{max-width:none;padding-left:4.4%;padding-right:0;grid-template-columns:minmax(280px,.8fr) minmax(0,1.7fr);gap:4%;align-items:start}.model-controls{padding-top:35px}.render-scene{position:sticky;top:35px;aspect-ratio:3/2;overflow:hidden;background:#F4EFE9;border-radius:3px}.render-scene>img{width:100%;height:100%;max-height:none;object-fit:contain;margin:0;transition:transform 1.4s cubic-bezier(.22,.61,.36,1);transform-origin:center center}.render-guides{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.render-guides path{fill:none;opacity:0;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;transition:opacity .65s}.envelope-guide{stroke:#DA8D48;stroke-dasharray:6 12}.air-guide{stroke:#82969B;stroke-dasharray:9 10}.solar-guide{stroke:#DA8D48;stroke-dasharray:12 16}.render-callout{position:absolute;z-index:1;font-size:10px;letter-spacing:.09em;line-height:1.4;padding:9px 12px;background:#F4EFE9ed;border:1px solid #16151424;opacity:0;transform:translateY(8px);transition:opacity .6s,transform .6s;max-width:210px}.render-callout span{display:inline-block;width:6px;height:6px;background:#DA8D48;border-radius:50%;margin-right:8px}.envelope-callout{right:5%;bottom:12%}.air-callout{right:8%;top:7%}.solar-callout{left:5%;bottom:6%}.hybrid-model[data-layer=envelope] .envelope-callout,.hybrid-model[data-layer=air] .air-callout,.hybrid-model[data-layer=solar] .solar-callout{opacity:1;transform:none}.hybrid-model[data-layer=envelope] .envelope-guide,.hybrid-model[data-layer=air] .air-guide,.hybrid-model[data-layer=solar] .solar-guide{opacity:.8}.hybrid-model[data-layer=air] .air-guide,.hybrid-model[data-layer=solar] .solar-guide{animation:air 4s linear infinite}.model-controls button{font-size:clamp(18px,1.7vw,25px)}@media(max-width:760px){.hybrid-model{grid-template-columns:1fr;padding:15px 20px 50px;gap:5px}.render-scene{grid-row:1;position:relative;top:0}.model-controls{padding-top:0}.render-callout{font-size:8px;padding:5px 7px;max-width:155px}.render-guides path{stroke-width:4}}@media(prefers-reduced-motion:reduce){.render-scene>img,.render-callout,.render-guides path{transition:none!important;animation:none!important}}

.portrait-circle{width:340px;height:340px;border-radius:50%;overflow:hidden;margin:0 auto}.portrait-circle .confirmed{border-radius:0;transform:scale(1.4);transform-origin:50% 58%}@media(max-width:760px){.portrait-circle{width:250px;height:250px}}
/* November refinement: intentional hierarchy, real project evidence, scroll motion. */
.editorial-hero{grid-template-columns:minmax(0,1.9fr) minmax(260px,.8fr);gap:4%;padding-top:90px;min-height:590px}
.editorial-hero h1{font-size:clamp(45px,6.9vw,116px);width:max-content;max-width:100%;text-align:center;line-height:1.04}
.editorial-hero h1 span{white-space:nowrap}
.feature-photo>img{height:calc(100% + 180px);position:absolute;top:-90px;transform:translate3d(0,var(--photo-y,0px),0) scale(1.035);will-change:transform}
.invitation .text-link{font-size:clamp(20px,2vw,30px);font-weight:500;padding:18px 0;border-bottom-width:2px;display:inline-flex;align-items:center;gap:34px}
.cta-arrow,nav .button span{display:inline-block;transition:transform .3s}
.text-link:hover .cta-arrow,.text-link:focus-visible .cta-arrow,nav .button:hover span,nav .button:focus-visible span{transform:translate(5px,-5px)}
nav .button{border:1px solid currentColor!important;padding:12px 22px!important;border-radius:30px!important}
nav .button:before{content:none}.footer-wordmark{white-space:nowrap;display:flex;justify-content:center;overflow:visible}.footer-stop{display:inline-block;transform:translateY(var(--stop-y,0px));color:inherit}
.panel-feature{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:7%}.panel-feature figure{margin:0}.panel-feature img{max-height:540px;object-fit:contain;margin:0}.panel-feature figcaption{font-size:12px;color:#555}.related-note{margin-top:55px;padding-top:30px;border-top:1px solid #16151440}
.film-grid a{padding:0 0 24px;background:transparent;border-bottom:1px solid #16151455}.film-grid a:hover{background:transparent}.film-image{position:relative;overflow:hidden}.film-image img{margin:0;aspect-ratio:16/9;object-fit:cover;transition:transform .6s}.film-grid a:hover img{transform:scale(1.04)}.film-image .play-mark{position:absolute;left:24px;bottom:24px;margin:0;width:56px;height:56px;border-radius:50%;background:#f8f5f2;display:grid;place-items:center;font-size:19px;padding-left:3px}.film-grid h3{font-size:28px;margin:24px 0 18px}
.pathway{background:#e2e7e5;max-width:none}.pathway-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:40px 0 30px}.pathway-choices button{font:inherit;text-align:left;background:transparent;border:1px solid #16151450;padding:25px;cursor:pointer;transition:background .3s,color .3s}.pathway-choices button[aria-pressed=true]{background:#161514;color:#f8f5f2}.pathway-choices span{display:block;font-size:12px;margin-bottom:30px}.pathway-choices strong{display:block;font-size:clamp(22px,3vw,40px);font-weight:500}.pathway-choices small{display:block;margin-top:10px;max-width:23ch}.pathway-summary{max-width:800px;min-height:145px}.pathway-summary h3{margin-top:0}.pathway-table{overflow:auto;margin:30px 0}.pathway-table table{border-collapse:collapse;width:100%;font-size:15px;min-width:560px}.pathway-table th,.pathway-table td{padding:16px 12px;border-bottom:1px solid #16151425;text-align:left}.pathway-table td.is-selected{background:#ffffff90}.pathway-table caption{text-align:left;font-size:12px;padding-bottom:18px}
.case-study-animation{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.5fr);gap:5%;align-items:start;padding-top:20px;padding-bottom:0}.case-visual{grid-column:2;grid-row:1;position:sticky;top:32px;align-self:start}.case-narrative{grid-column:1;grid-row:1}.case-step{min-height:78vh;display:flex;flex-direction:column;justify-content:center;scroll-margin-top:60px;padding:40px 0}.case-step h2{font-size:clamp(32px,3.7vw,54px)}.case-step p{line-height:1.55}.case-step .drawing-note{font-size:14px;line-height:1.55;color:#56524e}.case-toolbar{display:flex;justify-content:space-between;border-bottom:1px solid #16151440;padding:14px 0;font-size:10px;letter-spacing:.1em}.case-canvas{position:relative;height:min(60vh,600px);background:#eeece8;overflow:hidden;margin-top:20px}.case-canvas>img,.case-section,.case-air{position:absolute;inset:0;width:100%;height:100%;margin:0;transition:opacity .8s,transform 1.2s}.case-photo{object-fit:cover!important;max-height:none!important}.case-section,.case-air{opacity:0;background:#fff;display:flex;align-items:center}.case-section>img,.case-air>img{margin:0;max-height:none;object-fit:contain;width:100%;height:100%}.case-section svg{position:absolute;inset:0;width:100%;height:100%}.thermal-trace{fill:#d9904520;stroke:#bd6d29;stroke-width:4;stroke-dasharray:100;stroke-dashoffset:100;transition:stroke-dashoffset 1.8s;opacity:0}.sun-rays{opacity:0;transition:opacity .8s}.sun-rays circle{fill:#dfb15f}.sun-rays path{stroke:#dfb15f;stroke-width:12;fill:none;stroke-dasharray:15 9;opacity:.65}.ceiling-label,.sun-label,.hrv-label{position:absolute;bottom:12px;left:16px;font-size:9px;letter-spacing:.08em;padding:8px;background:#f8f5f2ee;opacity:0}.hrv-marker{position:absolute;left:76%;top:92%;border:2px solid #bd6d29;border-radius:50%;height:23px;width:23px;transform:translate(-50%,-50%)}
[data-scene="1"] .case-photo,[data-scene="2"] .case-photo,[data-scene="3"] .case-photo{opacity:0;transform:scale(1.06)}
[data-scene="1"] .case-section,[data-scene="3"] .case-section,[data-scene="2"] .case-air{opacity:1}
[data-scene="1"] .thermal-trace{stroke-dashoffset:0;opacity:1}
[data-scene="1"] .ceiling-label,[data-scene="3"] .sun-label,[data-scene="2"] .hrv-label,[data-scene="3"] .sun-rays{opacity:1}
[data-scene="3"] .sun-rays path{stroke-dashoffset:var(--sun-offset,0)}
.scene-nav{display:flex;gap:0;margin-top:16px;justify-content:space-between}.scene-nav a{font-size:12px;text-decoration:none;padding:10px 0;border-bottom:2px solid transparent}.scene-nav a[aria-current=step]{border-color:#161514}.drawing-caption{font-size:10px;line-height:1.5;color:#625e59;margin-top:18px}.scroll-cue{font-size:13px;margin-top:20px}.scroll-cue span{display:inline-block;margin-left:10px}.case-step .text-link{align-self:flex-start}
@media(max-width:900px){.editorial-hero{grid-template-columns:1fr;gap:40px;padding:60px 5%;min-height:0}.editorial-hero h1{font-size:8.7vw;justify-self:center}.hero-copy{justify-self:center;max-width:560px;margin:0;line-height:1.4}.panel-feature{grid-template-columns:1fr}.pathway-choices{gap:8px}.pathway-choices button{padding:16px}.pathway-choices strong{font-size:22px}.case-study-animation{grid-template-columns:1fr;padding:0 20px}.case-visual{grid-column:1;grid-row:1;top:0;z-index:2;background:#f8f5f2;padding-bottom:6px}.case-canvas{height:34vh;min-height:210px;margin-top:8px}.case-toolbar{padding:10px 0}.case-narrative{grid-column:1;grid-row:2}.case-step{min-height:70vh;scroll-margin-top:48vh;padding:55px 0 80px}.drawing-caption{font-size:9px;margin:8px 0;max-width:none}.scene-nav{margin:0}.case-step h2{font-size:38px}.case-step p{max-width:60ch}.case-visual{margin-bottom:0}}
@media(max-width:480px){.pathway-choices{grid-template-columns:1fr}.pathway-choices button{display:grid;grid-template-columns:30px 1fr;gap:5px 12px}.pathway-choices span{grid-row:1/3;margin:0;padding-top:6px}.pathway-choices small{max-width:none;margin-top:0}.feature-photo{height:550px}.editorial-hero h1{font-size:8.5vw}.invitation .text-link{gap:15px;font-size:21px}.scene-nav a{font-size:11px}}
@media(prefers-reduced-motion:reduce){.feature-photo>img{transform:none!important}.footer-wordmark,.footer-stop{transform:none!important}.case-canvas *,.cta-arrow,.film-image img{transition:none!important;animation:none!important}.thermal-trace{stroke-dashoffset:0!important}}
.client-quote{margin:0 0 90px;padding:45px 0;border-top:1px solid #16151440;border-bottom:1px solid #16151440;max-width:950px}.client-quote>p{font-size:clamp(30px,4vw,52px);line-height:1.15;letter-spacing:-.04em}.client-quote footer{background:transparent;color:inherit;font-size:14px}.client-quote small{font-size:11px}.scene-nav a:before{content:none}
.coverage-label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid #16151420;padding:15px 0}
.application-embed{max-width:860px;margin:50px auto 0}.application-embed iframe{display:block;width:100%;height:2200px;border:0;background:white}.form-fallback{font-size:13px;margin-top:24px}
.hrv-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.sun-rays rect{fill:#dfb15f;opacity:.2}.sun-rays path{stroke:#bd6d29;stroke-width:4;stroke-dasharray:8 5;opacity:.7}

/* Keyboard and touch access */
:focus-visible{outline:3px solid #435e64;outline-offset:5px}
main:focus{outline:none}
.skip:focus{position:fixed;left:15px;top:10px;padding:10px 15px;z-index:20;background:#fff;color:#161514}
nav a{min-height:44px;display:inline-flex;align-items:center}
.text-link{min-height:44px;padding-top:10px;padding-bottom:10px}
body>footer .wrap a{min-height:32px;padding-top:5px;padding-bottom:5px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Signature-inspired wordmark: one short sequence, then a legible resting state. */
.footer-wordmark{transform:none!important;position:relative}.footer-stop{color:inherit!important;transform:none}.signature-play .footer-wordmark>span:first-child{animation:signature-letters 4.6s ease-in-out both}.signature-play .footer-stop{animation:signature-dot 4.6s cubic-bezier(.4,0,.2,1) both}
@keyframes signature-letters{0%,14%{opacity:1}30%,68%{opacity:0}100%{opacity:1}}
@keyframes signature-dot{0%,15%,100%{transform:translate(0,0)}35%{transform:translate(-2.7em,-.18em)}48%{transform:translate(-2.2em,-.58em)}60%{transform:translate(-1.45em,-.12em)}75%{transform:translate(-.7em,-.4em)}90%{transform:translate(0,0)}}
@media(prefers-reduced-motion:reduce){.signature-play .footer-wordmark>span{animation:none!important;transform:none!important;opacity:1!important}}

/* Current-page wayfinding remains visible without relying on hover. */
header nav a[aria-current=page]:not(.button){text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
@media(hover:hover){.text-link:hover{color:#435e64}.project-grid a:focus-visible .image-frame{outline:2px solid #435e64;outline-offset:4px}}

.project-sections{display:flex;flex-wrap:wrap;gap:8px 25px;margin:32px 0 0;padding-top:18px;border-top:1px solid #16151435}
.project-sections a{font-size:13px;text-decoration:none;border-bottom:1px solid transparent}.project-sections a:before{content:none}.project-sections a:hover,.project-sections a:focus-visible{border-bottom-color:currentColor}
.project-editorial,.project-films,.project-gallery,#performance-report{scroll-margin-top:35px}

.readable{max-width:960px}.readable h2{font-size:30px;margin-top:45px}.readable p{max-width:68ch}
.report-preview{display:block!important;width:170px!important;height:auto!important;margin:0 0 24px!important;box-shadow:10px 12px 20px #16151426;transform:rotate(-3deg)}
.education-feature{background:#e5e8e2;padding-top:65px;padding-bottom:65px}.education-feature .text-link{font-size:22px;font-weight:600}
.related-business{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding-top:75px;padding-bottom:75px;border-bottom:1px solid #16151425}.related-business h2{font-size:clamp(38px,5vw,68px)}.related-business p{font-size:18px;line-height:1.65}.related-business .supply-note{font-size:14px}.related-business .text-link{font-weight:600}
.footer-application{font-size:20px!important;line-height:1.4}.footer-stop{color:inherit!important}
@media(max-width:650px){.related-business{display:block}.report-preview{width:135px!important}.readable h2{font-size:27px}}

.signature-play .footer-wordmark>span:first-child{animation:signature-letters 4.8s ease-in-out both}
.signature-play .footer-stop{animation:signature-dot 4.8s linear both}
@keyframes signature-letters{0%,20%{opacity:1}48%,88%{opacity:0}100%{opacity:1}}
@keyframes signature-dot{0%,20%,100%{transform:translate(0,0);opacity:1;box-shadow:none}48%{transform:translate(-2.1em,0);opacity:1;box-shadow:-.07em 0 currentColor}56%{transform:translate(-2.1em,0);box-shadow:-.07em 0 currentColor,-.07em .07em currentColor,0 .07em currentColor}66%{transform:translate(-1.65em,-.38em);box-shadow:none}76%{transform:translate(-.6em,-.30em)}86%{transform:translate(.5em,0);opacity:0}90%{transform:translate(0,0);opacity:0}}

@media(max-width:650px){header .bar{position:relative;padding:20px 20px 15px;gap:20px}header .bar nav{width:100%;gap:17px;padding-right:0}header .bar nav a{font-size:12px}header .bar nav .button{position:absolute;right:20px;top:18px;padding:8px 14px!important;font-size:13px;gap:18px}}

.footer-stop{position:relative}
.signature-play .footer-stop::before{content:"";position:absolute;width:.035em;height:.035em;left:-.07em;bottom:.10em;border-radius:50%;background:currentColor;box-shadow:0 -.07em currentColor,.07em -.07em currentColor;animation:signature-split 4.8s linear both;pointer-events:none}
@keyframes signature-split{0%,46%,64%,100%{opacity:0}51%,59%{opacity:1}}
@keyframes signature-dot{0%,20%,100%{transform:translate(0,0);opacity:1}48%,56%{transform:translate(-2.1em,0);opacity:1}66%{transform:translate(-1.65em,-.38em)}76%{transform:translate(-.6em,-.30em)}86%{transform:translate(.5em,0);opacity:0}90%{transform:translate(0,0);opacity:0}}
@media(prefers-reduced-motion:reduce){.signature-play .footer-stop::before{display:none}}

/* Restored original short signature sequence. */
.signature-play .footer-wordmark>span:first-child{animation:signature-letters-restored 4.6s ease-in-out both}
.signature-play .footer-stop{animation:signature-dot-restored 4.6s cubic-bezier(.4,0,.2,1) both;box-shadow:none!important;color:inherit}
.signature-play .footer-stop::before{display:none}
@keyframes signature-letters-restored{0%,14%{opacity:1}30%,68%{opacity:0}100%{opacity:1}}
@keyframes signature-dot-restored{0%,15%,100%{transform:translate(0,0)}35%{transform:translate(-2.7em,-.18em)}48%{transform:translate(-2.2em,-.58em)}60%{transform:translate(-1.45em,-.12em)}75%{transform:translate(-.7em,-.4em)}90%{transform:translate(0,0)}}
.home-panel{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding-top:70px;padding-bottom:70px;align-items:start;max-width:1600px}
.home-panel .eyebrow{margin-bottom:22px}.home-panel h2{font-size:clamp(36px,4.3vw,60px);margin:0;display:flex;gap:25px;align-items:baseline}.home-panel h2 span{font-size:25px;font-weight:400}.home-panel>div:last-child{padding-top:36px}.home-panel p{font-size:18px;line-height:1.6;max-width:48ch}.home-panel .supply-note{font-size:14px;color:#57534e}
.education-feature{display:grid;grid-template-columns:1fr 1fr;gap:8%;background:#e5e8e2;max-width:none;padding-top:90px;padding-bottom:90px}.education-feature h2{font-size:clamp(37px,4.3vw,64px);line-height:1.1}.education-feature>div:last-child{padding-top:42px}.education-feature p{font-size:18px;line-height:1.65;max-width:48ch}
@media(max-width:760px){.home-panel,.education-feature{grid-template-columns:1fr;gap:20px}.home-panel>div:last-child,.education-feature>div:last-child{padding-top:0}}
@media(prefers-reduced-motion:reduce){.signature-play .footer-wordmark>span{animation:none!important;opacity:1!important;transform:none!important}}
