/* Navy + mustard premium theme overrides */
/* ---- navy-mustard-premium-theme ---- */
/* ================================================================
   NAVY + MUSTARD — premium visual layer
   ================================================================ */
:root{
  --navy:#06182B;
  --navy-2:#08233D;
  --navy-3:#0B2D4D;
  --navy-soft:#0E3557;
  --gold:#F2B632;
  --gold-2:#D99A18;
  --gold-soft:#F8D36A;
  --paper:#F4F7FA;
  --paper-2:#EAF0F5;
  --ink:#0B1D31;
  --line:rgba(242,182,50,.18);
  --line-light:rgba(255,255,255,.13);
  --shadow:0 18px 55px rgba(2,13,25,.28);
  --shadow-lift:0 25px 65px rgba(2,13,25,.38);
}
body{background:var(--paper);color:var(--ink)}
::selection{background:var(--gold);color:var(--navy)}

/* Header */
.site-header{border-bottom:1px solid rgba(242,182,50,.18)!important}
.site-header:not(.is-stuck){background:rgba(6,24,43,.82);backdrop-filter:blur(12px);color:#fff}
.site-header.is-stuck{background:rgba(6,24,43,.96)!important;border-bottom-color:rgba(242,182,50,.28)!important;box-shadow:0 10px 35px rgba(0,0,0,.22)}
.site-header .brand b,.site-header .brand em{color:#fff}
.site-header .brand em{color:#AFC0D1}
.menu a,.site-header .menu a[aria-current="true"]{color:#F4F7FA}
.menu a:hover{color:var(--gold)!important}
.menu a::after{background:var(--gold)}
.head-cta .btn-ink{background:var(--gold)!important;color:var(--navy)!important;border-color:var(--gold)!important;font-weight:800}
.head-cta .btn-ink:hover{background:var(--gold-soft)!important;color:var(--navy)!important}
.burger{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18);color:#fff}
.burger i,.burger i:before,.burger i:after{background:#fff}

/* Mobile drawer */
.drawer{background:linear-gradient(180deg,var(--navy),#04111F)!important;color:#fff}
.drawer nav a{color:#fff;border-color:var(--line-light)}
.drawer nav a span{color:var(--gold)}
.drawer .dmeta{color:#9EB1C3}

/* Hero */
.hero{min-height:760px;background:
  radial-gradient(55% 85% at 17% 55%,rgba(26,76,116,.42),transparent 68%),
  linear-gradient(135deg,#041321 0%,var(--navy) 48%,#071D32 100%)!important;
  color:#fff;
}
.hero:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(135deg,transparent 0 18%,rgba(242,182,50,.08) 18.2% 18.6%,transparent 18.8% 76%,rgba(242,182,50,.1) 76.2% 76.7%,transparent 76.9%),
  linear-gradient(120deg,transparent 0 73%,rgba(255,255,255,.035) 73.2% 73.5%,transparent 73.7%);
}
.hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,transparent 0 4%,var(--gold) 4% 96%,transparent 96%);z-index:4;box-shadow:0 0 24px rgba(242,182,50,.22)}
.hero-scrim{background:
  linear-gradient(90deg,rgba(4,19,33,.03) 0%,rgba(4,19,33,.1) 34%,rgba(4,19,33,.66) 53%,rgba(4,19,33,.96) 73%,#041321 100%)!important}
.hero-kicker{color:var(--gold-soft)!important}
.hero-kicker .dot{background:var(--gold)!important;box-shadow:0 0 12px rgba(242,182,50,.6)}
.hero h1{color:#fff!important;text-shadow:0 20px 50px rgba(0,0,0,.5)!important}
.hero h1 .accent{color:var(--gold)!important}
.hero-lede{color:#D9E5EF!important}
.hero-cta .btn-copper{background:var(--gold)!important;color:var(--navy)!important;border-color:var(--gold)!important;font-weight:800;box-shadow:0 10px 30px rgba(242,182,50,.18)}
.hero-cta .btn-copper:hover{background:var(--gold-soft)!important}
.hero-cta .btn-line{border-color:var(--gold)!important;color:#fff!important;background:rgba(6,24,43,.28)}
.hero-cta .btn-line:hover{background:rgba(242,182,50,.1)!important;border-color:var(--gold-soft)!important}
.hero-foot{border-color:rgba(242,182,50,.2)!important;color:#AFC0D1!important}
.hero-foot .ticks i::before{background:var(--gold)!important}
.scroll-cue{color:#AFC0D1!important}.scroll-cue .ven{background:linear-gradient(180deg,var(--gold),transparent)!important}

/* Desktop portrait split */
@media (min-width:901px){
  .hero-scene{width:49%!important;left:0!important;right:auto!important;z-index:0!important}
  .hero-scene .scene-photo{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center bottom!important;filter:drop-shadow(0 28px 70px rgba(0,0,0,.7))!important}
  .hero-in{min-height:760px!important;padding-top:8rem!important;padding-bottom:4.2rem!important}
  .hero-kicker,.hero h1,.hero-lede,.hero-cta{width:min(52%,680px)!important;margin-left:0!important;margin-right:auto!important}
  .hero-foot{width:100%!important}
}

/* Stats */
.stats-strip{background:var(--navy)!important;border-block:1px solid rgba(242,182,50,.18)!important;color:#fff}
.stats-grid{background:linear-gradient(180deg,rgba(255,255,255,.015),transparent)}
.stat{border-color:rgba(242,182,50,.18)!important}
.stat .n{color:#fff!important}
.stat .n .u{color:var(--gold)!important}
.stat .k{color:#AFC0D1!important}
.stat .bar{height:4px!important;background:rgba(255,255,255,.1)!important;border-radius:10px}
.stat .bar:after{background:linear-gradient(90deg,var(--gold-2),var(--gold-soft))!important;border-radius:10px;box-shadow:0 0 14px rgba(242,182,50,.22)}

/* About */
#about{background:
  radial-gradient(40% 60% at 15% 50%,rgba(17,63,98,.35),transparent 70%),
  linear-gradient(135deg,var(--navy) 0%,#071D32 55%,var(--navy-2) 100%)!important;
  color:#fff;position:relative;overflow:hidden;
}
#about:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(125deg,transparent 0 8%,rgba(242,182,50,.1) 8.2% 8.45%,transparent 8.6% 92%,rgba(242,182,50,.08) 92.2% 92.45%,transparent 92.6%)}
#about .marker .lbl,#about .about-portrait figcaption{color:#AFC0D1!important}
#about .marker .no{color:var(--gold)!important}
#about .marker .hair{background:rgba(242,182,50,.2)!important}
#about .about-lead,#about .about-body h2{color:#fff!important}
#about .about-copy{color:#B9C9D7!important}
#about .about-portrait .ph{background:var(--navy-2)!important;border:2px solid var(--gold)!important;border-radius:18px!important;box-shadow:0 20px 55px rgba(0,0,0,.35)}
#about .about-portrait .ph:after{content:"";position:absolute;inset:10px;border:1px solid rgba(242,182,50,.3);border-radius:12px;pointer-events:none}
#about .about-portrait .hatch{background-image:repeating-linear-gradient(45deg,rgba(242,182,50,.04) 0 1px,transparent 1px 7px)!important}
#about .facts{border-color:rgba(242,182,50,.18)!important}
#about .facts div{border-color:rgba(242,182,50,.18)!important}
#about .facts dt{color:#91A7B9!important}
#about .facts dd{color:#fff!important}
#about .lnk{color:#fff!important;border-color:var(--gold)!important}
#about .lnk:hover{color:var(--gold)!important}

/* Courses: keep light cards but give section the navy identity */
#courses{background:var(--paper)!important;border-color:rgba(6,24,43,.12)!important}
#courses .marker .no{color:var(--gold-2)}
#courses .marker .hair{background:rgba(6,24,43,.14)}
#courses .course{border-color:rgba(6,24,43,.1);box-shadow:0 12px 35px rgba(6,24,43,.08)}
#courses .course:hover{border-color:rgba(242,182,50,.55);box-shadow:var(--shadow-lift)}
#courses .course .txt h3{color:var(--navy)}
#courses .course .idx{color:var(--gold-2)}
#courses .course .lnk:hover{color:var(--gold-2)}

/* Why / dark sections */
.dark,#why{background:linear-gradient(135deg,var(--navy),#061D33)!important}
.dark .marker .no,.dark .ic{color:var(--gold)!important}
.dark .marker .hair{background:rgba(242,182,50,.18)!important}
.dark .why{border-color:rgba(242,182,50,.16)!important}
.dark .why h3{color:#fff!important}
.dark .why p{color:#AFC0D1!important}

/* CTA */
.cta{background:linear-gradient(135deg,#06182B,#0A3151)!important;color:#fff!important;border-block:1px solid rgba(242,182,50,.2)}
.cta h2{color:#fff!important}.cta p{color:#B8C9D7!important}
\.cta .btn-copper{background:var(--gold)!important;color:var(--navy)!important}
/* High-contrast secondary CTA: readable on the navy background, including mobile */
.cta .btn-line{background:#F8FAFC!important;color:var(--navy)!important;border:2px solid var(--gold)!important;box-shadow:0 8px 24px rgba(0,0,0,.16);font-weight:800;text-shadow:none!important}
.cta .btn-line:hover{background:var(--gold)!important;color:var(--navy)!important;border-color:var(--gold-soft)!important;box-shadow:0 12px 30px rgba(242,182,50,.22);transform:translateY(-2px)}
@media (max-width:900px){.cta .btn-line{background:#FFFFFF!important;color:var(--navy)!important;border-width:2px!important;min-height:52px;box-shadow:0 8px 22px rgba(0,0,0,.18)}}

/* Footer */
.site-footer{background:#03111E!important;color:#fff!important;border-top:1px solid rgba(242,182,50,.2)!important}
.site-footer .f-col h3,.site-footer .f-col a{color:#DDE7EF!important}
.site-footer .f-col a:hover{color:var(--gold)!important}

/* mobile: make navy visually dominant and keep portrait elegant */
@media (max-width:900px){
  .site-header{background:rgba(6,24,43,.94)!important}
  .hero{min-height:0!important;padding-top:0!important}
  .hero-scene{position:relative!important;inset:auto!important;width:100%!important;height:430px!important;z-index:0!important;background:linear-gradient(180deg,#071D32,#0A2A45)!important;overflow:hidden}
  .hero-scene .scene-photo{position:absolute!important;inset:auto 0 0 0!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:contain!important;object-position:center bottom!important;transform:none!important;filter:drop-shadow(0 18px 35px rgba(0,0,0,.65))!important}
  .hero-scrim{position:absolute!important;inset:0!important;z-index:1!important;pointer-events:none!important;background:linear-gradient(180deg,rgba(6,24,43,.05) 0%,rgba(6,24,43,.08) 45%,rgba(6,24,43,.96) 100%)!important}
  .hero-in{position:relative!important;z-index:2!important;min-height:0!important;padding:2rem 1.1rem 2.1rem!important;align-items:stretch!important;text-align:right!important;background:linear-gradient(180deg,#06182B,#071D32)!important}
  .hero-kicker,.hero h1,.hero-lede,.hero-cta,.hero-foot{width:100%!important;margin-inline:0!important}
  .hero-kicker{justify-content:flex-start!important;margin-bottom:.7rem!important}
  .hero h1{font-size:clamp(2rem,8.7vw,3rem)!important;line-height:1.25!important;max-width:100%!important;margin-bottom:1rem!important}
  .hero-lede{font-size:.95rem!important;line-height:1.9!important;margin-bottom:1.2rem!important}
  .hero-cta{display:grid!important;grid-template-columns:1fr!important;gap:.7rem!important}
  .hero-cta .btn{width:100%!important;min-height:52px;position:relative!important;z-index:3!important;touch-action:manipulation;-webkit-tap-highlight-color:rgba(242,182,50,.18)}
  .hero-foot{margin-top:1.4rem!important;padding-top:1rem!important;align-items:flex-start!important;text-align:right!important}
  .hero-foot .ticks{justify-content:flex-start!important;gap:.35rem .9rem!important}
  .hero-foot .scroll-cue{display:none!important}
  .stats-strip{box-shadow:0 -8px 30px rgba(0,0,0,.2)}
  .stats-grid{grid-template-columns:repeat(2,1fr)!important}
  .stat{padding:1.5rem .8rem!important}
  .stat .n{font-size:clamp(2rem,10vw,3rem)!important}
  .stat .k{font-size:.78rem!important}
  #about{padding-block:4rem!important}
  #about .about{gap:2rem!important}
  #about .about-portrait{max-width:none!important;order:0}
  #about .about-body{order:1}
  #about .about-portrait .ph{border-radius:16px!important}
  #about .facts{grid-template-columns:repeat(3,1fr)!important}
  #about .facts div{padding:1rem .55rem!important}
  #about .facts dt{font-size:.68rem!important}
  #about .facts dd{font-size:1rem!important}
  #courses{background:var(--paper)!important}
}
@media (max-width:520px){
  .wrap{width:min(100% - 1.2rem,var(--wrap))}
  .hero-scene{height:360px!important}
  .hero-in{padding-inline:.9rem!important}
  .hero h1{font-size:clamp(1.9rem,9.5vw,2.5rem)!important}
  .stats-grid{grid-template-columns:1fr 1fr!important}
  .stat{padding:1.35rem .55rem!important}
  .stat .n{font-size:2rem!important}
  .stat .k{font-size:.72rem!important}
  .stat .bar{margin-top:.8rem!important}
  #about .facts{grid-template-columns:1fr!important}
  #about .facts div{border-top:1px solid rgba(242,182,50,.18)!important;border-inline-start:0!important;padding:1rem 0!important}
  #about .facts div:first-child{border-top:0!important}
}

