
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/lato-400-latin-ext.8b9fc9737043.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/lato-400-latin.918b7dc3e2e2.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/lato-700-latin-ext.3a5797f440bc.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/lato-700-latin.c447dd7677b4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root{--ink:#102238;--muted:#506176;--paper:#fff;--subtle:#f2f6f9;--line:#cbd6e0;--night:#102238;--blue:#57c2ee;--blue-ink:#056e97;--font:"Lato",Arial,Helvetica,sans-serif;--text-size:1.125rem;--small-size:1rem}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:var(--text-size);line-height:1.7;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{overflow-wrap:break-word}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%;height:auto}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #0573a0;outline-offset:5px}.contact-section a:focus-visible,.partner-case a:focus-visible,.case-hero a:focus-visible{outline-color:#83d7f8}::selection{background:#bbeafd;color:var(--ink)}[hidden]{display:none!important}main:focus,section:focus,article:focus{outline:none}.container{width:min(1248px,calc(100% - 96px));margin-inline:auto}.section{padding:80px 0}.eyebrow{font-size:.875rem;font-weight:700;letter-spacing:.08em;line-height:1.6;color:var(--blue-ink)}.eyebrow.light{color:#a8d8eb}h2{font-size:clamp(2rem,3.3vw,3.25rem);line-height:1.2;font-weight:700;letter-spacing:-.035em}h3{font-size:1.5rem;line-height:1.35;font-weight:700;letter-spacing:-.025em}h4{font-size:1.375rem;line-height:1.4;font-weight:700;letter-spacing:-.02em}.skip-link{position:fixed;top:8px;left:16px;padding:12px 20px;background:white;color:var(--ink);z-index:100;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}
.text-link{display:inline-flex;gap:6px;align-items:center;font-size:1rem;line-height:1.5;font-weight:700;min-height:48px;padding-block:10px;max-width:100%;width:fit-content;color:var(--blue-ink);text-decoration:none;transition:color .18s}.link-label{min-width:0}.link-icon{display:block;width:16px;height:16px;flex:0 0 16px}.text-link .link-label,.contact-email .link-label{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}.text-link:hover .link-label,.contact-email:hover .link-label{text-decoration-thickness:2px}.text-link:hover{color:var(--ink)}.text-link-light{color:#e4f1f7}.text-link-light:hover{color:var(--blue)}.button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:56px;padding:14px 22px;border:1px solid transparent;border-radius:3px;font-weight:700;font-size:1rem;line-height:1.6;transition:background .18s}.button-dark{background:var(--night);color:#fff}.button-dark:hover{background:#234a68}.button-blue{background:var(--blue);color:var(--ink)}.button-blue:hover{background:#89d7f5}
.site-header{position:relative;z-index:20;background:var(--night);color:#fff;border-bottom:1px solid #31465a}.header-inner{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{flex-shrink:0}.brand img{width:178px;height:40px;object-fit:contain}.main-nav{display:flex;align-items:center;gap:18px;font-size:1rem;font-weight:700}.main-nav>a{padding-block:14px;white-space:nowrap;color:#d1dee8}.main-nav>a:hover{color:var(--blue);text-decoration:underline;text-underline-offset:6px}.main-nav .nav-cta{padding:10px 16px;border:1px solid #8198ab;border-radius:3px;display:inline-flex;gap:6px;align-items:center;color:#fff}.menu-toggle{display:none;background:none;border:0;color:#fff;min-height:48px;min-width:80px;align-items:center;gap:12px;cursor:pointer;font-size:1rem}.menu-icon{width:21px;height:12px;border-block:1px solid currentColor;display:inline-block}.site-header a:focus-visible,.site-header button:focus-visible,.hero a:focus-visible{outline-color:#83d7f8}
.hero{background:var(--night);color:#fff;overflow:hidden}.hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);align-items:center;gap:36px;padding:63px 0 60px;min-height:620px}.hero-copy{position:relative;z-index:2;min-width:0}.hero h1{font-size:clamp(2.7rem,4.4vw,4.25rem);font-weight:700;line-height:1.14;letter-spacing:-.04em;margin-top:25px}.hero h1>span{display:block;color:var(--blue)}.hero-description{margin-top:25px;max-width:590px;color:#bfd0dc;font-size:var(--text-size);line-height:1.7}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:30px}.hero-actions .text-link{font-size:1rem}.hero-visual{min-width:0;width:100%;padding:8px;pointer-events:none}.orb-scene{position:relative;aspect-ratio:798 / 756;width:100%;isolation:isolate}.orb-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.hero-footnote{display:flex;justify-content:space-between;gap:24px;align-items:center;border-top:1px solid #31465a;padding:23px 0 25px;font-size:var(--small-size);color:#bfd0dc}.hero-footnote p span{margin-inline:10px;color:#9ab1c2}.hero-footnote a{padding-block:0}.hero-footnote a:hover{color:var(--blue)}
@media(prefers-reduced-motion:no-preference) and (hover:hover) and (pointer:fine){.orb-scene{animation:orb-arrive .9s ease-out both}}
@keyframes orb-arrive{from{opacity:.3;transform:translateY(10px)}to{opacity:1;transform:none}}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:48px;margin-bottom:40px}.section-heading .eyebrow{margin-bottom:18px}.section-intro{font-size:var(--text-size);color:var(--muted);max-width:400px;line-height:1.7}.services-section{background:var(--subtle)}.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:48px 1fr 1.3fr;gap:24px;border-bottom:1px solid var(--line);padding:28px 0 30px}.service-number{font-size:.875rem;color:var(--blue-ink);padding-top:4px}.service-row>div>p{color:var(--muted);font-size:var(--text-size);line-height:1.7}.service-row>div>.service-context{font-size:var(--small-size);margin-top:10px;max-width:280px}.service-row>div>.service-scope{font-size:var(--small-size);margin-top:12px;color:#41576b}.compact-link{margin-top:10px}
.experience-list{border-top:1px solid var(--line)}.experience-row{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.5fr);gap:48px;align-items:start;padding:30px 0;border-bottom:1px solid var(--line)}.experience-row .eyebrow{font-size:.875rem;letter-spacing:.04em}.experience-row h3{font-size:1.5rem;margin-top:11px}.experience-detail{min-width:0}.experience-result{font-size:1.375rem;font-weight:700;line-height:1.45;color:var(--ink)}.experience-scope{font-size:var(--text-size);line-height:1.7;color:var(--muted);margin-top:10px}.experience-detail .text-link{margin-top:12px}.experience-note{font-size:var(--text-size);color:var(--muted);border-left:3px solid var(--blue);padding:2px 0 2px 24px;max-width:820px;margin-top:34px;line-height:1.7}
.process-section{border-block:1px solid var(--line)}.process-label{font-size:.875rem;font-weight:700;color:var(--blue-ink);letter-spacing:.055em;margin-bottom:23px}.outsourcing-row{scroll-margin-top:24px}.outsourcing-process{display:grid;grid-template-columns:1fr 1.5fr auto;gap:35px;align-items:center;margin-top:36px;padding:28px 30px;background:var(--subtle);border-left:3px solid var(--blue)}.outsourcing-process h3{font-size:1.25rem}.outsourcing-process p{color:var(--muted);font-size:var(--text-size);line-height:1.7}.outsourcing-process>.text-link{white-space:nowrap}.process-steps{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0;margin:0;gap:40px}.process-steps li{display:flex;flex-direction:column;align-items:flex-start;border-top:1px solid #98aaba;padding-top:23px}.step-number{font-size:.875rem;color:var(--blue-ink)}.process-steps h3{font-size:1.375rem;margin-top:16px}.process-steps p{font-size:var(--text-size);color:var(--muted);line-height:1.7;margin:15px 0 25px}.step-result{font-size:var(--small-size);line-height:1.7;color:#40596d;margin-top:auto;border-top:1px solid var(--line);padding-top:17px;width:100%}
.ai-section{background:#eaf4f9}.ai-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:100px}.ai-heading .eyebrow{margin-bottom:18px}.ai-heading>p:not(.eyebrow){font-size:var(--text-size);line-height:1.7;color:var(--muted);margin-top:24px;max-width:430px}.ai-details article+article{border-top:1px solid #b6cdd9;margin-top:28px;padding-top:28px}.ai-details h3{font-size:1.375rem}.ai-details p{font-size:var(--text-size);color:var(--muted);line-height:1.7;margin-top:13px}.ai-details .ai-detail-note{font-size:var(--small-size);color:#37576b}.ai-details>.text-link{margin-top:22px}.questions-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:70px}.questions-grid .eyebrow{margin-bottom:18px}.questions{border-top:1px solid var(--line)}.questions details{border-bottom:1px solid var(--line)}.questions summary{padding:22px 22px 22px 0;font-weight:700;cursor:pointer;font-size:var(--text-size);line-height:1.7}.questions summary::marker{color:var(--blue-ink)}.questions details p{padding:0 20px 24px 0;color:var(--muted);font-size:var(--text-size);line-height:1.7}
.contact-section{background:var(--night);color:white;padding:86px 0 92px}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:86px;align-items:center}.contact-section h2{font-size:clamp(2.1rem,3.6vw,3.5rem);line-height:1.2;margin-top:23px}.contact-grid>div>p:not(.eyebrow){font-size:var(--text-size);color:#b7ccd9;max-width:470px;margin-top:25px;line-height:1.7}.contact-actions{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:13px}.contact-email{display:inline-flex;align-items:center;gap:6px;width:fit-content;max-width:100%;min-height:56px;font-size:clamp(1.25rem,2vw,1.85rem);font-weight:700;letter-spacing:-.025em;overflow-wrap:anywhere;padding:6px 0 18px;transition:color .18s}.contact-email:hover,.contact-phone:hover{color:var(--blue)}.contact-phone{font-size:1.125rem;min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}.contact-actions .contact-hint{font-size:var(--small-size);color:#b7ccd9;margin-top:3px}.site-footer{background:#fff;color:var(--muted);padding:48px 0 18px}.footer-top{display:grid;grid-template-columns:1fr 1.2fr auto;gap:35px;align-items:start}.footer-address{font-size:1rem;line-height:1.8;font-style:normal}.footer-address strong{display:block;font-weight:700;color:var(--ink);margin-bottom:8px}.footer-social{display:inline-flex;align-items:center;gap:16px;min-height:44px;font-size:var(--small-size);font-weight:700;color:var(--ink);text-decoration:underline;text-underline-offset:5px}.footer-social:hover{color:var(--blue-ink)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:22px;margin-top:40px;padding-top:19px;border-top:1px solid var(--line);font-size:1rem}.footer-bottom>a{font-size:1rem}.footer-divider{margin-inline:12px}

.case-hero{background:var(--night);color:white;padding:36px 0 66px}.breadcrumb{display:flex;gap:12px;flex-wrap:wrap;color:#bfd0dc;font-size:var(--small-size);margin-bottom:47px}.breadcrumb a{text-decoration:underline;text-underline-offset:4px}.breadcrumb a:hover{color:var(--blue)}.case-hero-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:80px;align-items:end}.case-hero h1{font-size:clamp(2.5rem,4.5vw,4.4rem);font-weight:700;line-height:1.12;letter-spacing:-.04em;margin-top:22px}.case-description{color:#bfd0dc;font-size:var(--text-size);line-height:1.7;margin-top:25px;max-width:660px}.case-meta{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:0}.case-meta dt{font-size:1rem;color:#a5bdce;margin-bottom:9px}.case-meta dd{margin:0;font-size:var(--small-size)}.case-body{padding:50px 0 84px}.case-visual{margin:0;background:var(--subtle);padding:35px}.case-visual img{width:100%;max-height:600px;object-fit:contain}.case-caption{color:var(--muted);font-size:var(--small-size);margin-top:12px}.case-content{display:grid;grid-template-columns:1fr 1.4fr;gap:70px;margin-top:55px}.case-content .eyebrow{margin-bottom:14px}.case-content h2{font-size:2.3rem}.case-content p,.case-content ul{font-size:var(--text-size);line-height:1.7;color:var(--muted)}.case-content ul{margin:0;padding-left:22px}.case-content li+li{margin-top:12px}.portfolio-more{display:flex;align-items:center;justify-content:space-between;gap:28px;border-top:1px solid var(--line);padding-top:22px;margin-top:45px}
@media(min-width:1440px){.hero-grid{gap:46px}}
@media(max-width:1080px){.container{width:calc(100% - 64px)}.header-inner{min-height:82px;flex-wrap:wrap;gap:0}.main-nav{gap:20px;width:100%;padding:0 0 22px;flex-wrap:wrap}.js .menu-toggle:not([hidden]){display:inline-flex}.js .main-nav{display:none}.js .main-nav.is-open{display:flex}.main-nav .nav-cta{margin-left:auto}.hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:24px;padding:55px 0 50px;min-height:0}.hero h1{font-size:clamp(2.5rem,4.8vw,3.4rem)}.outsourcing-process{grid-template-columns:1fr 1.5fr;gap:20px}.outsourcing-process>.text-link{grid-column:2}.hero-footnote{flex-wrap:wrap;gap:5px;font-size:var(--small-size)}.section{padding:64px 0}.section-heading{gap:40px}.section-intro{max-width:310px}.service-row{grid-template-columns:35px 1fr 1.2fr;gap:20px}.partner-case{gap:38px;padding:38px}.experience-row{grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr);gap:32px}.ai-layout{gap:50px}.questions-grid{gap:42px;grid-template-columns:.85fr 1.2fr}.contact-grid{gap:45px}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-social{justify-self:start}.case-hero-grid{gap:40px;grid-template-columns:1.4fr 1fr}.case-meta{grid-template-columns:1fr;gap:20px}.case-content{gap:40px}.process-steps{gap:25px}}
@media(max-width:760px){:root{--text-size:1.0625rem}.container{width:calc(100% - 40px)}.header-inner{min-height:78px}.brand img{width:157px;height:36px}.main-nav{display:flex;align-items:stretch;flex-direction:column;gap:1px;padding-bottom:18px}.main-nav>a{padding:12px 0}.main-nav .nav-cta{margin:10px 0 0;justify-content:flex-start;width:100%;padding:12px 15px}.hero-grid{display:block;padding:40px 0 30px}.hero h1{font-size:clamp(2.5rem,8vw,3.8rem);line-height:1.14;letter-spacing:-.04em;margin-top:20px}.hero-description{font-size:var(--text-size);line-height:1.7;margin-top:23px}.hero-actions{gap:13px;margin-top:24px}.button{min-height:52px;font-size:1rem;padding:13px 17px}.hero-visual{width:min(100%,280px);margin:28px auto 0;padding:0}.hero-footnote{padding-block:19px;font-size:var(--small-size);gap:10px}.hero-footnote p{line-height:2}.hero-footnote p span{margin-inline:6px}.section{padding:56px 0}.section-heading{display:block;margin-bottom:32px}.section-heading .eyebrow{margin-bottom:14px}h2{font-size:clamp(2rem,6.3vw,2.65rem)}.section-intro{max-width:520px;margin-top:21px}.service-row{grid-template-columns:28px 1fr;gap:13px;padding:26px 0 29px}.service-row>div:last-child{grid-column:2}.service-row h3{font-size:1.4rem}.service-row>div>.service-context{max-width:none;margin-top:8px}.service-row>div>p{line-height:1.7;font-size:var(--text-size)}.partner-case{display:block;padding:29px 25px}.partner-identity{border-right:0;border-bottom:1px solid #42566a;padding:0 0 25px;margin-bottom:25px}.partner-identity h3{font-size:3rem;margin-top:16px}.partner-identity>p:not(.eyebrow){font-size:1.0625rem}.partner-copy h4{font-size:1.25rem}.partner-copy>p{margin-top:14px}.partner-copy .text-link{margin-top:13px}.experience-row{display:block;padding:27px 0}.experience-detail{margin-top:18px}.experience-result{font-size:1.25rem}.experience-row h3{font-size:1.375rem}.experience-note{padding-left:18px;margin-top:27px}.outsourcing-process{display:block;padding:23px;margin-top:32px}.outsourcing-process p{margin-top:14px}.outsourcing-process .text-link{margin-top:15px}.process-steps{grid-template-columns:1fr;gap:31px}.process-steps h3{margin-top:14px}.process-steps p{margin:12px 0 19px}.step-result{padding-top:13px}.ai-layout{display:block}.ai-heading>p:not(.eyebrow){max-width:none;margin-top:21px}.ai-details{margin-top:32px}.ai-details article+article{margin-top:24px;padding-top:24px}.questions-grid{display:block}.questions{margin-top:29px}.questions summary{padding:20px 5px 20px 0}.questions details p{padding-right:0}.contact-section{padding:55px 0 60px}.contact-grid{display:block}.contact-section h2{font-size:2.25rem;margin-top:19px}.contact-grid>div>p:not(.eyebrow){margin-top:21px}.contact-actions{margin-top:33px;gap:10px}.contact-email{font-size:clamp(1.18rem,5.5vw,1.85rem);padding-bottom:13px}.contact-phone{font-size:1.0625rem}.contact-actions .contact-hint{margin-top:3px}.site-footer{padding-top:35px}.footer-top{gap:27px 20px}.footer-bottom{flex-wrap:wrap;gap:10px 18px;margin-top:28px;padding-top:17px}.footer-bottom>span:nth-child(2){order:3;width:100%}.footer-bottom>a{margin-left:auto}.case-hero{padding:26px 0 40px}.breadcrumb{margin-bottom:30px}.case-hero-grid{display:block}.case-hero h1{font-size:2.5rem}.case-description{font-size:var(--text-size)}.case-meta{grid-template-columns:1fr 1fr;margin-top:28px}.case-body{padding:30px 0 50px}.case-visual{padding:18px}.case-content{display:block;margin-top:36px}.case-content h2{font-size:1.9rem;margin-bottom:20px}.portfolio-more{flex-wrap:wrap;gap:14px;margin-top:33px}}
@media(max-width:370px){.hero h1{font-size:2.35rem}.hero-actions{align-items:flex-start;flex-direction:column}.footer-top{grid-template-columns:1fr}.footer-divider{margin-inline:5px}.contact-section h2{font-size:2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.site-header,.hero-visual,.hero-actions,.site-footer,.contact-actions,.skip-link{display:none!important}.container{width:100%}.section,.hero-grid,.case-hero,.contact-section{padding:25px 0}.hero-grid,.contact-grid,.ai-layout{display:block}.hero,.contact-section,.case-hero{background:white!important;color:#111!important}.hero p,.hero h1>span,.contact-section p,.case-hero p,.case-meta dt{color:#333!important}.hero-footnote{display:none;font-size:var(--small-size)}.section-heading{margin-bottom:20px}.partner-case,.service-row,.process-steps li{break-inside:avoid}a{text-decoration:underline}details{display:block}details p{display:block!important}}


.hero{position:relative;isolation:isolate}.hero-background{position:absolute;z-index:0;inset:-48px -20px;background:url('/assets/hero-background.664896f70437.jpg') center center / cover no-repeat;opacity:.9;pointer-events:none}.hero>.container{position:relative;z-index:1}.main-nav>a[aria-current=page]{color:var(--blue);text-decoration:underline;text-underline-offset:7px}
.experience-note a{text-decoration:underline;text-underline-offset:4px}.experience-note a:hover{color:var(--blue-ink)}.footer-bottom{margin-top:20px}.scope-note{margin-top:24px}
.service-hero{padding:32px 0 70px;background:var(--night);color:white}.service-hero a:focus-visible{outline-color:#83d7f8}.service-hero-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);align-items:center;gap:90px}.service-hero h1{font-size:clamp(2.5rem,4.2vw,4rem);font-weight:700;line-height:1.15;letter-spacing:-.035em;margin-top:20px}.service-summary{padding:28px 0 28px 30px;border-left:2px solid #4b90ac}.service-summary dl{display:grid;gap:24px;margin:0}.service-summary dt{font-size:1rem;color:#a8d8eb;margin-bottom:7px}.service-summary dd{margin:0;color:#d1dee8;font-size:var(--small-size);line-height:1.7}.service-stat{padding-bottom:27px;margin-bottom:25px;border-bottom:1px solid #405c70}.service-stat strong{display:block;color:var(--blue);font-size:clamp(1.75rem,2.6vw,2.5rem);font-weight:700;letter-spacing:-.035em;line-height:1.2}.service-stat span{display:block;font-size:var(--text-size);color:#d1dee8;margin-top:13px;line-height:1.7}
.benefit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.benefit-grid article{padding-top:24px;border-top:2px solid var(--blue)}.benefit-grid h3{font-size:1.375rem}.benefit-grid p{color:var(--muted);margin-top:14px;line-height:1.8}.example-section{background:var(--subtle);border-block:1px solid var(--line)}.example-section .section-heading{align-items:center}.example-section .section-heading>div{max-width:690px}.example-section h2{font-size:clamp(1.75rem,2.7vw,2.6rem);line-height:1.3}.example-section .section-intro{flex:0 0 30%;max-width:350px}.example-flow{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;counter-reset:flow}.example-flow li{position:relative;min-width:0;padding-top:33px;border-top:1px solid #9ab7c7}.flow-number{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid #86aabc;border-radius:50%;font-size:.875rem;font-weight:700;color:var(--blue-ink);background:var(--subtle);margin:0;position:absolute;top:-19px;left:0}.example-flow li:not(:last-child):after{content:'→';position:absolute;top:-17px;right:-30px;font-size:1.25rem;line-height:30px;color:var(--blue-ink);background:var(--subtle);padding-inline:7px}.example-flow h3{font-size:1.375rem}.example-flow p{color:var(--muted);line-height:1.8;margin-top:13px}.service-proof{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;padding:32px;margin-top:52px;background:#eaf4f9;border-left:3px solid var(--blue)}.service-proof .eyebrow{margin-bottom:16px}.service-proof h3{font-size:1.5rem}.service-proof>div>p:not(.eyebrow){color:var(--muted);line-height:1.8}.service-proof .text-link{margin-top:14px}.service-questions{padding-top:0}
@media(max-width:1080px){.service-hero-grid{gap:45px;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}.service-summary{padding-left:24px}.benefit-grid,.example-flow{gap:28px}.example-flow li:not(:last-child):after{right:-26px;padding-inline:5px}.service-proof{gap:35px}.service-hero{padding-bottom:55px}}
@media(max-width:760px){.service-hero{padding:26px 0 42px}.service-hero-grid{display:block}.service-hero h1{font-size:clamp(2.25rem,7.5vw,3.4rem);line-height:1.18}.service-summary{margin-top:34px;padding:24px 0 0;border-left:0;border-top:1px solid #4b90ac}.service-summary dl{gap:20px}.service-stat{margin-bottom:21px;padding-bottom:23px}.service-stat strong{font-size:2rem}.benefit-grid{grid-template-columns:1fr;gap:27px}.benefit-grid article{padding-top:20px}.example-section .section-intro{max-width:none}.example-flow{grid-template-columns:1fr;gap:30px;margin-left:18px}.example-flow li{border-top:0;border-left:1px solid #9ab7c7;padding:0 0 0 32px;min-height:84px}.flow-number{position:absolute;top:0;left:-19px;margin:0}.example-flow li:not(:last-child):after{content:'↓';top:auto;bottom:-25px;right:auto;left:-12px;padding:0;font-size:1.25rem;line-height:24px;width:24px;text-align:center}.example-flow p{margin-top:10px}.service-proof{display:block;padding:26px 22px;margin-top:35px}.service-proof>div+div{margin-top:19px}.service-proof h3{font-size:1.375rem}.service-questions{padding-top:0}}
@media print{.hero-background,.service-hero .hero-actions{display:none}.service-hero{background:white;color:#111;padding:25px 0}.service-hero-grid{display:block}.service-summary{border-color:#aaa}.service-summary dt,.service-summary dd,.service-stat strong,.service-stat span{color:#333}.service-proof,.example-flow li,.benefit-grid article{break-inside:avoid}}


.clients-section{padding:20px 0;border-bottom:1px solid var(--line);background:#fff}.clients-inner{display:block}.clients-inner h2{font-size:1.125rem;font-weight:700;letter-spacing:0;line-height:1.6;text-align:center;margin-bottom:12px;color:var(--ink)}.client-logos{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:center;gap:8px 28px;list-style:none;padding:0;margin:0}.client-logo{display:flex;align-items:center;justify-content:center;min-width:0;min-height:64px;cursor:default}.client-logos .client-logo img{width:160px;height:52px;object-fit:contain;filter:grayscale(1) brightness(.75);opacity:.85;transition:filter .22s ease,opacity .22s ease,transform .22s ease}.case-screen summary{display:flex;align-items:center;justify-content:center;gap:6px;width:fit-content;min-height:48px;padding:8px 5px;margin-inline:auto;font-size:var(--small-size);font-weight:700;line-height:1.6;color:var(--blue-ink);cursor:pointer;list-style:none}.case-screen summary::-webkit-details-marker{display:none}.case-screen summary:hover{text-decoration:underline;text-underline-offset:5px}.disclosure-icon{display:block;flex:0 0 16px;transition:transform .2s}details[open]>summary .disclosure-icon{transform:rotate(180deg)}
.project-continuity{font-size:.875rem;font-weight:700;line-height:1.6;color:var(--blue-ink);margin-top:13px}.handoff-panel{display:grid;grid-template-columns:1fr 1.5fr;gap:55px;border-block:1px solid var(--line);padding-block:32px;margin-top:36px}.handoff-panel h3{font-size:1.75rem;line-height:1.3;margin-top:16px}.handoff-panel>div>p:not(.eyebrow){color:var(--muted);line-height:1.8}.handoff-panel p+p{margin-top:16px}.handoff-panel .text-link{margin-top:15px}.handoff-points{list-style:none;padding:0;margin:0}.handoff-points li{display:grid;grid-template-columns:170px minmax(0,1fr);gap:20px;padding:17px 0;border-bottom:1px solid var(--line);font-size:var(--small-size);line-height:1.75}.handoff-points li:first-child{padding-top:0}.handoff-points strong{font-weight:700;color:var(--ink)}.handoff-points span{color:var(--muted)}.handoff-panel .handoff-note{margin-top:20px;font-size:var(--small-size)}.handoff-section{background:var(--subtle);border-block:1px solid var(--line);margin-bottom:90px}.handoff-section .section-intro{max-width:410px}.handoff-example-label{color:var(--muted);font-size:var(--small-size);margin-bottom:22px}.handoff-flow{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}.handoff-flow li{border-top:2px solid #86aabc;padding-top:20px}.handoff-owner{display:block;font-size:var(--small-size);line-height:1.6;font-weight:700;color:var(--blue-ink);margin-bottom:16px}.handoff-flow h3{font-size:1.375rem}.handoff-flow p{margin-top:13px;color:var(--muted);line-height:1.8}.handoff-deliverables{margin-top:32px;padding-top:22px;border-top:1px solid var(--line);color:var(--muted);line-height:1.8;font-size:var(--small-size);max-width:960px}.case-meta .ongoing-meta,.case-meta .case-role{grid-column:1 / -1}.case-body .case-content:first-child{margin-top:0}.case-continuity{margin-top:35px;padding:20px 24px;background:#eaf4f9;border-left:3px solid var(--blue)}.case-continuity>p+p{margin-top:9px;color:var(--muted)}.case-screen{margin-top:35px;border-block:1px solid var(--line)}.case-screen summary{margin:0;justify-content:flex-start;padding-block:14px;min-height:54px}.case-screen .case-visual{padding:24px;margin-bottom:24px}.case-screen .case-visual img{max-height:none}.case-screen .case-caption{margin-top:16px}
@media(hover:hover) and (pointer:fine){.client-logo:hover img{filter:none;opacity:1;transform:translateY(-2px)}}
@media(max-width:1080px){.client-logos{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px 18px}.handoff-panel{gap:35px}.handoff-section{margin-bottom:76px}.handoff-flow{gap:25px}}
@media(max-width:760px){.clients-section{padding:18px 0}.clients-inner h2{margin-bottom:12px}.client-logos{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 16px}.client-logo{min-height:56px}.client-logos .client-logo img{width:132px;height:46px}.handoff-panel{display:block;padding-block:26px;margin-top:32px}.handoff-panel h3{font-size:1.5rem}.handoff-panel>div+div{margin-top:24px}.handoff-points li{grid-template-columns:1fr;gap:5px;padding:16px 0}.handoff-section{margin-bottom:56px}.handoff-flow{grid-template-columns:1fr;gap:27px}.handoff-owner{margin-bottom:12px}.handoff-deliverables{margin-top:27px}.case-screen .case-visual{padding:12px;margin-bottom:18px}.case-screen .case-caption{font-size:1rem;line-height:1.7}.case-continuity{padding:18px 20px}}
@media(prefers-reduced-motion:reduce){.client-logo:hover img{transform:none}}
@media print{.case-screen{display:none}.handoff-panel,.handoff-flow li,.case-continuity{break-inside:avoid}}


.hero-visual{position:relative}.ai-flow{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:20px 0 0;margin:24px 0 0;border-top:1px solid #b6cdd9;list-style:none;font-size:var(--small-size);font-weight:700;color:#31536b}.ai-flow li{display:flex;align-items:center;gap:12px}.ai-flow li:not(:last-child):after{content:'→';color:var(--blue-ink);font-size:1.125rem}.handoff-flow li{position:relative}.handoff-flow li:not(:last-child):after{content:'→';position:absolute;right:-28px;top:-18px;color:var(--blue-ink);font-size:1.4rem;padding:0 5px;background:var(--subtle)}.process-section .process-steps p{margin-bottom:0}
@media(max-width:760px){.hero-grid{display:flex;flex-direction:column;gap:0;padding:17px 0 36px}.hero-visual{order:-1;width:min(76vw,285px);margin:0 auto 19px;padding:0}.hero-copy{text-align:center;width:100%}.hero-copy>.eyebrow,.hero-description,.hero-footnote{display:none}.hero h1{font-size:clamp(2rem,8.3vw,2.8rem);line-height:1.14;letter-spacing:-.035em;margin-top:0}.hero-actions{justify-content:center;align-items:center;gap:10px 20px;margin-top:25px}.hero-actions .button{min-height:52px}.hero-actions .text-link{font-size:1rem}.handoff-flow li:not(:last-child):after{content:'↓';right:auto;left:0;top:auto;bottom:-26px;font-size:1.125rem;line-height:24px;padding:0 8px}.ai-flow{gap:10px;margin-top:21px}.ai-flow li{gap:10px}}
@media(max-width:760px) and (max-height:700px){.hero-visual{width:min(66vw,232px);margin-bottom:16px}.hero-grid{padding-top:13px;padding-bottom:30px}.hero h1{font-size:clamp(1.9rem,8vw,2.5rem)}}
@media print{.ai-flow{border-color:#aaa}}


.service-scope strong{font-weight:700;color:var(--ink)}.service-summary dl{gap:20px}.ai-service-section{background:#eaf4f9;margin-bottom:76px}.ai-pilot-result{margin-top:32px;padding-top:24px;border-top:1px solid #b6cdd9;color:var(--muted);line-height:1.8}.ai-pilot-result strong{font-weight:700;color:var(--ink)}.case-outcome{padding-top:32px;border-top:1px solid var(--line)}
@media(max-width:760px){.ai-service-section{margin-bottom:56px}.ai-pilot-result{margin-top:25px;padding-top:20px}.case-outcome{padding-top:26px}}
@media(min-width:1081px) and (max-width:1199px){.header-inner{gap:20px}.main-nav{gap:12px}.main-nav .nav-cta{padding-inline:12px}}


h2{letter-spacing:-.02em}h3,h4{letter-spacing:-.015em}.hero h1,.case-hero h1,.service-hero h1{letter-spacing:-.025em}
@media(max-width:420px){.client-logos{grid-template-columns:repeat(3,minmax(0,1fr))}}


.technology-heading{align-items:flex-start}
.technology-pillars,.about-projects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
.technology-pillars article{padding-top:20px;border-top:1px solid #b6cdd9}
.pillar-number{display:block;color:var(--blue-ink);font-size:1rem;font-weight:700;margin-bottom:14px}
.technology-pillars h3,.ai-responsibility h3,.about-projects h3{font-size:1.375rem}
.technology-pillars p,.ai-responsibility p:not(.eyebrow),.technology-start,.about-projects p,.about-responsibility{color:var(--muted);font-size:var(--text-size);line-height:1.7}
.technology-pillars p,.about-projects p{margin-top:14px}
.ai-responsibility{display:grid;grid-template-columns:1fr 1.4fr;gap:70px;margin-top:38px;padding-top:32px;border-top:1px solid #b6cdd9}
.ai-responsibility .eyebrow{margin-bottom:14px}
.ai-responsibility .text-link{margin-top:12px}
.technology-start{margin-top:28px;padding:22px 26px;border-left:2px solid var(--blue-ink);background:#f7fbfd}
.technology-start strong{color:var(--ink)}

.footer-links{display:flex;flex-direction:column;align-items:flex-start}
.footer-links .text-link{color:var(--ink)}
.footer-links .text-link:hover{color:var(--blue-ink)}
.audit-scope,.about-experience{background:var(--subtle)}
.audit-scope-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 56px;margin:0}
.audit-scope-grid>div{border-top:1px solid var(--line);padding-top:20px}
.audit-scope-grid dt{font-size:1.25rem;font-weight:700;margin-bottom:10px}
.audit-scope-grid dd{margin:0;color:var(--muted);font-size:var(--text-size);line-height:1.7}
.about-hero .text-link{margin-top:22px}
.about-work .section-heading>div{max-width:670px}
.about-responsibility{padding-top:24px;border-top:1px solid var(--line);margin-top:32px;max-width:960px}
.about-projects article{padding-top:24px;border-top:2px solid var(--blue)}
.about-projects .text-link{margin-top:14px}
.about-project-links{display:flex;gap:8px 24px;flex-wrap:wrap}
@media(max-width:1080px){.technology-pillars,.about-projects{gap:26px}.ai-responsibility{gap:40px}.audit-scope-grid{gap:26px 36px}}
@media(max-width:760px){.technology-pillars,.about-projects,.audit-scope-grid{grid-template-columns:1fr;gap:26px}.ai-responsibility{grid-template-columns:1fr;gap:20px;margin-top:30px;padding-top:26px}.technology-start{margin-top:24px;padding:18px 20px}.footer-links{grid-column:2}.about-projects .text-link{margin-top:10px}}
@media(max-width:370px){.footer-links{grid-column:auto}}
@media print{.technology-pillars article,.ai-responsibility,.audit-scope-grid>div,.about-projects article{break-inside:avoid}}

.about-projects{grid-template-columns:repeat(2,minmax(0,1fr))}
.service-experience{margin-top:28px;padding-top:22px;border-top:1px solid var(--line);color:var(--muted);font-size:var(--text-size)}
.service-experience strong{color:var(--ink)}
@media(max-width:760px){.about-projects{grid-template-columns:1fr}}

.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.consent-banner{position:fixed;z-index:60;left:20px;bottom:20px;width:min(640px,calc(100% - 40px));padding:22px 24px;background:#fff;color:#102238;border:1px solid #b7c8d7;border-radius:6px;box-shadow:0 8px 40px #10223829;font-size:1rem;line-height:1.6}
.consent-banner h2{font-size:1.25rem;line-height:1.3;letter-spacing:0;margin:0 0 8px}
.consent-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.consent-action{display:inline-flex;justify-content:center;align-items:center;min-height:44px;flex:1 1 auto;border:1px solid #54728b;background:#fff;color:#102238;border-radius:3px;padding:9px 13px;font-size:1rem;font-weight:700;line-height:1.5;cursor:pointer}
.consent-action:hover{background:#eaf4f9;border-color:#056e97}
.privacy-settings{border:0;background:none;font-family:inherit;cursor:pointer;text-align:left;padding-inline:0}
.privacy-dialog{width:min(620px,calc(100% - 32px));max-height:90vh;max-height:90dvh;padding:32px;border:1px solid #cbd6e0;border-radius:6px;color:#102238;background:#fff;font-family:var(--font);font-size:1rem;line-height:1.65;overflow:auto;overscroll-behavior:contain;box-shadow:0 12px 64px #10223840}
.privacy-dialog:not([open]){display:none}
.privacy-dialog::backdrop{background:#10223899}
.privacy-dialog h2{font-size:1.75rem;line-height:1.25;margin-right:32px;letter-spacing:-.02em}
.privacy-dialog p{margin-top:17px}
.privacy-dialog a{color:#056e97;text-decoration:underline;text-underline-offset:3px}
.privacy-dialog fieldset{padding:0;margin:24px 0 0;border:0}
.privacy-dialog legend{font-weight:700;padding:0;margin-bottom:10px}
.consent-option{display:flex;gap:14px;align-items:flex-start;padding:16px 0;border-top:1px solid #cbd6e0;cursor:pointer;min-height:44px}
.consent-option input{flex:0 0 22px;width:22px;height:22px;margin:4px 0 0;accent-color:#056e97}
.consent-option span span,.consent-option strong{display:block}
.consent-option span span{margin-top:4px;color:#506176}
.privacy-details{margin-top:24px;border-top:1px solid #cbd6e0;padding-top:8px}
.privacy-details summary{min-height:44px;padding:12px 0;font-weight:700;cursor:pointer}
.privacy-dialog :focus-visible,.consent-banner :focus-visible{outline:3px solid #0573a0;outline-offset:4px}
.dialog-close{position:absolute;top:10px;right:10px;width:44px;height:44px;border:0;background:none;color:#102238;font-size:1.75rem;line-height:1;cursor:pointer}
.chat-launcher{position:fixed;right:20px;bottom:20px;z-index:50;display:inline-flex;align-items:center;gap:9px;min-height:48px;padding:11px 18px;border:1px solid #8bd8f6;border-radius:5px;background:#102238;color:#fff;font-size:1rem;line-height:1.5;font-weight:700;cursor:pointer;box-shadow:0 4px 18px #10223826}
.chat-launcher:hover{background:#234a68}.chat-launcher:focus-visible{outline:3px solid #0573a0;outline-offset:4px}
.chat-dialog{max-width:460px}.chat-dialog .button{margin-top:20px;cursor:pointer}.chat-dialog .button:disabled{opacity:.7;cursor:wait}
.chat-status:empty{display:none}.chat-status{color:#506176}
@media(max-width:760px){.consent-banner{left:16px;bottom:16px;width:calc(100% - 32px);padding:18px}.consent-actions{gap:8px;margin-top:14px}.consent-action{padding:9px 10px}.privacy-dialog{padding:26px 22px}.privacy-dialog h2{font-size:1.5rem}.chat-launcher{right:16px;bottom:16px}.has-consent-banner .chat-launcher{display:none}}
@media print{.consent-banner,.privacy-dialog,.chat-launcher,.privacy-settings{display:none!important}}
