/* ═══════════════════════════════════════════════════════════════════════════
   SCROLL REVEAL
   Sections start hidden and fade up when they enter the viewport.
   The JS adds .is-visible via IntersectionObserver.
   Fully disabled when the user prefers reduced motion.
   ═══════════════════════════════════════════════════════════════════════════ */

@media (prefers-reduced-motion: no-preference) {

	/* Home */
	.home-hero,
	.home-split,
	.approach-section,

	/* Curriculum */
	.curriculum-hero,
	.ci-split,
	.curriculum-testimonial,
	.curriculum-cta,

	/* Maestro */
	.maestro-hero,
	.maestro-assessment,
	.maestro-videos,
	.maestro-testimonial,
	.maestro-cta,

	/* Quality */
	.quality-hero,
	.quality-testimonial,
	.quality-cta,

	/* Changes */
	.changes-hero,
	.changes-cta,

	/* Design */
	.design-hero,
	.design-testimonial,
	.design-cta,

	/* Approach */
	.approach-hero,
	.approach-cta,

	/* Expertise */
	.expertise-hero,
	.expertise-consultants,
	.expertise-book,
	.expertise-cta,

	/* Different by design */
	.different-hero,
	.different-testimonial,
	.different-cta,

	/* Working with us */
	.working-hero,
	.working-cta,

	/* Our schools */
	.schools-hero,
	.schools-grid,
	.schools-profiles,
	.schools-cta,

	/* Case studies */
	.cases-hero,
	.cases-content,
	.cases-cta,

	/* FAQs */
	.faqs-hero,
	.faqs-accordion,
	.faqs-cta,

	/* Enquire */
	.enquire-content,

	/* Join */
	.join-hero,
	.join-benefits,
	.join-options,
	.join-testimonials,
	.join-cta {
		opacity: 0;
		transform: translateY(20px);
		transition: opacity 0.5s ease, transform 0.5s ease;
	}

	/*
	 * Home stacked sections — fade only (no translateY).
	 * These sit flush against non-animated approach-section blocks so a vertical
	 * offset would create a visible gap before .is-visible fires.
	 */
	.logo-ticker,
	.home-testimonials,
	.home-cta {
		opacity: 0;
		transition: opacity 0.6s ease;
	}

	.home-hero.is-visible,
	.home-split.is-visible,
	.approach-section.is-visible,

	.curriculum-hero.is-visible,
	.ci-split.is-visible,
	.curriculum-testimonial.is-visible,
	.curriculum-cta.is-visible,

	.maestro-hero.is-visible,
	.maestro-assessment.is-visible,
	.maestro-videos.is-visible,
	.maestro-testimonial.is-visible,
	.maestro-cta.is-visible,

	.quality-hero.is-visible,
	.quality-testimonial.is-visible,
	.quality-cta.is-visible,

	.changes-hero.is-visible,
	.changes-cta.is-visible,

	.design-hero.is-visible,
	.design-testimonial.is-visible,
	.design-cta.is-visible,

	.approach-hero.is-visible,
	.approach-cta.is-visible,

	.expertise-hero.is-visible,
	.expertise-consultants.is-visible,
	.expertise-book.is-visible,
	.expertise-cta.is-visible,

	.different-hero.is-visible,
	.different-testimonial.is-visible,
	.different-cta.is-visible,

	.working-hero.is-visible,
	.working-cta.is-visible,

	.schools-hero.is-visible,
	.schools-grid.is-visible,
	.schools-profiles.is-visible,
	.schools-cta.is-visible,

	.cases-hero.is-visible,
	.cases-content.is-visible,
	.cases-cta.is-visible,

	.faqs-hero.is-visible,
	.faqs-accordion.is-visible,
	.faqs-cta.is-visible,

	.enquire-content.is-visible,

	.join-hero.is-visible,
	.join-benefits.is-visible,
	.join-options.is-visible,
	.join-testimonials.is-visible,
	.join-cta.is-visible {
		opacity: 1;
		transform: translateY(0);
	}

	/* Fade-only visible states */
	.logo-ticker.is-visible,
	.home-testimonials.is-visible,
	.home-cta.is-visible {
		opacity: 1;
	}

}
