/* Stage 6B shared public-site motion. Reveal states are enabled only after JavaScript is ready. */
.public-motion-enabled [data-motion-reveal] {
  opacity: 0;
  transform: translateY(22px);
  transition:
    opacity 620ms ease,
    transform 760ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: calc(var(--motion-order, 0) * 65ms);
}

.public-motion-enabled [data-motion-section].is-motion-revealed [data-motion-reveal]:not([data-motion-live]),
.public-motion-enabled [data-motion-reveal].is-motion-item-revealed {
  opacity: 1;
  transform: translateY(0);
}

.public-motion-enabled [data-motion-kind="media"] {
  clip-path: inset(0 0 5% 0 round 6px);
  transform: translateY(22px) scale(0.988);
  transition:
    clip-path 840ms cubic-bezier(0.22, 1, 0.36, 1),
    opacity 620ms ease,
    transform 900ms cubic-bezier(0.22, 1, 0.36, 1);
}

.public-motion-enabled [data-motion-section].is-motion-revealed [data-motion-kind="media"]:not([data-motion-live]),
.public-motion-enabled [data-motion-kind="media"].is-motion-item-revealed {
  clip-path: inset(0 0 0 0 round 6px);
  transform: translateY(0) scale(1);
}

body:not([data-manager-page-preview="true"]) .button,
body:not([data-manager-page-preview="true"]) .text-link,
body:not([data-manager-page-preview="true"]) .back-link,
body:not([data-manager-page-preview="true"]) .site-nav a,
body:not([data-manager-page-preview="true"]) .content-card,
body:not([data-manager-page-preview="true"]) .schedule-row,
body:not([data-manager-page-preview="true"]) .show-card,
body:not([data-manager-page-preview="true"]) .gallery-card,
body:not([data-manager-page-preview="true"]) .gallery-photo-card,
body:not([data-manager-page-preview="true"]) .video-card,
body:not([data-manager-page-preview="true"]) .merch-card,
body:not([data-manager-page-preview="true"]) .gallery-card img,
body:not([data-manager-page-preview="true"]) .gallery-photo-card img,
body:not([data-manager-page-preview="true"]) .video-card img,
body:not([data-manager-page-preview="true"]) .merch-product-image img {
  transition:
    color 180ms ease,
    background-color 180ms ease,
    border-color 180ms ease,
    box-shadow 220ms ease,
    opacity 220ms ease,
    translate 260ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 260ms cubic-bezier(0.22, 1, 0.36, 1);
}

body:not([data-manager-page-preview="true"]) .button:not(.button-disabled):not(:disabled):hover {
  box-shadow: 0 17px 38px rgba(16, 89, 255, 0.25);
  transform: translateY(-2px) scale(1.008);
}

body:not([data-manager-page-preview="true"]) .button:not(.button-disabled):not(:disabled):active {
  box-shadow: 0 7px 18px rgba(16, 89, 255, 0.16);
  transform: translateY(1px) scale(0.988);
}

body:not([data-manager-page-preview="true"]) .button:focus-visible,
body:not([data-manager-page-preview="true"]) .text-link:focus-visible,
body:not([data-manager-page-preview="true"]) .back-link:focus-visible,
body:not([data-manager-page-preview="true"]) .site-nav a:focus-visible,
body:not([data-manager-page-preview="true"]) .brand:focus-visible {
  outline: 2px solid #8fc5ff;
  outline-offset: 5px;
}

body:not([data-manager-page-preview="true"]) .site-nav a {
  position: relative;
}

body:not([data-manager-page-preview="true"]) .site-nav a::after {
  position: absolute;
  right: 0;
  bottom: -6px;
  left: 0;
  height: 1px;
  content: "";
  background: var(--blue-2);
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 220ms ease;
}

body:not([data-manager-page-preview="true"]) .site-nav a:hover::after,
body:not([data-manager-page-preview="true"]) .site-nav a:focus-visible::after,
body:not([data-manager-page-preview="true"]) .site-nav a.active::after {
  transform: scaleX(1);
  transform-origin: left;
}

body:not([data-manager-page-preview="true"]) .text-link::after,
body:not([data-manager-page-preview="true"]) .back-link::before {
  transition: transform 180ms ease;
}

body:not([data-manager-page-preview="true"]) .text-link:hover::after,
body:not([data-manager-page-preview="true"]) .text-link:focus-visible::after {
  transform: translateX(4px);
}

body:not([data-manager-page-preview="true"]) .back-link:hover::before,
body:not([data-manager-page-preview="true"]) .back-link:focus-visible::before {
  transform: translateX(-3px);
}

.public-motion-enabled .photo-lightbox-content,
.public-motion-enabled .photo-lightbox-image {
  transition:
    opacity 220ms ease,
    transform 320ms cubic-bezier(0.22, 1, 0.36, 1);
}

.public-motion-enabled .photo-lightbox:not(.is-visible) .photo-lightbox-content {
  opacity: 0;
  transform: translateY(10px) scale(0.99);
}

@media (hover: hover) and (pointer: fine) {
  body:not([data-manager-page-preview="true"]) .content-card:hover,
  body:not([data-manager-page-preview="true"]) .schedule-row:hover,
  body:not([data-manager-page-preview="true"]) .show-card:hover,
  body:not([data-manager-page-preview="true"]) .merch-card:hover {
    border-color: rgba(54, 137, 255, 0.4);
    box-shadow: 0 26px 62px rgba(0, 0, 0, 0.36), 0 0 30px rgba(16, 89, 255, 0.08);
    translate: 0 -3px;
  }

  body:not([data-manager-page-preview="true"]) .gallery-card:hover,
  body:not([data-manager-page-preview="true"]) .gallery-photo-card:hover,
  body:not([data-manager-page-preview="true"]) .video-card:hover {
    border-color: rgba(54, 137, 255, 0.42);
    box-shadow: 0 28px 68px rgba(0, 0, 0, 0.42), 0 0 34px rgba(16, 89, 255, 0.1);
    translate: 0 -3px;
  }

  body:not([data-manager-page-preview="true"]) .gallery-card:hover img,
  body:not([data-manager-page-preview="true"]) .gallery-photo-card:hover img,
  body:not([data-manager-page-preview="true"]) .video-card:hover img,
  body:not([data-manager-page-preview="true"]) .merch-product-card:hover .merch-product-image img {
    transform: scale(1.025);
  }
}

@media (max-width: 700px) {
  .public-motion-enabled [data-motion-reveal] {
    transform: translateY(14px);
    transition-delay: calc(var(--motion-order, 0) * 35ms);
  }

  .public-motion-enabled [data-motion-kind="media"] {
    clip-path: inset(0 0 3% 0 round 6px);
    transform: translateY(14px) scale(0.994);
  }

  .public-motion-enabled [data-motion-section].is-motion-revealed [data-motion-reveal]:not([data-motion-live]),
  .public-motion-enabled [data-motion-reveal].is-motion-item-revealed,
  .public-motion-enabled [data-motion-section].is-motion-revealed [data-motion-kind="media"]:not([data-motion-live]),
  .public-motion-enabled [data-motion-kind="media"].is-motion-item-revealed {
    transform: translateY(0) scale(1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .public-motion-enabled [data-motion-reveal],
  .public-motion-enabled [data-motion-kind="media"] {
    clip-path: none;
    opacity: 1;
    translate: none;
    transform: none;
    transition: none;
  }

  body:not([data-manager-page-preview="true"]) .button,
  body:not([data-manager-page-preview="true"]) .text-link,
  body:not([data-manager-page-preview="true"]) .back-link,
  body:not([data-manager-page-preview="true"]) .site-nav a,
  body:not([data-manager-page-preview="true"]) .content-card,
  body:not([data-manager-page-preview="true"]) .schedule-row,
  body:not([data-manager-page-preview="true"]) .show-card,
  body:not([data-manager-page-preview="true"]) .gallery-card,
  body:not([data-manager-page-preview="true"]) .gallery-photo-card,
  body:not([data-manager-page-preview="true"]) .video-card,
  body:not([data-manager-page-preview="true"]) .merch-card,
  body:not([data-manager-page-preview="true"]) .gallery-card img,
  body:not([data-manager-page-preview="true"]) .gallery-photo-card img,
  body:not([data-manager-page-preview="true"]) .video-card img,
  body:not([data-manager-page-preview="true"]) .merch-product-image img,
  .public-motion-enabled .photo-lightbox-content,
  .public-motion-enabled .photo-lightbox-image {
    animation: none;
    transition-duration: 0.01ms;
  }

  body:not([data-manager-page-preview="true"]) .button,
  body:not([data-manager-page-preview="true"]) .content-card,
  body:not([data-manager-page-preview="true"]) .schedule-row,
  body:not([data-manager-page-preview="true"]) .show-card,
  body:not([data-manager-page-preview="true"]) .gallery-card,
  body:not([data-manager-page-preview="true"]) .gallery-photo-card,
  body:not([data-manager-page-preview="true"]) .video-card,
  body:not([data-manager-page-preview="true"]) .merch-card,
  body:not([data-manager-page-preview="true"]) .text-link::after,
  body:not([data-manager-page-preview="true"]) .back-link::before {
    translate: none !important;
    transform: none !important;
  }
}
