@import url("https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700&family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500;1,600&family=IBM+Plex+Mono:wght@400;500;600;700&family=Inter:wght@400;500;600;700;800&family=Space+Grotesk:wght@400;500;600;700&display=swap");

:root{
  --aa-black:#020203;
  --aa-ink:#050506;
  --aa-panel:#070708;
  --aa-panel-soft:rgba(255,255,255,.026);
  --aa-ivory:#f4f1e8;
  --aa-bone:#f6efe3;
  --aa-muted:rgba(246,239,227,.72);
  --aa-soft:rgba(246,239,227,.58);
  --aa-dim:rgba(246,239,227,.42);
  --aa-faint:rgba(246,239,227,.22);
  --aa-line:rgba(246,239,227,.16);
  --aa-line-strong:rgba(246,239,227,.34);
  --aa-shadow:rgba(0,0,0,.42);
  --aa-max:1560px;
  --aa-display:"Cinzel","Trajan Pro","Times New Roman",serif;
  --aa-script:"Cormorant Garamond",Georgia,serif;
  --aa-sans:"Space Grotesk","Inter","Manrope","Satoshi",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --aa-mono:"IBM Plex Mono","JetBrains Mono","Space Mono","Courier New",monospace;
}

html,
body{
  margin:0!important;
  padding:0!important;
  background:#000!important;
  color:var(--aa-ivory);
  overflow-x:hidden;
  scroll-behavior:smooth;
}

body .site,
.site-content,
.inside-article,
.entry-content,
.container,
.grid-container,
.separate-containers .inside-article{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  background:#000!important;
}

.core-scroll-page{
  width:100vw;
  min-height:100vh;
  margin-left:calc(50% - 50vw);
  background:
    radial-gradient(circle at 74% 12%, rgba(246,239,227,.055), transparent 28%),
    radial-gradient(circle at 16% 38%, rgba(246,239,227,.035), transparent 34%),
    linear-gradient(180deg,#020203 0%,#050506 42%,#000 100%);
  color:var(--aa-ivory);
  font-family:var(--aa-sans);
  overflow:hidden;
}

.core-scroll-page *{box-sizing:border-box;}
.core-scroll-page a{color:inherit;}

.core-container{
  width:min(var(--aa-max),100%);
  margin:0 auto;
  padding-left:clamp(18px,4vw,72px);
  padding-right:clamp(18px,4vw,72px);
}

/* HERO */

.core-hero{
  position:relative;
  min-height:78svh;
  display:grid;
  align-items:end;
  padding:clamp(84px,8vw,122px) 0 clamp(44px,6vw,82px);
  isolation:isolate;
  overflow:hidden;
  border-bottom:2px solid rgba(246,239,227,.52);
  background:
    radial-gradient(circle at 68% 24%, rgba(246,239,227,.06), transparent 30%),
    radial-gradient(circle at 18% 58%, rgba(246,239,227,.035), transparent 34%),
    var(--core-hero-image) center right / cover no-repeat,
    linear-gradient(180deg,#020203 0%,#050506 48%,#000 100%);
}

.core-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 50% 38%, rgba(255,255,255,.035), transparent 24%),
    linear-gradient(90deg, rgba(0,0,0,.82), transparent 36%, transparent 66%, rgba(0,0,0,.78)),
    linear-gradient(180deg, rgba(0,0,0,.16), transparent 54%, rgba(0,0,0,.86));
}

.core-hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background-image:
    linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.014) 1px, transparent 1px);
  background-size:180px 180px;
  opacity:.18;
  mask-image:radial-gradient(circle at 50% 42%, #000 0%, transparent 72%);
  -webkit-mask-image:radial-gradient(circle at 50% 42%, #000 0%, transparent 72%);
}

.core-hero-copy{
  position:relative;
  z-index:2;
  max-width:1120px;
}

.core-kicker,
.core-section-label{
  margin:0 0 18px;
  font-family:var(--aa-mono);
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(246,239,227,.50);
}

.core-kicker-links a,
.core-kicker-links a:visited,
.core-kicker-links a:hover,
.core-kicker-links a:focus,
.core-kicker-links a:active{
  color:rgba(246,239,227,.58)!important;
  text-decoration:none!important;
  border-bottom:none!important;
  transition:color .18s ease, opacity .18s ease;
}

.core-kicker-links a:hover,
.core-kicker-links a:focus{
  color:#fff!important;
}

.core-kicker-links span{opacity:.55;}

/* Hero title uses the formal Archive display voice, without overpowering the page. */
.core-hero h1{
  margin:0;
  max-width:1120px;
  font-family:var(--aa-display, "Cinzel", "Trajan Pro", "Times New Roman", serif);
  font-weight:500;
  font-size:clamp(3.45rem,6.45vw,7.65rem);
  line-height:.86;
  letter-spacing:-.035em;
  text-transform:uppercase;
  color:rgba(248,246,240,.96);
  background:none;
  -webkit-background-clip:initial;
  background-clip:initial;
  -webkit-text-fill-color:rgba(248,246,240,.96);
  text-shadow:0 20px 56px rgba(0,0,0,.70);
  text-wrap:balance;
}

.core-hero h1 span{
  display:block;
  margin:clamp(4px,.7vw,10px) 0 0;
  font-family:var(--aa-script, "Cormorant Garamond", Georgia, serif);
  font-style:italic;
  font-weight:500;
  font-size:clamp(2.25rem,4.65vw,4.95rem);
  line-height:.86;
  letter-spacing:-.075em;
  text-transform:none;
  color:rgba(246,239,227,.66);
  background:none;
  -webkit-background-clip:initial;
  background-clip:initial;
  -webkit-text-fill-color:rgba(246,239,227,.66);
  text-shadow:none;
}

.core-hero-rule{
  width:min(460px,42vw);
  height:1px;
  margin:clamp(26px,4vw,38px) 0;
  background:linear-gradient(90deg, rgba(246,239,227,.62), rgba(246,239,227,.12), transparent);
  box-shadow:none;
}

.core-hero-sub{
  max-width:760px;
  margin:0;
  font-family:var(--aa-script);
  font-size:clamp(1.35rem,2.2vw,2.35rem);
  line-height:1.2;
  letter-spacing:-.035em;
  font-weight:500;
  color:rgba(246,239,227,.74);
}

/* MAIN LAYOUT */

.core-main-wrap{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,340px);
  gap:clamp(42px,6vw,82px);
  padding:clamp(70px,8vw,118px) 0;
  background:
    radial-gradient(circle at 20% 0%,rgba(246,239,227,.030),transparent 28%),
    radial-gradient(circle at 86% 14%,rgba(246,239,227,.035),transparent 32%);
}

.core-main{max-width:880px;}

.core-section{margin-bottom:clamp(58px,7vw,88px);}

.core-opening{
  border-left:1px solid rgba(246,239,227,.42);
  padding-left:clamp(22px,3vw,34px);
  position:relative;
}

.core-opening::before{
  content:"";
  position:absolute;
  left:-1px;
  top:0;
  width:1px;
  height:40%;
  background:linear-gradient(180deg,rgba(246,239,227,.78),transparent);
  box-shadow:0 0 18px rgba(246,239,227,.10);
}

.core-statement{
  margin:0 0 clamp(28px,4vw,44px);
  max-width:980px;
  font-family:var(--aa-script);
  color:rgba(246,239,227,.82);
  font-size:clamp(2.25rem,4.55vw,4.85rem);
  line-height:1.06;
  letter-spacing:-.065em;
  font-weight:500;
}

.core-main h2{
  margin:0 0 22px;
  font-family:var(--aa-script);
  font-size:clamp(2.28rem,4.08vw,3.92rem);
  line-height:1.02;
  font-weight:500;
  letter-spacing:-.055em;
  color:rgba(248,246,240,.94);
  text-shadow:none;
}

.core-main h3{
  margin:0 0 .55rem;
  font-family:var(--aa-mono);
  color:rgba(248,246,240,.90);
  font-size:clamp(1rem,1.45vw,1.2rem);
  line-height:1.35;
  letter-spacing:.055em;
  text-transform:uppercase;
  font-weight:600;
}

.core-main p{
  margin:0 0 1.5rem;
  color:rgba(246,239,227,.72);
  font-size:clamp(1.05rem,1.16vw,1.16rem);
  line-height:1.82;
  font-weight:500;
}

.core-main a,
.core-main a:visited{
  color:rgba(255,255,255,.92);
  text-decoration:none;
  border-bottom:1px solid rgba(246,239,227,.28);
}

.core-main a:hover{
  color:#fff;
  border-bottom-color:rgba(246,239,227,.62);
}

/* FEATURE BOXES */

.core-scripture-box,
.core-quote-box{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(246,239,227,.22);
  background:
    radial-gradient(circle at 0% 0%,rgba(246,239,227,.055),transparent 38%),
    radial-gradient(circle at 100% 0%,rgba(246,239,227,.030),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.040),rgba(255,255,255,.012));
  padding:clamp(26px,4vw,42px);
  margin:clamp(32px,5vw,52px) 0;
  box-shadow:0 24px 72px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.06);
}

.core-scripture-box::before,
.core-quote-box::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.13;
  background-image:
    linear-gradient(90deg,rgba(255,255,255,.10) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.08) 1px,transparent 1px);
  background-size:54px 54px;
  mask-image:linear-gradient(180deg,#000 0%,transparent 76%);
  -webkit-mask-image:linear-gradient(180deg,#000 0%,transparent 76%);
}

.core-scripture-box p,
.core-quote-box p{
  position:relative;
  z-index:2;
  margin:0 0 18px;
  font-family:var(--aa-script);
  color:rgba(248,246,240,.92);
  font-size:clamp(1.45rem,2.3vw,2.1rem);
  line-height:1.34;
  letter-spacing:-.025em;
}

.core-scripture-box strong{
  position:relative;
  z-index:2;
  display:block;
  color:rgba(246,239,227,.56);
  font-family:var(--aa-mono);
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:.68rem;
}

/* DIVIDERS */

.core-divider{
  display:flex;
  align-items:center;
  gap:16px;
  margin:clamp(40px,5vw,58px) 0;
  color:rgba(246,239,227,.68);
}

.core-divider::before,
.core-divider::after{
  content:"";
  flex:1;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(246,239,227,.32),transparent);
}

/* STEPS */

.core-steps{
  display:grid;
  gap:26px;
  margin-top:28px;
}

.core-step{
  display:grid;
  grid-template-columns:54px 1fr;
  gap:22px;
  align-items:start;
}

.step-num{
  width:42px;
  height:42px;
  border:1px solid rgba(246,239,227,.42);
  border-radius:999px;
  display:grid;
  place-items:center;
  color:rgba(246,239,227,.72);
  font-family:var(--aa-mono);
  font-size:.72rem;
  font-weight:700;
  background:rgba(255,255,255,.018);
  box-shadow:0 0 22px rgba(0,0,0,.22);
}

.core-step p{
  margin:0;
  font-size:clamp(1.02rem,1.12vw,1.12rem);
  line-height:1.72;
}

/* MEANING GRID */

.meaning-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  background:transparent;
  border:0;
  margin-top:30px;
}

.meaning-card{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(246,239,227,.16);
  border-radius:0;
  background:
    radial-gradient(circle at 100% 0%,rgba(246,239,227,.045),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.032),rgba(255,255,255,.012));
  padding:30px 24px;
}

.meaning-card::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:1px;
  background:linear-gradient(180deg,rgba(246,239,227,.55),transparent 80%);
}

.meaning-card h3,
.meaning-card p{
  position:relative;
  z-index:2;
}

.meaning-card h3{
  margin:0 0 12px;
  color:rgba(248,246,240,.90);
  font-family:var(--aa-mono);
  text-transform:uppercase;
  letter-spacing:.10em;
  font-size:.74rem;
}

.meaning-card p{
  margin:0;
  font-size:clamp(1.02rem,1.1vw,1.12rem);
  line-height:1.72;
}

/* SIDEBAR */

.core-sidebar{
  position:sticky;
  top:110px;
  align-self:start;
  border:1px solid rgba(246,239,227,.18);
  background:
    radial-gradient(circle at 100% 0%,rgba(246,239,227,.05),transparent 38%),
    linear-gradient(180deg,rgba(255,255,255,.034),rgba(255,255,255,.012));
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  padding:30px;
  box-shadow:0 24px 72px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.05);
}

.sidebar-block{
  padding-bottom:26px;
  margin-bottom:26px;
  border-bottom:1px solid rgba(246,239,227,.14);
}

.sidebar-block:last-child{
  border-bottom:0;
  margin-bottom:0;
  padding-bottom:0;
}

.sidebar-title{
  margin-bottom:1rem;
  color:rgba(246,239,227,.58);
  font-family:var(--aa-mono);
  font-size:.68rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-weight:800;
}

.sidebar-block p{
  margin:0 0 1rem;
  color:rgba(246,239,227,.68);
  line-height:1.72;
  font-size:clamp(.98rem,1.04vw,1.06rem);
}

/* GUIDED PATH */

.core-path{
  border-top:1px solid rgba(246,239,227,.14);
  padding:0 0 clamp(72px,9vw,110px);
  background:
    radial-gradient(circle at 50% 0%,rgba(246,239,227,.045),transparent 36%),
    linear-gradient(180deg,#030201 0%,#000 100%);
}

.core-path-box{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(246,239,227,.20);
  background:
    radial-gradient(circle at 0% 0%,rgba(246,239,227,.055),transparent 34%),
    radial-gradient(circle at 100% 0%,rgba(246,239,227,.035),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012));
  padding:clamp(30px,5vw,52px);
  text-align:center;
  box-shadow:0 28px 86px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.06);
}

.core-path-box::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.12;
  background-image:
    linear-gradient(90deg,rgba(255,255,255,.10) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.08) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:linear-gradient(180deg,#000 0%,transparent 82%);
  -webkit-mask-image:linear-gradient(180deg,#000 0%,transparent 82%);
}

.core-path-box h2,
.core-path-box p,
.path-grid{
  position:relative;
  z-index:2;
}

.core-path-box h2{
  margin:0 0 .75rem;
  color:rgba(246,239,227,.66);
  font-family:var(--aa-mono);
  font-size:clamp(.82rem,1.2vw,.96rem);
  letter-spacing:.16em;
  text-transform:uppercase;
  font-weight:800;
}

.core-path-box p{
  margin:0 auto 28px;
  max-width:680px;
  color:rgba(246,239,227,.70);
  line-height:1.76;
  font-size:clamp(1.04rem,1.12vw,1.14rem);
}

.path-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.path-card{
  display:block;
  text-decoration:none!important;
  color:rgba(248,246,240,.92)!important;
  border:1px solid rgba(246,239,227,.18);
  background:
    radial-gradient(circle at 100% 0%,rgba(246,239,227,.045),transparent 40%),
    rgba(0,0,0,.34);
  padding:26px;
  text-align:left;
  transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease;
}

.path-card:hover{
  transform:translateY(-3px);
  border-color:rgba(246,239,227,.42);
  background:
    radial-gradient(circle at 100% 0%,rgba(246,239,227,.07),transparent 40%),
    rgba(255,255,255,.035);
  box-shadow:0 18px 46px rgba(0,0,0,.28);
}

.path-card span{
  display:block;
  color:rgba(246,239,227,.42);
  font-family:var(--aa-mono);
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.62rem;
  margin-bottom:.55rem;
}

.path-card strong{
  font-family:var(--aa-script);
  font-size:clamp(1.45rem,2.1vw,1.9rem);
  font-weight:500;
  line-height:1.1;
  letter-spacing:-.04em;
}

/* SCROLL REVEAL COMPATIBILITY */

.aa-scroll-fade,
.scroll-animate,
.reveal{
  opacity:0;
  transform:translateY(22px);
  transition:opacity 720ms ease, transform 720ms ease;
  transition-delay:calc(var(--aa-delay,0) * 80ms);
}

.aa-scroll-fade.is-visible,
.scroll-animate.in-view,
.reveal.in{
  opacity:1;
  transform:none;
}

.fade-in-up{
  opacity:0;
  transform:translateY(22px);
  animation:aaFadeInUp .8s ease-out forwards;
}

@keyframes aaFadeInUp{
  from{opacity:0;transform:translateY(22px)}
  to{opacity:1;transform:translateY(0)}
}

.delay-1{animation-delay:.16s}.delay-2{animation-delay:.28s}.delay-3{animation-delay:.40s}.delay-4{animation-delay:.52s}.delay-5{animation-delay:.64s}.delay-6{animation-delay:.76s}.delay-7{animation-delay:.88s}.delay-8{animation-delay:1s}.delay-9{animation-delay:1.12s}.delay-10{animation-delay:1.24s}.delay-11{animation-delay:1.36s}.delay-12{animation-delay:1.48s}.delay-13{animation-delay:1.6s}.delay-14{animation-delay:1.72s}.delay-15{animation-delay:1.84s}.delay-16{animation-delay:1.96s}.delay-17{animation-delay:2.08s}.delay-18{animation-delay:2.2s}.delay-19{animation-delay:2.32s}

/* RESPONSIVE */

@media(max-width:980px){
  .core-main-wrap{
    grid-template-columns:1fr;
  }

  .core-sidebar{
    position:relative;
    top:auto;
  }

  .meaning-grid,
  .path-grid{
    grid-template-columns:1fr;
  }

  .core-hero{
    min-height:auto;
    background:
      radial-gradient(circle at 50% 18%,rgba(246,239,227,.065),transparent 38%),
      var(--core-hero-image) center / cover no-repeat,
      linear-gradient(180deg,rgba(3,2,1,.74) 0%,rgba(3,2,1,.84) 45%,#030201 100%);
  }
}

@media(max-width:760px){
  .core-container{
    padding-left:22px;
    padding-right:22px;
  }

  .core-hero{
    padding-top:clamp(88px,18vw,126px);
    padding-bottom:clamp(62px,12vw,92px);
  }

  .core-hero h1{
    font-size:clamp(3.2rem,13.4vw,5.65rem);
    line-height:.88;
    letter-spacing:-.045em;
  }

  .core-hero h1 span{
    font-size:clamp(2.15rem,10.4vw,3.95rem);
    line-height:.82;
  }

  .core-main p,
  .core-step p,
  .meaning-card p,
  .sidebar-block p,
  .core-path-box p{
    font-size:1.05rem!important;
  }

  .core-scripture-box p,
  .core-quote-box p{
    font-size:clamp(1.42rem,7vw,1.9rem)!important;
  }

  .core-main-wrap{
    padding-top:clamp(58px,12vw,82px);
  }

  .core-step{
    grid-template-columns:42px 1fr;
    gap:16px;
  }

  .core-sidebar{
    padding:24px;
  }

  .path-card strong{
    font-size:clamp(1.35rem,7vw,1.75rem);
  }
}

@media(prefers-reduced-motion:reduce){
  .aa-scroll-fade,
  .scroll-animate,
  .reveal,
  .fade-in-up{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
    animation:none!important;
  }
}


/* === Final Hero Spacing + Statement Guardrails === */
.core-hero{
  min-height:78svh;
  padding-top:clamp(84px,8vw,122px);
  padding-bottom:clamp(44px,6vw,82px);
}

/* Keep the hero title formal, but not oversized. */
.core-hero h1{
  font-size:clamp(3.45rem,6.45vw,7.65rem) !important;
  line-height:.86 !important;
  letter-spacing:-.035em !important;
  max-width:1120px !important;
}

.core-hero h1 span{
  font-size:clamp(2.25rem,4.65vw,4.95rem) !important;
  line-height:.86 !important;
  letter-spacing:-.075em !important;
}

/* This is the large body statement — bigger than paragraph text, not poster-size. */
.core-statement{
  font-size:clamp(2.25rem,4.55vw,4.85rem) !important;
  line-height:1.06 !important;
  letter-spacing:-.065em !important;
  max-width:980px !important;
}

/* Hero subtitle stays readable and controlled. */
.core-hero-sub{
  font-family:var(--aa-script, "Cormorant Garamond", Georgia, serif) !important;
  color:rgba(246,239,227,.74) !important;
  font-size:clamp(1.35rem,2.2vw,2.35rem) !important;
  line-height:1.2 !important;
  letter-spacing:-.035em !important;
  font-weight:500 !important;
  max-width:760px !important;
}

@media(max-width:760px){
  .core-hero{
    min-height:72svh;
    padding-top:clamp(74px,16vw,110px);
    padding-bottom:clamp(42px,10vw,74px);
  }

  .core-hero h1{
    font-size:clamp(2.8rem,12.5vw,4.65rem) !important;
    line-height:.9 !important;
  }

  .core-hero h1 span{
    font-size:clamp(2rem,9.5vw,3.35rem) !important;
    line-height:.9 !important;
  }

  .core-hero-sub{
    font-size:clamp(1.25rem,6.2vw,2.05rem) !important;
    line-height:1.18 !important;
  }

  .core-statement{
    font-size:clamp(2rem,8.8vw,3.55rem) !important;
    line-height:1.04 !important;
  }
}

/* === Core Statement — Smaller Balance Fix === */

.core-main .core-statement,
.core-statement{
  font-size:clamp(1.95rem, 3.6vw, 3.85rem) !important;
  line-height:1.12 !important;
  letter-spacing:-.045em !important;
  max-width:900px !important;
  margin-bottom:clamp(24px,3vw,38px) !important;
}