.guided-narrowing-card {
    grid-column: 1 / -1;
    width: min(100%, 680px);
    margin: 2rem auto 1.5rem;
    padding: clamp(1.25rem, 3vw, 2.15rem);
    border: 1px solid rgba(15, 23, 42, .14);
    border-radius: 1rem;
    background: var(--bs-body-bg);
    box-shadow: 0 .5rem 1.5rem rgba(15, 23, 42, .06);
}

.guided-narrowing-card__mobile-copy { display: none; }
.guided-narrowing-card__section { margin-top: 1.25rem; }
.guided-narrowing-card__chips { display: flex; flex-wrap: wrap; gap: .5rem; }
.guided-narrowing-card__chip { text-align: left; }
.guided-narrowing-card__filters-action {
    --fn-btn-color: #fff;
    --fn-btn-bg: var(--xplore-cta-blue);
    --fn-btn-border-color: var(--xplore-cta-blue-border);
    --fn-btn-hover-color: #fff;
    --fn-btn-hover-bg: var(--xplore-cta-blue-hover);
    --fn-btn-hover-border-color: var(--xplore-cta-blue-border-hover);
    --fn-btn-focus-shadow-rgb: var(--xplore-cta-blue-rgb);
    --fn-btn-active-color: #fff;
    --fn-btn-active-bg: var(--xplore-cta-blue-hover);
    --fn-btn-active-border-color: var(--xplore-cta-blue-border-hover);
    --fn-btn-disabled-color: #fff;
    --fn-btn-disabled-bg: var(--xplore-cta-blue);
    --fn-btn-disabled-border-color: var(--xplore-cta-blue-border);
}
.guided-narrowing-card__primary-title { margin-bottom: .4rem; }
.guided-narrowing-card__secondary-title { margin-bottom: .55rem; }

.mobile-guided-narrowing-host {
    display: none;
}

@media (min-width: 992px) {
    .explore-workspace-host { display: flex; min-height: min(72vh, 54rem); }
    .guided-explore-workspace { position: relative; flex: 1 1 auto; min-height: 0; width: 100%; overflow: hidden; background: #fff; }
    body.is-guided-explore #splitLayout { display: none; }
    body.is-guided-explore .content-wrapper { display: flex; flex-direction: column; min-height: 0; background: #fff; }
    body.is-guided-explore .explore-workspace-host { flex: 1 1 auto; min-height: 0; background: #fff; }
    body.is-guided-explore .guided-explore-workspace { height: 100%; }
    body.is-guided-explore .xplore-guide,
    body.is-guided-explore #xploreGuideDockButton { display: none; }
    body.is-guided-explore [data-global-attraction-search],
    body.is-guided-explore #useMyLocationNearbyBtn,
    body.is-guided-explore #alongRouteModeBtn,
    body.is-guided-explore #suggestAttractionBtn { display: none !important; }
    body.is-guided-explore.is-guided-explore-filters-open #filters { width: min(72vw, 980px) !important; }
    body:not(.is-guided-explore) #guidedExploreWorkspace { display: none; }
    .guided-explore-coach {
        background: #fff;
        position: relative;
        z-index: 2;
        width: min(100% - 3rem, 48rem);
        margin: clamp(3rem, 10vh, 7rem) auto;
        padding: clamp(1.25rem, 3vw, 2rem) clamp(1.25rem, 3vw, 2rem) clamp(1.25rem, 3vw, 2rem) clamp(4.5rem, 7vw, 6rem);
        border: 1px solid rgba(15, 23, 42, .14);
        border-radius: 1rem;
        box-shadow: 0 .75rem 2rem rgba(15, 23, 42, .12);
    }
    .guided-explore-coach__avatar { position: absolute; left: clamp(-2.25rem, -3vw, -1.5rem); top: 1.25rem; width: 6rem; height: 6rem; overflow: hidden; border: .2rem solid var(--bs-body-bg); border-radius: 50%; background: #e7edf1; box-shadow: 0 .5rem 1.25rem rgba(15, 23, 42, .18); }
    .guided-explore-coach__avatar img { display: block; width: 100%; height: 100%; object-fit: cover; }
    .guided-explore-coach__content { min-width: 0; }
    .guided-explore-coach__kicker { margin-bottom: .25rem; color: var(--xplore-cta-blue); font-size: .75rem; font-weight: 700; letter-spacing: .08em; }
    .guided-explore-coach__title { margin: 0 0 .5rem; font-size: clamp(1.5rem, 2.5vw, 2rem); }
    .guided-explore-coach__message { margin: 0; }
    .guided-explore-coach__message { white-space: pre-line; }
    .guided-explore-coach__actions { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 1rem;}
    .guided-explore-coach--filters { position: fixed; left: var(--guided-explore-filter-coach-left, 1rem); top: var(--guided-explore-filter-coach-top, 6rem); z-index: 1055; width: min(18.75rem, calc(100vw - 2rem)); margin: 0; padding: 1rem 3.75rem 1rem 1rem; }
    body.is-guided-explore.is-guided-explore-filters-open .guided-explore-coach--filters { z-index: 1041; background: #fff; }
    .guided-explore-coach__avatar--filter-layer { position: fixed; z-index: 1046; top: var(--guided-explore-filter-avatar-top); left: var(--guided-explore-filter-avatar-left); width: 4.75rem; height: 4.75rem; border-color: #fff; pointer-events: none; }
    .guided-explore-coach--filters .guided-explore-coach__avatar { right: -2rem; bottom: auto; left: auto; top: 1rem; width: 4.75rem; height: 4.75rem; }
    .guided-explore-coach--filters .guided-explore-coach__kicker { font-size: .68rem; }
    .guided-explore-coach--filters .guided-explore-coach__title { font-size: 1.1rem; }
    .guided-explore-coach--filters .guided-explore-coach__message { font-size: .9rem; }
}

@media (max-width: 991.98px) {
    body.is-guided-narrowing-mobile {
        overflow-x: hidden;
    }

    body.is-guided-explore .split-layout,
    body.is-guided-narrowing-mobile .explore-workspace-host {
        display: none;
    }

    body.is-guided-explore .xplore-guide,
    body.is-guided-explore #xploreGuideDockButton,
    body.is-guided-explore [data-global-attraction-search],
    body.is-guided-explore #useMyLocationNearbyBtn,
    body.is-guided-explore #alongRouteModeBtn,
    body.is-guided-explore #suggestAttractionBtn,
    body.is-guided-explore #mobileServiceAvailability,
    body.is-guided-explore [data-mobile-explore-panel="tools"] {
        display: none !important;
    }

    body.is-guided-explore .mobile-explore-control-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.is-guided-narrowing-mobile .mobile-guided-narrowing-host:not([hidden]) {
        display: block;
        box-sizing: border-box;
        width: 100%;
        max-width: 100%;
        min-height: calc(100svh - var(--nav-h, 84px));
        padding: .75rem .75rem calc(4.75rem + env(safe-area-inset-bottom));
        overflow-x: hidden;
    }

    .guided-explore-coach--mobile {
        position: relative;
        box-sizing: border-box;
        width: 100%;
        margin: 1rem 0 0;
        padding: .95rem .9rem .9rem 4.35rem;
        border: 1px solid rgba(15, 23, 42, .14);
        border-radius: 1rem;
        background: var(--bs-body-bg, #fff);
        box-shadow: 0 .5rem 1.25rem rgba(15, 23, 42, .1);
    }

    .guided-explore-coach--mobile .guided-explore-coach__avatar {
        position: absolute;
        left: -.25rem;
        top: 1rem;
        width: 3.75rem;
        height: 3.75rem;
        overflow: hidden;
        border: .18rem solid var(--bs-body-bg, #fff);
        border-radius: 50%;
        background: #e7edf1;
        box-shadow: 0 .35rem .9rem rgba(15, 23, 42, .16);
    }

    .guided-explore-coach--mobile .guided-explore-coach__avatar img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .guided-explore-coach--mobile .guided-explore-coach__kicker {
        margin-bottom: .2rem;
        color: var(--xplore-cta-blue);
        font-size: .68rem;
        font-weight: 700;
        letter-spacing: .08em;
    }

    .guided-explore-coach--mobile .guided-explore-coach__title {
        margin: 0 0 .35rem;
        font-size: 1.25rem;
    }

    .guided-explore-coach--mobile .guided-explore-coach__count {
        margin: 0 0 .55rem;
        color: var(--bs-secondary-color, #64748b);
        font-size: .9rem;
        font-weight: 700;
    }

    .guided-explore-coach--mobile .guided-explore-coach__message {
        margin: 0;
        font-size: 1rem;
        line-height: 1.5;
        text-align: left;
        white-space: pre-line;
    }

    .guided-explore-coach--mobile .guided-explore-coach__actions {
        display: grid;
        gap: .45rem;
        margin-top: .8rem;
    }

    .guided-explore-coach--mobile .guided-explore-coach__action {
        width: 100%;
        min-height: 2.75rem;
    }

    #filters .offcanvas-body > .guided-explore-coach--mobile { margin: 0 0 1rem; }

    .guided-narrowing-card { width: 100%; margin: .75rem 0 1rem; padding: 1rem; }
    .guided-narrowing-card__desktop-copy { display: none; }
    .guided-narrowing-card__mobile-copy { display: block; }
}

@media (max-width: 991.98px) and (prefers-reduced-motion: reduce) {
    body.is-guided-explore .mobile-explore-top-panel {
        transition: none !important;
    }
}
