/* =========================================
   PAGE-LOAD TEXT ANIMATIONS
   Animates headings, lead text, eyebrows etc.
   on every page load with a soft stagger.
   ========================================= */

@keyframes pgTextUp {
  from {
    opacity: 0;
    transform: translateY(14px);
    filter: blur(2px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
  }
}

@keyframes pgFadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

/* Apply staggered fade-up to common page-hero elements */
.page-hero .eyebrow,
.page-hero h1,
.page-hero .lead,
.page-hero .crumbs,
.page-hero .page-hero-aside .aside-card,
.hero .hero-pill,
.hero h1,
.hero .lead,
.hero .hero-actions,
.hero .hero-trust,
.m-hero h1,
.m-hero .m-hero-photo,
.m-hero .m-hero-stats,
.m-trust {
  opacity: 0;
  animation: pgTextUp 0.65s cubic-bezier(.2,.8,.3,1) forwards;
}

/* Stagger order on landing hero */
.hero .hero-pill        { animation-delay: 0.05s; }
.hero h1                { animation-delay: 0.12s; }
.hero .lead             { animation-delay: 0.22s; }
.hero .hero-actions     { animation-delay: 0.32s; }
.hero .hero-trust       { animation-delay: 0.42s; }

/* Stagger on inner page hero */
.page-hero .crumbs                       { animation-delay: 0.05s; }
.page-hero .eyebrow                      { animation-delay: 0.10s; }
.page-hero h1                            { animation-delay: 0.18s; }
.page-hero .lead                         { animation-delay: 0.28s; }
.page-hero .page-hero-aside .aside-card:nth-child(1) { animation-delay: 0.36s; }
.page-hero .page-hero-aside .aside-card:nth-child(2) { animation-delay: 0.44s; }
.page-hero .page-hero-aside .aside-card:nth-child(3) { animation-delay: 0.52s; }

/* Mobile hero */
.m-hero h1                  { animation-delay: 0.05s; }
.m-hero .m-hero-photo       { animation-delay: 0.18s; }
.m-hero .m-hero-stats       { animation-delay: 0.32s; }
.m-trust                    { animation-delay: 0.42s; }

/* Word-by-word reveal helper (used on h1 by JS) */
.pg-word {
  display: inline-block;
  opacity: 0;
  transform: translateY(20px);
  filter: blur(4px);
  animation: pgTextUp 0.7s cubic-bezier(.2,.8,.3,1) forwards;
}

/* Suppress animations on splash; let it dismiss first */
.aroham-splash ~ * .page-hero .eyebrow,
.aroham-splash ~ * .page-hero h1 {
  /* Animations still play; splash sits on top */
}

@media (prefers-reduced-motion: reduce) {
  .page-hero .eyebrow,
  .page-hero h1,
  .page-hero .lead,
  .page-hero .crumbs,
  .page-hero .page-hero-aside .aside-card,
  .hero .hero-pill, .hero h1, .hero .lead, .hero .hero-actions, .hero .hero-trust,
  .m-hero h1, .m-hero .m-hero-photo, .m-hero .m-hero-stats, .m-trust,
  .pg-word {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    animation: none !important;
  }
}
