@import url("https://fonts.googleapis.com/css2?family=Cinzel:wght@600&display=swap");

/* Apollo UI
   Shared structure and refinement layer. Loaded after each page's own
   styles, so it wins. Nav and footer rules apply everywhere; page rules
   are scoped to .apollo-page so the whitepaper is untouched. */

:root{
  --s1:8px; --s2:14px; --s3:22px; --s4:34px; --s5:56px;
  --rule:rgba(224,153,47,.22);
}

/* ---------- nav ---------- */
nav.top{padding:0 26px}
.navlinks{gap:2px}
.navlinks a{font-size:13.5px;letter-spacing:.015em;white-space:nowrap;padding:9px 13px;border-radius:8px;transition:color .18s,background .18s}
.navlinks a:hover{background:rgba(245,196,81,.10);color:#fff}
.navlinks a[aria-current="page"]{color:var(--gold)}
.navlinks a[aria-current="page"]::after{content:"";display:block;height:1px;width:16px;margin:5px auto 0;background:var(--gold);opacity:.85}
.navlinks a.gala{margin-left:12px;padding:9px 16px;border-radius:10px;box-shadow:none}
.navlinks a.gala:hover{filter:brightness(1.06);background:linear-gradient(100deg,#f5c451,#e0992f);color:#2a1a0a}
.navlinks a.gala[aria-current="page"]::after{display:none}
@media(max-width:900px){.navlinks a:not(.gala){display:none}}

/* ---------- focus ---------- */
a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:8px}

/* ---------- footer ---------- */
footer{padding:var(--s5) 24px var(--s4)}
.fnav{display:flex;flex-wrap:wrap;justify-content:center;gap:2px;margin:0 0 var(--s3)}
.fnav a{font-family:"Jost",sans-serif;font-size:13px;letter-spacing:.015em;color:rgba(255,255,255,.72);text-decoration:none;padding:8px 13px;border-radius:8px}
.fnav a:hover{color:var(--gold);background:rgba(245,196,81,.08)}
.fnav a[aria-current="page"]{color:var(--gold)}
.fmeta{font-family:"Jost",sans-serif;font-size:12.5px;letter-spacing:.02em;color:rgba(255,255,255,.5);line-height:1.7}
.fmeta a{color:var(--gold);text-decoration:none}

/* ---------- footer social ---------- */
.fsocial{display:flex;justify-content:center;align-items:center;gap:4px;margin:0 0 var(--s3)}
.fsocial a{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;color:rgba(255,255,255,.72);transition:color .2s ease,background .2s ease}
.fsocial a:hover{color:var(--gold);background:rgba(245,196,81,.08)}
.fsocial a::before{content:"";width:19px;height:19px;background:currentColor;-webkit-mask:var(--icon) center/contain no-repeat;mask:var(--icon) center/contain no-repeat}
.fsocial .ig{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3' y='3' width='18' height='18' rx='5.2' fill='none' stroke='black' stroke-width='1.9'/%3E%3Ccircle cx='12' cy='12' r='4.1' fill='none' stroke='black' stroke-width='1.9'/%3E%3Ccircle cx='17.4' cy='6.6' r='1.3'/%3E%3C/svg%3E")}
.fsocial .xt{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.9 2.2h3.3l-7.2 8.2 8.5 11.3h-6.7l-5.2-6.8-6 6.8H2.3l7.7-8.8L1.9 2.2h6.9l4.7 6.2 5.4-6.2Zm-1.2 17.6h1.8L7.2 4.1H5.2l12.5 15.7Z'/%3E%3C/svg%3E")}
.fsocial .li{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4.98 3.5a2.5 2.5 0 1 1-.02 5 2.5 2.5 0 0 1 .02-5ZM3 9h4v12H3V9Zm6 0h3.8v1.7h.05c.53-1 1.83-2.05 3.77-2.05 4.03 0 4.78 2.65 4.78 6.1V21h-4v-5.5c0-1.3-.02-3-1.83-3-1.83 0-2.11 1.43-2.11 2.9V21H9V9Z'/%3E%3C/svg%3E")}

/* ---------- page hero (subpages only) ---------- */
.apollo-page header.hero{padding:calc(var(--nav-h) + 66px) 24px 30px}
.apollo-page .logo-mark{width:56px;margin:0 auto 20px}
.apollo-page .eyebrow{font-size:10.5px;letter-spacing:.34em;margin-bottom:16px;opacity:.92}
.apollo-page header.hero h1{line-height:1.06;letter-spacing:.02em}
.apollo-page header.hero .tagline{max-width:33em;margin:20px auto 0;line-height:1.55}

/* ---------- sheet ---------- */
.apollo-page .sheet,.apollo-page .form-sheet{max-width:900px;margin:34px auto 0;border-radius:26px 26px 0 0;padding:46px 40px 54px}
@media(max-width:620px){.apollo-page .sheet,.apollo-page .form-sheet{margin-left:10px;margin-right:10px;border-radius:18px 18px 0 0;padding:32px 20px 40px}}

/* ---------- section rhythm ---------- */
.apollo-page .sec-label{font-size:10px;letter-spacing:.34em;margin-bottom:9px}
.apollo-page h2.sec{line-height:1.2;letter-spacing:.015em}
.apollo-page p.lede{max-width:38em}
.apollo-page .opening{border-bottom:1px solid var(--rule);padding-bottom:var(--s4);margin-bottom:var(--s4)}
.apollo-page .believers{border-color:var(--rule);border-radius:20px;padding:30px 32px 26px;margin:var(--s4) 0}
.apollo-page .included li,.apollo-page .deposit-terms li,.apollo-page .band,.apollo-page .ledger,.apollo-page form,.apollo-page .terms-block{border-color:var(--rule)}
.apollo-page .stay-block{border-top-color:var(--rule)}

/* ---------- buttons ---------- */
.apollo-page .cta,.apollo-page .stay-btn,.apollo-page .gala-cta,.apollo-page .subscribe-cta{letter-spacing:.03em}
.apollo-page .subscribe-cta{box-shadow:none;padding:14px 22px;border-radius:11px}
.apollo-page .subscribe-cta:hover{filter:brightness(1.06)}

/* ---------- motion ---------- */
@media(prefers-reduced-motion:reduce){*{animation:none !important;transition:none !important}}

/* ---------- hero primitives (so every subpage hero matches) ---------- */
.apollo-page .logo-mark{display:block;height:auto}
.apollo-page header.hero h1{font-family:"Cinzel",serif;font-size:clamp(32px,6vw,52px);font-weight:700;margin:0;background:linear-gradient(180deg,#fff,#ffe7b0 60%,#f5c451);-webkit-background-clip:text;background-clip:text;color:transparent}
.apollo-page header.hero .tagline{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-size:clamp(17px,2.4vw,21px);color:rgba(255,255,255,.88)}

/* the About page nests a <main> inside the sheet; do not stack its padding */
.apollo-page .sheet > main{padding-top:0}
.apollo-page .sheet > main > section:first-child .wrap{padding-top:0}

/* ---------- one typeface: Syne ---------- */
*,*::before,*::after{font-family:"Syne","Jost",system-ui,-apple-system,sans-serif !important}
/* Syne ships no italic, so browsers fake a slant. Turn it off on display text. */
.tagline,.lede,.pull,blockquote,.believers .pull,header.hero .tagline{font-style:normal !important}
body{font-size:18px;line-height:1.68;letter-spacing:0}
main p,section p,.wrap p{font-size:17.5px;line-height:1.7}
h1,h2,h3,h4{letter-spacing:-.012em}
header.hero h1{font-size:clamp(30px,5.2vw,46px) !important;font-weight:800 !important;line-height:1.06 !important;letter-spacing:-.018em !important}
header.hero .tagline{font-size:clamp(16px,2vw,19px) !important;line-height:1.6;font-weight:400}
h2.sec,.stay-h2{font-weight:700;letter-spacing:-.012em}
.bt{font-size:14px;font-weight:700;letter-spacing:.07em}
.bt small{font-weight:400;letter-spacing:.2em}
.band-name{font-weight:700;letter-spacing:-.005em}
.believers .pull,blockquote.pull{font-weight:600;letter-spacing:-.005em}
.eyebrow,.sec-label{font-weight:500}

/* ---------- logotype and display tuning ---------- */
/* The wordmark is part of the logo, so it keeps the logo's engraved serif. */
.bt{font-family:"Cinzel",Georgia,serif !important;font-size:15px;font-weight:600;letter-spacing:.2em}
.bt small{font-family:"Cinzel",Georgia,serif !important;font-size:8.5px;font-weight:400;letter-spacing:.3em}
/* Syne at 800 reads stretched at display sizes; 600 holds the proportions. */
header.hero h1{font-weight:600 !important;letter-spacing:-.008em !important}
h2.sec,.stay-h2{font-weight:600 !important;letter-spacing:-.008em !important}

/* opening statement (About) */
.apollo-page .lead-statement{border-bottom:1px solid var(--rule);padding-bottom:var(--s4);margin-bottom:var(--s4)}
.apollo-page .lead-line{margin:0;font-size:clamp(21px,2.6vw,27px);line-height:1.45;font-weight:500;letter-spacing:-.008em;color:var(--ink)}
.apollo-page .lead-line .q{color:var(--accent)}

/* second label above a list (Membership) */
.apollo-page .sub-label{margin-top:var(--s4)}
