@font-face{font-family:Inter Variable;src:url(/_astro/inter-latin-wght-normal.Dx4kXJAl.woff2)format("woff2");font-style:normal;font-weight:100 900;font-display:swap}:root{color-scheme:light;--white:#fff;--mist:#f5f6f7;--ink:#111113;--secondary:#505b69;--steel:#8793a3;--steel-text:#626f80;--line:#e0e4e9;--dark:#17191d;--gutter:clamp(24px, 4.6vw, 64px);--radius:14px;--section-space:clamp(40px, 5vw, 80px);--header-clearance:88px;scroll-padding-top:var(--header-clearance);color:var(--ink);background:var(--white);font:16px/1.55 Inter Variable,Inter,system-ui,-apple-system,sans-serif}*,:before,:after{box-sizing:border-box}body{margin:0}img{max-width:100%;display:block}a{color:inherit;text-underline-offset:.24em}a,summary{touch-action:manipulation}button,input,select,textarea{font:inherit}:focus-visible{outline-offset:4px;outline:2px solid #4f6076}h1,h2,h3,p,ol{margin:0}h1,h2,h3{letter-spacing:-.045em;font-weight:730;line-height:1.09}h2{font-size:clamp(1.55rem,2.4vw,2.2rem)}h3{letter-spacing:-.035em;font-size:1.11rem}p{color:var(--secondary)}em{color:var(--steel-text);font-style:normal}main{min-height:80vh}main [id]{scroll-margin-top:12px}.container{width:min(1424px, calc(100% - 2 * var(--gutter)));margin-inline:auto}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:8;background:var(--white);padding:12px 16px;position:fixed;inset:8px auto auto 8px;translate:0 -160%}.skip-link:focus{translate:0}.site-header{border-bottom:1px solid var(--line);z-index:3;background:var(--white);position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:24px;min-height:72px;display:flex}.brand{align-items:center;gap:16px;text-decoration:none;display:inline-flex}.brand img{flex:none;width:clamp(60px,5.6vw,86px);height:auto}.brand-lockup{border-left:1px solid var(--steel);padding-left:16px;line-height:1.22;display:grid}.brand-lockup strong{letter-spacing:.16em;font-size:.87rem}.brand-lockup>span{color:var(--secondary);white-space:nowrap;margin-top:4px;font-size:.73rem}.main-nav{align-self:stretch;align-items:stretch;gap:clamp(16px,2.45vw,42px);display:flex}.main-nav a{min-height:44px;color:var(--secondary);white-space:nowrap;align-items:center;font-size:.925rem;font-weight:550;text-decoration:none;display:flex;position:relative}.main-nav a:hover,.main-nav a[aria-current=page]{color:var(--ink)}.main-nav a[aria-current=page]{font-weight:730}.main-nav a[aria-current=page]:after{content:"";background:var(--ink);height:2px;position:absolute;inset:auto 0 8px}.button{background:var(--white);min-height:44px;color:var(--ink);border:1px solid #a9b0b9;border-radius:10px;justify-content:center;align-items:center;gap:10px;padding:9px 20px;font-size:.875rem;font-weight:670;text-decoration:none;transition:background-color .22s,border-color .22s;display:inline-flex}.button:hover{background:var(--mist);border-color:var(--steel)}.button-dark{background:var(--ink);color:var(--white);border-color:var(--ink)}.button-dark:hover{background:#30343a;border-color:#30343a}.button:disabled{opacity:.55;cursor:not-allowed}.hero{isolation:isolate;background:var(--mist);position:relative;overflow:hidden}.hero-inner{align-items:center;min-height:clamp(300px,25vw,415px);padding-block:48px;display:flex}.hero-copy{max-width:min(720px,60%)}.hero-visual{z-index:-1;width:57%;position:absolute;inset:0 0 0 auto}.hero-visual img{object-fit:cover;object-position:right center;width:100%;height:100%}.hero-visual:after{content:"";background:linear-gradient(90deg,#f5f6f7,#0000 25%);position:absolute;inset:0}.hero-home{background:var(--white)}.hero-home .hero-inner{min-height:clamp(365px,34vw,510px);padding-block:44px}.hero-home .hero-visual:after{background:linear-gradient(90deg,#fff 10%,#0000 34%)}.hero-home .hero-copy{max-width:min(565px,54%)}.hero-home h1 em{display:block}.hero-home h1{font-size:clamp(2.5rem,2.72vw,3rem)}.hero-home .lead{margin-top:12px;font-size:1.025rem;line-height:1.4}.hero-home .hero-actions{margin-top:16px}.hero-about .hero-copy,.hero-approach .hero-copy{max-width:min(735px,59%)}.hero-about h1,.hero-approach h1{font-size:clamp(2.55rem,3.12vw,3.5rem)}.hero-about .hero-copy:after{content:"";background:var(--steel);width:42px;height:2px;margin-top:24px;display:block}.hero-services .hero-copy{max-width:min(610px,54%)}.hero-services h1 em{display:block}.hero-legal .hero-inner{min-height:clamp(240px,18vw,320px)}.hero-legal .hero-copy{border-left:5px solid var(--steel);padding-left:24px}.eyebrow{color:var(--steel-text);letter-spacing:.11em;text-transform:uppercase;margin-bottom:12px;font-size:.81rem;font-weight:710}h1{letter-spacing:-.055em;font-size:clamp(2.6rem,3.65vw,4.05rem);line-height:1.03}.lead{max-width:59ch;margin-top:16px;font-size:clamp(1rem,1.35vw,1.15rem);line-height:1.44}.hero-actions{flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:19px;display:flex}.home-capabilities{padding-block:var(--section-space)}.capability-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.5vw,24px);display:grid}.service-shortcut{border:1px solid var(--line);border-radius:var(--radius);background:var(--mist);grid-template-columns:auto 1fr auto;align-items:center;gap:clamp(8px,1.35vw,22px);min-height:88px;padding:14px clamp(10px,1.55vw,23px);font-size:1rem;font-weight:720;line-height:1.15;text-decoration:none;transition:background-color .22s,border-color .22s;display:grid}.service-shortcut>span:nth-child(2){max-width:13ch}.service-shortcut:hover{border-color:var(--steel);background:#e9edf1}.shortcut-icon{border-right:1px solid #c4cbd3;place-items:center;min-height:38px;padding-right:clamp(8px,1.4vw,21px);display:grid}.editorial-split{padding-bottom:var(--section-space);grid-template-columns:.86fr 1.14fr;align-items:center;gap:clamp(20px,3.3vw,52px);display:grid}.editorial-image{object-fit:cover;border-radius:12px;width:100%;height:clamp(160px,14vw,220px)}.editorial-split p{max-width:70ch;margin-top:8px;line-height:1.38}.home-process{border-top:1px solid var(--line);padding-block:var(--section-space);grid-template-columns:1fr 3fr;gap:20px;display:grid}.home-process>div p{max-width:28ch;margin-top:5px;font-size:.875rem;line-height:1.35}.process-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(14px,3.7vw,56px);padding:0;list-style:none;display:grid}.process-grid-compact{gap:0}.process-card{min-width:0;position:relative}.process-card h2{margin-top:7px;font-size:clamp(1rem,1.35vw,1.32rem)}.process-card p{margin-top:6px;font-size:.93rem;line-height:1.4}.process-card-compact{border-left:1px solid var(--line);padding-inline:clamp(8px,1.3vw,22px)}.process-card-compact h3{font-size:.95rem}.process-card-compact p{font-size:.86rem;line-height:1.45}.process-number{color:var(--steel-text);margin-bottom:4px;font-size:1.28rem;font-weight:750;line-height:1;display:block}.step-arrow{position:absolute;top:58px;left:calc(100% + 8px)}.cta-section{padding-bottom:var(--section-space)}.cta-inner{isolation:isolate;border-radius:var(--radius);background:var(--mist);justify-content:space-between;align-items:center;gap:20px;min-height:136px;padding:clamp(24px,3vw,44px) clamp(24px,3.1vw,48px);display:flex;position:relative;overflow:hidden}.cta-home{justify-content:flex-start}.cta-visual{z-index:-1;object-fit:cover;width:44%;height:100%;position:absolute;inset:0 0 0 auto}.cta-inner:after{content:"";z-index:-1;background:linear-gradient(90deg, var(--mist) 10%, transparent 65%);position:absolute;inset:0 0 0 49%}.cta-copy{max-width:65%}.cta-copy p{margin-top:4px;font-size:.91rem}.about-overview{padding-block:var(--section-space);grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.about-overview>div+div{border-left:1px solid var(--line);gap:16px;padding-left:24px;display:flex}.about-overview h2{margin-bottom:8px;font-size:clamp(1.35rem,1.8vw,1.85rem)}.about-overview p{font-size:.96rem;line-height:1.46}.icon-box{width:48px;height:48px;color:var(--ink);background:#edf0f2;border-radius:12px;flex:none;place-items:center;display:inline-grid}.about-principles{margin-bottom:var(--section-space);border-radius:var(--radius);background:var(--mist);grid-template-columns:.95fr repeat(4,minmax(0,1fr));gap:16px;padding:clamp(20px,3vw,40px);display:grid}.about-principles>div:first-child{padding:12px 4px}.about-principles>div:first-child p{margin-top:14px;font-size:.96rem}.principle-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);padding:14px 16px}.principle-card h3{margin-top:7px}.principle-card p{margin-top:6px;font-size:.9rem;line-height:1.4}.services-section{padding-block:var(--section-space)}.service-card{border:1px solid var(--line);border-radius:var(--radius);padding:clamp(18px,2vw,30px)}.service-heading{align-items:flex-start;gap:12px;display:flex}.service-heading h2{padding-top:2px;font-size:clamp(1.15rem,1.48vw,1.52rem)}.service-card p{margin-top:10px;font-size:.91rem;line-height:1.4}.service-card ul{border-top:1px solid var(--line);margin:13px 0 0;padding:11px 0 0;list-style:none}.service-card li{align-items:flex-start;gap:8px;font-size:.85rem;line-height:1.37;display:flex}.service-card li+li{margin-top:6px}.service-card li svg{background:#edf0f2;border-radius:50%;flex:none;padding:2px}.focus-panel{border:1px solid var(--line);border-radius:var(--radius);margin-top:var(--section-space);grid-template-columns:1.23fr .82fr .78fr;align-items:center;gap:18px;padding-right:20px;display:grid;overflow:hidden}.focus-panel img{object-fit:cover;width:100%;height:100%;min-height:160px}.focus-panel>div{border-left:1px solid #b7c0cb;padding:8px 0 8px 16px}.focus-panel .eyebrow{margin-bottom:6px;font-size:.7rem}.focus-panel h2{font-size:clamp(1.4rem,2.1vw,2rem)}.focus-panel p:last-child{font-size:.875rem;line-height:1.45}.approach-process{padding-block:var(--section-space)}.engineering-values{padding-block:var(--section-space);border-top:1px solid var(--line);grid-template-columns:1.22fr repeat(3,minmax(0,1fr));align-items:start;gap:18px;display:grid}.engineering-values h2{font-size:clamp(1.35rem,2.1vw,2rem)}.engineering-values>div{border-left:1px solid var(--line);gap:10px;padding-left:15px;display:flex}.engineering-values svg{flex:none}.engineering-values h3{font-size:1rem}.engineering-values p{margin-top:6px;font-size:.83rem;line-height:1.4}.contact-page{isolation:isolate;position:relative;overflow:clip}.contact-inner{grid-template-columns:.89fr 1.11fr;align-items:start;gap:clamp(24px,4vw,64px);min-height:clamp(760px,58vw,890px);padding-block:clamp(30px,4.1vw,64px);display:grid}.contact-intro{padding-top:clamp(10px,2vw,26px)}.contact-intro h1{font-size:clamp(3rem,5.5vw,5.5rem)}.contact-intro .lead{max-width:36ch;font-size:clamp(1.1rem,1.6vw,1.35rem)}.contact-visual{z-index:-1;width:min(49vw,860px);height:auto;position:absolute;inset:auto auto 0 0;mask-image:linear-gradient(90deg,#000 85%,#0000 100%)}.contact-panel{background:var(--mist);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(18px,2.9vw,42px)}.contact-panel h2{margin-bottom:10px}.contact-status{align-items:center;gap:9px;font-size:.94rem;display:flex}.contact-status svg{flex:none}.contact-panel fieldset{border:0;min-width:0;margin:16px 0 0;padding:0}.contact-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;display:grid}.contact-fields label{min-width:0;font-size:.91rem;font-weight:650}.field-wide{grid-column:1/-1}.contact-fields input,.contact-fields select,.contact-fields textarea{background:var(--white);width:100%;min-width:0;color:var(--secondary);border:1px solid #c3cbd4;border-radius:10px;margin-top:5px;padding:9px 11px;display:block}.contact-fields input::placeholder,.contact-fields textarea::placeholder{color:var(--secondary)}.contact-fields textarea{min-height:96px}.contact-panel .button{margin-top:20px}.email-link{overflow-wrap:anywhere}.legal-summary{padding-block:var(--section-space);grid-template-columns:.8fr 2.2fr;gap:clamp(20px,2.4vw,36px);display:grid}.legal-links{gap:16px;display:grid}.legal-links article{border-radius:var(--radius);background:#edf0f2;padding:22px}.legal-links h2{margin:7px 0 6px;font-size:clamp(1.25rem,1.9vw,1.8rem)}.legal-links p{font-size:.92rem;line-height:1.4}.text-link{align-items:center;gap:9px;min-height:44px;font-size:.87rem;font-weight:680;display:inline-flex}.legal-topics{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.legal-topics article{border:1px solid var(--line);border-radius:var(--radius);align-items:flex-start;gap:14px;padding:13px 15px;display:flex}.legal-topics h2{margin-bottom:4px;font-size:1.05rem}.legal-topics p{font-size:.83rem;line-height:1.4}.legal-section{max-width:850px;padding-block:var(--section-space)}.review-note{border:1px solid var(--line);background:var(--mist);color:var(--ink);border-radius:10px;margin-bottom:18px;padding:10px 14px;font-size:.9rem;display:inline-block}.prose h2{font-size:1.7rem}.prose h2:not(:first-child),.prose h3{margin-top:23px}.prose p{margin-top:8px}.prose a{color:var(--ink)}.site-footer{border-top:1px solid var(--line)}.footer-inner{grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px clamp(12px,2vw,32px);min-height:96px;padding-block:16px;display:grid}.footer-inner .brand img{width:62px}.footer-inner .brand-lockup strong{font-size:.73rem}.footer-inner .brand-lockup>span{font-size:.66rem}.footer-inner nav{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 16px;display:flex}.footer-inner nav a{white-space:nowrap;align-items:center;min-height:44px;font-size:.75rem;text-decoration:none;display:flex}.footer-inner nav a:hover{text-decoration:underline}.footer-inner nav+nav,.footer-inner>p{border-left:1px solid var(--line);padding-left:12px}.footer-inner>p{max-width:26ch;font-size:.71rem;line-height:1.4}@media (width<=1160px){.home-process{grid-template-columns:1fr;gap:24px}.home-process>div p{max-width:42ch}.footer-inner{grid-template-columns:auto 1fr auto}.footer-inner>p{border:0;grid-column:1/-1;max-width:none;padding:0}}@media (width<=1020px){:root{--gutter:32px;--header-clearance:128px}.header-inner{flex-direction:column;align-items:flex-start;gap:6px;min-height:auto;padding-top:12px}.header-contact{display:none}.main-nav{border-top:1px solid var(--line);justify-content:space-between;gap:0 12px}.main-nav a{justify-content:center;padding-inline:5px}.main-nav a[aria-current=page]:after{bottom:4px}.approach-process .process-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.step-arrow{display:none}.capability-grid,.about-principles{grid-template-columns:repeat(2,minmax(0,1fr))}.about-principles>div:first-child{grid-column:1/-1}.hero-visual{width:54%}.engineering-values{grid-template-columns:repeat(3,minmax(0,1fr))}.engineering-values>h2{grid-column:1/-1}.footer-inner{grid-template-columns:1fr auto}.footer-inner nav:first-of-type{grid-area:2/1/auto/-1;justify-content:flex-start}.footer-inner>p{grid-row:3}}@media (width<=760px){:root{--gutter:24px}.hero-inner,.hero-home .hero-inner,.hero-legal .hero-inner{min-height:auto;padding-block:34px}.hero-architectural{flex-direction:column-reverse;display:flex}.hero-visual{width:100%;height:clamp(140px,33vw,225px);position:relative}.hero-visual:after{display:none}.hero .hero-copy{max-width:100%}.hero h1{font-size:clamp(2.25rem,7.2vw,3.25rem)}.hero-legal .hero-copy{padding-left:16px}.editorial-split,.home-process,.about-overview,.focus-panel,.engineering-values,.contact-inner,.legal-summary{grid-template-columns:1fr}.editorial-image{height:130px}.process-grid,.approach-process .process-grid{grid-template-columns:1fr;gap:20px}.process-card{border-left:1px solid var(--line);padding-left:14px}.process-card .icon-box{width:38px;height:38px}.cta-inner{flex-wrap:wrap;gap:12px}.cta-copy{max-width:100%}.cta-visual{opacity:.25;width:66%}.about-overview>div+div{border-left:0;border-top:1px solid var(--line);padding:16px 0 0}.focus-panel{gap:12px;padding:0 0 14px}.focus-panel img{height:110px;min-height:0}.focus-panel>div,.focus-panel>p{margin-inline:14px}.engineering-values>h2{grid-column:auto}.contact-inner{min-height:0}.contact-intro{padding:0}.contact-visual{width:calc(100% + 2 * var(--gutter));max-width:none;height:clamp(130px,36vw,210px);margin-inline:calc(-1 * var(--gutter));object-fit:cover;position:relative;inset:auto;mask-image:none}.contact-panel{position:relative}.legal-links{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-inner{grid-template-columns:1fr}.footer-inner nav:first-of-type,.footer-inner>p{grid-row:auto}.footer-inner nav+nav{border:0;justify-content:flex-start;padding:0}}@media (width<=460px){:root{--gutter:20px}.brand{gap:8px}.brand img{width:50px}.brand-lockup{padding-left:8px}.brand-lockup strong{font-size:.67rem}.brand-lockup>span{font-size:.57rem}.main-nav a{padding-inline:0;font-size:.77rem}.main-nav{gap:0 6px}.service-shortcut{gap:7px;min-height:72px;font-size:.85rem}.shortcut-icon svg{width:20px}.service-shortcut>svg{width:13px}.services-section .capability-grid,.legal-topics,.contact-fields{grid-template-columns:1fr}.legal-links article,.principle-card{padding:12px}.legal-links h2{font-size:1.08rem}}@media (width<=380px){:root{--header-clearance:160px}.main-nav{grid-template-columns:repeat(6,minmax(0,1fr));display:grid}.main-nav a{grid-column:span 2}.main-nav a:nth-child(n+4){grid-column:span 3}}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()) and (animation-range:entry){:is(.home-capabilities,.editorial-split,.home-process,.cta-inner,.about-overview,.about-principles,.service-card,.focus-panel,.approach-process .process-card,.engineering-values,.contact-panel,.legal-summary,.legal-section):not(:focus-within){--section-timeline:view();animation:linear backwards section-enter;animation-timeline:var(--section-timeline);animation-range:entry entry 120px}}}@keyframes section-enter{0%{opacity:.9;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
