/* GSP subpage brand layer: makes /start, /book, /enroll and other
   standalone pages match the homepage (navy + gold, Barlow Condensed + Inter).
   Load AFTER the page's own stylesheet. */
:root{
  --navy-950:#060D1A;--navy-900:#0A1628;--navy-700:#16294A;
  --brand-gold:#F9A825;--brand-gold-deep:#8A5A06;--brand-paper:#F6F3EC;--brand-line:#E4DFD3;
  /* remap the page-level tokens used by onboarding/booking CSS */
  --ink:#0C1524;--green:#0A1628;--gold:#8A5A06;--paper:#F6F3EC;--line:#E4DFD3;--muted:#566070;
}
body{font-family:"Inter",-apple-system,"Segoe UI",Arial,sans-serif!important;background:var(--brand-paper)!important;color:var(--ink)}
h1,h2{font-family:"Barlow Condensed","Arial Narrow",sans-serif!important;text-transform:uppercase;font-weight:700!important;letter-spacing:.005em!important;line-height:1.02!important}
h1 em,h2 em{font-family:"Instrument Serif",Georgia,serif!important;text-transform:none;font-style:italic;font-weight:400!important;color:var(--brand-gold-deep)!important}
h3{font-family:"Inter",sans-serif}
.eyebrow,.small-label{color:var(--brand-gold-deep)!important}
/* shared top bar */
.gsp-bar{background:var(--navy-950);color:#fff;border:0!important;max-width:none!important;margin:0!important;padding:14px max(16px,4vw)!important;display:flex;align-items:center;justify-content:space-between;gap:16px;position:sticky;top:env(safe-area-inset-top,0px);z-index:20}
.gsp-brand{display:flex;align-items:center;gap:12px;color:#fff!important;text-decoration:none}
.gsp-brand img{width:44px;height:44px;object-fit:contain;background:none!important;padding:0!important;border-radius:0!important}
.gsp-brand span{font-family:"Barlow Condensed","Arial Narrow",sans-serif;font-weight:700;font-size:17px;letter-spacing:.08em;line-height:1.02;display:flex;flex-direction:column}
.gsp-brand em{font-style:normal;color:var(--brand-gold)}
.gsp-bar nav{display:flex;align-items:center;gap:22px;font-size:14px}
.gsp-bar nav a{color:rgba(255,255,255,.8)!important;text-decoration:none;border:0!important;padding:8px 0}
.gsp-bar nav a:hover,.gsp-bar nav a.active{color:#fff!important}
.gsp-bar nav a.cta{background:var(--brand-gold);color:var(--navy-950)!important;padding:10px 18px;border-radius:999px;font-weight:600}
@media (max-width:640px){.gsp-bar nav a:not(.cta){display:none}.gsp-brand span{font-size:15px}}
/* buttons */
.primary{background:var(--brand-gold)!important;color:var(--navy-950)!important;border-color:var(--brand-gold)!important;border-radius:999px!important;font-weight:700!important}
.primary:hover{background:#FFB940!important}
.secondary{border-radius:999px!important}
a.primary{text-decoration:none}
.service-option:has(input:checked){background:#FDF3DF!important;border-color:var(--brand-gold-deep)!important}
.service-option input,.check-label input{accent-color:var(--brand-gold-deep)!important}
aside li[aria-current=step]:before{background:var(--navy-900)!important;border-color:var(--navy-900)!important}
footer{background:var(--navy-950)!important;color:rgba(255,255,255,.75)!important;border:0!important}
footer a{color:rgba(255,255,255,.85)!important}
:focus-visible{outline:3px solid var(--brand-gold)!important;outline-offset:3px}
.gsp-foot{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center;justify-content:center;padding:26px max(16px,4vw);font-size:13px;background:var(--navy-950);color:rgba(255,255,255,.7)}
.gsp-foot span{font-family:"Barlow Condensed","Arial Narrow",sans-serif;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#fff;margin-right:auto}
.gsp-foot a{color:rgba(255,255,255,.85)!important;text-decoration:none}
.gsp-foot a:hover{color:var(--brand-gold)!important}
@media (max-width:640px){.gsp-foot span{width:100%;text-align:center;margin:0}}
/* keep the top bar on one line and the form close to the top on phones */
.gsp-bar{flex-wrap:nowrap!important}
.gsp-bar nav{width:auto!important;margin-left:auto}
@media (max-width:800px){
  .intro{padding:30px 0 8px!important}
  .intro>p:not(.eyebrow){font-size:16px}
  .benefits{display:none!important}
  .booking-layout{gap:28px!important}
}
