/* Public Locales module — tipografía como Authentic Provence showrooms */
body.page-locals,
.page-locals {
    background: #000;
    color: #111;
}

.locals-page {
    --locals-bg: #ffffff;
    --locals-panel: #f5f5f5;
    --locals-line: rgba(0, 0, 0, .12);
    --locals-muted: #666;
    --locals-accent: #8a7340;
    --locals-font: "Gotham A", "Gotham B", Montserrat, sans-serif;
    --locals-ruta-font: "BentonSans-Regular", "BentonSans-Bold", Arial, Helvetica, sans-serif;
    /* Misma altura de slide para sedes y Eventos/Revistas */
    --locals-store-slide-max-h: min(calc(56vh * 1.3), calc(70dvh * 1.3), calc(100vmin * 0.52));
    box-sizing: border-box;
    width: 80%;
    max-width: 80%;
    margin: 0 auto;
    overflow: hidden;
    background: var(--locals-bg);
    color: #111;
}

/* Misma tipografía en todo el contenido, excepto la ruta/breadcrumbs. */
body.page-locals .locals-page,
body.page-locals .locals-page > :not(.div-breadcrumbs),
body.page-locals .locals-page > :not(.div-breadcrumbs) * {
    font-family: "Gotham A", "Gotham B", Montserrat, sans-serif !important;
}

body.page-locals .locals-page > .div-breadcrumbs,
body.page-locals .locals-page > .div-breadcrumbs * {
    font-family: var(--locals-ruta-font) !important;
}

/*
 * Guiones complejos (hindi, etc.): Gotham/Montserrat no tienen glifos;
 * letter-spacing + uppercase rompen Devanagari y hacen que la página se vea distinta.
 */
html[lang="hi"] body.page-locals .locals-page,
html[lang="hi"] body.page-locals .locals-page > :not(.div-breadcrumbs),
html[lang="hi"] body.page-locals .locals-page > :not(.div-breadcrumbs) *,
html[lang="in"] body.page-locals .locals-page,
html[lang="in"] body.page-locals .locals-page > :not(.div-breadcrumbs),
html[lang="in"] body.page-locals .locals-page > :not(.div-breadcrumbs) * {
    font-family: "Noto Sans Devanagari", "Nirmala UI", Mangal, "Arial Unicode MS", Arial, sans-serif !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

html[lang="hi"] body.page-locals .locals-page > .div-breadcrumbs,
html[lang="hi"] body.page-locals .locals-page > .div-breadcrumbs *,
html[lang="in"] body.page-locals .locals-page > .div-breadcrumbs,
html[lang="in"] body.page-locals .locals-page > .div-breadcrumbs * {
    font-family: "Noto Sans Devanagari", "Nirmala UI", Mangal, var(--locals-ruta-font) !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

html[lang="hi"] body.page-locals .locals-history-bio,
html[lang="hi"] body.page-locals .locals-history-bio .locals-rich,
html[lang="hi"] body.page-locals .locals-history-bio .descripcion,
html[lang="hi"] body.page-locals .locals-history-bio .descripcion *,
html[lang="hi"] body.page-locals .locals-history-bio .locals-rich *,
html[lang="in"] body.page-locals .locals-history-bio,
html[lang="in"] body.page-locals .locals-history-bio .locals-rich,
html[lang="in"] body.page-locals .locals-history-bio .descripcion,
html[lang="in"] body.page-locals .locals-history-bio .descripcion *,
html[lang="in"] body.page-locals .locals-history-bio .locals-rich *,
html[lang="hi"] body.page-locals .locals-person-info,
html[lang="hi"] body.page-locals .locals-person-info *,
html[lang="in"] body.page-locals .locals-person-info,
html[lang="in"] body.page-locals .locals-person-info * {
    font-family: "Noto Sans Devanagari", "Nirmala UI", Mangal, Arial, Helvetica, sans-serif !important;
    line-height: 1.65 !important;
    letter-spacing: normal !important;
}

.locals-page > .div-breadcrumbs,
.locals-page > .locals-section {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    box-sizing: border-box;
}

.locals-page *,
.locals-page *::before,
.locals-page *::after {
    box-sizing: inherit;
}

.locals-page a {
    color: inherit;
    text-decoration: none;
}

.locals-page h1,
.locals-page h2,
.locals-page h3,
.locals-page p {
    margin-top: 0;
}

.locals-page h2 {
    margin-bottom: clamp(1.4rem, 3vw, 3rem);
    font-size: clamp(1.55rem, 3vw, 2.8rem);
    font-weight: 400;
    letter-spacing: .08em;
    text-transform: uppercase;
}

/* Ruta: mismo patrón que Restauraciones / Categorías */
.locals-page .div-breadcrumbs {
    display: flex;
    justify-content: center;
    padding: 0 2rem;
    overflow-x: hidden;
    border-bottom: none !important;
    margin-bottom: 1.5rem;
    background: #000;
}

.locals-page h2.ruta2 {
    scroll-padding-left: 100px;
    position: relative;
    overflow-x: auto;
    overflow-y: hidden;
    display: flex;
    flex-wrap: nowrap;
    gap: 8px;
    width: max-content;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    align-items: center;
    box-sizing: border-box;
    padding: 10px 10px !important;
    margin: 0;
    border-bottom: none !important;
    font-size: 22.5px !important;
    color: #fff;
    text-align: center;
    justify-content: center;
    text-transform: capitalize;
    letter-spacing: normal;
}

.locals-page h2.ruta2 > * {
    flex: 0 0 auto;
    white-space: nowrap;
}

.locals-page h2.ruta2 a {
    color: #fff;
    text-decoration: none;
    text-transform: capitalize;
    font-size: inherit;
}

.locals-page h2.ruta2 > :nth-last-child(2) {
    color: aqua !important;
}

.locals-page .separator {
    margin-right: 1rem;
    margin-left: 0.5rem;
    color: #fff !important;
}

@media (min-width: 992px) {
    .locals-page .div-breadcrumbs a.btn-step-back {
        font: 21px/9px var(--locals-ruta-font) !important;
        color: #fff !important;
        background: #545454;
        text-decoration: none !important;
        padding: 1rem;
        border: 1px solid #d5d0ca;
        border-radius: 4px;
        transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease;
        cursor: pointer;
        display: inline-block;
        width: auto;
        text-align: center;
        margin-left: 1rem;
        /* Árabe/RTL: no invertir flecha + texto */
        direction: ltr;
        unicode-bidi: isolate;
    }

    .locals-page .div-breadcrumbs a.btn-step-back:hover {
        background: #493e3a;
        border-color: #988b85;
        color: #d5d0ca !important;
    }
}

.locals-volver-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin: 0 0 2rem;
    padding: 0 10%;
    box-sizing: border-box;
    background: #fff;
}

body.page-locals .locals-page .locals-volver-wrap a.btn-step-back {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    margin: 0;
    padding: 1rem 1.45rem 0.8rem;
    border: 1px solid #111;
    border-radius: 12px;
    background: #fff;
    color: #111 !important;
    text-decoration: none !important;
    text-align: center;
    font-family: "Martel", serif !important;
    font-weight: 900 !important;
    font-size: 1.55rem !important;
    line-height: 1 !important;
    letter-spacing: normal;
}

body.page-locals .locals-page .locals-volver-wrap a.btn-step-back:hover,
body.page-locals .locals-page .locals-volver-wrap a.btn-step-back:focus-visible {
    background: #fff;
    border-color: #111;
    color: #111 !important;
    filter: brightness(.92);
}

.locals-section {
    padding: clamp(3rem, 7vw, 4rem) 10%;
    border-bottom: 1px solid var(--locals-line);
}

.locals-section.locals-carousel-section {
    border-bottom: 0 !important;
}

.locals-section.locals-stores {
    padding-top: 0.5rem;
    padding-left: 10%;
    padding-right: 10%;
    border-bottom: 0;
}

.locals-store-list {
    display: flex;
    flex-direction: column;
    gap: clamp(2.5rem, 6vw, 4.5rem);
    width: 100%;
}

.locals-store-card {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(260px, .75fr);
    align-items: start;
    gap: clamp(1.5rem, 4vw, 3.25rem);
    width: 100%;
    max-width: 100%;
    min-width: 0;
    background: transparent;
}

.locals-store-card--reverse {
    grid-template-columns: minmax(260px, .75fr) minmax(0, 1.35fr);
}

.locals-store-card--reverse .locals-store-media {
    order: 2;
}

.locals-store-card--reverse .locals-store-aside {
    order: 1;
}

.locals-store-card--reverse .locals-store-info {
    align-items: flex-start;
    text-align: left;
}

.locals-store-card--reverse .locals-store-name,
.locals-store-card--reverse .locals-store-info p {
    text-align: left;
}

.locals-store-media,
.locals-store-aside {
    min-width: 0;
    width: 100%;
}

/* La columna de info+mapa no puede bajar más que la foto del local. */
.locals-store-aside {
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
    padding-top: 0.15rem;
    height: var(--locals-store-slide-max-h);
    max-height: var(--locals-store-slide-max-h);
    min-height: 0;
    overflow: hidden;
    box-sizing: border-box;
}

.locals-store-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.75rem;
    flex: 0 0 auto;
}

.locals-store-address,
.locals-store-contact,
.locals-store-note,
.locals-store-directions {
    margin: 0;
    color: #111;
    font-size: 16px;
    line-height: 1.45;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: none;
}

.locals-store-note {
    margin-bottom: 1.25em;
}

.locals-store-phone {
    margin-bottom: 1.25em;
}

.locals-store-link {
    color: var(--locals-accent) !important;
    text-decoration: none;
}

.locals-store-link:hover {
    text-decoration: underline;
}

.locals-store-map {
    position: relative;
    flex: 1 1 auto;
    width: 100%;
    max-width: 100%;
    min-height: 0;
    height: auto;
    aspect-ratio: auto;
    overflow: hidden;
    background: #f0f0f0;
    align-self: stretch;
}

.locals-map-expand {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 3;
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #111;
    box-shadow: none;
    cursor: pointer;
}

.locals-map-expand:hover,
.locals-map-expand:focus-visible {
    background: transparent;
    opacity: 0.75;
}

.locals-map-expand svg {
    width: 34px;
    height: 34px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
    filter: drop-shadow(0 0 2px rgba(255, 255, 255, .9));
}

.locals-store-map:fullscreen {
    width: 100vw;
    max-width: none;
    height: 100vh;
    max-height: none;
    background: #fff;
}

.locals-store-map:fullscreen iframe {
    min-height: 100%;
}

.locals-store-map iframe {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 140px;
    border: 0;
}

.locals-store-stage {
    width: 100%;
    min-width: 0;
}

.locals-store-carousel {
    --locals-store-arrow-rail: 3.25rem;
    display: grid;
    grid-template-columns: var(--locals-store-arrow-rail) minmax(0, 1fr) var(--locals-store-arrow-rail);
    align-items: start;
    gap: 0;
    width: 100%;
}

/* Sedes: sin flechas laterales (navegación por thumbs / swipe) */
.locals-stores .locals-store-carousel {
    --locals-store-arrow-rail: 0;
    grid-template-columns: minmax(0, 1fr);
}

.locals-stores .locals-store-rail,
.locals-stores .locals-store-rail .side-arrow,
.locals-stores .locals-store-rail .swiper-button-prev,
.locals-stores .locals-store-rail .swiper-button-next {
    display: none !important;
}

.locals-store-main {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    min-width: 0;
}

.locals-store-rail {
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--locals-store-arrow-rail);
    min-width: var(--locals-store-arrow-rail);
    height: var(--locals-store-slide-max-h);
    align-self: start;
}

.locals-store-swiper {
    width: 100%;
    min-width: 0;
    height: var(--locals-store-slide-max-h);
    max-height: var(--locals-store-slide-max-h);
    overflow: hidden;
    background: transparent;
}

.locals-store-swiper .swiper-wrapper,
.locals-store-swiper .swiper-slide {
    height: 100%;
}

.locals-store-slide {
    display: flex !important;
    align-items: center;
    justify-content: center;
    height: 100%;
    box-sizing: border-box;
}

.locals-store-slide img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    object-position: center;
}

.locals-store-slide video,
.locals-store-slide--video video {
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    object-position: center;
    background: transparent;
}

.locals-store-card:not(.locals-store-card--reverse) .locals-store-slide img,
.locals-store-card:not(.locals-store-card--reverse) .locals-store-slide video {
    object-position: left center;
}

.locals-store-card--reverse .locals-store-slide img,
.locals-store-card--reverse .locals-store-slide video {
    object-position: right center;
}

.locals-store-carousel .swiper-button-prev.side-arrow,
.locals-store-carousel .swiper-button-next.side-arrow {
    position: static;
    top: auto;
    left: auto;
    right: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: auto;
    height: auto;
    margin: 0;
    padding: 4px;
    border: none;
    border-radius: 8px;
    background: transparent;
    color: #111;
    cursor: pointer;
    line-height: 0;
}

.locals-store-carousel .swiper-button-prev.side-arrow::after,
.locals-store-carousel .swiper-button-next.side-arrow::after {
    content: none;
    display: none;
}

.locals-store-carousel .side-arrow .prod-card-carousel__chev {
    display: block;
    width: calc(1.15rem * 2.2);
    height: calc(1.15rem * 2.2);
    flex-shrink: 0;
}

.locals-store-carousel .swiper-button-disabled.side-arrow {
    opacity: .35;
    cursor: default;
    pointer-events: none;
}

.locals-store-thumbs {
    display: grid;
    grid-template-columns: 2.5rem minmax(0, 1fr) 2.5rem;
    align-items: center;
    gap: 0.35rem;
    width: 100%;
    max-width: 100%;
    margin-top: 0.75rem;
    min-width: 0;
    box-sizing: border-box;
}

.locals-store-thumbs-track {
    min-width: 0;
    width: 100%;
    max-width: 100%;
}

.locals-thumbs-nav.side-arrow {
    position: static;
    top: auto;
    left: auto;
    right: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: auto;
    height: auto;
    margin: 0;
    padding: 4px;
    border: none;
    border-radius: 8px;
    background: transparent;
    color: #111;
    cursor: pointer;
    line-height: 0;
}

.locals-thumbs-nav.side-arrow::after {
    content: none;
    display: none;
}

.locals-thumbs-nav .prod-card-carousel__chev {
    display: block;
    width: calc(1.15rem * 2);
    height: calc(1.15rem * 2);
    flex-shrink: 0;
}

.locals-thumbs-nav.side-arrow:hover {
    color: rgba(0, 0, 0, 0.7);
}

.locals-thumbs-nav.side-arrow:focus-visible {
    outline: 2px solid rgba(0, 0, 0, 0.55);
    outline-offset: 2px;
}

.locals-store-thumbs-swiper {
    width: 100%;
    max-width: 100%;
    height: fit-content;
    overflow: hidden;
    box-sizing: border-box;
    container-type: inline-size;
    container-name: locals-thumbs;
}

.locals-store-thumbs-swiper .swiper-wrapper {
    box-sizing: border-box;
}

/* Misma geometría que product.css → .thumbs-slider */
.locals-store-thumbs-swiper .swiper-slide {
    box-sizing: border-box;
    width: 120px;
    height: auto;
    cursor: pointer;
    opacity: 1;
    border: 0;
    background: transparent;
    flex-shrink: 0;
}

@container locals-thumbs (max-width: 379px) {
    .locals-store-thumbs-swiper .swiper-slide {
        width: calc((100cqi - 10px) / 2);
    }
}

@container locals-thumbs (min-width: 380px) and (max-width: 509px) {
    .locals-store-thumbs-swiper .swiper-slide {
        width: calc((100cqi - 20px) / 3);
    }
}

@container locals-thumbs (min-width: 510px) and (max-width: 639px) {
    .locals-store-thumbs-swiper .swiper-slide {
        width: calc((100cqi - 30px) / 4);
    }
}

@container locals-thumbs (min-width: 640px) and (max-width: 769px) {
    .locals-store-thumbs-swiper .swiper-slide {
        width: calc((100cqi - 40px) / 5);
    }
}

@container locals-thumbs (min-width: 770px) and (max-width: 899px) {
    .locals-store-thumbs-swiper .swiper-slide {
        width: calc((100cqi - 50px) / 6);
    }
}

@container locals-thumbs (min-width: 900px) and (max-width: 1029px) {
    .locals-store-thumbs-swiper .swiper-slide {
        width: calc((100cqi - 60px) / 7);
    }
}

@container locals-thumbs (min-width: 1030px) and (max-width: 1159px) {
    .locals-store-thumbs-swiper .swiper-slide {
        width: calc((100cqi - 70px) / 8);
    }
}

@container locals-thumbs (min-width: 1160px) and (max-width: 1289px) {
    .locals-store-thumbs-swiper .swiper-slide {
        width: calc((100cqi - 80px) / 9);
    }
}

@container locals-thumbs (min-width: 1290px) and (max-width: 1419px) {
    .locals-store-thumbs-swiper .swiper-slide {
        width: calc((100cqi - 90px) / 10);
    }
}

@container locals-thumbs (min-width: 1420px) {
    .locals-store-thumbs-swiper .swiper-slide {
        width: calc((100cqi - 100px) / 11);
    }
}

.locals-store-thumbs-swiper .swiper-slide.is-active {
    opacity: 1;
}

.locals-store-thumbs-swiper .swiper-slide img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 1;
    object-fit: cover;
    object-position: center;
}

.locals-store-image {
    width: 100%;
    min-height: 0;
    overflow: visible;
    background: transparent;
}

.locals-store-image img,
.locals-feature-media img,
.locals-history > img {
    display: block;
    width: 100%;
    height: auto;
    max-width: 100%;
    object-fit: contain;
    object-position: center;
}

.locals-person-media img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    object-fit: cover;
    object-position: center;
}

.locals-miami {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    border-bottom: 0 !important;
}

.locals-miami-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 100%;
}

.locals-miami-card .locals-store-image {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    line-height: 0;
}

.locals-miami-card .locals-store-image img {
    width: 100%;
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0;
    object-fit: cover;
    object-position: center;
}

.locals-miami-title-only {
    margin: 0;
    font-size: clamp(1.25rem, 2.2vw, 1.85rem);
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.locals-miami-meta {
    width: 100%;
    margin: 1.5rem 0 0;
    padding-inline: clamp(1.75rem, 6vw, 4rem);
    box-sizing: border-box;
    align-items: center;
    gap: .75rem 1.25rem;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 16px;
    line-height: 1.45;
    color: #111;
}

.locals-miami-meta--both {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    width: 100%;
}

.locals-miami-meta--pair {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    width: min(100%, 720px);
    margin-left: auto;
    margin-right: auto;
}

.locals-miami-meta--title {
    display: flex;
    justify-content: center;
}

.locals-miami-meta .locals-store-name {
    width: auto;
    margin: 0;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 16px;
    font-weight: 700 !important;
    letter-spacing: 0;
    text-transform: none;
    color: #111;
    line-height: 1.45;
}

.locals-miami-meta--both .locals-store-name {
    text-align: center;
    justify-self: center;
}

.locals-miami-meta--pair .locals-store-name {
    text-align: start;
    justify-self: start;
}

.locals-miami-meta--title .locals-store-name {
    text-align: center;
}

.locals-miami-meta .locals-store-link {
    display: inline-block;
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: break-word;
    color: #111;
    text-decoration: none;
}

.locals-miami-meta .locals-store-link:hover {
    color: var(--locals-accent, #111);
}

.locals-miami-meta--both .locals-miami-email {
    justify-self: start;
    text-align: start;
}

.locals-miami-meta--both .locals-miami-phone {
    justify-self: end;
    text-align: end;
}

.locals-miami-meta--pair .locals-miami-email,
.locals-miami-meta--pair .locals-miami-phone {
    justify-self: end;
    text-align: end;
}

.locals-miami-copy {
    max-width: 720px;
    margin-top: 1.5rem;
}

.locals-miami .locals-store-name,
.locals-page h2.locals-store-name {
    width: 100%;
    margin: 1.5rem 0 0;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 16px;
    font-weight: 700 !important;
    letter-spacing: 0;
    text-align: center;
    text-transform: none;
    color: #111;
    line-height: 1.45;
}

.locals-miami .locals-miami-meta .locals-store-name {
    margin: 0;
    width: auto;
}

.locals-miami .locals-store-name strong,
.locals-page h2.locals-store-name strong {
    font-family: Arial, Helvetica, sans-serif !important;
    font-weight: 700 !important;
    color: inherit;
}

.locals-page h3.locals-store-name {
    margin: 0;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0;
    text-align: left;
    text-transform: none;
    color: #111;
    line-height: 1.45;
}

.locals-feature {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(270px, .8fr);
    gap: clamp(2rem, 7vw, 7rem);
    align-items: center;
}

/* Quill 2 guarda viñetas como <ol><li data-list="bullet">; sin esto el browser muestra 1. 2. 3. */
.locals-rich ol,
.locals-rich ul,
.locals-history-bio .descripcion ol,
.locals-history-bio .descripcion ul,
.locals-miami-copy ol,
.locals-miami-copy ul {
    margin: 0.35em 0;
    padding-left: 1.5em;
}

.locals-rich li,
.locals-rich li[data-list="bullet"],
.locals-rich li[data-list="ordered"],
.locals-history-bio .descripcion li,
.locals-history-bio .descripcion li[data-list="bullet"],
.locals-history-bio .descripcion li[data-list="ordered"],
.locals-miami-copy li,
.locals-miami-copy li[data-list="bullet"],
.locals-miami-copy li[data-list="ordered"] {
    display: list-item !important;
    float: none !important;
    width: auto !important;
    list-style-position: outside;
    margin: 0 !important;
    padding-left: 0.35em;
}

.locals-rich li[data-list="bullet"],
.locals-rich ul > li,
.locals-history-bio .descripcion li[data-list="bullet"],
.locals-history-bio .descripcion ul > li,
.locals-miami-copy li[data-list="bullet"],
.locals-miami-copy ul > li {
    list-style-type: disc;
}

.locals-rich li[data-list="ordered"],
.locals-rich ol > li:not([data-list="bullet"]),
.locals-history-bio .descripcion li[data-list="ordered"],
.locals-history-bio .descripcion ol > li:not([data-list="bullet"]),
.locals-miami-copy li[data-list="ordered"],
.locals-miami-copy ol > li:not([data-list="bullet"]) {
    list-style-type: decimal;
}

.locals-rich li[data-list="alpha"],
.locals-history-bio .descripcion li[data-list="alpha"],
.locals-miami-copy li[data-list="alpha"] {
    list-style-type: lower-alpha;
}

.locals-rich .ql-ui,
.locals-history-bio .descripcion .ql-ui,
.locals-miami-copy .ql-ui {
    display: none !important;
}

.locals-rich a {
    border-bottom: 1px solid currentColor;
}

.locals-visit {
    text-align: center;
}

.locals-visit p {
    margin: 0 0 1rem;
    color: #111;
    font-size: clamp(1.45rem, 3.2vw, 2.65rem);
    font-weight: 700;
    letter-spacing: .02em;
    line-height: 1.65;
}

.locals-visit p:last-child {
    margin-bottom: 0;
}

.locals-visit-phone a {
    color: var(--locals-accent);
    text-decoration: none;
}

.locals-visit-phone a.locals-wsp-link:hover,
.locals-visit-phone a:hover {
    text-decoration: underline;
}

.locals-page > .locals-section.locals-payments-section,
.locals-section.locals-payments-section,
.locals-payments-section {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    border-top: 0 !important;
    border-bottom: 0 !important;
    padding: clamp(1.5rem, 3vw, 2.5rem) 10%;
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
    box-sizing: border-box;
}

.locals-maps-section {
    padding-top: 0;
}

.locals-payment-link {
    display: block;
    width: min(100%, 48rem);
    max-width: min(100%, 48rem);
    margin: 0 auto;
    text-decoration: none !important;
    border: 0 !important;
    outline: none !important;
    box-shadow: none !important;
    text-align: center;
}

.locals-payment-link h2 {
    margin: 0 auto !important;
    display: block;
    width: 100%;
    box-sizing: border-box;
    padding: 1rem 5rem;
    background: #d9d9d9;
    color: #111;
    border: 0 !important;
    border-bottom: 0 !important;
    border-radius: 0;
    box-shadow: none !important;
    text-decoration: none !important;
    font-size: clamp(1.6rem, 2.8vw, 2.4rem);
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: none;
    text-align: center;
    transition: background-color .2s ease;
}

.locals-payment-link:hover h2,
.locals-payment-link:focus-visible h2 {
    background: #c8c8c8;
    color: #111;
    text-decoration: none !important;
}

.locals-map-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 390px), 1fr));
    gap: 2rem;
}

.locals-map iframe {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    border: 0;
}

.locals-feature {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(270px, .8fr);
    gap: clamp(2rem, 7vw, 7rem);
    align-items: center;
}

.locals-feature-media {
    min-height: 0;
    width: 100%;
}

.locals-story {
    display: flex !important;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 50px;
    width: 100%;
    max-width: 100%;
    margin: 0;
    box-sizing: border-box;
    border: 0 !important;
    border-bottom: 0 !important;
}

.locals-video-column {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    flex: 0 0 auto;
    width: min(300px, 36%);
    max-width: 300px;
    min-width: 0;
    margin: 0;
    box-sizing: border-box;
}

.locals-video-column .restauracion-videos {
    width: 100%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.locals-page .restauracion-videos__inner {
    display: block;
    justify-content: flex-start;
    width: 100%;
    max-width: 100%;
    margin: 0;
    box-sizing: border-box;
}

.locals-history {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
    box-sizing: border-box;
}

.locals-history > img {
    height: auto;
    max-height: 440px;
    margin-bottom: 2rem;
    flex: 0 0 auto;
}

.locals-history-bio {
    flex: 1 1 auto;
    min-height: 0;
    padding: 0 0.85rem 0 0;
    overflow-x: hidden;
    overflow-y: auto;
    box-sizing: border-box;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 16px;
    line-height: 1.4;
    cursor: grab;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
}

/* Chrome/Edge/Safari: scrollbar-width anula el ancho en px; solo usar ::-webkit-scrollbar */
body.page-locals .locals-history-bio::-webkit-scrollbar {
    width: 18px !important;
}

body.page-locals .locals-history-bio::-webkit-scrollbar-track {
    background: #d9e0e3 !important;
    border-radius: 9px;
}

body.page-locals .locals-history-bio::-webkit-scrollbar-thumb {
    background: #7a8c92 !important;
    border-radius: 9px;
    border: 3px solid #d9e0e3;
    min-height: 40px;
}

body.page-locals .locals-history-bio::-webkit-scrollbar-thumb:hover {
    background: #5f7278 !important;
}

/* Firefox (no soporta ::-webkit-scrollbar con ancho en px) */
@supports not selector(::-webkit-scrollbar) {
    body.page-locals .locals-history-bio {
        scrollbar-width: auto;
        scrollbar-color: #7a8c92 #d9e0e3;
    }
}

.locals-history-bio.is-bio-dragging {
    cursor: grabbing;
    user-select: none;
}

/* Tipografía de la historia (más chica que style.php) */
body.page-locals .locals-history-bio,
body.page-locals .locals-history-bio .locals-rich,
body.page-locals .locals-history-bio .descripcion,
body.page-locals .locals-history-bio .descripcion *,
body.page-locals .locals-history-bio .locals-rich * {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
    color: #111 !important;
    min-height: 0;
    margin-bottom: 0;
    cursor: grab;
}

body.page-locals .locals-history-bio .descripcion strong,
body.page-locals .locals-history-bio .descripcion strong u,
body.page-locals .locals-history-bio .descripcion b,
body.page-locals .locals-history-bio .locals-rich strong,
body.page-locals .locals-history-bio .locals-rich strong u,
body.page-locals .locals-history-bio .locals-rich b {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 16px !important;
    color: #111 !important;
}

body.page-locals .locals-history-bio .ql-align-center,
body.page-locals .locals-rich .ql-align-center {
    text-align: center;
}

body.page-locals .locals-history-bio .ql-align-right,
body.page-locals .locals-rich .ql-align-right {
    text-align: right;
}

body.page-locals .locals-history-bio .ql-align-justify,
body.page-locals .locals-rich .ql-align-justify {
    text-align: justify;
}

/* La palabra “WhatsApp” en negro y negrita, como el resto de la historia */
body.page-locals .locals-history-bio .descripcion .locals-wsp-accent,
body.page-locals .locals-history-bio .descripcion .locals-wsp-accent *,
body.page-locals .locals-history-bio .locals-rich .locals-wsp-accent,
body.page-locals .locals-history-bio .locals-rich .locals-wsp-accent *,
body.page-locals .locals-history-bio .descripcion strong:has(.locals-wsp-accent),
body.page-locals .locals-history-bio .descripcion b:has(.locals-wsp-accent),
body.page-locals .locals-history-bio .locals-rich strong:has(.locals-wsp-accent),
body.page-locals .locals-history-bio .locals-rich b:has(.locals-wsp-accent) {
    color: #111 !important;
    font-weight: 700 !important;
}

/* Teléfono linkificado: color de texto normal, sin acento */
body.page-locals .locals-history-bio .descripcion a.locals-wsp-link,
body.page-locals .locals-history-bio .descripcion a.locals-wsp-link *,
body.page-locals .locals-history-bio .locals-rich a.locals-wsp-link,
body.page-locals .locals-history-bio .locals-rich a.locals-wsp-link * {
    color: inherit !important;
    font-weight: 400 !important;
}

.locals-history-bio .descripcion a.locals-wsp-link,
.locals-history-bio .locals-rich a.locals-wsp-link {
    text-decoration: underline;
    text-underline-offset: 0.18em;
    cursor: pointer !important;
    border-bottom: 0;
}

.locals-history-bio .descripcion a.locals-wsp-link:hover,
.locals-history-bio .locals-rich a.locals-wsp-link:hover {
    opacity: 0.88;
}

.locals-history-bio .descripcion {
    margin-top: 0.5rem;
    margin-bottom: 0;
    padding: 0;
}

.locals-history-bio .descripcion hr,
.locals-history-bio .locals-rich hr {
    border-color: rgba(150, 150, 150, 0.22) !important;
    background-color: rgba(150, 150, 150, 0.22) !important;
}

.locals-history-bio.is-bio-dragging .descripcion,
.locals-history-bio.is-bio-dragging .descripcion * {
    cursor: grabbing;
    pointer-events: none;
}

/* Reproductor de videos: mismo patrón que pages/style.php */
.locals-page .div-disenador {
    position: relative;
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    box-sizing: border-box;
    aspect-ratio: 9 / 16;
    background: #000;
}

.locals-page .div-disenador video,
.locals-page .vid-disenador {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    margin: 0;
    box-sizing: border-box;
    object-fit: contain;
    background: #000;
}

.locals-page .div-disenador video:not(.is-active) {
    opacity: 0;
    pointer-events: none;
}

.locals-page .div-disenador video.is-active {
    opacity: 1;
    z-index: 1;
}

.locals-page .div-disenador.vtc-fs-active {
    background: #000 !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    z-index: 999999 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    aspect-ratio: auto !important;
}

.locals-page .div-disenador.vtc-fs-active video {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
}

.locals-page .vtc-top-icons {
    position: absolute;
    top: 20px;
    left: 0;
    right: 0;
    z-index: 11;
    display: flex;
    justify-content: space-between;
    padding: 0 25px;
}

.locals-page .vtc-icon-btn {
    background: none;
    border: none;
    cursor: pointer;
    padding: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.locals-page .vid-top-controls {
    position: absolute;
    bottom: 5px;
    left: 0;
    right: 0;
    z-index: 10;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 10px;
    background: linear-gradient(to top, rgba(0, 0, 0, .7) 0%, transparent 100%);
    opacity: 0;
    transition: opacity .25s;
}

.locals-page .div-disenador:hover .vid-top-controls,
.locals-page .div-disenador:focus-within .vid-top-controls,
.locals-page .div-disenador.vtc-show .vid-top-controls {
    opacity: 1;
}

.locals-page .vtc-btn {
    background: none;
    border: none;
    cursor: pointer;
    padding: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.locals-page .vtc-progress {
    flex: 1;
    height: 4px;
    -webkit-appearance: none;
    appearance: none;
    background: rgba(255, 255, 255, .3);
    border-radius: 2px;
    outline: none;
    cursor: pointer;
}

.locals-page .vtc-progress::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 12px;
    height: 12px;
    background: #fff;
    border-radius: 50%;
    cursor: pointer;
}

.locals-page .vtc-progress::-moz-range-thumb {
    width: 12px;
    height: 12px;
    background: #fff;
    border-radius: 50%;
    border: none;
    cursor: pointer;
}

.locals-page .vtc-time {
    color: #fff;
    font-size: 12px;
    white-space: nowrap;
    flex-shrink: 0;
    user-select: none;
}

.locals-page .vtc-round-play {
    position: absolute;
    top: 70%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, .8);
    background: rgba(0, 0, 0, .5);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

.locals-media-dual {
    --locals-media-h: min(calc(72vh * 0.75), calc(780px * 0.75));
    --locals-media-w: min(100%, calc(var(--locals-media-h) * 0.78));
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(2.75rem, 5vw, 4.5rem);
    width: 100%;
    max-width: 100%;
    margin-inline: 0;
    align-items: stretch;
    justify-items: stretch;
    min-width: 0;
    box-sizing: border-box;
}

.locals-media-dual:has(> .locals-media-column:only-child) {
    grid-template-columns: minmax(0, 1fr);
    width: min(100%, 42rem);
    margin-inline: auto;
}

.locals-media-column {
    display: flex;
    flex-direction: column;
    min-width: 0;
    width: 100%;
    max-width: 100%;
    height: 100%;
    overflow: hidden;
}

/* Sin títulos Eventos / Prensa / Revistas encima de los carruseles */
.locals-media-column > h2,
.locals-media-column .locals-media-column-title,
.locals-carousel-section .locals-media-column > h2 {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    font-size: 0 !important;
}

.locals-media-stage {
    width: 100%;
    min-width: 0;
    max-width: 100%;
}

.locals-media-stage .locals-store-carousel,
.locals-media-carousel.locals-store-carousel {
    --locals-store-arrow-rail: 0;
    --locals-arrow-rail: 0;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
}

/* Eventos / Revistas: sin flechas laterales */
.locals-media-stage .locals-store-rail,
.locals-media-rail,
.locals-media-stage .locals-store-rail .side-arrow,
.locals-media-rail .side-arrow,
.locals-media-carousel .swiper-button-prev,
.locals-media-carousel .swiper-button-next {
    display: none !important;
}

/* Eventos / Revistas: sin minislide de miniaturas */
.locals-media-stage .locals-store-thumbs {
    display: none !important;
}

.locals-media-stage .locals-store-main {
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
}

.locals-media-stage .locals-store-swiper,
.locals-media-stage .locals-media-swiper {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    height: auto;
    max-height: none;
    overflow: hidden;
    background: transparent;
}

.locals-media-stage .locals-store-swiper .swiper-wrapper {
    height: auto;
    align-items: stretch;
}

.locals-media-stage .locals-store-swiper .swiper-slide,
.locals-media-stage .locals-external-card.locals-store-slide {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    height: auto;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    overflow: hidden;
}

.locals-media-stage .locals-store-rail,
.locals-media-rail {
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--locals-store-arrow-rail, 3.25rem);
    min-width: var(--locals-store-arrow-rail, 3.25rem);
    height: var(--locals-media-h);
    align-self: start;
    box-sizing: border-box;
}

/* Imagen y texto: JS ajusta el caption al ancho visible de cada foto. */
.locals-external-body {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 100%;
    margin-inline: auto;
    box-sizing: border-box;
}

.locals-external-media {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--locals-media-w);
    max-width: 100%;
    height: var(--locals-media-h);
    min-height: 21rem;
    max-height: var(--locals-media-h);
    overflow: hidden;
    background: transparent;
    box-sizing: border-box;
}

.locals-external-zoom {
    position: absolute;
    top: 0.25rem;
    right: 0.25rem;
    left: auto;
    z-index: 6;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 0;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.15s ease;
}

.locals-external-zoom.is-placed {
    opacity: 1;
}

.locals-external-zoom svg {
    display: block;
    width: 4.8rem;
    height: 4.8rem;
}

.locals-external-media a {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
}

.locals-external-media img,
.locals-external-card .locals-external-media img,
.locals-media-stage .locals-store-slide .locals-external-media img {
    position: static !important;
    inset: auto !important;
    display: block;
    width: auto !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    margin: 0 auto;
    object-fit: contain !important;
    object-position: center;
    background: transparent;
}

.locals-external-caption {
    display: block;
    width: var(--locals-caption-width, var(--locals-media-w));
    max-width: 100%;
    margin-inline: auto;
    box-sizing: border-box;
}

.locals-media-rail {
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--locals-store-arrow-rail, 3.25rem);
    min-width: var(--locals-store-arrow-rail, 3.25rem);
    flex: 0 0 var(--locals-store-arrow-rail, 3.25rem);
    box-sizing: border-box;
}

.locals-swiper {
    position: relative;
    overflow: hidden;
    padding: 0;
    min-width: 0;
    width: 100%;
}

.locals-swiper .swiper-slide {
    height: auto;
}

.locals-team-section .locals-team-list,
.locals-team-section .locals-empty {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    box-sizing: border-box;
}

.locals-team-section {
    width: 100%;
    border-bottom: 0 !important;
}

/* Mismo ancho útil que .locals-story (borde izq. del video → borde der. del texto) */
.locals-team-section .locals-team-banner,
.locals-team-section .banner-h2 {
    background-color: #ccc;
    padding: 1rem;
    text-align: center;
    margin: 0 0 clamp(2rem, 4vw, 3rem);
    border: 1px solid #111;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

.locals-team-section .locals-team-banner h2,
.locals-team-section .banner-h2 h2,
.locals-team-section > h2 {
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    color: #111;
    text-align: center;
    font-size: 2.5rem !important;
    font-weight: 500 !important;
    letter-spacing: normal;
    text-transform: none;
    line-height: 1.2;
}

@media (min-width: 768px) {
    .locals-team-section .locals-team-banner,
    .locals-team-section .banner-h2 {
        padding: 1.1rem;
    }
}

.locals-carousel-section > h2 {
    text-align: center;
}

.locals-team-list {
    display: flex;
    flex-direction: column;
    gap: 3.5rem;
    width: 100%;
    max-width: 100%;
    margin: 0;
}

.locals-external-card {
    background: transparent;
    text-align: center;
}

.locals-external-card > a {
    display: block;
    text-align: center;
    color: inherit;
    text-decoration: none;
}

.locals-person {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 50px;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    min-height: 0;
    background: transparent;
    overflow: visible;
}

.locals-person-media {
    flex: 0 0 auto;
    width: min(300px, 36%);
    max-width: 300px;
    aspect-ratio: 1 / 1;
    height: auto;
    min-width: 0;
    overflow: hidden;
    background: #f0f0f0;
    border: 0;
    box-sizing: border-box;
}

.locals-person--no-photo .locals-person-media {
    background: #fff;
}

.locals-person-media img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    min-height: 0;
    object-fit: cover;
    object-position: center;
}

.locals-person-info {
    flex: 1 1 auto;
    min-width: 0;
    width: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0;
    padding: 0 0.85rem 0 0;
    box-sizing: border-box;
    background: transparent;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.65 !important;
    color: #111;
}

/* Misma tipografía e interlineado que la historia */
body.page-locals .locals-person-info,
body.page-locals .locals-person-info * {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.65 !important;
    color: #111 !important;
    min-height: 0;
    margin-bottom: 0;
}

/* Nombre sin viñeta; detalles con puntito negro alineados al nombre */
.locals-person-doc-name {
    margin: 0;
    padding: 0;
    font-size: 16px !important;
    line-height: 1.65 !important;
    font-weight: 700 !important;
    color: #111 !important;
    list-style: none;
}

.locals-person-doc-details {
    list-style: disc;
    list-style-position: outside;
    margin: 0.55em 0 0;
    padding: 0 0 0 1.15em;
    font-size: 16px !important;
    line-height: 1.65 !important;
    font-weight: 400;
    color: #111 !important;
}

.locals-person-doc-details > li {
    margin: 0;
    padding: 0;
    font-weight: 400;
    color: #111 !important;
    text-indent: 0;
    line-height: 1.65 !important;
}

.locals-person-doc-details > li::marker {
    color: #111;
}

.locals-person-doc-details > li:last-child {
    margin-bottom: 0;
}

.locals-person-info .locals-person-label {
    font-weight: 700 !important;
    color: var(--locals-accent) !important;
}

.locals-person-info h3,
.locals-person-info p,
.locals-person-info .locals-person-role,
.locals-person-info .locals-person-specialty {
    margin: 0;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.65 !important;
    background: transparent;
}

.locals-external-card h3 {
    width: auto;
    max-width: 100%;
    margin: .9rem 0 .35rem;
    padding: 0;
    box-sizing: border-box;
    font-size: clamp(1.45rem, 2.6vw, 1.95rem);
    font-weight: 400;
    line-height: 1.35;
    text-align: center;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.locals-external-card time {
    display: block;
    width: auto;
    max-width: 100%;
    margin: 0 0 .55rem;
    padding: 0;
    box-sizing: border-box;
    color: var(--locals-muted);
    font-size: clamp(1.15rem, 1.9vw, 1.35rem);
    text-align: center;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.locals-external-cta {
    position: relative;
    z-index: 1;
    display: flex;
    justify-content: center;
    width: 100%;
    margin-top: auto;
    margin-bottom: 0;
    padding-top: 0.5rem;
}

/* Idéntico a .inicio-revistas .locals-external-cta .btn-primary (index.css) */
body.page-locals .locals-page .locals-external-cta .btn-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    margin: 1.25rem auto 0.5rem;
    padding: 1rem 1.45rem 0.8rem;
    border: 1px solid #111;
    border-radius: 12px;
    background-color: #fff;
    color: #111;
    text-decoration: none;
    text-align: center;
    font-family: "Martel", serif !important;
    font-weight: 900;
    font-size: 1.55rem;
    line-height: 1;
    letter-spacing: normal;
    user-select: none;
}

/* Eventos / Prensa: el CTA es visual; la columna prensa es clicable completa */
.locals-page .locals-external-cta span.btn-primary {
    cursor: default;
    pointer-events: none;
}

.locals-page .locals-media-column--linked.is-clickable {
    position: relative;
    cursor: pointer;
}

.locals-page .locals-media-column-link {
    position: absolute;
    inset: 0;
    z-index: 4;
    display: block;
    text-decoration: none;
}

/* Las flechas del carrusel quedan por encima del enlace de la sección */
.locals-page .locals-media-column--linked .locals-media-rail,
.locals-page .locals-media-column--linked .side-arrow {
    position: relative;
    z-index: 5;
    pointer-events: auto;
}

.locals-media-carousel .swiper-button-prev.side-arrow,
.locals-media-carousel .swiper-button-next.side-arrow {
    position: static;
    top: auto;
    left: auto;
    right: auto;
    display: flex !important;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: auto;
    height: auto;
    margin: 0;
    padding: 4px;
    border: none;
    border-radius: 8px;
    background: transparent;
    color: #111;
    cursor: pointer;
    line-height: 0;
    -webkit-tap-highlight-color: transparent;
}

.locals-media-carousel .swiper-button-prev.side-arrow::after,
.locals-media-carousel .swiper-button-next.side-arrow::after {
    content: none;
    display: none;
}

.locals-media-carousel .side-arrow .prod-card-carousel__chev {
    display: block;
    width: calc(1.15rem * 2.2);
    height: calc(1.15rem * 2.2);
    flex-shrink: 0;
}

.locals-media-carousel .swiper-button-prev.side-arrow:hover,
.locals-media-carousel .swiper-button-next.side-arrow:hover {
    color: rgba(0, 0, 0, 0.7);
}

.locals-media-carousel .swiper-button-prev.side-arrow:focus-visible,
.locals-media-carousel .swiper-button-next.side-arrow:focus-visible {
    outline: 2px solid #111;
    outline-offset: 2px;
}

.locals-media-carousel .swiper-button-prev.side-arrow:active,
.locals-media-carousel .swiper-button-next.side-arrow:active {
    transform: translateY(1px) scale(.99);
}

.locals-media-carousel .swiper-button-disabled.side-arrow {
    opacity: .35;
    cursor: default;
}

.locals-media-carousel .swiper-button-prev.side-arrow::after,
.locals-media-carousel .swiper-button-next.side-arrow::after {
    content: none;
    display: none;
}

.locals-media-carousel .side-arrow .prod-card-carousel__chev {
    display: block;
    width: calc(1.85rem * 3);
    height: calc(1.85rem * 3);
    flex-shrink: 0;
}

.locals-media-carousel .swiper-button-disabled.side-arrow {
    opacity: .35;
    cursor: default;
    pointer-events: none;
}

.locals-empty {
    margin: 0;
    color: #777;
    font-style: italic;
}

.locals-page.is-rtl {
    text-align: right;
}

/*
 * Layout físico LTR (fotos/video a la izquierda como en ES/EN).
 * Solo el texto corre RTL; si no, grids/flex quedan al revés.
 */
.locals-page.is-rtl .locals-store-card,
.locals-page.is-rtl .locals-story,
.locals-page.is-rtl .locals-person,
.locals-page.is-rtl .locals-miami-card,
.locals-page.is-rtl .locals-miami-meta,
.locals-page.is-rtl .locals-feature,
.locals-page.is-rtl .locals-media-dual,
.locals-page.is-rtl .locals-thumbs-row,
.locals-page.is-rtl .locals-store-gallery,
.locals-page.is-rtl .div-breadcrumbs {
    direction: ltr;
}

.locals-page.is-rtl .locals-store-info,
.locals-page.is-rtl .locals-store-aside,
.locals-page.is-rtl .locals-history,
.locals-page.is-rtl .locals-history-bio,
.locals-page.is-rtl .locals-rich,
.locals-page.is-rtl .locals-miami-copy,
.locals-page.is-rtl .locals-person-info,
.locals-page.is-rtl .locals-team-banner,
.locals-page.is-rtl .locals-payment-link,
.locals-page.is-rtl .locals-external-caption,
.locals-page.is-rtl h2.ruta2 {
    direction: rtl;
    text-align: right;
}

.locals-page.is-rtl .locals-store-card--reverse .locals-store-info,
.locals-page.is-rtl .locals-store-card--reverse .locals-store-name,
.locals-page.is-rtl .locals-store-card--reverse .locals-store-info p {
    text-align: right;
}

.locals-page.is-rtl .locals-rich ol,
.locals-page.is-rtl .locals-rich ul,
.locals-page.is-rtl .locals-history-bio .descripcion ol,
.locals-page.is-rtl .locals-history-bio .descripcion ul,
.locals-page.is-rtl .locals-miami-copy ol,
.locals-page.is-rtl .locals-miami-copy ul,
.locals-page.is-rtl .locals-person-doc-details {
    padding-left: 0;
    padding-right: 1.5em;
}

.locals-page.is-rtl .locals-history-bio {
    padding: 0 0 0 0.85rem;
}

.locals-page.is-rtl a.btn-step-back {
    margin-left: 0;
    margin-right: 1rem;
}

/* Teléfonos / emails / URLs se leen LTR aunque el bloque sea RTL */
.locals-page.is-rtl .locals-store-link,
.locals-page.is-rtl .locals-miami-meta .locals-store-link,
.locals-page.is-rtl a.locals-wsp-link {
    direction: ltr;
    unicode-bidi: isolate;
    display: inline-block;
}

.locals-page.is-rtl .locals-media-carousel .swiper-button-prev.side-arrow,
.locals-page.is-rtl .locals-media-carousel .swiper-button-next.side-arrow {
    transform: scaleX(-1);
}

@media (max-width: 899px) {
    .locals-store-address,
    .locals-store-contact,
    .locals-store-note,
    .locals-store-directions,
    .locals-page h3.locals-store-name {
        font-size: 14px;
    }
}

@media (max-width: 820px) {
    .locals-page {
        width: 80%;
        max-width: 80%;
        margin: 0 auto;
    }

    .locals-page > .div-breadcrumbs,
    .locals-page > .locals-section {
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }

    .locals-media-dual {
        grid-template-columns: 1fr;
        width: 100%;
        gap: 2.5rem;
        --locals-media-h: min(calc(68vh * 0.75), calc(680px * 0.75));
    }

    .locals-store-list {
        gap: 2rem;
    }

    .locals-store-card,
    .locals-store-card--reverse {
        grid-template-columns: 1fr;
        gap: 1.25rem;
    }

    .locals-store-card--reverse .locals-store-media,
    .locals-store-card--reverse .locals-store-aside {
        order: initial;
    }

    .locals-store-card--reverse .locals-store-info {
        align-items: flex-start;
        text-align: left;
    }

    .locals-store-card--reverse .locals-store-name,
    .locals-store-card--reverse .locals-store-info p {
        text-align: left;
    }

    .locals-store-aside {
        height: auto;
        max-height: none;
        overflow: visible;
    }

    .locals-store-map {
        flex: 0 0 auto;
        width: min(100%, var(--locals-store-slide-max-h));
        max-width: min(100%, var(--locals-store-slide-max-h));
        max-height: var(--locals-store-slide-max-h);
        aspect-ratio: 1 / 1;
        height: auto;
    }

    .locals-store-map iframe {
        min-height: 0;
    }

    .locals-feature {
        grid-template-columns: 1fr;
    }

    .locals-story {
        flex-direction: column !important;
        gap: 1.5rem;
    }

    .locals-video-column {
        width: min(300px, 100%);
        max-width: 300px;
    }
}

@media (max-width: 576px) {
    .locals-page {
        padding: 1rem 0 4rem;
        width: 80%;
        max-width: 80%;
        margin: 0 auto;
    }

    .locals-page > .div-breadcrumbs,
    .locals-page > .locals-section {
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }

    .locals-section {
        padding: 3rem 10%;
    }

    .locals-store-list {
        gap: 2.25rem;
    }

    .locals-page {
        --locals-store-slide-max-h: min(calc(48vh * 1.3), calc(60dvh * 1.3), 440px);
    }

    .locals-store-card {
        width: 100%;
    }

    .locals-store-carousel {
        --locals-store-arrow-rail: 2.75rem;
    }

    .locals-feature-media {
        min-height: 0;
    }

    .locals-map-grid {
        grid-template-columns: 1fr;
    }

    .locals-page .vtc-fullscreen {
        display: none !important;
    }

    .locals-swiper {
        padding: 0;
    }

    .locals-media-carousel,
    .locals-media-stage .locals-store-carousel {
        --locals-store-arrow-rail: 2.75rem;
        --locals-arrow-rail: 2.75rem;
    }

    .locals-person {
        gap: 1.5rem;
        align-items: flex-start;
    }

    .locals-person-media {
        width: min(300px, 36%);
        max-width: 300px;
        aspect-ratio: 1 / 1;
        height: auto;
        min-width: 0;
    }

    .locals-person-info {
        padding-right: 0;
    }

    .locals-person-doc-name {
        font-size: 16px !important;
    }

    .locals-person-doc-details {
        font-size: 16px !important;
        line-height: 1.65 !important;
    }

    .locals-team-list {
        gap: 2.5rem;
    }

    .locals-media-carousel .side-arrow .prod-card-carousel__chev {
        width: calc(1.5rem * 3);
        height: calc(1.5rem * 3);
    }

    .locals-media-carousel .swiper-button-prev.side-arrow,
    .locals-media-carousel .swiper-button-next.side-arrow {
        padding: 3px;
        border-radius: 6px;
    }
}

@media (max-width: 576px) {
    .locals-miami-meta {
        font-size: 14px;
        gap: .5rem .75rem;
        padding-inline: 1.5rem;
    }

    .locals-miami-meta .locals-store-name {
        font-size: 14px;
    }

    .locals-miami-meta--pair {
        width: 100%;
    }
}

/*
 * Locales ≤991: solo body.page-locals (locals.css también carga en index).
 * Un margen 12–16 px; sin 80% + padding 10%; sin scale(1.25).
 */
@media (max-width: 991px) {
    body.page-locals .locals-page {
        /* Altura de galería ≈ proporción del ancho útil (fotos horizontales) */
        --locals-store-slide-max-h: clamp(150px, 46vw, 240px);
        --locals-media-h: clamp(160px, 48vw, 260px);
        --locals-media-w: min(100%, calc(var(--locals-media-h) * 0.85));
        --locals-stack-gap: clamp(12px, 2vw, 16px);
        --locals-section-pad-y: 12px;
        width: 100%;
        max-width: 100%;
        margin: 0;
        padding: 0 0 2rem;
        overflow: visible;
    }

    body.page-locals .locals-page > .div-breadcrumbs {
        padding: 0 clamp(12px, 2.2vw, 16px);
        margin-bottom: 0.65rem;
        box-sizing: border-box;
    }

    body.page-locals .locals-page .locals-section,
    body.page-locals .locals-page .locals-section.locals-stores,
    body.page-locals .locals-page .locals-section.locals-payments-section,
    body.page-locals .locals-page .locals-payments-section,
    body.page-locals .locals-page .locals-volver-wrap {
        padding-left: clamp(12px, 2.2vw, 16px) !important;
        padding-right: clamp(12px, 2.2vw, 16px) !important;
        box-sizing: border-box;
        width: 100%;
        max-width: 100%;
    }

    /* Separación total entre secciones ≈ 20–24 px (12 + 12) */
    body.page-locals .locals-page .locals-section {
        padding-top: var(--locals-section-pad-y);
        padding-bottom: var(--locals-section-pad-y);
        margin: 0;
    }

    body.page-locals .locals-page .locals-section.locals-stores {
        padding-top: 0.35rem;
    }

    body.page-locals .locals-page .locals-section.locals-carousel-section,
    body.page-locals .locals-page .locals-section.locals-payments-section,
    body.page-locals .locals-page .locals-payments-section {
        padding-top: var(--locals-section-pad-y);
        padding-bottom: var(--locals-section-pad-y);
    }

    body.page-locals .locals-page .locals-store-list {
        gap: clamp(1.15rem, 3vw, 1.5rem);
    }

    body.page-locals .locals-page .locals-team-list {
        gap: clamp(1.15rem, 3vw, 1.5rem);
    }

    /* Locales / historia / equipo / eventos: apilar */
    body.page-locals .locals-page .locals-store-card,
    body.page-locals .locals-page .locals-store-card--reverse,
    body.page-locals .locals-page .locals-feature,
    body.page-locals .locals-page .locals-story {
        display: grid !important;
        grid-template-columns: 1fr !important;
        flex-direction: column !important;
        gap: var(--locals-stack-gap);
        width: 100%;
        max-width: 100%;
        min-height: 0;
        height: auto;
        justify-items: center;
        align-items: start;
    }

    body.page-locals .locals-page .locals-store-card--reverse .locals-store-media,
    body.page-locals .locals-page .locals-store-card--reverse .locals-store-aside {
        order: initial;
    }

    body.page-locals .locals-page .locals-store-aside {
        height: auto !important;
        max-height: none !important;
        overflow: visible;
        width: 100%;
        align-items: stretch;
        gap: var(--locals-stack-gap);
        padding-top: 0;
    }

    body.page-locals .locals-page .locals-store-info {
        align-items: flex-start;
        text-align: start;
        width: 100%;
        gap: 0.45rem;
    }

    body.page-locals .locals-page .locals-store-name,
    body.page-locals .locals-page .locals-store-info p,
    body.page-locals .locals-page .locals-store-address,
    body.page-locals .locals-page .locals-store-contact,
    body.page-locals .locals-page .locals-store-note,
    body.page-locals .locals-page .locals-store-directions {
        text-align: start;
        font-size: 14px !important;
        line-height: 1.45 !important;
    }

    body.page-locals .locals-page .locals-store-note,
    body.page-locals .locals-page .locals-store-phone {
        margin-bottom: 0.35em;
    }

    body.page-locals .locals-page .locals-store-media,
    body.page-locals .locals-page .locals-store-aside,
    body.page-locals .locals-page .locals-store-map {
        width: 100%;
        max-width: 100%;
        justify-self: center;
    }

    /* Galería: altura estable según ancho; contain, sin huecos de 440px */
    body.page-locals .locals-page .locals-store-swiper,
    body.page-locals .locals-page .locals-store-rail {
        height: var(--locals-store-slide-max-h);
        max-height: var(--locals-store-slide-max-h);
    }

    body.page-locals .locals-page .locals-store-slide img,
    body.page-locals .locals-page .locals-store-slide video,
    body.page-locals .locals-page .locals-store-slide--video video {
        object-fit: contain;
        object-position: center;
    }

    body.page-locals .locals-page .locals-store-thumbs {
        margin-top: 12px;
        gap: 0.25rem;
    }

    /* Mapa rectangular compacto (~200–240 px en celular) */
    body.page-locals .locals-page .locals-store-map {
        flex: 0 0 auto;
        width: 100%;
        max-width: 100%;
        aspect-ratio: auto;
        height: clamp(200px, 34vw, 240px);
        max-height: 240px;
        margin-left: auto;
        margin-right: auto;
    }

    body.page-locals .locals-page .locals-store-map iframe {
        width: 100%;
        height: 100%;
        min-height: 0;
    }

    body.page-locals .locals-page .locals-map-expand {
        top: 8px;
        right: 8px;
        width: 2.5rem;
        height: 2.5rem;
    }

    body.page-locals .locals-page .locals-map-grid {
        grid-template-columns: 1fr;
        gap: var(--locals-stack-gap);
    }

    /* Video: dimensiones reales, sin scale(1.25) */
    body.page-locals .locals-page .locals-video-column {
        width: min(100%, 280px);
        max-width: min(100%, 280px);
        margin-left: auto;
        margin-right: auto;
        justify-self: center;
    }

    body.page-locals .locals-page .restauracion-videos__inner {
        width: 100% !important;
        max-width: 100% !important;
        overflow: visible !important;
    }

    body.page-locals .locals-page .div-disenador {
        width: 100% !important;
        max-width: 100% !important;
        transform: none !important;
        overflow: hidden !important;
        aspect-ratio: 9 / 16;
    }

    body.page-locals .locals-page .div-disenador.vtc-fs-active {
        transform: none !important;
        overflow: hidden !important;
    }

    body.page-locals .locals-page .vtc-fullscreen {
        display: inline-flex !important;
    }

    /* Historia completa: altura automática, scroll de página */
    body.page-locals .locals-page .locals-history {
        width: 100%;
        max-width: 100%;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        min-height: 0;
    }

    body.page-locals .locals-page .locals-history > img {
        display: block;
        width: auto;
        max-width: 100%;
        max-height: min(36vw, 220px);
        height: auto;
        margin: 0 auto 0.75rem;
        object-fit: contain;
        object-position: center;
    }

    body.page-locals .locals-page .locals-history > img:not([src]),
    body.page-locals .locals-page .locals-history > img[src=""] {
        display: none;
    }

    body.page-locals .locals-page .locals-history-bio {
        padding: 0 !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
        cursor: auto;
        overscroll-behavior: auto;
        font-size: 15px;
        line-height: 1.35;
    }

    body.page-locals .locals-page .locals-history-bio,
    body.page-locals .locals-page .locals-history-bio .locals-rich,
    body.page-locals .locals-page .locals-history-bio .descripcion,
    body.page-locals .locals-page .locals-history-bio .descripcion *,
    body.page-locals .locals-page .locals-history-bio .locals-rich * {
        font-size: 15px !important;
        line-height: 1.35 !important;
        min-height: 0 !important;
        cursor: auto !important;
    }

    body.page-locals .locals-page .locals-history-bio .descripcion,
    body.page-locals .locals-page .locals-history-bio .locals-rich {
        text-align: start;
        margin: 0;
    }

    body.page-locals .locals-page .locals-history-bio .descripcion strong,
    body.page-locals .locals-page .locals-history-bio .descripcion strong u,
    body.page-locals .locals-page .locals-history-bio .descripcion b,
    body.page-locals .locals-page .locals-history-bio .locals-rich strong,
    body.page-locals .locals-page .locals-history-bio .locals-rich strong u,
    body.page-locals .locals-page .locals-history-bio .locals-rich b {
        font-size: 15px !important;
        line-height: 1.35 !important;
        color: #111 !important;
        font-weight: 700 !important;
    }

    /* Historia: el teléfono queda en un renglón propio, centrado */
    body.page-locals .locals-page .locals-history-bio .descripcion a.locals-wsp-link,
    body.page-locals .locals-page .locals-history-bio .locals-rich a.locals-wsp-link {
        display: block;
        width: 100%;
        box-sizing: border-box;
        margin-top: 0.2em;
        text-align: center;
        white-space: nowrap;
    }

    /* Equipo */
    body.page-locals .locals-page .locals-person {
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        gap: var(--locals-stack-gap);
    }

    body.page-locals .locals-page .locals-person-media {
        width: min(100%, 240px);
        max-width: min(100%, 240px);
        margin: 0 auto;
    }

    /* Sin reservar hueco si no hay foto */
    body.page-locals .locals-page .locals-person--no-photo .locals-person-media {
        display: none !important;
    }

    body.page-locals .locals-page .locals-person-info,
    body.page-locals .locals-page .locals-person-info * {
        font-size: 14px !important;
        line-height: 1.5 !important;
        text-align: start;
        cursor: auto !important;
    }

    body.page-locals .locals-page .locals-person-info {
        width: 100%;
        padding: 0 !important;
        align-items: flex-start;
    }

    body.page-locals .locals-page .locals-person-doc-name,
    body.page-locals .locals-page .locals-person-doc-details {
        font-size: 14px !important;
        line-height: 1.5 !important;
    }

    body.page-locals .locals-page .locals-person-info .locals-person-label {
        color: var(--locals-accent) !important;
        font-weight: 700 !important;
    }

    /* Eventos / revistas: contenedor al tamaño útil; texto cerca de la foto */
    body.page-locals .locals-page .locals-media-dual {
        grid-template-columns: 1fr;
        gap: var(--locals-stack-gap);
        width: 100%;
        --locals-media-h: clamp(160px, 48vw, 260px);
        --locals-media-w: min(100%, calc(var(--locals-media-h) * 0.85));
    }

    body.page-locals .locals-page .locals-external-media {
        width: var(--locals-media-w);
        max-width: 100%;
        height: var(--locals-media-h);
        min-height: 0;
        max-height: var(--locals-media-h);
    }

    body.page-locals .locals-page .locals-external-media img,
    body.page-locals .locals-page .locals-store-image img {
        display: block;
        width: auto;
        max-width: 100%;
        height: auto;
        max-height: 100%;
        margin: 0 auto;
        object-fit: contain;
        object-position: center;
    }

    body.page-locals .locals-page .locals-external-caption {
        margin-top: 0.35rem;
    }

    body.page-locals .locals-page .locals-external-card h3 {
        margin: 0.4rem 0 0.15rem;
        font-size: clamp(1.1rem, 3.2vw, 1.35rem);
    }

    body.page-locals .locals-page .locals-external-card time {
        margin: 0;
        font-size: 0.95rem;
        line-height: 1.3;
    }

    body.page-locals .locals-page .locals-external-cta {
        margin-top: 0.65rem;
    }

    body.page-locals .locals-page .locals-external-zoom {
        width: 2.5rem;
        height: 2.5rem;
    }

    body.page-locals .locals-page .locals-external-zoom svg {
        width: 2.1rem;
        height: 2.1rem;
    }

    body.page-locals .locals-page .locals-store-carousel,
    body.page-locals .locals-page .locals-media-carousel {
        --locals-store-arrow-rail: 2.25rem;
        --locals-arrow-rail: 2.25rem;
    }

    body.page-locals .locals-page .locals-store-carousel .side-arrow .prod-card-carousel__chev,
    body.page-locals .locals-page .locals-media-carousel .side-arrow .prod-card-carousel__chev {
        width: 2.4rem;
        height: 2.4rem;
    }

    body.page-locals .locals-page .locals-thumbs-nav .prod-card-carousel__chev {
        width: 1.85rem;
        height: 1.85rem;
    }

    body.page-locals .locals-page .locals-miami-meta,
    body.page-locals .locals-page .locals-miami-meta .locals-store-name {
        font-size: 14px !important;
    }

    /* Botones: alineados al contenido; texto centrado */
    body.page-locals .locals-page .locals-volver-wrap {
        margin: 0.75rem 0 1rem;
        justify-content: stretch;
        padding-top: var(--locals-section-pad-y);
        padding-bottom: var(--locals-section-pad-y);
    }

    body.page-locals .locals-page .locals-volver-wrap a.btn-step-back {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        margin: 0;
        padding: 0.5rem 0.75rem;
        min-height: 0;
        height: auto;
        border-radius: 4px;
        border: 1.5px solid #000;
        background: #CEE0E3 !important;
        color: #000 !important;
        font-family: 'BentonSans-Regular', 'BentonSans-Bold', Arial, Helvetica, sans-serif !important;
        font-size: clamp(1.625rem, calc(1.15rem + 2.11vw), 2.5rem) !important;
        font-weight: normal !important;
        line-height: 1.2 !important;
        letter-spacing: normal;
        white-space: normal;
        text-align: center;
    }

    body.page-locals .locals-page .locals-volver-wrap a.btn-step-back:hover,
    body.page-locals .locals-page .locals-volver-wrap a.btn-step-back:focus-visible {
        background: #91B9C1 !important;
        border-color: #CEE0E3;
        color: #2B454F !important;
        filter: none;
    }

    body.page-locals .locals-page .locals-payment-link {
        width: 100%;
        max-width: 100%;
    }

    body.page-locals .locals-page .locals-payment-link h2 {
        display: flex !important;
        align-items: center;
        justify-content: center;
        box-sizing: border-box;
        width: 100%;
        padding: 0.65rem 0.85rem !important;
        font-size: clamp(1.25rem, 3.5vw, 1.75rem) !important;
        line-height: 1.25 !important;
        letter-spacing: normal !important;
        white-space: normal;
    }

    /* Suscripción ≤991: tipografía/altura/márgenes en css/footer.css */
}

/* ≤991: una columna, igual que el celular. */

@media (prefers-reduced-motion: reduce) {
    .locals-page a.btn-step-back,
    .locals-payment-link h2 {
        transition: none;
    }
}
