@media (max-width: 1180px) {
  .interest-hero {
    padding-right: 2rem;
    padding-left: 2rem;
  }

  .interest-hero h1 {
    font-size: 6.8rem;
  }

  .interest-hero__stills {
    right: 2rem;
    width: 10.5rem;
  }

  .interest-pass {
    right: 2rem;
    width: 19rem;
  }
}

@media (max-width: 900px) {
  .interest-hero {
    min-height: auto;
    align-items: start;
    padding: 6.25rem 1rem 4rem;
  }

  .interest-hero::after {
    background:
      linear-gradient(180deg, rgba(3, 2, 2, 0.5), transparent 28%, rgba(3, 2, 2, 0.5));
  }

  .interest-hero__content {
    width: 100%;
    max-width: min(100%, 25rem);
  }

  .interest-hero h1 {
    max-width: 10ch;
    font-size: 3.9rem;
    overflow-wrap: normal;
    word-break: normal;
  }

  .interest-hero__line {
    width: min(100%, 22.5rem);
    font-size: 1.04rem;
    line-height: 1.42;
  }

  .interest-hero__body {
    width: min(100%, 22.5rem);
    font-size: 0.98rem;
    line-height: 1.55;
  }

  .interest-hero__actions {
    display: grid;
    gap: 0.65rem;
  }

  .interest-hero__actions .btn {
    width: 100%;
    min-width: 0;
    white-space: normal;
    text-align: center;
  }

  .interest-hero__stills {
    position: relative;
    right: auto;
    top: auto;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.5rem;
    width: 100%;
    margin-top: 1.25rem;
    transform: none;
  }

  .interest-hero__stills figure {
    aspect-ratio: 1;
    border-width: 0.18rem;
  }

  .interest-pass {
    position: relative;
    right: auto;
    bottom: auto;
    width: 100%;
    margin-top: 1rem;
    transform: rotate(-1deg);
  }

  .interest-process__grid,
  .interest-suite__grid,
  .event-summary-grid {
    grid-template-columns: 1fr;
  }

  .rsvp-card {
    order: 1;
  }

  .interest-side {
    position: static;
    order: 2;
  }

  .interest-process,
  .interest-suite,
  .event-summary {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .interest-section-header h2,
  .interest-suite__header h2,
  .registry-prompt h2 {
    font-size: 2.45rem;
  }
}

@media (max-width: 640px) {
  .interest-main {
    background:
      linear-gradient(180deg, #050403 0%, #10251e 45%, #f2e5ce 45%, #f2e5ce 100%);
  }

  .interest-hero {
    padding-top: 5.6rem;
    padding-bottom: 3.25rem;
  }

  .interest-hero__poster img {
    object-position: 54% center;
  }

  .interest-hero::before {
    background:
      linear-gradient(90deg, rgba(5, 4, 3, 0.66), rgba(5, 4, 3, 0.28)),
      linear-gradient(180deg, rgba(5, 4, 3, 0.04), rgba(5, 4, 3, 0.62));
  }

  .interest-hero h1 {
    font-size: 3.35rem;
  }

  .interest-pass strong {
    font-size: 2.3rem;
  }

  .interest-process,
  .interest-suite,
  .event-summary,
  .registry-prompt,
  .contact-info {
    width: min(100% - 1rem, 1180px);
  }

  .interest-process__grid article {
    min-height: 11rem;
  }

  .form-row,
  .attendance-toggle {
    grid-template-columns: 1fr;
  }

  .rsvp-card,
  .registry-prompt,
  .contact-info {
    padding: 1rem;
  }

  .event-summary-card {
    min-height: 22rem;
  }

  .form-submit {
    justify-content: stretch;
  }

  .form-submit .btn {
    width: 100%;
    min-width: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .interest-hero__poster,
  .interest-hero__stills {
    animation: none;
    transform: none;
  }
}
