/* Avoid accidental double-tap zoom while preserving deliberate pinch zoom. */
.catalog-page { touch-action: manipulation; }
.catalog-search input { font-size: 16px; }
.catalog-page .color-filters { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 2px; overflow: visible; }
.catalog-page .color-filter { min-width: 0; }
.catalog-page main, .catalog-page .product-copy { min-width: 0; }
.catalog-group { margin-top: 24px; }
.catalog-group-heading { display: flex; align-items: center; gap: 10px; padding: 13px 15px; border-radius: 10px; background: var(--group-light, #eee4d3); }
.catalog-group-heading h3 { margin: 0; font-size: 16px; letter-spacing: 0; }
.catalog-group-heading .color-dot { width: 12px; height: 12px; border: 0; border-radius: 50%; flex: none; }
.catalog-group-heading .group-count { margin-left: auto; color: var(--ink); font-size: 12px; }
.catalog-page .detail-tabs { position: sticky; top: 0; z-index: 15; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; padding: 12px 0; background: var(--paper, #fff8eb); overflow: visible; white-space: normal; }
.detail-tabs a { min-height: 44px; display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 10px 12px; border: 1px solid #c4af90; border-radius: 8px; background: #fffcf6; color: #583b27; font-size: 13px; font-weight: 600; }
.detail-tabs a img { width: 14px; height: 14px; flex: none; }
.detail-tabs a[aria-current="location"] { background: #583b27; color: #fff8eb; border-color: #583b27; }
.detail-tabs a[aria-current="location"] img { filter: brightness(0) invert(1); }
.detail-tabs a:active { background: #eadbc4; color: #38271d; }
.catalog-page .detail-section { scroll-margin-top: var(--detail-nav-offset, 132px); }
@media(min-width: 600px) { .catalog-page .detail-tabs { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media(max-width: 420px) { .catalog-origin-hero .section-hero-copy h1 { font-size: clamp(22px, 6.4vw, 27px); } }
@media(max-width: 374px) { .catalog-page .color-dot, .catalog-page .all-dot { width: 29px; height: 29px; } }
@media(prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
