/* Keep the film artwork and the start of its content in the same viewport.
   Long credits, articles and track lists continue to scroll normally. */
@media screen and (min-width: 752px) {
  :root {
    --campaign-header-height: 80px;
    --film-strip-height: clamp(128px, 22vh, 240px);
  }

  header .fyc-banner {
    display: flex;
    align-items: center;
    height: 44px;
  }

  header .fyc-banner .nowrap,
  header .fyc-banner .title {
    float: none;
    margin-top: 0;
  }

  header .fyc-banner .nowrap {
    font-size: clamp(11px, 0.85vw, 16px);
  }

  header .fyc-banner .title {
    font-size: clamp(22px, 2vw, 38px);
  }

  header #menu {
    box-sizing: border-box;
    width: 100%;
    padding: 8px 3%;
  }

  header #menu ul {
    gap: 12px;
  }

  header #menu ul li {
    font-size: clamp(11px, 0.9vw, 14px);
    line-height: 20px;
  }

  #page-holder {
    padding-top: calc(var(--campaign-header-height) + 12px);
    margin-bottom: 24px;
    min-height: calc(100vh - var(--campaign-header-height));
  }

  #page-holder .page .page-header {
    margin-top: 0;
    padding-top: 0;
  }

  #page-holder .page .page-header .logo {
    display: flex;
    align-items: center;
    justify-content: center;
    width: min(340px, 36vw);
    min-width: 0;
    max-width: none;
    height: clamp(72px, 10vh, 104px);
    margin: 0 auto;
  }

  .page .page-header .logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .page .page-header .nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px 18px;
    margin-top: 12px;
    font-size: clamp(12px, 0.9vw, 15px);
    line-height: 20px;
  }

  .page .page-header .nav .nav-link {
    margin: 0;
  }

  .page .film-strip {
    width: calc(var(--film-strip-height) * 2.168);
    height: var(--film-strip-height);
    margin: 16px auto 20px;
  }

  .page .subpages .limiter {
    width: 88%;
    max-width: 1440px;
  }

  .page .subpages .limiter .prime-quote {
    width: 100%;
    margin: 0 auto 14px;
    font-size: 14px;
  }

  .page .subpages .limiter .prime-quote .press-logo {
    width: 110px;
    max-height: 28px;
    margin: 0 auto;
  }

  .page .subpages .limiter .prime-quote .press-logo img {
    max-height: 28px;
    object-fit: contain;
  }

  .page .subpages .limiter .consider {
    font-size: clamp(10px, 0.65vw, 12px);
    padding-bottom: 12px;
  }

  .page .subpages .limiter .consider h3 {
    margin-bottom: 14px;
  }

  .page .subpages .limiter .consider .content .category {
    margin-top: 10px;
  }

  .page .subpages .limiter .synopsis {
    font-size: clamp(16px, 1.15vw, 20px);
    line-height: 1.4;
  }

  .page .subpages .limiter .synopsis .content {
    width: 85%;
    max-width: 960px;
  }

  .page#mp-page .subpages .limiter .consider {
    width: 100%;
    left: 0;
  }

  .page#mp-page .subpages .limiter .consider h3 {
    left: 0;
  }
}

@media screen and (max-width: 751px) {
  #page-holder .page .page-header {
    margin-top: 12px;
    padding-top: 0;
  }

  #page-holder .page .page-header .logo {
    width: 170px;
    min-width: 0;
    max-width: none;
    height: 80px;
    margin: 0 auto;
  }

  .page .page-header .logo img {
    height: 100%;
    object-fit: contain;
  }

  .page .page-header .nav {
    margin-top: 12px;
    gap: 8px 0;
  }

  .page .film-strip {
    margin-top: 16px;
    margin-bottom: 20px;
  }

  .page .subpages .limiter .prime-quote {
    margin-bottom: 16px;
  }
}
