/* ── EngHub v2.2 · AdvStructs surface polish ─────────────────────────────
   Appended after styles.css. Adjusts only surface, type and depth so the
   application reads as part of EngHub. No structural or behavioural change. */

:root{
  --accent:#0f3155;
  --accent2:#e9eef5;
  --navy:#0f3155;
  --gold:#f2a40b;
  --line:#e3ded2;
  --muted:#6f6a5f;
  --eh-shadow:0 22px 52px -30px rgba(15,49,85,.45);
}

body{background:
  radial-gradient(1100px 520px at 88% -8%, #ffffff 0%, rgba(255,255,255,0) 62%),
  var(--bg);
}

/* header ---------------------------------------------------------------- */
.site-header{background:rgba(255,253,249,.88);border-bottom:1px solid #e6e1d5}
.brand-lockup b{font-family:"Space Grotesk",Inter,sans-serif;letter-spacing:-.025em;font-size:19px}
.brand-lockup small{letter-spacing:.005em}
.nav-link{font-size:12.5px;letter-spacing:-.005em;color:#4a5c63}
.nav-link:hover{background:#f1ece1;color:var(--navy)}
.nav-link.active{background:var(--navy);color:#fff}
.nav-link.active span{opacity:.8}

/* hero ------------------------------------------------------------------ */
.hero{
  border-radius:22px;
  border:1px solid #e6e1d5;
  box-shadow:0 18px 44px -32px rgba(24,37,43,.55);
}
.hero-home{
  position:relative;overflow:hidden;
  background:linear-gradient(152deg,#0f3155 0%,#173f6b 58%,#1b4677 100%);
  border-color:#0f3155;color:#eef3f9;padding:clamp(30px,4vw,46px);
}
.hero-home::after{
  content:"";position:absolute;right:-90px;top:-120px;width:420px;height:420px;
  border-radius:50%;background:radial-gradient(circle,rgba(242,164,11,.22),transparent 62%);
  pointer-events:none;
}
.hero-home>*{position:relative;z-index:1}
.hero-home .eyebrow,.hero-home .stage-kicker{color:var(--gold);letter-spacing:.14em}
.hero-home h1{
  font-family:"Space Grotesk",Inter,sans-serif;font-weight:600;
  font-size:clamp(30px,4.2vw,46px);letter-spacing:-.035em;line-height:1.05;color:#fff;
}
.hero-home p{color:#b9c9dc}
.hero-home .btn{background:var(--gold);color:#12253d}
.hero-home .btn:hover{background:#ffb524}
.hero-home .ghost{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.28);color:#eef3f9}
.hero-home .ghost:hover{background:rgba(255,255,255,.16)}
.hero-home .tag,.hero-home .pill{background:rgba(255,255,255,.12);color:#d9e4f0;border-color:rgba(255,255,255,.2)}

/* cards ----------------------------------------------------------------- */
.card{border-radius:18px;border-color:#e6e1d5;box-shadow:0 10px 26px -20px rgba(24,37,43,.5)}
.module-card{
  border-radius:18px;border-color:#e6e1d5;
  box-shadow:0 10px 26px -20px rgba(24,37,43,.5);
  transition:box-shadow .2s ease,border-color .2s ease,transform .2s ease;
}
.module-card:hover{box-shadow:var(--eh-shadow);border-color:#cdd8e4;transform:translateY(-2px)}
.module-card.active{border-color:var(--navy);box-shadow:0 0 0 1px var(--navy),var(--eh-shadow)}
.module-copy h2{font-family:"Space Grotesk",Inter,sans-serif;letter-spacing:-.02em;font-size:18.5px}
.module-number{color:var(--navy);letter-spacing:.14em}

/* controls -------------------------------------------------------------- */
.btn{border-radius:11px;font-weight:600;letter-spacing:-.005em;transition:background-color .18s,transform .12s}
.btn:hover{background:#17406e}
.btn:active{transform:translateY(1px)}
.ghost{border-radius:11px}
.eyebrow,.stage-kicker{letter-spacing:.13em}

@media (prefers-reduced-motion:reduce){
  .module-card,.btn{transition:none}
  .module-card:hover{transform:none}
}
