@media (max-width: 1023px) {
    .child-category-cards-grid,
    .child-category-products.view-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .category-archive-container {
        display: block;
        margin-top: var(--df-space-4);
        margin-bottom: var(--df-space-16);
    }

    .parent-category-header {
        padding-top: var(--df-space-6);
    }

    .category-title {
        font-size: clamp(2.25rem, 12vw, 3.25rem);
    }

    /* Shared by filter and category-navigation drawers. */
    .drag-handle-bar {
        width: 2.5rem;
        height: 0.25rem;
        border-radius: 999px;
        background: var(--df-border-strong);
    }

    .display-controls {
        margin-top: var(--df-space-6);
    }

    .child-category-products.view-grid,
    .child-category-cards-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: var(--df-space-4);
    }

    .product-table-scroll {
        position: relative;
        border-radius: var(--df-radius-control);
    }

    .product-table-scroll::after {
        content: 'Scroll to compare';
        position: sticky;
        right: var(--df-space-3);
        bottom: var(--df-space-2);
        float: right;
        padding: 0.25rem 0.5rem;
        border-radius: 0.25rem;
        background: rgb(23 27 75 / 86%);
        color: var(--df-white);
        font-size: 0.6875rem;
        pointer-events: none;
    }

    .product-pagination {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 479px) {
    .child-category-products.view-grid,
    .child-category-cards-grid {
        grid-template-columns: 1fr;
    }

    .display-controls {
        align-items: flex-end;
    }

    .category-card-body,
    .product-card-body {
        padding: 20px;
    }

    .product-card:hover,
    .child-category-card:hover {
        transform: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .child-category-card,
    .product-card,
    .card-image img,
    .product-card-image img,
    .category-card-arrow svg {
        transform: none !important;
    }
}
