/* Mobile storefront refinement. Keep the desktop catalogue unchanged. */
.quotes-enabled .product .price,
.quotes-enabled .detail-price,
.quotes-enabled .totals,
.quotes-enabled .demo-price-label,
.quotes-enabled .tiny-note { display: none; }
.quotes-enabled .product-bottom { justify-content: flex-end; }
.quotes-enabled .bag-line-bottom { margin-top: 9px; }
.live-quote-items { background: #fff7e9; border: 1px solid #ecd7b4; border-radius: 16px; padding: 14px 16px; margin: 16px 0; font-size: 14px; }
.live-quote-items ul { padding-left: 19px; margin: 8px 0 0; }
.live-quote-items li { margin: 7px 0; overflow-wrap: anywhere; }
#liveQuoteResult { font-size: 14px; line-height: 1.5; }
#liveQuoteResult a { color: #9b4e27; text-decoration: underline; }
#liveQuoteDialog { border-radius: 22px; }
@media (max-width: 800px) {
  html { scroll-padding-top: 66px; }
  .site-header { gap: 5px 10px; }
  .site-header .search { min-height: 48px; border-radius: 16px; }
  .site-header .search input { font-size: 16px; }
  .category-bar .category { min-height: 44px; display: inline-flex; align-items: center; }

  .intro { min-height: 0; margin: 12px 0 14px; }
  .intro-copy { padding: 16px; }
  .intro h1 { line-height: 1.06; }
  .hero-photo { min-height: 0; height: auto; }
  .hero-cta { min-height: 44px; display: inline-flex; align-items: center; }

  /* Product categories should be reachable on the first screen. */
  .promo-grid { display: none; }
  .category-discovery { margin: 8px 0 25px; scroll-margin-top: 70px; }
  .section-heading { margin-bottom: 12px; }
  .category-tiles { gap: 15px 9px; }
  .category-tile { min-width: 0; }
  .category-tile-image { height: clamp(85px, 25vw, 120px); }
  .category-tile strong { font-size: .82rem; line-height: 1.25; }
  .category-tile small { font-size: .69rem; line-height: 1.3; }

  .store-layout { scroll-margin-top: 70px; }
  .catalogue-controls { flex-wrap: wrap; }
  .catalogue-controls select { min-height: 44px; }
  .product-grid { scroll-padding-inline: 4vw; }
  .product { scroll-snap-align: start; }
  .product-image-open { min-height: 130px; }
  .product-bottom .add, .product-bottom .quantity { min-height: 44px; }
  .details-button { min-height: 44px; }

  /* Once a trade is selected, show all its products instead of a hidden carousel. */
  #products.focused-catalogue .product-grid {
    display: grid;
    grid-auto-flow: row;
    grid-auto-columns: auto;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: visible;
    margin-right: 0;
    padding-right: 0;
  }
  #products.focused-catalogue .product { width: 100%; }
  #products.focused-catalogue .product-photo,
  #products.focused-catalogue .product-photo img { height: 125px; }

  .mobile-nav { min-height: 64px; }
  .mobile-nav button { min-height: 46px; }
  dialog { width: min(100% - 16px, 540px); max-height: 92dvh; }
  dialog .primary-button { min-height: 50px; }
  #liveQuoteDialog { width: 100%; max-width: none; max-height: 92dvh; margin: auto 0 0; border-radius: 24px 24px 0 0; padding-bottom: calc(20px + env(safe-area-inset-bottom)); }
}

@media (max-width: 380px) {
  .intro-copy { padding: 13px; }
  .intro h1 { font-size: 1.55rem; }
  .category-tile strong { font-size: .76rem; }
  #products.focused-catalogue .product-grid { gap: 8px; }
  #products.focused-catalogue .product-body { padding: 9px; }
  #products.focused-catalogue .product-bottom { flex-wrap: wrap; }
}
