:root{
  --navy:#0a2540;
  --navy-2:#123a63;
  --ink:#08172b;
  --royal:#0a4fa0;
  --blue:#1e7fd4;
  --blue-deep:#0d63b8;
  --blue-soft:#eaf4fc;
  --blue-soft-2:#f4f9fe;
  --spray:#8fe3f0;
  --spray-bright:#39b6d8;
  --amber:#f2b333;
  --paper:#ffffff;
  --text:#12304d;
  --text-soft:#59748f;
  --muted:#7b93ab;
  --line:#e4eef6;
  --line-2:#d3e3f0;
  --display:'Sora',system-ui,-apple-system,sans-serif;
  --sans:'Inter',system-ui,-apple-system,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--text);font-family:var(--sans);line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:76px;gap:24px}
.brand{display:flex;align-items:center;gap:9px}
.brand .mark{height:60px;width:auto;flex:none;display:block}
.nav{display:flex;gap:30px}
.nav a{font-size:.92rem;color:var(--text-soft);font-weight:500;transition:color .2s}
.nav a:hover,.nav a[aria-current="page"]{color:var(--royal)}
.nav-toggle{display:none;background:none;border:1px solid var(--line-2);border-radius:8px;width:44px;height:44px;cursor:pointer;color:var(--navy);align-items:center;justify-content:center}
.nav-toggle svg{width:20px;height:20px}

/* Buttons */
.btn{display:inline-block;padding:15px 28px;font-size:.92rem;font-weight:600;border-radius:10px;transition:transform .2s,box-shadow .2s,background .2s,color .2s;cursor:pointer;border:none;font-family:var(--sans);line-height:1}
.btn-blue{background:linear-gradient(180deg,var(--blue),var(--blue-deep));color:#fff;box-shadow:0 10px 24px rgba(30,127,212,.28)}
.btn-blue:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(30,127,212,.38)}
.btn-amber{background:var(--amber);color:var(--ink);box-shadow:0 10px 24px rgba(242,179,51,.3)}
.btn-amber:hover{transform:translateY(-2px);filter:brightness(1.05)}
.btn-ghost{border:1px solid var(--line-2);color:var(--navy);background:#fff}
.btn-ghost:hover{border-color:var(--blue);color:var(--blue)}
.btn-ghost-light{border:1px solid rgba(255,255,255,.5);color:#fff;background:rgba(255,255,255,.08)}
.btn-ghost-light:hover{background:rgba(255,255,255,.18)}
.nav-call{padding:11px 20px}

/* Eyebrow */
.eyebrow{font-size:.74rem;letter-spacing:.22em;text-transform:uppercase;color:var(--blue);font-weight:700;margin-bottom:16px}
.eyebrow.center{text-align:center}
.eyebrow.light{color:var(--spray)}

/* Hero */
.hero{position:relative;overflow:hidden;background:radial-gradient(130% 100% at 78% 15%,var(--royal) 0%,var(--navy) 48%,var(--ink) 100%);color:#fff;padding-bottom:120px}
.hero-bg{position:absolute;inset:0;z-index:0;opacity:.5}
.hero-bg img{width:100%;height:100%;object-fit:cover}
.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,var(--navy) 30%,rgba(18,58,99,.6) 60%,rgba(10,79,160,.25) 100%)}
.hero::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.05;background-image:repeating-linear-gradient(115deg,transparent 0 18px,#fff 18px 22px,transparent 22px 40px);mix-blend-mode:screen}
.gloss{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden;-webkit-clip-path:url(#heroWaveClip);clip-path:url(#heroWaveClip)}
.gloss::before{content:"";position:absolute;top:0;bottom:0;width:60%;left:-70%;background:linear-gradient(105deg,transparent,rgba(143,227,240,.16) 42%,rgba(201,244,251,.4) 50%,rgba(143,227,240,.16) 58%,transparent);filter:blur(3px);animation:sweep 5s ease-in-out 1s infinite}
@keyframes sweep{0%{left:-70%}24%{left:140%}100%{left:140%}}
.hero-inner{position:relative;z-index:3;padding:64px 24px 24px;min-height:min(64vh,540px);display:flex;flex-direction:column;justify-content:center;max-width:1180px;margin:0 auto}
.hero h1{font-family:var(--display);font-size:clamp(2.7rem,6vw,4.7rem);line-height:1.0;font-weight:800;letter-spacing:-.025em;margin-bottom:22px}
.hero h1 em{font-style:normal;color:var(--spray);text-shadow:0 0 34px rgba(143,227,240,.5)}
.hero .lede{font-size:1.14rem;color:#d3e6f5;max-width:48ch;margin-bottom:32px}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap}
.hero-trust{display:flex;gap:28px;margin-top:36px;flex-wrap:wrap}
.hero-trust span{font-size:.84rem;color:#bcd3e8;display:flex;align-items:center;gap:8px}
.hero-trust b{color:var(--spray)}
.hero-wave{position:absolute;left:0;right:0;bottom:-1px;z-index:4;line-height:0;pointer-events:none}
.hero-wave svg{width:100%;height:90px;display:block}

@media(max-width:820px){
  .wrap{padding:0 22px}
  .nav-toggle{display:flex}
  .nav{position:absolute;top:76px;left:0;right:0;flex-direction:column;gap:0;background:#fff;border-bottom:1px solid var(--line);padding:8px 24px;display:none;box-shadow:0 12px 24px rgba(10,37,64,.08)}
  .nav.open{display:flex}
  .nav a{padding:15px 0;border-bottom:1px solid var(--line);width:100%}
  .nav-call{display:none}
  .hero{padding-bottom:90px}
  .hero-inner{min-height:auto;padding:40px 22px 16px}
  .hero-wave svg{height:54px}
}
@media(prefers-reduced-motion:reduce){
  .gloss::before{animation:none;display:none}
  *{transition:none!important;scroll-behavior:auto!important}
}
