/* === Home-only visual polish (no PHP changes) ============================ */
/* Container */
:root{
  --bg:#0b0f12;
  --card:#0f1419;
  --muted:#8aa0b2;
  --ring:rgba(44,158,255,.35);
  --accent:#41c38a;
  --accent-2:#4da6ff;
  --radius:14px;
  --shadow:0 1px 0 rgba(255,255,255,.03) inset,0 8px 30px rgba(0,0,0,.35);
}
@media (prefers-color-scheme: light){
  :root{
    --bg:#ffffff;
    --card:#ffffff;
    --muted:#3b4955;
    --ring:rgba(53,162,235,.25);
    --shadow:0 1px 0 rgba(0,0,0,.06) inset,0 10px 36px rgba(0,0,0,.08);
  }
}

body{background:var(--bg);}
main, .site-container, .container, .wrap{
  max-width:1200px;
  margin-inline:auto;
  padding-inline:20px;
}

/* Hero */
h1{
  letter-spacing:.2px;
  line-height:1.15;
}
.hero-title, h1{
  background:
   radial-gradient(60% 60% at 50% 0%, rgba(65,195,138,.12) 0%, transparent 60%),
   radial-gradient(70% 60% at 50% 100%, rgba(77,166,255,.10) 0%, transparent 60%);
  -webkit-background-clip:text;
  background-clip:text;
  color:#e9f1f8;
}

/* Primary & secondary buttons without adding classes */
a[href*="assessment"], a[href*="Assessment"]{
  display:inline-flex;align-items:center;justify-content:center;
  height:44px;padding:0 18px;border-radius:999px;
  background:var(--accent);color:#05161f!important;
  font-weight:600;text-decoration:none;
  box-shadow:var(--shadow);
  border:1px solid transparent;
}
a[href*="courses"], a[href*="Courses"]{
  display:inline-flex;align-items:center;justify-content:center;
  height:44px;padding:0 18px;border-radius:999px;
  background:var(--accent-2);color:white!important;
  font-weight:600;text-decoration:none;
  box-shadow:var(--shadow);
  border:1px solid transparent;
}
a[href*="assessment"]:hover{filter:saturate(1.1) brightness(1.05);}
a[href*="courses"]:hover{filter:saturate(1.1) brightness(1.05);}

/* Cards */
.card, .panel, .box, .tile{
  background:var(--card);
  border:1px solid rgba(255,255,255,.06);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
}

/* Program grid (class is injected by JS to avoid HTML edits) */
.programs-grid{
  display:grid;
  gap:20px;
}
@media (min-width: 900px){
  .programs-grid{ grid-template-columns: repeat(3, 1fr); }
}

/* Tighten bullet spacing inside program cards */
.programs-grid ul{ margin: 10px 0 0; padding-left: 18px; }
.programs-grid li{ margin: 6px 0; color:#d6e3ee; }
@media (prefers-color-scheme: light){
  .programs-grid li{ color:#294051; }
}
.programs-grid h4, .programs-grid .subhead, .programs-grid .eyebrow{
  font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; opacity:.8;
  margin:6px 0 8px;
}

/* Stats row (4-up) */
.stats-grid{
  display:grid; gap:14px; margin-top:18px;
}
@media (min-width: 900px){
  .stats-grid{ grid-template-columns: repeat(4, 1fr); }
}
.stats-grid .card, .stats-grid .panel{ padding:18px; text-align:center; }

/* Two small info boxes row */
.info-split{
  display:grid; gap:14px;
}
@media (min-width: 900px){
  .info-split{ grid-template-columns: 1fr 1fr; }
}

/* CTA footer block */
.home-cta{ text-align:center; padding:28px; border-radius:var(--radius); }
.home-cta .actions{ display:flex; gap:12px; justify-content:center; flex-wrap:wrap; }

/* General rhythm */
.section{ margin: 28px 0; }
h2{ margin: 26px 0 16px; }
p{ color:var(--muted); }

/* Subtle glowing backdrop behind program cards for depth */
.programs-glow{
  position:relative;
}
.programs-glow::before, .programs-glow::after{
  content:""; position:absolute; inset:auto; left:50%; translate:-50% 0;
  width:min(1200px, 100%); height:420px; filter:blur(80px); z-index:-1;
  background: radial-gradient(60% 60% at 50% 40%, rgba(65,195,138,.16) 0%, transparent 70%);
}
.programs-glow::after{
  top:60%; background: radial-gradient(60% 60% at 50% 60%, rgba(77,166,255,.14) 0%, transparent 70%);
}