:root { --navy:#102a43; --navy-2:#173b5c; --paper:#f5f8fb; --ink:#102a43; --muted:#4e6680; --line:#d7e1ea; --white:#fff; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:Arial, Helvetica, sans-serif; line-height:1.5; }
a { color:inherit; }
.site-header { min-height:140px; display:flex; align-items:center; justify-content:space-between; gap:24px; padding:32px max(24px,calc((100vw - 1080px)/2)); border-bottom:1px solid var(--line); }
.brand img { width:220px; height:auto; display:block; }
.header-link { font-weight:700; font-size:14px; text-decoration:none; border-bottom:2px solid var(--navy); padding-bottom:4px; }
main { max-width:1080px; margin:0 auto; }
.hero { min-height:610px; display:grid; grid-template-columns:minmax(0,1.75fr) minmax(280px,.75fr); gap:72px; align-items:center; padding:96px 24px; }
.eyebrow { margin:0 0 20px; text-transform:uppercase; letter-spacing:.13em; font-weight:700; font-size:12px; }
h1,h2,h3,p { margin-top:0; }
h1 { max-width:780px; margin-bottom:28px; font-size:clamp(50px,7vw,96px); line-height:.98; letter-spacing:-.07em; }
.lead { max-width:710px; font-size:clamp(20px,2.4vw,28px); line-height:1.45; color:var(--muted); }
.actions { display:flex; flex-wrap:wrap; gap:14px; margin-top:36px; }
.button { display:inline-block; padding:14px 20px; font-weight:700; text-decoration:none; border:2px solid var(--navy); }
.button-primary { background:var(--navy); color:var(--white); }
.button-secondary { color:var(--navy); }
.hero-panel { background:var(--navy); color:var(--white); padding:32px; align-self:end; }
.panel-label { margin-bottom:20px; color:#cbd9e6; text-transform:uppercase; letter-spacing:.12em; font-size:12px; font-weight:700; }
.hero-panel ul { margin:0; padding:0; list-style:none; }
.hero-panel li { padding:14px 0; border-top:1px solid rgba(255,255,255,.25); font-size:17px; }
.section { padding:96px 24px; border-top:1px solid var(--line); }
.section-intro { max-width:640px; }
h2 { margin-bottom:18px; font-size:clamp(36px,5vw,62px); line-height:1; letter-spacing:-.05em; }
.section-intro > p:last-child { font-size:20px; color:var(--muted); }
.cards { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:52px; }
.card { min-height:260px; padding:28px; background:var(--white); border:1px solid var(--line); }
.card-number { display:block; margin-bottom:58px; color:var(--navy-2); font-weight:700; }
h3 { font-size:24px; letter-spacing:-.03em; }
.card p { color:var(--muted); }
.contact { display:grid; grid-template-columns:1.4fr .6fr; gap:48px; align-items:end; margin:0 24px 72px; padding:48px; background:var(--navy); color:var(--white); }
.contact .eyebrow { color:#cbd9e6; }
.contact h2 { margin-bottom:0; }
.contact-details { color:#e3edf5; }
.contact-details p:last-child { margin-bottom:0; }
.contact a { color:var(--white); font-weight:700; text-decoration-thickness:1px; text-underline-offset:3px; }
footer { display:flex; justify-content:space-between; gap:18px; padding:28px max(24px,calc((100vw - 1080px)/2)); border-top:1px solid var(--line); font-size:13px; color:var(--muted); }
@media (max-width:760px) { .site-header { min-height:108px; padding:26px 24px; } .brand img { width:152px; } .header-link { font-size:12px; } .hero { grid-template-columns:1fr; gap:36px; min-height:0; padding:72px 24px; } .hero-panel { align-self:auto; } .cards,.contact { grid-template-columns:1fr; } .section { padding:72px 24px; } .contact { margin:0 0 48px; padding:36px 24px; } footer { display:block; } footer span { display:block; margin:4px 0; } }
