:root{--ect-svg-icon-sm:20px;--ect-svg-icon-md:28px;--ect-svg-icon-lg:44px;--ect-svg-ink:#0b1930;--ect-svg-primary:#075fca;--ect-svg-accent:#00a6c7;--ect-svg-line:#c8d9ec;--ect-svg-surface:#ffffff;--ect-svg-soft:#eaf3fc;--ect-svg-muted:#5b6c84;--ect-svg-control-line:#748aa3;--ect-svg-on-primary:#ffffff;--ect-signal-background:url(/assets/svg/light/signal-field.svg);--ect-ease-out:cubic-bezier(.16,1,.3,1);--ect-duration-short:180ms}html[data-theme=dark]{--ect-svg-ink:#eaf4ff;--ect-svg-primary:#78b9ff;--ect-svg-accent:#38e0d1;--ect-svg-line:#294a68;--ect-svg-surface:#081725;--ect-svg-soft:#102c49;--ect-svg-muted:#9cb4c9;--ect-svg-control-line:#6588a8;--ect-svg-on-primary:#081725;--ect-signal-background:url(/assets/svg/dark/signal-field.svg)}.ect-svg-icon{position:relative;display:inline-block;flex:0 0 auto;width:var(--ect-svg-icon-md);height:var(--ect-svg-icon-md);vertical-align:middle}.ect-svg-icon--sm{width:var(--ect-svg-icon-sm);height:var(--ect-svg-icon-sm)}.ect-svg-icon--lg{width:var(--ect-svg-icon-lg);height:var(--ect-svg-icon-lg)}.ect-svg-icon img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.ect-svg--dark,.ect-svg-icon .ect-svg--dark,html[data-theme=dark] .ect-svg--light{display:none}html[data-theme=dark] .ect-svg--dark{display:block}.precision-utility{width:20px;height:20px;flex:0 0 20px;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.homepage-gateway h1,.homepage-gateway h2{min-width:0;overflow-wrap:anywhere}.homepage-gateway>#capabilities.content-section,.homepage-gateway>.content-section:not(#capabilities){content-visibility:visible;contain-intrinsic-block-size:none}.homepage-gateway .hero-section{min-height:0;padding-block:48px 56px;overflow:clip}body:has(.homepage-gateway) .site-header.is-home:not(.is-scrolled)+main .hero-section{margin-top:0;padding-top:48px}.homepage-gateway .hero-section:after{display:none}.homepage-gateway .hero-section .hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:clamp(28px,4vw,64px)}.homepage-gateway .hero-copy h1{margin:0;font-size:clamp(2.4rem,3.4vw,3.5rem);line-height:1.09;letter-spacing:-.042em}.homepage-gateway .hero-copy h1 span{display:block}.homepage-gateway .hero-copy .eyebrow{max-width:48ch;margin-bottom:20px;font-size:.75rem;line-height:1.65}.homepage-gateway .hero-brand-line{margin-top:22px;font-size:1.05rem}.homepage-gateway .hero-copy__lead{max-width:48ch;margin-block:18px 24px;font-size:1.0625rem;line-height:1.6}.homepage-gateway .hero-copy .button-row{gap:10px}.homepage-gateway .hero-copy .button{padding-inline:16px;font-size:.875rem;white-space:nowrap}.homepage-gateway .trust-list{gap:14px;margin-top:22px;font-size:.75rem}.homepage-signal-backdrop{position:absolute;z-index:-1;inset:0;pointer-events:none;background:var(--ect-signal-background) right center /auto 100% no-repeat;opacity:.22}.outcome-control-plane{position:relative;min-width:0;border:1px solid var(--ect-svg-line);border-radius:var(--radius-lg);background:var(--ect-svg-surface);color:var(--ect-svg-ink);box-shadow:var(--shadow-sm)}.outcome-plane__heading{padding:22px 24px 16px;border-bottom:1px solid var(--ect-svg-line)}.outcome-plane__heading p{margin:0 0 6px;color:var(--ect-svg-primary);font-size:.75rem;font-weight:700}.outcome-plane__heading h2{margin:0;font-size:clamp(1.35rem,1.7vw,1.6rem);line-height:1.2;letter-spacing:-.025em}.outcome-plane__body{position:relative;padding:10px 18px}.outcome-plane__stages{display:grid;list-style:none;margin:0;padding:0}.outcome-plane__stages li+li{border-top:1px solid var(--ect-svg-line)}.outcome-stage{position:relative;display:grid;grid-template-columns:24px 44px minmax(0,1fr) 20px;align-items:center;gap:12px;min-height:89px;padding:10px 6px;color:var(--ect-svg-ink);border-radius:var(--radius-sm);text-decoration:none}.outcome-stage__step{color:var(--ect-svg-muted);font-size:.75rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;background:var(--ect-svg-surface);z-index:1}.outcome-stage__copy{display:grid;min-width:0;gap:2px}.outcome-stage__copy>span{color:var(--ect-svg-primary);font-size:.75rem;font-weight:700}.outcome-stage__copy strong{font-size:.9375rem;line-height:1.3;font-weight:700}.outcome-stage__copy small{color:var(--ect-svg-muted);font-size:.75rem;line-height:1.4}.outcome-stage>.precision-utility{color:var(--ect-svg-primary);transition:transform var(--ect-duration-short) var(--ect-ease-out)}.outcome-stage:focus-visible{outline:3px solid var(--focus);outline-offset:2px;background:var(--ect-svg-soft)}.outcome-stage:active{background:var(--ect-svg-soft)}@media (hover:hover){.outcome-stage:hover{background:var(--ect-svg-soft)}.outcome-stage:hover>.precision-utility{transform:translateX(3px)}}.outcome-plane__footer{display:grid;justify-items:start;gap:8px;padding:16px 24px 20px;border-top:1px solid var(--ect-svg-line)}.outcome-plane__footer .button{min-height:48px;padding:10px 18px;font-size:.9375rem;white-space:nowrap;background:var(--ect-svg-primary);color:var(--ect-svg-on-primary)}.outcome-plane__footer>span{color:var(--ect-svg-muted);font-size:.75rem}.outcome-plane__signal{position:absolute;top:46px;bottom:46px;left:33px;width:6px;container-type:size;border-left:1px solid var(--ect-svg-line);pointer-events:none}.outcome-plane__signal i{position:absolute;top:0;left:-3px;width:5px;height:8px;border-radius:3px;background:var(--ect-svg-primary);opacity:0}@media (prefers-reduced-motion:no-preference){.outcome-control-plane:not([data-outcome-motion=reduced]){animation:outcome-settle .3s var(--ect-ease-out) both;animation-play-state:paused}.outcome-control-plane:not([data-outcome-motion=reduced]) .outcome-plane__signal i{animation:outcome-signal 1.8s cubic-bezier(.4,0,.2,1) .35s both;animation-play-state:paused}.outcome-control-plane[data-outcome-motion=running],.outcome-control-plane[data-outcome-motion=running] .outcome-plane__signal i{animation-play-state:running}.outcome-control-plane:focus-within .outcome-plane__signal i{animation-play-state:paused}@media (hover:hover){.outcome-control-plane:hover .outcome-plane__signal i{animation-play-state:paused}}}@keyframes outcome-settle{0%{transform:translateY(5px)}to{transform:none}}@keyframes outcome-signal{0%{opacity:0;transform:translateY(0)}5%{opacity:1}93%{opacity:1}to{opacity:0;transform:translateY(calc(100cqh - 8px))}}.outcome-control-plane[data-outcome-motion=reduced],html[data-motion-override=reduced] .outcome-control-plane{animation:none}.outcome-control-plane[data-outcome-motion=reduced] .outcome-plane__signal i,html[data-motion-override=reduced] .outcome-plane__signal i{display:none;animation:none}.home-visual-link{display:block;min-width:0;color:var(--text-primary)}.home-visual-link:focus-visible{outline:3px solid var(--focus);outline-offset:4px;border-radius:var(--radius-lg)}.home-visual-link>span{display:flex;min-height:48px;align-items:center;justify-content:space-between;gap:12px;padding:12px 4px;font-weight:700;color:var(--accent)}.home-visual-link:hover>span{text-decoration:underline;text-underline-offset:4px}.precision-product-visual{position:relative;aspect-ratio:320/200;width:100%;overflow:hidden;background:var(--ect-svg-surface);margin:16px 0}.precision-product-visual img{position:absolute;width:100%;height:100%;inset:0;object-fit:contain}.precision-product-visual .ect-svg--dark{display:none}html[data-theme=dark] .precision-product-visual .ect-svg--dark{display:block}.homepage-gateway .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.homepage-gateway .product-card>a{min-height:44px}.homepage-gateway .product-card>.product-card__visual-link{display:block;width:100%;margin:0}.homepage-gateway .section-heading--inline>a,.homepage-gateway .text-link{display:inline-flex;min-height:44px;align-items:center;gap:8px}.homepage-gateway .capability-card{display:grid;grid-template-columns:44px minmax(0,1fr);align-content:start;column-gap:16px}.homepage-gateway .capability-card>.ect-svg-icon{grid-row:1/3}.homepage-gateway .capability-card h3{margin-top:0;align-self:center}.homepage-gateway .capability-card>p,.homepage-gateway .capability-card>span:last-child{grid-column:2}.homepage-gateway .home-industry-list a,.homepage-gateway .home-solution-list a{grid-template-columns:44px minmax(0,1fr) 20px}.homepage-gateway .process-card>.ect-svg-icon{margin-bottom:8px}.homepage-gateway .section-heading--split{display:block}.homepage-gateway .section-heading--split>p{max-width:65ch;margin-top:16px}.mega-menu{width:min(1280px,calc(100% - 40px));max-height:calc(100dvh - var(--header-height) - 24px);overflow-y:auto;overscroll-behavior:contain}.mega-menu__inner{padding:18px 22px}.mega-menu__topbar{grid-template-columns:minmax(0,1fr) auto;gap:16px;padding-bottom:14px}.mega-menu__title h2{font-size:1.25rem}.mega-menu__topbar>a{font-size:.8125rem;white-space:nowrap}.mega-service-workspace{min-height:0;grid-template-columns:306px minmax(0,1fr);gap:20px;padding-top:14px}.mega-service-tabs{gap:4px;padding-right:16px}.mega-service-tabs>button{min-height:54px;grid-template-columns:28px minmax(0,1fr) 16px;gap:10px;padding:8px;border-radius:var(--radius-sm);transition:background-color var(--ect-duration-short) var(--ect-ease-out)}.mega-service-tabs strong{font-size:.875rem;line-height:1.3}.mega-menu__entity-icon,.mega-menu__intro-icon,.mega-service-panel__icon,.mega-service-tab__icon,.service-menu-icon{width:28px;height:28px;border:0;border-radius:0;background:transparent;box-shadow:none}.mega-menu__entity-icon .ect-svg-icon,.mobile-service-link .service-menu-icon,.service-menu-icon .ect-svg-icon{width:28px;height:28px}.service-menu-icon:after{display:none}.mega-service-link:focus-visible .service-menu-icon,.mega-service-link:hover .service-menu-icon,.mobile-service-link:focus-visible .service-menu-icon,.mobile-service-link:hover .service-menu-icon{transform:none;background:transparent}.mega-service-panel{animation:precision-panel-in .15s var(--ect-ease-out);max-height:min(448px,calc(100dvh - 235px));overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;padding:3px 8px 8px 3px}@keyframes precision-panel-in{0%{opacity:.55}to{opacity:1}}.mega-service-panel__heading{min-height:56px;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;margin-bottom:14px;padding-bottom:12px}.mega-service-panel__heading strong{font-size:1rem;line-height:1.3}.mega-service-panel__heading em{font-size:.8125rem;line-height:1.4;white-space:normal;margin-top:4px}.mega-service-panel__heading>a{min-height:44px;font-size:.8125rem;white-space:nowrap}.mega-service-subgroup h3{font-size:.75rem;text-transform:none;letter-spacing:0;color:var(--text-secondary)}.mega-service-link{min-height:48px;grid-template-columns:28px minmax(0,1fr) 16px;gap:9px;padding:6px 4px;font-size:.875rem;line-height:1.35}.mega-service-context{margin-top:16px;padding-top:12px}.mega-service-context>div{gap:12px}.mega-service-context a{min-height:52px}.mega-menu__utility{margin-top:14px;padding-top:12px;gap:16px}.mega-menu__utility>a{min-height:48px;padding:6px 0;border:0;border-radius:0;background:transparent}.mega-menu__utility>a:hover{transform:none;background:transparent}.mega-menu__utility strong{font-size:.875rem}.mega-menu__utility small{font-size:.75rem}.mega-menu__utility>a>span:nth-child(2){min-width:0}.mobile-service-link{font-size:.875rem}.mobile-service-subgroup h3{font-size:.75rem;text-transform:none;letter-spacing:0;padding-left:4px}.mobile-service-group>summary{font-size:.875rem}.mobile-service-group>div{padding-left:6px}.mobile-nav-group__links>a>span>i,.mobile-service-group>summary i{background:transparent}.brand-logo--header{min-height:44px}@media (min-width:1400px){.mega-service-subgroups--3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:981px) and (max-width:1399px){.mega-service-subgroups--3{grid-template-columns:repeat(2,minmax(0,1fr))}.mega-service-workspace{grid-template-columns:280px minmax(0,1fr)}}@media (max-width:1100px){.homepage-gateway .hero-section .hero-grid{gap:26px}.homepage-gateway .hero-copy h1{font-size:2.55rem}.outcome-stage{gap:8px;grid-template-columns:20px 44px minmax(0,1fr) 20px}.outcome-plane__body{padding-inline:12px}.outcome-plane__signal{left:25px}}@media (max-width:980px){.homepage-gateway .hero-section .hero-grid{grid-template-columns:minmax(0,1fr);gap:32px}.homepage-gateway .hero-copy{max-width:680px}.homepage-gateway .hero-copy h1{font-size:clamp(2.2rem,5.8vw,3.25rem)}.outcome-control-plane{max-width:680px;width:100%}.homepage-gateway .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.homepage-gateway .hero-section,body:has(.homepage-gateway) .site-header.is-home:not(.is-scrolled)+main .hero-section{padding-top:28px;padding-bottom:36px}.homepage-gateway .hero-copy .eyebrow{font-size:.6875rem;margin-bottom:16px}.homepage-gateway .hero-copy h1{font-size:clamp(2.05rem,8.6vw,2.75rem);line-height:1.12}.homepage-gateway .hero-copy__lead{font-size:1rem;margin-block:14px 20px}.homepage-gateway .hero-brand-line{font-size:.9375rem;margin-top:16px}.homepage-gateway .hero-copy .button-row{display:grid}.homepage-gateway .hero-copy .button{min-height:48px;justify-content:space-between}.homepage-gateway .trust-list{font-size:.6875rem;gap:10px;display:flex;flex-wrap:wrap}.outcome-plane__heading{padding:18px 18px 14px}.outcome-plane__heading h2{font-size:1.25rem}.outcome-stage{min-height:76px;grid-template-columns:18px 44px minmax(0,1fr) 20px;gap:7px;padding-inline:2px}.outcome-stage__copy strong{font-size:.8125rem}.outcome-stage__copy small{display:none}.outcome-stage__copy>span{font-size:.75rem}.outcome-plane__footer{padding:14px 16px 16px}.outcome-plane__footer .button{width:100%;justify-content:space-between;font-size:.8125rem;padding-inline:12px}.outcome-plane__signal{left:21px;top:43px;bottom:43px}.homepage-gateway .product-grid{display:grid;grid-template-columns:minmax(0,1fr);margin-inline:0;padding-inline:0;overflow:visible}.homepage-gateway .product-grid>*{width:auto;min-width:0}.homepage-gateway .capability-card{column-gap:12px}.mobile-service-link{grid-template-columns:28px minmax(0,1fr) 16px;gap:8px}}@media (prefers-reduced-motion:reduce){.mega-service-panel,.outcome-control-plane,.outcome-stage *{animation:none!important;transition:none!important;transform:none!important}.outcome-plane__signal i{display:none}}