:root{
  --navy:#000a3c;
  --navy-dark:#00051e;
  --blue:#0a5cfa;
  --gold:#fab800;
  --white:#f5f7ff;
  --muted:#aab4dd;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--navy-dark);
  color:var(--white);
  font-family:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.6;
}

a{color:var(--gold);text-decoration:none;}
a:hover{text-decoration:underline;}

.wrap{max-width:920px;margin:0 auto;padding:0 24px;}

/* ---- Header ---- */
header.site-header{
  position:sticky;top:0;z-index:10;
  background:rgba(0,5,30,0.85);
  backdrop-filter:blur(8px);
  border-bottom:1px solid rgba(255,255,255,0.08);
}
header.site-header .wrap{
  display:flex;align-items:center;justify-content:space-between;
  padding-top:14px;padding-bottom:14px;
}
.brand{display:flex;align-items:center;gap:10px;font-weight:600;font-size:18px;color:var(--white);}
.brand img{height:32px;width:auto;display:block;}
nav.top-nav a{
  color:var(--white);
  margin-left:22px;
  font-size:15px;
  font-weight:500;
  opacity:0.85;
}
nav.top-nav a:hover{opacity:1;text-decoration:none;color:var(--gold);}

/* ---- Hero ---- */
.hero{
  background-image:linear-gradient(rgba(0,5,30,0.35),rgba(0,5,30,0.75)),url('assets/hero-bg.jpg');
  background-size:cover;
  background-position:center;
  padding:110px 0 90px;
  text-align:center;
}
.hero img.logo{
  height:110px;
  width:auto;
  margin-bottom:28px;
}
.hero h1{
  font-size:38px;
  font-weight:700;
  margin:0 0 12px;
  color:var(--white);
}
.hero p.tagline{
  font-size:19px;
  color:var(--muted);
  margin:0 0 30px;
  font-weight:400;
}
.badge{
  display:inline-block;
  background:rgba(250,184,0,0.12);
  border:1px solid var(--gold);
  color:var(--gold);
  padding:6px 16px;
  border-radius:999px;
  font-size:13px;
  font-weight:600;
  letter-spacing:0.03em;
  text-transform:uppercase;
  margin-bottom:30px;
}
.cta-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
.btn{
  display:inline-block;
  padding:12px 26px;
  border-radius:8px;
  font-weight:600;
  font-size:15px;
  transition:transform .15s ease, opacity .15s ease;
}
.btn:hover{transform:translateY(-1px);text-decoration:none;}
.btn-primary{background:var(--blue);color:var(--white);}
.btn-primary:hover{opacity:0.92;color:var(--white);}
.btn-outline{border:1px solid rgba(255,255,255,0.35);color:var(--white);}
.btn-outline:hover{border-color:var(--gold);color:var(--gold);}

/* ---- Sections ---- */
section{padding:70px 0;border-bottom:1px solid rgba(255,255,255,0.06);}
section:last-of-type{border-bottom:none;}
h2{font-size:26px;font-weight:700;margin:0 0 18px;color:var(--white);}
h2 .accent{color:var(--gold);}
p{color:var(--muted);font-size:16px;}
.lead{font-size:17px;color:var(--white);opacity:0.9;}

.features{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  gap:24px;
  margin-top:32px;
}
.feature{
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:14px;
  padding:24px;
}
.feature h3{margin:0 0 8px;font-size:17px;color:var(--white);}
.feature p{margin:0;font-size:14.5px;}
.feature .icon{font-size:26px;margin-bottom:12px;display:block;}

.social-row{display:flex;gap:16px;flex-wrap:wrap;margin-top:24px;}
.social-card{
  display:flex;align-items:center;gap:12px;
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:12px;
  padding:14px 20px;
  color:var(--white);
  font-weight:500;
  font-size:15px;
}
.social-card:hover{border-color:var(--gold);text-decoration:none;color:var(--gold);}

/* ---- Footer ---- */
footer{padding:40px 0;text-align:center;}
footer p{font-size:13.5px;color:var(--muted);margin:4px 0;}
footer a{color:var(--muted);}
footer a:hover{color:var(--gold);}

/* ---- Privacy page ---- */
.legal .wrap{max-width:760px;}
.legal h1{font-size:30px;margin-bottom:4px;}
.legal .updated{color:var(--muted);font-size:14px;margin-bottom:36px;}
.legal h2{font-size:20px;margin-top:38px;}
.legal h3{font-size:16px;color:var(--white);margin-top:24px;}
.legal p, .legal li{color:var(--muted);font-size:15.5px;}
.legal ul{padding-left:20px;}
.legal .back-link{display:inline-block;margin-bottom:30px;font-size:14px;}
.legal hr{border:none;border-top:1px solid rgba(255,255,255,0.1);margin:40px 0;}

@media (max-width:600px){
  .hero{padding:80px 0 60px;}
  .hero h1{font-size:28px;}
  nav.top-nav a{margin-left:14px;font-size:14px;}
}
