.sytk-animate,
.sytk-studio-heading {
  --sytk-duration: 700ms;
  --sytk-delay: 0ms;
  --sytk-ease: cubic-bezier(.22,.61,.36,1);
}

.sytk-studio-heading,
.sytk-text-inner,
.sytk-reveal-left,
.sytk-reveal-right,
.sytk-mask-up {
  display: inline-block;
}

.sytk-align-left { text-align: left; }
.sytk-align-center { text-align: center; margin-left: auto; margin-right: auto; }
.sytk-align-right { text-align: right; margin-left: auto; }

.sytk-animate {
  opacity: 0;
  will-change: transform, opacity, filter;
  transition:
    transform var(--sytk-duration) var(--sytk-ease),
    opacity var(--sytk-duration) var(--sytk-ease),
    filter var(--sytk-duration) var(--sytk-ease);
  transition-delay: var(--sytk-delay);
}

.sytk-animate.sytk-in,
.sytk-animate[data-sytk-trigger="load"] {
  opacity: 1;
  transform: none;
  filter: none;
}

.sytk-fade-up { transform: translateY(28px); }
.sytk-fade-down { transform: translateY(-28px); }
.sytk-fade-left { transform: translateX(28px); }
.sytk-fade-right { transform: translateX(-28px); }
.sytk-zoom-in-soft { transform: scale(.94); }
.sytk-scale-in { transform: scale(.88); }
.sytk-blur-in { transform: translateY(16px); filter: blur(10px); }

.sytk-reveal-left,
.sytk-reveal-right,
.sytk-mask-up {
  overflow: hidden;
  opacity: 1;
}

.sytk-reveal-left > .sytk-text-inner,
.sytk-reveal-right > .sytk-text-inner,
.sytk-mask-up > .sytk-text-inner {
  display: inline-block;
  opacity: 0;
  transition:
    transform var(--sytk-duration) var(--sytk-ease),
    opacity calc(var(--sytk-duration) * .85) var(--sytk-ease);
  transition-delay: var(--sytk-delay);
  will-change: transform, opacity;
}

.sytk-reveal-left > .sytk-text-inner { transform: translateX(-1.15em); }
.sytk-reveal-right > .sytk-text-inner { transform: translateX(1.15em); }
.sytk-mask-up > .sytk-text-inner { transform: translateY(110%); }

.sytk-reveal-left.sytk-in > .sytk-text-inner,
.sytk-reveal-right.sytk-in > .sytk-text-inner,
.sytk-mask-up.sytk-in > .sytk-text-inner,
.sytk-reveal-left[data-sytk-trigger="load"] > .sytk-text-inner,
.sytk-reveal-right[data-sytk-trigger="load"] > .sytk-text-inner,
.sytk-mask-up[data-sytk-trigger="load"] > .sytk-text-inner {
  transform: none;
  opacity: 1;
}

.sytk-hover-lift,
.sytk-hover-zoom,
.sytk-hover-overlay,
.sytk-hover-glow {
  transition: transform 260ms var(--sytk-ease), box-shadow 260ms var(--sytk-ease), filter 260ms var(--sytk-ease);
}
.sytk-hover-lift:hover { transform: translateY(-4px); }
.sytk-hover-zoom:hover { transform: scale(1.02); }
.sytk-hover-glow:hover { filter: brightness(1.03); box-shadow: 0 12px 30px rgba(0,0,0,.12); }
.sytk-hover-overlay { position: relative; }
.sytk-hover-overlay::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,.16), rgba(0,0,0,0));
  opacity: 0;
  transition: opacity 260ms var(--sytk-ease);
  pointer-events: none;
}
.sytk-hover-overlay:hover::after { opacity: 1; }

.sytk-stagger > * {
  opacity: 0;
  transform: translateY(18px);
  transition: transform 600ms var(--sytk-ease), opacity 600ms var(--sytk-ease);
}
.sytk-stagger.sytk-in > * {
  opacity: 1;
  transform: none;
}
.sytk-stagger.sytk-in > *:nth-child(1) { transition-delay: 0ms; }
.sytk-stagger.sytk-in > *:nth-child(2) { transition-delay: 80ms; }
.sytk-stagger.sytk-in > *:nth-child(3) { transition-delay: 160ms; }
.sytk-stagger.sytk-in > *:nth-child(4) { transition-delay: 240ms; }
.sytk-stagger.sytk-in > *:nth-child(5) { transition-delay: 320ms; }
.sytk-stagger.sytk-in > *:nth-child(6) { transition-delay: 400ms; }
