@view-transition {
  navigation: auto;
}

html {
  scroll-behavior: smooth;
  interpolate-size: allow-keywords;
}

details::details-content {
  block-size: 0;
  overflow: hidden;
  transition:
    block-size 450ms cubic-bezier(0.22, 1, 0.36, 1),
    content-visibility 450ms allow-discrete;
}

details[open]::details-content {
  block-size: auto;
}

::view-transition-old(root),
::view-transition-new(root) {
  animation-duration: 350ms;
  animation-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes hero-parallax {
  to {
    transform: translateY(18%) scale(1.08);
  }
}

@supports (animation-timeline: scroll()) {
  @media (prefers-reduced-motion: no-preference) {
    .hero-parallax {
      animation: hero-parallax linear both;
      animation-timeline: scroll(root);
      animation-range: 0 100vh;
    }
  }
}

.gymdesk-schedule iframe {
  display: block;
  width: 100%;
  border: 0;
  background: #000;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  ::view-transition-old(root),
  ::view-transition-new(root) {
    animation: none;
  }

  details::details-content {
    transition: none;
  }
}
