/* Phone grids stay two columns through tablet. Desktop is a restrained extension. */
@media (min-width: 480px) {
    .quick-action { padding-inline: 16px; }
    .quick-action span { font-size: 16px; }
    .category-card h3 { font-size: 16px; }
    .product-body { padding-inline: 8px; }
    .social-icons { grid-template-columns: repeat(4, 28px); }
}
@media (min-width: 768px) {
    :root { --page-gutter: 24px; }
    .home-hero { max-width: 1440px; border-radius: 22px; }
    .quick-actions { padding-block-start: 22px; }
    .home-section { margin-block-start: 44px; }
    .section-heading h2 { font-size: 27px; }
    .category-grid, .product-grid, .reason-grid { gap: 20px; }
    .product-body h3 { font-size: 16px; min-height: 52px; }
    .product-price { font-size: 24px; }
    .product-badge { font-size: 12px; }
    .review-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
    .trust-strip { margin-block-start: 30px; }
    .trust-item { flex-direction: row; align-items: center; gap: 14px; padding-inline: 14px; }
    .trust-item .icon { width: 32px; height: 32px; }
    .footer-main { grid-template-columns: 1fr 1.5fr 1fr; }
    .footer-links { grid-template-columns: minmax(0,1fr); }
    .footer-tagline { grid-column: 2; grid-row: 1; align-self: end; }
    .footer-bottom { flex-direction: row; justify-content: space-between; }
}
@media (min-width: 1024px) {
    :root { --page-gutter: 32px; }
    .quick-grid, .category-grid, .product-grid, .reason-grid { grid-template-columns: repeat(4, minmax(0,1fr)); }
    .quick-action { padding-inline: 14px; }
    .category-card h3 { min-height: 66px; }
    .product-body { padding: 14px 10px 10px; }
    .reason-card { padding-block: 24px; }
    .reason-card h3 { font-size: 16px; }
    .review-card { padding: 20px; }
}
