[class*="has-anim-"] {
  opacity: 0;
  will-change: opacity, transform;
}

.has-anim {
  animation-delay: var(--tiko-anim-delay, 0ms);
  animation-duration: var(--tiko-anim-duration, 800ms);
  animation-fill-mode: both;
  animation-timing-function: ease;
  transition: opacity var(--tiko-anim-duration, 800ms) ease;
}

.has-anim-play-pulse svg {
  opacity: 0;
  transform: scale(0.85);
  transform-origin: center;
  will-change: transform, opacity;
}

.has-anim-play-pulse.is-animating svg {
  animation: tiko-play-pulse-smooth var(--tiko-anim-duration, 1600ms) linear infinite;
  animation-delay: var(--tiko-anim-delay, 0ms);
}

.has-anim-play-pulse.is-animating[style*="--tiko-anim-total-duration"] svg {
  animation-iteration-count: calc(var(--tiko-anim-total-duration, 0ms) / var(--tiko-anim-duration, 1600ms));
  animation-fill-mode: forwards;
  opacity: 1;
  transform: scale(1);
}

.has-anim-arrow-nudge {
  display: inline-block;
  transform-origin: center;
  will-change: transform;
}

.has-anim-arrow-nudge.is-animating {
  animation: tiko-arrow-nudge-smooth var(--tiko-anim-duration, 800ms) ease-in-out infinite;
  animation-delay: var(--tiko-anim-delay, 0ms);
}

.has-anim-arrow-nudge.is-animating[style*="--tiko-anim-total-duration"] {
  animation-iteration-count: calc(var(--tiko-anim-total-duration, 0ms) / var(--tiko-anim-duration, 800ms));
  animation-fill-mode: forwards;
}

.has-anim.is-animating {
  opacity: 1;
}

.has-anim-fade-in.is-animating {
  animation-name: tiko-fade-in;
}

.has-anim-slide-up {
  transform: translateY(24px);
}

.has-anim-slide-up.is-animating {
  animation-name: tiko-slide-up;
}

.has-anim-slide-down {
  transform: translateY(-24px);
}

.has-anim-slide-down.is-animating {
  animation-name: tiko-slide-down;
}

.has-anim-slide-left {
  transform: translateX(24px);
}

.has-anim-slide-left.is-animating {
  animation-name: tiko-slide-left;
}

.has-anim-slide-right {
  transform: translateX(-24px);
}

.has-anim-slide-right.is-animating {
  animation-name: tiko-slide-right;
}

.has-anim-scale-in {
  transform: scale(0.9);
}

.has-anim-scale-in.is-animating {
  animation-name: tiko-scale-in;
}

.has-anim-droplet a,
.has-anim-droplet button {
  position: relative;
  isolation: isolate;
  display: inline-flex;
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.has-anim-droplet a::before,
.has-anim-droplet a::after,
.has-anim-droplet button::before,
.has-anim-droplet button::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  pointer-events: none;
  z-index: -1;
  opacity: 0;
  background-color: inherit;
}

.has-anim-droplet.is-animating a::before,
.has-anim-droplet.is-animating button::before {
  animation: tiko-droplet-wave-1 var(--tiko-anim-duration, 2800ms) cubic-bezier(0.25, 0.46, 0.45, 0.94) infinite;
  animation-delay: var(--tiko-anim-delay, 0ms);
}

.has-anim-droplet.is-animating a::after,
.has-anim-droplet.is-animating button::after {
  animation: tiko-droplet-wave-2 var(--tiko-anim-duration, 2800ms) cubic-bezier(0.25, 0.46, 0.45, 0.94) infinite;
  animation-delay: calc(var(--tiko-anim-delay, 0ms) + var(--tiko-anim-duration, 2800ms) * 0.35);
}

.has-anim-droplet.is-animating[style*="--tiko-anim-total-duration"] a::before,
.has-anim-droplet.is-animating[style*="--tiko-anim-total-duration"] button::before {
  animation-iteration-count: calc(var(--tiko-anim-total-duration, 0ms) / var(--tiko-anim-duration, 2800ms));
  animation-fill-mode: forwards;
}

.has-anim-droplet.is-animating[style*="--tiko-anim-total-duration"] a::after,
.has-anim-droplet.is-animating[style*="--tiko-anim-total-duration"] button::after {
  animation-iteration-count: calc(var(--tiko-anim-total-duration, 0ms) / var(--tiko-anim-duration, 2800ms));
  animation-fill-mode: forwards;
}

a.has-anim-droplet.wp-block-twentytwentyfive-icon-button__link,
button.has-anim-droplet.wp-block-twentytwentyfive-icon-button__link {
  position: relative;
  isolation: isolate;
  display: inline-flex;
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

a.has-anim-droplet.wp-block-twentytwentyfive-icon-button__link::before,
a.has-anim-droplet.wp-block-twentytwentyfive-icon-button__link::after,
button.has-anim-droplet.wp-block-twentytwentyfive-icon-button__link::before,
button.has-anim-droplet.wp-block-twentytwentyfive-icon-button__link::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  pointer-events: none;
  z-index: -1;
  opacity: 0;
  background-color: inherit;
}

a.has-anim-droplet.is-animating.wp-block-twentytwentyfive-icon-button__link::before,
button.has-anim-droplet.is-animating.wp-block-twentytwentyfive-icon-button__link::before {
  animation: tiko-droplet-wave-1 var(--tiko-anim-duration, 2800ms) cubic-bezier(0.25, 0.46, 0.45, 0.94) infinite;
  animation-delay: var(--tiko-anim-delay, 0ms);
}

a.has-anim-droplet.is-animating.wp-block-twentytwentyfive-icon-button__link::after,
button.has-anim-droplet.is-animating.wp-block-twentytwentyfive-icon-button__link::after {
  animation: tiko-droplet-wave-2 var(--tiko-anim-duration, 2800ms) cubic-bezier(0.25, 0.46, 0.45, 0.94) infinite;
  animation-delay: calc(var(--tiko-anim-delay, 0ms) + var(--tiko-anim-duration, 2800ms) * 0.35);
}

a.has-anim-droplet.is-animating[style*="--tiko-anim-total-duration"].wp-block-twentytwentyfive-icon-button__link::before,
button.has-anim-droplet.is-animating[style*="--tiko-anim-total-duration"].wp-block-twentytwentyfive-icon-button__link::before {
  animation-iteration-count: calc(var(--tiko-anim-total-duration, 0ms) / var(--tiko-anim-duration, 2800ms));
  animation-fill-mode: forwards;
}

a.has-anim-droplet.is-animating[style*="--tiko-anim-total-duration"].wp-block-twentytwentyfive-icon-button__link::after,
button.has-anim-droplet.is-animating[style*="--tiko-anim-total-duration"].wp-block-twentytwentyfive-icon-button__link::after {
  animation-iteration-count: calc(var(--tiko-anim-total-duration, 0ms) / var(--tiko-anim-duration, 2800ms));
  animation-fill-mode: forwards;
}

.has-anim-glow a,
.has-anim-glow button {
  position: relative;
  isolation: isolate;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.has-anim-glow a::before,
.has-anim-glow button::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: inherit;
  opacity: 0;
  pointer-events: none;
  z-index: -1;
}

.has-anim-glow.is-animating a,
.has-anim-glow.is-animating button {
  animation: tiko-glow var(--tiko-anim-duration, 2500ms) ease-in-out infinite;
  animation-delay: var(--tiko-anim-delay, 0ms);
}

.has-anim-glow.is-animating[style*="--tiko-anim-total-duration"] a,
.has-anim-glow.is-animating[style*="--tiko-anim-total-duration"] button {
  animation-iteration-count: calc(var(--tiko-anim-total-duration, 0ms) / var(--tiko-anim-duration, 2500ms));
  animation-fill-mode: forwards;
}

.has-anim-glow a:hover,
.has-anim-glow button:hover {
  transform: translateY(-2px);
}

a.has-anim-glow.wp-block-twentytwentyfive-icon-button__link,
button.has-anim-glow.wp-block-twentytwentyfive-icon-button__link {
  position: relative;
  isolation: isolate;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

a.has-anim-glow.wp-block-twentytwentyfive-icon-button__link::before,
button.has-anim-glow.wp-block-twentytwentyfive-icon-button__link::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: inherit;
  opacity: 0;
  pointer-events: none;
  z-index: -1;
}

a.has-anim-glow.is-animating.wp-block-twentytwentyfive-icon-button__link,
button.has-anim-glow.is-animating.wp-block-twentytwentyfive-icon-button__link {
  animation: tiko-glow var(--tiko-anim-duration, 2500ms) ease-in-out infinite;
  animation-delay: var(--tiko-anim-delay, 0ms);
}

a.has-anim-glow.is-animating[style*="--tiko-anim-total-duration"].wp-block-twentytwentyfive-icon-button__link,
button.has-anim-glow.is-animating[style*="--tiko-anim-total-duration"].wp-block-twentytwentyfive-icon-button__link {
  animation-iteration-count: calc(var(--tiko-anim-total-duration, 0ms) / var(--tiko-anim-duration, 2500ms));
  animation-fill-mode: forwards;
}

a.has-anim-glow.wp-block-twentytwentyfive-icon-button__link:hover,
button.has-anim-glow.wp-block-twentytwentyfive-icon-button__link:hover {
  transform: translateY(-2px);
}

@keyframes tiko-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes tiko-slide-up {
  to {
    transform: translateY(0);
  }
}

@keyframes tiko-slide-down {
  to {
    transform: translateY(0);
  }
}

@keyframes tiko-slide-left {
  to {
    transform: translateX(0);
  }
}

@keyframes tiko-slide-right {
  to {
    transform: translateX(0);
  }
}

@keyframes tiko-scale-in {
  to {
    transform: scale(1);
  }
}

@keyframes tiko-droplet-wave-1 {
  0% {
    transform: translate(-50%, -50%) scale(0.98);
    opacity: 0;
  }
  8% {
    opacity: 0.4;
    transform: translate(-50%, -50%) scale(1.02);
  }
  25% {
    opacity: 0.32;
    transform: translate(-50%, -50%) scale(1.08);
  }
  55% {
    opacity: 0.12;
    transform: translate(-50%, -50%) scale(1.18);
  }
  85% {
    opacity: 0.02;
    transform: translate(-50%, -50%) scale(1.24);
  }
  100% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(1.28);
  }
}

@keyframes tiko-droplet-wave-2 {
  0% {
    transform: translate(-50%, -50%) scale(0.98);
    opacity: 0;
  }
  8% {
    opacity: 0.35;
    transform: translate(-50%, -50%) scale(1.01);
  }
  25% {
    opacity: 0.28;
    transform: translate(-50%, -50%) scale(1.08);
  }
  55% {
    opacity: 0.1;
    transform: translate(-50%, -50%) scale(1.18);
  }
  85% {
    opacity: 0.02;
    transform: translate(-50%, -50%) scale(1.24);
  }
  100% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(1.28);
  }
}

@keyframes tiko-glow {
  0%, 100% {
	transform: scale(1);
    filter: drop-shadow(0 0 2px currentColor) drop-shadow(0 0 4px currentColor);
  }
  50% {
	 transform: scale(1.005);
    filter: drop-shadow(0 0 3px currentColor) drop-shadow(0 0 5px currentColor) drop-shadow(0 0 6px currentColor);
  }
}

@keyframes tiko-arrow-nudge-smooth {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(1px);
  }
  50% {
    transform: translateX(2px);
  }
  75% {
    transform: translateX(1px);
  }
  100% {
    transform: translateX(0);
  }
}

@keyframes tiko-play-pulse-smooth {
  0% {
    transform: scale(0.85);
    opacity: 0.7;
  }
  10% {
    transform: scale(0.88);
    opacity: 0.77;
  }
  20% {
    transform: scale(0.91);
    opacity: 0.82;
  }
  30% {
    transform: scale(0.94);
    opacity: 0.87;
  }
  40% {
    transform: scale(0.97);
    opacity: 0.92;
  }
  50% {
    transform: scale(1);
    opacity: 1;
  }
  60% {
    transform: scale(0.97);
    opacity: 0.92;
  }
  70% {
    transform: scale(0.94);
    opacity: 0.87;
  }
  80% {
    transform: scale(0.91);
    opacity: 0.82;
  }
  90% {
    transform: scale(0.88);
    opacity: 0.77;
  }
  100% {
    transform: scale(0.85);
    opacity: 0.7;
  }
}

@keyframes tiko-play-triangle {
  0% {
    transform: translateX(0) scale(1);
  }
  30% {
    transform: translateX(2px) scale(1.04);
  }
  60% {
    transform: translateX(1px) scale(1.01);
  }
  100% {
    transform: translateX(0) scale(1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .has-anim-play-pulse svg {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
  [class*="has-anim-"] {
    animation: none !important;
    transition: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
  .has-anim-droplet a::before,
  .has-anim-droplet a::after,
  .has-anim-droplet button::before,
  .has-anim-droplet button::after,
  a.has-anim-droplet.wp-block-twentytwentyfive-icon-button__link::before,
  a.has-anim-droplet.wp-block-twentytwentyfive-icon-button__link::after,
  button.has-anim-droplet.wp-block-twentytwentyfive-icon-button__link::before,
  button.has-anim-droplet.wp-block-twentytwentyfive-icon-button__link::after {
    display: none !important;
  }
}