*{box-sizing:border-box}html{scroll-padding-top:90px}body{margin:0;background:var(--paper,#f3f1ea);color:var(--ink,#151715);font-family:Arial,Helvetica,sans-serif;line-height:1.45;-webkit-text-size-adjust:100%}button,input,textarea,select{font:inherit}button,a,input,summary{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}img,video{display:block;max-width:100%;width:100%}button{color:inherit}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400;line-height:1.02;letter-spacing:-.055em}h1{font-size:clamp(52px,6.4vw,118px)}h2{font-size:clamp(40px,4.5vw,82px)}h3{font-size:clamp(26px,2.6vw,44px)}p{max-width:64ch}::selection{background:#cae4df;color:#101714}:focus-visible{outline:3px solid var(--accent,#168271);outline-offset:5px}.skip{position:fixed;left:16px;top:-80px;z-index:100;background:#fff;padding:15px}.skip:focus{top:12px}.wrap{width:calc(100% - 120px);max-width:1680px;margin-inline:auto}.section{padding-block:120px}.label{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.lede{font-size:clamp(18px,1.5vw,25px);line-height:1.5}.muted{color:var(--muted,#666963)}.section-intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw;margin-bottom:64px}.section-intro .label{margin-bottom:24px}.section-intro p{align-self:end;max-width:48ch}.site-header{height:82px;padding:0 60px;display:flex;align-items:center;gap:32px;position:absolute;inset:0 0 auto;z-index:30;color:var(--header-ink,inherit)}.brand{font-size:23px;font-weight:700;letter-spacing:-.05em;text-decoration:none}.site-header nav{display:flex;gap:28px;margin-left:auto;font-size:13px}.site-header nav a{text-decoration:none}.site-header nav a:hover{text-decoration:underline}.phone{font-size:13px;text-decoration:none;white-space:nowrap}.menu-button{display:none;background:none;border:1px solid currentColor;padding:9px 13px}.button{display:inline-flex;gap:30px;align-items:center;justify-content:space-between;min-height:54px;padding:15px 22px;border:1px solid currentColor;text-decoration:none;background:var(--button-bg,#151715);color:var(--button-ink,#fff);font-size:14px;line-height:1.3;max-width:100%;transition:background .2s,color .2s}.button:hover{background:var(--accent,#168271);color:#fff;border-color:var(--accent,#168271)}.text-link{font-size:14px}.media{position:relative;isolation:isolate;background:#d7d8d1;aspect-ratio:16/9;overflow:hidden}.media video,.media>img{height:100%;object-fit:cover}.media.portrait{aspect-ratio:9/16}.video-toggle{position:absolute;bottom:18px;right:18px;border:1px solid #fff9;color:#fff;background:#131716de;padding:9px 13px;font-size:11px;z-index:5}.media figcaption{position:absolute;bottom:20px;left:22px;color:#fff;background:#151715d9;padding:8px 12px;font-size:11px;max-width:calc(100% - 180px)}.image-caption{font-size:12px;margin-top:12px;color:var(--muted,#666963)}.project-copy{max-width:630px}.project-copy .label{margin-bottom:20px}.project-copy h3{margin-bottom:24px}.project-copy p{font-size:18px;margin-bottom:26px}.detail-button{border:0;background:none;padding:0;text-decoration:underline;text-underline-offset:5px;font-size:13px}.engineering-list{border-top:1px solid #9c9e9355}.engineering-list article{display:grid;grid-template-columns:60px 1fr 1fr;gap:30px;border-bottom:1px solid #9c9e9355;padding:28px 0}.engineering-list article p{font-size:16px;color:var(--muted,#666963)}.engineering-list article h3{font-size:30px}.service-note{margin-top:42px;display:grid;grid-template-columns:1fr 1fr;gap:10vw}.service-note p{font-size:15px}.cost-parts{list-style:none;padding:0;margin:32px 0}.cost-parts li{border-bottom:1px solid #9c9e934d;padding:17px 0;display:flex;gap:25px;justify-content:space-between;font-size:19px}.cost-parts span{font-size:12px;color:var(--muted,#666963)}.cost-layout{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.cost-layout h2{margin:24px 0 32px}.cost-layout .button{margin-top:32px}.faq-list{max-width:950px;margin-left:auto}.faq-list details{border-bottom:1px solid #9c9e9355}.faq-list summary{padding:26px 0;cursor:pointer;font-size:21px;list-style:none;display:flex;justify-content:space-between;gap:24px}.faq-list summary::after{content:'+';font-weight:400}.faq-list details[open] summary::after{content:'−'}.faq-list details p{padding-bottom:28px;max-width:60ch;font-size:16px;color:var(--muted,#666963)}.contact-section{padding:110px 0;background:var(--contact-bg,#dce5dd);color:var(--contact-ink,#142019)}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.contact-layout h2{margin:22px 0 30px}.contact-person{margin-top:65px;font-size:15px}.contact-person a{display:block;margin-top:12px}.contact-form{padding-top:20px}.contact-form label{display:block;font-size:13px;margin:0 0 26px}.contact-form input:not([type=file]),.contact-form textarea{display:block;width:100%;border:0;border-bottom:1px solid currentColor;border-radius:0;background:transparent;padding:12px 0;color:inherit;outline-offset:3px;font-size:18px}.contact-form textarea{height:100px;resize:vertical}.contact-form input[type=file]{display:block;margin-top:14px;width:100%;font-size:13px}.contact-form small{display:block;font-size:12px;margin:22px 0;max-width:46ch}.form-status{margin-top:20px;font-size:15px;min-height:2em}.site-footer{padding:45px 0;font-size:13px}.footer-top,.footer-bottom{display:flex;gap:30px;justify-content:space-between;align-items:start}.footer-bottom{border-top:1px solid #9c9e9355;margin-top:45px;padding-top:24px;color:var(--muted,#666963)}.footer-actions{display:flex;gap:25px;flex-wrap:wrap}.motion-toggle{border:0;background:none;text-decoration:underline;padding:0;color:inherit;font-size:12px}.solution-choice{background:none;border:0;text-align:left;color:inherit}.solution-choice[aria-pressed=true]{color:var(--accent,#168271)}dialog{border:0;padding:0;max-width:900px;width:calc(100% - 40px);color:#151715;background:#f3f1ea;max-height:90dvh;overflow:auto}dialog::backdrop{background:#0009}.dialog-close{position:sticky;top:10px;float:right;margin:15px;z-index:2;background:#f3f1ea;border:1px solid #151715;padding:10px 16px}.dialog-content{padding:50px}.dialog-content h2{font-size:42px;margin:20px 0}.dialog-content .label{margin-top:25px}.dialog-content p{margin:20px 0}.dialog-content .media{margin:30px 0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.motion-sequence{position:relative}.sticky-stage{position:sticky;top:0;min-height:100svh}.reduced .motion-sequence{height:auto!important}.reduced .sticky-stage{position:relative;height:auto;min-height:0}.reduced [data-state]{opacity:1!important;visibility:visible!important;transform:none!important;clip-path:none!important}.reduced video{object-fit:cover}.reduced *{transition-duration:0s!important;animation:none!important}
[hidden]{display:none!important}img{height:auto}button{min-height:44px}.phone{display:inline-flex;align-items:center;min-height:44px}.site-header nav a{padding-block:12px}.footer-actions a{display:inline-flex;align-items:center;min-height:44px}.contact-person a{min-height:44px;padding-block:8px}:focus-visible{outline-color:var(--focus,var(--accent,#168271))}.site-header :focus-visible{outline-color:currentColor}.video-toggle:focus-visible{outline-color:#fff;box-shadow:0 0 0 7px #131716}
@media(min-width:1900px){.wrap{width:calc(100% - 160px)}.site-header{padding-inline:80px}.section{padding-block:150px}}
@media(max-width:900px){.wrap{width:calc(100% - 56px)}.section{padding-block:80px}.site-header{padding-inline:28px;gap:20px}.site-header nav{gap:17px}.phone{font-size:12px}.section-intro,.cost-layout,.service-note{gap:40px}.contact-layout{gap:50px}}
@media(max-width:700px){html{scroll-padding-top:75px}.wrap{width:calc(100% - 40px)}.section{padding-block:65px}h1{font-size:48px;line-height:1.04;letter-spacing:-.055em}h2{font-size:39px}.site-header{height:70px;padding:0 20px;gap:15px}.brand{font-size:20px}.phone{margin-left:auto;font-size:11px}.menu-button{display:block;font-size:11px}.site-header nav{display:none;position:absolute;top:70px;left:0;right:0;padding:25px 20px;background:var(--paper,#f3f1ea);color:var(--ink,#151715);flex-direction:column;font-size:20px;border-bottom:1px solid #aaa;gap:22px}.site-header nav.open{display:flex}.section-intro,.cost-layout,.service-note,.contact-layout{grid-template-columns:1fr;gap:30px}.section-intro{margin-bottom:35px}.lede{font-size:18px}.button{min-height:50px;font-size:13px}.engineering-list article{grid-template-columns:30px 1fr;gap:12px}.engineering-list article p{grid-column:2}.engineering-list article h3{font-size:26px}.contact-section{padding-block:65px}.contact-person{margin-top:35px}.contact-form{padding-top:0}.footer-top,.footer-bottom{flex-direction:column;gap:22px}.footer-bottom{margin-top:30px}.media figcaption{max-width:calc(100% - 150px);left:12px;bottom:12px;font-size:10px}.video-toggle{right:12px;bottom:12px}.dialog-content{padding:25px}.dialog-content h2{font-size:32px}.faq-list summary{font-size:18px}.cost-parts li{font-size:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.motion-sequence{height:auto!important}.sticky-stage{position:relative!important;min-height:0!important}[data-state]{opacity:1!important;visibility:visible!important;transform:none!important;clip-path:none!important}}
