/* IR - IT: light editorial layout with cobalt accents. */
:root{--ink:#141a35;--surface:#eef2fb;--paper:#fff;--white:#fff;--lime:#3d4bc4;--muted:#546078;--line:#dbe1ef;--max:1320px;--gutter:clamp(22px,5vw,80px)}
html{scroll-padding-top:112px}body{background:#fff;color:var(--ink);font-family:Arial,"Helvetica Neue",sans-serif}::selection{background:#dce1ff;color:#172051}a:focus-visible,button:focus-visible{outline-color:#3d4bc4}.section-space{padding-block:clamp(64px,7vw,108px)}
.site-header{background:rgba(255,255,255,.96);border-bottom:1px solid #e3e7f0;backdrop-filter:blur(18px)}.site-header .header-inner{min-height:88px}.site-header .wordmark{font-size:2.7rem;letter-spacing:-.025em}.home-link{font-weight:600}.main-nav{gap:28px}.main-nav a{font-size:.9375rem}.main-nav .nav-contact{background:#3d4bc4;color:#fff;border-color:#3d4bc4;margin-left:8px;padding:12px 23px}.main-nav .nav-contact:hover{background:#28369e;color:white;border-color:#28369e}.main-nav a[aria-current="page"]{font-weight:700}.menu-toggle{color:#141a35;border-color:#aeb7ce}.wordmark>span,.about-mark>span{color:#3d4bc4}
.hero--text{background:radial-gradient(ellipse at 83% 46%,#eff2ff 0%,#fff 55%)}.hero--text .hero-inner{padding-top:54px;padding-bottom:26px}.hero--text .hero-eyebrow{font-size:.875rem;font-weight:600;color:#546078;letter-spacing:.07em}.hero--text .hero-copy{grid-template-columns:1.15fr 1fr;gap:22px 70px;margin-top:50px;padding-bottom:20px}.hero--text h1.hero-brand-heading{font-size:clamp(5rem,9vw,8.4rem);line-height:1.08;letter-spacing:-.035em}.hero-brand-name{color:#192047;word-spacing:.04em;letter-spacing:-.025em}.hero-brand-promise{font-size:clamp(1.7rem,2.8vw,2.6rem);margin-top:22px;font-weight:500;color:#3d4bc4}.hero--text .hero-tagline{font-size:clamp(1.6rem,2.6vw,2.3rem);font-weight:500;line-height:1.2;color:#172051;margin:8px 0 0}.hero--text .hero-lead{font-size:1.125rem;line-height:1.8;color:#546078;max-width:460px}.hero--text .hero-actions{gap:22px}.round-icon{background:#3d4bc4;color:white}.round-link:hover .round-icon{background:#2736a3;color:white}.text-link{border-color:#8792ad}.text-link:hover{color:#2939b0;border-color:#2939b0}.hero--text .hero-bottom{margin-top:40px;color:#546078;border-top:1px solid #dbe1ef}.hero-bottom p span{color:#8792ad}
/* The moving text keeps shallow metallic depth on a pale surface. */
.ticker{background:linear-gradient(180deg,#f8faff 0%,#e4e9f3 12%,#f1f4fa 50%,#dfe5f0 93%,#c9d2e4 100%);color:#243252;border-top:1px solid #cad3e6;border-bottom:1px solid #c4cede;padding-block:10px;box-shadow:inset 0 2px 0 white,inset 0 -3px 4px #bcc7d84d,0 9px 20px -18px #26375c}.ticker-group{padding-block:2px;gap:28px;padding-right:28px}.ticker-group>span{font-size:clamp(1.125rem,1.6vw,1.5rem);color:#344467;font-weight:600;text-shadow:0 1px 0 #fff,0 2px 0 #a3b0c7,0 3px 0 #8898b2,0 5px 5px #8e9bb659}.ticker-group>i{font-size:1.125rem;color:#687da3;text-shadow:0 1px 0 white,0 3px 2px #a0aec8}
/* Original customer colors on white. */
.clients-section{background:#fff;border-bottom:1px solid #e4e8f1;padding-block:60px}.clients-heading{gap:35px;grid-template-columns:1.3fr 1fr;margin-bottom:24px}.clients-heading h2{font-size:clamp(1.9rem,3vw,2.75rem)}.clients-heading .eyebrow{color:#596680;margin-bottom:14px}.clients-heading>p{color:#596680;font-size:1rem}.client-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:24px}.client-card{transform:perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg))}.client-logo-stage{height:112px;padding:12px;animation-duration:10s}.client-logo-stage img{width:100%;height:68px;filter:drop-shadow(0 1px 0 #aeb9ce) drop-shadow(0 5px 5px #26365d1f)}.client-card:hover .client-logo-stage img{filter:drop-shadow(0 1px 0 #aeb9ce) drop-shadow(0 7px 7px #26365d33)}
.expertise-section{background:#f4f6fc;color:#141a35}.section-heading{grid-template-columns:1fr 2fr;gap:40px;margin-bottom:44px}.section-heading>.eyebrow{color:#596680}.section-heading h2{font-size:clamp(2.3rem,4vw,3.6rem);line-height:1.12}.word-window{color:#3d4bc4}.section-intro{color:#546078;line-height:1.8;font-size:1.0625rem;max-width:660px}.services-grid{gap:24px}.services-grid>.service{background:white;border:1px solid #e0e5ef;border-radius:16px;overflow:hidden;box-shadow:0 9px 25px #1d315209}.services-grid .service-visual{border-radius:0;aspect-ratio:1.15;background:#080b0d}.services-grid .service-copy{padding:28px 24px 26px}.services-grid .service-copy>.eyebrow{color:#596680;font-size:.875rem;letter-spacing:.055em}.services-grid .service h3{font-size:clamp(1.4rem,1.85vw,1.85rem);line-height:1.25;font-weight:600;letter-spacing:-.035em}.services-grid .service h3 span{color:#3d4bc4}.services-grid .service-copy>p:not(.eyebrow){color:#546078}.service-list li{border-color:#e0e5ef;font-size:.9375rem;color:#34425d}.service-list li:last-child{border-color:#e0e5ef}.product-context{border-color:#d6dfee;color:#596680;margin-top:32px}.product-context a{border-color:#aab6d0}
.approach-section{background:white;color:#141a35}.approach-layout{gap:70px}.approach-intro{top:120px}.approach-intro .eyebrow{color:#596680}.approach-intro h2{font-size:clamp(2.4rem,4vw,3.6rem);line-height:1.12}.approach-intro>p:not(.eyebrow){color:#546078}.approach-note{color:#3d4bc4;border-color:#dbe1ef;margin-top:32px}.process-list li,.process-list li:last-child{border-color:#dbe1ef}.step-number{color:#3d4bc4;font-weight:600}.process-list h3{font-size:clamp(1.6rem,2.5vw,2.2rem)}.process-list p{color:#546078}.step-result{color:#384a76}
.about-section{background:#eef2ff}.about-section .eyebrow{color:#596680;margin-bottom:32px}.about-statement{font-size:clamp(2.8rem,5vw,4.7rem);line-height:1.12;letter-spacing:-.04em}.about-statement>span{color:#3d4bc4}.about-bottom{gap:50px;margin-top:42px;padding-top:32px;border-color:#cfd8ee}.about-mark{font-size:clamp(2.5rem,5vw,4rem);color:#a9b6d7}.about-copy p,.about-copy p.about-lead{color:#546078}.about-copy p.about-lead{color:#172051;font-size:1.5rem}
.contact-section{background:#3d4bc4;color:white}.contact-section .eyebrow{color:#e2e7ff}.contact-heading-row h2{font-size:clamp(2.8rem,5.6vw,5rem);letter-spacing:-.035em}.contact-orbit{border-color:#a2adf1;width:clamp(80px,10vw,140px)}.contact-orbit>span{font-size:clamp(2.8rem,5vw,5rem)}.contact-orbit:hover{background:white;color:#3d4bc4}.contact-bottom{border-color:#8d9ae2;margin-top:44px;gap:60px}.contact-bottom>p,.contact-label{color:#e2e7ff}.contact-details>a+a{border-color:#8d9ae2}.contact-value{font-size:clamp(1.5rem,2.5vw,2.1rem);color:white}.site-footer{background:#fff;padding-block:34px 45px;color:#172051}.footer-top p,.footer-bottom{color:#596680}.footer-bottom{border-color:#dbe1ef}.footer-top .wordmark{font-size:2rem}.back-top:hover{color:#3d4bc4}
/* The same light palette on the profile page. */
.profile-hero{background:linear-gradient(110deg,#fff 40%,#eef2ff)}.profile-hero .eyebrow,.profile-section-label .eyebrow{color:#596680}.profile-hero h1{font-size:clamp(3rem,5vw,4.7rem);line-height:1.12;letter-spacing:-.035em}.profile-role{color:#3d4bc4;font-size:clamp(1.125rem,1.6vw,1.45rem)}.profile-lead{color:#546078}.profile-emblem img{mix-blend-mode:normal;border-radius:18px;width:170px;height:auto}.profile-content{background:#fff}.profile-content .eyebrow,.profile-content .profile-prose p{color:#546078}.profile-section-label h2{font-size:clamp(2rem,3vw,3rem)}.profile-content h2>span{color:#3d4bc4}.profile-tools li{background:#f2f5fd;border-color:#d9e1f2;border-radius:8px;color:#35446c}.profile-certifications{background:#f2f5fd}.profile-cert-list li,.profile-cert-list li:last-child{border-color:#d2dced}.profile-cert-code{color:#3d4bc4}.profile-cert-list h3{color:#172051}.profile-strengths{background:#e8edff;color:#172051}.profile-strengths .eyebrow{color:#596680}.profile-strengths .text-link{color:#2939b0;border-color:#8391c2}.profile-strengths .text-link:hover{color:#172051}
@media(max-width:1100px){.main-nav{gap:18px}.main-nav .nav-contact{margin-left:0;padding:10px 16px}.site-header .wordmark{font-size:2.4rem}.hero--text .hero-copy{column-gap:36px}.client-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.client-logo-stage{height:105px}.client-logo-stage img{width:75%}.services-grid .service-copy{padding:24px}.services-grid .service h3{font-size:1.75rem}.approach-layout{gap:42px}}
@media(max-width:1000px) and (min-width:761px){.services-grid>.service{gap:0;align-items:stretch}.services-grid .service-visual{height:100%;min-height:320px;aspect-ratio:auto}.services-grid .service-copy{align-self:center}.services-grid .service-visual>img{height:calc(100% - 70px)}}
@media(max-width:760px){html{scroll-padding-top:100px}.site-header .header-inner{min-height:78px}.site-header .wordmark{font-size:2.4rem}.menu-toggle{color:#172051;background:white;border-color:#bcc7de}.main-nav .nav-contact{margin:0}.hero--text .hero-inner{padding-top:32px}.hero--text .hero-copy{display:contents}.hero--text h1.hero-brand-heading{font-size:clamp(4rem,18vw,6rem);margin-top:34px}.hero-brand-promise{font-size:1.85rem;margin-top:14px}.hero--text .hero-tagline{font-size:1.5rem;margin-top:22px}.hero--text .hero-lead{margin-top:22px;font-size:1.0625rem}.hero--text .hero-actions{margin-top:25px}.hero--text .hero-bottom{margin-top:34px}.clients-heading{grid-template-columns:1fr;gap:15px}.clients-section{padding-block:45px}.client-grid{gap:12px}.client-logo-stage{padding:12px;height:88px}.client-logo-stage img{width:100%;height:58px}.section-heading{grid-template-columns:1fr;gap:22px}.services-grid{gap:30px}.services-grid .service-visual{aspect-ratio:1.15;min-height:0;height:auto}.services-grid .service h3{font-size:1.85rem}.services-grid .service-copy{padding:25px}.approach-layout{grid-template-columns:1fr;gap:32px}.about-statement{font-size:clamp(2.8rem,9vw,4rem)}.about-bottom{grid-template-columns:1fr;gap:24px}.contact-bottom{grid-template-columns:1fr;gap:28px}.contact-heading-row h2{font-size:clamp(2.5rem,8vw,3.6rem)}.contact-orbit{width:76px}.contact-value{font-size:1.65rem}.profile-hero h1{font-size:clamp(3rem,10vw,4rem)}.profile-emblem img{width:135px}.profile-experience{border-color:#dbe1ef}}
@media(max-width:420px){.client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero--text .hero-eyebrow{font-size:.875rem}.hero--text h1.hero-brand-heading{font-size:18vw}.services-grid .service h3{font-size:1.6rem}.contact-heading-row h2{font-size:2.6rem}}
@media(prefers-reduced-motion:reduce){.client-card{transform:none}}
.company-intro{background:linear-gradient(115deg,#fff 45%,#eef2ff)}.company-intro .eyebrow{color:#596680;margin-bottom:24px}.company-intro h1{font-size:clamp(2.7rem,5.5vw,5rem);line-height:1.15;letter-spacing:-.035em}.company-lead{font-size:clamp(1.3rem,2.2vw,1.8rem);line-height:1.5;color:#3d4bc4;margin-top:22px}.company-summary{max-width:800px;margin-top:24px;color:#546078;font-size:1.0625rem;line-height:1.85}.company-summary p+p{margin-top:16px}.company-quote-link{margin-top:28px}.profile-hero h2{font-size:clamp(3rem,5vw,4.7rem);line-height:1.12;letter-spacing:-.035em}.profile-page .profile-hero{background:#fff;border-top:1px solid #e3e8f2}.quote-section{background:#f2f5fd}.quote-intro{font-size:1.0625rem;color:#546078;line-height:1.8;margin-top:24px}.quote-intro a{text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.quote-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}.quote-field{min-width:0}.quote-field-wide{grid-column:1/-1}.quote-field label{display:block;margin-bottom:8px;font-size:1rem;font-weight:600;color:#172051}.quote-field input,.quote-field textarea{display:block;width:100%;font:inherit;font-size:1rem;line-height:1.5;padding:13px 14px;border:1px solid #aebbd4;border-radius:8px;background:#fff;color:#141a35}.quote-field textarea{resize:vertical;min-height:150px}.quote-field input:focus-visible,.quote-field textarea:focus-visible{outline:3px solid #3d4bc4;outline-offset:2px}.quote-help,.quote-status{font-size:.9375rem;line-height:1.7;color:#546078;margin-top:20px}.quote-submit{display:inline-flex;align-items:center;gap:20px;border:0;border-radius:100px;background:#3d4bc4;color:#fff;padding:15px 24px;font:inherit;font-weight:600;font-size:1rem;margin-top:20px;cursor:pointer;white-space:normal;text-align:left}.quote-submit:hover{background:#28369e}.quote-status:empty{display:none}@media(max-width:760px){.profile-hero h2{font-size:clamp(2.7rem,10vw,4rem)}.quote-fields{grid-template-columns:1fr}.company-intro h1{font-size:clamp(2.6rem,9vw,4rem)}}

/* Small, consistent gaps around the brand hyphen. */
.hero-brand-name,.wordmark,.site-header .wordmark,.about-mark{word-spacing:0}

/* A human image of data protection beside the introduction. */
.hero--hand .hero-copy{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto auto 1fr;gap:18px 64px;margin-top:34px;align-items:start}
.hero--hand h1.hero-brand-heading{grid-column:1;grid-row:1;font-size:clamp(4.7rem,8vw,7.4rem)}
.hero--hand .hero-brand-promise{font-size:clamp(1.75rem,2.7vw,2.5rem);margin-top:14px}
.hero--hand .hero-tagline{grid-column:1;grid-row:2;margin:0;align-self:start;font-size:clamp(1.5rem,2.1vw,2rem)}
.hero--hand .hero-lead{grid-column:1;grid-row:3;margin:0;max-width:500px}
.hero--hand .hero-actions{grid-column:1;grid-row:4;margin:8px 0 0;align-self:start}
.hero-hand{grid-column:2;grid-row:1/5;align-self:stretch;border-radius:22px;overflow:hidden;background:#eef2ff;min-height:390px;max-height:520px;position:relative}
.hero-hand img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;position:absolute;inset:0}
@media(max-width:1000px){.hero--hand .hero-copy{column-gap:32px}.hero--hand h1.hero-brand-heading{font-size:clamp(4.5rem,8vw,6.4rem)}.hero-hand{min-height:410px}}
@media(max-width:760px){.hero--hand .hero-copy{display:contents}.hero--hand h1.hero-brand-heading{font-size:clamp(4rem,18vw,6rem);margin-top:30px}.hero--hand .hero-tagline{margin-top:20px}.hero--hand .hero-lead{margin-top:22px}.hero--hand .hero-actions{margin-top:24px}.hero-hand{order:6;width:100%;aspect-ratio:4/3;min-height:0;max-height:420px;flex:none;margin-top:30px}.hero--hand .hero-bottom{order:7}.hero-hand img{object-position:center 58%}}

.service-product-link{color:inherit;text-decoration:underline;text-decoration-color:#bcc4e6;text-decoration-thickness:1px;text-underline-offset:.18em}.service-product-link:hover{color:#3d4bc4;text-decoration-color:currentColor}.service-product-link:focus-visible{outline:2px solid #3d4bc4;outline-offset:5px;border-radius:2px}

/* Dimensional lettering with a slow, restrained floating movement. */
.hero-brand-name{width:max-content;max-width:100%;color:#253569;text-shadow:0 1px 0 #cad5f0,0 2px 0 #a1b1d5,0 3px 0 #8194bf,0 4px 0 #6278a8,0 5px 0 #465c8f,0 6px 0 #304574,0 12px 16px #20376326;transform-origin:50% 60%;animation:brand-float 6s ease-in-out infinite;will-change:transform}
.wordmark{color:#253569;text-shadow:0 1px 0 #b9c7e6,0 2px 0 #8194bf,0 3px 0 #506796,0 6px 8px #20376320}
@keyframes brand-float{0%,100%{transform:perspective(850px) translateY(0) rotateX(3deg) rotateY(-5deg)}50%{transform:perspective(850px) translateY(-7px) rotateX(-2deg) rotateY(5deg)}}
@media(prefers-reduced-motion:reduce){.hero-brand-name{animation:none;transform:none;will-change:auto}}

/* Sculpted proof heading, coordinated with the dimensional brand. */
.clients-heading #clients-heading{color:#253569;font-weight:650;letter-spacing:-.035em;line-height:1.18;text-shadow:0 1px 0 #d5def1,0 2px 0 #b0bedc,0 3px 0 #8fA2c7,0 4px 0 #7188b3,0 5px 0 #506b9a,0 9px 12px #25356922}
.clients-heading .eyebrow{color:#4b6088;font-weight:600;letter-spacing:.11em;text-shadow:0 1px 0 #fff,0 2px 1px #a3b3d133}

.clients-heading>p.client-proof{font-size:clamp(1.2rem,1.65vw,1.5rem);line-height:1.55;font-weight:500;color:#192047;max-width:520px;padding-left:20px;border-left:3px solid #3d4bc4}.client-proof strong{color:#3d4bc4;font-weight:700}

/* The hand fills the opening as a background, with a clear text area. */
.hero.hero--hand{position:relative;isolation:isolate;overflow:hidden;background:#f5f8ff}
.hero--hand>.hero-hand{position:absolute;inset:0;z-index:0;width:100%;height:100%;min-height:0;max-height:none;margin:0;border-radius:0;aspect-ratio:auto;background:#f5f8ff;pointer-events:none}
.hero--hand>.hero-hand img{width:72%;height:100%;left:auto;right:0;object-fit:cover;object-position:center 56%;opacity:.92}
.hero--hand>.hero-hand:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff 0%,#fffffffa 28%,#ffffffdc 43%,#ffffff45 63%,#ffffff08 100%)}
.hero--hand .hero-inner{position:relative;z-index:1}
.hero--hand .hero-copy{grid-template-columns:minmax(0,560px);column-gap:0}
.hero--hand .hero-bottom{border-color:#cbd5e5}
@media(max-width:760px){.hero--hand>.hero-hand img{width:100%;object-position:62% center;opacity:.45}.hero--hand>.hero-hand:after{background:linear-gradient(90deg,#fffffff5,#ffffffc7 62%,#ffffff70)}.hero--hand .hero-lead{color:#344467}}

/* Scroll-driven entrance and image depth; native scrolling stays untouched. */
.js.motion-enabled [data-scroll-text]{opacity:var(--scroll-opacity,1);transform:translate3d(0,var(--scroll-lift,0px),0);transition:none}
.js.motion-enabled [data-scroll-text]:focus-within,.js.motion-enabled [data-scroll-text].scroll-focused{opacity:1;transform:none}
.js.motion-enabled .service-visual>img[data-scroll-image]{animation:none;transform:translate3d(0,var(--scroll-image-y,0px),0)!important}
.js.motion-enabled .hero-hand img[data-scroll-image]{transform:translate3d(0,var(--scroll-image-y,0px),0) scale(1.1);transform-origin:center}
.js.motion-enabled .profile-emblem img[data-scroll-image]{transform:translate3d(0,var(--scroll-image-y,0px),0)}
@media(prefers-reduced-motion:reduce){[data-scroll-text]{opacity:1!important;transform:none!important}[data-scroll-image]{transform:none!important;animation:none!important}}
@media print{[data-scroll-text]{opacity:1!important;transform:none!important}[data-scroll-image]{transform:none!important}}

/* Words enter in reading order as the heading crosses the viewport. */
.js.motion-enabled [data-scroll-text] .scroll-word{display:inline-block;color:inherit;opacity:var(--word-opacity,1);transform:translateY(var(--word-lift,0px));vertical-align:baseline}
.js.motion-enabled [data-scroll-text]:focus-within .scroll-word,.js.motion-enabled .scroll-focused .scroll-word{opacity:1;transform:none}
.js.motion-enabled .hero-hand img[data-scroll-image]{transform:translate3d(0,var(--scroll-image-y,0px),0) scale(1.22)}
@media(prefers-reduced-motion:reduce){[data-scroll-text] .scroll-word{opacity:1!important;transform:none!important}}
@media print{[data-scroll-text] .scroll-word{opacity:1!important;transform:none!important}}

/* Keep the open palm and shield in frame instead of enlarging the crop. */
.hero--hand>.hero-hand img{width:62%;height:135%;top:-22%;right:0;object-fit:contain;object-position:center;opacity:1;filter:contrast(1.08) saturate(1.06)}
.hero--hand>.hero-hand:after{background:linear-gradient(90deg,#fff 0%,#fffffff7 27%,#ffffffb8 40%,#ffffff1f 53%,transparent 65%)}
.js.motion-enabled .hero-hand img[data-scroll-image]{transform:translate3d(0,var(--scroll-image-y,0px),0);transform-origin:center}
@media(max-width:760px){.hero--hand>.hero-hand img{width:100%;height:115%;top:0;object-fit:cover;object-position:58% 62%;opacity:.8}.hero--hand>.hero-hand:after{background:linear-gradient(90deg,#fffffff5 0%,#ffffffda 38%,#ffffff70 72%,#ffffff26 100%)}}

/* The hand gently floats even when the visitor is not scrolling. */
.hero--hand>.hero-hand img{animation:hand-background-float 9s ease-in-out infinite;will-change:translate,rotate}
@keyframes hand-background-float{0%,100%{translate:0 5px;rotate:-.5deg}50%{translate:0 -13px;rotate:.6deg}}
.tab-hidden .hero--hand>.hero-hand img{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.hero--hand>.hero-hand img{animation:none;translate:none;rotate:none;will-change:auto}}
@media print{.hero--hand>.hero-hand img{animation:none;translate:none;rotate:none}}

/* One panoramic background spans the entire opening. */
.hero.hero--panoramic>.hero-hand{inset:0;background:#edf4fc}
.hero.hero--panoramic>.hero-hand img{inset:-60px -30px;width:calc(100% + 60px);height:calc(100% + 120px);max-width:none;object-fit:cover;object-position:65% center;opacity:1;filter:none;animation:hand-background-float 9s ease-in-out infinite}
.hero.hero--panoramic>.hero-hand:after{background:linear-gradient(90deg,#fffffff0 0%,#ffffffd9 23%,#ffffff85 40%,#ffffff14 57%,transparent 73%)}
.js.motion-enabled .hero.hero--panoramic>.hero-hand img{transform:translate3d(0,var(--scroll-image-y,0px),0)}
.tab-hidden .hero.hero--panoramic>.hero-hand img{animation-play-state:paused}
@media(max-width:760px){.hero.hero--panoramic>.hero-hand img{object-position:64% center}.hero.hero--panoramic>.hero-hand:after{background:linear-gradient(90deg,#fffffff0,#ffffffd1 48%,#ffffff66)}}
@media(prefers-reduced-motion:reduce){.hero.hero--panoramic>.hero-hand img{animation:none;transform:none!important;translate:none;rotate:none;will-change:auto}}
@media print{.hero.hero--panoramic>.hero-hand img{animation:none;transform:none!important;translate:none;rotate:none}}

/* A clear typographic rhythm for the approach introduction. */
.approach-intro .eyebrow{font-weight:600;letter-spacing:.13em;font-size:.875rem;margin-bottom:24px;color:#596b8d}
.approach-intro h2{font-size:clamp(2.65rem,4.2vw,4.2rem);font-weight:650;line-height:1.12;letter-spacing:-.04em;color:#253569;text-shadow:0 1px 0 #d3ddf0,0 2px 0 #a5b5d6,0 3px 0 #8196bd,0 7px 10px #25356918}
.approach-title-line{display:block}.approach-title-line+.approach-title-line{margin-top:.08em}.approach-title-accent{color:#3d4bc4}
.approach-intro>p:not(.eyebrow){max-width:36ch;margin-top:30px;font-size:1.125rem;line-height:1.8;color:#4b5b76;text-wrap:pretty}
.approach-intro .approach-note{display:block;margin-top:28px;padding-top:20px;font-size:.9375rem;font-weight:600;letter-spacing:.005em;color:#3d4bc4;border-color:#dbe1ef}
@media(max-width:760px){.approach-intro h2{font-size:clamp(2.5rem,9vw,3.4rem)}.approach-intro>p:not(.eyebrow){font-size:1.0625rem;margin-top:24px}}

/* Compact, dimensional contact typography on the blue surface. */
.contact-section .eyebrow{font-size:.875rem;font-weight:600;letter-spacing:.13em;margin-bottom:24px;color:#e3e8ff}
.contact-heading-row h2{font-size:clamp(2.6rem,4.3vw,4.2rem);font-weight:650;line-height:1.12;letter-spacing:-.035em;color:#fff;text-shadow:0 1px 0 #c4ceff,0 2px 0 #a1b0ef,0 3px 0 #8495d9,0 7px 12px #18277945}
.contact-title-line{display:block}.contact-title-line+.contact-title-line{margin-top:.08em}
.contact-section .contact-bottom{margin-top:34px;padding-top:28px;border-color:#a7b3ef66}
.contact-bottom>p{max-width:38ch;font-size:1.0625rem;line-height:1.85;color:#edf0ff;text-wrap:pretty}
.contact-question{display:block;margin-bottom:10px;font-size:1.25rem;line-height:1.4;font-weight:650;color:white}
@media(max-width:760px){.contact-heading-row h2{font-size:clamp(2.35rem,8vw,3.35rem)}.contact-heading-row{gap:16px}.contact-bottom>p{font-size:1rem}.contact-question{font-size:1.125rem}}

/* Airy moving labels with a soft glass finish. */
.ticker{background:#f8faff;color:#253569;padding-block:10px;line-height:1.3;border-top:1px solid #e2e8f4;border-bottom:1px solid #e2e8f4;box-shadow:none;perspective:none;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.ticker-track{animation-duration:44s}
.ticker-group{min-width:100vw;justify-content:space-around;gap:24px;padding:0 24px 0 0;transform:none}
.ticker-group>span{font-size:clamp(1rem,1.15vw,1.125rem);line-height:1.3;letter-spacing:.005em;font-weight:600;color:#34466f;text-shadow:0 1px 0 #fff;padding:6px 18px;border:1px solid #dfe6f3;border-radius:100px;background:linear-gradient(180deg,#fff,#f0f4fc);box-shadow:0 2px 4px #25356908,inset 0 1px 0 #fff}
.ticker-group>i{display:block;flex:none;width:22px;height:1px;background:#a9b7df;box-shadow:none;text-shadow:none}
@media(max-width:760px){.ticker-group{gap:18px;padding-right:18px}.ticker-group>span{font-size:1rem;padding:6px 14px}.ticker-group>i{width:16px}}

/* Clear, dimensional cards for the four stages of delivery. */
.process-list{display:grid;gap:22px;min-width:0}
.process-list>li,.process-list>li:last-child{position:relative;grid-template-columns:52px minmax(0,1fr);gap:22px;padding:30px;border:1px solid #dce2f3;border-left:4px solid #4753cf;border-radius:18px;background:linear-gradient(130deg,#f0f3ff 0%,#fff 68%);box-shadow:0 8px 25px #2639780b,0 2px 0 #e4e9f5;transition:box-shadow .25s,border-color .25s}
.process-list .step-number{display:flex;align-items:center;justify-content:center;width:52px;height:52px;margin:0;border:1px solid #7180ec;border-radius:15px;background:linear-gradient(145deg,#6270e7,#3541b4);color:#fff;font-size:1.05rem;font-weight:700;letter-spacing:.02em;box-shadow:0 4px 0 #293696,0 8px 15px #3949ad25}
.process-list h3{margin:3px 0 15px;color:#1c2859;font-size:clamp(1.7rem,2.5vw,2.25rem);font-weight:700;letter-spacing:-.035em;line-height:1.15;text-shadow:0 1px 0 #fff,0 2px 0 #cdd5ee}
.process-list p{max-width:48ch;color:#4d5b77;font-size:1rem;line-height:1.8}
.process-list .step-result{display:inline-flex;align-items:center;gap:9px;max-width:100%;margin-top:21px;padding:8px 12px;border:1px solid #dae1f7;border-radius:9px;background:#edf1ff;color:#3545a4;font-size:.82rem;font-weight:600;line-height:1.5}
.process-list .step-result:before{content:"";width:6px;height:6px;flex-shrink:0;border-radius:50%;background:#5261d2}
@media(hover:hover){.process-list>li:hover{border-color:#aab6e6;box-shadow:0 12px 32px #26397814,0 2px 0 #dce3f6}}
@media(max-width:1100px) and (min-width:761px){.process-list>li,.process-list>li:last-child{padding:23px;grid-template-columns:44px minmax(0,1fr);gap:16px}.process-list .step-number{width:44px;height:44px}}
@media(max-width:760px){.process-list{gap:18px}.process-list>li,.process-list>li:last-child{padding:24px 20px;grid-template-columns:42px minmax(0,1fr);gap:16px}.process-list .step-number{width:42px;height:42px;border-radius:12px;font-size:.95rem}.process-list h3{font-size:1.75rem}.process-list p{font-size:.96rem}.process-list .step-result{padding:7px 10px;font-size:.78rem}}

.hero-bottom>.scroll-link:only-child{margin-left:auto}

/* A stronger first impression, with crisp depth and a luminous blue slogan. */
.hero.hero--hand .hero-brand-promise{display:block;width:fit-content;max-width:100%;margin-top:26px;padding-bottom:6px;font-size:clamp(2.25rem,3.7vw,3.45rem);font-weight:750;letter-spacing:-.045em;line-height:1.1;color:#3549bb;text-shadow:0 2px 0 #c5d1f3,0 5px 12px #263d8320}
@supports(background-clip:text){.hero.hero--hand .hero-brand-promise{background:linear-gradient(115deg,#1f2b68 5%,#4051cf 48%,#687de6 76%,#2839a2);background-clip:text;-webkit-background-clip:text;color:transparent;text-shadow:none;filter:drop-shadow(0 2px 0 #ccd6f3) drop-shadow(0 5px 8px #263d831b)}}
.hero.hero--hand .hero-tagline{font-size:clamp(1.8rem,2.7vw,2.5rem);font-weight:650;line-height:1.15;letter-spacing:-.035em;color:#202c5d;text-shadow:0 1px 0 #fff,0 2px 0 #d4dcf1;margin:0}
.hero.hero--hand .hero-lead{max-width:43ch;margin-top:9px;padding:4px 0 4px 19px;border-left:3px solid #6272d9;font-size:1.1rem;line-height:1.85;color:#455574}
@media(max-width:760px){.hero.hero--hand .hero-brand-promise{font-size:clamp(2rem,7.9vw,3rem);margin-top:22px}.hero.hero--hand .hero-tagline{font-size:clamp(1.65rem,6.5vw,2.15rem);margin-top:15px}.hero.hero--hand .hero-lead{margin-top:26px;font-size:1rem;padding-left:15px;max-width:38ch}}
