:root{
  --ink:#123044;
  --muted:#617383;
  --blue:#146C94;
  --teal:#1AA7A1;
  --gold:#D6A84F;
  --cream:#FFF8E7;
  --soft:#F6FBFC;
  --line:#DDECF0;
  --white:#ffffff;
  --shadow:0 24px 65px rgba(18,48,68,.14);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  color:var(--ink);
  background:linear-gradient(180deg,#fff 0%,#F7FCFF 48%,#FFF8E7 100%);
}
a{color:inherit}
.top-strip{
  background:linear-gradient(90deg,var(--blue),var(--teal));
  color:#fff;
  text-align:center;
  padding:10px 18px;
  font-size:14px;
  font-weight:700;
}
.site-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  padding:20px clamp(20px,5vw,72px);
  background:rgba(255,255,255,.86);
  backdrop-filter:blur(18px);
  position:sticky;
  top:0;
  z-index:20;
  border-bottom:1px solid rgba(20,108,148,.11);
}
.logo-wrap img{width:300px;max-width:72vw;display:block}
nav{display:flex;align-items:center;gap:22px;font-weight:800;color:#385266}
nav a{text-decoration:none;font-size:14px}
.nav-cta{
  background:var(--ink);
  color:#fff;
  padding:12px 18px;
  border-radius:999px;
  box-shadow:0 10px 25px rgba(18,48,68,.18);
}
.hero{
  min-height:740px;
  position:relative;
  background-image:url("assets/hero-premium-health.svg");
  background-size:cover;
  background-position:center;
  display:grid;
  grid-template-columns:minmax(0,1fr) 380px;
  gap:42px;
  align-items:center;
  padding:72px clamp(20px,5vw,72px);
  overflow:hidden;
}
.hero-overlay{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(255,255,255,.96),rgba(255,255,255,.79) 45%,rgba(255,255,255,.35));
}
.hero-content,.hero-card{position:relative;z-index:1}
.eyebrow,.section-kicker{
  color:var(--blue);
  text-transform:uppercase;
  letter-spacing:2.5px;
  font-size:12px;
  font-weight:900;
  margin-bottom:16px;
}
h1,h2,h3,p{margin-top:0}
h1{
  font-size:clamp(42px,6vw,78px);
  line-height:.95;
  letter-spacing:-3px;
  max-width:850px;
  margin-bottom:26px;
}
.hero-sub{
  max-width:730px;
  color:#425B6B;
  font-size:21px;
  line-height:1.65;
  margin-bottom:32px;
}
.hero-actions,.footer-links{display:flex;gap:14px;flex-wrap:wrap}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:0 24px;
  border-radius:999px;
  text-decoration:none;
  font-weight:900;
  border:1px solid transparent;
}
.btn.primary{background:linear-gradient(135deg,var(--blue),var(--teal));color:#fff;box-shadow:0 18px 40px rgba(20,108,148,.22)}
.btn.secondary{background:#fff;color:var(--ink);border-color:var(--line);box-shadow:0 12px 30px rgba(18,48,68,.10)}
.trust-row{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:32px;
}
.trust-row span{
  background:rgba(255,255,255,.74);
  border:1px solid var(--line);
  padding:10px 13px;
  border-radius:999px;
  color:#456171;
  font-weight:800;
  font-size:13px;
}
.hero-card{
  align-self:end;
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(18px);
  border:1px solid rgba(214,168,79,.35);
  padding:30px;
  border-radius:32px;
  box-shadow:var(--shadow);
}
.hero-card h3{font-size:27px}
.hero-card p{color:var(--muted);line-height:1.6}
.hero-card a{font-weight:900;color:var(--blue);text-decoration:none}
.intro-panel,.guided,.options,.audience,.segway,.compliance{
  margin:70px clamp(20px,5vw,72px);
}
.intro-panel{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:45px;
  align-items:center;
  background:#fff;
  border:1px solid var(--line);
  border-radius:42px;
  padding:42px;
  box-shadow:var(--shadow);
}
.intro-panel h2,.guided h2,.options h2,.audience h2,.segway h2{
  font-size:clamp(32px,4vw,54px);
  line-height:1.02;
  letter-spacing:-2px;
  margin-bottom:18px;
}
.intro-panel p,.audience p,.segway p{color:var(--muted);font-size:18px;line-height:1.7}
.intro-panel img{width:100%;display:block}
.guided,.options{text-align:center}
.route-grid,.option-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin-top:32px;
  text-align:left;
}
.route-card,.option-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:28px;
  padding:26px;
  box-shadow:0 14px 38px rgba(18,48,68,.08);
  text-decoration:none;
  min-height:178px;
  transition:.2s transform,.2s box-shadow;
}
.route-card:hover,.option-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.route-card strong{display:block;font-size:20px;line-height:1.2;margin-bottom:12px}
.route-card span,.option-card p{color:var(--muted);line-height:1.62}
.route-card.featured{
  border-color:rgba(214,168,79,.7);
  background:linear-gradient(180deg,#fff,#FFF9E9);
}
.option-card h3{font-size:25px;margin:10px 0}
.option-card a{
  display:inline-block;
  margin-top:12px;
  color:var(--blue);
  font-weight:900;
  text-decoration:none;
}
.option-card.premium{
  background:linear-gradient(180deg,#fff,#ECFBF9);
  border-color:rgba(26,167,161,.28);
}
.badge{
  display:inline-flex;
  background:#F3F9FB;
  color:var(--blue);
  border:1px solid var(--line);
  padding:8px 12px;
  border-radius:999px;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:1.5px;
}
.audience{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:42px;
  align-items:center;
  background:linear-gradient(135deg,#fff,#F3FBFA);
  border:1px solid var(--line);
  border-radius:42px;
  padding:42px;
}
.chips{display:flex;gap:12px;flex-wrap:wrap}
.chips span{
  padding:14px 18px;
  border-radius:999px;
  background:#fff;
  border:1px solid var(--line);
  font-weight:850;
  box-shadow:0 8px 22px rgba(18,48,68,.06);
}
.segway{
  background:linear-gradient(135deg,var(--ink),#1D6E8F);
  color:#fff;
  border-radius:42px;
  padding:44px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  box-shadow:var(--shadow);
}
.segway .section-kicker{color:#FFE5A8}
.segway p{color:rgba(255,255,255,.82);max-width:780px}
.segway .btn.primary{background:#fff;color:var(--ink)}
.compliance{
  background:#fff;
  border:1px solid var(--line);
  border-radius:24px;
  padding:22px 26px;
  color:#5D7180;
  line-height:1.65;
  font-size:14px;
}
footer{
  padding:55px clamp(20px,5vw,72px);
  background:#fff;
  border-top:1px solid var(--line);
}
footer img{width:300px;max-width:80vw}
footer p{color:var(--muted);margin:18px 0}
.footer-links a{
  color:var(--blue);
  text-decoration:none;
  font-weight:900;
}
@media(max-width:980px){
  .site-header{align-items:flex-start;flex-direction:column}
  nav{width:100%;overflow:auto;padding-bottom:4px}
  .hero{grid-template-columns:1fr;min-height:auto}
  .hero-card{align-self:auto;max-width:520px}
  .intro-panel,.audience{grid-template-columns:1fr}
  .route-grid,.option-grid{grid-template-columns:1fr 1fr}
  .segway{align-items:flex-start;flex-direction:column}
}
@media(max-width:640px){
  h1{letter-spacing:-1.6px}
  .route-grid,.option-grid{grid-template-columns:1fr}
  .intro-panel,.audience,.segway{padding:28px;border-radius:30px}
  .hero{padding-top:48px}
}

.answer-engine,.keyword-panel,.faq{
  margin:70px clamp(20px,5vw,72px);
}
.answer-engine{
  background:#fff;
  border:1px solid var(--line);
  border-radius:42px;
  padding:42px;
  box-shadow:var(--shadow);
}
.answer-engine h2,.keyword-panel h2,.faq h2{
  font-size:clamp(32px,4vw,54px);
  line-height:1.02;
  letter-spacing:-2px;
  margin-bottom:24px;
}
.answer-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.answer-grid div{
  background:linear-gradient(180deg,#fff,#F4FBFC);
  border:1px solid var(--line);
  border-radius:26px;
  padding:24px;
}
.answer-grid h3{font-size:22px;margin-bottom:10px}
.answer-grid p{color:var(--muted);line-height:1.65}
.keyword-panel{
  background:linear-gradient(135deg,#FFF9E9,#F2FBFA);
  border:1px solid rgba(214,168,79,.32);
  border-radius:42px;
  padding:42px;
}
.keyword-list{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}
.keyword-list span{
  background:#fff;
  border:1px solid var(--line);
  border-radius:999px;
  padding:12px 16px;
  font-weight:850;
  color:#425B6B;
}
.faq{
  background:#fff;
  border:1px solid var(--line);
  border-radius:42px;
  padding:42px;
  box-shadow:0 14px 38px rgba(18,48,68,.08);
}
details{
  border-top:1px solid var(--line);
  padding:20px 0;
}
details:last-child{border-bottom:1px solid var(--line)}
summary{
  cursor:pointer;
  font-size:19px;
  font-weight:900;
  color:var(--ink);
}
details p{
  color:var(--muted);
  line-height:1.7;
  max-width:920px;
  margin:14px 0 0;
}
@media(max-width:980px){
  .answer-grid{grid-template-columns:1fr}
}

.authority,.nationwide,.quiz-section,.logos,.intake-form,.compliance-page{
 margin:70px clamp(20px,5vw,72px);
 background:#fff;
 border:1px solid var(--line);
 border-radius:32px;
 padding:40px;
 box-shadow:var(--shadow);
}
.authority-grid{
 display:grid;
 grid-template-columns:1.2fr .8fr;
 gap:30px;
}
.state-grid,.logo-grid{
 display:flex;
 flex-wrap:wrap;
 gap:12px;
}
.state-grid span,.logo-grid div{
 background:#F5FAFC;
 padding:12px 16px;
 border-radius:999px;
 font-weight:800;
}
.quiz-grid{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:15px;
 margin-bottom:20px;
}
.quiz-grid select,
.intake-form input,
.intake-form textarea{
 width:100%;
 padding:14px;
 border-radius:12px;
 border:1px solid var(--line);
}
.hidden-field{
 position:absolute;
 left:-9999px;
}
#quizResult{
 margin-top:20px;
 font-weight:900;
}
@media(max-width:900px){
 .authority-grid,.quiz-grid{
   grid-template-columns:1fr;
 }
}
