/* Shared Places ultra-wide layout.
   Normal desktop and mobile remain unchanged; this mode only engages on very
   wide CSS viewports, including strong browser zoom-out. */

@media (min-width: 2200px) {
  html body main.qc-place {
    --qc-editorial-gutter: 4vw;
    --qc-editorial-page: 92vw;
  }

  html body main.qc-place :is(
    .stay-intro,
    .opening__full-copy,
    .location-note
  ) {
    width: var(--qc-editorial-page) !important;
    max-width: none !important;
  }

  html body main.qc-place :is(
    .stay-intro,
    .after-opening-pair,
    .city-story,
    .location-note__grid
  ) {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    column-gap: 4vw !important;
  }

  html body main.qc-place :is(
    .opening__media-sticky,
    .after-opening-pair__images,
    .city-story__images
  ) {
    width: calc(50vw - 10px) !important;
    max-width: none !important;
  }

  html body main.qc-place :is(
    .after-opening-pair__copy,
    .city-story__copy
  ) {
    width: auto !important;
    max-width: none !important;
    column-gap: 4vw !important;
    padding-top: 4vw !important;
    transform: none !important;
  }

  html body main.qc-place :is(
    .after-opening-pair__copy,
    .city-story__copy
  ) > p {
    max-width: 30ch !important;
  }

  html body main.qc-place :is(
    .opening__full-copy p,
    .after-opening-pair__copy p,
    .city-story__copy p,
    .location-note__body p
  ) {
    font-size: .885vw !important;
    line-height: 1.55 !important;
  }

  html body main.qc-place :is(
    .stay-intro__facts > header h2,
    .after-opening-pair__copy h3,
    .city-story__copy h3,
    .location-note h2,
    .elsewhere__title
  ) {
    font-size: 1.77vw !important;
    line-height: 1.12 !important;
  }

  html body main.qc-place :is(
    .after-opening-pair__copy h3,
    .city-story__copy h3
  )::before,
  html body main.qc-place .location-note__eyebrow {
    font-size: .47vw !important;
  }

  html body main.qc-place :is(
    .after-opening-pair,
    .city-story,
    .location-note
  ) {
    min-height: 0 !important;
    padding-block: 4vw !important;
  }

  html body main.qc-place .location-note {
    box-sizing: border-box !important;
  }

  html body main.qc-place .location-note__map {
    width: 100% !important;
    max-width: none !important;
    min-height: 28vw !important;
    justify-self: stretch !important;
  }

  html body main.qc-place .location-note__body {
    width: auto !important;
    max-width: 30vw !important;
    justify-self: start !important;
  }

  html body main.qc-place .elsewhere {
    padding: 4vw !important;
  }

  html body main.qc-place .elsewhere__list {
    width: 54vw !important;
    max-width: none !important;
    margin-inline: auto !important;
  }
}
