/* Keep product art inside its tile at intermediate and narrow widths. */
@media (min-width: 651px) and (max-width: 980px) {
  :root.v1-showroom .hero-grid {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }

  :root.v1-showroom .hero-detail {
    order: 0;
    min-height: 0;
    padding: 10px 0 20px;
  }

  :root.v1-showroom .bag-visual {
    order: 1;
    width: min(100%, 760px);
    min-height: 520px;
    margin: 0 auto;
  }

  :root.v1-showroom .hero-rail {
    order: 2;
    width: 100%;
    min-height: 0;
    flex-direction: column;
    gap: 16px;
  }

  :root.v1-showroom .hero-rail .bag-selector {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    min-height: 0;
    border: 0;
  }

  :root.v1-showroom .bag-tab,
  :root.v1-showroom .bag-tab:hover,
  :root.v1-showroom .bag-tab.active {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: auto;
    min-height: 40px;
    padding: 4px 10px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }

  :root.v1-showroom .tab-arrow,
  :root.v1-showroom .selector-hint,
  :root.v1-showroom .selector-indicator { display: none; }

  :root.v1-showroom .hero-rail .hero-certifications {
    position: static;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 24px;
    padding: 0;
  }

  :root.v1-showroom .hero-intro { margin: 18px 0 22px; }
}

@media (max-width: 650px) {
  .category-image,
  .popular-image {
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
  }

  .category-image {
    height: clamp(100px, 22vw, 130px);
  }

  .category-image img {
    display: block;
    width: 90%;
    height: 90%;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    flex: none;
  }

  .popular-image {
    height: clamp(150px, 35vw, 210px);
  }

  .popular-image img {
    display: block;
    width: 84%;
    height: 84%;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    flex: none;
  }

  .popular-info {
    padding-top: 8px;
  }

  /* Version 1 uses the same mobile reading order as version 2. */
  :root.v1-showroom .hero-grid {
    margin-top: 0;
    gap: 12px;
  }

  :root.v1-showroom .hero-detail {
    order: 0;
    padding: 20px 6px 4px;
  }

  :root.v1-showroom .bag-visual {
    order: 1;
    width: 100%;
  }
  :root.v1-showroom .hero-rail { order: 2; }

  :root.v1-showroom .hero-rail .bag-selector,
  :root.v1-showroom .bag-visual {
    margin-left: auto;
    margin-right: auto;
  }

  :root.v1-showroom .hero-rail .bag-selector { justify-content: center; }

  :root.v1-showroom .hero-detail .eyebrow { margin-bottom: 16px; }
  :root.v1-showroom .hero-intro { margin: 18px 0 20px; }
}

@media (max-width: 980px) {
  :root.v1-showroom .hero-copy-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  :root.v1-showroom .hero-detail .eyebrow,
  :root.v1-showroom .hero-intro { text-align: center; }

  :root.v1-showroom .hero-intro {
    max-width: 520px;
    margin-left: auto;
    margin-right: auto;
  }
}
