/* Compact product stories. Load after the product scene styles.
   SVG geometry keeps its full 720 × 460 viewBox; the shared phase clock is unchanged. */
@media (max-width: 600px) {
  /* Real HTML carries the explanation at a readable size, independently of SVG scaling. */
  .pv-scene .pv-narration {
    padding: 19px 18px 18px;
  }
  .pv-scene .pv-caption {
    grid-template-columns: 51px minmax(0, 1fr);
    align-content: start;
    column-gap: 9px;
    min-height: 97px;
  }
  .pv-scene .pv-caption > span {
    font-size: 12px;
    letter-spacing: .2px;
  }
  .pv-scene .pv-caption > strong {
    font-size: 21px;
    line-height: 1.4;
  }
  .pv-scene .pv-caption > p,
  .product-card .pv-scene .pv-caption > p {
    grid-column: 1 / -1;
    max-width: none;
    margin: 8px 0 0;
    font-size: 14px;
    line-height: 1.8;
    overflow-wrap: anywhere;
  }
  .pv-scene .pv-progress {
    margin-top: 12px;
    gap: 7px;
  }
  .pv-scene .pv-progress i {
    height: 3px;
  }

  /* Four short actions remain inside the existing cards; their full explanation is below. */
  .pv-bidding .pa-title {
    font-size: 36px;
    letter-spacing: 0;
  }
  .pv-bidding .pa-core-title {
    font-size: 32px;
    letter-spacing: 0;
  }
  .pv-bidding .pa-subtitle,
  .pv-bidding .pa-captions {
    display: none;
  }

  /* A wider signal panel accommodates the four-character label without overlapping bars. */
  .pv-finance .pv-fin-label,
  .pv-finance .pv-fin-service-label {
    font-size: 36px;
    letter-spacing: 0;
  }
  .pv-finance .pv-fin-signal-panel {
    x: 301px;
    width: 174px;
  }
  .pv-finance .pv-bf-captions {
    display: none;
  }

  /* The map and business network are read as pictures; their phase descriptions stay in HTML. */
  .pv-property .pv-canvas > svg > text,
  .pv-business .pv-canvas > svg > text,
  .pv-property .pv-land-caption,
  .pv-business .pv-biz-caption,
  .pv-property .pv-land-caption + g,
  .pv-business .pv-biz-caption + g,
  .pv-property .pv-land-progress,
  .pv-business .pv-biz-progress {
    display: none;
  }
  .pv-business .pv-biz-documents > text {
    font-size: 36px;
    letter-spacing: 0;
  }
}

@media (max-width: 360px) {
  .pv-scene .pv-narration {
    padding-inline: 15px;
  }
  .pv-scene .pv-caption {
    min-height: 97px;
  }
  .pv-scene .pv-caption > strong {
    font-size: 20px;
  }
}
