/* Shared phone and touch refinements. Loaded after page-specific styles. */
@media (max-width: 760px), (max-width: 950px) and (pointer: coarse) and (orientation: landscape) {
  html { -webkit-text-size-adjust: 100%; scroll-padding-top: 100px; }
  input, select, textarea { font-size: 16px !important; max-width: 100%; }
  #nav-menu { overflow-y: auto; overscroll-behavior: contain; padding: 18px 16px max(24px, env(safe-area-inset-bottom)) !important; justify-content: flex-start !important; }
  #nav-menu li { flex-shrink: 0; margin: 0 !important; }
  #nav-menu li a { display: inline-flex; align-items: center; min-height: 48px; padding: 4px 12px !important; font-size: 36px !important; }
  .quantity-buttons button, .quantity-button, .signature-purchase button,
  .side-cart#cart-modal .quantity-btn { width: 44px !important; height: 44px !important; min-width: 44px !important; min-height: 44px !important; }
  .quantity-buttons input, .signature-purchase input { height: 44px; }
  .side-cart#cart-modal .remove-item-btn { min-height: 44px; margin-top: 4px !important; }
  .side-cart#cart-modal .cart-modal-content { min-height: 0; overscroll-behavior: contain; }
  .side-cart#cart-modal .cart-modal-header { padding: max(12px, env(safe-area-inset-top)) 20px 12px; }
  .side-cart#cart-modal .cart-modal-footer { padding: 14px 20px max(16px, env(safe-area-inset-bottom)) !important; }
  .side-cart#cart-modal .bag-note { margin: 8px 0; }
  .side-cart#cart-modal .cart-item-name { overflow-wrap: anywhere; }
  .reviews-grid { grid-template-columns: minmax(0, 1fr) !important; }
  .review-head { grid-template-columns: minmax(0, 1fr); gap: 8px; }
  .review-meta { display: flex; flex-wrap: wrap; gap: 6px; min-width: 0; align-items: center; }
  .review-meta .verified { margin: 0; }
  .review-card { min-width: 0; overflow-wrap: anywhere; }
  .site-footer a { display: inline-block; padding-block: 7px; overflow-wrap: anywhere; }
  .tab-header, .thumbnail, .cookie-preferences { min-height: 44px; }
  .apw-cookie-notice { max-height: calc(100dvh - 24px); overflow-y: auto; overscroll-behavior: contain; bottom: max(12px, env(safe-area-inset-bottom)); }
  .signature-design { gap: 12px; }
}
@media (max-width: 950px) and (max-height: 500px) {
  .side-cart#cart-modal { overflow-y: auto; overscroll-behavior: contain; }
  .side-cart#cart-modal .cart-modal-content { flex: none !important; overflow: visible; }
  #nav-menu li a { font-size: 30px !important; }
}
@media (hover: none) {
  .product-card:hover, .btn:hover, .add-to-cart-btn:hover, .checkout-btn:hover,
  .signature-design:hover, .review-card:hover { transform: none !important; }
}
