@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&display=swap');
:root{--paper:#f5f5f3;--ink:#171819;--muted:#6b6e71;--line:#dadcdd;--accent:#d9dfe3;--space:clamp(24px,5.5vw,100px);--ease:cubic-bezier(.22,1,.36,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.5 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}a,button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}svg{width:22px;height:22px;flex-shrink:0}::selection{background:#29313a;color:white}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #6585a4;outline-offset:5px}[hidden]{display:none!important}.skip{position:fixed;top:-80px;left:20px;background:white;padding:15px;z-index:100}.skip:focus{top:15px}header{height:86px;display:flex;align-items:center;gap:36px;padding:0 var(--space);position:sticky;top:0;z-index:30;background:#f5f5f3eb;backdrop-filter:blur(24px);transition:box-shadow .3s}body.scrolled header{box-shadow:0 1px 0 #17181912}.logo{font-size:37px;font-weight:700;letter-spacing:-3px;line-height:.85}.logo span{display:block;margin-top:10px;font-size:7px;font-weight:500;letter-spacing:2.5px}#nav{display:flex;gap:32px;margin-left:auto;font-size:11px}#nav a{position:relative;padding:12px 0}#nav a:after{content:'';position:absolute;left:0;bottom:7px;height:1px;width:100%;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .25s}#nav a:hover:after{transform:scaleX(1)}.navcta{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#1b1e21;color:white;padding:13px 17px 13px 22px;border-radius:8px;font-size:11px;transition:background .25s,transform .25s}.navcta:hover{background:#3a4651;transform:translateY(-2px)}.navcta svg{width:17px;height:17px}.menu{display:none;background:none;border:1px solid var(--line);border-radius:7px;padding:9px;height:42px;width:42px}.hero{position:relative;min-height:760px;height:calc(100svh - 100px);max-height:1100px;margin:0 14px;overflow:hidden;border-radius:12px;color:white;background:#22272b}.heroimg,.shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.heroimg{object-position:50% 60%;animation:hero-in 1.4s var(--ease) both}.shade{background:linear-gradient(90deg,#080d15b8,#0c11194d 65%,#0b111927),linear-gradient(0deg,#07101bc7,transparent 60%)}.herotop{position:relative;z-index:1;display:flex;justify-content:space-between;padding:30px calc(var(--space) - 14px);font-size:10px;color:#e0e5e9}.herotop>span:first-child{display:flex;gap:10px;align-items:center}.herotop i{display:block;width:5px;height:5px;border-radius:50%;background:#fff;box-shadow:0 0 0 5px #ffffff13}.herocopy{position:relative;z-index:1;padding:clamp(45px,8vh,120px) calc(var(--space) - 14px) 120px;animation:copy-in 1s var(--ease) both}.heroindex{font-size:12px;color:#d9dfe5}h1{font-size:clamp(66px,7.7vw,128px);letter-spacing:-.065em;line-height:.99;font-weight:450;margin:24px 0 36px}h1>span{color:#fff}.heroactions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;border:0;position:relative;isolation:isolate;overflow:hidden;min-height:58px;padding:17px 21px;border-radius:8px;font-size:12px;font-weight:600;transition:background .25s,transform .3s var(--ease),box-shadow .3s}.btn svg{width:20px;height:20px;transition:transform .3s var(--ease)}.btn:hover svg{transform:translate(3px,-3px)}.btn:active{transform:scale(.97)}.white{background:#fff;color:#1b1e21}.white:hover{background:#dfe6ed;box-shadow:0 10px 35px #0002}.dark{background:#20272e;color:#fff}.dark:hover{background:#435563;box-shadow:0 9px 25px #1112}.outline{border:1px solid #b9c1c8;background:transparent;color:#20272e}.herosecond{display:flex;align-items:center;gap:12px;min-height:48px;font-size:11px}.herosecond svg{width:30px;height:30px;border:1px solid #ffffff5c;border-radius:50%;padding:7px;transition:transform .3s,background .3s}.herosecond:hover svg{transform:translateY(4px);background:#ffffff28}.herofacts{position:absolute;z-index:1;bottom:43px;left:calc(var(--space) - 14px);right:calc(var(--space) - 14px);border-top:1px solid #ffffff42;padding-top:24px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;align-items:center}.herofacts>span{font-size:18px;line-height:1.3;letter-spacing:-.5px}.herofacts>p{font-size:11px;color:#d0d8e1;margin:0;line-height:1.8}.herofactlink{display:flex;align-items:center;gap:22px;justify-self:end;font-size:11px;padding:12px 0}.image-note{position:absolute;bottom:13px;left:calc(var(--space) - 14px);font-size:7px;color:#c7cfd8}.introstrip{padding:32px var(--space);display:flex;gap:40px;justify-content:space-between;border-bottom:1px solid var(--line);font-size:11px;color:#65696e}.introstrip span{display:flex;align-items:center;gap:14px}.introstrip span:before{content:'+';font-size:18px;color:#4e5e69}.section{padding:110px var(--space)}.sectionhead{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:50px}.eyebrow{font-size:12px;font-weight:500}.small{font-size:9px;color:var(--muted)}h2{font-size:clamp(40px,4.7vw,76px);line-height:1.04;font-weight:450;letter-spacing:-.055em;margin:0 0 30px}h2 em{font-style:normal}p{color:var(--muted)}.split{display:grid;grid-template-columns:1.3fr 1fr;gap:80px;align-items:end}.split>p{font-size:13px;line-height:1.95;max-width:355px;margin:0 0 32px}.servicetabs{display:flex;gap:0;border-bottom:1px solid #bec4c9;margin-top:45px}.servicetabs button{position:relative;overflow:hidden;flex:1;min-height:68px;background:transparent;color:#777d83;border:0;border-bottom:2px solid transparent;padding:18px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;transition:background .25s,color .25s,border-color .3s;text-align:left;font-size:14px}.servicetabs button:first-child{padding-left:0}.servicetabs button svg{width:17px;opacity:.4;transition:transform .3s,opacity .3s}.servicetabs button[aria-selected=true]{color:#171819;border-color:#171819}.servicetabs button[aria-selected=true] svg{opacity:1;transform:rotate(45deg)}.servicetabs button:hover{background:#e9edf0;color:#171819}.servicepanel{display:grid;grid-template-columns:1.15fr 1fr;min-height:510px;background:#e9edef;margin-top:24px;border-radius:12px;overflow:hidden}.servicevisual{position:relative;overflow:hidden;min-height:510px;background:#d8dde1}.servicevisual img{width:100%;height:100%;position:absolute;object-fit:cover}.servicevisual>span{position:absolute;left:24px;bottom:23px;font-size:9px;background:#ffffffd9;backdrop-filter:blur(15px);padding:9px 13px;border-radius:5px}.servicecontent{padding:50px clamp(26px,4vw,65px);display:flex;flex-direction:column;align-items:start}.pill{font-size:9px;border:1px solid #c3cbd1;padding:7px 12px;border-radius:50px}.servicecontent h3{font-size:clamp(28px,3vw,45px);font-weight:450;letter-spacing:-1.6px;line-height:1.13;margin:28px 0 20px;max-width:330px}.servicecontent p{font-size:12px;line-height:1.9;margin:0;max-width:350px}.servicecontent ul{list-style:none;padding:0;margin:26px 0 30px;font-size:11px;line-height:2.4;color:#53606a}.servicecontent li:before{content:'+';margin-right:12px}.servicecontent .btn{margin-top:auto;font-size:11px;min-height:53px}.switched .servicevisual img{animation:panel-in .55s var(--ease)}.switched .servicecontent{animation:copy-in .45s var(--ease)}.vision{position:relative;margin:0 14px;min-height:720px;border-radius:12px;overflow:hidden;color:white;display:grid;grid-template-columns:1fr 1fr;background:#1c242a}.visionimage{position:relative;overflow:hidden;min-height:720px}.visionimage img{position:absolute;width:100%;height:100%;object-fit:cover;filter:brightness(.85)}.visionimage>span{position:absolute;left:35px;bottom:35px;color:#fff;font-size:8px;letter-spacing:1.4px}.visioncopy{padding:65px clamp(30px,4vw,65px)}.visioncopy>.eyebrow{color:#bdc6cf}.visioncopy h2{margin:35px 0 26px;font-size:clamp(38px,4.5vw,68px)}.visioncopy>p{color:#aebbc6;font-size:12px;line-height:1.9;max-width:380px}.difference{display:flex;gap:18px;padding:21px 0;border-top:1px solid #ffffff26}.difference:first-of-type{margin-top:32px}.difference>span{width:18px;color:#a9bdce;padding-top:2px}.difference svg{width:18px;height:18px}.difference h3{font-size:14px;font-weight:500;margin:0 0 7px;letter-spacing:-.3px}.difference p{font-size:11px;color:#aebbc6;line-height:1.7;margin:0}.processlayout{display:grid;grid-template-columns:1fr 1.2fr;gap:90px;align-items:start;margin-top:60px}.processintro{background:#e5eaee;min-height:380px;border-radius:12px;padding:35px;position:relative;overflow:hidden}.processintro:after{content:'';position:absolute;width:250px;height:250px;border:1px solid #a2b2c166;border-radius:50%;right:-50px;bottom:-100px;box-shadow:0 0 0 40px #a2b2c114,0 0 0 80px #a2b2c10d;pointer-events:none}#stage-number{font-size:115px;font-weight:450;line-height:1;letter-spacing:-8px;color:#9baebd}#stage-heading{font-size:27px;line-height:1.2;letter-spacing:-1px;max-width:260px;color:#1d2831;margin:30px 0 40px}#stage-meta{font-size:10px;color:#607484}.processitem{border-top:1px solid #c5ccd2}.processitem:last-child{border-bottom:1px solid #c5ccd2}.processitem h3{margin:0;font-weight:450}.processitem button{position:relative;overflow:hidden;width:100%;padding:25px 0;display:flex;align-items:center;gap:20px;background:transparent;color:#81888f;border:0;font-size:24px;letter-spacing:-.8px;text-align:left;transition:color .2s,padding .3s}.processitem button>span{font-size:10px;color:#778d9f;letter-spacing:0}.processitem button>b{font-size:23px;font-weight:400;margin-left:auto;width:30px;height:30px;border:1px solid #bdc8d0;border-radius:50%;display:grid;place-items:center;transition:transform .3s,background .3s}.processitem button:hover,.processitem button[aria-expanded=true]{color:#15232d}.processitem button:hover>b{transform:rotate(90deg);background:#dde5eb}.processitem button[aria-expanded=true]>b{background:#1d2b36;color:white;border-color:#1d2b36}.processitem [role=region]{padding:0 30px 25px;animation:copy-in .35s var(--ease)}.processitem [role=region] p{font-size:12px;line-height:1.95;margin:0;max-width:370px}.calculator{margin:0 14px;border-radius:12px;background:#dde4e9;display:grid;grid-template-columns:1fr 1fr;gap:80px;padding:75px calc(var(--space) - 14px)}.calcleft h2{font-size:clamp(40px,4.5vw,67px);margin:30px 0 25px}.calcleft>p{font-size:12px;line-height:1.9;max-width:360px;color:#5b6874}.calcdisclaimer{display:block;font-size:10px;line-height:1.85;color:#667684;max-width:350px;margin-top:25px}.surfacevisual{margin-top:40px;border:1px solid #b4c1cb;border-radius:10px;padding:20px}.surfacelegend{display:flex;gap:20px;font-size:8px;color:#556b7b}.surfacelegend>span{display:flex;align-items:center;gap:6px}.surfacelegend i{width:7px;height:7px;background:#8a9faf}.surfacelegend>span+span i{background:repeating-linear-gradient(45deg,#9eafba 0 1px,transparent 1px 3px);border:1px solid #9eafba}.surfacecanvas{height:180px;display:flex;align-items:center;justify-content:center;padding:22px 12px;background-image:linear-gradient(#aebccb22 1px,transparent 1px),linear-gradient(90deg,#aebccb22 1px,transparent 1px);background-size:14px 14px;margin-top:15px}.surfacecovered{position:relative;border:1px solid #7f96a7;background:#a9bac955;flex:2;height:125px;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:transform .45s var(--ease)}.surfacecovered:before,.surfacecovered:after{content:'';position:absolute;left:10px;right:10px;top:10px;bottom:10px;border:1px solid #8da3b44a}.surfacecovered:after{left:48%;border:0;border-left:1px solid #8da3b4a1}.surfacecovered span{font-size:32px;color:#405c70;letter-spacing:-1px;z-index:1}.surfacecovered small{font-size:13px}.surfacecovered b,.surfacesemi b{font-size:7px;font-weight:400;color:#526e82;z-index:1}.surfacesemi{height:125px;flex:.5;min-width:55px;border:1px dashed #879dae;display:flex;align-items:center;justify-content:center;flex-direction:column;background:repeating-linear-gradient(-45deg,#8da3b414 0 2px,transparent 2px 6px);transition:flex-grow .5s var(--ease),opacity .3s}.surfacesemi span{font-size:13px;white-space:nowrap;color:#526e82}.surfacesemi.empty{opacity:.3}.surfacevisual>p{font-size:8px;line-height:1.7;color:#677d8d;margin-bottom:0}.calcbox{background:#f9fafb;border:1px solid #ffffffa6;box-shadow:0 20px 60px #243e5312;border-radius:14px;padding:34px}.calcboxtop{display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.6px;color:#667b8d;margin-bottom:30px}.calcboxtop>span:last-child{width:29px;height:29px;border:1px solid #ccd6de;border-radius:50%;display:grid;place-items:center}label{display:block;font-size:11px;font-weight:500}input,select,textarea{display:block;width:100%;font-size:12px;border:1px solid #cbd4dc;border-radius:7px;padding:13px 12px;background:transparent;color:inherit;transition:border-color .2s,box-shadow .2s}input:focus,select:focus,textarea:focus{border-color:#7d9bb3;box-shadow:0 0 0 3px #7d9bb315;outline-offset:2px}label[for=covered]{display:flex;justify-content:space-between;align-items:center}label[for=covered]>span{display:flex;align-items:center;gap:5px;color:#657a8b;font-size:12px}#covered{width:80px;font-size:30px;font-weight:450;letter-spacing:-1px;padding:0;text-align:right;border:0;background:none;color:#1a2b38}input[type=range]{padding:0;border:0;box-shadow:none;height:38px;accent-color:#506e85}.rangescale{display:flex;justify-content:space-between;font-size:8px;color:#7890a2}.calcfields{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:25px 0 20px}.calcfields input,.calcfields select,#land{margin-top:9px}.result{background:#e9eef3;border-radius:8px;padding:20px;margin-top:25px}.result>span{font-size:8px;letter-spacing:.7px;color:#677f92}.result strong{display:block;font-weight:450;font-size:65px;letter-spacing:-4px;line-height:1.3;color:#2a4255}.result small{font-size:23px;letter-spacing:-1px}.result p{font-size:9px;color:#677f92;margin:0}.calcnote{font-size:9px;line-height:1.8;color:#708595;margin:16px 0}.calcbox .btn{width:100%;font-size:10px;gap:20px}.sectionhead>a{display:flex;align-items:center;gap:20px;font-size:11px;min-height:44px}.sectionhead>a svg{width:18px;height:18px}.projectgrid{display:grid;grid-template-columns:1.2fr 1fr;gap:30px;margin-top:35px}.projectgrid article:last-child{padding-top:100px}.projectgrid article>div{height:440px;position:relative;overflow:hidden;border-radius:10px}.projectgrid img{height:100%;width:100%;object-fit:cover;transition:transform .7s var(--ease)}.projectgrid article:hover img{transform:scale(1.05)}.projectgrid article>div>span{position:absolute;left:22px;bottom:25px;font-size:8px;color:#fff;background:#15212b8a;padding:8px 12px;border-radius:4px;backdrop-filter:blur(10px)}.viewreference{position:absolute;right:20px;bottom:20px;background:#ffffffde;border:1px solid #fff;border-radius:50%;width:45px;height:45px;display:grid;place-items:center;transition:background .2s,transform .3s}.viewreference:hover{background:#fff;transform:rotate(45deg)}.projectgrid h3{font-size:23px;font-weight:450;letter-spacing:-.8px;margin:22px 0 9px}.projectgrid p,.caption{font-size:10px;color:#7a8187}.caption{margin-top:30px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:80px;background:#19232c;color:#fff;margin:0 14px;border-radius:12px;padding:75px calc(var(--space) - 14px);position:relative;overflow:hidden}.contact:before{content:'';position:absolute;left:-80px;bottom:-250px;width:550px;height:550px;border:1px solid #768e9f22;border-radius:50%;box-shadow:0 0 0 70px #768e9f0b,0 0 0 140px #768e9f08;pointer-events:none}.contact h2{margin-top:35px;font-size:clamp(42px,4.5vw,71px)}.contact .eyebrow{color:#b0c1ce;font-size:11px}.contact>div>p{color:#b2c2cd;font-size:12px;line-height:1.9}.contactmark{font-size:110px;letter-spacing:-9px;font-weight:700;line-height:1;margin-top:80px;display:block;color:#fff}.contactmark span{display:block;letter-spacing:.7px;font-size:8px;font-weight:400;margin-top:15px;color:#9eb0be}.contact form{background:#ffffff06;border:1px solid #647e913b;padding:32px;border-radius:12px;position:relative}.formrow{display:grid;grid-template-columns:1fr 1fr;gap:18px}form label{font-size:10px;color:#ced9e1}form>label{margin-top:25px}form input,form textarea{border-color:#566f805c;background:#ffffff03;font-size:11px;padding:15px 12px;margin-top:10px}form input::placeholder,form textarea::placeholder{color:#8a9fac}form .btn{width:100%;margin-top:25px}.consent{display:flex;gap:10px;align-items:start;font-size:9px;line-height:1.8;color:#a9bdcb}.consent input{width:15px;height:15px;margin-top:1px;flex-shrink:0;accent-color:#819db2}.formnote{font-size:9px;line-height:1.8;color:#93aab9;margin-top:17px}footer{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:45px var(--space) 70px;font-size:9px;color:#6e7d88}footer .logo{font-size:30px;color:#1a2229}footer .logo span{font-size:6px;letter-spacing:2px}.actiondock{position:fixed;right:18px;top:50%;transform:translateY(-50%);width:84px;z-index:40;background:#14202aeb;border:1px solid #7890a84d;border-radius:18px;padding:9px;box-shadow:0 15px 50px #09162438;backdrop-filter:blur(24px);transition:width .4s var(--ease),box-shadow .3s;color:#e7edf2}.actiondock:hover,.actiondock:focus-within{width:222px;box-shadow:0 20px 65px #09162455}.docktitle{display:block;font-size:9px;white-space:nowrap;max-height:0;opacity:0;overflow:hidden;padding-left:14px;transition:max-height .35s,opacity .3s,padding .35s;color:#9cb1c1}.actiondock:hover .docktitle,.actiondock:focus-within .docktitle{max-height:40px;opacity:1;padding-top:13px;padding-bottom:17px}.actiondock>a,.actiondock>button{display:flex;align-items:center;gap:13px;width:100%;min-height:64px;position:relative;isolation:isolate;overflow:hidden;white-space:nowrap;border-radius:11px;padding:12px 13px;border:0;background:none;color:inherit;text-align:left;transition:background .25s,transform .25s,box-shadow .25s}.actiondock>a>svg,.actiondock>button>svg{width:22px;height:22px;flex-shrink:0;transition:transform .3s}.actiondock>a>span:not(.ripple),.actiondock>button>span:not(.ripple){display:flex;flex-direction:column;gap:3px;opacity:0;transition:opacity .25s .05s;font-size:11px}.actiondock small{font-size:8px;font-weight:400;color:#9fb1bd}.actiondock b{font-size:14px;font-weight:400;margin-left:auto;opacity:0;transition:opacity .2s,transform .3s}.actiondock:hover a>span,.actiondock:hover button>span,.actiondock:focus-within a>span,.actiondock:focus-within button>span,.actiondock:hover b,.actiondock:focus-within b{opacity:1}.actiondock>a:hover,.actiondock>button:hover{background:#ffffff14}.actiondock>a:hover>svg,.actiondock>button:hover>svg{transform:translateY(-3px)}.actiondock>a:hover b{transform:translate(2px,-2px)}.actiondock>button:hover b{transform:rotate(90deg)}.actiondock>.dockprimary{background:#dce6ed;color:#192934;margin-top:5px;box-shadow:0 4px 16px #0002}.actiondock>.dockprimary small{color:#627c8e}.actiondock>.dockprimary:hover{background:#fff}.actiondock>[aria-current]{box-shadow:inset 0 0 0 1px #a4c1d7;background:#617f9633}.actiondock>.dockprimary[aria-current]{background:#fff}.dockstate{display:flex;align-items:center;gap:7px;white-space:nowrap;overflow:hidden;font-size:8px;color:#9cb1c1;max-height:0;opacity:0;padding:0 13px;transition:max-height .35s,opacity .3s,padding .3s}.actiondock:hover .dockstate,.actiondock:focus-within .dockstate{max-height:40px;opacity:1;padding:17px 13px 8px}.dockstate i{width:4px;height:4px;border-radius:50%;background:#a5bbcd;flex-shrink:0}.scrollprogress{position:fixed;top:0;left:0;z-index:80;width:100%;height:2px;background:#7898b0;transform:scaleX(0);transform-origin:left;pointer-events:none}.ripple{position:absolute!important;width:12px;height:12px;background:#96b8d955;border-radius:50%;pointer-events:none;z-index:3;animation:ripple .65s ease-out forwards;opacity:1!important;transform:translate(-50%,-50%)}dialog{border:1px solid #dbe2e8;max-width:650px;width:calc(100% - 32px);padding:42px;border-radius:16px;background:#f6f8f9;color:#1a2934;box-shadow:0 30px 100px #0004;max-height:calc(100svh - 40px);overflow:auto}dialog::backdrop{background:#08152299;backdrop-filter:blur(12px)}dialog[open]{animation:dialog-in .35s var(--ease)}.close{position:absolute;right:20px;top:20px;width:35px;height:35px;display:grid;place-items:center;background:transparent;border:1px solid #bdcbd5;border-radius:50%;font-size:24px;color:#324d60;transition:background .2s,transform .3s}.close svg{width:16px;height:16px}.close:hover{background:#dde6ed;transform:rotate(90deg)}dialog h2{font-size:33px;letter-spacing:-1.3px;margin-top:30px}dialog p{font-size:12px;line-height:1.8}dialog pre{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.8 'DM Sans',Arial,sans-serif;background:#e8eef3;border-radius:8px;padding:20px}.summaryactions{display:flex;gap:10px;flex-wrap:wrap}.summaryactions .btn{font-size:10px}#explore{position:fixed;margin:12px 12px 12px auto;top:0;right:0;width:min(540px,calc(100% - 24px));max-width:none;height:calc(100svh - 24px);max-height:none;background:#17242f;color:white;padding:38px;border-color:#6881974d;border-radius:16px}#explore[open]{animation:drawer-in .45s var(--ease)}#explore .close{color:#e5edf4;border-color:#5d75874f;top:32px;right:32px}#explore .close:hover{background:#ffffff15}.drawerhead{display:flex;align-items:center;justify-content:space-between;padding:10px 0 35px}.drawerlabel{color:#8ba4b8;font-size:11px;margin:30px 0 20px}#explore nav{display:flex;flex-direction:column;margin:0;gap:0}#explore nav>a{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #70899d33;padding:18px 0;transition:padding .3s,color .3s;font-size:28px;letter-spacing:-1px}#explore nav>a small{display:block;font-size:10px;letter-spacing:0;color:#8fa8ba;margin-top:5px}#explore nav>a:hover,#explore nav>a[data-active]{padding-left:12px;color:#b5cee1}#explore nav>a:hover svg{transform:rotate(45deg)}#explore nav svg{width:20px;transition:transform .3s}.drawerfoot{font-size:10px;line-height:1.9;color:#8fa8ba;margin-top:30px}#reference{padding:0;max-width:1100px}#reference>img{display:block;max-height:65svh;width:100%;object-fit:contain;background:#12202c}#reference>div{padding:24px 32px}#reference h2{margin:0;font-size:30px}#reference p{font-size:10px}#reference .close{background:#fff;box-shadow:0 3px 20px #0003}#reference .btn{font-size:11px;min-height:48px}@keyframes hero-in{from{transform:scale(1.06);filter:brightness(.75)}to{transform:scale(1);filter:brightness(1)}}@keyframes copy-in{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes panel-in{from{opacity:.4;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}@keyframes dialog-in{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes drawer-in{from{opacity:0;transform:translateX(80px)}to{opacity:1;transform:translateX(0)}}@keyframes ripple{to{width:500px;height:500px;opacity:0}}@media(min-width:1700px){:root{--space:max(90px,calc((100vw - 1450px)/2))}}@media(max-width:1150px){:root{--space:45px}#nav{gap:22px}.hero{min-height:740px}.herocopy{padding-top:70px}h1{font-size:86px}.split{gap:45px}.servicecontent{padding:36px}.servicepanel,.servicevisual{min-height:480px}.processlayout,.calculator,.contact{gap:45px}.projectgrid article>div{height:350px}.actiondock{right:12px;width:74px;padding:6px}.actiondock>a,.actiondock>button{padding-left:13px;min-height:59px}.contact form{padding:25px}.formrow{grid-template-columns:1fr;gap:23px}.visionimage{min-height:700px}.section{padding-top:90px;padding-bottom:90px}}@media(max-width:900px){:root{--space:30px}header{height:78px;gap:20px}#nav{display:none}.navcta{margin-left:auto}.menu{display:grid;place-items:center}#nav.open{display:flex;position:absolute;top:74px;left:20px;right:20px;background:#f7f9fa;border:1px solid var(--line);border-radius:10px;padding:20px;flex-direction:column;gap:10px;box-shadow:0 20px 40px #0002;margin:0;font-size:12px}.actiondock{top:auto;right:50%;bottom:max(12px,env(safe-area-inset-bottom));transform:translateX(50%);width:min(470px,calc(100% - 24px));padding:6px;display:flex;gap:5px;border-radius:15px;align-items:center}.actiondock:hover,.actiondock:focus-within{width:min(470px,calc(100% - 24px))}.docktitle,.dockstate,.actiondock:hover .docktitle,.actiondock:focus-within .docktitle,.actiondock:hover .dockstate,.actiondock:focus-within .dockstate{display:none}.actiondock>a,.actiondock>button{flex:1;min-height:54px;width:auto;gap:8px;justify-content:center;padding:10px 8px;border-radius:10px}.actiondock>a>span:not(.ripple),.actiondock>button>span:not(.ripple){opacity:1;font-size:10px}.actiondock small,.actiondock b{display:none}.actiondock>a>svg,.actiondock>button>svg{width:18px;height:18px}.actiondock>.dockprimary{margin:0}.hero{min-height:730px}.herotop{font-size:9px}.herotop>span:last-child{display:none}h1{font-size:79px}.herofacts{grid-template-columns:1fr 1fr}.herofactlink{display:none}.introstrip{gap:20px;font-size:9px}.split{gap:30px}.split>p{font-size:12px}.servicepanel{grid-template-columns:1fr 1fr}.servicecontent{padding:30px}.servicecontent h3{font-size:32px}.servicecontent p{font-size:11px}.servicecontent .btn{font-size:10px;padding:15px;gap:10px}.servicetabs button{font-size:12px;padding:16px}.visioncopy{padding:50px 30px}.visionimage{min-height:720px}.processlayout{gap:35px}.processintro{padding:30px}.processitem button{font-size:20px;gap:15px}.calculator{gap:30px;padding:55px 30px}.calcbox{padding:25px}.calcbox .btn{font-size:9px;padding:16px 14px}.calcleft h2{font-size:44px}.surfacevisual{padding:15px}.surfacecovered span{font-size:27px}.surfacecanvas{padding-left:0;padding-right:0}.contact{padding:55px 30px;gap:30px}.contact h2{font-size:45px}.contactmark{font-size:80px}footer{padding-bottom:120px}.projectgrid article>div{height:300px}.projectgrid article:last-child{padding-top:60px}.projectgrid h3{font-size:20px}}@media(max-width:650px){html{scroll-padding-top:90px}:root{--space:24px}header{height:76px;padding:0 24px;gap:12px}.logo{font-size:31px}.logo span{font-size:6px;letter-spacing:2px}.navcta{font-size:9px;padding:11px 12px;gap:12px;border-radius:6px}.navcta svg{width:15px;height:15px}.menu{width:36px;height:36px;padding:7px}.menu svg{width:20px;height:20px}.hero{margin:0 9px;min-height:740px;height:calc(100svh - 88px);max-height:870px;border-radius:10px}.heroimg{object-position:63% center}.shade{background:linear-gradient(90deg,#07111da6,#08132240),linear-gradient(0deg,#0a1724cc,transparent 75%)}.herotop{padding:25px 22px;font-size:8px}.herocopy{padding:70px 22px 170px}.heroindex{font-size:10px}h1{font-size:clamp(55px,11.9vw,78px);letter-spacing:-.065em;line-height:1.02;margin:24px 0 34px}.heroactions{gap:15px;align-items:start;flex-direction:column}.btn{font-size:11px;padding:16px 18px;min-height:54px;gap:22px}.heroactions .btn{font-size:10px}.herosecond{font-size:10px;min-height:42px}.herosecond svg{width:27px;height:27px;padding:6px}.herofacts{bottom:45px;left:22px;right:22px;gap:20px;padding-top:22px}.herofacts>span{font-size:16px}.herofacts p{font-size:8px;line-height:1.9}.image-note{left:22px;bottom:15px;font-size:6px}.introstrip{padding:25px 24px;gap:15px;font-size:8px}.introstrip>span{gap:7px}.introstrip>span:last-child{display:none}.introstrip>span:before{font-size:15px}.section{padding:60px 24px}.sectionhead{margin-bottom:30px;gap:20px}.eyebrow{font-size:10px}.small{font-size:7px;max-width:110px;text-align:right}h2{font-size:42px;letter-spacing:-2.1px;line-height:1.07;margin-bottom:23px}.split{grid-template-columns:1fr;gap:0}.split>p{max-width:none;font-size:12px;margin-bottom:0}.servicetabs{margin-top:30px;gap:5px;border:0}.servicetabs button,.servicetabs button:first-child{padding:13px 9px;min-height:58px;font-size:10px;background:#e8edf0;border:1px solid transparent;border-radius:7px;gap:5px;line-height:1.5}.servicetabs button[aria-selected=true]{background:#213442;color:#fff;border-color:#213442}.servicetabs button svg{display:none}.servicepanel{grid-template-columns:1fr;margin-top:15px;min-height:0}.servicevisual{min-height:280px}.servicecontent{padding:28px 25px;min-height:420px}.servicecontent h3{font-size:35px;margin-top:23px;max-width:290px}.servicecontent p{font-size:12px}.servicecontent ul{font-size:10px}.servicecontent .btn{font-size:10px;width:100%;padding:16px 18px}.vision{grid-template-columns:1fr;margin:0 9px;min-height:0;border-radius:10px}.visionimage{min-height:360px}.visionimage>span{left:25px;bottom:25px;font-size:7px}.visioncopy{padding:38px 25px 30px}.visioncopy h2{font-size:43px;margin-top:25px}.visioncopy>p{font-size:12px}.difference{padding:20px 0;gap:15px}.difference h3{font-size:14px}.difference p{font-size:11px}.processlayout{grid-template-columns:1fr;gap:25px;margin-top:35px}.processintro{min-height:250px;padding:27px;display:grid;grid-template-columns:90px 1fr;gap:20px;align-items:center}.processintro:after{right:-100px;bottom:-120px}#stage-number{font-size:87px;letter-spacing:-6px}#stage-heading{font-size:25px;line-height:1.2;max-width:none;margin:0}#stage-meta{grid-column:1/-1;position:relative;z-index:1}.processitem button{font-size:22px;padding:22px 0}.processitem [role=region]{padding:0 20px 22px}.calculator{grid-template-columns:1fr;padding:40px 24px;margin:0 9px;gap:28px;border-radius:10px}.calcleft h2{font-size:43px;margin:25px 0 20px}.calcleft>p{font-size:12px;max-width:none}.calcdisclaimer{font-size:9px}.surfacevisual{margin-top:25px;padding:18px}.surfacecanvas{height:160px}.calcbox{padding:25px 20px;border-radius:10px}.calcboxtop{font-size:8px;margin-bottom:25px}.calcfields{gap:14px}label{font-size:10px}.calcbox select,.calcbox input{font-size:11px}.calcbox #covered{font-size:29px}.calcbox .btn{font-size:10px;padding:16px;gap:13px}.result strong{font-size:60px}.surfacevisual>p{font-size:7px}.surfacelegend{font-size:8px}.projectgrid{grid-template-columns:1fr;gap:30px;margin-top:30px}.projectgrid article:last-child{padding-top:0}.projectgrid article>div{height:350px}.projectgrid h3{font-size:23px}.sectionhead>a{font-size:9px;gap:8px}.sectionhead>a svg{width:15px}.caption{font-size:9px;line-height:1.8}.contact{grid-template-columns:1fr;margin:0 9px;border-radius:10px;padding:40px 24px;gap:28px}.contact h2{font-size:47px;margin-top:25px}.contact>div>p{font-size:12px}.contact .eyebrow{font-size:10px}.contactmark{display:none}.contact form{padding:25px 20px}.formrow{gap:23px}.contact input,.contact textarea{font-size:12px}.contact form label{font-size:10px}.contact .consent{font-size:9px}.contact .btn{font-size:11px}.contact:before{width:350px;height:350px;bottom:-180px}.formnote{font-size:8px}footer{padding:35px 24px 115px;flex-wrap:wrap;gap:25px;font-size:8px}footer>span:first-of-type{display:none}footer>span{max-width:160px}footer .logo{font-size:27px}.actiondock{width:calc(100% - 24px);max-width:430px;bottom:max(10px,env(safe-area-inset-bottom));border-radius:13px;padding:6px;gap:3px}.actiondock:hover,.actiondock:focus-within{width:calc(100% - 24px)}.actiondock>a,.actiondock>button{min-height:52px;gap:7px;padding:9px 6px;flex-direction:column;border-radius:8px}.actiondock>a>span:not(.ripple),.actiondock>button>span:not(.ripple){font-size:9px;line-height:1}.actiondock>a>svg,.actiondock>button>svg{width:18px;height:18px}.actiondock>button{flex:.9}.actiondock>.dockprimary{flex:1.15}.close{top:15px;right:15px}dialog{padding:35px 22px;max-height:calc(100svh - 28px)}dialog h2{font-size:28px}dialog pre{font-size:11px;padding:17px}.summaryactions .btn{width:100%}#explore{padding:27px 25px}#explore .close{top:24px;right:24px}.drawerhead{padding:10px 0 25px}.drawerlabel{margin:25px 0 17px;font-size:10px}#explore nav>a{font-size:26px;padding:18px 0}#explore nav>a small{font-size:9px}.drawerfoot{font-size:9px}#reference>div{padding:25px}#reference h2{font-size:26px}}@media(max-width:360px){header{padding:0 20px;gap:9px}.navcta{font-size:8px;gap:8px;padding:11px 9px}.logo{font-size:28px}.logo span{font-size:5px}.menu{width:32px;height:32px}.hero{min-height:725px}.herocopy{padding-top:65px}h1{font-size:52px}.heroactions .btn{font-size:9px;gap:15px}.herofacts>span{font-size:14px}.herofacts p{font-size:7px}.section{padding-left:20px;padding-right:20px}h2{font-size:37px}.sectionhead .small{display:none}.servicetabs button{font-size:9px}.servicecontent h3{font-size:31px}.servicevisual{min-height:245px}.servicecontent{padding:25px 22px}.calculator,.contact{padding-left:20px;padding-right:20px}.calcbox{padding:23px 16px}.calcbox .btn{font-size:9px}.processintro{grid-template-columns:75px 1fr;gap:15px;padding:25px}#stage-number{font-size:75px}#stage-heading{font-size:23px}.projectgrid article>div{height:300px}.contact h2{font-size:40px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media(min-width:901px){.actiondock{width:104px;padding:8px}.actiondock>a,.actiondock>button{flex-direction:column;justify-content:center;gap:8px;padding:13px 8px;min-height:78px}.actiondock>a>span:not(.ripple),.actiondock>button>span:not(.ripple){opacity:1;font-size:9px;line-height:1.2;text-align:center}.actiondock small,.actiondock b{display:none}.actiondock:hover,.actiondock:focus-within{width:236px}.actiondock:hover>a,.actiondock:hover>button,.actiondock:focus-within>a,.actiondock:focus-within>button{flex-direction:row;justify-content:start;gap:13px;padding:15px 13px;min-height:72px}.actiondock:hover a>span:not(.ripple),.actiondock:hover button>span:not(.ripple),.actiondock:focus-within a>span:not(.ripple),.actiondock:focus-within button>span:not(.ripple){font-size:11px;text-align:left}.actiondock:hover small,.actiondock:hover b,.actiondock:focus-within small,.actiondock:focus-within b{display:block}.actiondock>a:before,.actiondock>button:before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 20%,#ffffff22 50%,transparent 80%);transform:translateX(-120%);pointer-events:none;transition:transform .6s var(--ease)}.actiondock>a:hover:before,.actiondock>button:hover:before{transform:translateX(120%)}}
@media(min-width:901px){body{padding-right:116px}.scrollprogress{width:calc(100% - 116px)}.actiondock{right:10px;width:96px}.actiondock:hover,.actiondock:focus-within{width:236px}}
