:root {
    --color-primary: #1C9CC0;
    --color-heading: #14728C;
    --color-navy: #0A4558;
    --color-ink: #062832;
    --color-accent: #1B7A42;
    --color-background: #FFFFFF;
}

body {
    min-height: max(884px, 100dvh);
}

.rounded-theme {
    border-radius: 8px;
}

.h-13,
.min-h-13 {
    height: 3.25rem;
}

.min-h-13 {
    min-height: 3.25rem;
}

[data-mobile-menu]:not(.hidden) {
    display: block;
}

[data-filter-overlay] {
    display: none;
}

[data-filter-overlay].is-open {
    display: block;
}

[data-filter-chips] {
    scrollbar-width: none;
}

[data-filter-chips]::-webkit-scrollbar {
    display: none;
}

[data-filter-option]:has(:checked) {
    border-color: var(--color-navy);
    background: #e6f0f2;
    color: var(--color-navy);
}

[data-brand-categories].hidden,
[data-filter-chip][data-chip-brand].hidden {
    display: none;
}

.product-page-btn {
    min-width: 2.5rem;
    height: 2.5rem;
    padding: 0 0.75rem;
    border: 1px solid var(--color-navy);
    border-radius: 8px;
    background: #fff;
    color: var(--color-navy);
    font-size: 0.875rem;
    font-weight: 600;
}

.product-page-btn:hover:not(:disabled) {
    background: #e6f0f2;
}

.product-page-btn.is-current {
    background: var(--color-navy);
    color: #fff;
}

.product-page-btn:disabled {
    opacity: 0.4;
    cursor: not-allowed;
}

@media (max-width: 1023px) {
    [data-filter-sheet] {
        position: fixed;
        inset-inline: 0;
        bottom: 0;
        z-index: 50;
        display: none;
        max-height: min(88vh, 720px);
        flex-direction: column;
        overflow: hidden;
        border-radius: 16px 16px 0 0;
        background: var(--color-background);
        box-shadow: 0 -16px 40px rgba(6, 40, 50, 0.18);
    }

    [data-filter-sheet].is-open {
        display: flex;
    }

    [data-product-pager] {
        display: none !important;
    }
}

@media (min-width: 1024px) {
    [data-filter-overlay] {
        display: none !important;
    }

    [data-product-more] {
        display: none !important;
    }
}

[data-carousel-viewport] {
    scrollbar-width: none;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
}

[data-carousel-viewport]::-webkit-scrollbar {
    display: none;
}

[data-carousel-item] {
    flex: 0 0 100%;
    scroll-snap-align: start;
}

@media (min-width: 768px) {
    [data-carousel-item] {
        flex: 0 0 calc((100% - 1.5rem) / 2);
    }
}

@media (min-width: 1024px) {
    [data-carousel-item] {
        flex: 0 0 calc((100% - 3rem) / 3);
    }
}

input[type="search"]::-webkit-search-cancel-button {
    -webkit-appearance: none;
}

.fa-solid,
.fas {
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
    font-style: normal !important;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
}

.fa-brands,
.fab {
    font-family: "Font Awesome 6 Brands" !important;
    font-weight: 400 !important;
    font-style: normal !important;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
}
