/* ============================================================
   THE PRIMAL PRIESTESS — shared shell for the inner pages
   Palette · Luxe #400028 · Sanguine #841A1B · Prosper #A5902B
   Raven #100f0d · Halcyon #B4A7A2 · Gold #D4BC6A · cream #F5EFE6
   ============================================================ */
:root{
  --luxe:#400028; --sanguine:#841A1B; --prosper:#A5902B; --raven:#100f0d;
  --halcyon:#B4A7A2; --cream:#F5EFE6; --fortdark:#494920;
  --gold:#D4BC6A; --ink:#0b0007;
  --f-head:'Amarante',serif; --f-label:'Karma',serif;
  --f-body:'Noto Serif',Georgia,serif; --f-script:'Beau Rivage',cursive;
  --ease:cubic-bezier(.22,.61,.36,1);
}
*{box-sizing:border-box;}
body{margin:0;background:var(--luxe);color:var(--halcyon);
  font-family:var(--f-body);font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased;}
a{color:var(--gold);}
img{max-width:100%;}
h1,h2,h3{font-weight:400;color:var(--cream);line-height:1.1;margin:0;}
h1{font-family:var(--f-head);font-size:clamp(34px,6.6vw,70px);letter-spacing:.01em;}
h2{font-family:var(--f-head);font-size:clamp(25px,3.8vw,42px);}
h3{font-family:var(--f-head);font-size:clamp(19px,2.3vw,25px);}
p{margin:0 0 20px;}
.wrap{max-width:1180px;margin:0 auto;padding:0 clamp(22px,5vw,56px);}
.narrow{max-width:760px;margin:0 auto;}
.eyebrow{font-family:var(--f-label);font-weight:600;font-size:11px;letter-spacing:.3em;
  text-transform:uppercase;color:var(--prosper);margin:0 0 16px;}
.script{font-family:var(--f-script);color:var(--gold);font-size:clamp(28px,5vw,50px);line-height:1;}
.lead{font-size:clamp(17px,2vw,19.5px);}

/* hero */
.top{position:relative;overflow:hidden;padding:clamp(76px,11vw,140px) 0 clamp(40px,6vw,70px);
  background:radial-gradient(130% 95% at 50% 0%,#5a0038 0%,#400028 42%,#1d0612 100%);}
.top .lead{max-width:680px;margin-top:22px;}

/* bands */
.band{padding:clamp(48px,8vw,104px) 0;}
.band.luxe{background:linear-gradient(180deg,#4a0030,#2a0a1c);}
.band.raven{background:linear-gradient(180deg,#140f12,var(--raven));}
.band.deep{background:linear-gradient(180deg,#1d0612,#0b0007);}
.band.gold{background:linear-gradient(180deg,#2a0a1c,#3a3317 55%,#2a0a1c);}

/* buttons */
.btn{display:inline-block;font-family:var(--f-label);font-weight:700;letter-spacing:.09em;
  text-transform:uppercase;text-decoration:none;font-size:13px;border-radius:2px;
  padding:16px 30px;line-height:1.2;transition:transform .3s var(--ease),box-shadow .3s var(--ease);}
.btn-p{background:var(--sanguine);color:var(--cream);box-shadow:0 6px 30px rgba(132,26,27,.36);}
.btn-g{background:transparent;color:var(--gold);border:1px solid var(--prosper);}
.btn:hover{transform:translateY(-2px);}
.cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px;}
.cta.mid{justify-content:center;}

/* panels */
.panel{padding:clamp(22px,3vw,34px);border:1px solid rgba(165,144,43,.3);border-radius:10px;
  background:linear-gradient(180deg,rgba(16,15,13,.72),rgba(64,0,40,.5));}
.panel h3{margin-bottom:10px;}
.panel p:last-child{margin-bottom:0;}
.cols{display:grid;grid-template-columns:1fr;gap:20px;}
@media(min-width:760px){ .cols.two{grid-template-columns:1fr 1fr;} }
@media(min-width:860px){ .cols.three{grid-template-columns:repeat(3,1fr);} }

/* the numbered beats */
.beats{counter-reset:beat;list-style:none;margin:0;padding:0;}
.beats li{counter-increment:beat;position:relative;padding:0 0 26px 62px;}
.beats li:before{content:counter(beat);position:absolute;left:0;top:-4px;
  width:42px;height:42px;display:flex;align-items:center;justify-content:center;
  font-family:var(--f-head);font-size:18px;color:var(--gold);
  border:1px solid rgba(165,144,43,.5);border-radius:50%;background:rgba(11,0,7,.5);}
.beats li b{display:block;font-family:var(--f-head);font-weight:400;font-size:19px;
  color:var(--cream);margin-bottom:5px;}
.beats li p{margin:0;font-size:15.5px;line-height:1.6;}

/* the plain-language box — the clarity gate */
.plain{margin:30px 0;padding:24px 26px;border-left:2px solid var(--prosper);
  background:rgba(16,15,13,.55);}
.plain b{display:block;font-family:var(--f-label);font-size:10.5px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--prosper);margin-bottom:9px;font-weight:600;}
.plain p:last-child{margin-bottom:0;}

/* fact row */
.facts{display:flex;flex-wrap:wrap;gap:12px 34px;margin:26px 0 0;padding:0;list-style:none;}
.facts li{font-family:var(--f-label);font-size:11px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--prosper);}
.facts li b{display:block;font-family:var(--f-head);font-size:22px;letter-spacing:0;
  text-transform:none;color:var(--cream);margin-top:3px;font-weight:400;}

/* quotes */
.quote{padding:clamp(22px,3vw,32px);border:1px solid rgba(165,144,43,.3);border-radius:10px;
  background:linear-gradient(180deg,rgba(16,15,13,.74),rgba(64,0,40,.46));}
.quote .fig{font-family:var(--f-head);font-size:clamp(20px,2.6vw,27px);color:var(--gold);
  margin:0 0 12px;line-height:1.2;}
.quote blockquote{margin:0 0 14px;font-size:16px;line-height:1.65;color:var(--cream);}
.quote cite{font-style:normal;font-family:var(--f-label);font-size:11px;letter-spacing:.17em;
  text-transform:uppercase;color:rgba(180,167,162,.8);}
.small{font-size:13px;color:rgba(180,167,162,.72);}

/* form */
.field{margin-bottom:18px;}
.field label{display:block;font-family:var(--f-label);font-size:11px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--prosper);margin-bottom:7px;}
.field input,.field textarea{width:100%;padding:13px 15px;background:rgba(11,0,7,.6);
  border:1px solid rgba(180,167,162,.3);border-radius:3px;color:var(--cream);
  font-family:var(--f-body);font-size:16px;}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--gold);}
.field textarea{min-height:150px;resize:vertical;}

footer{padding:50px 0 60px;border-top:1px solid rgba(165,144,43,.22);text-align:center;
  background:var(--ink);}
footer nav{display:flex;gap:20px;flex-wrap:wrap;justify-content:center;margin-bottom:14px;}
footer nav a{font-family:var(--f-label);font-size:11px;letter-spacing:.16em;
  text-transform:uppercase;text-decoration:none;color:var(--halcyon);}
footer nav a:hover{color:var(--gold);}
footer .fine{font-size:12.5px;line-height:1.8;color:rgba(180,167,162,.7);margin:0;}

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