:root{--paper:#f2f2f0;--ink:#060610;--blue:#191970;--sky:#89c4f4;--ok:#2ecc71;--err:#e74c3c;--rule:rgba(25,25,112,.17);--display:'Bebas Neue','Arial Narrow',sans-serif;--body:'DM Sans',sans-serif;--mono:'DM Mono',monospace;--gutter:clamp(24px,4.4vw,88px)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:15px;-webkit-font-smoothing:antialiased}body:has(dialog[open]),body.menu-open{overflow:hidden}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:disabled{cursor:wait;opacity:.6}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--sky);outline-offset:5px}a:active,button:active{opacity:.7}::selection{color:var(--paper);background:var(--blue)}button{border:0}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--display);font-weight:400;text-transform:uppercase}em{font-style:normal;color:var(--blue)}.mono,.eyebrow{font-family:var(--mono);font-size:10px;font-weight:400;line-height:1.6;letter-spacing:.055em;text-transform:uppercase}.eyebrow{margin-bottom:24px}.skip-link{position:fixed;top:10px;left:10px;z-index:100;background:var(--blue);color:var(--paper);padding:15px;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}
.site-header{height:98px;display:flex;align-items:center;justify-content:space-between;gap:35px;padding:0 var(--gutter);position:relative;z-index:20;border-bottom:1px solid var(--rule);background:var(--paper)}.brand{display:flex;align-items:center;gap:15px;font-size:17px;font-weight:600;line-height:1.2}.brand-mark{width:43px;height:34px;color:var(--blue)}.brand-caption{display:block;font-family:var(--mono);font-size:8px;text-transform:uppercase;letter-spacing:.07em;margin-top:6px;font-weight:400}.desktop-nav{display:flex;gap:33px;margin-left:auto;margin-right:30px;font-size:12px}.desktop-nav a{position:relative;padding:10px 0}.desktop-nav a:after,.text-link:after{position:absolute;content:'';height:1px;background:currentColor;bottom:3px;left:0;right:0;transform:scaleX(0);transform-origin:left;transition:transform .25s}.desktop-nav a:hover:after,.text-link:hover:after{transform:scaleX(1)}.header-cta{display:flex;align-items:center;gap:42px;border:1px solid var(--rule);padding:14px 19px;font-size:12px}.header-cta span{font-size:20px;line-height:1;transition:transform .25s}.header-cta:hover span{transform:translate(3px,-3px)}.menu-toggle{display:none;background:none;width:36px;height:36px}.mobile-menu{position:fixed;inset:78px 0 0;background:var(--paper);z-index:25;padding:40px 24px}.mobile-menu a{font-family:var(--display);font-size:42px;display:block;border-bottom:1px solid var(--rule);padding:14px 0}
.hero{height:min(830px,calc(100svh - 98px));min-height:670px;padding:32px var(--gutter) 0;position:relative;isolation:isolate;overflow:hidden}.hero-topline{display:flex;justify-content:space-between;position:relative;z-index:3}.availability{display:flex;align-items:center;gap:10px}.availability i{width:5px;height:5px;display:inline-block;background:var(--blue);border-radius:50%}.hero-copy{position:relative;z-index:2;padding-top:clamp(58px,6vw,100px);pointer-events:none}.hero-copy a{pointer-events:auto}h1{font-size:clamp(84px,9.35vw,162px);line-height:.91;letter-spacing:-.015em;max-width:76%;}h1>span{display:block;white-space:nowrap}h1 .period{color:var(--blue)}.hero-description{margin-top:35px;max-width:410px}.hero-description>p{font-size:16px;line-height:1.7;letter-spacing:-.015em;margin-bottom:25px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:18px 21px;font-size:12px;min-height:56px;border:1px solid transparent;transition:transform .25s}.button:hover{transform:translateY(-3px)}.button:active{transform:translateY(0)}.button-dark{background:var(--ink);color:var(--paper)}.button-light{background:var(--paper);color:var(--ink)}.button-arrow{font-size:22px;line-height:16px;display:inline-block;transition:transform .25s}.button:hover .button-arrow{transform:translate(3px,-3px)}.text-link{display:inline-flex;align-items:center;gap:25px;font-size:12px;position:relative;padding:9px 0}.text-link span{font-size:18px}.hero-description>.text-link{display:flex;width:max-content;margin-top:12px;gap:17px}.hero-art{position:absolute;right:-2%;top:50px;width:51%;height:calc(100% - 85px);z-index:1;cursor:grab;touch-action:pan-y}.hero-art:active{cursor:grabbing}.hero-art canvas,.process-art canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.art-cross{position:absolute;font-family:var(--mono);font-size:19px;font-weight:400;color:var(--blue);opacity:.45}.cross-top{top:13%;right:18%}.cross-bottom{bottom:17%;left:12%}.art-label{position:absolute;right:19%;bottom:6%;font-size:9px;display:flex;gap:11px;align-items:center}.tiny-line{width:28px;height:1px;background:var(--blue);opacity:.5}.hero-foot{position:absolute;left:var(--gutter);right:var(--gutter);bottom:25px;display:flex;align-items:end;justify-content:space-between;z-index:5;font-size:9px}.scroll-cue{display:flex;gap:15px;align-items:center}.scroll-line{height:35px;width:1px;background:var(--blue);position:relative;overflow:hidden}.scroll-line:after{content:'';position:absolute;width:1px;height:12px;top:0;left:0;background:var(--paper);animation:scrollCue 2.5s ease-in-out infinite}@keyframes scrollCue{to{transform:translateY(50px)}}.hero-note{margin-right:8%;line-height:1.8}.motion-toggle{font-family:var(--mono);font-size:9px;letter-spacing:.03em;text-transform:uppercase;display:flex;align-items:center;gap:16px;padding:10px 0;background:transparent}.motion-toggle:hover{color:var(--blue)}.scene-fallback{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;perspective:900px}.scene-fallback span{position:absolute;width:240px;height:240px;border:28px solid var(--blue);border-radius:62px;transform:rotateX(27deg) rotateY(-30deg) rotateZ(-25deg)}.scene-fallback span:nth-child(2){margin:35px 0 0 35px}.scene-fallback span:nth-child(3){margin:70px 0 0 70px}.scene-fallback span:nth-child(4){margin:105px 0 0 105px}.scene-fallback span:nth-child(5){margin:140px 0 0 140px}.scene-ready .scene-fallback{display:none}.principle-strip{padding:25px var(--gutter);display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--rule);font-size:11px}.principle-strip>span:nth-child(even){color:var(--blue);font-size:22px;line-height:1}
.approach{height:290svh;min-height:1900px;background:var(--ink);color:var(--paper);position:relative}.approach-sticky{height:100svh;min-height:690px;max-height:1150px;position:sticky;top:0;padding:33px var(--gutter) 24px;overflow:hidden}.section-topline{display:flex;justify-content:space-between;gap:24px;padding-bottom:24px;border-bottom:1px solid var(--rule);font-size:9px}.approach .section-topline{--rule:rgba(137,196,244,.2);color:var(--sky)}.approach-layout{display:grid;grid-template-columns:1fr 1.08fr;height:calc(100% - 110px);align-items:center;gap:40px}.approach-copy{position:relative;z-index:2}.approach .eyebrow{color:var(--sky);font-size:10px;margin-bottom:18px}h2{font-size:clamp(64px,6.7vw,110px);line-height:.92;letter-spacing:-.013em}.approach h2 span{color:var(--sky)}.process-slides{display:grid;margin-top:36px;max-width:400px;min-height:177px}.process-slide{grid-area:1/1;opacity:0;transform:translateY(15px);transition:opacity .4s,transform .4s;pointer-events:none}.process-slide.is-current{opacity:1;transform:translateY(0);pointer-events:auto}.step-number{color:var(--sky);font-size:10px}.process-slide h3{font-family:var(--body);font-size:21px;text-transform:none;letter-spacing:-.035em;margin:13px 0 10px}.process-slide p{font-size:14px;line-height:1.8;color:rgba(242,242,240,.6);max-width:355px}.process-controls{display:flex;gap:10px;margin-top:22px}.process-controls button{height:35px;width:78px;background:none;border-top:1px solid rgba(242,242,240,.25);padding:9px 0;text-align:left;color:rgba(242,242,240,.4);font-family:var(--mono);font-size:10px}.process-controls button.is-active,.process-controls button:hover{border-color:var(--sky);color:var(--sky)}.process-art{position:relative;height:100%;max-height:660px;min-width:0;isolation:isolate}.process-orbit{position:absolute;inset:18% 5%;border:1px solid rgba(137,196,244,.13);border-radius:50%;transform:rotate(-24deg) scaleY(.65);z-index:-1}.process-art-caption{position:absolute;bottom:3%;left:5%;right:5%;display:flex;justify-content:space-between;color:var(--sky);font-size:9px}.approach-bottom{display:flex;justify-content:space-between;color:rgba(242,242,240,.4);font-size:9px}.approach-bottom>span:last-child{font-size:20px}
.section-pad{padding:35px var(--gutter) 90px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin:66px 0 56px}.section-heading>p{max-width:355px;font-size:15px;line-height:1.8;margin-bottom:5px}.service{border-top:1px solid var(--rule)}.service:last-child{border-bottom:1px solid var(--rule)}.service summary{padding:29px 0;display:grid;grid-template-columns:20% 1fr 45px;align-items:center;list-style:none;gap:25px;cursor:pointer}.service summary::-webkit-details-marker{display:none}.service-kind{font-size:9px;color:var(--blue)}.service h3{font-size:clamp(28px,3.4vw,54px);letter-spacing:-.02em}.service-toggle{font-size:26px;font-weight:300;justify-self:end;transition:transform .25s}.service[open] .service-toggle{transform:rotate(45deg)}.service summary:hover .service-toggle{color:var(--blue)}.service-content{padding:0 70px 37px calc(20% + 25px);max-width:1050px}.service-content>p{font-size:15px;line-height:1.8;max-width:600px;color:rgba(6,6,16,.65)}.service-tags{display:flex;gap:8px;flex-wrap:wrap;margin:21px 0 12px;font-size:9px}.service-tags>span{border:1px solid var(--rule);padding:7px 10px}.honesty-note{margin-top:30px;display:flex;align-items:center;gap:20px;font-size:12px;color:rgba(6,6,16,.65)}.honesty-note>span{font-size:22px;color:var(--blue)}
.calculator-section{background:var(--blue);color:var(--paper);--rule:rgba(242,242,240,.2);padding-bottom:100px}.calculator-section .section-topline{color:var(--sky)}.calculator-promo{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;align-items:center;margin-top:75px}.calculator-promo .eyebrow{color:var(--sky);font-size:9px}.calculator-promo h2{font-size:clamp(64px,6.9vw,112px)}.calculator-promo h2 span{color:var(--sky)}.calculator-promo p:not(.eyebrow){max-width:350px;line-height:1.8;margin-top:27px;font-size:14px;color:rgba(242,242,240,.7)}.calculator-promo .button{margin-top:29px}.cost-equation{display:flex;justify-content:space-between;font-size:9px;border-bottom:1px solid var(--rule);padding-bottom:21px}.cost-number{font-family:var(--display);font-size:clamp(130px,19vw,300px);line-height:1;padding:27px 0 7px;letter-spacing:-.015em;white-space:nowrap}.cost-number>span{font-family:var(--mono);font-size:17px;letter-spacing:0;margin-left:12px;color:var(--sky)}.cost-caption{border-top:1px solid var(--rule);padding-top:18px;font-size:9px;display:flex;justify-content:space-between}.cost-caption>span:last-child{font-size:18px}.calculator-promo .cost-fine{font-size:10px!important;color:rgba(242,242,240,.4)!important;margin-top:10px!important}
.about-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:12%;align-items:center;margin-top:75px}.portrait{position:relative;max-width:500px}.portrait img{display:block;width:100%;height:auto;aspect-ratio:1/1.06;object-fit:cover;filter:grayscale(1);background:var(--ink)}.portrait figcaption{display:flex;justify-content:space-between;font-size:8px;margin-top:18px;gap:20px}.about-copy .eyebrow{font-size:9px;color:var(--blue);margin-bottom:20px}.about-copy h2{font-size:clamp(58px,5.7vw,98px);margin-bottom:28px}.about-copy>p:not(.eyebrow){max-width:450px;margin-top:18px;font-size:14px;line-height:1.85;color:rgba(6,6,16,.7)}.about-copy .text-link{margin-top:23px}.experience-row{display:grid;grid-template-columns:1fr 1.15fr 1.6fr;margin-top:65px;border-top:1px solid var(--rule);padding-top:28px;gap:35px;align-items:center}.experience-row>.mono{font-size:9px;color:var(--blue)}.experience-name{font-size:22px;letter-spacing:-.05em;font-weight:500}.experience-row div>p{font-size:10px;margin-top:7px;color:rgba(6,6,16,.55)}
.contact{background:var(--ink);color:var(--paper);--rule:rgba(242,242,240,.15);padding-bottom:95px}.contact .section-topline{color:var(--sky)}.contact-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:12%;margin-top:75px;align-items:center}.contact .eyebrow{color:rgba(242,242,240,.5);font-size:9px}.contact h2{font-size:clamp(94px,11vw,180px);position:relative}.contact h2 span{color:var(--sky)}.contact h2 a{font-family:var(--body);font-size:.75em;display:inline-block;margin-left:30px;transition:transform .35s}.contact h2 a:hover{transform:translate(8px,-8px)}.contact-layout>div>p:not(.eyebrow){margin-top:22px;line-height:1.8;font-size:14px;color:rgba(242,242,240,.6)}.contact-card{border-top:1px solid rgba(137,196,244,.25);padding-top:24px}.contact-card>.mono{font-size:9px;color:var(--sky)}.contact-card>p{font-family:var(--display)!important;font-size:42px!important;line-height:1!important;color:var(--paper)!important;margin:25px 0!important}.contact-card>.button{width:100%;gap:20px}.contact-email{display:inline-block;font-size:11px;margin-top:22px;border-bottom:1px solid rgba(242,242,240,.3);padding-bottom:5px}.contact-email:hover{color:var(--sky)}.footer{background:var(--ink);color:var(--paper);padding:0 var(--gutter) 26px}.footer-brand{display:block;font-family:var(--display);font-size:clamp(70px,17.9vw,310px);line-height:1.04;letter-spacing:-.015em;border-top:1px solid rgba(242,242,240,.15);padding-top:25px;white-space:nowrap}.footer-brand>span{font-family:var(--mono);font-size:10px;vertical-align:top;display:inline-block;margin-top:25px;margin-left:15px;color:var(--sky)}.footer-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid rgba(242,242,240,.15);padding-top:22px;color:rgba(242,242,240,.5);font-size:8px}.footer-bottom a:hover{color:var(--sky)}
dialog{border:0;background:var(--paper);color:var(--ink);width:min(960px,calc(100% - 40px));max-height:90svh;padding:0}dialog::backdrop{background:rgba(6,6,16,.8);backdrop-filter:blur(8px)}.dialog-inner{padding:45px;position:relative}.dialog-close{position:absolute;top:16px;right:20px;width:36px;height:36px;background:transparent;font-size:30px;line-height:1}.dialog-close:hover{color:var(--blue);transform:rotate(90deg)}dialog .eyebrow{font-size:9px;color:var(--blue);margin-bottom:12px}dialog h2{font-size:53px}dialog .dialog-intro{font-size:13px;line-height:1.6;margin-top:12px;max-width:500px}.calc-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:35px;margin-top:30px}label{display:block;font-size:11px;margin:17px 0 8px}label span{opacity:.5}input:not([type=range]),select,textarea{width:100%;min-width:0;padding:13px 12px;border:1px solid var(--rule);border-radius:0;background:transparent;font-size:12px;color:var(--ink)}textarea{resize:vertical;min-height:100px}select{padding-right:26px}.range-field{margin-top:23px}.range-field label{display:flex;justify-content:space-between;gap:15px}.range-field output{font-family:var(--mono);font-size:10px;color:var(--blue)}input[type=range]{width:100%;height:4px;appearance:none;-webkit-appearance:none;background:rgba(25,25,112,.15);accent-color:var(--blue);margin:11px 0;cursor:pointer}input[type=range]::-webkit-slider-thumb{appearance:none;width:14px;height:14px;border-radius:50%;background:var(--blue)}input[type=range]::-moz-range-thumb{width:14px;height:14px;border:0;border-radius:50%;background:var(--blue)}.calc-results{background:rgba(25,25,112,.05);padding:25px}.calc-results>.mono{font-size:9px;color:var(--blue)}#result-value{display:block;font-family:var(--display);font-size:70px;font-weight:400;color:var(--blue);line-height:1.1;margin:25px 0}.result-detail{display:grid;grid-template-columns:1fr 1fr;gap:20px}.result-detail span{font-size:10px;line-height:1.6}.result-detail b{font-family:var(--mono);font-weight:400;font-size:23px;display:block}.projected-cost{font-size:11px;line-height:1.6;margin:25px 0}.calc-results .button{width:100%;padding:15px;gap:14px;font-size:11px}.locked-value{font-family:var(--display);font-size:56px;color:var(--blue);opacity:.4;margin:20px 0}.calc-results form>p:not(.form-status):not(.form-fine){font-size:12px;line-height:1.7}.calc-results form .button{margin-top:20px}.calc-assumption{font-size:9px;line-height:1.8;opacity:.6;margin-top:22px;border-top:1px solid var(--rule);padding-top:17px}.form-status{font-size:11px;line-height:1.6;margin-top:14px}.form-status:empty{display:none}.form-fine{font-size:10px;line-height:1.6;opacity:.6;margin-top:12px}.is-error{color:var(--err)}.is-success{color:var(--blue)}#contact-dialog{max-width:650px}.form-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}#contact-form{margin-top:24px}#contact-submit{margin-top:24px}#contact-form>.text-link{font-size:11px;margin-top:15px}[hidden]{display:none!important}
@media(prefers-reduced-motion:no-preference){.js [data-reveal]{opacity:0;transform:translateY(26px);transition:opacity .7s,transform .7s}.js [data-reveal].is-visible{opacity:1;transform:translateY(0)}.hero-copy{animation:heroIn .9s .1s both}.hero-topline{animation:heroIn .8s both}@keyframes heroIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}}
@media(min-width:1800px){.hero{max-height:920px}.hero-copy{padding-top:110px}.hero-art{right:0;width:49%}.approach-layout{gap:8%}.hero-description{margin-top:45px}.hero-description>p{font-size:18px}.site-header{height:110px}}
@media(max-width:1100px){.desktop-nav{gap:20px;margin-right:0}.hero{min-height:680px}.hero-copy{padding-top:85px}h1{font-size:9.7vw}.hero-art{right:-8%;width:57%;top:40px}.hero-description>p{font-size:14px}.hero-note{display:none}.approach-layout{gap:0;grid-template-columns:1fr 1fr}.approach h2{font-size:7.5vw}.service summary{grid-template-columns:17% 1fr 35px}.service-content{padding-left:calc(17% + 25px)}.calculator-promo{gap:7%}.about-layout{gap:7%}.about-copy h2{font-size:6vw}.contact-layout{gap:7%}.cost-equation{font-size:8px}.portrait figcaption{font-size:7px}}
@media(max-width:760px){html{scroll-padding-top:20px}.site-header{height:78px;gap:20px}.brand{font-size:15px;gap:11px}.brand-mark{width:34px}.brand-caption{font-size:6px;letter-spacing:.06em}.desktop-nav{display:none}.header-cta{margin-left:auto;font-size:10px;padding:11px 13px;gap:18px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;padding:5px;width:30px}.menu-toggle span{width:20px;height:1px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.hero{height:auto;min-height:890px;padding-top:25px}.hero-location{display:none}.hero-topline{font-size:8px}.hero-copy{padding-top:46px}h1{font-size:17.8vw;max-width:100%;line-height:.94}.hero-description{margin-top:22px;max-width:100%}.hero-description>p{font-size:13px;line-height:1.75}.hero-description .button{min-height:49px;padding:15px 17px;font-size:11px}.hero-description>.text-link{font-size:10px;position:relative;z-index:5}.hero-art{top:395px;right:0;width:100%;height:430px;z-index:1}.art-label{right:15%;bottom:9%;font-size:8px}.cross-top{top:16%;right:8%}.cross-bottom{left:11%;bottom:20%}.hero-foot{font-size:7px;bottom:23px}.motion-toggle{font-size:7px;gap:9px}.scroll-cue{gap:10px}.scroll-line{height:27px}.principle-strip{padding:21px var(--gutter);font-size:8px;gap:15px}.principle-strip>span:nth-child(even){font-size:16px}.principle-strip>span{max-width:90px}.approach{height:290svh;min-height:2250px}.approach-sticky{min-height:750px;padding-top:25px;max-height:none}.section-topline{font-size:8px;padding-bottom:19px;gap:25px}.section-topline>span:last-child{text-align:right;max-width:170px}.approach-layout{display:block;height:calc(100% - 105px);position:relative;padding-top:38px}.approach .eyebrow{font-size:8px;margin-bottom:15px}.approach h2{font-size:clamp(62px,10vw,80px)}.process-slides{margin-top:24px;min-height:165px;max-width:100%}.process-slide h3{font-size:18px;margin-top:9px}.process-slide p{font-size:12px;max-width:320px;line-height:1.8}.step-number{font-size:8px}.process-controls{margin-top:12px;position:relative;z-index:3}.process-art{position:absolute;width:100%;height:330px;bottom:0;left:0;max-height:40svh;min-height:230px}.process-art-caption{font-size:7px;left:0;right:0;bottom:0}.approach-bottom{font-size:7px;gap:20px}.approach-bottom>span:first-child{max-width:260px}.process-orbit{inset:10% 10%}.section-pad{padding-top:25px;padding-bottom:60px}.section-heading{display:block;margin:42px 0 35px}h2{font-size:68px}.section-heading>p{font-size:12px;margin-top:24px;line-height:1.8}.service summary{grid-template-columns:1fr 24px;gap:9px;padding:23px 0}.service-kind{grid-column:1;font-size:8px}.service h3{grid-column:1;font-size:32px}.service-toggle{grid-column:2;grid-row:1/3;font-size:23px}.service-content{padding:0 5px 25px;max-width:100%}.service-content>p{font-size:12px;line-height:1.8}.service-tags{font-size:7px;gap:6px;margin-top:16px}.service-tags>span{padding:6px 8px}.service-content .text-link{font-size:11px}.honesty-note{font-size:10px;align-items:start;gap:12px;line-height:1.8}.calculator-promo{grid-template-columns:1fr;margin-top:42px;gap:45px}.calculator-promo h2{font-size:74px}.calculator-promo .eyebrow{font-size:8px}.calculator-promo p:not(.eyebrow){font-size:12px;max-width:280px;margin-top:20px}.calculator-promo .button{font-size:11px;margin-top:24px}.cost-number{font-size:48vw;max-width:100%;padding:20px 0 0}.cost-number>span{font-size:17px;margin-left:16px}.cost-equation{font-size:8px}.cost-caption{font-size:8px}.about-layout{grid-template-columns:1fr;gap:42px;margin-top:40px}.portrait{width:100%;max-width:100%}.portrait img{aspect-ratio:1/1;object-position:50% 30%}.portrait figcaption{font-size:7px}.about-copy h2{font-size:68px}.about-copy .eyebrow{font-size:8px}.about-copy>p:not(.eyebrow){font-size:13px}.about-copy .text-link{font-size:11px}.experience-row{grid-template-columns:1fr;gap:25px;margin-top:40px}.experience-row>.mono br{display:none}.experience-name{font-size:24px}.experience-row div>p{font-size:10px;line-height:1.7}.contact-layout{grid-template-columns:1fr;gap:40px;margin-top:43px}.contact .eyebrow{font-size:8px}.contact h2{font-size:25vw}.contact h2 a{margin-left:25px}.contact-layout>div>p:not(.eyebrow){font-size:12px}.contact-card>p{font-size:36px!important}.contact-card>.button{font-size:11px}.contact-card>.mono{font-size:8px}.footer-brand{font-size:17.3vw;padding-top:25px;padding-bottom:18px}.footer-brand>span{font-size:6px;margin-top:6px;margin-left:5px}.footer-bottom{font-size:7px;flex-wrap:wrap;row-gap:14px}.footer-bottom>span:nth-child(2){display:none}.dialog-inner{padding:35px 22px}.dialog-close{top:9px;right:12px}dialog h2{font-size:40px;max-width:90%}dialog .eyebrow{font-size:8px}dialog .dialog-intro{font-size:12px}.calc-grid{grid-template-columns:1fr;gap:30px}.calc-results{padding:23px}.form-columns{grid-template-columns:1fr;gap:0}#contact-submit{width:100%;font-size:11px}.scene-fallback{transform:scale(.8)}body.menu-open main,body.menu-open footer{pointer-events:none}}
@media(max-width:390px){:root{--gutter:20px}.brand-caption{display:none}.brand{font-size:14px}.site-header{gap:13px}.header-cta{gap:12px}.hero{min-height:860px}.hero-art{top:380px;height:410px}.hero-copy{padding-top:45px}h1{font-size:17.8vw}.hero-description>p{font-size:12px}.principle-strip{font-size:7px;gap:10px}.section-topline{font-size:7px}.calculator-promo h2{font-size:67px}.about-copy h2{font-size:63px}.service h3{font-size:29px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.approach{height:auto;min-height:0}.approach-sticky{position:relative;height:auto;min-height:0}.approach-layout{padding-top:50px;height:auto;min-height:590px}.process-slides{display:block}.process-slide{opacity:1;transform:none;pointer-events:auto;margin-bottom:28px}.process-slide[inert]{display:block}.process-controls{display:none}.approach-bottom{margin-top:35px}.motion-toggle{display:none}.process-art{height:500px}.approach-copy{padding-bottom:20px}.hero-copy,.hero-topline{opacity:1;transform:none}}@media(max-width:760px) and (prefers-reduced-motion:reduce){.approach-layout{padding-bottom:310px}.process-art{height:290px;max-height:none}.process-slides{max-width:100%}.process-slide p{max-width:100%}}
.motion-paused .scroll-line:after{animation-play-state:paused}
.noscript-note{padding:20px var(--gutter);font-size:12px;border-bottom:1px solid var(--rule)}
html:not(.js) .approach{height:auto;min-height:0}html:not(.js) .approach-sticky{height:auto;position:relative}html:not(.js) .process-slides{display:block}html:not(.js) .process-slide{opacity:1;transform:none;margin-bottom:25px}html:not(.js) .process-controls{display:none}
@media(max-width:760px){html:not(.js) .approach-layout{padding-bottom:310px}}
@media(min-width:391px) and (max-width:760px){.hero{min-height:calc(40vw + 704px)}.hero-art{top:calc(40vw + 224px)}}

/* Legal pages: Privacy Policy, Cookie Policy */
.legal{background:var(--paper);color:var(--ink);padding:clamp(84px,13vw,150px) var(--gutter) clamp(64px,10vw,120px);overflow-x:clip}
.legal-inner{max-width:820px;margin:0 auto}
.legal-inner .eyebrow{color:var(--blue);margin-bottom:20px}
.legal-embed{font-family:var(--body);font-size:15px;line-height:1.75;overflow-wrap:anywhere}
.legal-embed *{max-width:100%}
.legal-embed #table-of-content-wrapper.hidden{display:none}
.legal-embed h1{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(40px,7vw,72px);line-height:1;letter-spacing:-.01em;margin:0 0 26px}
.legal-embed h2{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(21px,3vw,29px);line-height:1.08;margin:46px 0 12px}
.legal-embed h3{font-weight:600;font-size:16px;margin:28px 0 6px}
.legal-embed h4,.legal-embed h5,.legal-embed h6{font-weight:600;font-size:14px;margin:20px 0 4px}
.legal-embed p{margin:0 0 14px}
.legal-embed ul,.legal-embed ol{margin:0 0 16px;padding-left:20px}
.legal-embed li{margin:5px 0}
.legal-embed a{color:var(--blue);text-decoration:underline}
.legal-embed hr{border:0;border-top:1px solid var(--rule);margin:36px 0}
.footer-legal{margin-top:10px;font-size:12px;line-height:1.6;color:rgba(242,242,240,.55)}
.footer-legal a{text-decoration:underline;text-underline-offset:2px}
.footer-legal a:hover{color:var(--sky)}
