/* ============================================================
   VERDANT — Responsive
   ============================================================ */

/* Laptop */
@media (max-width: 1120px) {
    .product-grid { grid-template-columns: repeat(3, 1fr); }
    .footer-grid { grid-template-columns: 1fr 1fr 1fr 1.2fr; }
    .footer-news { grid-column: 1 / -1; }
    .hero-grid { grid-template-columns: 1fr .9fr; }
}

/* Tablet */
@media (max-width: 920px) {
    :root { --header-h: 64px; }
    .main-nav { display: none; }
    .nav-toggle { display: inline-flex; }
    .hero-grid { grid-template-columns: 1fr; gap: 3.5rem; }
    .hero-collage { min-height: 420px; max-width: 560px; margin-inline: auto; }
    .hero-sub { max-width: 100%; }
    .cat-grid { grid-template-columns: 1fr 1fr; }
    .product-grid { grid-template-columns: repeat(2, 1fr); }
    .product-grid--3 { grid-template-columns: repeat(2, 1fr); }
    .guides-grid--2 { grid-template-columns: 1fr; }
    .promises-grid { grid-template-columns: 1fr 1fr; }
    .reviews-grid { grid-template-columns: 1fr 1fr; }
    .guides-grid { grid-template-columns: 1fr 1fr; }
    .product-detail { grid-template-columns: 1fr; }
    .gallery { position: static; }
    .checkout-grid { grid-template-columns: 1fr; }
    .order-summary { position: static; }
    .about-split { grid-template-columns: 1fr; }
    .stats-band { grid-template-columns: 1fr 1fr; }
    .contact-grid { grid-template-columns: 1fr; }
    .qv-body { grid-template-columns: 1fr; }
    .qv-img { border-radius: var(--radius-lg) var(--radius-lg) 0 0; max-height: 300px; object-fit: cover; }
    .footer-grid { grid-template-columns: 1fr 1fr; gap: 2rem; }
    .footer-news { grid-column: 1 / -1; }
}

/* Large mobile */
@media (max-width: 640px) {
    :root { --space-xl: 3.5rem; --space-lg: 2rem; }
    .container { width: min(var(--container), 100% - 2rem); }
    h1 { font-size: clamp(2.2rem, 9vw, 2.9rem); }
    .hero { padding-top: var(--space-lg); }
    .hero-collage { min-height: 360px; }
    .hero-card { padding: .7rem .9rem; }
    .hero-card b { font-size: .9rem; }
    .cat-grid { grid-template-columns: 1fr; }
    .product-grid { grid-template-columns: 1fr 1fr; gap: .9rem; }
    .product-body { padding: .8rem .85rem 1rem; }
    .product-name { font-size: .96rem; }
    .add-btn { padding: .45rem .8rem; font-size: .8rem; }
    .product-quick { font-size: .82rem; padding: .6rem; }
    .reviews-grid { grid-template-columns: 1fr; }
    .guides-grid { grid-template-columns: 1fr; }
    .promises-grid { grid-template-columns: 1fr; }
    .stats-band { grid-template-columns: 1fr 1fr; gap: .8rem; }
    .stat-card { padding: 1.1rem .6rem; }
    .stat-card b { font-size: 1.8rem; }
    .shop-toolbar { flex-direction: column; align-items: stretch; }
    .shop-controls { justify-content: space-between; }
    .form-grid { grid-template-columns: 1fr; }
    .form-grid .span-2 { grid-column: auto; }
    .footer-grid { grid-template-columns: 1fr; gap: 1.8rem; }
    .footer-bottom { justify-content: center; text-align: center; }
    .announce-inner { justify-content: center; }
    .announce-inner svg { display: none; }
    .product-buy { align-items: stretch; }
    .product-buy .qty { align-self: center; }
    .qv-info { padding: 1.5rem; }
}

/* Small mobile */
@media (max-width: 380px) {
    .product-grid { grid-template-columns: 1fr; }
    .brand-name { font-size: 1.3rem; }
    .header-actions .icon-btn { display: none; }
    .hero-actions .btn { width: 100%; }
    .cta-actions .btn { width: 100%; }
    .stats-band { grid-template-columns: 1fr; }
}
