/* ============================================================
   MITOVSKA HEALTH — Animations
   "The High-Trust Professional"

   NOTE: All reveal/stagger hiding is handled by GSAP in JS.
   No opacity:0 in CSS — this prevents the invisible-content bug.
   ============================================================ */

/* ── Float animation for badge ────────────────────────────────── */
@keyframes mh-float {
  0%, 100% { transform: translateY(0); }
  50%      { transform: translateY(-10px); }
}

.mh-hero__badge {
  animation: mh-float 4.5s ease-in-out infinite;
  animation-delay: 2s;
}

/* ── Counter glow effect ──────────────────────────────────────── */
.mh-trust__num.is-counted::after {
  animation: mh-glow-in .8s ease-out forwards;
}

@keyframes mh-glow-in {
  from { opacity: 0; transform: scale(.6); }
  to   { opacity: 1; transform: scale(1); }
}

/* ── Gradient shimmer on hero label ───────────────────────────── */
@keyframes mh-shimmer {
  0%   { background-position: -200% center; }
  100% { background-position: 200% center; }
}

.mh-hero__label {
  background: linear-gradient(
    90deg,
    var(--teal-light) 0%,
    var(--gold-light) 50%,
    var(--teal-light) 100%
  );
  background-size: 200% auto;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: mh-shimmer 5s linear infinite;
  animation-delay: 2s;
}
.mh-hero__label::before {
  -webkit-text-fill-color: initial;
  background-clip: initial;
  -webkit-background-clip: initial;
}

/* ── Line grow animation ──────────────────────────────────────── */
@keyframes mh-line-grow {
  from { transform: scaleY(0); }
  to   { transform: scaleY(1); }
}

.mh-hero__photo-accent {
  transform-origin: top;
  animation: mh-line-grow 1.2s ease-out 1.4s both;
}

/* ── Ring expand (hero) ───────────────────────────────────────── */
@keyframes mh-ring-expand {
  from { transform: scale(.8); opacity: 0; }
  to   { transform: scale(1);   opacity: 1; }
}

.mh-hero__ring--1 { animation: mh-ring-expand 1.4s ease-out .3s both; }
.mh-hero__ring--2 { animation: mh-ring-expand 1.7s ease-out .5s both; }
.mh-hero__ring--3 { animation: mh-ring-expand 2s   ease-out .7s both; }

/* ── Why-card hover glow ─────────────────────────────────────── */
.mh-why-card__icon::after {
  content: '';
  position: absolute;
  inset: -4px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(27,122,138,.15), transparent 70%);
  opacity: 0;
  transition: opacity var(--transition);
}
.mh-why-card:hover .mh-why-card__icon::after { opacity: 1; }

/* ── Hero photo orbit rotation ────────────────────────────────── */
@keyframes mh-orbit-rotate {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}

.mh-hero__photo-orbit {
  animation: mh-orbit-rotate 30s linear infinite;
}
.mh-hero__photo-orbit--2 {
  animation: mh-orbit-rotate 45s linear infinite reverse;
}

.mh-hero__photo-orbit::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--gold);
  opacity: .5;
}

.mh-hero__photo-orbit--2::before {
  background: var(--teal-light);
  width: 6px;
  height: 6px;
  top: auto;
  bottom: 10%;
  left: 5%;
  opacity: .4;
}

/* ── Smooth section transitions ───────────────────────────────── */
.mh-section {
  transition: opacity .8s ease;
}

/* ── Preloader pulse ──────────────────────────────────────────── */
@keyframes mh-preloader-pulse {
  0%, 100% { transform: scale(1); opacity: .5; }
  50%      { transform: scale(1.15); opacity: 1; }
}

/* ── Contact item icon hover ──────────────────────────────────── */
.mh-contact__item-icon {
  transition: all var(--transition);
}

/* ── Service card icon pulse (kept for future use) ────────────── */
@keyframes mh-icon-pulse {
  0%, 100% { opacity: 0; transform: scale(1); }
  50%      { opacity: .35; transform: scale(1.18); }
}

/* ── Reduced motion ──────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
