@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-ivory:#f4f1e8;
  --aa-bone:#f6efe3;

  --aa-muted:rgba(246,239,227,.76);
  --aa-soft:rgba(246,239,227,.62);
  --aa-dim:rgba(246,239,227,.46);
  --aa-faint:rgba(246,239,227,.24);

  --aa-line:rgba(246,239,227,.26);
  --aa-line-strong:rgba(246,239,227,.38);

  --core-warm:#d7c5a3;
  --core-warm-soft:rgba(215,197,163,.88);
  --core-warm-dim:rgba(215,197,163,.58);
  --core-line:rgba(215,197,163,.36);

  --aa-shadow:rgba(0,0,0,.42);

  --aa-max:1560px;
  --core-stack:900px;

  --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(215,197,163,.075), transparent 28%),
    radial-gradient(circle at 16% 38%, rgba(246,239,227,.026), transparent 34%),
    linear-gradient(180deg,#020203 0%,#060504 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(--core-stack),100%);
  margin:0 auto;
  padding-left:clamp(22px,5vw,42px);
  padding-right:clamp(22px,5vw,42px);
}

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

/* HERO */

.core-hero{
  position:relative;
  min-height:76svh;
  display:grid;
  align-items:end;
  padding:clamp(92px,9vw,132px) 0 clamp(42px,5vw,72px);
  isolation:isolate;
  overflow:hidden;
  border-bottom:2px solid rgba(246,239,227,.36);
  background:
    radial-gradient(circle at 68% 24%, rgba(215,197,163,.090), transparent 30%),
    radial-gradient(circle at 18% 58%, rgba(246,239,227,.024), transparent 34%),
    var(--core-hero-image) center right / cover no-repeat,
    linear-gradient(180deg,#020203 0%,#060504 52%,#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,.86), transparent 38%, transparent 66%, rgba(0,0,0,.82)),
    linear-gradient(180deg, rgba(0,0,0,.20), transparent 54%, rgba(0,0,0,.88));
}

.core-hero::after{
  content:"CORE SCROLL";
  position:absolute;
  right:clamp(18px,4vw,72px);
  bottom:clamp(18px,3vw,44px);
  z-index:0;
  color:rgba(215,197,163,.090);
  font-family:var(--aa-display);
  font-size:clamp(3.4rem,10vw,12rem);
  line-height:.8;
  letter-spacing:-.08em;
  white-space:nowrap;
  pointer-events:none;
}

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

.core-kicker,
.core-section-label{
  margin:0 0 16px;
  font-family:var(--aa-mono);
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.17em;
  text-transform:uppercase;
  color:var(--core-warm-soft);
}

.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:var(--core-warm-soft)!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:.58;
}

.core-hero h1{
  margin:0;
  max-width:1120px;
  font-family:var(--aa-display);
  font-weight:500;
  font-size:clamp(3rem,6.4vw,7.4rem);
  line-height:.88;
  letter-spacing:-.04em;
  text-transform:uppercase;
  color:rgba(248,246,240,.97);
  text-shadow:0 20px 56px rgba(0,0,0,.72);
  text-wrap:balance;
}

.core-hero h1 span{
  display:block;
  margin:clamp(4px,.7vw,10px) 0 0;
  font-family:var(--aa-script);
  font-style:italic;
  font-weight:500;
  font-size:clamp(2.1rem,4.4vw,4.8rem);
  line-height:.88;
  letter-spacing:-.075em;
  text-transform:none;
  color:rgba(215,197,163,.90);
  text-shadow:none;
}

.core-hero-rule{
  width:min(460px,42vw);
  height:1px;
  margin:clamp(24px,3vw,34px) 0;
  background:linear-gradient(90deg, rgba(215,197,163,.68), rgba(215,197,163,.18), 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,.76);
}

/* MAIN CENTERED SCROLL LAYOUT */

.core-main-wrap{
  display:block;
  padding:clamp(46px,5vw,76px) 0;
  border-top:2px solid rgba(246,239,227,.24);
  background:
    radial-gradient(circle at 50% 0%, rgba(215,197,163,.050), transparent 34%),
    radial-gradient(circle at 84% 12%, rgba(246,239,227,.018), transparent 32%),
    linear-gradient(180deg,#020203 0%,#050403 48%,#000 100%);
}

.core-main{
  max-width:820px;
  margin:0 auto;
}

.core-section{
  margin:0;
  padding:clamp(30px,4vw,50px) 0;
  border-bottom:2px solid rgba(246,239,227,.24);
}

.core-section:first-child{
  padding-top:0;
}

.core-section:last-child{
  border-bottom:0;
}

/* OPENING */

.core-opening{
  border-left:2px solid rgba(215,197,163,.46);
  padding-left:clamp(18px,2.6vw,28px);
  position:relative;
}

.core-opening::before{
  content:"";
  position:absolute;
  left:-2px;
  top:0;
  width:2px;
  height:42%;
  background:linear-gradient(180deg,rgba(215,197,163,.88),transparent);
  box-shadow:0 0 22px rgba(215,197,163,.12);
}

.core-statement{
  margin:0 0 clamp(22px,3vw,34px);
  max-width:900px;
  font-family:var(--aa-script);
  color:rgba(246,239,227,.84);
  font-size:clamp(1.95rem,3.6vw,3.85rem);
  line-height:1.12;
  letter-spacing:-.045em;
  font-weight:500;
}

/* TYPOGRAPHY */

.core-main h2{
  margin:0 0 18px;
  font-family:var(--aa-script);
  font-size:clamp(2.1rem,3.8vw,3.75rem);
  line-height:1;
  font-weight:500;
  letter-spacing:-.055em;
  color:rgba(248,246,240,.96);
  text-shadow:none;
}

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

.core-main p{
  margin:0 0 1.35rem;
  color:rgba(246,239,227,.72);
  font-size:clamp(1.02rem,1.1vw,1.1rem);
  line-height:1.76;
  font-weight:500;
}

.core-main p:last-child{
  margin-bottom:0;
}

.core-main a,
.core-main a:visited{
  color:rgba(255,255,255,.94);
  text-decoration:none;
  border-bottom:1px solid rgba(215,197,163,.36);
}

.core-main a:hover{
  color:#fff;
  border-bottom-color:rgba(215,197,163,.70);
}

/* FEATURE BOXES */

.core-scripture-box,
.core-quote-box{
  position:relative;
  overflow:hidden;
  border-top:2px solid rgba(246,239,227,.30);
  border-bottom:2px solid rgba(246,239,227,.30);
  border-left:0;
  border-right:0;
  background:
    radial-gradient(circle at 0% 0%,rgba(215,197,163,.070),transparent 38%),
    radial-gradient(circle at 100% 0%,rgba(246,239,227,.026),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.006));
  padding:clamp(24px,3.5vw,38px) 0;
  margin:clamp(28px,4vw,46px) 0;
  box-shadow:none;
}

.core-scripture-box::before,
.core-quote-box::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.10;
  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 16px;
  font-family:var(--aa-script);
  color:rgba(248,246,240,.94);
  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(215,197,163,.86);
  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(30px,4vw,46px) 0;
  color:rgba(215,197,163,.78);
}

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

/* STEPS */

.core-steps{
  display:grid;
  gap:0;
  margin-top:24px;
  border-top:2px solid rgba(246,239,227,.28);
}

.core-step{
  display:grid;
  grid-template-columns:62px 1fr;
  gap:clamp(16px,3vw,28px);
  align-items:start;
  padding:clamp(18px,2.8vw,28px) 0;
  border-bottom:2px solid rgba(246,239,227,.22);
}

.step-num{
  width:auto;
  height:auto;
  border:0;
  border-radius:0;
  display:block;
  color:rgba(215,197,163,.88);
  font-family:var(--aa-mono);
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.10em;
  background:transparent;
  box-shadow:none;
}

.core-step p{
  margin:0;
  font-size:clamp(1rem,1.08vw,1.08rem);
  line-height:1.7;
}

/* MEANING GRID — NOW STACKED ROWS */

.meaning-grid{
  display:block;
  margin-top:28px;
  border-top:2px solid rgba(246,239,227,.28);
}

.meaning-card{
  position:relative;
  overflow:visible;
  border:0;
  border-bottom:2px solid rgba(246,239,227,.22);
  background:transparent;
  padding:clamp(20px,2.8vw,30px) 0;
}

.meaning-card::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:auto;
  width:100%;
  height:1px;
  background:linear-gradient(90deg,rgba(215,197,163,.42),rgba(215,197,163,.08),transparent);
}

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

.meaning-card h3{
  margin:0 0 10px;
  color:rgba(215,197,163,.90);
  font-family:var(--aa-mono);
  text-transform:uppercase;
  letter-spacing:.13em;
  font-size:.72rem;
  font-weight:800;
}

.meaning-card p{
  margin:0;
  font-size:clamp(1rem,1.08vw,1.08rem);
  line-height:1.7;
}

/* SIDEBAR — CONVERTED INTO CENTERED SUPPORT PANEL */

.core-sidebar{
  position:relative;
  top:auto;
  align-self:auto;
  max-width:820px;
  margin:clamp(34px,5vw,58px) auto 0;
  border-top:2px solid rgba(246,239,227,.30);
  border-bottom:2px solid rgba(246,239,227,.30);
  border-left:0;
  border-right:0;
  background:
    radial-gradient(circle at 100% 0%,rgba(215,197,163,.055),transparent 38%),
    linear-gradient(180deg,rgba(255,255,255,.022),rgba(255,255,255,.006));
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  padding:clamp(24px,3.5vw,38px) 0;
  box-shadow:none;
}

.sidebar-block{
  padding:0 0 clamp(18px,2.6vw,26px);
  margin:0 0 clamp(18px,2.6vw,26px);
  border-bottom:2px solid rgba(246,239,227,.18);
}

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

.sidebar-title{
  margin:0 0 12px;
  color:rgba(215,197,163,.88);
  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,.70);
  line-height:1.7;
  font-size:clamp(.98rem,1.04vw,1.06rem);
}

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

/* GUIDED PATH */

.core-path{
  border-top:2px solid rgba(246,239,227,.26);
  padding:clamp(46px,5vw,76px) 0;
  background:
    radial-gradient(circle at 50% 0%,rgba(215,197,163,.055),transparent 36%),
    linear-gradient(180deg,#030201 0%,#000 100%);
}

.core-path-box{
  position:relative;
  overflow:visible;
  max-width:820px;
  margin:0 auto;
  border:0;
  border-top:2px solid rgba(246,239,227,.30);
  border-bottom:2px solid rgba(246,239,227,.30);
  background:transparent;
  padding:clamp(24px,3.5vw,38px) 0;
  text-align:left;
  box-shadow:none;
}

.core-path-box::before{
  display:none;
}

.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(215,197,163,.88);
  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 0 28px;
  max-width:680px;
  color:rgba(246,239,227,.72);
  line-height:1.72;
  font-size:clamp(1.04rem,1.12vw,1.14rem);
}

/* PATH CARDS — CENTERED STACKED ROWS */

.path-grid{
  display:block;
  border-top:2px solid rgba(246,239,227,.28);
}

.path-card{
  display:grid;
  grid-template-columns:78px minmax(0,1fr);
  gap:clamp(16px,3vw,30px);
  text-decoration:none!important;
  color:rgba(248,246,240,.92)!important;
  border:0;
  border-bottom:2px solid rgba(246,239,227,.22);
  background:transparent;
  padding:clamp(20px,2.8vw,30px) 0;
  text-align:left;
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}

.path-card:hover{
  transform:translateX(6px);
  border-bottom-color:rgba(215,197,163,.66);
  background:linear-gradient(90deg, rgba(215,197,163,.045), rgba(215,197,163,0) 70%);
  box-shadow:none;
}

.path-card span{
  display:block;
  color:rgba(215,197,163,.82);
  font-family:var(--aa-mono);
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.62rem;
  margin:0;
}

.path-card strong{
  display:block;
  font-family:var(--aa-script);
  font-size:clamp(1.55rem,2.3vw,2.2rem);
  font-weight:500;
  line-height:1.06;
  letter-spacing:-.045em;
}

/* 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-hero{
    min-height:auto;
    background:
      radial-gradient(circle at 50% 18%,rgba(215,197,163,.075),transparent 38%),
      var(--core-hero-image) center / cover no-repeat,
      linear-gradient(180deg,rgba(3,2,1,.78) 0%,rgba(3,2,1,.88) 45%,#030201 100%);
  }
}

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

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

  .core-hero::after{
    display:none;
  }

  .core-hero h1{
    font-size:clamp(2.8rem,12.5vw,4.65rem)!important;
    line-height:.9!important;
    letter-spacing:-.045em!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-main-wrap{
    padding-top:clamp(42px,10vw,64px);
    padding-bottom:clamp(42px,10vw,64px);
  }

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

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

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

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

  .step-num{
    font-size:.76rem;
  }

  .path-card{
    grid-template-columns:1fr;
    gap:10px;
    padding:24px 0;
  }

  .path-card:hover{
    transform:none;
  }

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

@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;
  }
}

/* === Global Core Scroll Opening Statement Fix — balanced === */

.core-section.core-opening .core-statement{
  font-size:clamp(2.15rem,4.15vw,4.35rem) !important;
  line-height:1.04 !important;
  letter-spacing:-.052em !important;
  max-width:900px !important;
  margin-bottom:clamp(22px,3vw,34px) !important;
  color:rgba(248,246,240,.90) !important;
}

.core-section.core-opening .core-statement br{
  display:block;
}

.core-section.core-opening{
  padding-top:clamp(28px,3.5vw,46px);
  padding-bottom:clamp(28px,3.5vw,46px);
}

@media(max-width:760px){
  .core-section.core-opening .core-statement{
    font-size:clamp(2rem,8.4vw,3.45rem) !important;
    line-height:1.03 !important;
    letter-spacing:-.048em !important;
  }
}

/* === Core Scroll Body Brightness Pass === */

.core-main p,
.core-step p,
.meaning-card p,
.sidebar-block p,
.core-path-box p{
  color:rgba(246,239,227,.82) !important;
  font-weight:500;
}

.core-main h2{
  color:rgba(248,246,240,.98) !important;
}

.core-main h3{
  color:rgba(248,246,240,.96) !important;
}

.core-section-label,
.core-kicker{
  color:rgba(215,197,163,.92) !important;
}

/* Keep quote/scripture text bright but still soft */
.core-scripture-box p,
.core-quote-box p{
  color:rgba(248,246,240,.96) !important;
}

/* Slightly strengthen links inside scroll body */
.core-main a,
.core-main a:visited{
  color:rgba(255,255,255,.96) !important;
  border-bottom-color:rgba(215,197,163,.46) !important;
}