/* Explain: Paw & Pantry layout utilities and responsive structure */
.paw-pattern {
    background-image:
        radial-gradient(circle at 8px 8px, rgba(15, 76, 92, 0.09) 0 3px, transparent 3.5px),
        radial-gradient(circle at 19px 7px, rgba(244, 124, 107, 0.10) 0 2px, transparent 2.5px),
        radial-gradient(circle at 14px 19px, rgba(94, 164, 109, 0.10) 0 2.5px, transparent 3px);
    background-size: 38px 38px;
}

.store-shell {
    width: min(1180px, calc(100vw - 2rem));
    margin-inline: auto;
}

.hero-bundle-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.2rem;
}

@media (min-width: 900px) {
    .hero-bundle-grid {
        grid-template-columns: 0.82fr 1.18fr;
        align-items: stretch;
    }
}

.catalog-layout {
    display: grid;
    gap: 1.25rem;
}

@media (min-width: 1024px) {
    .catalog-layout {
        grid-template-columns: 280px 1fr;
        align-items: start;
    }
}

.mobile-sticky-cart {
    position: fixed;
    left: 1rem;
    right: 1rem;
    bottom: max(1rem, env(safe-area-inset-bottom));
    z-index: 60;
}

.mobile-sticky-cart.is-footer-visible {
    display: none;
}

@media (min-width: 768px) {
    .mobile-sticky-cart {
        display: none;
    }
}

.product-detail-main {
    padding-bottom: 6.5rem;
}

@media (min-width: 768px) {
    .product-detail-main {
        padding-bottom: 0;
    }
}
