a,
a:hover,
a:focus,
a:focus-visible,
a:active,
.blog-card,
.blog-card:hover,
.blog-card:focus,
.blog-card:focus-visible,
.blog-card:active {
    outline: none !important;
    outline-style: none !important;
    box-shadow: none !important;
}

html.modal-open,
body.modal-open,
html.modal-open body,
body.modal-open html {
    overflow: hidden !important;
    height: 100vh !important;
    max-height: 100vh !important;
    touch-action: none !important;
}

/* ==========================================================
   BLOG ARCHIVE VIDEO BANNER
========================================================== */

.blog-archive-video-banner {
    position: relative;

    width: 100%;

    min-height: 620px;

    display: flex;

    align-items: center;

    justify-content: center;

    overflow: hidden;

    background: #ece9e8;

    isolation: isolate;
}


/* ==========================================================
   VIDEO
========================================================== */

.blog-archive-video-banner__video {
    position: absolute;

    inset: 0;

    width: 100%;

    height: 100%;

    object-fit: cover;

    object-position: center;

    z-index: -3;

    /*
     * Minimal editorial motion.
     *
     * The video itself remains the main animation.
     */
    transform: scale(1.03);

    animation:
        blogBannerVideoZoom 16s ease-in-out infinite alternate;
}


/* ==========================================================
   SOFT OVERLAY
========================================================== */

.blog-archive-video-banner__overlay {
    position: absolute;

    inset: 0;

    z-index: -2;

    background:

        linear-gradient(90deg,

            rgba(255,
                255,
                255,
                0.88) 0%,

            rgba(255,
                255,
                255,
                0.58) 40%,

            rgba(255,
                255,
                255,
                0.14) 100%);

    pointer-events: none;
}


/* ==========================================================
   CONTENT
========================================================== */

.blog-archive-video-banner__content {
    width: 100%;

    max-width: 1280px;

    margin: 0 auto;

    padding:

        90px 48px;

    display: flex;

    flex-direction: column;

    align-items: flex-start;

    justify-content: center;

    color: #252525;

    animation:

        blogBannerContentReveal 1s ease-out both;
}


/* ==========================================================
   EYEBROW
========================================================== */

.blog-archive-video-banner__eyebrow {
    display: inline-flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 18px;

    color: #a65d64;

    font-size: 11px;

    font-weight: 600;

    line-height: 1.2;

    letter-spacing: 0.18em;

    text-transform: uppercase;
}


.blog-archive-video-banner__eyebrow::before {
    content: '';

    width: 34px;

    height: 1px;

    background: #a65d64;
}


/* ==========================================================
   TITLE
========================================================== */

.blog-archive-video-banner__content h1 {
    max-width: 650px;

    margin:

        0 0 18px;

    color: #292929;

    font-size:

        clamp(42px,
            6vw,
            82px);

    font-weight: 400;

    line-height: 0.98;

    letter-spacing: -0.045em;
}


/* ==========================================================
   DESCRIPTION
========================================================== */

.blog-archive-video-banner__content p {
    max-width: 470px;

    margin:

        0 0 34px;

    color: #4d4d4d;

    font-size: 16px;

    font-weight: 400;

    line-height: 1.7;
}


/* ==========================================================
   EXPLORE BUTTON
========================================================== */

.blog-archive-video-banner__scroll {
    display: inline-flex;

    align-items: center;

    gap: 14px;

    min-height: 44px;

    padding:

        0 18px;

    border:

        1px solid #a65d64;

    border-radius: 999px;

    color: #a65d64;

    background:

        rgba(255,
            255,
            255,
            0.35);

    font-size: 12px;

    font-weight: 500;

    line-height: 1;

    letter-spacing: 0.04em;

    text-decoration: none;

    transition:

        color 300ms ease,

        background 300ms ease,

        transform 300ms ease;
}


.blog-archive-video-banner__scroll:hover {
    color: #ffffff;

    background: #a65d64;

    transform:

        translateY(-3px);
}


.blog-archive-video-banner__arrow {
    display: inline-flex;

    align-items: center;

    justify-content: center;

    width: 20px;

    height: 20px;

    font-size: 17px;

    line-height: 1;

    animation:

        blogBannerArrow 1.8s ease-in-out infinite;
}


.blog-archive-video-banner__scroll:hover .blog-archive-video-banner__arrow {
    animation: none;
}


/* ==========================================================
   VIDEO MINIMAL ZOOM
========================================================== */

@keyframes blogBannerVideoZoom {

    from {

        transform:

            scale(1.03);

    }


    to {

        transform:

            scale(1.09);

    }

}


/* ==========================================================
   CONTENT REVEAL
========================================================== */

@keyframes blogBannerContentReveal {

    from {

        opacity: 0;

        transform:

            translateY(24px);

    }


    to {

        opacity: 1;

        transform:

            translateY(0);

    }

}


/* ==========================================================
   ARROW MOTION
========================================================== */

@keyframes blogBannerArrow {

    0%,

    100% {

        transform:

            translateY(0);

    }


    50% {

        transform:

            translateY(4px);

    }

}


/* ==========================================================
   MOBILE
========================================================== */

@media screen and (max-width: 767px) {

    .blog-archive-video-banner {

        min-height: 480px;

    }


    .blog-archive-video-banner__video {

        object-position:

            58% center;

    }


    .blog-archive-video-banner__overlay {

        background:

            linear-gradient(90deg,

                rgba(255,
                    255,
                    255,
                    0.88) 0%,

                rgba(255,
                    255,
                    255,
                    0.58) 100%);

    }


    .blog-archive-video-banner__content {

        padding:

            70px 22px;

    }


    .blog-archive-video-banner__eyebrow {

        margin-bottom: 14px;

        font-size: 9px;

    }


    .blog-archive-video-banner__content h1 {

        margin-bottom: 15px;

        font-size:

            clamp(39px,
                13vw,
                58px);

        line-height: 1;

    }


    .blog-archive-video-banner__content p {

        max-width: 340px;

        margin-bottom: 28px;

        font-size: 14px;

        line-height: 1.65;

    }

}


/* ==========================================================
   REDUCED MOTION
========================================================== */

@media (prefers-reduced-motion: reduce) {

    .blog-archive-video-banner__video {

        animation: none;

    }


    .blog-archive-video-banner__content {

        animation: none;

    }


    .blog-archive-video-banner__arrow {

        animation: none;

    }


    .blog-archive-video-banner__scroll {

        transition: none;

    }

}

/* ==========================================================
   BLOG ARCHIVE
   Uses the same blog-card and latest-posts-grid styles
========================================================== */

.blog-archive-page {
    background: #f7f7f7;
}

.blog-archive {
    padding: 0 0 100px;
}

.blog-archive .container {
     width: min(100% - 44px,
            1153px);
    margin: 0 auto;
    padding-inline: var(--container-padding);
}

/* ----------------------------------------------------------
   Header
---------------------------------------------------------- */

.blog-archive__heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 40px;
    margin-bottom: 44px;
}

.blog-archive__heading h1 {
    margin: 5px 0 0;
}

/* ----------------------------------------------------------
   Filters
---------------------------------------------------------- */
.blog-archive__filters__results-wrapper {
    display: flex;
    flex-direction: row;
    gap: 40px;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
}


.blog-archive__filters {
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    gap: 12px;
    flex-shrink: 0;
}

.blog-filter-result--sort {
    display: flex;
    flex-direction: column;
    gap: 12px;
    flex: 1;
    min-width: 0;
    width: 100%;
}

/* Sort Wrapper */
.sort-wrapper {
    position: relative;
    display: flex;
    justify-content: end;
    align-items: center;
    padding-block: 12px;
}

/* Button */
.sort-wrapper .sort-button {
    background: transparent !important;
    background-color: transparent !important;
    color: #222222 !important;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    position: relative !important;
    -webkit-tap-highlight-color: transparent !important;
}

.sort-wrapper .sort-button::before,
.sort-wrapper .sort-button::after {
    display: none !important;
    content: "" !important;
    left: -12px;
}


/* Popup Box */
.sort-wrapper .sort-popup {
    position: absolute;
    top: 36px;
    right: 0;
    width: 240px;
    background: white;
    border-radius: 10px;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
    padding: 8px 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    transition: 0.25s ease;
    z-index: 2147483647 !important;
    display: flex;
    flex-direction: column;
}


/* Show Popup */
.sort-wrapper .sort-popup.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}


/* Options */
.sort-wrapper .sort-option {
    padding: 12px 16px;
    cursor: pointer;
    font-size: 15px;
    color: #333;
    transition: background 0.2s;
    display: flex;
    align-items: center;
    gap: 6px;
}

.sort-wrapper .sort-option:hover {
    background: #f1f5f9;
}

.sort-wrapper .sort-option input[type="radio"] {
    accent-color: #a65d64;
}

/* Selected option */
.sort-wrapper .sort-option.active {
    color: #a65d64;
    font-weight: bold;
}


/* Arrow */
.sort-wrapper .arrow {
    transition: transform 0.3s;
}

.sort-wrapper .sort-button.open .arrow {
    transform: rotate(180deg);
}

.blog-filter-chips__wrapper {
    display: flex;
    justify-content: space-between;
    flex-direction: row;
    padding-block: 12px;
}

.chip-container {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.chip {
    display: inline-flex;
    align-items: center;
    color: var(--text-icons-text-high-emphasis, #121212);
    padding: 4px 4px;
    font-size: 13px;
    border-radius: 100px;
    border: 1px solid var(--Decorative-boarder-active, #0E101A);
    padding-left: 14px;
}

.chip button {
    border: none !important;
    background: transparent;
    color: #2a2a2a;
    cursor: pointer;
    margin-left: 8px;
    padding: 6px 8px; 
    font-weight: 600;
    font-style: SemiBold;
    font-size: 13px;
    letter-spacing: 2%;
    vertical-align: middle;
}

.accordion {
    width: 300px;
    border-bottom: 1px solid #ccc;
    overflow: hidden;
    background: #fff;
}

.accordion .count {
    font-weight: 600;
    font-size: 13px;
    line-height: 20px;
    letter-spacing: 2%;
    vertical-align: middle;
    color: var(--text-icons-text-ic-medium-emphasis, #454A53);
    background: var(--Backgrounds-bg-surface, #F5F6F7);
    width: 24px;
    height: 24px;
    opacity: 1;
    border-radius: 100px;
    gap: 8px;
    padding: 8px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.accordion .accordion-header .fiter-by-text {
    font-weight: 500;
}

.accordion-header {
    padding: 12px 12px 12px 2px;
    cursor: pointer;
    font-size: 18px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.accordion-header-text {
    margin: 0;
    color: #121212;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.08em;
    text-transform: capitalize;
}

.accordion-content {
    display: none;
    padding: 8px 12px;
    max-height: 320px;
    overflow-y: auto;
}

.accordion-content::-webkit-scrollbar {
    width: 5px;
}

.accordion-content::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 4px;
}

.accordion-content::-webkit-scrollbar-thumb {
    background: #cccccc;
    border-radius: 4px;
}

.accordion-content::-webkit-scrollbar-thumb:hover {
    background: #999999;
}

.accordion-content label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 0;
    cursor: pointer;
    font-size: 14px;
    color: #53545C;
    width: 100%;
}

/* Bigger checkbox */
.accordion-content input[type="checkbox"] {
    width: 16px;
    height: 16px;
    margin-right: 10px;
    border-radius: 0;
    accent-color: #000;
    vertical-align: middle;
    border: 1px solid #a0a0a0;
    flex-shrink: 0;
}

.accordion-content .filter-item-text {
    flex-grow: 1;
    font-size: 14px;
    font-weight: 400;
    color: #121212;
}

.accordion-content .filter-item-count {
    font-size: 13px;
    font-weight: 400;
    color: #888888;
    margin-left: 8px;
    white-space: nowrap;
    text-align: right;
}

.accordion .count-container {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 16px;
}

.accordion-content label {
    display: block;
    margin-bottom: 10px;
    cursor: pointer;
}

.active .accordion-content {
    display: block;
}

.accordion .arrow {
    width: 8px;
    height: 8px;
    border-right: 1.5px solid #000;
    border-bottom: 1.5px solid #000;
    transform: rotate(45deg);
    transition: transform 0.3s ease;
    margin-bottom: 3px;
}

/* Rotate when accordion is open */
.accordion.active .arrow {
    transform: rotate(-135deg);
    margin-bottom: 0;
}

.blog-filter {
    min-width: 160px;
}

.blog-filter label {
        display: block;
    margin: 0 0 9px;
    font-size: 14px;
    line-height: 100%;
    padding-block: 6px;
    color: #121212;
    font-weight: 400;
    letter-spacing: 0.08em;
    text-transform: capitalize;

}

.blog-filter__select {
    width: 100%;

    height: 47px;

    padding: 0 40px 0 17px;

    color: #3e3e3e;


    font-size: 14px;

    background-color: #ffffff;

    border: 1px solid #d6d6d6;

    border-radius: 0;

    outline: none;

    transition:
        border-color 250ms ease,
        box-shadow 250ms ease;
}

.blog-filter__select:focus {
    border-color: #777;

    box-shadow:
        0 0 0 2px rgba(0,
            0,
            0,
            0.06);
}

.blog-filter__date {
    padding-right: 14px;

    cursor: pointer;
}

/* ----------------------------------------------------------
   Results
---------------------------------------------------------- */

.blog-archive-results {
    position: relative;
    min-height: 450px;
}

.blog-archive-results .latest-posts-grid {
    grid-template-columns:
        repeat(3,
            minmax(0,
                1fr));
}

/* ----------------------------------------------------------
   Loading
---------------------------------------------------------- */

.blog-archive-loader {
    position: absolute;

    inset: 0;

    z-index: 10;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 12px;

    visibility: hidden;

    opacity: 0;

    color: #353535;

    background:
        rgba(247,
            247,
            247,
            0.78);

    transition:
        opacity 220ms ease,
        visibility 220ms ease;
}

.blog-archive-loader.is-loading {
    visibility: visible;

    opacity: 1;
}

.blog-archive-loader__spinner {
    display: block;

    width: 28px;

    height: 28px;

    border:
        2px solid rgba(0,
            0,
            0,
            0.18);

    border-top-color:
        #333;

    border-radius: 50%;

    animation:
        blogArchiveSpin 700ms linear infinite;
}

.blog-archive-loader__text {
    font-size: 14px;

    font-weight: 500;
}

@keyframes blogArchiveSpin {

    to {

        transform:
            rotate(360deg);

    }

}

/* ----------------------------------------------------------
   AJAX Animation
---------------------------------------------------------- */

#blog-archive-grid {
    transition:
        opacity 200ms ease,
        transform 200ms ease;
}

#blog-archive-grid.is-loading {
    pointer-events: none;
}

/* ----------------------------------------------------------
   Empty State
---------------------------------------------------------- */

.blog-archive-empty {
    grid-column:
        1 / -1;

    padding: 70px 20px;

    color: #a65d64;
    font-weight: bolder;
    text-align: center;

    background: #ffffff;

    border:
        1px solid #e1e1e1;
}

/* ----------------------------------------------------------
   Pagination
---------------------------------------------------------- */

.blog-archive-pagination {
    display: flex;

    align-items: center;

    justify-content: center;

    gap: 8px;

    margin-top: 55px;

    transition:
        opacity 200ms ease;
}

.blog-archive-pagination.is-loading {
    pointer-events: none;

    opacity: 0.45;
}

.blog-pagination__button {
    display: inline-flex;

    align-items: center;

    justify-content: center;

    min-width: 42px;

    height: 42px;

    padding: 0 12px;

    color: #333;


    font-size: 14px;

    background: transparent;

    border:
        1px solid #cfcfcf;

    border-radius: 0;

    cursor: pointer;

    transition:
        color 200ms ease,
        background-color 200ms ease,
        border-color 200ms ease,
        transform 200ms ease;
}

.blog-pagination__button:hover {
    color: #ffffff;

    background:
        #333;

    border-color:
        #333;

    transform:
        translateY(-2px);
}

.blog-pagination__button.is-active {
    color: #ffffff;

    background:
        #333;

    border-color:
        #333;

    cursor: default;
}

.blog-pagination__button:disabled {
    opacity: 0.35;

    cursor: not-allowed;

    transform: none;
}

/* ----------------------------------------------------------
   Responsive
---------------------------------------------------------- */


/*--------------------------------------------------------------
# Blog Archive - Reset Filter
--------------------------------------------------------------*/

.blog-filter__reset {
    min-height: 46px;
    padding: 0;
    display: flex;
    justify-content: flex-start;

    background: transparent;

    border: none !important;
    color: #3d4247;

    font-size: 14px;
    font-weight: 500;

    line-height: 1;

    cursor: pointer;

    transition:
        background-color 0.25s ease,
        color 0.25s ease,
        border-color 0.25s ease;
}


/*--------------------------------------------------------------
# Responsive Reset Button
--------------------------------------------------------------*/

@media screen and (max-width: 1024px) {

    .blog-filter--reset {
        justify-content: flex-start;
    }

}


@media screen and (max-width: 767px) {

    .blog-filter__reset {
        width: 100%;
    }

}



/* Override */

/* ==========================================================
   GLOBAL ACCENT COLOR
   ========================================================== */

:root {
    --blog-accent-color: #a65d64;
}


/* ==========================================================
   HERO SLIDER LOADING
   ========================================================== */

.hero-slider {
    position: relative;
}


/*
|--------------------------------------------------------------------------
| Slider loading overlay
|--------------------------------------------------------------------------
*/

.hero-slider.is-loading::before {
    position: absolute;
    z-index: 20;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    display: block;

    content: "";

    background: rgba(255, 255, 255, 0.75);
    pointer-events: none;
}


/*
|--------------------------------------------------------------------------
| Slider loading progress bar
|--------------------------------------------------------------------------
*/

.hero-slider.is-loading::after {
    position: absolute;
    z-index: 21;
    top: 50%;
    left: 50%;

    width: 370px;
    max-width: 70%;

    height: 12px;

    content: "";

    transform: translate(-50%,
            -50%);

    background: rgba(166,
            93,
            100,
            0.12);
}


/*
|--------------------------------------------------------------------------
| Animated loading line
|--------------------------------------------------------------------------
*/

.hero-slider.is-loading .slick-list::before {
    position: absolute;
    z-index: 30;
    top: 50%;
    left: 50%;

    width: 80px;
    height: 12px;

    content: "";

    transform: translate(-50%,
            -50%);

    background: #a65d64;

    animation:
        blogSliderLoading 1.3s ease-in-out infinite;
}


@keyframes blogSliderLoading {

    0% {
        transform:
            translate(-185px,
                -50%);

        opacity: 0.4;
    }

    50% {
        opacity: 1;
    }

    100% {
        transform:
            translate(105px,
                -50%);

        opacity: 0.4;
    }

}


/* ==========================================================
   HERO SLIDER DOTS
   ========================================================== */

.hero-slider .slick-dots {
    position: absolute;

    z-index: 10;

    right: 0;
    bottom: -30px;
    left: 0;

    display: flex !important;

    align-items: center;

    justify-content: center;

    width: 100%;

    margin: 0;

    padding: 0;

    list-style: none;

    gap: 8px;
}


.hero-slider .slick-dots li {
    display: flex;

    width: auto;

    height: auto;

    margin: 0;

    padding: 0;
}


.hero-slider .slick-dots li button {
    display: block;

    width: 7px;

    height: 7px;

    margin: 0;

    padding: 0;

    overflow: hidden;

    border: 0;

    border-radius: 50%;

    background: rgba(166,
            93,
            100,
            0.28);

    color: transparent;

    font-size: 0;

    cursor: pointer;

    transition:
        width 0.3s ease,
        border-radius 0.3s ease,
        background 0.3s ease;
}


.hero-slider .slick-dots li button::before {
    display: none;
}


.hero-slider .slick-dots li.slick-active button {
    width: 34px;

    border-radius: 20px;

    background: #a65d64;
}


/* ==========================================================
   HERO SLIDER NAVIGATION
   ========================================================== */

.hero-slider .hero-prev,
.hero-slider .hero-next {
    position: absolute;

    z-index: 15;

    top: auto;

    bottom: -43px;

    display: flex;

    align-items: center;

    justify-content: center;

    width: 32px;

    height: 32px;

    margin: 0;

    padding: 0;

    border: 1px solid rgba(166,
            93,
            100,
            0.4);

    border-radius: 50%;

    background: #ffffff;

    color: #a65d64;

    font-size: 18px;

    line-height: 1;

    cursor: pointer;

    transform: none;

    transition:
        background 0.25s ease,
        color 0.25s ease,
        border-color 0.25s ease;
}


.hero-slider .hero-prev {
    left: calc(50% - 90px);
}


.hero-slider .hero-next {
    right: calc(50% - 90px);
}


.hero-slider .hero-prev:hover,
.hero-slider .hero-next:hover {
    border-color: #a65d64;

    background: #a65d64;

    color: #ffffff;
}


.hero-slider .hero-prev::before,
.hero-slider .hero-prev::after,
.hero-slider .hero-next::before,
.hero-slider .hero-next::after {
    display: none;
}


/* ==========================================================
   BLOG ARCHIVE LOADER
   ========================================================== */

.blog-archive-results {
    position: relative;
}


.blog-archive-loader {
    position: absolute;

    z-index: 100;

    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    display: flex;

    align-items: center;

    justify-content: center;

    min-height: 300px;

    gap: 12px;

    visibility: hidden;

    opacity: 0;

    background: rgba(255,
            255,
            255,
            0.82);

    color: #a65d64;

    font-size: 14px;

    font-weight: 500;

    pointer-events: none;

    transition:
        opacity 0.25s ease,
        visibility 0.25s ease;
}


.blog-archive-loader.is-loading {
    visibility: visible;

    opacity: 1;

    pointer-events: auto;
}


.blog-archive-loader__spinner {
    display: block;

    width: 30px;

    height: 30px;

    border: 3px solid rgba(166,
            93,
            100,
            0.18);

    border-top-color: #a65d64;

    border-radius: 50%;

    animation:
        blogArchiveSpinner 0.8s linear infinite;
}


@keyframes blogArchiveSpinner {

    from {
        transform:
            rotate(0deg);
    }

    to {
        transform:
            rotate(360deg);
    }

}


/*
|--------------------------------------------------------------------------
| Fade blog cards while AJAX is loading
|--------------------------------------------------------------------------
*/

#blog-archive-grid {
    transition:
        opacity 0.25s ease;
}


#blog-archive-grid.is-loading {
    opacity: 0.25;
    font-weight: bolder;
    pointer-events: none;
}


/* ==========================================================
   BLOG ARCHIVE PAGINATION
   ========================================================== */

.blog-archive-pagination {
    display: flex;

    align-items: center;

    justify-content: center;

    flex-wrap: wrap;

    width: 100%;

    margin-top: 48px;

    gap: 8px;
}


.blog-pagination__button {
    display: inline-flex;

    align-items: center;

    justify-content: center;

    min-width: 42px;

    height: 42px;

    margin: 0;

    padding: 0 12px;

    border: 1px solid rgba(166,
            93,
            100,
            0.35);

    border-radius: 50%;

    background: transparent;

    color: #a65d64;

  

    font-size: 14px;

    font-weight: 500;

    line-height: 1;

    cursor: pointer;

    transition:
        background 0.25s ease,
        color 0.25s ease,
        border-color 0.25s ease,
        transform 0.25s ease;
}


.blog-pagination__button:hover {
    border-color: #a65d64;

    background: #a65d64;

    color: #ffffff;

    transform:
        translateY(-2px);
}


.blog-pagination__button.is-active {
    border-color: #a65d64;

    background: #a65d64;

    color: #ffffff;

    cursor: default;

    transform: none;
}


.blog-pagination__button:disabled {
    border-color:
        rgba(166,
            93,
            100,
            0.15);

    background: transparent;

    color:
        rgba(166,
            93,
            100,
            0.3);

    cursor: not-allowed;

    transform: none;
}


.blog-pagination__previous,
.blog-pagination__next {
    min-width: 48px;

    border-radius: 24px;

    font-size: 18px;
}

.blog-archive__title {
    gap: 16px;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
}

.blog-archive__title h3 { 
    font-weight: 500;
    font-style: Medium;
    font-size: 36px;
    line-height: 140%;
    letter-spacing: 0%;
    color: var(--text-icons-text-ic-high-emphasis, #0E101A);

}

.blog-archive__title p { 
    font-weight: 400;
    font-style: Regular;
    font-size: 16px;
    line-height: 140%;
    letter-spacing: 0%;
    color: var(--text-icons-text-ic-high-emphasis, #0E101A);

}


/* ==========================================================
   FILTER DESIGN
   ========================================================== */

.blog-archive__filters {
    display: flex;

    align-items: flex-end;

    justify-content: start;

    flex-wrap: wrap;

    gap: 0;
}


.blog-filter {
    display: flex;
    flex-direction: column;
    min-width: 250px;
    gap: 8px;
}
 

.blog-filter__select {
    width: 100%;

    min-height: 46px;

    padding:
        0 42px 0 15px;

    border: 1px solid rgba(166,
            93,
            100,
            0.25);

    border-radius: 0;

    outline: none;

    background-color: #ffffff;

    color: #3f3f3f;
 

    font-size: 14px;

    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}


.blog-filter__select:focus {
    border-color: #a65d64;

    box-shadow:
        0 0 0 2px rgba(166,
            93,
            100,
            0.1);
}


.blog-filter__date {
    padding-right: 15px;
}


.blog-filter__reset {
    min-height: 46px;

    padding-block: 24px;

    background: transparent !important;

    color: #53545C !important;

 

    font-size: 13px;

    font-weight: 500;

    cursor: pointer;

    transition:
        background 0.25s ease,
        color 0.25s ease;
}

/* ==========================================================
   NO BLOG RESULT
   ========================================================== */

.blog-archive-empty {
    display: flex;

    grid-column: 1 / -1;

    align-items: center;

    justify-content: center;

    flex-direction: column;

    width: 100%;

    min-height: 380px;

    padding: 40px;

    text-align: center;
}


.blog-archive-empty img {
    display: block;

    width: 180px;

    max-width: 100%;

    height: auto;

    margin-bottom: 25px;

    object-fit: contain;
}


.blog-archive-empty h1 {
    margin: 0;

    color: #a65d64;

    font-size: 26px;

    font-weight: 400;
}


/* ==========================================================
   RESPONSIVE
   ========================================================== */


@media (max-width: 767px) {

    .hero-slider .slick-dots {
        bottom: -24px;
    }


    .hero-slider .hero-prev,
    .hero-slider .hero-next {
        bottom: -37px;

        width: 28px;

        height: 28px;

        font-size: 15px;
    }


    .hero-slider .hero-prev {
        left: calc(50% - 65px);
    }


    .hero-slider .hero-next {
        right: calc(50% - 65px);
    }


    .blog-archive-pagination {
        margin-top: 32px;

        gap: 6px;
    }


    .blog-pagination__button {
        min-width: 36px;

        height: 36px;

        padding:
            0 9px;

        font-size: 13px;
    }


    .blog-archive__filters {
        flex-direction: column;
        align-items: stretch;
    }


    .blog-filter {
        width: 100%;
    }


    .blog-filter__reset {
        width: 100%;
    }


    .blog-archive-loader {
        min-height: 220px;
    }

}


/* ==========================================================
   BLOG ARCHIVE - RESULTS COUNT
========================================================== */

span.blog-filter__results-count {
    width: 400px;
    max-width: 100%;

    height: 17px;

    margin: 0 0 12px;
    padding: 0;

    color: #0E101A;

    font-style: normal;
    font-weight: 500;
    font-size: 12px !important;
    line-height: 140%;
 
    text-align: left;
}



/*==================================================
# Empty Blog Card
==================================================*/

/* ==========================================================
   MOBILE TOP FILTER BAR (screen <= 767px)
   ========================================================== */

.mobile-filter-bar {
    display: none;
}

@media screen and (max-width: 767px) {
    .blog-archive .container {
        width: 100% !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    .mobile-filter-bar {
        display: flex;
        align-items: center;
        gap: 8px;
        overflow-x: auto;
        padding: 4px 20px 16px 20px;
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
        margin-bottom: 20px;
        border-bottom: 1px solid #e5e5e5;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .mobile-filter-bar::-webkit-scrollbar {
        display: none;
    }

    .mobile-filter-icon-btn,
    .mobile-filter-icon-btn:focus,
    .mobile-filter-icon-btn:active,
    .mobile-filter-icon-btn:hover,
    .mobile-filter-icon-btn:visited,
    .mobile-filter-icon-btn:focus-visible,
    .mobile-filter-icon-btn:focus-within {
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important;
        border-radius: 50% !important;
        border: 1px solid #e0e0e0 !important;
        background: #ffffff !important;
        color: #222222 !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        cursor: pointer !important;
        padding: 0 !important;
        box-shadow: none !important;
        flex-shrink: 0 !important;
        outline: none !important;
        -webkit-tap-highlight-color: transparent !important;
    }

    #openMobileFilterBtn,
    #openMobileFilterBtn:focus,
    #openMobileFilterBtn:active,
    #openMobileFilterBtn:hover,
    #openMobileFilterBtn:visited,
    #openMobileFilterBtn:focus-visible,
    #openMobileFilterBtn:focus-within {
        background: #f7ebeb !important;
        border: 1px solid #f0dcdc !important;
        color: #8c3a4d !important;
        box-shadow: none !important;
        outline: none !important;
        -webkit-tap-highlight-color: transparent !important;
    }

    #openMobileFilterBtn svg,
    #openMobileFilterBtn svg path,
    #openMobileFilterBtn svg line,
    #openMobileFilterBtn svg circle {
        stroke: #8c3a4d !important;
        color: #8c3a4d !important;
    }

    #openMobileFilterBtn circle {
        fill: #f5e8e8 !important;
    }

    #openMobileSortBtn,
    #openMobileSortBtn:focus,
    #openMobileSortBtn:active,
    #openMobileSortBtn:hover,
    #openMobileSortBtn:visited,
    #openMobileSortBtn:focus-visible,
    #openMobileSortBtn:focus-within {
        background: #ffffff !important;
        border: 1px solid #e0e0e0 !important;
        color: #222222 !important;
        box-shadow: none !important;
        outline: none !important;
        -webkit-tap-highlight-color: transparent !important;
    }

    #openMobileSortBtn svg,
    #openMobileSortBtn svg path,
    #openMobileSortBtn svg line,
    #openMobileSortBtn svg circle {
        stroke: #222222 !important;
        color: #222222 !important;
    }

    .mobile-filter-pill {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        height: 38px;
        padding: 0 16px;
        border-radius: 100px;
        border: 1px solid #e0e0e0;
        background: #ffffff;
        color: #222222;
        font-size: 13px;
        font-weight: 500;
        cursor: pointer;
        white-space: nowrap;
        flex-shrink: 0;
    }

    .mobile-filter-pill--pink {
        background: #fdf0f0;
        color: #a65d64;
        border-color: #f7d4d7;
    }

    .mobile-filter-pill .pill-arrow {
        font-size: 10px;
        margin-left: 2px;
    }

    /* Hide section heading, desktop web filter and web sort containers on mobile */
    .blog-archive__heading,
    .blog-archive__filters,
    .blog-filter-chips__wrapper,
    .sort-wrapper {
        display: none !important;
    }

    .blog-archive__filters__results-wrapper {
        flex-direction: column;
        gap: 0;
    }
}

/* ==========================================================
   MOBILE 2-COLUMN GRID & CARD STYLES (screen <= 767px)
   ========================================================== */

@media screen and (max-width: 767px) {

    .blog-archive .container,
    .blog-archive-container,
    .blog-archive__filters__results-wrapper {
        padding: 0px 15px !important;
        align-items: center;
        box-sizing: border-box !important;
    }

    .blog-archive-results .latest-posts-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 28px !important;
    }

    .blog-archive-results .latest-posts-grid .blog-card,
    .blog-card {
        position: relative !important;
        flex: 0 0 100% !important;
        max-width: 100% !important;
        width: 100% !important;
        display: flex !important;
        flex-direction: column !important;
        background: transparent !important;
        border: none !important;
        padding: 0 !important;
        box-shadow: none !important;
    }

    .blog-card .blog-card__title a::before {
        content: "" !important;
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        z-index: 1 !important;
        cursor: pointer !important;
    }

    .blog-card a:not(.blog-card__title a),
    .blog-card button,
    .blog-card .blog-card__category,
    .blog-card .blog-card__tag,
    .blog-card .blog-card__meta a {
        position: relative !important;
        z-index: 6 !important;
    }

    .blog-archive-results .latest-posts-grid .blog-card__image {
        position: relative !important;
        width: 100% !important;
        aspect-ratio:1.473 / 1 !important;;
        height: auto !important;
        border-radius: 4px !important;
        overflow: hidden !important;
        border: none !important;
        margin-bottom: 12px !important;
    }

    .blog-archive-results .latest-posts-grid .blog-card__image img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }

    .blog-archive-results .latest-posts-grid .blog-card__content {
        padding: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        flex-grow: 1 !important;
        justify-content: space-between !important;
    }

    .blog-archive-results .latest-posts-grid .blog-card__title {
        font-family: inherit !important;
        font-size: 16px !important;
        font-weight: 500 !important;
        line-height: 1.35 !important;
        margin: 0 0 12px 0 !important;
        color: #121212 !important;
    }

    .blog-archive-results .latest-posts-grid .blog-card__title a {
        color: #121212 !important;
        text-decoration: none !important;
    }

    /* Hide non-essential desktop metadata on 1-column mobile cards */
    .blog-archive-results .latest-posts-grid .blog-card__category,
    .blog-archive-results .latest-posts-grid .blog-card__excerpt,
    .blog-archive-results .latest-posts-grid .blog-card__link,
    .blog-archive-results .latest-posts-grid .blog-card__date,
    .blog-archive-results .latest-posts-grid .blog-card__meta-separator {
        display: none !important;
    }

    /* Mobile card meta footer row with thin top border */
    .blog-archive-results .latest-posts-grid .blog-card__meta {
        border-top: 1px solid #eaeaea !important;
        padding-top: 10px !important;
        margin-top: auto !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        flex-wrap: nowrap !important;
        width: 100% !important;
    }

    .blog-archive-results .latest-posts-grid .blog-card__read-time {
        font-size: 13px !important;
        color: #666666 !important;
        font-weight: 400 !important;
    }

    .blog-archive-results .latest-posts-grid .blog-card__arrow {
        display: inline-flex !important;
        align-items: center !important;
        color: #333333 !important;
    }
}

/* ==========================================================
   MOBILE PAGINATION / SEE MORE BUTTON
   ========================================================== */

@media screen and (max-width: 767px) {
    .blog-archive-pagination {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 12px !important;
        margin-top: 36px !important;
        text-align: center !important;
    }

    .blog-archive-result-text {
        font-size: 12px !important;
        color: #666666 !important;
        font-weight: 400 !important;
    }

    .blog-archive-load-more {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-width: 130px !important;
        padding: 9px 32px !important;
        border: 1px solid #d1d5db !important;
        border-radius: 100px !important;
        background: #ffffff !important;
        color: #222222 !important;
        font-size: 13px !important;
        font-weight: 500 !important;
        cursor: pointer !important;
        box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
    }
}

/* ==========================================================
   DESKTOP ONLY STYLES (screen >= 768px)
   Ensure mobile components are completely hidden on web/desktop
   ========================================================== */

@media screen and (min-width: 768px) {
    .mobile-filter-bar,
    .mobile-sheet-overlay,
    .mobile-sheet-modal {
        display: none !important;
    }

    .blog-archive-results .latest-posts-grid .blog-card__meta,
    .blog-card__meta {
        border-top: 1px solid #eaeaea !important;
        padding-top: 10px !important;
        margin-top: auto !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        flex-wrap: nowrap !important;
        width: 100% !important;
    }

    .blog-card__arrow,
    .blog-card__meta .blog-card__arrow,
    span.blog-card__arrow {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        color: #333333 !important;
        margin-left: auto !important;
    }

    .blog-archive__heading {
        display: flex !important;
    }

    .blog-archive__filters {
        display: block !important;
    }

    .blog-filter-chips__wrapper {
        display: flex !important;
    }

    .sort-wrapper {
        display: flex !important;
    }
}

/* ==========================================================
   MOBILE BOTTOM SHEET DRAWER MODALS ("All filters" & "SORT BY")
   ========================================================== */

@media screen and (max-width: 767px) {

    .mobile-sheet-overlay {
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, 0.5);
        z-index: 2147483646 !important;
        opacity: 0;
        visibility: hidden;
        pointer-events: none !important;
        transition: opacity 0.3s ease, visibility 0.3s ease;
    }

    .mobile-sheet-overlay.show {
        opacity: 1;
        visibility: visible;
        pointer-events: auto !important;
    }

    /* Complete removal of cyan focus outlines, borders, and rings for all buttons */
    #mobileFilterModal button:not(.mobile-sheet-clear-btn),
    #mobileFilterModal button:not(.mobile-sheet-clear-btn):focus,
    #mobileFilterModal button:not(.mobile-sheet-clear-btn):active,
    #mobileFilterModal button:not(.mobile-sheet-clear-btn):hover,
    #mobileFilterModal button:not(.mobile-sheet-clear-btn):visited,
    #mobileFilterModal button:not(.mobile-sheet-clear-btn):focus-visible,
    #mobileSortModal button:not(.mobile-sort-item),
    #mobileSortModal button:not(.mobile-sort-item):focus,
    #mobileSortModal button:not(.mobile-sort-item):active,
    #mobileSortModal button:not(.mobile-sort-item):hover,
    #mobileSortModal button:not(.mobile-sort-item):visited,
    #mobileSortModal button:not(.mobile-sort-item):focus-visible,
    .mobile-sheet-back,
    .mobile-sheet-back:focus,
    .mobile-sheet-back:active,
    .mobile-sheet-back:hover,
    .mobile-sheet-back:focus-visible,
    .mobile-sheet-close,
    .mobile-sheet-close:focus,
    .mobile-sheet-close:active,
    .mobile-sheet-close:hover,
    .mobile-sheet-close:focus-visible,
    .mobile-chip button,
    .mobile-chip button:focus,
    .mobile-chip button:active,
    .mobile-chip button:hover,
    .mobile-chip button:focus-visible {
        outline: none !important;
        border: none !important;
        box-shadow: none !important;
        -webkit-tap-highlight-color: transparent !important;
    }

    .mobile-sheet-modal {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 2147483647 !important;
        background: #ffffff;
        max-height: 90vh;
        display: flex;
        flex-direction: column;
        transform: translateY(100%);
        visibility: hidden;
        pointer-events: none !important;
        transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.3s ease;
        box-shadow: 0 -4px 25px rgba(0, 0, 0, 0.15);
    }

    .is-embedded-iframe .mobile-sheet-modal,
    body.is-embedded-iframe .mobile-sheet-modal {
        max-height: 88vh !important;
        border-bottom-left-radius: 0 !important;
        border-bottom-right-radius: 0 !important;
    }

    .is-embedded-iframe .mobile-sheet-overlay,
    body.is-embedded-iframe .mobile-sheet-overlay {
        position: absolute !important;
        inset: 0 !important;
    }

    .mobile-sheet-modal.show {
        transform: translateY(0);
        visibility: visible;
        pointer-events: auto !important;
    }

    /* Header */
    .mobile-sheet-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 16px 20px;
        border-bottom: 1px solid #e7e7e7;
    }

    .mobile-sheet-back,
    .mobile-sheet-close {
        background: transparent !important;
        border: none !important;
        outline: none !important;
        box-shadow: none !important;
        font-size: 24px;
        line-height: 1;
        color: #121212 !important;
        cursor: pointer;
        padding: 0 4px;
        -webkit-tap-highlight-color: transparent !important;
    }

    .mobile-sheet-title {
        margin: 0;
        font-size: 16px;
        font-weight: 600;
        color: #121212;
        text-align: center;
    }

    .mobile-sheet-header-spacer {
        width: 24px;
    }

    /* Active Selected Chips Bar (Top of View 1) */
    .mobile-selected-chips-bar {
        display: flex;
        gap: 8px;
        overflow-x: auto;
        padding: 14px 20px 8px;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .mobile-selected-chips-bar::-webkit-scrollbar {
        display: none;
    }

    .mobile-chip {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 6px 14px;
        border: 1.5px solid #121212;
        border-radius: 100px;
        font-size: 13px;
        font-weight: 500;
        color: #121212;
        background: #ffffff;
        flex-shrink: 0;
    }

    .mobile-chip button,
    .mobile-chip button:focus,
    .mobile-chip button:active,
    .mobile-chip button:hover,
    .mobile-chip button:focus-visible {
        border: none !important;
        outline: none !important;
        box-shadow: none !important;
        background: transparent !important;
        cursor: pointer;
        font-size: 15px;
        font-weight: 600;
        padding: 0;
        color: #121212 !important;
        margin-left: 2px;
        line-height: 1;
        -webkit-tap-highlight-color: transparent !important;
    }

    /* Mobile Filter Views & Scroll Container */
    .mobile-filter-view {
        display: flex;
        flex-direction: column;
        max-height: 80vh;
        overflow: hidden;
    }

    /* Body */
    .mobile-sheet-body {
        padding: 8px 20px 20px;
        overflow-y: auto;
        flex: 1 1 auto;
        max-height: 55vh;
        -webkit-overflow-scrolling: touch;
    }

    .mobile-filter-nav-item {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 20px 0;
        border-bottom: 1px solid #e7e7e7;
        font-size: 15px;
        font-weight: 500;
        color: #121212;
        cursor: pointer;
    }

    .mobile-filter-nav-arrow {
        font-size: 18px;
        color: #121212;
        font-weight: 300;
    }

    .mobile-filter-all-row {
        margin-bottom: 4px;
    }

    .mobile-filter-checkbox-label {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 14px 0;
        border-bottom: 1px solid #e7e7e7;
        cursor: pointer;
    }

    .mobile-filter-checkbox {
        appearance: none;
        -webkit-appearance: none;
        width: 20px;
        height: 20px;
        min-width: 20px;
        border-radius: 4px;
        border: 1.5px solid #c5bfbf;
        background: #ffffff;
        cursor: pointer;
        margin-right: 12px;
        position: relative;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        transition: background 0.15s ease, border-color 0.15s ease;
    }

    .mobile-filter-checkbox:checked {
        background: #121212 !important;
        border-color: #121212 !important;
    }

    .mobile-filter-checkbox:checked::after {
        content: "";
        width: 5px;
        height: 9px;
        border: solid #ffffff;
        border-width: 0 2px 2px 0;
        transform: rotate(45deg);
        margin-bottom: 2px;
    }

    .mobile-filter-checkbox-text {
        font-size: 14px;
        font-weight: 500;
        color: #53545c;
        flex-grow: 1;
        text-transform: none;
    }

    .mobile-filter-item-count {
        font-size: 13px;
        font-weight: 400;
        color: #888888;
        text-align: right;
        margin-left: 8px;
    }

    /* Footer CTA */
    .mobile-sheet-footer {
        padding: 16px 20px 24px;
        border-top: 1px solid #e7e7e7;
        background: #ffffff;
    }

    .mobile-sheet-footer--split {
        display: flex;
        align-items: center;
        gap: 12px;
    }

    .mobile-sheet-footer--split .mobile-sheet-clear-btn,
    .mobile-sheet-footer--split .mobile-sheet-submit-btn {
        flex: 1 1 0%;
        width: auto;
        min-width: 0;
    }

    #mobileFilterModal .mobile-sheet-clear-btn,
    #mobileFilterModal .mobile-sheet-clear-btn:focus,
    #mobileFilterModal .mobile-sheet-clear-btn:active,
    #mobileFilterModal .mobile-sheet-clear-btn:hover,
    #mobileFilterModal .mobile-sheet-clear-btn:focus-visible,
    .mobile-sheet-clear-btn,
    .mobile-sheet-clear-btn:focus,
    .mobile-sheet-clear-btn:active,
    .mobile-sheet-clear-btn:hover,
    .mobile-sheet-clear-btn:focus-visible {
        flex: 1 !important;
        height: 48px !important;
        border: 1.5px solid #121212 !important;
        outline: none !important;
        box-shadow: none !important;
        border-radius: 100px !important;
        background: #ffffff !important;
        color: #121212 !important;
        font-size: 15px !important;
        font-weight: 500 !important;
        cursor: pointer !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        -webkit-tap-highlight-color: transparent !important;
    }

#sortBtn,
.sort-wrapper .sort-button,
.sort-wrapper #sortBtn {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    color: #222222 !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    position: relative !important;
    -webkit-tap-highlight-color: transparent !important;
}

#sortBtn::before,
#sortBtn::after,
.sort-wrapper .sort-button::before,
.sort-wrapper .sort-button::after {
    display: none !important;
    content: "" !important;
}

#sortBtn svg,
.sort-wrapper .sort-button svg {
    width: 16px !important;
    height: 16px !important;
    flex-shrink: 0 !important;
    stroke: #222222 !important;
    color: #222222 !important;
}

    .mobile-sheet-submit-btn,
    .mobile-sheet-submit-btn:focus,
    .mobile-sheet-submit-btn:active,
    .mobile-sheet-submit-btn:hover,
    .mobile-sheet-submit-btn:focus-visible {
        width: 100%;
        height: 48px;
        border: none !important;
        outline: none !important;
        border-radius: 100px;
        background: linear-gradient(90deg, #8C3A4D 0%, #E26D5C 100%) !important;
        color: #ffffff !important;
        font-size: 15px;
        font-weight: 600;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        box-shadow: 0 4px 14px rgba(140, 58, 77, 0.3) !important;
        -webkit-tap-highlight-color: transparent !important;
    }

    /* SORT BY Bottom Sheet */
    .mobile-sort-sheet {
        border-radius: 20px 20px 0 0;
        padding-bottom: 24px;
        background: #ffffff;
    }

    .mobile-sort-header {
        padding: 24px 24px 16px;
        text-align: left;
        border-bottom: 1px solid #e7e7e7;
    }

    .mobile-sort-title {
        margin: 0;
        font-size: 16px;
        font-weight: 700;
        letter-spacing: 0.05em;
        color: #000000;
        text-transform: uppercase;
    }

    .mobile-sort-body {
        display: flex;
        flex-direction: column;
        padding: 0 20px;
    }

    #mobileSortModal .mobile-sort-item,
    #mobileSortModal .mobile-sort-body button,
    button.mobile-sort-item,
    .mobile-sort-body button.mobile-sort-item,
    .mobile-sort-item,
    .mobile-sort-item:focus,
    .mobile-sort-item:active,
    .mobile-sort-item:hover,
    .mobile-sort-item:focus-visible {
        background: transparent !important;
        border-top: none !important;
        border-left: none !important;
        border-right: none !important;
        border-bottom: 1px solid #e7e7e7 !important;
        border-radius: 0 !important;
        outline: none !important;
        box-shadow: none !important;
        -webkit-tap-highlight-color: transparent !important;
        padding: 20px 0 !important;
        font-size: 14px !important;
        font-weight: 400 !important;
        letter-spacing: 0.05em !important;
        color: #121212 !important;
        text-align: center !important;
        cursor: pointer !important;
        text-transform: uppercase !important;
        width: 100% !important;
        display: block !important;
        transition: background 0.2s ease, font-weight 0.2s ease, color 0.2s ease;
    }

    #mobileSortModal .mobile-sort-item.active,
    #mobileSortModal .mobile-sort-body button.active,
    button.mobile-sort-item.active,
    .mobile-sort-body button.mobile-sort-item.active,
    .mobile-sort-item.active {
        color: #000000 !important;
        font-weight: 700 !important;
    }

    /* ==========================================================
       ARABIC & RTL MOBILE OVERRIDES (screen <= 767px)
       ========================================================== */

    body.rtl .mobile-filter-bar,
    html[dir="rtl"] .mobile-filter-bar,
    [dir="rtl"] .mobile-filter-bar {
        direction: rtl;
    }

    body.rtl .mobile-filter-pill,
    html[dir="rtl"] .mobile-filter-pill,
    [dir="rtl"] .mobile-filter-pill {
        direction: rtl;
    }

    body.rtl .mobile-sheet-header,
    html[dir="rtl"] .mobile-sheet-header,
    [dir="rtl"] .mobile-sheet-header {
        direction: rtl;
    }

    /* RTL Icon Mirroring and Direction */
    body.rtl #openMobileFilterBtn svg,
    html[dir="rtl"] #openMobileFilterBtn svg,
    [dir="rtl"] #openMobileFilterBtn svg,
    body.rtl #openMobileSortBtn svg,
    html[dir="rtl"] #openMobileSortBtn svg,
    [dir="rtl"] #openMobileSortBtn svg {
        transform: scaleX(-1) !important;
    }

    .mobile-arrow-char {
        display: inline-block !important;
        direction: ltr !important;
        unicode-bidi: isolate !important;
        transform: none !important;
    }

    /* In RTL, the back arrow (›) on the right side and drilldown arrow (‹) on the left side do not transform */
    body.rtl .mobile-sheet-back,
    html[dir="rtl"] .mobile-sheet-back,
    [dir="rtl"] .mobile-sheet-back {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        transform: none !important;
        direction: ltr !important;
        unicode-bidi: isolate !important;
    }

    /* In RTL, drilldown arrow (‹) on the left side does not transform */
    body.rtl .mobile-filter-nav-arrow,
    html[dir="rtl"] .mobile-filter-nav-arrow,
    [dir="rtl"] .mobile-filter-nav-arrow {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        transform: none !important;
        direction: ltr !important;
        unicode-bidi: isolate !important;
    }

    /* Desktop accordion header & count container positioning in RTL */
    body.rtl .accordion-header,
    html[dir="rtl"] .accordion-header,
    [dir="rtl"] .accordion-header {
        direction: rtl;
        text-align: right;
    }

    body.rtl .accordion-content .filter-item-count,
    html[dir="rtl"] .accordion-content .filter-item-count,
    [dir="rtl"] .accordion-content .filter-item-count {
        margin-left: 0;
        margin-right: 8px;
        text-align: left;
    }

    body.rtl .count-container,
    html[dir="rtl"] .count-container,
    [dir="rtl"] .count-container {
        margin-left: 0 !important;
        margin-right: auto !important;
    }

    /* Selected chips bar in RTL */
    body.rtl .mobile-selected-chips-bar,
    html[dir="rtl"] .mobile-selected-chips-bar,
    [dir="rtl"] .mobile-selected-chips-bar {
        direction: rtl;
    }

    body.rtl .mobile-chip,
    html[dir="rtl"] .mobile-chip,
    [dir="rtl"] .mobile-chip {
        direction: rtl;
    }

    body.rtl .mobile-chip button,
    html[dir="rtl"] .mobile-chip button,
    [dir="rtl"] .mobile-chip button {
        margin-left: 0;
        margin-right: 4px;
    }

    /* Body list rows in RTL */
    body.rtl .mobile-filter-nav-item,
    html[dir="rtl"] .mobile-filter-nav-item,
    [dir="rtl"] .mobile-filter-nav-item,
    body.rtl .mobile-filter-checkbox-label,
    html[dir="rtl"] .mobile-filter-checkbox-label,
    [dir="rtl"] .mobile-filter-checkbox-label {
        direction: rtl;
        text-align: right;
    }

    body.rtl .mobile-filter-checkbox,
    html[dir="rtl"] .mobile-filter-checkbox,
    [dir="rtl"] .mobile-filter-checkbox {
        margin-right: 0;
        margin-left: 12px;
    }

    body.rtl .mobile-filter-checkbox-text,
    html[dir="rtl"] .mobile-filter-checkbox-text,
    [dir="rtl"] .mobile-filter-checkbox-text {
        text-align: right;
    }

    body.rtl .mobile-filter-item-count,
    html[dir="rtl"] .mobile-filter-item-count,
    [dir="rtl"] .mobile-filter-item-count {
        text-align: left;
        margin-left: 0;
        margin-right: 8px;
    }

    /* Footer split buttons in RTL */
    body.rtl .mobile-sheet-footer--split,
    html[dir="rtl"] .mobile-sheet-footer--split,
    [dir="rtl"] .mobile-sheet-footer--split {
        direction: rtl;
    }

    /* SORT BY drawer in RTL */
    body.rtl .mobile-sort-header,
    html[dir="rtl"] .mobile-sort-header,
    [dir="rtl"] .mobile-sort-header {
        text-align: right;
    }
}
