/* Refinements intentionally loaded last to preserve the original layout system. */
:root{--ease-out:cubic-bezier(.23,1,.32,1);--ease-in-out:cubic-bezier(.77,0,.175,1);--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{position:relative;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 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)}
@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)}}
.service-hero{min-height:460px;grid-template-columns:.82fr 1.18fr}.service-hero>div:first-child{max-height:460px}.service-hero-copy{padding:4.5rem 7vw 3.5rem}.service-hero h1{font-size:clamp(2.65rem,4.7vw,4.8rem);max-width:700px}.service-details{padding-top:5.5rem;padding-bottom:5.5rem}.service-expanded{display:grid;grid-template-columns:1fr .9fr .7fr;gap:4.5vw;align-items:start;padding-top:1rem;padding-bottom:6.5rem}.service-expanded h2{font-size:clamp(2rem,3.6vw,3.6rem);line-height:1;max-width:14ch}.scope-copy p{margin:0 0 1.2rem;font-size:1.02rem}.considerations{border-left:1px solid var(--line);padding-left:1.4rem}.considerations ul{list-style:none;margin:0;padding:0}.considerations li{padding:.75rem 0;border-bottom:1px solid var(--line);font-size:.88rem}.considerations li:before{content:"—";color:#2b6d9f;margin-right:.55rem}.service-gallery{background:#0e1c25;color:#f7fafb;padding:6.5rem max(7vw,calc((100vw - 1240px)/2)) 7rem}.gallery-heading{display:grid;grid-template-columns:.85fr 1.15fr;gap:7vw;align-items:end;margin-bottom:2.4rem}.gallery-heading h2{font-size:clamp(2rem,3.7vw,3.8rem);line-height:1;letter-spacing:-.05em;margin:0;max-width:20ch}.gallery-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:1.2rem}.gallery-grid figure{margin:0;min-height:270px;position:relative;overflow:hidden;background:#172c37}.gallery-grid img{display:block;width:100%;height:100%;min-height:270px;object-fit:cover;transition:transform .8s var(--ease-in-out)}.gallery-grid figcaption{position:absolute;left:0;right:0;bottom:0;padding:1.8rem 1.3rem .9rem;background:linear-gradient(transparent,rgba(5,16,22,.88));font:400 .63rem var(--mono);color:#d7e4e9;opacity:.88}@media(hover:hover) and (pointer:fine){.gallery-grid figure:hover img{transform:scale(1.025)}}
@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}}
