/* New review-v1 article component. Hero, gallery, facts and offers use site.css. */
.ms26-standard-review-page .ms26-review-body {
  --ms-measure: 76.8ch;
  inline-size: min(100%, 76.8ch);
  margin-inline: auto;
  padding-block-end: 2rem;
  display: flow-root;
}
.ms26-standard-review-page .ms26-review-body > :is(p, ul, ol, h2, h3, h4, blockquote) {
  max-inline-size: 100%;
  margin-inline: auto;
}
.ms26-standard-review-page .ms26-review-body > :is(h2, h3, h4) {
  clear: both;
}
.ms26-standard-review-page .ms26-review-body > :is(h2, h3) { padding-block-start: .1rem; }
.ms26-standard-review-page .ms26-review-body > p { overflow-wrap: anywhere; }
.ms26-standard-review-page .ms26-review-body :is(th, td) {
  padding: .85rem 1rem;
  vertical-align: middle;
  border-block-end: 1px solid var(--ms-line);
}
.ms26-standard-review-page .ms26-review-body th { color: var(--ms-ink); text-align: start; }
.ms26-standard-review-page .ms26-review-body :is(th, td)[align="right"] { text-align: center; }
.ms26-standard-review-page .ms26-review-body table {
  inline-size: 100%;
  border-collapse: separate;
  border-spacing: 0;
  font-variant-numeric: tabular-nums;
}
.ms26-standard-review-page .ms26-review-body thead { background: var(--ms-cyan-soft); }
.ms26-standard-review-page .ms26-review-body tbody tr:last-child > * { border: 0; }
.ms26-standard-review-page .ms26-review-body .ms26-table-scroll {
  clear: both;
  position: relative;
  inline-size: min(80rem, calc(100vw - 4rem));
  max-inline-size: none;
  margin-inline-start: 50%;
  transform: translateX(-50%);
  margin-block: 1.6rem 2.35rem;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  background: var(--ms-paper);
  border: 1px solid var(--ms-line);
  border-radius: 1rem;
}
.ms26-standard-review-page .ms26-review-body .ms26-table-scroll[tabindex="0"]:focus-visible {
  outline: .1875rem solid var(--ms-amber);
  outline-offset: .1875rem;
}
.ms26-standard-review-page .ms26-review-body .ms26-review-media {
  max-inline-size: 100%;
  margin: 1.5rem auto 2rem;
}
.ms26-standard-review-page .ms26-review-body .ms26-review-media img {
  display: block;
  inline-size: 100%;
  block-size: auto;
  object-fit: contain;
  border-radius: .8rem;
  outline: 1px solid rgba(0, 0, 0, .1);
  outline-offset: -1px;
}
.ms26-standard-review-page .ms26-review-body .ms26-review-media-caption {
  margin-block-start: .65rem;
  color: var(--ms-muted);
  font-size: .88rem;
  line-height: 1.45;
  text-align: center;
}
.ms26-standard-review-page .ms26-review-body .ms26-review-media--portrait {
  inline-size: min(30%, 15rem);
  margin-block: .6rem 1.5rem;
}
.ms26-standard-review-page .ms26-review-body .ms26-review-media--landscape {
  inline-size: min(40%, 21rem);
  margin-block: .6rem 1.5rem;
}
.ms26-standard-review-page .ms26-review-body .ms26-review-media--cutout img {
  border-radius: 0;
  outline: none;
}
.ms26-standard-review-page .ms26-review-symbol-cell {
  display: flex;
  min-inline-size: 11.5rem;
  align-items: center;
  gap: .85rem;
  white-space: normal;
}
.ms26-standard-review-page .ms26-review-symbol-cell img {
  inline-size: 3.25rem;
  block-size: 3.25rem;
  object-fit: contain;
  flex: 0 0 auto;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
.ms26-standard-review-page .ms26-review-symbol-cell span {
  min-inline-size: 0;
  line-height: 1.3;
  overflow-wrap: normal;
}
.ms26-standard-review-page .ms26-review-body :is(th, td):has(> .ms26-review-symbol-cell) {
  min-inline-size: 13.5rem;
  vertical-align: middle;
}
.ms26-standard-review-page .ms26-review-body .ms26-review-media--right {
  float: right;
  margin-inline: 1.8rem 0;
}
.ms26-standard-review-page .ms26-review-body .ms26-review-media--left {
  float: left;
  margin-inline: 0 1.8rem;
}
.ms26-standard-review-page .ms26-review-body .ms26-review-media-group {
  clear: both;
  display: grid;
  grid-template-columns: repeat(var(--ms26-media-count, 2), minmax(0, 1fr));
  align-items: center;
  gap: clamp(.75rem, 2vw, 1.4rem);
  inline-size: min(100%, 48rem);
  margin: 1.6rem auto 2.35rem;
}
.ms26-standard-review-page .ms26-review-body .ms26-review-media-group--3 { --ms26-media-count: 3; }
.ms26-standard-review-page .ms26-review-body .ms26-review-media-group--4 { --ms26-media-count: 4; }
.ms26-standard-review-page .ms26-review-body .ms26-review-media-group .ms26-review-media {
  inline-size: 100%;
  margin: 0;
}
.ms26-standard-review-page .ms26-review-body .ms26-review-media-group-caption {
  grid-column: 1 / -1;
  margin-block-start: 0;
}
.ms26-standard-review-page .ms26-review-body .ms26-review-media-group img {
  max-block-size: 25rem;
}
.ms26-standard-review-page .ms26-review-body .ms26-review-demo {
  clear: both;
  margin-block: 2.5rem;
}
.ms26-standard-review-page .ms26-review-body .ms26-review-demo iframe {
  display: block;
  inline-size: 100%;
  aspect-ratio: 16 / 10;
  min-block-size: 28rem;
  border: 0;
  border-radius: 1rem;
}
@media (min-width: 64rem) {
  .ms26-standard-review-page .ms26-review-body { font-size: 1.125rem; }
  .ms26-standard-review-page .ms26-review-body :is(p, li, th, td) { font-size: 1.125rem; }
  body.ms26-standard-review-page .ms26-review-hero-game-cover {
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: visible;
  }
  body.ms26-standard-review-page .ms26-review-hero-game-cover img {
    inline-size: auto;
    block-size: clamp(15rem, 22vw, 20rem);
    max-inline-size: 100%;
    object-fit: contain;
  }
}

/* Localized desktop hero rails must absorb longer gallery labels and captions
   without pushing the square key art outside the clipped media column. */
@media (min-width: 60.0625rem) {
  body.ms26-standard-review-page .ms26-review-hero-screens {
    justify-content: flex-start;
    padding-block-start: clamp(4.75rem, 5vw, 5.75rem);
    padding-block-end: 1rem;
  }
  body.ms26-standard-review-page .ms26-entry-content .ms26-review-hero-gallery-title {
    max-inline-size: none;
    margin: 0 auto .65rem;
    font-size: clamp(1.35rem, 2.1vw, 2rem);
    line-height: 1.15;
    text-align: center;
  }
  body.ms26-standard-review-page .ms26-review-hero .ms26-review-hero-game-cover {
    flex: 1 1 0;
    min-block-size: 0;
    overflow: visible;
  }
  body.ms26-standard-review-page .ms26-review-hero .ms26-review-hero-game-cover img {
    inline-size: auto;
    block-size: auto;
    max-inline-size: 100%;
    max-block-size: 100%;
    object-fit: contain;
  }
}
/* Manifest covers can be portrait or transparent artwork, not only 1504×960. */
@media (max-width: 63.999rem) {
  body.ms26-standard-review-page .ms26-review-hero .ms26-review-hero-feature-art {
    aspect-ratio: auto;
    inline-size: min(100%, 28rem);
    margin-inline: auto;
    background: none;
    border: 0;
    box-shadow: none;
    outline: none;
  }
  body.ms26-standard-review-page .ms26-review-hero .ms26-review-hero-feature-art img {
    inline-size: auto;
    block-size: auto;
    max-inline-size: 100%;
    max-block-size: 28rem;
    aspect-ratio: auto;
    object-fit: contain;
    margin-inline: auto;
  }
}
@media (max-width: 48rem) {
  .ms26-standard-review-page .ms26-review-body :is(.ms26-review-media--portrait, .ms26-review-media--landscape) {
    float: none;
    inline-size: min(100%, 16rem);
    margin: 1.3rem auto 1.7rem;
  }
  .ms26-standard-review-page .ms26-review-body table { min-inline-size: 36rem; }
  .ms26-standard-review-page .ms26-review-body .ms26-table-scroll {
    inline-size: 100%;
    max-inline-size: 100%;
    margin-inline-start: 0;
    transform: none;
  }
  .ms26-standard-review-page .ms26-review-body .ms26-review-demo iframe {
    aspect-ratio: 9 / 16;
    min-block-size: 30rem;
  }
  .ms26-standard-review-page .ms26-review-body .ms26-review-media-group {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ms26-standard-review-page .ms26-review-body .ms26-review-media-group--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
