:root{
  --bone:#EDE4CF; --bone2:#3A2A5E; --bone3:#CFC4E0;
  --forest:#2A1B49; --forest2:#1B1030;
  --moss:#9A8DC0; --bark:#B3A7CE; --leather:#6E5F92;
  --umber:#130A24; --brass:#D8402C; --rust:#A85FE0; --teal:#2E9E97; --lime:#A9C63E;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--forest);color:var(--bone);font-family:'Nunito Sans',system-ui,sans-serif;line-height:1.7;font-size:17px;}
a{color:inherit;}
.wrap{max-width:1080px;margin:0 auto;padding:0 26px;}
.cinzel{font-family:'Cinzel',serif;}
h2{font-family:'Cinzel',serif;font-weight:600;letter-spacing:.04em;font-size:clamp(1.6rem,4vw,2.4rem);color:var(--bone);margin:0 0 .3em;}
.eyebrow{font-family:'Cinzel',serif;letter-spacing:.32em;text-transform:uppercase;font-size:.72rem;color:var(--moss);margin-bottom:10px;}
.btn{display:inline-flex;align-items:center;gap:9px;font-family:'Cinzel',serif;font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;
  padding:14px 24px;border-radius:999px;text-decoration:none;border:2px solid transparent;transition:.18s;cursor:pointer;}
.btn.primary{background:var(--brass);color:var(--bone);}
.btn.primary:hover{background:#DE4631;transform:translateY(-1px);}
.btn.ghost{border-color:var(--bone);color:var(--bone);background:transparent;}
.btn.ghost:hover{background:var(--bone);color:var(--forest);}
.btn.onDark{border-color:var(--bone);color:var(--bone);}
.btn.onDark:hover{background:var(--bone);color:var(--forest);}

/* NAV */
header.nav{position:sticky;top:0;z-index:50;background:rgba(27,16,48,.82);backdrop-filter:blur(8px);border-bottom:1px solid rgba(237,228,207,.12);}
.navrow{display:flex;align-items:center;justify-content:space-between;height:68px;}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;}
.brand svg{width:40px;height:40px;flex:none;border-radius:12px;}
.brand .nm{font-family:'Cinzel',serif;font-weight:700;letter-spacing:.14em;font-size:1rem;color:var(--bone);}
nav.links{display:flex;align-items:center;gap:28px;}
nav.links a{font-family:'Cinzel',serif;font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;color:var(--bark);}
nav.links a:hover{color:var(--bone);}
nav.links a.cta{color:var(--bone);border-bottom:2px solid var(--brass);padding-bottom:2px;}
nav.links a.here{color:var(--bone);}
@media(max-width:760px){nav.links a:not(.cta){display:none;}}

/* HERO */
.hero{position:relative;text-align:center;padding:78px 0 84px;}
.hero .emblem{width:120px;height:120px;margin:0 auto 22px;display:block;filter:drop-shadow(0 8px 22px rgba(10,8,25,.45));}
.hero h1{font-family:'Cinzel',serif;font-weight:700;letter-spacing:.06em;font-size:clamp(2.5rem,8vw,5rem);margin:.1em 0 .12em;line-height:1;}
.hero h1 .amp{color:var(--brass);font-weight:500;}
.hero .tag{font-family:'Fraunces',serif;font-style:italic;font-size:clamp(1.05rem,2.6vw,1.5rem);color:var(--bark);}
.hero .lede{max-width:600px;margin:20px auto 0;font-size:1.08rem;}
.hero .cta-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:30px;}
.nowpill{display:inline-flex;align-items:center;gap:8px;background:var(--bone2);border:1px solid var(--leather);color:var(--bark);
  font-family:'Cinzel',serif;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;padding:7px 16px;border-radius:999px;margin-bottom:26px;}
.nowpill .dot{width:8px;height:8px;border-radius:50%;background:var(--brass);box-shadow:0 0 0 0 rgba(216,64,44,.6);animation:pulse 2s infinite;}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(216,64,44,.5);}70%{box-shadow:0 0 0 9px rgba(216,64,44,0);}100%{box-shadow:0 0 0 0 rgba(216,64,44,0);}}

section{padding:74px 0;}
.divider{height:1px;background:rgba(237,228,207,.12);}

/* STORY */
.story{background:var(--bone2);}
.story .grid{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center;}
.story p{margin:.7em 0;}
.story .sig{font-family:'Fraunces',serif;font-style:italic;font-size:1.2rem;color:var(--bone);margin-top:14px;}
.keepers{display:flex;gap:18px;justify-content:center;}
.keeper{text-align:center;}
.keeper .av{width:132px;height:132px;border-radius:50%;background:var(--forest);display:flex;align-items:center;justify-content:center;
  font-family:'Cinzel',serif;font-weight:700;font-size:2.6rem;color:var(--bone);border:3px solid var(--brass);}
.keeper .rl{font-family:'Cinzel',serif;letter-spacing:.14em;text-transform:uppercase;font-size:.68rem;color:var(--bark);margin-top:12px;}
@media(max-width:760px){.story .grid{grid-template-columns:1fr;gap:30px;}}

/* PILLARS / WARES */
.cats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-top:34px;}
.cat{background:var(--bone2);border:1px solid rgba(237,228,207,.12);border-radius:16px;padding:26px 24px;position:relative;transition:.18s;}
.cat:hover{transform:translateY(-3px);border-color:var(--leather);}
.cat.now{border-color:var(--brass);}
a.cat{text-decoration:none;display:block;}
.cat .ic{width:48px;height:48px;color:var(--lime);margin-bottom:14px;}
.cat h3{font-family:'Cinzel',serif;font-weight:600;letter-spacing:.06em;font-size:1.08rem;margin:0 0 6px;}
.cat p{font-size:.92rem;color:var(--bark);margin:0;}
.cat .go{font-family:'Cinzel',serif;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--brass);margin-top:14px;display:inline-block;}
.tagnow{position:absolute;top:16px;right:16px;background:var(--brass);color:var(--bone);font-family:'Cinzel',serif;
  font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;padding:4px 10px;border-radius:999px;}
.tagsoon{position:absolute;top:16px;right:16px;color:var(--leather);font-family:'Cinzel',serif;font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;}

/* PILLAR PAGE — PASSAGE */
.passage{max-width:760px;margin:0 auto;text-align:center;}
.passage .quote{font-family:'Fraunces',serif;font-style:italic;font-size:clamp(1.3rem,3.2vw,1.7rem);color:var(--bone);line-height:1.5;margin:0 0 .6em;}
.passage p{color:var(--bark);}

/* LIVE (dark) */
.live{background:var(--forest2);color:var(--bone);position:relative;}
.live .eyebrow{color:var(--brass);}
.live h2{color:var(--bone);}
.live .lede{max-width:620px;color:var(--bone3);}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:38px 0 34px;}
.step{background:rgba(235,224,200,.06);border:1px solid rgba(235,224,200,.16);border-radius:14px;padding:24px 22px;}
.step .n{font-family:'Cinzel',serif;font-weight:700;font-size:1.5rem;color:var(--brass);}
.step h4{font-family:'Cinzel',serif;font-weight:600;letter-spacing:.06em;font-size:1rem;margin:6px 0 6px;color:var(--bone);}
.step p{font-size:.9rem;color:var(--bone3);margin:0;}
@media(max-width:760px){.steps{grid-template-columns:1fr;}}

/* NOTIFY */
.notify{text-align:center;}
.notify form{display:flex;gap:10px;max-width:460px;margin:22px auto 0;flex-wrap:wrap;justify-content:center;}
.notify input{flex:1;min-width:220px;padding:13px 18px;border-radius:999px;border:1px solid var(--leather);background:var(--bone2);color:var(--bone);font-family:inherit;font-size:.95rem;}
.notify input:focus{outline:2px solid var(--brass);}
.notify .fine{font-size:.78rem;color:var(--leather);margin-top:12px;}

/* FOOTER */
footer{background:var(--forest2);color:var(--bone3);padding:56px 0 30px;}
.foot{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;align-items:flex-start;}
.foot .brand .nm{color:var(--bone);}
.foot .tagline{font-family:'Fraunces',serif;font-style:italic;color:var(--bone3);margin-top:12px;max-width:300px;}
.socials{display:flex;flex-direction:column;gap:9px;}
.socials .h{font-family:'Cinzel',serif;letter-spacing:.16em;text-transform:uppercase;font-size:.68rem;color:var(--brass);margin-bottom:4px;}
.socials a{text-decoration:none;color:var(--bone3);font-size:.92rem;}
.socials a:hover{color:var(--bone);}
.legal{border-top:1px solid rgba(235,224,200,.12);margin-top:40px;padding-top:20px;font-size:.74rem;color:var(--leather);text-align:center;line-height:1.6;}
