/* ================================================================
   OUR BIRTH TEMPLE — Luxury Polish Pass
   Loads after main.css + visual.css.
   Pure refinement. Zero layout changes.
   ================================================================ */


/* ════════════════════════════════════════════════════════════════
   1. HERO IMAGE — remove all box rings, pure glow only
   ════════════════════════════════════════════════════════════════ */

/* Kill the multi-ring box-shadow chain from visual.css */
.hero__img-frame {
  border: none;
  box-shadow:
    0 0 56px  rgba(194,137,106,0.28),
    0 0 120px rgba(237,217,184,0.10),
    0 28px 80px rgba(0,0,0,0.32);
  /* Keep the organic oval shape from main.css — just remove the box */
}
/* Softer bottom vignette — more integrated */
.hero__img-frame::after {
  background: linear-gradient(
    to bottom,
    transparent 50%,
    rgba(60,15,30,0.22) 100%
  );
}
/* Ambient glow around image — no hard edge */
.hero__image::before {
  inset: -48px;
  background: radial-gradient(ellipse at 50% 55%,
    rgba(210,140,110,0.22) 0%,
    rgba(237,217,184,0.10) 40%,
    transparent 68%);
}
/* Mobile — tighter glow */
@media (max-width: 639px) {
  .hero__img-frame {
    box-shadow:
      0 0 40px rgba(194,137,106,0.22),
      0 0 80px rgba(237,217,184,0.08),
      0 20px 56px rgba(0,0,0,0.28);
  }
  .hero__image::before { inset: -28px; }
}
/* Desktop — wider ambient pool */
@media (min-width: 960px) {
  .hero__img-frame {
    box-shadow:
      0 0 72px  rgba(194,137,106,0.30),
      0 0 160px rgba(237,217,184,0.10),
      0 36px 100px rgba(0,0,0,0.36);
  }
  .hero__image::before {
    inset: -64px;
    background: radial-gradient(ellipse at 50% 55%,
      rgba(210,140,110,0.26) 0%,
      rgba(237,217,184,0.10) 38%,
      transparent 65%);
  }
}


/* ════════════════════════════════════════════════════════════════
   2. BUTTONS — luxury portal system, full redesign
   ════════════════════════════════════════════════════════════════ */

.btn {
  /* More breathing room */
  padding: 16px 38px;
  min-height: 56px;
  border-radius: 100px;
  /* Refined type */
  font-size: 0.60rem;
  letter-spacing: 0.26em;
  font-weight: 700;
  /* Smooth spring */
  transition:
    background   0.32s ease,
    box-shadow   0.32s ease,
    transform    0.28s cubic-bezier(0.34, 1.56, 0.64, 1),
    border-color 0.24s ease,
    color        0.24s ease;
}
.btn:hover { transform: translateY(-4px) scale(1.012); }
.btn:active { transform: translateY(-1px) scale(0.998); transition-duration: 0.10s; }

/* Shimmer layer — all buttons */
.btn::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(
    135deg,
    rgba(255,255,255,0.13) 0%,
    rgba(255,255,255,0.04) 45%,
    transparent 55%
  );
  border-radius: inherit;
  pointer-events: none;
  transition: opacity 0.28s ease;
}
.btn:hover::before { opacity: 0.7; }

/* Primary — rose→burgundy gradient portal */
.btn-primary {
  background: linear-gradient(148deg,
    #a83d58 0%,
    #7a2b40 45%,
    #5a1828 100%);
  color: #fdf4ee;
  border: 1px solid rgba(122,43,64,0.25);
  box-shadow:
    0 2px 0   rgba(255,255,255,0.06) inset,
    0 -1px 0  rgba(0,0,0,0.20) inset,
    0 4px 20px rgba(122,43,64,0.28),
    0 1px 4px  rgba(0,0,0,0.14);
}
.btn-primary:hover {
  background: linear-gradient(148deg,
    #c04d6a 0%,
    #8f3050 45%,
    #6b2035 100%);
  box-shadow:
    0 2px 0   rgba(255,255,255,0.08) inset,
    0 -1px 0  rgba(0,0,0,0.22) inset,
    0 10px 36px rgba(122,43,64,0.36),
    0 2px 8px   rgba(0,0,0,0.18),
    0 0  28px  rgba(168,61,88,0.20);
  border-color: rgba(122,43,64,0.15);
  color: #fff;
}

/* Outline — soft translucent with rose-gold border */
.btn-outline {
  background: rgba(255,252,249,0.55);
  color: #7a2b40;
  border: 1.5px solid rgba(194,137,106,0.42);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.55),
    0 2px 12px rgba(194,137,106,0.08);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
.btn-outline:hover {
  background: linear-gradient(148deg, #a83d58 0%, #7a2b40 55%, #5a1828 100%);
  color: #fdf4ee;
  border-color: transparent;
  box-shadow:
    0 2px 0   rgba(255,255,255,0.06) inset,
    0 8px 28px rgba(122,43,64,0.30),
    0 0  20px  rgba(168,61,88,0.16);
}

/* Ghost — on dark sections */
.btn-ghost {
  background: rgba(255,250,245,0.10);
  color: rgba(255,248,242,0.92);
  border: 1.5px solid rgba(237,217,184,0.42);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.10),
    0 2px 12px rgba(0,0,0,0.12);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.btn-ghost:hover {
  background: rgba(255,250,245,0.18);
  border-color: rgba(237,217,184,0.65);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.14),
    0 8px 28px rgba(0,0,0,0.18),
    0 0  28px rgba(237,217,184,0.16);
  color: #fff;
}

/* Full-width override — ensure height is maintained */
.btn.btn-full { min-height: 56px; }


/* ════════════════════════════════════════════════════════════════
   3. GLOBAL SPACING — more breathing room
   ════════════════════════════════════════════════════════════════ */

/* Section padding — slightly more generous */
.section { padding: calc(var(--section-y) * 1.1) 0; }

/* Header blocks — more air above h2 */
.offerings__header,
.testimonials__heading,
.hathora__header { margin-bottom: 56px; }

/* Offering cards — more internal padding */
.ocard { padding: 28px 26px; gap: 14px; }

/* Testimonial cards */
.tcard { padding: 36px 30px; }

/* Quote mark — larger, more expressive */
.tcard__quote {
  font-size: 3.6rem;
  line-height: 0.8;
  margin-bottom: 8px;
}

/* Community values — more padding */
.cvalue { padding: 20px 16px; }

/* Stats — more comfortable */
.cstat { padding: 22px 24px; }

/* Mission quote — more generous */
.mission__quote { padding: 20px 24px; margin-top: 28px; }

/* Footer breathing */
footer { padding: 88px 0 40px; }


/* ════════════════════════════════════════════════════════════════
   4. TYPOGRAPHY — editorial polish
   ════════════════════════════════════════════════════════════════ */

/* Refined line heights */
h1 { line-height: 1.00; letter-spacing: -0.02em; }
h2 { line-height: 1.08; letter-spacing: -0.01em; }
h3 { line-height: 1.12; letter-spacing:  0.00em; }
p  { line-height: 1.82; }

/* Hero title — maximum impact */
.hero__title {
  letter-spacing: -0.02em;
  line-height: 1.00;
}

/* Eyebrow / label — more air */
.hero__eyebrow { letter-spacing: 0.35em; margin-bottom: 14px; }
.label { letter-spacing: 0.32em; margin-bottom: 14px; }

/* Subheads — slightly more open */
.hero__subtitle   { line-height: 1.78; }
.hero__body       { line-height: 1.86; font-size: 0.90rem; }
.offerings__sub   { line-height: 1.78; }
.ocard__calling   { line-height: 1.55; font-size: 0.82rem; }
.ocard__desc      { line-height: 1.76; }
.tcard__text      { line-height: 1.82; }
.mission__text p,
.about__text p,
.philosophy__text p { line-height: 1.86; font-size: 0.95rem; }

/* Pull quotes — slightly larger */
.mission__quote p,
.philosophy__pullquote p { font-size: 1.00rem; line-height: 1.70; }

/* Song desc */
.song__desc { line-height: 1.68; font-size: 0.84rem; }

/* Footer brand text */
.footer__brand-text { line-height: 1.72; font-size: 0.86rem; }


/* ════════════════════════════════════════════════════════════════
   5. COLOR + LIGHT — richer luminosity
   ════════════════════════════════════════════════════════════════ */

/* Hero gradient — lighter top edge for luminosity */
.hero {
  background: linear-gradient(152deg,
    #2a0810 0%,
    #5c1828 20%,
    #7a2b40 42%,
    #9a3d58 62%,
    #b86878 78%,
    #d09090 92%,
    #e0b0a8 100%);
}
/* Stronger radial light bloom at top-right */
.hero::before {
  background:
    radial-gradient(ellipse at 78% 12%, rgba(255,230,215,0.28) 0%, transparent 46%),
    radial-gradient(ellipse at 12% 88%, rgba(237,200,170,0.12) 0%, transparent 44%),
    radial-gradient(ellipse at 50% 50%, rgba(201,140,110,0.06) 0%, transparent 68%);
}

/* Womb section — lighter, more rose */
.womb {
  background: linear-gradient(168deg,
    #b06078 0%,
    #9a3d58 25%,
    #7a2b40 55%,
    #5c1828 100%);
}
/* Womb card — more luminous glass */
.womb__card {
  background: rgba(255,250,246,0.09);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.10),
    inset 0 -1px 0 rgba(0,0,0,0.06),
    0 28px 72px rgba(0,0,0,0.22);
}

/* Offerings section — brighter, more champagne */
.offerings {
  background: linear-gradient(172deg,
    #fefcf9 0%,
    #fbf1e6 30%,
    #f7ece0 60%,
    #f4e8d8 100%);
}

/* Mission — cleaner ivory */
.mission { background: linear-gradient(172deg, #fefaf6 0%, #f8f0e6 50%, #f4ebe0 100%); }

/* Testimonials — warm blush */
.testimonials {
  background: linear-gradient(172deg, #fdf6ee 0%, #f9f0e8 40%, #fdfaf6 100%);
}

/* Philosophy — deeper blush band */
.philosophy {
  background: linear-gradient(170deg,
    #faf4ed 0%,
    #f5e6d4 30%,
    #efddcc 55%,
    #f7ede0 80%,
    #faf5ed 100%);
}

/* About — clean warm white */
.about { background: linear-gradient(172deg, #fefcf9 0%, #faf4ec 50%, #fef9f5 100%); }

/* Book — warm champagne */
.book {
  background: linear-gradient(172deg,
    #f8ece0 0%,
    #f5e6d6 35%,
    #f9f1e8 70%,
    #fdf7f0 100%);
}

/* Book cover — richer depth */
.book__cover {
  background: linear-gradient(148deg,
    #200810 0%,
    #3d1020 25%,
    #5c1828 50%,
    #7a2b40 72%,
    #8a3050 90%,
    #6a2038 100%);
  box-shadow:
    18px 24px 64px rgba(0,0,0,0.40),
    0 0 80px rgba(194,137,106,0.24),
    -4px -4px 24px rgba(255,215,190,0.10),
    inset 0 1px 0 rgba(255,255,255,0.06),
    inset 0 -1px 0 rgba(0,0,0,0.20);
}

/* Community — richer wine depth */
.community {
  background: linear-gradient(152deg,
    #1a0610 0%,
    #2c0d1a 20%,
    #4a1525 45%,
    #6b2035 65%,
    #8a3454 82%,
    #a04868 100%);
}

/* HATHORA — near-black velvet with bloom */
.hathora {
  background: linear-gradient(152deg,
    #0e030a 0%,
    #1e0610 18%,
    #3a0f1c 40%,
    #5c1828 60%,
    #7a2b40 78%,
    #8a3454 100%);
}
.hathora__before,
.hathora::before {
  background:
    radial-gradient(ellipse at 65% 12%, rgba(255,215,195,0.16) 0%, transparent 50%),
    radial-gradient(ellipse at 35% 88%, rgba(194,137,106,0.09) 0%, transparent 46%);
}

/* Message — deep bloom */
.message {
  background: linear-gradient(152deg,
    #1a0610 0%,
    #3a0f1c 28%,
    #5c1828 52%,
    #7a2b40 72%,
    #9a3d58 88%,
    #b05570 100%);
}
.message::before {
  background:
    radial-gradient(ellipse at 50% 25%, rgba(237,200,170,0.12) 0%, transparent 52%),
    radial-gradient(ellipse at 50% 95%, rgba(194,137,106,0.08) 0%, transparent 42%);
}


/* ════════════════════════════════════════════════════════════════
   6. MICRO-INTERACTIONS — subtle, high-end
   ════════════════════════════════════════════════════════════════ */

/* Nav links — underline slide */
.nav__links a {
  position: relative;
  padding-bottom: 2px;
}
.nav__links a::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0;
  width: 0; height: 1px;
  background: linear-gradient(90deg, var(--c-rose-gold), transparent);
  transition: width 0.28s ease;
}
.nav__links a:hover::after { width: 100%; }

/* Tcard hover — lift + soft shadow */
.tcard {
  transition: transform 0.32s cubic-bezier(0.34, 1.56, 0.64, 1),
              box-shadow 0.32s ease;
}
.tcard:hover {
  transform: translateY(-6px);
  box-shadow:
    0 12px 44px rgba(122,43,64,0.14),
    0 4px 16px rgba(194,137,106,0.10);
}

/* Tag hover */
.tag {
  transition: background 0.22s ease, color 0.22s ease, transform 0.22s ease;
  cursor: default;
}
.tag:hover {
  background: rgba(122,43,64,0.10);
  transform: translateY(-1px);
}

/* Mission/philosophy quotes — hover lift */
.mission__quote,
.philosophy__pullquote {
  transition: transform 0.28s ease, box-shadow 0.28s ease;
}
.mission__quote:hover,
.philosophy__pullquote:hover {
  transform: translateX(4px);
  box-shadow:
    inset 0 0 0 1px rgba(194,137,106,0.14),
    0 4px 20px rgba(194,137,106,0.10);
}

/* Song cards */
.song {
  transition: transform 0.32s cubic-bezier(0.34, 1.56, 0.64, 1),
              box-shadow 0.32s ease,
              background 0.28s ease;
}

/* Cvalue hover */
.cvalue {
  transition: background 0.26s ease, transform 0.26s ease, box-shadow 0.26s ease;
}
.cvalue:hover {
  background: rgba(255,248,242,0.12);
  transform: translateY(-3px);
  box-shadow: 0 6px 24px rgba(0,0,0,0.12);
}

/* Footer links */
.footer__links a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: color 0.22s ease, transform 0.22s ease;
}
.footer__links a:hover {
  color: rgba(237,217,184,0.90);
  transform: translateX(3px);
}

/* Mobile menu links — scale on tap */
.nav__mobile a {
  transition: color 0.20s ease, transform 0.20s ease;
}
.nav__mobile a:hover { transform: scale(1.02); }


/* ════════════════════════════════════════════════════════════════
   7. CONSISTENCY — unified border radii + shadow language
   ════════════════════════════════════════════════════════════════ */

/* All cards same radius */
.ocard        { border-radius: 32px; }
.tcard        { border-radius: 28px; }
.cvalue       { border-radius: 20px; }
.cstat        { border-radius: 24px; }
.song         { border-radius: 28px; }
.hathora__hathor { border-radius: 24px; }
.womb__card   { border-radius: 48px; }
.mission__quote  { border-radius: 0 24px 24px 0; }
.philosophy__pullquote { border-radius: 0 24px 24px 0; }

/* All pill badges uniform */
.about__badge   { border-radius: 18px; }
.womb__badge    { border-radius: var(--r-pill); }
.tag            { border-radius: var(--r-pill); }

/* Image rings — consistent pearl offset */
.mission__img-wrap {
  box-shadow:
    0 0 0 10px rgba(250,242,234,0.82),
    0 0 0 11px rgba(194,137,106,0.18),
    0 0 0 22px rgba(194,137,106,0.05),
    0 0 50px rgba(194,137,106,0.18);
  border: none;
}
.about__img-wrap,
.philosophy__img-wrap {
  box-shadow:
    0 0 0 10px rgba(250,242,234,0.82),
    0 0 0 11px rgba(194,137,106,0.16),
    0 0 0 24px rgba(194,137,106,0.05),
    0 0 56px rgba(194,137,106,0.16);
  border: none;
}

/* Divider — one system everywhere */
.divider {
  width: 52px;
  height: 1.5px;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(194,137,106,0.45) 20%,
    rgba(237,217,184,0.80) 50%,
    rgba(194,137,106,0.45) 80%,
    transparent 100%);
  margin: 20px auto;
}
.divider--left { margin-left: 0; }


/* ════════════════════════════════════════════════════════════════
   8. MOBILE PERFECTION — thumb-friendly, luxurious
   ════════════════════════════════════════════════════════════════ */

@media (max-width: 639px) {

  /* Buttons — full-width, min 56px tap target */
  .hero__btns .btn { min-height: 56px; padding: 16px 28px; }

  /* Ocard — more generous */
  .ocard { padding: 26px 22px; border-radius: 28px; gap: 12px; }

  /* Tcard — comfortable */
  .tcard { padding: 28px 22px; border-radius: 24px; }

  /* Womb card — breathable */
  .womb__card { border-radius: 36px; padding: 44px 24px; }

  /* Song */
  .song { border-radius: 24px; }

  /* Community values — single col already, more pad */
  .cvalue { padding: 18px 14px; border-radius: 18px; }
  .cstat  { padding: 18px 18px; border-radius: 20px; }

  /* Typography scale for mobile */
  .hero__title { font-size: clamp(2.6rem, 10.5vw, 3.8rem); line-height: 1.00; }
  .hero__subtitle { font-size: 0.95rem; line-height: 1.76; }
  .hero__body { font-size: 0.88rem; }
  .ocard__title { font-size: clamp(1.45rem, 5.5vw, 1.8rem); }
  .ocard__calling { font-size: 0.80rem; }
  .tcard__text { font-size: 0.90rem; }
  .mission__text p, .about__text p, .philosophy__text p { font-size: 0.92rem; }

  /* Disable hover transforms on mobile — touch only */
  .tcard:hover { transform: none; }
  .ocard:hover { transform: none; }
  .song:hover  { transform: none; }
  .cvalue:hover { transform: none; }
  .mission__quote:hover, .philosophy__pullquote:hover { transform: none; }
  .footer__links a:hover { transform: none; }
}


/* ════════════════════════════════════════════════════════════════
   9. DESKTOP REFINEMENTS — more refined at wide viewports
   ════════════════════════════════════════════════════════════════ */

@media (min-width: 960px) {

  /* Offering rows — refined hover */
  .ocard:hover {
    background: linear-gradient(135deg,
      rgba(194,137,106,0.05) 0%,
      rgba(237,217,184,0.03) 100%);
    border-radius: 20px;
    transform: none;
    box-shadow: none;
  }

  /* Book cover — even richer */
  .book__cover {
    box-shadow:
      20px 28px 72px rgba(0,0,0,0.44),
      0 0 100px rgba(194,137,106,0.26),
      -6px -6px 28px rgba(255,215,190,0.10),
      inset 0 1px 0 rgba(255,255,255,0.07),
      inset 0 -1px 0 rgba(0,0,0,0.22);
  }

  /* Nav logo — slightly larger on desktop */
  .nav__logo { font-size: 0.68rem; letter-spacing: 0.26em; }

  /* Hero title desktop — maximum weight */
  .hero__title { font-size: clamp(3.5rem, 6vw, 5.5rem); }

  /* HATHORA name — full gradient shimmer */
  .hathora__name {
    font-size: clamp(4rem, 10vw, 8rem);
    letter-spacing: 0.18em;
  }

  /* Testimonials — subtle card lift on desktop */
  .tcard:hover {
    transform: translateY(-6px);
    box-shadow:
      0 16px 56px rgba(122,43,64,0.14),
      0 4px 20px rgba(194,137,106,0.10),
      0 0 32px rgba(194,137,106,0.06);
  }

  /* Song hover — richer */
  .song:hover {
    background: rgba(255,248,242,0.10);
    transform: translateY(-6px);
    box-shadow:
      0 12px 40px rgba(0,0,0,0.28),
      0 0 30px rgba(194,137,106,0.14);
  }

  /* Community value hover */
  .cvalue:hover {
    background: rgba(255,248,242,0.12);
    transform: translateY(-4px);
    box-shadow: 0 8px 28px rgba(0,0,0,0.16);
  }

  /* Mission quote hover */
  .mission__quote:hover,
  .philosophy__pullquote:hover {
    transform: translateX(6px);
  }
}


/* ════════════════════════════════════════════════════════════════
   10. WOMB FORM — premium input polish
   ════════════════════════════════════════════════════════════════ */

.womb__input {
  height: 56px;
  font-size: 0.88rem;
  letter-spacing: 0.02em;
  background: rgba(255,252,249,0.94);
  border: 1px solid rgba(237,217,184,0.30);
  border-radius: 100px;
  box-shadow:
    inset 0 2px 6px rgba(0,0,0,0.05),
    inset 0 -1px 0 rgba(255,255,255,0.50),
    0 1px 0 rgba(255,255,255,0.60);
  transition: all 0.26s ease;
}
.womb__input:focus {
  background: rgba(255,253,251,0.98);
  border-color: rgba(237,217,184,0.65);
  box-shadow:
    inset 0 2px 6px rgba(0,0,0,0.04),
    0 0 0 3px rgba(237,217,184,0.18),
    0 1px 0 rgba(255,255,255,0.60);
  outline: none;
}
.womb__submit {
  height: 56px;
  font-size: 0.62rem;
  letter-spacing: 0.26em;
  background: linear-gradient(135deg,
    rgba(240,222,182,0.95) 0%,
    rgba(225,198,150,0.92) 100%);
  border-radius: 100px;
  box-shadow:
    0 2px 0 rgba(255,255,255,0.30) inset,
    0 -1px 0 rgba(0,0,0,0.08) inset,
    0 6px 20px rgba(0,0,0,0.12);
  color: #3a1a14;
  transition: all 0.30s ease;
}
.womb__submit:hover {
  background: linear-gradient(135deg,
    rgba(245,230,192,0.98) 0%,
    rgba(228,200,152,0.95) 100%);
  transform: translateY(-4px) scale(1.010);
  box-shadow:
    0 2px 0 rgba(255,255,255,0.35) inset,
    0 -1px 0 rgba(0,0,0,0.10) inset,
    0 12px 32px rgba(0,0,0,0.16);
}


/* ════════════════════════════════════════════════════════════════
   11. FOOTER NL FORM — matches womb form quality
   ════════════════════════════════════════════════════════════════ */

.footer__nl-input {
  height: 52px;
  border-radius: 100px;
  border: 1px solid rgba(237,217,184,0.16);
  background: rgba(255,248,242,0.07);
  box-shadow: inset 0 2px 4px rgba(0,0,0,0.10);
  transition: all 0.24s ease;
}
.footer__nl-input:focus {
  border-color: rgba(237,217,184,0.38);
  background: rgba(255,248,242,0.10);
  outline: none;
  box-shadow:
    inset 0 2px 4px rgba(0,0,0,0.08),
    0 0 0 3px rgba(237,217,184,0.10);
}
.footer__nl-btn {
  height: 52px;
  border-radius: 100px;
  font-size: 0.60rem;
  letter-spacing: 0.24em;
  background: linear-gradient(135deg,
    rgba(237,217,184,0.88) 0%,
    rgba(218,192,148,0.88) 100%);
  box-shadow:
    0 2px 0 rgba(255,255,255,0.25) inset,
    0 4px 16px rgba(0,0,0,0.18);
  color: #2c1a15;
  transition: all 0.28s ease;
}
.footer__nl-btn:hover {
  background: linear-gradient(135deg, #edd9b8 0%, #ddc090 100%);
  transform: translateY(-2px);
  box-shadow:
    0 2px 0 rgba(255,255,255,0.28) inset,
    0 8px 24px rgba(0,0,0,0.22);
}


/* ════════════════════════════════════════════════════════════════
   12. HATHORA NAME — more luminous gradient
   ════════════════════════════════════════════════════════════════ */
.hathora__name {
  background: linear-gradient(135deg,
    #fff 0%,
    rgba(240,220,200,0.95) 35%,
    rgba(220,175,140,0.90) 65%,
    rgba(194,137,106,0.85) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-shadow: none;
}


/* ════════════════════════════════════════════════════════════════
   13. SCROLL REVEAL — spring physics
   ════════════════════════════════════════════════════════════════ */
.reveal {
  opacity: 0;
  transform: translateY(18px);
  transition:
    opacity  0.80s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.80s cubic-bezier(0.22, 1, 0.36, 1);
}
.reveal.visible { opacity: 1; transform: translateY(0); }
.reveal.d1 { transition-delay: 0.08s; }
.reveal.d2 { transition-delay: 0.16s; }
.reveal.d3 { transition-delay: 0.26s; }
.reveal.d4 { transition-delay: 0.36s; }


/* ════════════════════════════════════════════════════════════════
   14. SACRED GEOMETRY — section mandala glows
   Now using ::before pseudo-elements cleanly
   ════════════════════════════════════════════════════════════════ */

/* Womb section — top radial bloom */
.womb { position: relative; }
.womb::after {
  content: '';
  position: absolute;
  top: -60px; left: 50%;
  transform: translateX(-50%);
  width: 560px; height: 560px;
  background: radial-gradient(ellipse,
    rgba(237,217,184,0.12) 0%,
    rgba(194,137,106,0.06) 35%,
    transparent 65%);
  pointer-events: none;
  z-index: 0;
}
.womb .container { position: relative; z-index: 1; }

/* Message — bottom mandala */
.message { position: relative; overflow: hidden; }
.message::after {
  content: '';
  position: absolute;
  bottom: -80px; left: 50%;
  transform: translateX(-50%);
  width: 600px; height: 600px;
  background: radial-gradient(ellipse,
    rgba(237,217,184,0.10) 0%,
    rgba(194,137,106,0.05) 40%,
    transparent 65%);
  pointer-events: none;
  z-index: 0;
}
.message .container { position: relative; z-index: 1; }

/* HATHORA — top-right bloom */
.hathora { overflow: hidden; }
.hathora::after {
  content: '';
  position: absolute;
  top: -40px; right: -80px;
  width: 480px; height: 480px;
  background: radial-gradient(ellipse,
    rgba(255,215,195,0.12) 0%,
    rgba(194,137,106,0.06) 40%,
    transparent 65%);
  pointer-events: none;
  z-index: 0;
}
.hathora .container { position: relative; z-index: 1; }

/* Community — bottom-left bloom */
.community { overflow: hidden; }
.community::after {
  content: '';
  position: absolute;
  bottom: -60px; left: -60px;
  width: 500px; height: 500px;
  background: radial-gradient(ellipse,
    rgba(237,217,184,0.08) 0%,
    rgba(194,137,106,0.04) 40%,
    transparent 65%);
  pointer-events: none;
  z-index: 0;
}
.community .container { position: relative; z-index: 1; }
