@media (max-width: 980px) {
  .site-header__descriptor span:last-child {
    display: none;
  }

  .services__layout,
  .audiences__layout,
  .market-gateway__layout {
    grid-template-columns: 1fr;
    gap: 4rem;
  }

  .services__heading,
  .audiences__intro {
    position: static;
  }

  .callout {
    width: min(17rem, 32vw);
  }
}

@media (max-width: 1024px) {
  :root {
    --page-pad: 1.25rem;
  }

  .site-header {
    grid-template-columns: auto 1fr;
    height: 4.4rem;
  }

  .site-header__descriptor,
  .site-header__status {
    display: none;
  }

  .cinema-chapter,
  .cinema-chapter--hero,
  .cinema-chapter--reveal,
  .cinema-chapter--reassembly,
  .cinema-chapter--macro {
    height: 115svh;
  }

  .cinema-stage {
    min-height: 34rem;
    background: #000 url("../assets/anchor/udi-city-night-mobile.webp") center / cover no-repeat;
  }

  .cinema-veil--hero,
  .cinema-veil--right,
  .cinema-veil--macro,
  .cinema-veil--balanced {
    background:
      linear-gradient(180deg, rgb(0 0 0 / 25%) 0%, rgb(0 0 0 / 8%) 36%, rgb(0 0 0 / 84%) 100%),
      linear-gradient(90deg, rgb(0 0 0 / 30%), transparent 55%);
  }

  .hero-copy {
    top: auto;
    bottom: 7rem;
    width: calc(100% - 2.5rem);
    transform: none;
  }

  .hero-copy h1 {
    font-size: clamp(4rem, 18vw, 6.8rem);
    line-height: 0.8;
  }

  .hero-watermark {
    top: 5.5rem;
    right: 1.1rem;
    width: 5.5rem;
    opacity: 0.32;
  }

  .hero-copy__support {
    max-width: 26rem;
    margin-top: 1.5rem;
    font-size: 0.9rem;
  }

  .scroll-cue,
  .chapter-index {
    bottom: 1.5rem;
  }

  .manifesto {
    height: auto;
  }

  .manifesto__stage {
    position: relative;
    height: auto;
    min-height: 0;
    padding-top: 7rem;
    gap: 5rem;
  }

  .manifesto__statements {
    display: grid;
    gap: 1.35rem;
  }

  .manifesto-line {
    font-size: clamp(3.2rem, 14vw, 5.8rem);
    opacity: 1;
    transform: none;
  }

  .manifesto-line--accent {
    color: var(--brass-bright);
  }

  .manifesto__body {
    justify-self: start;
    width: 100%;
  }

  .reveal-overline {
    top: 5.5rem;
  }

  .callouts {
    left: var(--page-pad);
    right: var(--page-pad);
    bottom: 4.6rem;
    top: auto;
    display: grid;
    gap: 0.45rem;
  }

  .callout,
  .callout--mobility,
  .callout--event,
  .callout--commercial,
  .callout--opportunity {
    position: relative;
    inset: auto;
    width: 100%;
    min-height: 3rem;
    padding: 0.7rem 0 0.7rem 3.4rem;
    border-top: 1px solid rgb(237 234 228 / 13%);
  }

  .callout::before {
    width: 2.5rem;
  }

  .callout p {
    display: block;
    max-width: 29rem;
    font-size: 0.9rem;
    line-height: 1.18;
  }

  .reassembly-copy,
  .macro-copy {
    top: auto;
    left: var(--page-pad);
    right: var(--page-pad);
    bottom: 5.5rem;
    width: auto;
    transform: none;
  }

  .reassembly-copy h2,
  .macro-copy h2 {
    font-size: clamp(3.8rem, 15vw, 6.5rem);
  }

  .reassembly-copy strong {
    margin-top: 1.6rem;
  }

  .editorial-section {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }

  .services__layout,
  .audiences__layout,
  .market-gateway__layout {
    padding-top: 4rem;
  }

  .market-gateway__layout {
    grid-template-columns: 1fr;
    gap: 4rem;
  }

  .market-gateway h2 {
    font-size: clamp(4.2rem, 16vw, 6.4rem);
  }

  .market-gateway__regions a {
    min-height: 4.6rem;
  }

  .services h2,
  .audiences h2 {
    font-size: 5.2rem;
  }

  .service-list li {
    grid-template-columns: 2.25rem 1fr;
    gap: 0.65rem;
  }

  .privacy-note {
    width: 100%;
    margin-top: 4rem;
    padding-left: 0;
  }

  .audience-list li {
    grid-template-columns: 2.3rem 1fr;
    font-size: clamp(2.1rem, 10.8vw, 4rem);
  }

  .inquiry__content {
    width: calc(100vw - 2.5rem);
  }

  .inquiry__image {
    background-image: url("../assets/anchor/udi-city-night-mobile.webp");
    background-position: 50% 58%;
  }

  .inquiry h2 {
    font-size: clamp(4rem, 16vw, 6.6rem);
  }

  .inquiry-link {
    min-width: min(17rem, 80vw);
  }

  footer {
    position: relative;
    right: auto;
    bottom: auto;
    left: auto;
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
    margin: 4rem var(--page-pad) 0;
    padding-bottom: max(1.8rem, env(safe-area-inset-bottom));
  }

  .site-footer__identity,
  .site-footer__network {
    gap: 0.55rem 0.9rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }

  .manifesto-line,
  .callout {
    transform: none;
  }

  .manifesto-line {
    opacity: 1;
  }

  html.is-reduced-motion {
    --hero-copy: 1;
    --hero-shift: 0;
    --hero-tracking: -0.033em;
    --reveal-overline: 1;
    --reassembly-copy: 1;
    --macro-copy: 1;
  }

  html.is-reduced-motion .cinema-chapter,
  html.is-reduced-motion .cinema-chapter--hero,
  html.is-reduced-motion .cinema-chapter--reveal,
  html.is-reduced-motion .cinema-chapter--reassembly,
  html.is-reduced-motion .cinema-chapter--macro {
    height: 120svh;
  }

  html.is-reduced-motion .manifesto {
    height: auto;
  }

  html.is-reduced-motion .manifesto__stage {
    position: relative;
    height: auto;
    min-height: 100svh;
  }

  html.is-reduced-motion .reveal-overline,
  html.is-reduced-motion .callout,
  html.is-reduced-motion .macro-copy {
    opacity: 1;
    transform: none;
  }

  html.is-reduced-motion .hero-copy,
  html.is-reduced-motion .reassembly-copy {
    opacity: 1;
    transform: translateY(-50%);
  }
}

@media (prefers-reduced-motion: reduce) and (min-width: 768px) {
  html.is-video-mode .cinema-stage {
    background: #000 url("../assets/anchor/udi-city-night-reduced.webp") center / cover no-repeat;
  }

  .inquiry__image {
    background-image: url("../assets/anchor/udi-city-night-reduced.webp");
  }
}
