/* Final mobile-only alignment for carousel and video controls. */
@media (max-width: 780px) {
  html body .about-principles-carousel,
  html body .module-carousel,
  html body .professor-carousel,
  html body .program-card-carousel,
  html body .program-photo-carousel {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    grid-template-rows: auto 42px !important;
    grid-template-areas:
      "content content"
      "previous next" !important;
    column-gap: 12px !important;
    row-gap: 14px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-inline: 0 !important;
    overflow: visible !important;
  }

  html body .about-principles-carousel > .about-principles,
  html body .module-carousel > .module-list,
  html body .professor-carousel > .professor-grid,
  html body .program-card-carousel > .program-grid,
  html body .program-photo-carousel > .program-photo-track {
    grid-area: content !important;
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-inline: auto !important;
  }

  html body .about-principles-carousel > .carousel-button,
  html body .module-carousel > .carousel-button,
  html body .professor-carousel > .carousel-button,
  html body .program-card-carousel > .carousel-button,
  html body .program-photo-carousel > .carousel-button {
    position: static !important;
    inset: auto !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    grid-row: 2 !important;
    align-self: start !important;
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    translate: none !important;
    display: grid !important;
    place-items: center !important;
    font-size: 0 !important;
    line-height: 0 !important;
  }

  html body [data-about-carousel="prev"],
  html body [data-module-carousel="prev"],
  html body [data-professor-carousel="prev"],
  html body [data-program-card-carousel="prev"],
  html body [data-program-carousel="prev"] {
    grid-area: previous !important;
    grid-column: 1 !important;
    justify-self: end !important;
  }

  html body [data-about-carousel="next"],
  html body [data-module-carousel="next"],
  html body [data-professor-carousel="next"],
  html body [data-program-card-carousel="next"],
  html body [data-program-carousel="next"] {
    grid-area: next !important;
    grid-column: 2 !important;
    justify-self: start !important;
  }

  html body .about-principles-carousel > .carousel-button::before,
  html body .module-carousel > .carousel-button::before,
  html body .professor-carousel > .carousel-button::before,
  html body .program-card-carousel > .carousel-button::before,
  html body .program-photo-carousel > .carousel-button::before {
    content: "" !important;
    position: static !important;
    width: 10px !important;
    height: 10px !important;
    border: 0 !important;
    border-top: 3px solid #111318 !important;
    border-right: 3px solid #111318 !important;
    margin: 0 !important;
  }

  html body [data-about-carousel="prev"]::before,
  html body [data-module-carousel="prev"]::before,
  html body [data-professor-carousel="prev"]::before,
  html body [data-program-card-carousel="prev"]::before,
  html body [data-program-carousel="prev"]::before {
    transform: translateX(1px) rotate(-135deg) !important;
  }

  html body [data-about-carousel="next"]::before,
  html body [data-module-carousel="next"]::before,
  html body [data-professor-carousel="next"]::before,
  html body [data-program-card-carousel="next"]::before,
  html body [data-program-carousel="next"]::before {
    transform: translateX(-1px) rotate(45deg) !important;
  }

  html body .program-photo-track {
    display: flex !important;
    gap: 0 !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    scroll-padding-inline: 0 !important;
  }

  html body .program-photo-slide {
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    scroll-snap-align: center !important;
    box-sizing: border-box !important;
  }

  html body span.vimeo-cover-play {
    position: absolute !important;
    display: block !important;
    font-size: 0 !important;
    line-height: 0 !important;
  }

  html body span.vimeo-cover-play::before {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: 13px !important;
    height: 16px !important;
    border: 0 !important;
    background: #111318 !important;
    clip-path: polygon(0 0, 100% 50%, 0 100%) !important;
    margin: 0 !important;
    transform: translate(-42%, -50%) !important;
  }

  html body span.vimeo-cover-play::after {
    display: none !important;
  }
}
