:root{
  --navy:#081a36;
  --navy-2:#0c2850;
  --blue:#128bd7;
  --blue-2:#32b6f3;
  --ice:#edf6ff;
  --white:#ffffff;
  --ink:#0d1b2a;
  --muted:#617086;
  --line:#dce8f3;
  --shadow:0 24px 70px rgba(7,26,54,.12);
  --radius:24px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--ink);
  background:#fff;
  line-height:1.6;
}
a{color:inherit}
img{max-width:100%;display:block}
.container{width:min(1140px,calc(100% - 40px));margin:0 auto}

.site-header{
  position:sticky;top:0;z-index:1000;
  background:rgba(6,20,43,.92);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.nav-wrap{height:78px;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff;font-weight:800;letter-spacing:.02em}
.brand img{width:44px;height:44px;object-fit:cover;border-radius:12px}
.main-nav{display:flex;align-items:center;gap:28px}
.main-nav a{color:#dce8f5;text-decoration:none;font-size:.95rem;font-weight:600;transition:.2s ease}
.main-nav a:hover,.main-nav a.active{color:#fff}
.nav-cta{padding:10px 18px;border:1px solid rgba(255,255,255,.25);border-radius:999px}
.menu-toggle{display:none;background:none;border:0;padding:8px}
.menu-toggle span{display:block;width:24px;height:2px;background:#fff;margin:5px 0}

.hero{
  position:relative;overflow:hidden;
  background:linear-gradient(135deg,#07162f 0%,#0b2c59 55%,#0f67a0 100%);
  color:#fff;padding:95px 0 92px;
}
.hero-grid{position:relative;z-index:2;display:block}
.hero h1{font-size:clamp(3.2rem,6vw,6.2rem);line-height:.95;letter-spacing:-.055em;margin:18px 0 24px;max-width:900px}
.hero h1 span{color:#62c9ff}
.hero-lead{font-size:1.18rem;color:#dbeaf7;max-width:820px;margin:0 0 30px}
.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.74rem;font-weight:800;color:#7bd3ff}
.eyebrow.dark{color:#0879bb}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:12px;text-decoration:none;font-weight:800;transition:.2s ease;border:1px solid transparent}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:linear-gradient(135deg,#10a6ed,#0879bb);color:#fff;box-shadow:0 12px 30px rgba(0,132,205,.24)}
.btn-secondary{color:#fff;border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.08)}
.btn-secondary.light{background:#fff;color:var(--navy);border-color:#fff}
.hero-trust{display:flex;gap:32px;margin-top:45px;flex-wrap:wrap}
.hero-trust div{display:flex;flex-direction:column}
.hero-trust strong{font-size:1.45rem}
.hero-trust span{font-size:.78rem;color:#b9d0e4}
.hero-card{
  position:relative;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);
  border-radius:28px;padding:38px;box-shadow:0 28px 80px rgba(0,0,0,.28);backdrop-filter:blur(16px)
}
.hero-logo-wrap{width:92px;height:92px;border-radius:22px;overflow:hidden;margin-bottom:32px;background:#fff}
.hero-logo-wrap img{width:100%;height:100%;object-fit:cover}
.hero-card p{font-size:1.28rem;line-height:1.65;margin:0;color:#eff8ff}
.quote-mark{font-family:Georgia,serif;font-size:4rem;line-height:.5;color:#67caf9}
.hero-card-footer{margin-top:26px;color:#9fd9f7;font-size:.9rem;font-weight:700}
.hero-glow{position:absolute;border-radius:50%;filter:blur(10px);opacity:.35}
.hero-glow-one{width:400px;height:400px;background:#17a9ec;right:-120px;top:-140px}
.hero-glow-two{width:280px;height:280px;background:#1e70ff;left:-100px;bottom:-110px}

.section{padding:92px 0}
.section-light{background:#f7fbff}
.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.section-copy h2,.section-heading h2,.product-copy h2,.portal-card h2,.contact-card h2{
  font-size:clamp(2.1rem,4vw,3.6rem);line-height:1.08;letter-spacing:-.035em;margin:12px 0 20px
}
.section-copy p,.section-heading p,.product-copy p,.portal-card p,.contact-card p{color:var(--muted);font-size:1.05rem}
.feature-stack{display:grid;gap:16px}
.feature-card{display:flex;gap:18px;background:#fff;padding:22px;border:1px solid var(--line);border-radius:20px;box-shadow:0 14px 38px rgba(20,50,80,.06)}
.feature-icon{font-size:1.8rem;width:48px;height:48px;display:grid;place-items:center;background:var(--ice);border-radius:14px;flex:0 0 auto}
.feature-card h3{margin:0 0 6px}.feature-card p{margin:0;color:var(--muted)}

.program-section{background:var(--navy);color:#fff}
.section-heading.center{text-align:center;max-width:740px;margin:0 auto 50px}
.program-section .section-heading p{color:#bcd0e3}
.program-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.program-card{position:relative;background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:26px 22px;min-height:310px}
.program-number{position:absolute;top:20px;right:20px;font-weight:800;color:rgba(255,255,255,.22)}
.program-icon{font-size:2rem;margin:30px 0 28px}
.program-card h3{font-size:1.22rem;line-height:1.2;margin:0 0 12px}
.program-card p{color:#bdd0e1;font-size:.92rem;margin:0}

.budget-section{background:#eef7ff}
.product-panel{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:30px;padding:55px;box-shadow:var(--shadow)}
.budget-visual{display:grid;place-items:center}
.mini-dashboard{width:min(100%,390px);background:linear-gradient(160deg,#0b1d3b,#113762);color:#fff;padding:26px;border-radius:26px;box-shadow:0 25px 55px rgba(7,26,54,.28)}
.mini-top,.mini-row{display:flex;justify-content:space-between;align-items:center}
.mini-pill{background:#1fc77a;padding:5px 10px;border-radius:999px;font-size:.72rem;font-weight:800}
.mini-total{padding:32px 0}.mini-total small{display:block;color:#9cc2dc}.mini-total strong{font-size:2.35rem}
.mini-row{padding:13px 0;border-top:1px solid rgba(255,255,255,.09)}
.mini-bar{height:8px;background:rgba(255,255,255,.15);border-radius:999px;margin-top:18px;overflow:hidden}.mini-bar span{display:block;height:100%;width:72%;background:#50c8ff;border-radius:999px}

.portal-section{background:linear-gradient(135deg,#082047,#0d6199);color:#fff}
.portal-card{display:flex;justify-content:space-between;align-items:center;gap:40px}
.portal-card p{color:#d6e7f3;max-width:720px}.portal-actions{flex:0 0 auto}

.contact-card{display:flex;justify-content:space-between;align-items:center;gap:40px;background:#f7fbff;border:1px solid var(--line);border-radius:26px;padding:42px}
.contact-card p{margin-bottom:0}

.site-footer{background:#06142b;color:#dce7f2;padding:48px 0 24px}
.footer-grid{display:flex;justify-content:space-between;align-items:center;gap:30px}
.footer-brand{display:flex;align-items:center;gap:14px}.footer-brand img{width:46px;height:46px;border-radius:12px}
.footer-brand div{display:flex;flex-direction:column}.footer-brand span{color:#8da6bc;font-size:.82rem}
.footer-links{display:flex;gap:22px;flex-wrap:wrap}.footer-links a{text-decoration:none;color:#b8ccdc}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:30px;padding-top:20px;font-size:.82rem;color:#8199ae}

.support-hero{background:linear-gradient(135deg,#07162f,#0d5b8f);color:#fff;padding:82px 0}
.support-hero-inner{text-align:center;max-width:720px}
.support-hero h1{font-size:clamp(2.8rem,5vw,4.7rem);line-height:1;margin:16px 0}
.support-hero p{font-size:1.15rem;color:#dbeaf5}
.support-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.support-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px;box-shadow:0 16px 40px rgba(20,50,80,.06)}
.support-icon{font-size:2rem}.support-card h2{margin:14px 0 8px}.support-card p{color:var(--muted)}
.support-email,.text-link{color:#0879bb;font-weight:800;text-decoration:none;word-break:break-word}
.support-note{font-size:.82rem;margin-top:14px}
.faq-section{background:#fff}
.faq-list{max-width:820px;margin:0 auto;display:grid;gap:12px}
.faq-item{border:1px solid var(--line);border-radius:16px;padding:0 20px;background:#fff}
.faq-item summary{cursor:pointer;padding:20px 0;font-weight:800}.faq-item p{margin:0 0 20px;color:var(--muted)}

.reveal{opacity:0;transform:translateY(16px);transition:opacity .65s ease,transform .65s ease}
.reveal.visible{opacity:1;transform:none}

@media(max-width:980px){
  .program-grid{grid-template-columns:repeat(2,1fr)}
  .hero-grid,.split-grid,.product-panel{grid-template-columns:1fr}
  .hero-grid{gap:48px}.hero-card{max-width:620px}
}
@media(max-width:760px){
  .container{width:min(100% - 28px,1140px)}
  .menu-toggle{display:block}
  .main-nav{
    position:absolute;left:14px;right:14px;top:70px;display:none;flex-direction:column;align-items:stretch;gap:0;
    padding:12px;background:#0a1d3a;border:1px solid rgba(255,255,255,.1);border-radius:16px;box-shadow:0 20px 45px rgba(0,0,0,.3)
  }
  .main-nav.open{display:flex}.main-nav a{padding:13px 14px}.nav-cta{text-align:center;margin-top:4px}
  .hero{padding:70px 0}.hero h1{font-size:clamp(3rem,16vw,5rem)}
  .hero-trust{gap:20px}.hero-card{padding:28px}
  .section{padding:68px 0}
  .program-grid,.support-grid{grid-template-columns:1fr}
  .program-card{min-height:0}
  .product-panel{padding:28px;gap:35px}
  .portal-card,.contact-card,.footer-grid{flex-direction:column;align-items:flex-start}
  .contact-card{padding:28px}
  .footer-links{gap:16px}
}

.coming-soon-btn{
  cursor:default;
  opacity:.85;
  pointer-events:none;
}
.coming-soon-text{
  cursor:default;
  display:inline-block;
  color:#6d7d90;
}

.coming-soon-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 18px;
  padding: 9px 18px;
  border: 1px solid rgba(123, 211, 255, 0.35);
  border-radius: 999px;
  background: rgba(123, 211, 255, 0.08);
  color: #7bd3ff;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.13em;
}

/* Smooth page transition */
body {
  transition: opacity 0.3s ease;
}

body.page-leaving {
  opacity: 0;
}