:root{
  --navy:#071a46;
  --navy-2:#0a2b72;
  --blue:#0876f9;
  --cyan:#11dce7;
  --ink:#10233f;
  --muted:#617089;
  --line:#dce6f2;
  --soft:#f4f8fc;
  --white:#fff;
  --shadow:0 24px 70px rgba(8,35,80,.12);
  --radius:24px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button{font:inherit}
.container{width:min(1180px,calc(100% - 40px));margin:0 auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.88);backdrop-filter:blur(16px);border-bottom:1px solid rgba(9,37,83,.08)}
.nav-wrap{height:84px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:flex;align-items:center;min-width:210px}
.brand img{width:220px;height:auto}
.main-nav{display:flex;align-items:center;gap:28px;font-size:.95rem;font-weight:600;color:#324867}
.main-nav a{transition:.2s ease}
.main-nav a:hover{color:var(--blue)}
.nav-cta{padding:11px 17px;border:1px solid rgba(7,26,70,.14);border-radius:999px;background:#fff}
.menu-toggle{display:none;border:0;background:transparent;padding:8px;cursor:pointer}
.menu-toggle span{display:block;width:24px;height:2px;background:var(--navy);margin:5px;border-radius:2px}
.hero{position:relative;overflow:hidden;padding:86px 0 100px;background:linear-gradient(145deg,#fbfdff 0%,#f4f9ff 58%,#eefcff 100%)}
.hero::after{content:"";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,var(--line),transparent)}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center}
.hero-glow{position:absolute;border-radius:50%;filter:blur(2px);opacity:.8}
.hero-glow-a{width:460px;height:460px;right:-130px;top:-140px;background:radial-gradient(circle,rgba(17,220,231,.2),transparent 68%)}
.hero-glow-b{width:520px;height:520px;left:-250px;bottom:-340px;background:radial-gradient(circle,rgba(8,118,249,.14),transparent 68%)}
.eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:8px;font-size:.78rem;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:var(--blue);margin-bottom:18px}
.eyebrow::before,.section-kicker::before{content:"";width:28px;height:2px;background:linear-gradient(90deg,var(--blue),var(--cyan));border-radius:2px}
.hero h1{font-size:clamp(2.65rem,5vw,4.8rem);line-height:1.03;letter-spacing:-.05em;margin:0 0 26px;color:var(--navy);max-width:850px}
.hero-lead{font-size:1.13rem;line-height:1.75;color:#536681;max-width:720px;margin:0 0 34px}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:30px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 21px;border-radius:13px;font-weight:700;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;border:1px solid transparent}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:linear-gradient(135deg,var(--blue),#075bd4);color:#fff;box-shadow:0 13px 28px rgba(8,118,249,.22)}
.btn-primary:hover{box-shadow:0 17px 34px rgba(8,118,249,.28)}
.btn-secondary{background:#fff;border-color:#dbe5f0;color:var(--navy)}
.hero-points{display:flex;gap:20px;flex-wrap:wrap;color:#60718a;font-size:.88rem;font-weight:600}
.hero-points span{display:flex;align-items:center;gap:8px}
.hero-points span::before{content:"";width:7px;height:7px;background:var(--cyan);border-radius:50%;box-shadow:0 0 0 4px rgba(17,220,231,.12)}
.hero-panel{background:linear-gradient(165deg,var(--navy),#0b347f);color:#fff;padding:34px;border-radius:28px;box-shadow:0 35px 80px rgba(7,26,70,.26);position:relative;overflow:hidden}
.hero-panel::before{content:"";position:absolute;width:220px;height:220px;right:-100px;top:-100px;background:radial-gradient(circle,rgba(17,220,231,.32),transparent 70%)}
.panel-badge{display:inline-flex;padding:7px 11px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);border-radius:999px;font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:24px}
.route-step{display:grid;grid-template-columns:52px 1fr;gap:16px;align-items:start;position:relative;z-index:1}
.route-num{width:44px;height:44px;border:1px solid rgba(255,255,255,.18);border-radius:12px;display:grid;place-items:center;font-size:.79rem;color:#b8c8e2;background:rgba(255,255,255,.06)}
.route-step.active .route-num{background:linear-gradient(135deg,var(--cyan),#20a9ff);border-color:transparent;color:var(--navy);font-weight:800}
.route-step strong{font-size:1.02rem}
.route-step p{margin:4px 0 0;color:#b6c5da;font-size:.9rem;line-height:1.55}
.route-line{width:1px;height:22px;background:rgba(255,255,255,.14);margin:7px 0 7px 22px}
.section{padding:100px 0}
.diagnostic{background:#fff}
.diagnostic-card{display:grid;grid-template-columns:1.45fr .55fr;gap:34px;background:var(--soft);border:1px solid #e4edf7;border-radius:30px;padding:50px;box-shadow:0 18px 55px rgba(19,58,103,.07)}
.section-kicker{margin-bottom:12px}
.section-kicker.light{color:#72f2f6}
.section-kicker.light::before{background:#72f2f6}
h2{font-size:clamp(2rem,4vw,3.15rem);line-height:1.12;letter-spacing:-.035em;color:var(--navy);margin:0 0 18px}
.section-lead,.section-heading p{font-size:1.06rem;color:var(--muted);max-width:760px;margin:0}
.diagnostic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:34px 0}
.diagnostic-grid>div{background:#fff;border:1px solid #e3ebf4;border-radius:18px;padding:22px}
.diagnostic-grid h3{margin:0 0 8px;font-size:1rem;color:var(--navy)}
.diagnostic-grid p{margin:0;font-size:.91rem;color:#66758c;line-height:1.6}
.diagnostic-aside{background:linear-gradient(160deg,#071a46,#0c397f);color:#fff;border-radius:22px;padding:30px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.mini-label{font-size:.74rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:#63e5ef;margin-bottom:12px}
.diagnostic-aside h3{font-size:1.45rem;line-height:1.3;margin:0 0 20px}
.diagnostic-aside ul{padding:0;margin:0;list-style:none;display:grid;gap:11px}
.diagnostic-aside li{position:relative;padding-left:22px;color:#c6d3e6;font-size:.91rem}
.diagnostic-aside li::before{content:"✓";position:absolute;left:0;color:#54e2ec;font-weight:800}
.services{background:#f8fbff}
.section-heading{text-align:center;max-width:820px;margin:0 auto 46px}
.section-heading .section-kicker{justify-content:center}
.section-heading p{margin:0 auto}
.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.service-card{position:relative;background:#fff;border:1px solid #e1e9f3;border-radius:23px;padding:30px;min-height:280px;box-shadow:0 12px 35px rgba(15,49,89,.06);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.service-card:hover{transform:translateY(-5px);border-color:#b8d7ff;box-shadow:0 22px 50px rgba(15,49,89,.1)}
.service-icon{width:52px;height:52px;border-radius:15px;background:linear-gradient(135deg,rgba(8,118,249,.11),rgba(17,220,231,.15));display:grid;place-items:center;margin-bottom:24px}
.service-icon svg{width:26px;height:26px;fill:none;stroke:var(--blue);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.service-num{position:absolute;right:26px;top:25px;font-size:.8rem;font-weight:800;color:#9aa9bd;letter-spacing:.08em}
.service-card h3{font-size:1.35rem;color:var(--navy);margin:0 0 10px}
.service-card p{color:#66758c;margin:0 0 22px}
.service-tag{font-size:.78rem;font-weight:700;color:#2168b9;display:inline-flex;padding:7px 10px;border-radius:9px;background:#eef6ff}
.continuous{padding-top:0;background:#f8fbff}
.continuous-card{display:grid;grid-template-columns:1fr .85fr;gap:50px;align-items:center;background:linear-gradient(135deg,#082359 0%,#0a3f8c 60%,#0876f9 100%);color:#fff;border-radius:28px;padding:48px;box-shadow:0 25px 65px rgba(7,42,98,.22)}
.continuous-card h2{color:#fff}
.continuous-card p{color:#d5e2f4;max-width:720px;margin:0}
.continuous-features{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.continuous-features span{display:flex;align-items:center;min-height:62px;padding:14px 16px;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:rgba(255,255,255,.07);font-size:.9rem;font-weight:600}
.process{background:#fff}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.process-item{padding:28px 24px;border-top:3px solid #dce7f3;background:#fff}
.process-item span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#eef7ff;color:var(--blue);font-size:.8rem;font-weight:800;margin-bottom:18px}
.process-item h3{margin:0 0 8px;color:var(--navy);font-size:1.12rem}
.process-item p{margin:0;color:#6a788d;font-size:.91rem}
.audience{background:#f8fbff}
.audience-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;align-items:start}
.audience-list{display:grid;gap:14px}
.audience-list>div{display:grid;grid-template-columns:160px 1fr;gap:20px;padding:20px 22px;background:#fff;border:1px solid #e1e9f3;border-radius:16px}
.audience-list strong{color:var(--navy)}
.audience-list span{color:#66758c}
.cta{background:#fff}
.cta-card{display:flex;align-items:center;justify-content:space-between;gap:40px;background:linear-gradient(145deg,#071a46,#0b3378);color:#fff;border-radius:28px;padding:48px 52px;box-shadow:var(--shadow)}
.cta-card h2{color:#fff;max-width:720px}
.cta-card p{margin:0;color:#cfdbec}
.cta-actions{display:flex;flex-direction:column;align-items:flex-start;gap:14px;min-width:230px}
.btn-white{background:#fff;color:var(--navy)}
.text-link{font-size:.88rem;color:#83ecf1;font-weight:600}
.site-footer{padding:45px 0 30px;background:#061633;color:#9caec5}
.footer-grid{display:grid;grid-template-columns:1.3fr .8fr 1fr;gap:40px;align-items:end}
.footer-brand img{width:180px;filter:brightness(0) invert(1);opacity:.95;margin-bottom:12px}
.footer-brand p{margin:0;max-width:420px;font-size:.88rem}
.footer-links{display:grid;gap:8px;font-size:.86rem}
.footer-links a:hover{color:#fff}
.footer-meta{text-align:right;font-size:.82rem}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}
.reveal.is-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.btn,.service-card{transition:none}}
@media (max-width:960px){
  .main-nav{position:absolute;top:84px;left:20px;right:20px;display:none;flex-direction:column;align-items:stretch;gap:4px;padding:16px;background:#fff;border:1px solid #e0e8f1;border-radius:18px;box-shadow:0 18px 50px rgba(5,28,64,.14)}
  .main-nav.open{display:flex}.main-nav a{padding:12px 10px}.nav-cta{text-align:center;margin-top:6px}.menu-toggle{display:block}
  .hero{padding-top:65px}.hero-grid,.diagnostic-card,.continuous-card,.audience-grid{grid-template-columns:1fr}.hero-grid{gap:45px}
  .diagnostic-grid{grid-template-columns:1fr}.process-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.footer-meta{text-align:left;grid-column:1/-1}
}
@media (max-width:680px){
  .container{width:min(100% - 28px,1180px)}.nav-wrap{height:74px}.brand img{width:185px}.main-nav{top:74px;left:14px;right:14px}
  .hero{padding:54px 0 72px}.hero h1{font-size:2.55rem}.hero-panel{padding:25px}
  .section{padding:72px 0}.diagnostic-card{padding:26px;border-radius:22px}.service-grid,.process-grid,.continuous-features{grid-template-columns:1fr}
  .service-card{min-height:auto}.continuous-card{padding:30px}.audience-list>div{grid-template-columns:1fr;gap:6px}.cta-card{padding:32px;flex-direction:column;align-items:flex-start}.cta-actions{min-width:0;width:100%}.btn-white{width:100%}.footer-grid{grid-template-columns:1fr}.footer-meta{grid-column:auto}
}
