@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap');
.eyebrow{margin:0 0 1rem}
/* Phase two: interaction and surface refinement, preserving the existing layout. */
:root{--ease-out:cubic-bezier(.23,1,.32,1);--ease-in-out:cubic-bezier(.77,0,.175,1);--edge:rgba(156,199,228,.34);--shadow:0 18px 42px rgba(5,18,25,.16)}
.site-header{background:rgba(11,21,27,.9);backdrop-filter:blur(12px);transition:background 220ms var(--ease-out),box-shadow 220ms var(--ease-out),border-color 220ms var(--ease-out)}
.site-header.is-scrolled{background:rgba(11,21,27,.98);box-shadow:0 8px 26px rgba(0,0,0,.18);border-color:rgba(156,199,228,.2)}
.nav-shell{transition:height 220ms var(--ease-out)}.site-header.is-scrolled .nav-shell{height:70px}.brand{gap:.85rem;font-size:.69rem;letter-spacing:.105em}.brand img{height:58px;width:58px;border:1px solid rgba(156,199,228,.34);box-shadow:0 0 0 4px rgba(156,199,228,.06);transition:transform 220ms var(--ease-out),height 220ms var(--ease-out),width 220ms var(--ease-out)}.site-header.is-scrolled .brand img{height:48px;width:48px}.site-header.is-scrolled .brand{font-size:.63rem}
.nav-cta,.button{position:relative;overflow:hidden;border:1px solid transparent;isolation:isolate;box-shadow:0 8px 18px rgba(8,31,45,.16);transition:background 180ms ease,transform 160ms var(--ease-out),box-shadow 180ms ease,border-color 180ms ease}.nav-cta svg,.button svg,.text-link svg{transition:transform 180ms var(--ease-out)}.nav-cta:active,.button:active,.text-link:active{transform:scale(.975)}.button-light{border-color:rgba(255,255,255,.65);box-shadow:0 8px 24px rgba(0,0,0,.18)}
.text-link{position:relative;padding-bottom:.38rem}.text-link:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:currentColor;transform:scaleX(.33);transform-origin:left;transition:transform 220ms var(--ease-out)}
.service-feature{transition:background 280ms ease,border-color 280ms ease}.feature-image,.company-image{box-shadow:var(--shadow)}.feature-image:after,.company-image:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.25);pointer-events:none}.feature-image,.company-image{position:relative}.feature-image img,.company-image img{transition:transform 700ms var(--ease-in-out),filter 400ms ease}
.contact{position:relative;overflow:hidden}.contact:before{content:"";position:absolute;width:44rem;height:44rem;right:-20rem;top:-28rem;border:1px solid rgba(156,199,228,.15);border-radius:50%;pointer-events:none}.contact form{position:relative;background:rgba(7,22,31,.16);padding:2rem 2.1rem;border:1px solid rgba(156,199,228,.2);box-shadow:inset 0 1px rgba(255,255,255,.05)}
form label{position:relative;transition:color 160ms ease}input,textarea{transition:border-color 180ms ease,background 180ms ease,box-shadow 180ms ease}input:focus,textarea:focus{background:rgba(255,255,255,.045);box-shadow:0 8px 20px rgba(0,0,0,.08)}form label:focus-within{color:#e6f5fd}.field-error{display:block;min-height:1.1rem;padding-top:.3rem;color:#ffbeb8;font:400 .65rem var(--mono);letter-spacing:0;text-transform:none}.has-error input,.has-error textarea{border-color:#f5a9a2}.honeypot{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}.form-status{min-height:1.4rem;transition:color 180ms ease}.form-status.is-success{color:#c8eccf}.form-status.is-error{color:#ffbeb8}.button:disabled{cursor:wait;opacity:.8;transform:none}.button.is-loading{min-width:10.8rem;justify-content:center}.button.is-loading i{width:.75rem;height:.75rem;border:1px solid currentColor;border-right-color:transparent;border-radius:50%;animation:button-spin .7s linear infinite}
[data-reveal]{transition:opacity .72s var(--ease-out),transform .72s var(--ease-out),clip-path .72s var(--ease-out)}.section-heading[data-reveal]{transform:translateY(28px)}.feature-image{clip-path:inset(0 0 0 0)}.service-feature[data-reveal]{transform:translateY(16px)}
@media(hover:hover) and (pointer:fine){.nav-cta:hover,.button:hover{box-shadow:0 13px 25px rgba(7,28,41,.22);transform:translateY(-2px)}.nav-cta:hover svg,.button:hover svg,.text-link:hover svg{transform:translateX(4px)}.text-link:hover:after{transform:scaleX(1)}.service-feature:hover{background:rgba(16,33,43,.025);border-color:rgba(43,109,159,.34)}.service-feature:hover .feature-image img{transform:scale(1.028);filter:saturate(.94) contrast(1.02)}.brand:hover img{transform:scale(1.035)}.site-header nav a{position:relative}.site-header nav a:after{content:"";position:absolute;left:0;bottom:-.52rem;width:100%;height:1px;background:#9cc7e4;transform:scaleX(0);transform-origin:left;transition:transform 180ms var(--ease-out)}.site-header nav a:hover:after{transform:scaleX(1)}}
@keyframes button-spin{to{transform:rotate(360deg)}}
@media(max-width:820px){.brand img{height:52px;width:52px}.site-header.is-scrolled .brand img{height:44px;width:44px}.site-header.is-scrolled .nav-shell{height:64px}.site-header.is-scrolled .mobile-nav{top:64px}.contact form{padding:1.45rem}.feature-image,.company-image{box-shadow:0 12px 30px rgba(5,18,25,.14)}}
@media(prefers-reduced-motion:reduce){.site-header,.nav-shell,.brand img,.nav-cta,.button,.text-link:after,.feature-image img,.company-image img,[data-reveal]{transition-duration:.01ms!important}.button.is-loading i{animation:none}}
:root{--ink:#10212b;--ink-2:#193849;--blue:#2b6d9f;--steel:#60717a;--paper:#f3f4f1;--white:#fff;--line:rgba(16,33,43,.16);--mono:'DM Mono',monospace;--sans:'Manrope',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.55}.defs{display:none}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.skip-link{position:fixed;top:-4rem;left:1rem;background:#fff;padding:.6rem;z-index:100}.skip-link:focus{top:1rem}.site-header{background:#0b151b;color:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(255,255,255,.14)}.nav-shell{height:78px;max-width:1440px;padding:0 4vw;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{display:flex;align-items:center;gap:.65rem;font-size:.61rem;line-height:1.15;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.brand img{height:50px;width:50px;object-fit:cover;border-radius:50%}nav{display:flex;gap:1.8rem;font-size:.76rem;font-weight:600}.site-header nav a{opacity:.77;transition:opacity .2s}.site-header nav a:hover{opacity:1}.nav-actions{display:flex;align-items:center;gap:1.1rem}.language{border:1px solid rgba(255,255,255,.3);padding:.22rem .4rem;display:flex;gap:.3rem;align-items:center;font:500 .68rem var(--mono)}.language button{border:0;background:transparent;color:#9daab0;padding:.14rem;cursor:pointer}.language button.active{color:#fff}.nav-cta,.button{display:inline-flex;align-items:center;gap:.65rem;background:var(--blue);padding:.75rem 1rem;color:#fff;font-size:.7rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;transition:background .22s,transform .22s}.nav-cta:hover,.button:hover{background:#22587f;transform:translateY(-2px)}svg{width:1.15em;height:1.15em}.menu-toggle,.mobile-nav{display:none}.hero{min-height:calc(100dvh - 78px);position:relative;color:#fff;display:grid;align-items:end;overflow:hidden}.hero-image,.hero-overlay{position:absolute;inset:0}.hero-photo{height:100%;width:100%;object-fit:cover;object-position:center;animation:slow-zoom 16s ease-in-out infinite alternate}.hero-overlay{background:linear-gradient(90deg,rgba(4,14,20,.88) 0%,rgba(5,20,29,.63) 42%,rgba(5,20,29,.1) 100%)}.hero-inner{position:relative;z-index:1;padding:9rem 7vw 4rem}.eyebrow{font:500 .67rem var(--mono);letter-spacing:.13em;text-transform:uppercase;color:#2b6d9f;margin:0 0:1rem}.eyebrow.light{color:#9cc7e4}.hero h1,.section h2,.approach h2,.contact h2,.service-hero h1,.service-process h2{font-size:clamp(2.75rem,6.2vw,6rem);letter-spacing:-.065em;line-height:.94;margin:.1em 0 .34em;max-width:900px;text-wrap:balance}.hero-text{font-size:1.02rem;max-width:590px;color:#d8e2e5;margin-bottom:1.8rem}.button-light{background:#f7f7f3;color:var(--ink)}.hero-note{margin-top:4.4rem;font:400 .67rem var(--mono);letter-spacing:.06em;color:#c7d5db}.image-disclosure{position:absolute;right:2rem;bottom:1.3rem;font-size:.61rem;max-width:20rem;z-index:1;opacity:.65}.section{max-width:1440px;margin:auto;padding:8rem 7vw}.intro{display:grid;grid-template-columns:1.2fr .8fr;gap:10vw;align-items:end}.intro-text{max-width:30rem;font-size:1.1rem}.service-features{max-width:1440px;margin:auto;padding:0 4vw}.service-feature{min-height:550px;border-top:1px solid var(--line);display:grid;grid-template-columns:11% 35% 54%;align-items:center;gap:2rem;padding:2rem 0}.feature-number{align-self:start;font:400 .7rem var(--mono);padding-top:1rem;color:var(--steel)}.feature-copy h3{font-size:clamp(2rem,3.3vw,3.6rem);letter-spacing:-.06em;line-height:.98;margin:.4rem 0 1rem}.feature-copy p{max-width:22rem}.text-link,.back-link{padding:0;border:0;background:none;color:var(--ink);font:700 .7rem var(--mono);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;margin-top:1.2rem}.feature-image{height:420px;overflow:hidden}.feature-image img,.approach-photo img,.company-image img,.service-hero img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.service-feature:hover img{transform:scale(1.035)}.feature-1{grid-template-columns:54% 11% 35%}.feature-1 .feature-number{grid-column:2}.feature-1 .feature-copy{grid-column:3;grid-row:1}.feature-1 .feature-image{grid-column:1;grid-row:1}.feature-2{min-height:590px}.feature-2 .feature-image{height:480px}.approach{background:var(--ink);color:#f8faf9;display:grid;grid-template-columns:1fr 1fr;min-height:700px}.approach-photo{overflow:hidden}.approach-copy{padding:7rem max(6vw,4rem);display:flex;flex-direction:column;justify-content:center}.approach-copy>p:not(.eyebrow){max-width:31rem;color:#ccd7da}.approach ol,.service-process ol{list-style:none;padding:1.4rem 0 0;margin:1.5rem 0 0;border-top:1px solid rgba(255,255,255,.25)}.approach li,.service-process li{padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.18);display:flex;gap:1rem;font-size:.88rem}.approach li span,.service-process li span{font:400 .65rem var(--mono);color:#8fc2e7}.secondary{display:grid;grid-template-columns:1fr 1.2fr;gap:9vw}.secondary-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.secondary-list li{padding:1.25rem 0;border-bottom:1px solid var(--line);font-size:1.05rem;display:flex;gap:1.5rem}.secondary-list span{font:400 .65rem var(--mono);color:var(--steel);padding-top:.35rem}.company{display:grid;grid-template-columns:1.15fr .85fr;gap:7vw;align-items:center;padding-top:2rem}.company-image{height:540px}.company-copy p:not(.eyebrow){max-width:34rem}.contact{background:var(--ink-2);color:#fff;max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:9vw;padding-left:max(7vw,calc((100vw - 1240px)/2));padding-right:max(7vw,calc((100vw - 1240px)/2))}.contact-title h2{font-size:clamp(2.6rem,5vw,5rem)}.contact-title>p:not(.eyebrow){max-width:31rem;color:#d4e0e4}.contact-title>a{display:block;margin-top:.55rem;font:400 .78rem var(--mono)}form{display:grid;gap:1rem;align-content:start}label{font:500 .66rem var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#bcd0db}input,textarea{display:block;width:100%;margin-top:.4rem;border:0;border-bottom:1px solid rgba(255,255,255,.45);background:transparent;color:#fff;padding:.55rem 0;outline:none;border-radius:0}input:focus,textarea:focus{border-color:#9cc7e4}.form-status{margin:0;color:#b9e0ca;font-size:.85rem}.site-footer{background:#0b151b;color:#d2dadd;padding:2.5rem max(7vw,calc((100vw - 1240px)/2));display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;font-size:.74rem}.site-footer p{color:#8f9da2;margin:.35rem 0}.site-footer div:nth-child(2){display:grid;justify-content:end;text-align:right;gap:.4rem}.footer-brand{font-weight:800;color:#fff}.site-footer small{grid-column:1/-1;color:#77878d;font-size:.63rem}.service-hero{min-height:680px;background:var(--ink);color:#fff;display:grid;grid-template-columns:1.1fr .9fr}.service-hero>div:first-child{overflow:hidden}.service-hero-copy{padding:8rem 7vw 4rem;display:flex;flex-direction:column;justify-content:end}.service-hero-copy>p:not(.eyebrow){color:#c8d9df;font-size:1.02rem}.back-link{color:#fff;margin:0 auto auto 0}.back-link svg{transform:rotate(180deg)}.service-details{display:grid;grid-template-columns:repeat(3,1fr);gap:4vw}.service-details>div{border-top:1px solid var(--line);padding-top:1.2rem;font-size:1rem}.service-details .eyebrow{margin-bottom:.5rem}.service-process{background:var(--ink-2);color:#fff;padding:7rem max(7vw,calc((100vw - 1240px)/2));}.service-process h2{font-size:clamp(2.4rem,5vw,5rem)}.service-process ol{max-width:760px;margin-bottom:2rem}.service-process .button{margin-top:1rem}[data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}[data-reveal].revealed{opacity:1;transform:none}@keyframes slow-zoom{to{transform:scale(1.04)}}
@media(max-width:820px){.nav-shell{height:68px;padding:0 1.25rem}.brand span,.site-header nav,.nav-cta{display:none}.nav-actions{gap:.7rem}.menu-toggle{display:inline-flex;align-items:center;gap:.4rem;border:0;background:transparent;color:#fff;font:600 .66rem var(--mono);text-transform:uppercase}.mobile-nav{display:none;position:absolute;top:68px;left:0;right:0;background:#0b151b;padding:1rem 1.25rem 1.5rem;border-top:1px solid rgba(255,255,255,.12)}.mobile-nav.open{display:grid;gap:1.1rem}.hero{min-height:calc(100dvh - 68px)}.hero-overlay{background:linear-gradient(90deg,rgba(4,14,20,.86),rgba(5,20,29,.28))}.hero-inner{padding:7rem 1.5rem 2.5rem}.hero h1{font-size:clamp(2.75rem,13vw,4.5rem)}.image-disclosure{left:1.5rem;right:auto;bottom:.8rem}.section{padding:5rem 1.5rem}.intro,.secondary,.company,.contact,.approach,.service-hero{grid-template-columns:1fr}.intro{gap:1.5rem}.service-features{padding:0 1.5rem}.service-feature,.feature-1{grid-template-columns:1fr;gap:1.2rem;padding:2.5rem 0;min-height:0}.feature-number,.feature-1 .feature-number,.feature-1 .feature-copy,.feature-1 .feature-image{grid-column:auto;grid-row:auto}.feature-image,.feature-2 .feature-image{height:320px;order:3}.approach-photo{height:370px}.approach-copy{padding:4.5rem 1.5rem}.secondary{gap:2rem}.company{padding-top:0;gap:2rem}.company-image{height:380px}.contact{padding-top:5rem;padding-bottom:5rem;gap:3rem}.site-footer{padding:2.5rem 1.5rem;grid-template-columns:1fr}.site-footer div:nth-child(2){justify-content:start;text-align:left}.service-hero{min-height:0}.service-hero>div:first-child{height:340px}.service-hero-copy{padding:3rem 1.5rem}.service-details{grid-template-columns:1fr;gap:1.2rem}.service-process{padding:5rem 1.5rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
