/* ═══════════════════════════════════════════════════════════════
   RESPONSIVE — all breakpoints at the end
   ═══════════════════════════════════════════════════════════════ */

/* ── 1080px ────────────────────────────────────────────────── */
@media (max-width: 1080px) {
  .product-content { grid-template-columns: 460px 1fr; }
  .pi-review-summary { min-width: 300px; max-width: 300px; }
}

/* ── 970px ─────────────────────────────────────────────────── */
@media (max-width: 970px) {
  .product-content { grid-template-columns: 1fr; gap: 24px; padding-bottom: 0; }
  .product-details-container { padding-top: 16px; padding-bottom: 0; }

  .products-gallery {
    position: static;
    top: 0;
    max-width: 95vw;
    animation: none;
  }

  .product-details { animation: none; }

  .main-swiper { height: auto; aspect-ratio: 4 / 3; }
  .main-swiper img { height: 100%; max-height: none; }
  .thumbs-swiper { height: auto; }

  .pi-reviews-grid { grid-template-columns: 1fr; }

  .pi-review-summary {
    min-width: 0;
    max-width: none;
    position: relative;
    top: 0;
    padding-right: 0;
    border-right: none;
    border-bottom: 1px solid var(--border-light);
    padding-bottom: var(--spacing-2xl);
    margin-bottom: var(--spacing-sm);
  }

  .qo-grid { grid-template-columns: 1fr; }
  .qo-media { min-height: 320px; }
  .qo-panel { padding: var(--spacing-2xl) var(--spacing-lg); }
  .qo-form { grid-template-columns: 1fr; }
}

/* ── 768px ─────────────────────────────────────────────────── */
@media (max-width: 768px) {
  .product-details-container { padding: 12px var(--spacing-lg) 0; }
  .main-swiper { aspect-ratio: 1 / 1; }

  .product-name-section h1 { font-size: clamp(18px, 5vw, 26px); }
  .product-main-price { font-size: clamp(22px, 5.5vw, 28px); }
  .product-old-price { font-size: 15px; }

  #add-to-cart-button.main-btn-effect,
  .quick-order-trigger { padding: 12px 14px; font-size: 13px; }

  .features-list-product-details { grid-template-columns: 1fr; }

  .specs-table th,
  .specs-table td { padding: 10px 12px; font-size: 13px; }

  .pi-wrap { padding: 0 var(--spacing-lg); }
  .pi-tabs { gap: var(--spacing-xl); }
  .pi-desc-grid { grid-template-columns: 1fr; gap: var(--spacing-xl); }
  .pi-media { order: -1; }
  .pi-feature-grid { grid-template-columns: 1fr; }
  .pi-spec-list { grid-template-columns: 1fr; }

  .product-faq-detail { grid-template-columns: 1fr; }

  .vs-grid { grid-template-columns: 1fr; max-height: 360px; gap: 8px; }
  .vs-card-img { width: 48px; height: 48px; }
  .vs-card-name { font-size: 13px; }
  .vs-card-meta { font-size: 10px; }
  .vs-price { font-size: 13px; }

  .product-image-lightbox__content { flex-direction: column; }
  .product-image-lightbox__thumbs {
    flex-direction: row;
    width: 100%;
    height: 76px;
    overflow-x: auto;
    overflow-y: hidden;
  }
  .product-image-lightbox__thumb { width: 64px; height: 64px; }
}

/* ── 640px ─────────────────────────────────────────────────── */
@media (max-width: 640px) {
  .product-details-container { padding: 10px var(--spacing-md) 0; }
  .product-content { gap: 16px; }
  .product-details { gap: 6px; }

  .cat-pill { font-size: 10px; padding: 3px 9px; }
  .line-b { display: none; }

  .product-main-price { font-size: clamp(20px, 6vw, 26px); }
  .vs-option-value { padding: 6px 12px; font-size: 12px; }

  .product-quantity-section { gap: 10px; }
  #quantity { width: 50px !important; }
  .product-buttons-section { gap: 8px; }

  .gallery-state-badge {
    gap: 6px;
    min-height: 36px;
    max-width: calc(100% - 20px);
    padding-right: 8px;
    font-size: 11px;
  }
  .gallery-state-badge__label { min-height: 26px; padding-inline: 8px; }
  .gallery-state-badge__message { max-width: 150px; }

  .product-video-cta {
    width: 5rem;
    height: 5rem;
    min-height: 5rem;
    padding: 1rem 1.25rem;
  }
  .product-video-cta:hover,
  .product-video-cta:focus-visible { width: min(17rem, calc(100% - 2rem)); }
  .product-video-cta__text { font-size: .875rem; }
  .product-video-cta__icon,
  .product-video-cta__icon svg { width: 2rem; height: 2rem; }

  .product-video-toggle { right: 1rem; bottom: 1rem; width: 4em; height: 4em; }

  .product-faq-detail { width: min(100% - 24px, 960px); }
  .product-faq-detail .pfd-trigger { padding: 18px 0 0 0; }
  .product-faq-detail .pfd-panel-inner { padding-right: 32px; }
}

/* ── 430px ─────────────────────────────────────────────────── */
@media (max-width: 430px) {
  .product-details-container { padding: 8px var(--spacing-sm) 0; }
  .pi-wrap { padding: 0 var(--spacing-sm); }

  .swiper-button-next,
  .swiper-button-prev { display: none !important; }

  .product-name-section h1 { font-size: clamp(17px, 5.5vw, 22px); line-height: 1.25; }
  .product-main-price { font-size: clamp(20px, 6vw, 24px); }
  .product-old-price { font-size: 13px; }
  .product-discount { font-size: 11px; padding: 2px 7px; }

  .qty-btn { width: 36px; height: 36px; font-size: 16px; }
  #quantity { width: 44px !important; height: 36px; font-size: 14px; }
  .quantity-controls2 { height: 38px; }

  #add-to-cart-button.main-btn-effect,
  .quick-order-trigger { padding: 11px 12px; font-size: 12px; gap: 5px; }

  .add-to-wishlist-btn { width: 42px; height: 42px; font-size: 15px; }

  .pi-tab { padding: 9px 11px; font-size: var(--font-size-xs); }

  .pi-spec-list { padding: 0 var(--spacing-sm); }
  .pi-spec-row dt { font-size: 11px; }

  .pi-review { padding: var(--spacing-md); }
  .pi-review-name { font-size: 13px; }
  .pi-review-text { font-size: 13px; }
  .pi-review-summary { padding: var(--spacing-md); }

  .qo-order-summary {
    left: 14px;
    right: 14px;
    bottom: 14px;
    padding: var(--spacing-lg);
  }
}