/* Video, explanatory motion and scroll transitions. */
:root{--ease:cubic-bezier(.23,1,.32,1);--ease-shift:cubic-bezier(.77,0,.175,1)}
.brand-frame{width:184px;height:128px}.brand-image{top:-27px}.header-inner{min-height:139px}html{scroll-padding-top:151px}
select{font-size:16px}.field label{font-size:12px}.field label .optional{font-size:11px}
.hero{background:white}.hero-stage{position:relative;background:var(--navy);isolation:isolate;overflow:hidden}.hero-film{position:absolute;inset:0;z-index:-1}.hero-film video{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,16,48,.94),rgba(0,16,48,.77) 40%,rgba(0,16,48,.25)),linear-gradient(0deg,rgba(0,16,48,.65),transparent 50%)}.hero-grid{position:relative;min-height:645px;display:flex;align-items:center;padding-top:65px;padding-bottom:64px}.hero-content{max-width:780px}.hero h1{color:white;font-size:clamp(52px,5.65vw,82px);max-width:10em;line-height:1.04;letter-spacing:-.055em}.hero .location{color:#d0d9e7;font-size:12px;margin-bottom:24px}.hero .location .icon{color:#d0d9e7}.hero-description{color:#d3dceb;max-width:455px;font-size:16px;line-height:1.85;margin-top:27px}.hero-actions{margin-top:31px;gap:28px}.hero-actions .button{background:white;border-color:white;color:var(--brand);min-height:55px}.hero .text-link{color:white;font-size:12px}.hero-note{display:flex;gap:14px;align-items:center;margin-top:40px;min-height:44px;width:fit-content;color:#d0d9e7;font-size:10px;line-height:1.6}.scroll-indicator{width:23px;height:35px;border:1px solid #91a2ba;border-radius:13px;display:flex;justify-content:center;padding-top:7px}.scroll-indicator>span{width:3px;height:6px;background:white;border-radius:3px;animation:scroll-cue 1.8s var(--ease) infinite}.hero-signature{position:absolute;right:144px;bottom:80px;display:flex;gap:15px;color:white;align-items:center}.hero-signature p{font-size:12px;line-height:1.8}.signature-line{height:50px;width:1px;background:#a4b4cc}.video-caption{display:flex;align-items:center;justify-content:space-between;padding-bottom:18px;font-size:8px;color:#c6d0df;position:relative}.film-indicator{display:flex;gap:3px;height:16px;align-items:center}.film-indicator i{width:2px;height:5px;background:#d2dfef;animation:equalizer 1.2s ease-in-out infinite alternate}.film-indicator i:nth-child(2){animation-delay:-.3s}.film-indicator i:nth-child(3){animation-delay:-.8s}.film-indicator i:nth-child(4){animation-delay:-.2s}.film-indicator i:nth-child(5){animation-delay:-.5s}
.sectors-wrap{border:0;padding-block:30px;overflow:hidden}.sectors-window{overflow:hidden;flex:1;min-width:0;mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}.sectors{width:max-content;display:flex;gap:45px;justify-content:flex-start;animation:sector-travel 28s linear infinite}.sectors li{white-space:nowrap;font-size:13px}.sectors-wrap>p{min-width:112px}.services .section-heading h2{font-size:clamp(36px,3.7vw,52px)}.service-grid{gap:26px}.service-card{padding-top:38px;min-height:535px;display:flex;flex-direction:column;border-radius:17px}.service-card h3{font-size:41px;position:relative;z-index:2}.service-card-top{position:relative;z-index:2}.service-card>p{margin-bottom:auto}.service-link{margin-top:0;flex-shrink:0;transition:color 160ms ease}.service-maintenance{background:#001030}.maintenance-background{position:absolute;inset:0;opacity:.18;width:100%;height:100%;object-fit:cover;object-position:50%;filter:saturate(.6);pointer-events:none}.service-maintenance:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,16,48,.5),rgba(0,16,48,.7));pointer-events:none}.service-maintenance>*:not(.maintenance-background){z-index:2}.service-photo-caption{position:absolute;bottom:78px;right:27px;font-size:8px;color:#c1cee0;z-index:2}.service-supplies{background:linear-gradient(135deg,#f8fafc 15%,#e7edf4)}.supplies-watermark{position:absolute;right:-23px;bottom:65px;width:275px;height:275px;stroke-width:.7;opacity:.09;transform:rotate(-12deg);color:var(--brand);pointer-events:none}.service-card .check-list{margin-top:24px}.service-card .service-link .icon{transition:transform 220ms var(--ease)}.service-card .service-card-top>.service-icon{transition:transform 220ms var(--ease)}.about{background:radial-gradient(ellipse at 100% 0%,#082b58,transparent 60%),var(--navy)}.integration{isolation:isolate;background:rgba(0,16,48,.2)}.integration-center{box-shadow:0 0 0 8px rgba(94,135,184,.04)}.integration-center:before{position:absolute;inset:-8px;content:"";border:1px solid rgba(142,177,216,.22);border-radius:17px;animation:system-pulse 3.2s var(--ease) infinite}.integration-center:after,.integration-branches:before,.integration-branches>div:before{animation:connection-flow 2.4s ease-in-out infinite alternate}.integration-branches>div:last-child:before{animation-delay:-1.2s}
.motion-control{position:fixed;left:22px;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:20;display:flex;align-items:center;gap:7px;min-height:43px;padding:10px 14px;border:1px solid #ccd4df;border-radius:30px;background:rgba(255,255,255,.96);color:var(--brand);font-size:10px;box-shadow:0 3px 14px rgba(0,16,48,.05)}.motion-control .icon{width:17px;height:17px;stroke-width:2}.play-glyph{display:none}.motion-paused .pause-glyph{display:none}.motion-paused .play-glyph{display:block}.motion-paused *,.motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important}.motion-enabled .reveal{transition:opacity 750ms var(--ease),transform 750ms var(--ease);transition-delay:var(--reveal-delay,0ms)}.motion-enabled .reveal:not(.is-visible){opacity:0;transform:translateY(32px)}.motion-enabled .reveal-left:not(.is-visible){transform:translateX(-35px)}.motion-enabled .reveal-right:not(.is-visible){transform:translateX(35px)}.motion-enabled .hero-content>*{animation:hero-arrive 900ms var(--ease) both}.motion-enabled .hero-content>:nth-child(2){animation-delay:80ms}.motion-enabled .hero-content>:nth-child(3){animation-delay:160ms}.motion-enabled .hero-content>:nth-child(4){animation-delay:240ms}.motion-enabled .hero-content>:nth-child(5){animation-delay:320ms}.motion-paused .reveal:not(.is-visible){opacity:1;transform:none}.motion-paused .hero-content>*{animation:none}.motion-paused .film-indicator{opacity:.5}
@keyframes hero-arrive{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@keyframes sector-travel{to{transform:translateX(-50%)}}
@keyframes scroll-cue{0%{transform:translateY(0);opacity:0}20%,80%{opacity:1}100%{transform:translateY(9px);opacity:0}}
@keyframes equalizer{to{transform:scaleY(2.5)}}
@keyframes connection-flow{from{opacity:.35}to{opacity:1}}
@keyframes system-pulse{0%,100%{opacity:.4;transform:scale(1)}50%{opacity:1;transform:scale(1.035)}}
@media(hover:hover) and (pointer:fine){.hero-actions .button:hover{background:#e7e9ec;border-color:#e7e9ec}.service-card:hover .service-link .icon{transform:translate(3px,-3px)}.service-card:hover .service-card-top>.service-icon{transform:translateY(-3px)}.sectors-window:hover .sectors{animation-play-state:paused}.motion-control:hover{background:var(--pale)}}
@media(max-width:1100px){.hero-grid{min-height:635px}.hero h1{font-size:68px}.hero-signature{right:144px;bottom:65px}.hero-signature p{font-size:10px}.service-card h3{font-size:35px}}
@media(max-width:850px){.hero h1{font-size:58px;max-width:10em}.hero-grid{min-height:610px}.hero-description{max-width:400px;font-size:15px}.hero-signature{display:none}.sectors{display:flex;gap:35px}.sectors-wrap{display:flex;align-items:center}.service-card{min-height:545px}.service-card h3{font-size:30px}.service-photo-caption{right:20px;font-size:7px}.supplies-watermark{width:230px;height:230px}}
@media(max-width:640px){.hero-stage{min-height:650px}.hero-grid{display:flex;min-height:620px;padding-top:48px;padding-bottom:40px;align-items:flex-start}.hero h1{font-size:clamp(44px,11.4vw,64px);line-height:1.06;max-width:9.6em}.hero .location{font-size:10px;margin-bottom:26px}.hero-shade{background:linear-gradient(90deg,rgba(0,16,48,.87),rgba(0,16,48,.52)),linear-gradient(0deg,rgba(0,16,48,.7),transparent 70%)}.hero-film video{object-position:65% center}.hero-description{font-size:14px;line-height:1.9;margin-top:25px;max-width:325px}.hero-actions{margin-top:29px;gap:20px}.hero-actions .button{font-size:12px;min-height:50px}.hero-actions .text-link{font-size:10px}.hero-note{display:flex;margin-top:33px;font-size:9px}.video-caption{padding-bottom:15px;font-size:7px;gap:15px}.sectors-wrap{display:block;padding-block:26px}.sectors-wrap>p{margin-bottom:17px}.sectors-window{mask-image:linear-gradient(90deg,transparent,#000 2%,#000 98%,transparent)}.sectors{display:flex;gap:32px;animation-duration:24s}.sectors li{font-size:11px}.service-card{min-height:515px;padding-top:31px}.service-card h3{font-size:35px}.service-photo-caption{bottom:75px;right:24px;font-size:8px}.motion-control{left:14px;bottom:calc(18px + env(safe-area-inset-bottom,0px));width:44px;height:44px;padding:12px;justify-content:center}.motion-control>span{display:none}.motion-enabled .reveal-left:not(.is-visible),.motion-enabled .reveal-right:not(.is-visible){transform:translateY(24px)}}
@media(prefers-reduced-motion:reduce){.motion-enabled .reveal{opacity:1!important;transform:none!important;transition:none!important}.motion-enabled .hero-content>*{animation:none!important}.sectors{animation:none!important}.integration-center:before,.integration-center:after,.integration-branches:before,.integration-branches>div:before,.film-indicator i,.scroll-indicator>span{animation:none!important}}
.motion-paused .reveal{opacity:1!important;transform:none!important;transition:none!important}.motion-paused .sectors{transform:none;animation:none;width:100%;flex-wrap:wrap}.motion-paused .sectors li[aria-hidden=true]{display:none}.sectors:focus-within{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.sectors{width:100%;flex-wrap:wrap}.sectors li[aria-hidden=true]{display:none}}
@media(max-width:640px){html{scroll-padding-top:151px}.header-inner{min-height:139px}.brand-frame{width:184px;height:128px}.brand-image{width:184px;height:184px;top:-27px}}
@media(max-width:640px){select{font-size:16px}}
@media(min-width:641px){.motion-enabled .reveal-right:not(.is-visible){transform:translateX(20px)}.motion-enabled .reveal-left:not(.is-visible){transform:translateX(-20px)}}
