@font-face{font-family:Manrope;src:url('media/manrope-regular.ttf');font-weight:400 600;font-display:swap}@font-face{font-family:Manrope;src:url('media/manrope-bold.ttf');font-weight:700 900;font-display:swap}
:root{--orange:#f2461c;--ink:#171819;--paper:#f4f3ef;--muted:#a1a2a2;--line:#ffffff24;--gutter:clamp(22px,5vw,88px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--ink);color:var(--paper);font-family:Manrope,Arial,sans-serif;font-size:15px;line-height:1.6}body:has(.nav.open){overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:6px}button{color:inherit}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:500;letter-spacing:-.055em;line-height:1.05}h1{font-size:clamp(54px,7.9vw,126px)}h2{font-size:clamp(36px,4.6vw,76px)}h3{font-size:clamp(24px,2.3vw,35px)}p{max-width:65ch}em{font-style:normal;color:var(--orange)}.muted{color:var(--muted)}.eyebrow{display:block;font-size:10px;text-transform:uppercase;letter-spacing:2px;margin-bottom:26px;font-weight:700}.eyebrow:before{content:'';width:6px;height:6px;display:inline-block;background:var(--orange);margin-right:12px}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:16px 23px;border:1px solid transparent;background:var(--orange);color:white;font-size:12px;font-weight:700;transition:background .25s,transform .25s}.btn:hover{background:#d93e19;transform:translateY(-2px)}.btn.outline{background:transparent;border-color:#ffffff54}.btn.outline:hover{background:#ffffff12}.btn.light{background:var(--paper);color:var(--ink)}.btn.dark{background:var(--ink);color:white}.actions{display:flex;gap:12px;flex-wrap:wrap}.text-link{font-size:12px;display:inline-flex;gap:30px;align-items:center;border-bottom:1px solid currentColor;padding:6px 0}.site-header{height:90px;padding:0 var(--gutter);display:flex;justify-content:space-between;align-items:center;position:relative;z-index:80;background:#171819;border-bottom:1px solid var(--line)}.brand{display:flex;gap:13px;align-items:center}.brand img{width:72px;height:49px;object-fit:contain}.brand span{font-size:11px;line-height:1.5;letter-spacing:1px}.brand small{display:block;color:var(--muted);font-size:8px;letter-spacing:1.5px}.nav{display:flex;gap:25px;align-items:center;font-size:11px}.nav a{transition:color .2s}.nav a:hover,.nav a[aria-current=page]{color:var(--orange)}.nav .btn{padding:12px 18px;color:white}.menu-button{display:none}.skip-link{position:absolute;top:-80px;left:15px;padding:15px;background:white;color:black;z-index:150}.skip-link:focus{top:10px}.preview-strip{padding:7px var(--gutter);background:#242526;font-size:9px;letter-spacing:.8px;display:flex;justify-content:space-between;gap:20px;color:#c2c2c2}.preview-strip a{text-decoration:underline}.cinema{height:max(740px,calc(100svh - 122px));max-height:1100px;position:relative;isolation:isolate;overflow:hidden;background:#101113}.cinema canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1}.cinema:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#08090b99,transparent 70%),linear-gradient(0deg,#08090bc9,transparent 60%);z-index:-1;pointer-events:none}.cinema-room{position:absolute;inset:0;z-index:-2;opacity:0;transition:opacity 1.4s;background:linear-gradient(90deg,#090a0cc9,#090a0c15),url('media/interior-detail.jpg') center/cover}.cinema.ended .cinema-room{opacity:1;z-index:-1}.cinema.ended canvas{opacity:0;transition:opacity 1s}.cinema.ended .cinema-room:after{content:'';position:absolute;inset:0;background:#0002}.hero-content{padding:clamp(40px,7vh,90px) var(--gutter);height:100%;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none}.hero-content a,.hero-content button{pointer-events:auto}.hero-title{max-width:950px;margin-bottom:25px;line-height:.97}.hero-title span{display:block}.hero-title .stroke{color:transparent;-webkit-text-stroke:1px #ffffffa8}.hero-bottom{display:flex;justify-content:space-between;align-items:end;gap:30px}.hero-bottom p{font-size:13px;max-width:380px;color:#c9c9c9;line-height:1.8}.hero-index{font-size:10px;text-transform:uppercase;letter-spacing:1.5px}.hero-index b{display:block;color:var(--orange);font-size:12px;letter-spacing:2px}.intro-controls{position:absolute;right:var(--gutter);top:26px;display:flex;gap:8px;z-index:3}.intro-controls button{background:#101113b3;border:1px solid #ffffff50;font-size:10px;padding:9px 13px;backdrop-filter:blur(10px)}.intro-progress{height:2px;background:#ffffff22;position:absolute;bottom:0;left:0;right:0}.intro-progress span{display:block;background:var(--orange);height:100%;width:0}.scene-caption{position:absolute;right:var(--gutter);bottom:125px;font-size:9px;color:#ccc;max-width:210px;text-align:right}.intro-emblem{position:absolute;width:210px;top:35%;left:67%;transform:translate(-50%,-50%);opacity:0;pointer-events:none}.intro-emblem img{width:100%;box-shadow:0 20px 100px #f2461c26}.cinema.mark .intro-emblem{opacity:1;transition:opacity .7s}.cinema.ended .intro-emblem{opacity:0}.ticker{display:flex;justify-content:space-between;padding:27px var(--gutter);font-size:9px;letter-spacing:1px;border-bottom:1px solid var(--line);gap:20px}.ticker span:before{content:'+';color:var(--orange);margin-right:12px}.section{padding:110px var(--gutter)}.section.light{background:var(--paper);color:var(--ink);--line:#17181922;--muted:#646665}.section.gray{background:#232426}.section-head{display:grid;grid-template-columns:1.2fr 1fr;gap:12%;align-items:end;margin-bottom:50px}.section-head h2{margin:0}.section-head p{margin-bottom:0;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.service-tile{min-height:430px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:35px;background:#292a2b}.service-tile img{position:absolute;inset:0;object-fit:cover;width:100%;height:100%;z-index:0;transition:transform .9s cubic-bezier(.2,.7,.2,1)}.service-tile:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#050608e6,transparent 85%)}.service-tile:hover img{transform:scale(1.045)}.service-tile>*:not(img){z-index:1;position:relative}.service-tile .tile-no{font-size:10px;letter-spacing:1px;display:flex;justify-content:space-between}.service-tile h3{font-size:38px;margin:0 0 15px;max-width:430px}.service-tile p{font-size:12px;color:#ccc;max-width:380px}.service-tile .tile-arrow{position:absolute;right:32px;bottom:34px;border:1px solid #ffffff50;width:45px;height:45px;display:grid;place-items:center}.service-tile small{font-size:8px;color:#ccc;display:block;margin-top:25px}.service-list{margin-top:40px;border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:45px 1fr 1fr 25px;gap:25px;padding:25px 0;border-bottom:1px solid var(--line);align-items:center}.service-row h3{margin:0;font-size:25px}.service-row p{margin:0;color:var(--muted);font-size:12px}.service-row>span{font-size:11px}.split-feature{display:grid;grid-template-columns:1fr 1fr;min-height:650px}.split-feature figure{margin:0;position:relative;min-height:500px;overflow:hidden}.split-feature figure img{width:100%;height:100%;position:absolute;object-fit:cover}.split-feature figcaption,.photo-caption{position:absolute;bottom:16px;left:20px;color:white;background:#0008;padding:5px 10px;font-size:9px;max-width:calc(100% - 40px)}.split-copy{padding:80px 12%;display:flex;flex-direction:column;justify-content:center}.split-copy p{color:var(--muted);font-size:13px}.split-copy .text-link{align-self:start;margin-top:20px}.process{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.process article{padding-top:26px;border-top:1px solid var(--line)}.process .step{color:var(--orange);font-size:11px}.process h3{font-size:26px;margin:30px 0 15px}.process p{color:var(--muted);font-size:13px}.large-word{font-size:clamp(70px,17vw,250px);line-height:1;letter-spacing:-.075em;margin:0;text-align:center;font-weight:700;color:#ffffff07;white-space:nowrap;overflow:hidden}.region-line{display:flex;justify-content:space-between;padding:30px 0;border-top:1px solid var(--line);font-size:12px}.contact-band{display:grid;grid-template-columns:1.4fr 1fr;gap:8%;background:var(--orange);padding:85px var(--gutter);color:white}.contact-band .eyebrow:before{background:white}.contact-band h2{margin-bottom:0}.contact-band .contact-data{display:flex;flex-direction:column;justify-content:center;gap:20px}.contact-data>a:first-child{font-size:clamp(22px,2.7vw,43px);letter-spacing:-1px}.footer{padding:65px var(--gutter) 25px;background:#101112}.footer-top{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:50px;padding-bottom:55px}.footer-top p,.footer-top a{font-size:11px;color:#a8a8a8}.footer-top .brand{margin-bottom:25px}.footer-links{display:flex;flex-direction:column;gap:10px}.footer-top h3{font-size:13px;letter-spacing:0}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;font-size:9px;color:#777;display:flex;justify-content:space-between;gap:20px}.page-hero{padding:65px var(--gutter) 75px;background:#1d1e20;position:relative;overflow:hidden}.page-hero:after{content:'';position:absolute;height:280px;width:280px;border:1px solid #f2461c33;transform:rotate(45deg);right:-170px;top:100px;pointer-events:none}.breadcrumb{font-size:9px;color:var(--muted);margin-bottom:45px}.breadcrumb a{text-decoration:underline}.page-hero h1{font-size:clamp(48px,6.5vw,100px);max-width:1000px;margin-bottom:28px}.page-hero p{max-width:600px;color:#b1b1b1;font-size:14px}.page-hero .actions{margin-top:30px}.content-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:12%}.content-grid p{color:var(--muted);font-size:14px}.info-panel{border:1px solid var(--line);padding:35px;align-self:start}.info-panel h3{font-size:26px}.bullet-list{padding:0;list-style:none}.bullet-list li{border-bottom:1px solid var(--line);padding:15px 0;font-size:13px}.bullet-list li:before{content:'↗';color:var(--orange);margin-right:15px}.subnav{display:flex;gap:25px;border-bottom:1px solid var(--line);padding:20px var(--gutter);font-size:11px;overflow:auto;white-space:nowrap}.subnav a:hover{color:var(--orange)}.faq{max-width:950px;margin:auto}details{border-bottom:1px solid var(--line);padding:22px 0}summary{cursor:pointer;font-size:17px}details p{padding-top:20px;color:var(--muted);font-size:13px}.form-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:9%}.form-layout aside p{font-size:13px;color:var(--muted)}form{max-width:900px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}label{display:flex;flex-direction:column;gap:8px;font-size:11px;font-weight:700}.full{grid-column:1/-1}input,textarea,select{width:100%;border:1px solid #ffffff35;border-radius:0;background:#ffffff06;color:var(--paper);padding:14px;font-weight:400;font-size:13px;min-width:0}select option{background:#222}textarea{resize:vertical;min-height:125px}input:focus,textarea:focus,select:focus{border-color:var(--orange);outline-offset:2px}input[type=file]{font-size:11px;padding:20px}input[type=checkbox]{width:auto;align-self:start;accent-color:var(--orange)}.checkbox-label{flex-direction:row;gap:12px;font-size:11px;font-weight:400;align-items:center}.form-note{font-size:10px;color:var(--muted);padding:14px 16px;background:#ffffff06;border-left:2px solid var(--orange)}.form-output{margin-top:25px;padding:25px;border:1px solid var(--orange)}.form-output[hidden]{display:none}.form-output pre{font-family:inherit;font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;max-height:350px;overflow:auto;background:#ffffff05;padding:20px}.form-output h3{font-size:25px}.form-output p{font-size:12px;color:#bbb}.file-previews{display:flex;gap:10px;flex-wrap:wrap}.file-previews figure{margin:0;width:100px;font-size:9px;overflow-wrap:anywhere}.file-previews img{width:100px;height:75px;object-fit:cover}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.choice-card{padding:42px;border:1px solid var(--line);transition:border-color .3s,background .3s}.choice-card:hover{border-color:var(--orange);background:#ffffff03}.choice-card p{font-size:13px;color:var(--muted)}.choice-card .eyebrow{color:var(--orange)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.project-card figure{height:420px;margin:0 0 25px;position:relative;overflow:hidden}.project-card img{width:100%;height:100%;object-fit:cover;transition:transform .8s}.project-card:hover img{transform:scale(1.04)}.project-card h3{font-size:27px}.project-card p{color:var(--muted);font-size:12px}.status-label{display:inline-block;font-size:9px;border:1px solid var(--line);padding:5px 10px;margin-bottom:17px}.compare{position:relative;height:530px;overflow:hidden;background:#ddd;--cut:50%}.compare .comparison-img{position:absolute;width:100%;height:100%;inset:0;object-fit:cover}.compare .before{filter:grayscale(1) contrast(.75) brightness(.72);clip-path:inset(0 calc(100% - var(--cut)) 0 0);z-index:1}.compare .before:after{content:''}.compare .divider{position:absolute;left:var(--cut);top:0;bottom:0;width:2px;background:white;z-index:2;pointer-events:none}.compare .divider:after{content:'↔';display:grid;place-items:center;width:50px;height:50px;border-radius:50%;background:var(--orange);position:absolute;top:50%;left:-24px;color:white}.compare-label{position:absolute;top:20px;z-index:3;font-size:10px;background:#111b;color:white;padding:6px 12px}.compare-label.before-label{left:20px}.compare-label.after-label{right:20px}.compare input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;z-index:4;margin:0}.compare:focus-within{outline:3px solid var(--orange)}.compare-note{font-size:10px;color:var(--muted);margin-top:15px}.assistant-launch{position:fixed;right:25px;bottom:24px;z-index:95;background:var(--orange);border:0;box-shadow:0 10px 40px #0006;padding:14px 20px;display:flex;gap:20px;align-items:center;font-size:11px}.assistant-launch span{display:block;font-size:8px;opacity:.8}.assistant-panel{position:fixed;right:25px;bottom:90px;width:380px;max-width:calc(100vw - 30px);max-height:calc(100svh - 120px);overflow:auto;z-index:100;background:#232426;border:1px solid #555;box-shadow:0 20px 100px #0008;padding:25px}.assistant-panel[hidden]{display:none}.assistant-top{display:flex;justify-content:space-between;align-items:start;gap:15px}.assistant-top h2{font-size:25px;margin-bottom:10px}.assistant-close{background:none;border:0;font-size:24px}.assistant-panel p{font-size:11px;color:#bbb}.assistant-panel .choices{display:flex;gap:8px;flex-wrap:wrap}.assistant-panel .choices button{border:1px solid #555;background:transparent;padding:10px;font-size:11px}.assistant-panel .choices button:hover{border-color:var(--orange)}.assistant-panel .step-status{font-size:10px;color:var(--orange);margin:20px 0 10px}.assistant-panel textarea{min-height:80px}.assistant-panel .btn{margin-top:14px}.assistant-panel .form-output{padding:15px}.assistant-panel .form-output pre{padding:0}.assistant-error{color:#ff9b80!important}.legal-copy{max-width:900px}.legal-copy h2{font-size:29px;margin-top:40px}.legal-copy p{font-size:13px;color:var(--muted)}.legal-copy a{text-decoration:underline}.reveal{opacity:1;transform:none}.motion-ready .reveal{opacity:0;transform:translateY(35px);transition:opacity .9s,transform .9s}.motion-ready .reveal.visible{opacity:1;transform:none}.scroll-meter{position:fixed;top:0;left:0;height:2px;width:0;background:var(--orange);z-index:110}.material-story{height:240vh;position:relative;background:#ededE8;color:var(--ink)}.material-sticky{position:sticky;top:0;height:100svh;min-height:650px;display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center;padding:var(--gutter);overflow:hidden}.wall-scene{height:450px;perspective:950px;position:relative;display:grid;place-items:center}.wall-plane{position:absolute;width:235px;height:320px;transform-style:preserve-3d;box-shadow:15px 25px 45px #0002;border:1px solid #aaa;will-change:transform;background:#e3dfd5;transform:rotateY(-25deg) rotateX(9deg)}.wall-plane:after{content:'';position:absolute;top:0;bottom:0;right:-9px;width:9px;background:#aaa;transform:rotateY(80deg);transform-origin:left}.wall-plane.frame{background:repeating-linear-gradient(90deg,transparent 0,transparent 42px,#8a9093 42px,#ddd 46px,#747a7d 52px,transparent 54px);border:8px solid #999;box-shadow:none}.wall-plane.insulation{background:repeating-linear-gradient(22deg,#b2a37d 0,#a89669 2px,#b8aa85 4px);border-color:#b2a37d}.wall-plane.front{background:linear-gradient(100deg,#e6e2d9,#f5f4f0)}.layer-caption{font-size:10px;position:absolute;bottom:0;left:50%;transform:translateX(-50%);white-space:nowrap;letter-spacing:1px}.story-count{font-size:11px;color:var(--orange)}.story-copy h2{font-size:clamp(38px,4.7vw,74px);margin:20px 0}.story-copy p{font-size:13px;color:#646665;max-width:400px}.story-steps{display:flex;gap:7px;margin:28px 0}.story-steps span{width:45px;height:3px;background:#ccc}.story-steps span.active{background:var(--orange)}.noscript-note{padding:15px var(--gutter);background:var(--orange)}
@media(min-width:1500px){.hero-content{padding-top:90px}.hero-title{max-width:1100px}}@media(max-width:1100px){.nav{gap:14px;font-size:10px}.brand span{display:none}.hero-title{font-size:90px}.scene-caption{bottom:180px}.intro-emblem{left:72%}.section{padding-top:80px;padding-bottom:80px}.form-layout{gap:6%}}
@media(max-width:760px){.site-header{height:75px;position:sticky;top:0}.brand span{display:block}.brand img{width:60px;height:41px}.menu-button{display:block;background:transparent;border:1px solid #555;font-size:11px;padding:9px 13px}.nav{display:none;position:fixed;left:0;right:0;top:75px;bottom:0;padding:35px var(--gutter);background:#171819;flex-direction:column;align-items:stretch;gap:0;overflow:auto;font-size:21px}.nav a{padding:17px 0;border-bottom:1px solid var(--line)}.nav .btn{margin-top:25px;padding:15px}.nav.open{display:flex}.preview-strip{font-size:8px}.preview-strip>span:last-child{display:none}.cinema{height:calc(100svh - 103px);min-height:680px;max-height:none}.hero-content{padding-top:75px;padding-bottom:35px}.hero-title{font-size:clamp(51px,12vw,82px);margin-bottom:20px}.hero-content .eyebrow{font-size:8px;letter-spacing:1.4px}.hero-bottom{display:block}.hero-bottom p{font-size:11px;max-width:290px;margin-bottom:20px}.hero-index{display:none}.intro-controls{top:16px;right:var(--gutter)}.intro-controls button{font-size:9px;padding:7px 10px}.intro-emblem{left:68%;top:45%;width:150px}.scene-caption{right:var(--gutter);bottom:260px;max-width:180px;font-size:8px}.ticker{display:grid;grid-template-columns:1fr 1fr;font-size:8px;padding-top:20px;padding-bottom:20px;gap:12px}.section{padding:65px var(--gutter)}.section-head,.content-grid,.form-layout{grid-template-columns:1fr;gap:30px}.section-head{margin-bottom:35px}.section-head p{font-size:13px}.service-grid,.split-feature,.project-grid,.choice-grid,.contact-band{grid-template-columns:1fr}.service-tile{min-height:380px;padding:25px}.service-tile h3{font-size:33px}.service-tile .tile-arrow{right:24px;bottom:25px}.service-tile p{max-width:240px}.service-row{grid-template-columns:25px 1fr 20px;gap:12px}.service-row p{grid-column:2;grid-row:2}.service-row>span:last-child{grid-column:3;grid-row:1}.service-row h3{font-size:22px}.split-feature figure{min-height:400px}.split-copy{padding:55px var(--gutter)}.process{grid-template-columns:1fr;gap:20px}.process h3{margin-top:15px}.contact-band{padding:60px var(--gutter);gap:35px}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-top>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;font-size:8px}.page-hero{padding-top:35px;padding-bottom:50px}.page-hero h1{font-size:clamp(44px,10vw,68px)}.breadcrumb{margin-bottom:30px}.page-hero p{font-size:12px}.subnav{gap:20px}.info-panel{padding:25px}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.choice-card{padding:30px}.project-card figure{height:340px}.compare{height:370px}.assistant-launch{right:16px;bottom:16px;padding:12px 16px}.assistant-panel{right:15px;bottom:80px;padding:20px}.material-story{height:230vh}.material-sticky{grid-template-columns:1fr;gap:10px;padding-top:90px;padding-bottom:30px;align-content:center;min-height:650px}.wall-scene{height:290px;grid-row:2}.wall-plane{width:150px;height:210px}.story-copy h2{font-size:37px;max-width:310px;margin-top:10px;margin-bottom:12px}.story-copy p{font-size:11px;max-width:300px}.story-steps{margin:14px 0}.layer-caption{font-size:8px;bottom:-5px}.material-sticky .eyebrow{margin-bottom:12px}.region-line{font-size:11px}.large-word{font-size:18vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}.material-story{height:auto}.material-sticky{position:relative;min-height:700px;height:auto}.wall-plane{will-change:auto}.cinema-room{opacity:1;z-index:-1}.cinema canvas{display:none}.cinema .scene-caption{display:none}}
.page-hero-copy{position:relative;z-index:2;max-width:1100px}.theme-motion{position:absolute;right:-5%;top:0;width:52%;height:100%;perspective:850px;opacity:.35;pointer-events:none;overflow:hidden}.theme-motion div{position:absolute;width:230px;height:320px;top:20%;left:35%;border:1px solid #ffffff50;background:linear-gradient(100deg,#ffffff09,#ffffff01);transform:rotateY(-35deg) rotateZ(20deg);animation:panelFloat 8s ease-in-out infinite}.theme-motion div:nth-child(2){animation-delay:-1s;left:25%;top:15%}.theme-motion div:nth-child(3){animation-delay:-2s;left:15%;top:10%}.theme-motion div:nth-child(4){animation-delay:-3s;left:5%;top:5%}.theme-motion div:nth-child(5){animation-delay:-4s;left:-5%;top:0}.theme-water div{height:450px;width:450px;border-radius:50%;border-color:#99c5d966;background:none;transform:rotateX(60deg);animation:waterPulse 8s ease-in-out infinite}.theme-shield div{height:250px;width:210px;border-color:#f2461c77;clip-path:polygon(0 0,100% 0,100% 68%,50% 100%,0 68%);background:linear-gradient(135deg,#f2461c15,#f2461c03);animation:shieldFloat 7s ease-in-out infinite}.theme-gallery div{width:180px;height:230px;background:linear-gradient(35deg,#f2461c22,#ffffff04);animation:galleryFloat 9s ease-in-out infinite}.theme-team div{width:100px;height:100px;border-radius:50%;border-color:#f2461c88;animation:teamFloat 7s ease-in-out infinite}.theme-contact div{width:400px;height:400px;border-radius:50%;border-style:dashed;animation:contactRotate 35s linear infinite}.theme-legal{opacity:.15}.theme-legal div{animation:none}.page-hero h1{animation:titleEnter 1s cubic-bezier(.15,.6,.2,1) both}.page-hero .eyebrow{animation:titleEnter .8s both}.form-grid label{transition:opacity .25s,transform .25s}.form-grid label:focus-within{transform:translateY(-2px)}.file-previews figure{animation:titleEnter .4s both}.assistant-panel:not([hidden]){animation:titleEnter .3s both}.service-row{transition:padding .3s,color .3s}.service-row:hover{padding-left:12px;color:var(--orange)}@keyframes panelFloat{0%,100%{transform:translateY(0) translateZ(0) rotateY(-35deg) rotateZ(20deg)}50%{transform:translateY(-30px) translateZ(60px) rotateY(-20deg) rotateZ(24deg)}}@keyframes waterPulse{0%,100%{transform:translateY(30px) scale(.8) rotateX(60deg);opacity:.3}50%{transform:translateY(-20px) scale(1.2) rotateX(65deg);opacity:.8}}@keyframes shieldFloat{0%,100%{transform:rotateY(-30deg) translateY(10px)}50%{transform:rotateY(15deg) translateY(-20px)}}@keyframes galleryFloat{0%,100%{transform:translateY(20px) rotateZ(12deg) rotateY(-25deg)}50%{transform:translateY(-30px) rotateZ(5deg) rotateY(0deg)}}@keyframes teamFloat{0%,100%{transform:translateY(20px) scale(.9)}50%{transform:translateY(-30px) scale(1.05)}}@keyframes contactRotate{to{transform:rotate(360deg)}}@keyframes titleEnter{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media(max-width:760px){.theme-motion{width:75%;right:-30%;opacity:.2}.theme-motion div{width:180px;height:250px}.theme-water div{width:300px;height:300px}}@media(prefers-reduced-motion:reduce){.theme-motion div,.page-hero h1,.page-hero .eyebrow{animation:none!important}.theme-motion{opacity:.15}}
.theme-pause{position:absolute;right:var(--gutter);bottom:20px;z-index:5;background:#171819aa;border:1px solid #ffffff30;padding:7px 10px;font-size:9px}.theme-motion.paused div{animation-play-state:paused}
.portfolio-filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:22px}.portfolio-filters button{padding:12px 20px;background:transparent;border:1px solid var(--line);font-size:11px}.portfolio-filters button.active{background:var(--orange);border-color:var(--orange)}.portfolio-filters span{margin-left:20px;font-size:9px}.portfolio-status{font-size:10px;color:var(--muted);margin-bottom:35px}.project-card[hidden]{display:none}.project-open{position:absolute;inset:auto 20px 55px auto;background:var(--orange);padding:13px 18px;font-size:11px;transform:translateY(10px);opacity:0;transition:.3s}.project-card:hover .project-open,.project-card:focus-visible .project-open{transform:none;opacity:1}.object-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;margin-bottom:70px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0}.object-meta span{font-size:8px;letter-spacing:1.5px;color:var(--muted)}.object-meta p{font-size:12px;margin:10px 0 0}.object-gallery{display:grid;grid-template-columns:1fr 1fr;gap:22px}.gallery-item{background:none;border:0;padding:0;text-align:left}.gallery-item img{width:100%;height:400px;object-fit:cover;transition:filter .3s}.gallery-item:hover img{filter:brightness(1.1)}.gallery-item>span{font-size:11px;display:flex;justify-content:space-between;padding:15px 0}.gallery-item b{font-weight:400;color:var(--orange)}.gallery-dialog{padding:0;border:1px solid #555;background:#111;color:white;width:min(1300px,96vw);max-width:96vw;max-height:96svh}.gallery-dialog::backdrop{background:#000e;backdrop-filter:blur(12px)}.gallery-dialog img{width:100%;height:72svh;object-fit:contain;background:#08090a}.gallery-controls{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;gap:15px}.gallery-controls p{font-size:11px;margin:0}.gallery-controls button{border:1px solid #555;background:transparent;padding:10px 14px;font-size:12px}.gallery-top{display:flex;justify-content:space-between;padding:12px 20px;font-size:10px}.gallery-top button{border:0;background:transparent;font-size:20px}.portal-story{height:240vh;background:#101112}.portal-sticky{height:100svh;min-height:650px;position:sticky;top:0;overflow:hidden;isolation:isolate;display:flex;align-items:center}.portal-room{position:absolute;inset:0;z-index:-3;opacity:.18}.portal-room img{width:100%;height:100%;object-fit:cover}.portal-room:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#101112e8,transparent)}.portal-copy{padding:var(--gutter);z-index:2;max-width:65%;pointer-events:none}.portal-copy a{pointer-events:auto}.portal-copy h2{font-size:clamp(44px,5.7vw,90px)}.portal-copy p{font-size:12px;color:#bbb;margin-bottom:30px}.door-stage{position:absolute;right:9%;top:17%;width:300px;height:65%;perspective:950px;transform-style:preserve-3d}.door-frame{position:relative;width:100%;height:100%;border:12px solid #363638;box-shadow:0 0 0 2px #888,0 0 80px #f2461c33;transform:rotateY(-8deg)}.door-inside{position:absolute;inset:0;background:url('media/interior-detail.jpg') 70% center/cover;box-shadow:inset 0 0 30px #0008}.door-leaf{position:absolute;inset:-1px;background:linear-gradient(110deg,#47494a,#232426);transform-origin:left center;transform-style:preserve-3d;box-shadow:10px 0 20px #0006;border:1px solid #666;will-change:transform}.door-leaf:after{content:'';position:absolute;width:12px;right:-12px;top:0;bottom:0;background:#171819;transform-origin:left;transform:rotateY(90deg)}.door-groove{position:absolute;inset:25px;border:1px solid #ffffff15}.door-handle{position:absolute;width:50px;height:7px;background:linear-gradient(#ddd,#666);right:22px;top:52%;box-shadow:0 2px 5px #000}.door-number{position:absolute;top:55px;left:45px;font-size:12px;letter-spacing:4px;color:#ddd}.portal-label{position:absolute;bottom:25px;left:var(--gutter);font-size:8px;color:#999}.portal-open{position:absolute;bottom:25px;right:var(--gutter);background:transparent;border:1px solid #ffffff50;font-size:10px;padding:10px 16px}.page-wipe{position:fixed;inset:0;background:var(--orange);transform:translateY(101%);z-index:200;pointer-events:none;transition:transform .45s cubic-bezier(.76,0,.24,1)}.page-wipe.active{transform:translateY(0)}@media(max-width:760px){.object-gallery{grid-template-columns:1fr}.gallery-item img{height:330px}.object-meta{grid-template-columns:1fr 1fr;gap:20px}.gallery-controls{flex-wrap:wrap}.gallery-controls p{width:100%;order:3}.gallery-dialog img{height:60svh}.project-open{opacity:1;transform:none;font-size:9px;bottom:60px}.portal-copy{max-width:100%;padding-top:0;align-self:start;margin-top:100px}.portal-copy h2{font-size:38px;max-width:330px}.portal-copy p{max-width:230px;font-size:10px}.door-stage{width:180px;height:320px;right:14%;top:auto;bottom:70px}.portal-copy .btn{font-size:10px;padding:12px 16px}.door-number{left:25px;top:35px;font-size:8px}.door-handle{width:30px;right:15px}.portal-sticky{min-height:790px}.portal-label{font-size:7px;max-width:170px}.portal-story{height:220vh}}@media(prefers-reduced-motion:reduce){.portal-story{height:auto}.portal-sticky{position:relative}.door-leaf{transform:rotateY(-65deg)!important;will-change:auto}.portal-room{opacity:.3!important}.page-wipe{display:none}}
.object-placeholder{height:350px;background:linear-gradient(135deg,#282b2f,#111214);position:relative;overflow:hidden;padding:30px;display:flex;flex-direction:column;justify-content:space-between;margin-bottom:25px;border:1px solid #ffffff20}.object-placeholder>span{font-size:9px;text-transform:uppercase;letter-spacing:2px;color:#aaa}.object-placeholder>b{font-size:clamp(28px,3vw,48px);letter-spacing:-2px;line-height:1.1;max-width:400px;z-index:1;font-weight:500;margin-top:80px}.object-placeholder>small{font-size:8px;letter-spacing:2px;color:var(--orange);z-index:1;margin-top:25px}.object-lines{position:absolute;inset:10% -10% 0 35%;perspective:700px}.object-lines i{position:absolute;inset:15px;border:1px solid #f2461c55;transform:rotateY(-30deg) rotateZ(-15deg);transition:transform 1s}.object-lines i:nth-child(2){inset:45px}.object-lines i:nth-child(3){inset:75px}.project-card:hover .object-lines i{transform:rotateY(10deg) rotateZ(-5deg) translateY(-12px)}.object-photo-section{margin:80px 0 40px}.editor-toolbar{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:30px 0}.import-label{padding:12px 16px;border:1px solid #555;font-size:10px;max-width:300px}.import-label input{padding:0;border:0;background:none;font-size:10px}.editor-layout{display:grid;grid-template-columns:280px 1fr;gap:40px}.editor-layout>div>button{display:block;width:100%;padding:17px;text-align:left;background:transparent;border:1px solid #444;margin-bottom:8px;font-size:12px}.editor-layout>div>button.active{border-color:var(--orange);background:#f2461c12}.editor-layout button small{display:block;color:var(--muted);font-size:9px;margin-top:5px}#editor-status{font-size:12px;color:#e3b09e;min-height:25px;margin-bottom:30px}.editor-photo{display:flex;align-items:center;gap:15px;margin-bottom:20px;padding:15px;border:1px solid var(--line)}.editor-photo img{width:90px;height:75px;object-fit:cover}.editor-photo label{flex:1}.editor-photo button{font-size:10px;background:transparent;border:1px solid #555;padding:8px}.download-search{max-width:650px;margin-bottom:35px}.download-card{padding:30px;border:1px solid var(--line);position:relative;overflow:hidden}.download-card:before{content:'';position:absolute;top:0;right:0;width:40px;height:40px;border-left:1px solid var(--line);border-bottom:1px solid var(--line);transform:translate(20px,-20px) rotate(45deg);background:var(--orange);transition:transform .4s}.download-card:hover:before{transform:translate(10px,-10px) rotate(45deg)}.download-card h3{font-size:28px;margin-bottom:20px}.download-card p{font-size:12px;color:var(--muted)}.download-card small{font-size:10px;color:var(--orange);display:block;margin-bottom:20px}.download-card[hidden]{display:none}@media(max-width:900px){.editor-layout{grid-template-columns:1fr}.editor-layout>div:first-child{display:flex;overflow:auto;gap:8px}.editor-layout>div>button{min-width:200px}.editor-photo{flex-wrap:wrap}.editor-photo label{flex-basis:60%}.object-placeholder{height:300px}}
.service-scene-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:8%;align-items:center}.service-model{position:relative;height:470px;perspective:1000px;border:1px solid var(--line);overflow:hidden;background:radial-gradient(ellipse at 50% 70%,#ffffff0a,transparent 70%)}.model-stage{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateX(8deg) rotateY(-17deg);display:grid;place-items:center}.model-stage>div{position:absolute;transition:transform 1.1s cubic-bezier(.2,.65,.2,1),opacity 1s,background .8s}.model-caption{position:absolute;bottom:18px;left:20px;font-size:8px;letter-spacing:1px;color:var(--muted)}.model-frame{width:180px;height:260px;border:8px solid #838a90;background:repeating-linear-gradient(90deg,transparent 0,transparent 43px,#bec5ca 43px,#6b7379 49px,transparent 50px);transform:translateX(-60px)}.model-insulation{width:180px;height:260px;background:repeating-linear-gradient(33deg,#baad84 0,#b2a276 2px,#c4b790 5px);transform:translateX(0) translateZ(20px);opacity:0}.model-board,.model-finish{width:180px;height:260px;background:linear-gradient(100deg,#bdb9b0,#e4e0d7);border:1px solid #aaa;box-shadow:10px 15px 25px #0002;transform:translateX(100px) translateZ(50px);opacity:0}.model-finish{background:#f9f9f6;transform:translateX(140px) translateZ(80px)}.service-model[data-step="1"] .model-insulation,.service-model[data-step="2"] .model-insulation,.service-model[data-step="3"] .model-insulation{opacity:1}.service-model[data-step="2"] .model-board,.service-model[data-step="3"] .model-board,.service-model[data-step="3"] .model-finish{opacity:1}.service-model[data-step="3"] .model-stage>div{transform:translateX(0) translateZ(0)}.service-model[data-step="3"] .model-finish{transform:translateZ(4px)}.model-fire .model-board{background:#e9c2bb}.model-fire .model-insulation{background:#c2b8a6}.pool-water{width:280px;height:170px;background:repeating-linear-gradient(165deg,#53b7d0 0,#54aec7 8px,#72c5d8 14px);transform:rotateX(65deg) translateY(130px);box-shadow:0 20px 40px #0003}.pool-hangers{width:240px;height:130px;background:repeating-linear-gradient(90deg,transparent 0,transparent 55px,#929b9e 55px,#cbd2d5 58px,transparent 60px);top:60px;opacity:0}.pool-grid{width:260px;height:160px;border:5px solid #aeb4b7;background:repeating-linear-gradient(90deg,transparent 0,transparent 48px,#9ca5a9 48px,#aeb7bb 52px),repeating-linear-gradient(0deg,transparent 0,transparent 48px,#9ca5a9 48px,#aeb7bb 52px);transform:rotateX(65deg) translateY(-120px);opacity:0}.pool-panels{width:260px;height:160px;background:repeating-linear-gradient(90deg,#e4e5e1 0,#f1f2ed 48px,#c6ccce 49px,#c6ccce 51px);transform:rotateX(65deg) translateY(-80px);opacity:0}.model-pool[data-step="1"] .pool-hangers,.model-pool[data-step="2"] .pool-hangers,.model-pool[data-step="3"] .pool-hangers,.model-pool[data-step="2"] .pool-grid,.model-pool[data-step="3"] .pool-grid,.model-pool[data-step="3"] .pool-panels{opacity:1}.floor-strip{width:38px;height:230px;background:repeating-linear-gradient(0deg,#b48e61 0,#c49c6d 3px,#b99060 5px);border:1px solid #8a704e;transform:rotateX(58deg) rotateZ(20deg) translateX(calc((var(--i) - 4)*38px)) translateY(-150px);opacity:.25}.model-floor[data-step="1"] .floor-strip{background:#98948b;opacity:.7;transform:rotateX(58deg) rotateZ(20deg) translateX(calc((var(--i) - 4)*38px)) translateY(0)}.model-floor[data-step="2"] .floor-strip{opacity:1;transform:rotateX(58deg) rotateZ(20deg) translateX(calc((var(--i) - 4)*40px)) translateY(calc((var(--i) - 4)*6px));transition-delay:calc(var(--i)*70ms)}.model-floor[data-step="3"] .floor-strip{opacity:1;transform:rotateX(58deg) rotateZ(20deg) translateX(calc((var(--i) - 4)*38px)) translateY(0);transition-delay:calc(var(--i)*50ms)}.demo-block{width:57px;height:70px;border:1px solid #aeb0ae;background:linear-gradient(140deg,#deded6,#a9aaa5);transform:translateX(calc(var(--x)*58px)) translateY(calc((var(--y) - 1)*71px));box-shadow:3px 3px 0 #777}.model-demolition[data-step="1"] .demo-block{background:#e3b59e}.model-demolition[data-step="2"] .demo-block{transform:translateX(calc(var(--x)*82px)) translateY(calc((var(--y) - 1)*100px)) rotateZ(calc(var(--x)*9deg));transition-delay:calc(var(--i)*60ms)}.model-demolition[data-step="3"] .demo-block{opacity:0;transform:translateX(calc(var(--x)*110px)) translateY(230px) rotateZ(calc(var(--x)*25deg));transition-delay:calc(var(--i)*50ms)}.service-step-list>button[data-service-step]{width:100%;display:flex;align-items:center;gap:25px;padding:17px 0;background:none;border:0;border-bottom:1px solid var(--line);font-size:17px;text-align:left}.service-step-list>button span{font-size:10px;color:var(--muted)}.service-step-list>button[aria-pressed=true]{color:var(--orange)}.service-step-copy{min-height:85px;font-size:12px;color:var(--muted);margin-top:25px}.mini-motion{position:relative;color:var(--orange)}.mini-motion:before{content:'';position:absolute;width:13px;height:18px;left:22px;top:0;border:1px solid currentColor;animation:panelFloat 5s ease-in-out infinite}.mini-shield:before{clip-path:polygon(0 0,100% 0,100% 70%,50% 100%,0 70%);background:#f2461c33;animation:shieldFloat 5s infinite}.mini-water:before{border-radius:50%;width:17px;height:17px;animation:waterPulse 4s infinite}.mini-floor:before{transform:rotateX(45deg);animation:galleryFloat 6s infinite}.mini-demo:before{border-style:dashed;animation:teamFloat 4s infinite}
body[data-theme=water]{--orange:#258db5}.water-journey{height:370vh;background:#e8f3f8;color:#163343}.water-journey-sticky{position:sticky;top:0;height:100svh;min-height:700px;padding:65px var(--gutter) 45px;display:grid;grid-template-columns:1fr 1.2fr;grid-template-rows:auto 1fr auto;column-gap:7%;overflow:hidden}.water-journey-heading h2{font-size:clamp(38px,4vw,65px);margin-bottom:20px}.water-journey-heading>p{font-size:12px;color:#587b8d;max-width:370px}.water-model{grid-column:2;grid-row:1/3;position:relative;min-height:400px;perspective:900px}.water-room-model{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateY(-16deg) rotateX(5deg);display:grid;place-items:center}.water-room-model>div{position:absolute;transition:opacity 1s,transform 1.2s,background 1s}.room-back{width:280px;height:300px;background:linear-gradient(110deg,#d5dee1,#f3f6f5);box-shadow:20px 25px 50px #16334320;border:1px solid #bdced5}.room-floor{width:300px;height:200px;background:repeating-linear-gradient(90deg,#a6b2b7 0,#b6bfc2 28px,#919fa5 29px,#919fa5 30px);transform:rotateX(70deg) translateY(190px) translateZ(-80px)}.pipe{width:15px;background:linear-gradient(90deg,#73909e,#d6e1e6,#668391);left:calc(50% - 55px);z-index:1;border:1px solid #7691a0}.pipe-top{height:125px;top:calc(50% - 145px)}.pipe-bottom{height:120px;top:calc(50% - 5px)}.pipe-leak{width:22px;height:15px;background:#264b61;left:calc(50% - 59px);top:calc(50% - 21px);z-index:2;transform:rotate(-12deg)}.pipe-repair{width:25px;height:42px;left:calc(50% - 60px);top:calc(50% - 32px);z-index:3;background:linear-gradient(90deg,#607b89,#c9dde6,#607b89);border:2px solid #647f8e;opacity:0}.damp-patch{width:145px;height:120px;background:radial-gradient(ellipse,#4489ad70,#4489ad22 60%,transparent 70%);left:calc(50% - 90px);top:calc(50% - 5px);z-index:1;border-radius:50%}.water-drops{position:absolute;left:calc(50% - 45px);top:50%;width:80px;height:130px;z-index:4}.water-drops i{position:absolute;width:5px;height:10px;border-radius:30% 70% 60% 60%;background:#1d9fd2;animation:dropFall 1.5s ease-in infinite}.water-drops i:nth-child(2){left:20px;animation-delay:-.4s}.water-drops i:nth-child(3){left:8px;animation-delay:-.8s}.water-drops i:nth-child(4){left:33px;animation-delay:-1.2s}.removed-panel{width:120px;height:150px;background:linear-gradient(100deg,#dde6e8,#eef3f3);left:calc(50% - 10px);top:calc(50% - 40px);z-index:5;box-shadow:3px 0 0 #9baeb6}.dryer{width:85px;height:100px;left:calc(50% + 75px);top:calc(50% + 65px);background:linear-gradient(120deg,#318eb2,#246384);border:5px solid #1c3d51;border-radius:9px;z-index:8;opacity:0;transform:translateX(100px)}.dryer:before,.dryer:after{content:'';position:absolute;bottom:-12px;width:14px;height:16px;background:#173243;border-radius:3px}.dryer:after{right:0}.dryer span{width:48px;height:48px;position:absolute;border:3px solid #3b7d99;border-radius:50%;background:repeating-conic-gradient(#152f40 0deg 15deg,#74b8d4 15deg 25deg);top:10px;left:13px}.dryer b{font-size:8px;position:absolute;bottom:8px;left:8px;font-weight:400}.airflow{position:absolute;z-index:9;left:calc(50% + 85px);top:calc(50% + 5px);display:flex;gap:9px;opacity:0;color:#1d92ba}.airflow i{font-size:30px;animation:airFlow 1.3s infinite;font-style:normal}.airflow i:nth-child(2){animation-delay:-.4s}.airflow i:nth-child(3){animation-delay:-.8s}.finished-wall{width:280px;height:300px;background:linear-gradient(110deg,#eef2ee,#fff);z-index:12;opacity:0;transform:translateX(80px)}.scan-ring{width:80px;height:80px;border:2px solid #2b9ac4;border-radius:50%;left:calc(50% - 88px);top:calc(50% - 48px);z-index:10;animation:scanPulse 2s infinite}.water-model-note{position:absolute;bottom:0;font-size:8px;left:50%;transform:translateX(-50%);white-space:nowrap;color:#587b8d}.water-step-copy{grid-row:2;align-self:center;padding-top:25px;max-width:360px}.water-counter{font-size:10px;letter-spacing:2px;color:#258db5}.water-step-copy h3{font-size:35px;margin:16px 0}.water-step-copy p{font-size:12px;color:#587b8d;min-height:80px}.water-step-buttons{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;border-top:1px solid #567b8e40;padding-top:25px}.water-step-buttons button{background:transparent;border:0;text-align:left;padding:0;color:#6c8c9d;font-size:10px}.water-step-buttons span{display:block;font-size:11px;margin-top:8px}.water-step-buttons button[aria-pressed=true]{color:#197da4}.water-model[data-water-step="1"] .pipe-repair,.water-model[data-water-step="2"] .pipe-repair,.water-model[data-water-step="3"] .pipe-repair,.water-model[data-water-step="4"] .pipe-repair{opacity:1}.water-model:not([data-water-step="0"]) .water-drops,.water-model:not([data-water-step="0"]) .pipe-leak,.water-model:not([data-water-step="0"]) .scan-ring{opacity:0}.water-model[data-water-step="2"] .removed-panel,.water-model[data-water-step="3"] .removed-panel{transform:translateX(160px) rotateY(30deg) rotateZ(8deg);opacity:.4}.water-model[data-water-step="3"] .dryer,.water-model[data-water-step="3"] .airflow{opacity:1;transform:none}.water-model[data-water-step="3"] .dryer span{animation:fanSpin 1s linear infinite}.water-model[data-water-step="3"] .damp-patch{opacity:.15;transform:scale(.6)}.water-model[data-water-step="4"] .finished-wall{opacity:1;transform:translateX(0)}.water-model[data-water-step="4"] .damp-patch{opacity:0}.water-business{background:#dceef5}.water-business .choice-card{border-color:#7dabbf66}.water-business .choice-card:hover{background:#d1e9f3}.water-business h3{color:#173b50}@keyframes dropFall{from{transform:translateY(0);opacity:0}20%{opacity:1}to{transform:translateY(115px);opacity:0}}@keyframes airFlow{from{transform:translateY(25px);opacity:0}50%{opacity:1}to{transform:translateY(-45px);opacity:0}}@keyframes scanPulse{0%,100%{transform:scale(.9);opacity:.4}50%{transform:scale(1.15);opacity:1}}@keyframes fanSpin{to{transform:rotate(360deg)}}
@media(max-width:760px){.service-scene-layout{grid-template-columns:1fr;gap:25px}.service-model{height:370px}.service-step-list>button[data-service-step]{font-size:15px;padding:13px 0}.water-journey{height:380vh}.water-journey-sticky{grid-template-columns:1fr;grid-template-rows:auto 1fr auto auto;padding-top:90px;min-height:850px;gap:10px}.water-journey-heading h2{font-size:36px;margin-bottom:10px}.water-journey-heading>p{font-size:10px;max-width:330px}.water-journey-heading .eyebrow{margin-bottom:14px}.water-model{grid-column:1;grid-row:2;min-height:300px}.water-room-model{transform:scale(.8) rotateY(-16deg) rotateX(5deg)}.water-step-copy{grid-row:3;padding-top:5px;max-width:none}.water-step-copy h3{font-size:25px;margin:8px 0}.water-step-copy p{font-size:10px;min-height:45px;margin-bottom:0}.water-step-buttons{gap:8px;padding-top:15px;grid-row:4}.water-step-buttons button{font-size:8px}.water-step-buttons span{font-size:8px;max-width:75px;overflow-wrap:anywhere}.water-model-note{font-size:7px;bottom:-4px}}@media(prefers-reduced-motion:reduce){.water-journey{height:auto}.water-journey-sticky{position:relative;height:auto}.water-drops i,.airflow i,.scan-ring,.dryer span,.mini-motion:before{animation:none!important}.model-stage>div,.water-room-model>div{transition:none}}
/* Light visual direction requested for the entire site. */
:root{--ink:#222426;--paper:#fbfaf7;--muted:#686d70;--line:#20262922}body{background:var(--paper);color:var(--ink)}.site-header{background:#fbfaf7;border-color:#2026291a}.brand small{color:#747777}.nav{color:#26292c}.nav .btn{color:white}.preview-strip{background:#eeeDE8;color:#747777}.section.gray{background:#eeede9}.section.light{background:#fff}.page-hero{background:#f0efea}.page-hero p,.content-grid p,.section-head p,.split-copy p{color:#686d70}.page-hero:after{border-color:#f2461c33}.breadcrumb{color:#727779}.theme-motion{opacity:.55}.theme-motion div{border-color:#7f8b9344;background:linear-gradient(100deg,#cbd1d72b,#ffffff08)}.theme-water div{border-color:#4683a055;background:none}.theme-shield div{border-color:#f2461c55;background:#f2461c0a}.theme-gallery div{background:linear-gradient(35deg,#f2461c15,#ddd6c820)}.theme-team div{background:none;border-color:#f2461c55}.theme-pause{background:#ffffffa6;border-color:#2223;color:#555}.btn.outline{color:#26292c;border-color:#2226}.btn.outline:hover{background:#2221}.btn.dark{background:#202326}.service-tile{color:white}.service-tile .tile-no{color:white}.service-tile p{color:#ddd}.service-row{border-color:#2222}.split-feature{background:white}.info-panel{background:#fff8;border-color:#2222}.process article{border-color:#2222}.process p{color:#686d70}.contact-band{color:white}.contact-band h2,.contact-band .contact-data{color:white}.footer{background:#e9e8e3}.footer-top p,.footer-top a{color:#62696b}.footer-top .brand span{color:#222}.footer-bottom{color:#757b7d;border-color:#2222}.legal-copy p{color:#62696b}.form-note{background:#ffffff90;color:#636d70}.form-output{background:#fff}.form-output p{color:#636d70}.form-output pre{background:#f4f4ef;color:#353b3d}input,textarea,select{background:#fff9;border-color:#a0a8ab;color:#252b2e}select option{background:white;color:#222}.choice-card{background:#ffffff70;border-color:#2223}.choice-card p{color:#686d70}.choice-card:hover{background:white}.status-label{border-color:#2223;color:#6b7276}.gallery-item{color:#222}.gallery-dialog{color:white}.assistant-panel{background:#fff;color:#222;border-color:#ddd;box-shadow:0 20px 80px #0002}.assistant-panel p{color:#687278}.assistant-top h2{color:#222}.assistant-panel .choices button{border-color:#aaa;color:#222}.assistant-panel .form-output{background:#f4f3ee}.assistant-panel .form-output pre{background:none}.assistant-launch{color:white}.import-label{border-color:#aaa}.editor-layout>div>button{color:#222;background:#fff;border-color:#ccc}.editor-photo button{color:#333;border-color:#aaa}#editor-status{color:#8a4e3b}.object-placeholder{color:#f8f7f3}.object-placeholder>span{color:#bec3c8}.portfolio-filters button{color:#333;border-color:#aaa}.portfolio-filters button.active{color:white;border-color:var(--orange)}.download-card{background:#fff;border-color:#2222}.service-model{background:radial-gradient(ellipse at 50% 70%,#ddd9ce,#f8f7f1 75%);border-color:#2222}.service-step-list>button{color:#333;border-color:#2222}.service-step-list>button[aria-pressed=true]{color:var(--orange)}.service-step-copy{color:#687278}.material-story{background:#eeeDE8}.portal-copy{color:white}.portal-copy .btn{color:white}.portal-story{background:#151719}.portal-copy p{color:#ddd}.cinema{background:#e9e7e0;color:#25272b}.cinema:after{background:linear-gradient(90deg,#f1efe966,transparent 75%),linear-gradient(0deg,#edece5aa,transparent 50%)}.cinema .hero-title .stroke{color:transparent;-webkit-text-stroke:1px #4d5355}.hero-bottom p{color:#5d6466}.hero-index b{color:var(--orange)}.intro-controls button{background:#ffffff99;border-color:#20262944;color:#333}.scene-caption{color:#6a7173}.intro-progress{background:#2221}.cinema.ended .cinema-room{opacity:0;z-index:-2}.cinema.ended canvas{opacity:1}.intro-emblem{display:none!important}.cinema-room{display:none}.cinema .hero-content .btn.outline{color:#252b2e;border-color:#252b2e66}.water-business{background:#e3f2f8}.water-business p{color:#577888}.water-business .choice-card{background:#f3faff}.water-business .choice-card:hover{background:#fff}body[data-theme=water]{background:#f4f9fb;color:#183b4d;--line:#2b627c33;--muted:#5e7c8b}body[data-theme=water] .page-hero{background:#e4f1f7}body[data-theme=water] .section.gray{background:#e6f2f7}body[data-theme=water] .contact-band{background:#277fa4}body[data-theme=water] .theme-water{opacity:.8}body[data-theme=water] .theme-water div{border-color:#2182ad55}.menu-button{color:#222;border-color:#aaa}.object-photo-section>p{color:#687278}.gallery-top button{color:white}.gallery-controls button{color:white}.page-hero .page-hero-copy{max-width:1100px}.large-word{color:#2222220a}
@media(max-width:760px){.nav{background:#fbfaf7}.nav a{border-color:#2222}.cinema .hero-bottom{padding-bottom:35px}.assistant-launch{bottom:12px;right:12px}.site-header{border-bottom-color:#2222}.hero-title{font-size:clamp(49px,11.6vw,80px)}.cinema{min-height:740px}.scene-caption{bottom:300px}.intro-controls{gap:5px}.intro-controls button{font-size:8px}.theme-pause{font-size:8px}}
.fallback-original{position:absolute;width:190px;left:65%;top:42%;z-index:-1}.cinema.trident-settled canvas{opacity:1}.cinema .hero-content{background:linear-gradient(90deg,#f0eee944,transparent 65%)}@media(max-width:760px){.fallback-original{left:50%;top:45%;transform:translateX(-50%);width:160px}.cinema .hero-content{background:none}}
.water-model:not([data-water-step="0"]) .scan-ring{animation:none;opacity:0}.water-model .dryer{color:#d6f4ff}.water-model[data-water-step="3"] .removed-panel{opacity:.15}.cinema .hero-title{max-width:800px}@media(min-width:1100px){.cinema .hero-title{font-size:clamp(80px,7.6vw,118px);max-width:760px}}.object-gallery .gallery-item img{object-fit:contain;background:#e9e8e3}.project-card figure img{object-position:center}.project-card .photo-credit{font-size:9px;color:var(--muted)}
@media(min-width:761px){.cinema{height:calc(100svh - 122px);min-height:570px;max-height:1000px}.hero-content{padding-top:45px;padding-bottom:40px}.hero-title{font-size:clamp(64px,7vw,105px);margin-bottom:20px}.hero-bottom p{font-size:11px;line-height:1.65}.scene-caption{bottom:150px}}
.portal-door-hit{position:absolute;right:9%;top:17%;width:300px;height:65%;background:transparent;border:0;z-index:4;cursor:pointer}.portal-door-hit:focus-visible{outline:2px solid var(--orange);outline-offset:16px}.portal-open{z-index:5}.portal-story.entering .door-leaf{transform:rotateY(-112deg)!important}.portal-story.entering .portal-copy{opacity:0;transition:opacity .7s}.portal-story.entering .portal-room{opacity:.85!important}.portal-story.entering .door-stage{transition:transform 1.1s cubic-bezier(.16,1,.3,1);transform:translateZ(80px) scale(1.12)}.portal-story.entering .portal-label{opacity:0;transition:opacity .5s}@media(max-width:760px){.portal-door-hit{width:180px;height:320px;right:14%;top:auto;bottom:70px}.portal-open{font-size:8px;max-width:190px}}@media(prefers-reduced-motion:reduce){.portal-story.entering .portal-copy,.portal-story.entering .door-stage{transition:none}}
@media(max-width:760px){.water-journey-sticky{min-height:720px;grid-template-rows:auto minmax(220px,1fr) auto auto}.water-model{min-height:230px}.cinema .hero-bottom{position:relative;z-index:2}.cinema .hero-bottom:before{content:'';position:absolute;inset:-20px -22px;z-index:-1;background:linear-gradient(0deg,#e9e7e0 30%,#e9e7e000);pointer-events:none}.footer{padding-bottom:110px}}

.visualisation-label{position:absolute;left:16px;top:16px;padding:6px 10px;background:#fbfaf7e8;color:#252b2e;font-size:9px;letter-spacing:1px;text-transform:uppercase}

body.studio-in-view .assistant-launch{opacity:0;visibility:hidden;pointer-events:none}

.partner-footer-note{font-size:11px;line-height:1.8;color:inherit;max-width:850px;margin:24px 0;padding-top:20px;border-top:1px solid #89918a55}.partner-footer-note a{text-decoration:underline;text-underline-offset:3px}
