/* ============ KEYFRAMES ============ */
@keyframes cheqWordIn {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: none; }
}

/* ============ HERO (load-time animations) ============ */

/* H1: pre-hide the container; JS will split it into spans and reveal */
.cheq-anim-ready .section.hero .section__text h1 {
  opacity: 0;
}

/* Per-word spans (created by JS) */
.cheq-anim-ready .section.hero .cheq-word {
  display: block;
  line-height: inherit;
  opacity: 0;
  animation: cheqWordIn 1.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}
.cheq-anim-ready .section.hero .cheq-word--1 { animation-delay: 0.15s; }
.cheq-anim-ready .section.hero .cheq-word--2 { animation-delay: 0.55s; }
.cheq-anim-ready .section.hero .cheq-word--3 { animation-delay: 0.95s; color: #FE0072; }

/* Subtitle, paragraph, button, image — pre-hide + animate on load */
.cheq-anim-ready .section.hero .hero_subtitle,
.cheq-anim-ready .section.hero .section__text > p,
.cheq-anim-ready .section.hero .button.button-gradient,
.cheq-anim-ready .section.hero .hero__main .image {
  opacity: 0;
}
.cheq-anim-ready .section.hero .hero__main .image {
  animation: cheqWordIn 1.4s 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}
.cheq-anim-ready .section.hero .hero_subtitle {
  animation: cheqWordIn 1.3s 1.4s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}
.cheq-anim-ready .section.hero .section__text > p {
  animation: cheqWordIn 1.3s 1.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}
.cheq-anim-ready .section.hero .button.button-gradient {
  animation: cheqWordIn 1s 1.85s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* ============ SCROLL REVEAL PRE-HIDE STATES ============ */

/* Group A — fade up (translateY) */
.cheq-anim-ready .section.rates .single_rate,
.cheq-anim-ready .section.protection_tabs > .container > .section__text,
.cheq-anim-ready .section.protection_tabs .pr_tabs_container,
.cheq-anim-ready .section.trusted.whys.tms .section__text,
.cheq-anim-ready .section.trusted.whys.tms .section__slider,
.cheq-anim-ready .section.trusted_light h2,
.cheq-anim-ready .section.trusted_light .introducing_logos .image,
.cheq-anim-ready .section.ready .section__text h2 {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.85s cubic-bezier(0.16, 1, 0.3, 1),
              transform 0.85s cubic-bezier(0.16, 1, 0.3, 1);
}

/* Group B — slide from left */
.cheq-anim-ready .section.introducing .col-lg-6:first-child .section__text {
	/* .section.powered .col-lg-7 .image — тимчасово вимкнено */
  opacity: 0;
  transform: translateX(-20px);
  transition: opacity 0.85s cubic-bezier(0.16, 1, 0.3, 1),
              transform 0.85s cubic-bezier(0.16, 1, 0.3, 1);
}

/* Group C — slide from right */
.cheq-anim-ready .section.introducing .image-side {
	/* .section.powered .col-lg-5 .section__text — тимчасово вимкнено */
  opacity: 0;
  transform: translateX(20px);
  transition: opacity 0.85s cubic-bezier(0.16, 1, 0.3, 1),
              transform 0.85s cubic-bezier(0.16, 1, 0.3, 1);
}

/* Group D — scale up (final CTA) */
.cheq-anim-ready .section.ready .button.button-gradient {
  opacity: 0;
  transform: scale(0.94) translateY(8px);
  transition: opacity 0.7s cubic-bezier(0.16, 1, 0.3, 1),
              transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);
}

/* ============ REVEAL (JS adds .cheq-shown) ============ */
.cheq-anim-ready .cheq-shown {
  opacity: 1 !important;
  transform: none !important;
}

/* ============ STAGGER DELAYS ============ */
.cheq-anim-ready .cheq-delay-1 { transition-delay: 0.08s; }
.cheq-anim-ready .cheq-delay-2 { transition-delay: 0.16s; }
.cheq-anim-ready .cheq-delay-3 { transition-delay: 0.24s; }
.cheq-anim-ready .cheq-delay-4 { transition-delay: 0.32s; }

/* ============ REDUCED MOTION ============ */
@media (prefers-reduced-motion: reduce) {
  .cheq-anim-ready .section.hero .section__text h1,
  .cheq-anim-ready .section.hero .cheq-word,
  .cheq-anim-ready .section.hero .hero_subtitle,
  .cheq-anim-ready .section.hero .section__text > p,
  .cheq-anim-ready .section.hero .button.button-gradient,
  .cheq-anim-ready .section.hero .hero__main .image,
  .cheq-anim-ready .section.rates .single_rate,
  .cheq-anim-ready .section.protection_tabs > .container > .section__text,
  .cheq-anim-ready .section.protection_tabs .pr_tabs_container,
  .cheq-anim-ready .section.trusted.whys.tms .section__text,
  .cheq-anim-ready .section.trusted.whys.tms .section__slider,
  .cheq-anim-ready .section.trusted_light h2,
  .cheq-anim-ready .section.trusted_light .introducing_logos .image,
  .cheq-anim-ready .section.ready .section__text h2,
  .cheq-anim-ready .section.powered .col-lg-7 .image,
  .cheq-anim-ready .section.introducing .col-lg-6:first-child .section__text,
  .cheq-anim-ready .section.powered .col-lg-5 .section__text,
  .cheq-anim-ready .section.introducing .image-side,
  .cheq-anim-ready .section.ready .button.button-gradient {
    opacity: 1 !important;
    animation: none !important;
    transform: none !important;
    transition: none !important;
  }
}

@media (max-width: 767px) {
  .cheq-anim-ready .section.hero .cheq-word {
    display: inline-block;
		color: #fff;
  }
  .cheq-anim-ready .section.hero .cheq-word:not(:last-child) {
    margin-right: 6px;
  }
}