/* =====================================================
   ≤ 991.98px  (LG – tablet landscape and below)
===================================================== */

@media (max-width: 991.98px) {

    /* Header – disable all hover colour/style changes */
    .site-header {
        transition: none;
    }

    .site-header:not(.secondary):hover {
        background-color: transparent;
    }

    .site-header:not(.secondary):hover .nav-logo svg {
        color: var(--white);
    }

    .site-header:not(.secondary):hover .header-main {
        border-top: 1px solid hsla(0, 0%, 100%, 0.1);
        border-bottom: 1px solid hsla(0, 0%, 100%, 0.1);
    }

    .site-header:not(.secondary):hover .topbar-links a,
    .site-header:not(.secondary):hover .topbar-languages a {
        color: var(--white) !important;
        opacity: 0.55;
    }

    .site-header:not(.secondary):hover .topbar-languages a.active {
        opacity: 1 !important;
    }

    /* Nav */
    .nav-left,
    .nav-right {
        display: none;
    }

    .nav-toggle {
        display: flex;
    }

    .main-nav {
        grid-template-columns: auto 1fr auto;
    }

    .nav-logo {
        padding: 0;
        justify-self: center;
    }

    /* Catalog */
    #catalog-filter-drawer {
        position: fixed;
        top: 0;
        left: 0;
        height: 100dvh;
        width: 20rem;
        max-width: 85vw;
        background-color: var(--white);
        transform: translateX(-100%);
        transition: transform 0.38s cubic-bezier(0.4, 0, 0.2, 1);
        z-index: 1060;
        overflow-y: auto;
        display: flex;
        flex-direction: column;
        padding-bottom: 2rem;
        margin: 0 !important;
        padding-top: 0 !important;
    }

    #catalog-filter-drawer.is-open {
        transform: translateX(0);
    }

    #catalog-filter-drawer .catalog-filters {
        padding: 0 1.5rem;
        flex-direction: column;
        flex-wrap: nowrap;
        gap: 1.5rem;
    }

    .catalog-filter-group {
        flex: unset;
    }

    /* Product detail */
    .product-detail-name {
        font-size: 2.25rem;
    }

    .product-gallery-thumbs {
        width: 4rem;
    }

    .product-gallery-thumb {
        width: 4rem;
    }

    .site-header {
        background-color: transparent !important;
    }

    .floating-inquiry {
        display: none !important;
    }

    .header-topbar {
        display: none;
    }
}


/* =====================================================
   ≤ 767.98px  (MD – tablet portrait and below)
===================================================== */

@media (max-width: 767.98px) {

    .footer-contact-item {
        justify-content: center;
    }

    .service-block {
        margin-bottom: 3rem;
    }

    .sections {
        margin-bottom: 3rem;
    }

    /* Header */
    .topbar-links {
        display: none;
    }

    .topbar-nav {
        justify-content: flex-end;
    }

    .nav-logo svg {
        height: 1.875rem;
    }

    .d-flex.justify-content-between.align-items-center.mb-4 {
        flex-direction: column;
        align-items: start !important;
    }

    /* Hero */
    .hero-heading {
        font-size: 2.25rem;
    }

    .hero-btns {
        flex-direction: column;
        align-items: center;
    }

    /* Catalog */
    .catalog-color-swatch-inner {
        width: 2.75rem;
        height: 2.75rem;
    }

    .catalog-results-bar {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.75rem;
    }

    /* Product detail */
    .product-gallery {
        flex-direction: column-reverse;
    }

    .product-gallery-thumbs {
        flex-direction: row;
        width: 100%;
        overflow-x: auto;
        overflow-y: visible;
    }

    .product-gallery-thumb {
        width: 4rem;
    }

    .product-gallery-main {
        width: 100%;
        aspect-ratio: 4 / 3;
    }

    .product-detail-name {
        font-size: 2rem;
    }

    .product-detail-purchase {
        gap: 1.25rem;
    }

    /* Newsletter modal */
    .newsletter-image {
        display: none;
    }

    .newsletter-modal {
        width: min(32rem, 92vw);
    }

    .newsletter-body {
        padding: 2.5rem 1.75rem;
    }
}

/* =====================================================
   ≤ 575.98px  (SM – mobile and below)
===================================================== */

@media (max-width: 575.98px) {
    .history-block-content {
        padding: 0 !important;
        padding-top: 1rem !important;
    }

    .history .content {
        padding-top: 1rem !important;
    }

    /* Contact */
    .contact-row {
        flex-direction: column;
    }

    /* Newsletter modal */
    .newsletter-body {
        padding: 2rem 1.25rem;
    }

    .newsletter-heading {
        font-size: 1.875rem;
    }

    /* Footer bottom */
    .footer-bottom .row {
        flex-direction: column;
        align-items: center !important;
        gap: 1.25rem;
        text-align: center;
    }

    .footer-bottom .col-4 {
        width: 100%;
        max-width: 100%;
        flex: 0 0 100%;
    }

    .footer-bottom-left {
        align-items: center;
        gap: 0.75rem 1.5rem;
        justify-content: center;
        flex-direction: row;
    }

    .footer-bottom-right {
        justify-content: center;
        flex-wrap: wrap;
        gap: 0.75rem 1.5rem;
    }
}

@media (max-width: 506.98px) {
    .btn-group {
        flex-direction: column;
        width: 100%;
    }

    .btn-group .btn {
        width: 100% !important;
        justify-content: center;
    }

    .black-outline-btn {
        width: 100% !important;
        justify-content: center;
    }

}