:root { --navy:#08275b; --blue:#1385e8; --ink:#132033; --muted:#657086; --line:#dce4ee; --paper:#f7f9fc; --white:#fff; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--white); font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; line-height:1.55; }
a { color:inherit; text-decoration:none; }
.site-header { min-height:142px; max-width:1200px; margin:auto; padding:10px 28px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand, .footer-brand { display:block; }
.brand { width:250px; }
.brand img { display:block; width:250px; height:auto; }
nav { display:flex; gap:25px; align-items:center; font-size:.9rem; font-weight:600; }
nav > a:not(.nav-cta) { color:#4d596c; }
nav > a:not(.nav-cta):hover { color:var(--blue); }
.nav-cta { padding:10px 15px; border-radius:6px; background:var(--navy); color:white; }
.hero { max-width:1200px; min-height:530px; margin:0 auto; padding:78px 28px; display:grid; grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr); align-items:center; gap:100px; }
.eyebrow { margin:0 0 12px; color:var(--blue); text-transform:uppercase; letter-spacing:.12em; font-weight:750; font-size:.72rem; }
h1,h2,h3,p { margin-top:0; }
h1 { max-width:690px; margin-bottom:22px; color:var(--navy); font-size:clamp(2.75rem,6vw,5rem); line-height:1.03; letter-spacing:-.06em; }
h2 { margin-bottom:18px; color:var(--navy); font-size:clamp(2rem,3.5vw,3.1rem); line-height:1.1; letter-spacing:-.045em; }
.lead { max-width:580px; color:var(--muted); font-size:1.1rem; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:31px; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:20px; padding:13px 18px; border:1px solid transparent; border-radius:6px; font-size:.9rem; font-weight:700; transition:transform .2s, background .2s; }
.button:hover { transform:translateY(-2px); }
.button-primary { background:var(--blue); color:white; }
.button-secondary { border-color:#cbd6e5; color:var(--navy); }
.hero-card { padding:32px; border-radius:4px; background:var(--navy); color:white; box-shadow:18px 18px 0 #e9f4ff; }
.hero-card strong { display:block; color:#fff; font-size:2.55rem; letter-spacing:-.06em; line-height:1; }
.hero-card span { display:block; margin-top:7px; color:#bcdcfb; font-size:.92rem; }
.hero-card hr { margin:25px 0; border:0; border-top:1px solid #49658d; }.hero-card p { margin:0; font-size:.93rem; }
.section { max-width:1200px; margin:auto; padding:100px 28px; }
.intro { display:grid; grid-template-columns:.95fr 1.05fr; gap:110px; border-top:1px solid var(--line); }.intro > p { margin:35px 0 0; color:var(--muted); font-size:1.13rem; }
.stats { display:grid; grid-template-columns:repeat(3,1fr); background:var(--paper); border-block:1px solid var(--line); }.stats div { min-height:160px; padding:34px max(28px, calc((100vw - 1144px)/2)); display:flex; flex-direction:column; justify-content:center; }.stats div + div { border-left:1px solid var(--line); }.stats strong { color:var(--navy); font-size:2.45rem; letter-spacing:-.06em; line-height:1; }.stats span { margin-top:9px; color:var(--muted); font-size:.88rem; }
.section-heading { max-width:590px; margin-bottom:42px; }.section-heading > p:last-child { color:var(--muted); }
.service-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }.service-grid article { min-height:238px; padding:27px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }.service-grid span { color:var(--blue); font-weight:800; font-size:.75rem; }.service-grid h3 { margin:30px 0 10px; color:var(--navy); font-size:1.2rem; line-height:1.2; }.service-grid p { color:var(--muted); font-size:.88rem; }
.difference { background:var(--navy); color:white; }.difference h2 { max-width:620px; color:white; }.difference-grid { display:grid; grid-template-columns:1fr 1fr; gap:100px; margin-top:35px; }.difference-grid > p { color:#bcdcfb; font-size:1.12rem; }.difference ul { margin:0; padding:0; list-style:none; }.difference li { padding:13px 0; border-bottom:1px solid #3f5d87; font-size:.95rem; }.difference li::before { content:"↗"; color:#58adff; margin-right:12px; }
.purpose { display:grid; grid-template-columns:1fr 1fr; gap:75px; }.purpose article + article { border-left:1px solid var(--line); padding-left:75px; }.purpose p:last-child { color:var(--muted); }
.values { display:grid; grid-template-columns:1fr 1fr; gap:80px; padding-top:0; }.values > p { margin:35px 0 0; color:var(--navy); font-size:1.25rem; line-height:1.6; }
.quote { padding:92px 28px; text-align:center; background:linear-gradient(118deg,#062355,#0d64aa); color:white; }.quote h2 { max-width:740px; margin-inline:auto; color:white; }.quote > p:not(.eyebrow) { margin-inline:auto; max-width:630px; color:#d1e8ff; }.quote .eyebrow { color:#87c8ff; }.button-light { margin-top:16px; background:white; color:var(--navy); box-shadow:0 9px 24px rgba(0,0,0,.18); }.quote small { display:block; margin-top:13px; color:#a9d4fa; font-size:.76rem; }
footer { display:grid; grid-template-columns:1.4fr 1fr 1.2fr; gap:50px; max-width:1200px; margin:auto; padding:62px 28px 26px; color:var(--muted); font-size:.9rem; }.footer-brand { width:280px; }.footer-brand img { display:block; width:280px; height:auto; }.footer-label { margin-bottom:10px; color:var(--navy); font-weight:800; text-transform:uppercase; letter-spacing:.1em; font-size:.68rem; } footer a { display:block; margin:3px 0; } address { font-style:normal; }.copyright { grid-column:1/-1; margin:24px 0 0; padding-top:20px; border-top:1px solid var(--line); font-size:.75rem; }
@media (max-width:760px) { .site-header { min-height:112px; padding:10px 20px; }.brand { width:185px; }.brand img { width:185px; height:auto; } nav a:not(.nav-cta) { display:none; } nav { gap:0; }.hero { min-height:auto; grid-template-columns:1fr; gap:45px; padding:68px 24px; }.hero-card { max-width:400px; }.section { padding:72px 24px; }.intro,.difference-grid,.purpose,.values { grid-template-columns:1fr; gap:28px; }.intro > p,.values > p { margin:0; }.stats { grid-template-columns:1fr; }.stats div { min-height:auto; padding:25px 24px; }.stats div + div { border-left:0; border-top:1px solid var(--line); }.service-grid { grid-template-columns:1fr; }.service-grid article { min-height:auto; }.purpose article + article { border-left:0; border-top:1px solid var(--line); padding:34px 0 0; }.difference-grid { margin-top:22px; } footer { grid-template-columns:1fr; gap:25px; padding:48px 24px 24px; }.copyright { margin-top:3px; } }
