/* Client-selected V1 refinements. Keep labels anchored to their bag by scaling
   the image and hotspot layer together. */
:root.v1-showroom .bag-float { scale: 1.07; transform-origin: center center; }
:root.v1-showroom .bag-image-window { overflow: visible; }

@media (min-width: 651px) and (max-width: 980px) {
  :root.v1-showroom .bag-float { scale: 1.05; }
}

:root.v1-showroom .explore-link {
  min-width: 190px;
  justify-content: space-between;
  gap: 28px;
  padding: 0;
  color: #2b4358;
  font-size: 18px;
  line-height: 1.2;
}
:root.v1-showroom .explore-link .explore-circle { display: none; }
:root.v1-showroom .explore-link::after {
  content: '>';
  font-size: 24px;
  font-weight: 400;
  line-height: 1;
  transition: transform .25s ease;
}
:root.v1-showroom .explore-link:hover::after { transform: translateX(4px); }

.product-page .detail-meta{display:flex;align-items:baseline;flex-wrap:wrap;gap:14px;margin:0 0 10px}
.product-page .detail-copy .detail-meta .eyebrow,
.product-page .detail-meta .detail-code{margin:0}
.product-page .detail-meta .detail-code{font-size:12px;letter-spacing:.04em;color:#90959a}

:root.v1-showroom .docs-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
:root.v1-showroom .doc-card { min-width: 0; }

.company-main .location-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.company-main .location-grid article { min-width: 0; }
.company-main .location-grid dd { overflow-wrap: anywhere; }
.company-main #locations .move-notice { margin-top: 26px; }

@media (max-width: 1120px) {
  .company-main .location-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .company-main .location-grid article:last-child { grid-column: 1 / -1; }
}

@media (max-width: 1180px) {
  :root.v1-showroom .docs-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  :root.v1-showroom .docs-grid .doc-card:last-child { grid-column: 1 / -1; }
}

@media (max-width: 700px) {
  :root.v1-showroom .docs-grid { grid-template-columns: minmax(0, 1fr); }
  :root.v1-showroom .docs-grid .doc-card:last-child { grid-column: auto; }
  .company-main .location-grid { grid-template-columns: minmax(0, 1fr); }
  .company-main .location-grid article:last-child { grid-column: auto; }
}

@media (max-width: 650px) {
  :root:not(.design-v2) .product-page .detail-copy > h1,
  :root:not(.design-v2) .product-page .detail-copy > .detail-description{text-align:left}
  .product-page .product-navigation{display:flex;justify-content:space-between;align-items:center;width:100%;gap:12px;margin:0 0 22px;white-space:nowrap}
  .product-page .product-navigation > *{flex:0 0 auto}
  .product-page .detail-meta{margin-bottom:12px}
  :root.v1-showroom .explore-link { font-size: 16px; }
  :root.v1-showroom .bag-visual { min-height: 360px; }
  :root.v1-showroom .bag-float { scale: 1.02; }
  :root.v1-showroom .hero-detail { padding-top: 20px; padding-bottom: 0; }
  :root.v1-showroom .hero-detail .eyebrow { margin-bottom: 14px; }
  :root.v1-showroom .hero-intro { display: none; }
  :root.v1-showroom .explore-link { margin-top: 24px; }
  :root.v1-showroom .hero-rail .bag-selector { margin-top: 0; }

  :root:not(.design-v2) .parts-overview .section-head,
  :root:not(.design-v2) .docs-section .section-head,
  :root:not(.design-v2) .why-copy,
  :root:not(.design-v2) .contact-banner-copy,
  :root:not(.design-v2) .catalog-hero-copy,
  :root:not(.design-v2) .company-intro,
  :root:not(.design-v2) .company-heading,
  :root:not(.design-v2) .company-cta,
  :root:not(.design-v2) .contact-information,
  :root:not(.design-v2) .detail-copy > h1,
  :root:not(.design-v2) .detail-copy > .detail-description {
    text-align: center;
  }

  :root:not(.design-v2) .parts-overview .section-head,
  :root:not(.design-v2) .docs-section .section-head { align-items: center; }
  :root:not(.design-v2) .company-intro .intro-bottom,
  :root:not(.design-v2) .company-cta { align-items: center; }
  :root:not(.design-v2) .company-intro .intro-bottom p { margin-inline: auto; }
  :root:not(.design-v2) .company-heading > p:last-child { margin-inline: auto; }
  :root:not(.design-v2) .why-copy > p:not(.eyebrow) { margin-inline: auto; }
  :root:not(.design-v2) .contact-banner-copy { width: 100%; }
}

@media (min-width:1001px) {
  :root:not(.design-v2) .product-page .detail-copy > .product-navigation { order:-1; }
}

@media (max-width:1000px) {
  :root:not(.design-v2) .product-page .product-navigation {
    display:flex;
    justify-content:space-between;
    align-items:center;
    width:100%;
    gap:12px;
    margin:24px 0 0;
    padding-top:18px;
    border-top:1px solid #e5e6e5;
    white-space:nowrap;
  }
}

@media (max-width:650px) {
  :root:not(.design-v2) .product-page .detail-main { padding-top:4px; }
  :root:not(.design-v2) .product-page .detail-main .breadcrumbs { padding-top:10px; }
}
