:root{--navy:#102944;--blue:#1461d2;--cyan:#52c5f7;--ink:#152c43;--muted:#536579;--border:#dce4ec;--pale:#f3f7fb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#fff;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #1480df;outline-offset:5px}.wrap{width:min(1180px,calc(100% - 64px));margin:auto}.header{border-bottom:1px solid var(--border);background:rgba(255,255,255,.97);position:sticky;top:0;z-index:5}.header-inner{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:10px;font-size:30px;font-weight:750;line-height:1;letter-spacing:-1.2px}.mark{background:var(--navy);color:var(--cyan);width:43px;height:43px;display:grid;place-items:center;font-size:33px;border-radius:7px}.brand-sub{display:block;font-size:10px;letter-spacing:2.9px;margin-top:6px;font-weight:600}.header nav{display:flex;gap:26px;font-size:14px;font-weight:600}.header nav a:hover,.text-link:hover{color:var(--blue)}.header-actions{display:flex;align-items:center;gap:20px}.language{display:flex;gap:1px}.language button{border:0;background:transparent;color:var(--muted);padding:5px;font-size:13px;font-weight:600}.language button[aria-pressed=true]{color:var(--blue);text-decoration:underline;text-underline-offset:5px}.button{display:inline-block;padding:14px 23px;border-radius:5px;background:var(--blue);color:#fff;font-size:15px;line-height:1.5;font-weight:600;transition:background .2s}.button:hover{background:#0c49a4}.button.small{font-size:14px;padding:11px 16px}.hero{display:grid;grid-template-columns:1.35fr 1fr;gap:80px;padding-top:78px;padding-bottom:74px;align-items:center}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1.7px;color:var(--blue);display:flex;align-items:center;gap:12px}.line{width:24px;height:2px;background:var(--blue)}h1{font-size:clamp(42px,4.5vw,62px);line-height:1.08;letter-spacing:-2.6px;font-weight:750;margin:25px 0}h1 span{color:var(--blue)}.intro{font-size:18px;line-height:1.7;color:var(--muted);max-width:550px}.hero-actions{display:flex;gap:24px;align-items:center;margin-top:28px;flex-wrap:wrap}.text-link{font-size:14px;font-weight:600;border-bottom:1px solid var(--border)}.hero-foot{display:flex;gap:22px;font-size:12px;color:var(--muted);margin-top:42px}.hero-foot span+span{border-left:1px solid var(--border);padding-left:22px}.landscape{background:var(--navy);border-radius:10px;color:#fff;padding:27px 30px 0;box-shadow:18px 20px 0 #edf3fa}.diagram-top{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.3px;color:#9fb9d5}.diagram-index{color:var(--cyan)}.diagram-heading{font-size:26px;margin:18px 0 26px;letter-spacing:-.6px}.layer{border:1px solid #3c536c;background:#19354f;padding:17px 18px;border-radius:5px}.layer-label{font-size:10px;letter-spacing:1.3px;color:#b5c6d9;margin-bottom:9px}.layer-nodes{display:flex;gap:14px;justify-content:space-between;font-size:17px}.connector{height:24px;width:1px;background:#6486a7;margin:auto}.core{background:#205fb7;border-color:#5485c8}.core strong{font-size:30px;font-weight:600;letter-spacing:-.8px}.core-sub{display:block;font-size:13px;color:#d0e3fd}.diagram-bottom{margin-top:28px;padding:17px 0;border-top:1px solid #3c536c;font-size:12px;color:#b5c6d9}.tech-strip{background:var(--pale);border-top:1px solid #e8eef4;border-bottom:1px solid #e8eef4}.tech-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:27px 0;flex-wrap:wrap}.tech-inner>span{font-size:10px;letter-spacing:1.2px;color:var(--muted);max-width:140px;line-height:1.6}.tech-inner>div{font-weight:700;font-size:18px;color:#395069}.section{padding-top:84px;padding-bottom:82px}.section-head{display:grid;grid-template-columns:1.4fr 1fr;gap:80px;align-items:end;margin-bottom:33px}h2{font-size:38px;line-height:1.2;letter-spacing:-1.3px;margin:17px 0 0}.section-head>p{color:var(--muted);margin-bottom:5px;max-width:420px}.filters{display:flex;gap:9px;flex-wrap:wrap;margin:32px 0}.filters button{border:1px solid var(--border);border-radius:4px;padding:9px 15px;background:#fff;color:var(--muted);font-size:14px}.filters button.active{background:var(--navy);color:#fff;border-color:var(--navy)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--border);border-left:1px solid var(--border)}.service{padding:27px 26px 30px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);min-height:260px}.service-no{font-family:monospace;font-size:13px;color:var(--blue)}h3{font-size:21px;line-height:1.35;letter-spacing:-.3px;margin:17px 0 10px}.service p{color:var(--muted);font-size:15px;margin:0 0 20px}.service-tech{font-size:12px;color:#325c86;line-height:1.7;display:block}.approach{background:var(--pale);padding:72px 0 75px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:44px}.steps article{border-top:1px solid #c3d1e0;padding-top:19px}.step-no{font-size:14px;color:var(--blue);font-weight:700}.steps p{font-size:15px;color:var(--muted)}.about{display:grid;grid-template-columns:1.2fr 1fr;gap:80px}.about-copy p{color:var(--muted);margin:0 0 21px}.about-copy p.large{font-size:21px;line-height:1.6;color:var(--ink)}.credential{display:flex;gap:14px;align-items:center;padding:20px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.credential-symbol{background:#e5effd;color:var(--blue);font-weight:700;width:36px;height:36px;border-radius:50%;display:grid;place-items:center}.credential strong{display:block;font-size:14px}.credential div>span{font-size:12px;color:var(--muted)}.engagement{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.engagement span{font-size:12px;color:var(--muted);padding:5px 9px;background:var(--pale)}.contact{padding-bottom:70px}.contact-inner{padding:46px 50px;background:var(--navy);color:white;border-radius:8px;display:grid;grid-template-columns:1.3fr 1fr;gap:50px;align-items:center}.contact .eyebrow{color:var(--cyan)}.contact h2{font-size:38px}.contact p{color:#c0cfde;font-size:15px;max-width:530px}.contact-action{text-align:right}.button.light{background:white;color:var(--navy)}.button.light:hover{background:#dcebfd}.contact-action>span{display:block;margin-top:16px;color:#b5c6d9;font-size:12px}.footer{border-top:1px solid var(--border);padding-top:30px;padding-bottom:30px;display:flex;gap:40px;align-items:center;justify-content:space-between}.footer .brand{font-size:23px}.footer .mark{width:35px;height:35px;font-size:27px}.footer .brand-sub{font-size:8px;letter-spacing:2.3px}.footer p{font-size:12px;color:var(--muted)}.footer p:last-child{max-width:310px}.skip{position:fixed;top:-100px;left:20px;z-index:99;background:#fff;padding:12px}.skip:focus{top:10px}@media(max-width:1000px){.header nav{display:none}.hero{gap:40px}h1{font-size:46px}.hero-actions{gap:15px}.section-head,.about{gap:40px}.contact-inner{gap:30px;padding:35px}.service{padding:22px}.core strong{font-size:27px}}@media(max-width:720px){.wrap{width:calc(100% - 36px)}.header-inner{min-height:80px;gap:10px}.header-actions{gap:10px}.header-actions>.button{display:none}.brand{font-size:27px}.hero{grid-template-columns:1fr;padding-top:45px;padding-bottom:48px;gap:38px}h1{font-size:46px;letter-spacing:-2px}.hero-foot{margin-top:30px;gap:14px}.hero-foot span+span{padding-left:14px}.landscape{box-shadow:8px 8px 0 #edf3fa;max-width:460px;width:100%;padding:24px 25px 0}.tech-inner{gap:16px;padding:23px 0}.tech-inner>span{flex-basis:100%;max-width:none}.tech-inner>div{font-size:15px}.section{padding:55px 0}.section-head,.about{grid-template-columns:1fr;gap:22px}h2,.contact h2{font-size:32px}.service-grid{grid-template-columns:1fr}.service{min-height:auto;padding:23px}.steps{grid-template-columns:1fr;gap:20px;margin-top:28px}.approach{padding:52px 0}.contact-inner{grid-template-columns:1fr;padding:29px 25px;gap:16px}.contact-action{text-align:left}.contact{padding-bottom:45px}.footer{flex-wrap:wrap;gap:14px}.footer p{margin:5px 0}.footer p:last-child{max-width:none;flex-basis:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
:root{--blue:#075bd8}
.hero-shell{background:#0b223c;color:white;border-bottom:5px solid #287ce2}
.hero{padding-top:88px;padding-bottom:88px;gap:85px}
.hero .eyebrow{color:#8fd9ff}.hero .line{background:#8fd9ff}
.hero h1{font-size:clamp(44px,4.7vw,67px);letter-spacing:-2.8px}
.hero h1 span{color:#8fd9ff}.hero .intro{color:#c3d1df}
.hero .hero-foot{color:#a7bbcf}.hero .text-link{color:#e2eef8;border-color:#6b819b}
.hero .button{background:#fff;color:#102944}.hero .button:hover{background:#d6eaff}
.landscape{background:#102d4b;border:1px solid #365774;box-shadow:12px 12px 0 #153e62;border-radius:3px}
.diagram-heading{font-size:28px;font-weight:600}.layer{border-radius:2px}.core{background:#0b5acc}
.header-inner{min-height:88px}.tech-strip{background:#eef4fb}.tech-inner{padding-top:30px;padding-bottom:30px}
.section-head{margin-bottom:38px}.section-head h2,.about h2{font-size:42px;letter-spacing:-1.8px}
.service-grid{border:0;gap:18px}.service{border:1px solid #dce5ee;border-radius:6px;background:#fff;position:relative;transition:border-color .2s,transform .2s,box-shadow .2s;min-height:290px;padding:29px}
.service:hover{border-color:#8baed5;transform:translateY(-3px);box-shadow:0 10px 25px #1439570d}
.service-no{display:inline-block;background:#eaf2fd;border-radius:4px;padding:7px 10px;font-size:14px}.service h3{margin-top:23px;font-size:22px}.service p{font-size:16px}.service-tech{border-top:1px solid #edf1f5;padding-top:14px}
.approach{background:#eef4fb}.steps{gap:42px}.step-no{font-size:28px;letter-spacing:-1px}.steps p{font-size:16px}.about-copy p.large{font-size:23px}
.contact-inner{border-radius:6px;background:#0b223c;border-top:4px solid #287ce2;padding:54px}.contact h2{font-size:42px}.support-label{display:block;font-size:12px;letter-spacing:2px;font-weight:700;color:#8fd9ff;margin-bottom:17px}
@media(max-width:1000px){.hero{gap:38px}.hero h1{font-size:49px}.service{padding:23px}.section-head h2,.about h2{font-size:36px}}
@media(max-width:720px){.hero{padding:50px 0 55px;gap:40px}.hero h1{font-size:47px;letter-spacing:-2px}.section-head h2,.about h2,.contact h2{font-size:33px}.service{min-height:auto;padding:25px}.service-grid{gap:14px}.contact-inner{padding:31px 25px}.landscape{box-shadow:7px 7px 0 #153e62}.tech-inner{padding-top:24px;padding-bottom:24px}}
