/* Mobile optimizations (shared by landing + checkout) */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
html, body { overflow-x: hidden; max-width: 100%; }
img, video, svg, iframe { max-width: 100%; height: auto; }

/* Avoid iOS auto-zoom on input focus (needs >=16px) */
@media (max-width: 768px) {
  input, select, textarea { font-size: 16px !important; }
}

@media (max-width: 600px) {
  /* Larger, easier tap targets */
  .template-express-paypal-btn,
  #checkout-btn,
  .sku-mode__product-card .product-count-input > span {
    min-height: 44px;
  }
  #checkout-btn {
    min-height: 54px;
    font-size: 17px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  /* Checkout product rows: comfortable spacing + steppers */
  .sku-mode__product-card { padding: 10px; gap: 8px; }
  .sku-mode__product-card .product-image img { width: 56px; height: 56px; object-fit: contain; }
  .product-count-input > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
  }
  .product-count-input input { width: 40px; text-align: center; }

  /* Order summary readability */
  .product-price-card .title span,
  .price-info-item,
  .price-item,
  .total-section { font-size: 14px; }
  .summary-thumb { width: 30px; height: 30px; }

  /* Payment method badges wrap nicely */
  .template-payment-methods,
  .payment-methods,
  .checkout-methods { flex-wrap: wrap; }
}

/* Sticky landing CTA: safe-area padding on notch phones */
@supports (padding: max(0px)) {
  @media (max-width: 600px) {
    .sticky-cta, .fixed-cta, [class*="sticky"] [class*="btn"] {
      padding-bottom: max(env(safe-area-inset-bottom), 8px);
    }
  }
}
