/* landing.css sin comentarios · fuente md5 6402204a1f4b1f25a0179f2797211fd8 · la escribe herramientas/css-sin-comentarios.py: no se edita */
@font-face {
    font-family: 'Lora';
    src: url('fonts/lora.woff2') format('woff2');
    font-weight: 400 700;
    font-display: swap;
}
@font-face {
    font-family: 'Heebo';
    src: url('fonts/heebo.woff2') format('woff2');
    font-weight: 100 900;
    font-display: swap;
}
:root {
    --verde: #14453a;
    --verde-tinta: #0e332b;
    --verde-suave: #e9f0eb;
    --tinta: #1e2522;
    --texto-2: #5b6560;
    --fondo: #ffffff;
    --fondo-rgb: 255, 255, 255;
    --fondo-suave: #f6f5ef;
    --borde: #e7e5db;
    --estrella: #fbbc04;
    --g-tinta: #202124;
    --g-texto: #3c4043;
    --g-suave: #5f6368;
    --g-borde: #dadce0;
    --resalte-fondo: #e8f0e9;
    --resalte-tinta: #0d652d;
    --serif: 'Lora', Georgia, serif;
    --sans: 'Heebo', system-ui, -apple-system, sans-serif;
    --radio-tarjeta: 20px;
    --radio-boton: 14px;
    --sombra-tarjeta: 0 8px 28px rgba(20, 69, 58, 0.08);
    --sombra-flotante: 0 10px 30px rgba(14, 51, 43, 0.28);
}
*, *::before, *::after { box-sizing: border-box; }
html {
    scroll-behavior: smooth;
    overscroll-behavior-y: none;
}
body {
    margin: 0;
    -webkit-tap-highlight-color: transparent;
    font-family: var(--sans);
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.55;
    color: var(--tinta);
    background: var(--fondo);
    overscroll-behavior-y: none;
    -webkit-font-smoothing: antialiased;
}
img { max-width: 100%; display: block; }
a { color: var(--verde); }
.l-pagina {
    position: relative;
    max-width: 480px;
    margin: 0 auto;
    background: var(--fondo);
    min-height: 100vh;
    min-height: 100svh;
}
@media (min-width: 760px) {
    body { background: var(--fondo-suave); padding: 2rem 0 3rem; }
    .l-pagina {
        border-radius: 32px;
        box-shadow: 0 30px 80px rgba(20, 69, 58, 0.14);
        overflow: clip;
        min-height: 0;
    }
}
.salto-contenido {
    position: absolute;
    top: -100px;
    left: 1rem;
    z-index: 60;
    padding: 0.6rem 1rem;
    border-radius: 10px;
    background: var(--verde-tinta);
    color: #fff;
    font-weight: 700;
    text-decoration: none;
}
.salto-contenido:focus { top: 0.75rem; }
.l-cabecera {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.9rem 1.25rem;
    background: var(--fondo);
}
.l-cabecera__logo {
    display: inline-block;
    line-height: 0;
    text-decoration: none;
}
.l-cabecera__logo img { width: 108px; height: auto; }
.l-idiomas { position: relative; }
.l-idiomas--fila { display: flex; align-items: center; gap: 0.55rem; }
.l-idiomas--fila .l-idioma {
    padding: 0; border-radius: 0; background: none;
    font-size: 0.82rem; font-weight: 700; letter-spacing: 0.02em; gap: 0.34rem;
}
.l-idiomas--fila .l-idioma:hover { background: none; }
.l-idiomas__actual {
    display: inline-flex;
    align-items: center;
    gap: 0.22rem;
    padding: 0.3rem 0.42rem 0.3rem 0.34rem;
    border: 1px solid var(--borde);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.6);
    color: var(--texto-2);
    cursor: pointer;
    list-style: none;
}
.l-idiomas__actual::-webkit-details-marker { display: none; }
.l-idiomas__actual svg { display: block; flex: none; }
.l-idiomas__flecha { transition: transform 0.18s ease; opacity: 1; width: 16px; height: 16px; color: var(--tinta); }
.l-idiomas[open] .l-idiomas__flecha { transform: rotate(180deg); }
.l-idiomas__panel {
    position: absolute;
    top: calc(100% + 0.45rem);
    right: 0;
    z-index: 940;
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    padding: 0.35rem;
    min-width: 9.5rem;
    border: 1px solid var(--borde);
    border-radius: 0.85rem;
    background: var(--fondo);
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.16);
}
.l-idioma {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.42rem 0.55rem;
    border-radius: 0.55rem;
    font-size: 0.86rem;
    font-weight: 600;
    letter-spacing: 0.01em;
    color: var(--texto-2);
    text-decoration: none;
}
.l-idioma svg { display: block; flex: none; }
.l-idioma:hover { background: var(--fondo-suave); }
.l-idioma--activa { color: var(--verde-tinta); font-weight: 700; background: var(--fondo-suave); }
.l-idioma--proximo { opacity: 0.45; }
.hero-cine .l-idiomas__actual {
    border-color: rgba(255, 255, 255, 0.45);
    background: rgba(0, 0, 0, 0.28);
    color: #fff;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}
.hero {
    position: relative;
    isolation: isolate;
    padding: 0.75rem 1.25rem 1.9rem;
    overflow: hidden;
}
.hero__foto {
    position: absolute;
    top: 0; right: 0;
    width: 84%;
    height: min(112vw, 470px);
    z-index: -1;
}
.hero__foto img {
    width: 100%; height: 100%;
    object-fit: cover;
    border-bottom-left-radius: 120px;
}
.hero__foto picture { display: contents; }
.hero__foto::after {
    content: '';
    position: absolute;
    inset: 0;
    background:
        linear-gradient(96deg,
            rgb(var(--fondo-rgb)) 20%,
            rgba(var(--fondo-rgb), 0.92) 38%,
            rgba(var(--fondo-rgb), 0.55) 58%,
            rgba(var(--fondo-rgb), 0.05) 88%),
        linear-gradient(0deg, rgb(var(--fondo-rgb)) 2%, rgba(var(--fondo-rgb), 0) 22%);
}
.hero__cuerpo { max-width: 21rem; }
.pastilla {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.42rem 0.85rem;
    border-radius: 999px;
    background: rgba(233, 240, 235, 0.92);
    color: var(--verde-tinta);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}
.pastilla svg { flex: none; }
.hero h1 {
    margin: 0.9rem 0 0.6rem;
    font-family: var(--serif);
    font-weight: 600;
    font-size: clamp(1.85rem, 8.6vw, 2.35rem);
    line-height: 1.14;
    color: var(--tinta);
    letter-spacing: -0.01em;
}
.hero h1 em {
    font-style: normal;
    color: var(--verde);
}
.hero__texto {
    margin: 0 0 1.1rem;
    max-width: 17.5rem;
    color: var(--texto-2);
}
.hero__sellos {
    display: flex;
    align-items: stretch;
    gap: 0.6rem;
    margin: 0 0 1.2rem;
    flex-wrap: wrap;
    max-width: 32rem;
}
.sello {
    flex: 0 1 auto;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
    padding: 0.55rem 0.7rem;
    border-radius: 13px;
    background: rgba(255, 255, 255, 0.40);
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
    box-shadow: 0 2px 10px rgba(20, 69, 58, 0.12);
}
.sello__marca { display: flex; }
.sello__marca svg { display: block; }
.sello__ta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #00d652;
    overflow: hidden;
}
.sello__ta img { width: 100%; height: 100%; object-fit: cover; mix-blend-mode: multiply; }
.hero__sellos-datos { display: contents; }
a.sello { text-decoration: none; color: inherit; }
a.sello:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
.sello--dato {
    flex: 0 1 auto;
    justify-content: center;
    gap: 2px;
    padding: 0.5rem 0.7rem;
}
.sello__dato-icono {
    display: grid;
    place-items: center;
    width: 29px;
    height: 29px;
    margin-bottom: 1px;
    border-radius: 50%;
    background: rgba(20, 69, 58, 0.10);
    color: var(--verde);
}
.sello__dato-titulo {
    font-size: 0.84rem;
    font-weight: 700;
    line-height: 1.15;
    color: var(--g-tinta);
    white-space: nowrap;
}
.sello--dato .sello__pie { white-space: nowrap; }
.sello--conlogo { flex-direction: column; align-items: flex-start; gap: 3px; }
.sello--conlogo .sello__marca {
    display: flex;
    align-items: center;
    width: auto; height: auto;
    background: none;
    border-radius: 0;
    margin: 0 0 1px;
}
.sello__logo-medio {
    height: 20px;
    width: auto;
    display: block;
}
.sello--conlogo .sello__dato-titulo {
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.15;
    color: var(--tinta);
}
@media (max-width: 560px) {
    .hero__sellos {
        flex-direction: row;
        flex-wrap: wrap;
        align-items: stretch;
        gap: 0.45rem;
    }
    .hero__sellos:has(.sello--conlogo) .sello__nota { font-size: 0.95rem; }
    .hero__sellos:has(.sello--conlogo) .sello__pie,
    .hero__sellos:has(.sello--conlogo) .sello--conlogo .sello__dato-titulo { font-size: 0.78rem; }
    .hero__sellos:has(.sello--conlogo) .sello--conlogo .sello__pie { font-size: 0.68rem; }
    .hero__sellos-datos {
        display: flex;
        flex-wrap: wrap;
        gap: 0.45rem;
    }
    .sello--dato {
        flex-direction: row;
        align-items: center;
        gap: 0.4rem;
        padding: 0.5rem 0.65rem;
    }
    .sello--dato .sello__pie { display: none; }
    .sello--fuente,
    .sello--conlogo { flex-direction: column; align-items: flex-start; gap: 0.15rem; }
    .sello--conlogo .sello__logo-medio { height: 17px; }
    .sello--fuente .sello__pie { display: block; white-space: normal; }
    .sello--fuente .sello__dato-icono { margin-bottom: 0.15rem; }
    .sello__dato-icono {
        width: 25px;
        height: 25px;
        margin-bottom: 0;
    }
    .sello__dato-titulo { font-size: 0.79rem; }
}
.sello--premio { flex-direction: row; align-items: center; gap: 0.55rem; }
.sello__premio-img { display: block; width: auto; height: 46px; flex: none; }
.sello__premio-texto { display: flex; flex-direction: column; gap: 3px; }
.sello__premio-titulo { font-size: 0.95rem; font-weight: 700; line-height: 1.1; color: var(--g-tinta); white-space: nowrap; }
body.marca-boom-boom-ciao .sello__premio-titulo { color: var(--tinta); }
@media (max-width: 480px) {
    .sello__premio-img { height: 40px; }
    .sello__premio-titulo { font-size: 0.85rem; }
}
.sello__nota {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    margin-top: 1px;
    color: var(--g-tinta);
}
.sello__nota strong { font-size: 1.15rem; font-weight: 700; line-height: 1; }
.sello__pie { font-size: 0.72rem; color: var(--g-suave); line-height: 1.2; }
.burbujas { display: inline-flex; gap: 1px; }
.boton {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.6rem;
    width: 100%;
    min-height: 54px;
    padding: 0.8rem 1.4rem;
    border-radius: var(--radio-boton);
    border: 1.5px solid transparent;
    font-family: var(--sans);
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    cursor: pointer;
}
.boton--principal {
    background: var(--verde);
    color: #fff;
    box-shadow: 0 8px 22px rgba(20, 69, 58, 0.28);
}
.boton--principal:hover { background: var(--verde-tinta); }
.boton--secundario {
    background: rgba(255, 255, 255, 0.9);
    border-color: var(--verde);
    color: var(--verde-tinta);
}
.boton--secundario:hover { background: var(--verde-suave); }
.hero__botones {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.6rem;
    max-width: 20rem;
}
.hero__botones .boton { padding-inline: 0.5rem; }
@media (max-width: 899px) {
    .hero__botones { max-width: none; width: 100%; }
    .hero__botones .boton { white-space: nowrap; min-width: 0; gap: 0.4rem; font-size: clamp(0.78rem, 3.7vw, 1rem); }
    .hero__botones .boton svg { flex-shrink: 0; }
}
@media (max-width: 340px) {
    .hero__botones .boton svg { display: none; }
}
.hero__botones .boton:only-child { grid-column: 1 / -1; white-space: nowrap; }
.boton__cola { display: none; }
.hero__micro {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    margin: 0.95rem 0 0;
    font-size: 0.8rem;
    color: var(--texto-2);
}
.hero__micro svg { color: var(--verde); flex: none; }
.mosaico { margin-top: 0.4rem; }
.mosaico__titulo {
    margin: 0.6rem 1.25rem 0.9rem;
    font-family: var(--serif);
    font-weight: 600;
    font-size: 1.5rem;
    line-height: 1.2;
    color: var(--tinta);
}
.mosaico__titulo em { font-style: normal; color: var(--verde); }
.mosaico__pista {
    display: flex;
    gap: 0.55rem;
    padding: 0.25rem 1.25rem;
    overflow-x: auto;
    scroll-snap-type: x proximity;
    scroll-padding-inline: 1.25rem;
    scrollbar-width: none;
}
.mosaico__pista::-webkit-scrollbar { display: none; }
.mosaico__col {
    flex: 0 0 auto;
    height: 300px;
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
    scroll-snap-align: start;
}
.mosaico__grande { width: 188px; }
.mosaico__par { width: 132px; }
.mosaico__fig {
    margin: 0;
    flex: 1;
    min-height: 0;
    overflow: hidden;
    border-radius: 14px;
    background-size: cover;
    background-position: center;
}
.mosaico__col img,
.mosaico__col video { width: 100%; height: 100%; object-fit: cover; display: block; }
.mosaico__video { opacity: 0; transition: opacity 0.45s ease; }
.mosaico__video.reproduciendo { opacity: 1; }
.mosaico__cita {
    width: 232px;
    justify-content: center;
    gap: 0.55rem;
    padding: 1.1rem 1.15rem;
    background: #fff;
    border: 1px solid var(--g-borde);
    border-radius: 16px;
}
.mosaico__cita-top {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    flex-wrap: wrap;
}
.mosaico__cita-tema { font-size: 0.84rem; font-weight: 600; color: var(--g-texto); }
.mosaico__cita-caras { display: inline-flex; align-items: center; }
.mosaico__cita-caras img {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    object-fit: cover;
    border: 1.5px solid #fff;
    margin-left: -6px;
}
.mosaico__cita-caras img:first-child { margin-left: 0; }
.mosaico__cita-mas { font-size: 0.8rem; font-weight: 500; color: var(--g-suave); }
.mosaico__cita-texto {
    margin: 0;
    font-family: var(--serif);
    font-size: 1.08rem;
    line-height: 1.4;
    color: var(--g-tinta);
}
.mosaico__comilla {
    font-family: Georgia, 'Times New Roman', serif;
    font-weight: 700;
    font-size: 1.5rem;
    line-height: 0;
    color: #12a594;
    vertical-align: -0.35em;
}
.mosaico__comilla--fin { vertical-align: -0.55em; margin-left: 0.05rem; }
.mosaico__cita-texto mark {
    background: var(--resalte-fondo);
    color: var(--resalte-tinta);
    padding: 0 2px;
    border-radius: 3px;
}
.mosaico__cita-autor { font-size: 0.82rem; color: var(--g-suave); }
.mosaico__cita-nota {
    display: block;
    margin-top: 0.15rem;
    font-size: 0.72rem;
    color: #80868b;
    font-style: italic;
}
@media (min-width: 1024px) {
    .mosaico__pista.mosaico__pista--justa > .mosaico__col { flex: 0 0 auto; width: var(--mosaico-ancho, auto); min-width: 0; }
    .mosaico__pista.mosaico__pista--justa > .mosaico__col--sobra { display: none; }
}
.seccion { padding: 3.75rem 1.25rem 0; }
.seccion:last-of-type { padding-bottom: 2.2rem; }
.seccion__titulo {
    margin: 0 0 1rem;
    font-family: var(--serif);
    font-weight: 600;
    font-size: 1.42rem;
    line-height: 1.2;
    color: var(--tinta);
}
.seccion__titulo--centrado { text-align: center; }
.tarjeta {
    background: #fff;
    border: 1px solid var(--borde);
    border-radius: var(--radio-tarjeta);
    box-shadow: var(--sombra-tarjeta);
    padding: 1.3rem 1.2rem;
}
.tarjeta--suave {
    background: var(--fondo-suave);
    border-color: transparent;
    box-shadow: none;
}
.fila-icono {
    display: flex;
    gap: 0.8rem;
    align-items: flex-start;
    padding: 0.55rem 0;
}
.fila-icono svg { color: var(--verde); flex: none; margin-top: 0.1rem; }
.fila-icono strong { display: block; line-height: 1.35; }
.fila-icono span { display: block; font-size: 0.86rem; color: var(--texto-2); line-height: 1.4; }
.ruta {
    margin: 0.9rem 0;
    padding: 0.95rem 1rem;
    background: var(--verde-suave);
    border-radius: 14px;
}
.ruta ol { list-style: none; margin: 0; padding: 0; }
.ruta li {
    position: relative;
    padding: 0 0 0 1.6rem;
}
.ruta li::before {
    content: '';
    position: absolute;
    left: 0.32rem;
    top: 0.42rem;
    width: 9px; height: 9px;
    border-radius: 50%;
    background: var(--verde);
    outline: 3px solid rgba(20, 69, 58, 0.15);
}
.ruta li + li { margin-top: 1.45rem; }
.ruta li + li::after {
    content: '';
    position: absolute;
    left: 0.55rem;
    top: -1.25rem;
    height: 1.2rem;
    border-left: 2px dashed rgba(20, 69, 58, 0.45);
}
.ruta strong { display: block; font-size: 0.95rem; }
.ruta span { display: block; font-size: 0.8rem; color: var(--texto-2); }
.mapa {
    position: relative;
    margin-top: 1rem;
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid var(--borde);
    background: var(--verde-suave);
}
.mapa img {
    display: block;
    width: 100%;
    height: 210px;
    object-fit: cover;
    object-position: center center;
}
.mapa__pin {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 25px;
    height: 40px;
    transform: translate(-50%, -100%);
    z-index: 2;
    filter: drop-shadow(0 2px 3px rgba(0, 0, 0, 0.35));
    pointer-events: none;
    display: block;
}
.mapa__pulso {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 22px;
    height: 22px;
    margin: -11px 0 0 -11px;
    border-radius: 50%;
    background: rgba(201, 42, 42, 0.42);
    z-index: 1;
    pointer-events: none;
    animation: mapaPulso 2.6s ease-out infinite;
}
@keyframes mapaPulso {
    0%   { transform: scale(0.5); opacity: 0.65; }
    70%  { opacity: 0; }
    100% { transform: scale(2.8); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
    .mapa__pulso { animation: none; opacity: 0.4; transform: scale(1.1); }
}
.mapa--fachada {
    display: block;
    width: 100%;
    padding: 0;
    border: 1px solid var(--borde);
    font: inherit;
    cursor: pointer;
    text-align: inherit;
}
.mapa__toca {
    position: absolute;
    right: 10px;
    bottom: 10px;
    z-index: 2;
    padding: 0.32rem 0.7rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.92);
    color: var(--g-texto);
    font-size: 0.76rem;
    font-weight: 600;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.18);
    pointer-events: none;
}
.mapa-zona { position: relative; }
.mapa__distancia {
    position: absolute;
    left: 10px;
    bottom: 10px;
    z-index: 2;
    padding: 0.42rem 0.8rem;
    border: 0;
    border-radius: 999px;
    background: #fff;
    color: #1a73e8;
    font-family: inherit;
    font-size: 0.76rem;
    font-weight: 600;
    line-height: 1.2;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.18);
    cursor: pointer;
}
.mapa__distancia:hover { background: #f4f8ff; }
.mapa__distancia:focus-visible { outline: 2px solid #1a73e8; outline-offset: 2px; }
.mapa__distancia--hecho,
.mapa__distancia[disabled] { cursor: default; }
.mapa__distancia--hecho:hover { background: #fff; }
.mapa--activo { cursor: default; }
.mapa--activo img,
.mapa--activo .mapa__pin,
.mapa--activo .mapa__pulso,
.mapa--activo .mapa__toca { display: none; }
.mapa--activo iframe {
    display: block;
    width: 100%;
    height: 210px;
    border: 0;
}
.boton--mapa {
    margin-top: 1rem;
    min-height: 48px;
    background: #fff;
    border-color: var(--borde);
    color: var(--tinta);
    text-transform: none;
    letter-spacing: 0;
    font-weight: 600;
    box-shadow: 0 3px 12px rgba(14, 51, 43, 0.08);
}
.boton--mapa:hover { background: var(--fondo-suave); }
.puntos { list-style: none; margin: 0.4rem 0 0; padding: 0; }
.puntos li {
    display: flex;
    gap: 0.7rem;
    align-items: flex-start;
    padding: 0.45rem 0;
}
.puntos svg { color: var(--verde); flex: none; margin-top: 0.15rem; }
.tarjeta__nota {
    margin: 1rem 0 0;
    padding: 0.85rem 1rem;
    border-radius: 12px;
    background: var(--verde-suave);
    font-size: 0.85rem;
    color: var(--verde-tinta);
    line-height: 1.5;
}
.tarjeta__nota a { font-weight: 700; color: var(--verde-tinta); }
.tarjeta__cta { margin-top: 1.2rem; }
.beneficios {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.8rem;
}
.beneficio {
    flex: 1 1 calc(50% - 0.4rem);
    max-width: calc(50% - 0.4rem);
}
@media (max-width: 699px) {
    .hero__texto { max-width: 15rem; }
    .hero__foto::after {
        background:
            linear-gradient(96deg,
                rgb(var(--fondo-rgb)) 44%,
                rgba(var(--fondo-rgb), 0.90) 56%,
                rgba(var(--fondo-rgb), 0.30) 70%,
                rgba(var(--fondo-rgb), 0.03) 84%,
                rgba(var(--fondo-rgb), 0) 92%),
            linear-gradient(0deg, rgb(var(--fondo-rgb)) 2%, rgba(var(--fondo-rgb), 0) 22%);
    }
    .beneficios .beneficio:last-child:nth-child(odd) {
        flex-basis: 100%;
        max-width: 100%;
        grid-template-columns: auto 1fr;
        justify-items: start;
        align-items: center;
        text-align: left;
        gap: 0.9rem;
        padding-top: 1.05rem;
        padding-bottom: 1.05rem;
    }
}
.beneficio {
    display: grid;
    justify-items: center;
    gap: 0.55rem;
    padding: 1.05rem 0.7rem;
    background: var(--fondo-suave);
    border-radius: 16px;
    text-align: center;
    font-size: 0.86rem;
    font-weight: 600;
    line-height: 1.3;
    color: var(--tinta);
}
.beneficio span { max-width: 9.5rem; }
.beneficio__icono {
    display: grid;
    place-items: center;
    width: 52px; height: 52px;
    border-radius: 50%;
    background: #fff;
    color: var(--verde);
    box-shadow: 0 3px 10px rgba(20, 69, 58, 0.1);
}
.visita {
    background: linear-gradient(150deg, #edf1fc, #f6f3fd);
    border-radius: var(--radio-tarjeta);
    padding: 1.35rem 1.25rem 1.2rem;
}
.visita__top {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.55rem;
    margin-bottom: 0.85rem;
}
.visita__titulo {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    margin: 0;
    font-family: var(--sans);
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--tinta);
}
.visita__sello {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex: none;
}
.visita__badge {
    padding: 0.26rem 0.58rem;
    border-radius: 8px;
    background: #d7f0dd;
    color: #0d652d;
    font-size: 0.76rem;
    font-weight: 700;
    white-space: nowrap;
}
.visita__caras { display: inline-flex; align-items: center; }
.visita__caras img {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid #fff;
    margin-left: -8px;
}
.visita__caras img:first-child { margin-left: 0; }
.visita__caras-mas {
    display: grid;
    place-items: center;
    min-width: 30px;
    height: 30px;
    padding: 0 6px;
    margin-left: -8px;
    border-radius: 999px;
    border: 2px solid #fff;
    background: #fff;
    color: var(--g-texto);
    font-size: 0.72rem;
    font-weight: 600;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.14);
}
.visita__chispa {
    flex: none;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #4285f4;
    box-shadow: 0 0 0 4px rgba(66, 133, 244, 0.16);
    animation: chispa-latido 1.8s ease-in-out infinite;
}
@keyframes chispa-latido {
    0%, 100% { box-shadow: 0 0 0 3px rgba(66, 133, 244, 0.22); opacity: 1; }
    50%      { box-shadow: 0 0 0 8px rgba(66, 133, 244, 0);    opacity: 0.6; }
}
.visita ul { list-style: none; margin: 0 0 1.1rem; padding: 0; }
.visita li {
    position: relative;
    padding: 0.34rem 0 0.34rem 1.15rem;
    font-size: 0.92rem;
    line-height: 1.45;
}
.visita li::before {
    content: '';
    position: absolute;
    left: 0.15rem;
    top: 0.95em;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--tinta);
}
.visita__autor {
    display: block;
    margin-top: 0.18rem;
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--g-suave);
}
.visita__nota {
    margin: 0.75rem 0 0;
    font-size: 0.74rem;
    color: var(--texto-2);
    text-align: center;
}
.reels__pista {
    display: flex;
    gap: 0.6rem;
    margin: 0 -1.25rem;
    padding: 0.25rem 1.25rem;
    overflow-x: auto;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
}
.reels__pista::-webkit-scrollbar { display: none; }
.reel-ficha {
    margin: 0;
    flex: 0 0 46%;
    max-width: 210px;
    scroll-snap-align: start;
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}
.reel__autor {
    display: flex;
    flex-direction: column;
    gap: 0.05rem;
    padding: 0 0.15rem;
}
.reel__nombre {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.82rem;
    font-weight: 600;
    line-height: 1.2;
    color: var(--tinta);
}
.reel__tick { flex: none; display: block; }
.reel__seguidores {
    font-size: 0.76rem;
    line-height: 1.25;
    color: var(--texto-2);
}
.reel {
    position: relative;
    margin: 0;
    width: 100%;
    aspect-ratio: 9 / 16;
    border-radius: 14px;
    overflow: hidden;
    background: #101512;
}
.reel__video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.reel__sonido {
    position: absolute;
    top: 8px;
    right: 8px;
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.55);
    color: #fff;
    cursor: pointer;
}
.reel__sonido:hover { background: rgba(0, 0, 0, 0.75); }
.reel__sonido .reel__alto { display: none; }
.reel__sonido[aria-pressed="true"] .reel__alto { display: block; }
.reel__sonido[aria-pressed="true"] .reel__mudo { display: none; }
.carta__cabecera {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}
.carta__cabecera .seccion__titulo { margin: 0; font-size: 1.62rem; }
.carta__enlace {
    flex: none;
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--verde);
    text-decoration: none;
    white-space: nowrap;
}
.carta__enlace:hover { text-decoration: underline; }
.carta__pista {
    display: flex;
    gap: 0.7rem;
    margin: 0 -1.25rem;
    padding: 0.25rem 1.25rem;
    overflow-x: auto;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
}
.carta__pista::-webkit-scrollbar { display: none; }
.categoria {
    flex: 0 0 38%;
    scroll-snap-align: start;
    background: #fff;
    border: 1px solid var(--borde);
    border-radius: 16px;
    overflow: hidden;
    text-decoration: none;
    color: var(--tinta);
    box-shadow: 0 3px 14px rgba(20, 69, 58, 0.06);
}
.categoria img {
    width: 100%;
    aspect-ratio: 1;
    object-fit: cover;
}
.categoria figcaption {
    padding: 0.6rem 0.55rem 0.75rem;
    text-align: center;
}
.categoria strong {
    display: block;
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}
.categoria span {
    display: block;
    margin-top: 0.15rem;
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--verde);
}
.opiniones { background: var(--fondo-suave); padding-top: 1.9rem; padding-bottom: 1.9rem; margin-top: 1.9rem; }
.estrellas { display: inline-flex; gap: 2px; color: var(--estrella); }
.gpanel {
    background: #fff;
    border: 1px solid var(--g-borde);
    border-radius: 16px;
    padding: 1.25rem;
    color: var(--g-tinta);
}
.gpanel__titulo {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    margin: 0 0 0.9rem;
    font-family: var(--sans);
    font-size: 1.25rem;
    font-weight: 500;
    color: var(--g-tinta);
}
.gpanel__masmencionado {
    margin: 0 0 0.55rem;
    font-size: 0.82rem;
    font-weight: 500;
    color: var(--g-suave);
}
.gpanel__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1.2rem;
}
.chip {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.34rem 0.85rem;
    border-radius: 999px;
    background: #f1f3f4;
    font-size: 0.84rem;
    font-weight: 500;
    color: var(--g-texto);
    white-space: nowrap;
}
.chip b { font-weight: 400; color: var(--g-suave); }
.chip--boton {
    border: 1px solid var(--g-borde);
    background: #fff;
    font-family: inherit;
    cursor: pointer;
}
.chip--boton:hover { background: #f8f9fa; }
.chip--boton.chip--activo {
    background: #e8f0fe;
    border-color: #d2e3fc;
    color: #1967d2;
}
.chip--boton.chip--activo b { color: #1967d2; }
.gpanel__tema {
    margin: -0.4rem 0 1.2rem;
    padding: 0.9rem 1rem 0.3rem;
    border: 1px solid #d2e3fc;
    border-radius: 12px;
    background: #f8fafd;
}
.tema-cita {
    margin: 0 0 0.9rem;
}
.tema-cita__texto {
    margin: 0 0 0.3rem;
    font-size: 0.9rem;
    line-height: 1.5;
    color: var(--g-texto);
}
.tema-cita__pie {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.45rem;
    font-size: 0.78rem;
    color: var(--g-suave);
}
.tema-cita__pie strong { color: var(--g-tinta); font-weight: 500; }
.gpanel__subtitulo {
    margin: 0 0 0.7rem;
    font-size: 1rem;
    font-weight: 500;
    color: var(--g-tinta);
}
.gpanel__resumen {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    column-gap: 1.6rem;
    margin-bottom: 1.4rem;
}
.gbarra {
    display: grid;
    grid-template-columns: 0.8rem 1fr;
    align-items: center;
    column-gap: 0.65rem;
}
.gbarra + .gbarra { margin-top: 0.45rem; }
.gbarra > span { font-size: 0.82rem; color: var(--g-suave); text-align: right; }
.gbarra__pista {
    height: 8px;
    border-radius: 999px;
    background: #f1f3f4;
    overflow: hidden;
}
.gbarra__relleno {
    height: 100%;
    border-radius: 999px;
    background: var(--estrella);
}
.gpanel__nota {
    display: grid;
    justify-items: center;
    gap: 3px;
}
.gpanel__cifra {
    font-size: 2.6rem;
    line-height: 1.05;
    color: var(--g-tinta);
}
.gpanel__total { font-size: 0.8rem; color: var(--g-suave); }
.opiniones__pista {
    display: flex;
    gap: 0.8rem;
    margin: 0 -1.25rem;
    padding: 0.25rem 1.25rem;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}
.opiniones__pista::-webkit-scrollbar { display: none; }
.opinion {
    flex: 0 0 84%;
    scroll-snap-align: center;
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
    background: #fff;
    border: 1px solid var(--g-borde);
    border-radius: 12px;
    padding: 1.05rem 1.1rem;
}
.opinion blockquote {
    margin: 0;
    font-size: 0.92rem;
    line-height: 1.5;
    color: var(--g-texto);
}
.opinion__texto.es-largo {
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.opinion__texto.expandido {
    -webkit-line-clamp: unset;
    overflow: visible;
}
.opinion__mas {
    align-self: flex-start;
    margin: -0.15rem 0 0;
    padding: 0;
    border: 0;
    background: none;
    color: #1a73e8;
    font-family: inherit;
    font-size: 0.86rem;
    font-weight: 500;
    cursor: pointer;
}
.opinion__mas:hover { text-decoration: underline; }
.opinion__val {
    display: flex;
    align-items: center;
    gap: 0.55rem;
}
.opinion__fecha { font-size: 0.78rem; color: var(--g-suave); }
.opinion__visita { margin: 0; font-size: 0.8rem; color: var(--g-suave); }
.opinion__fotos {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4px;
    margin-top: 0.15rem;
    border-radius: 10px;
    overflow: hidden;
}
.opinion__fotos[data-n="1"] { grid-template-columns: 1fr; }
.opinion__fotos[data-n="1"] img { aspect-ratio: 16 / 9; }
.opinion__foto {
    position: relative;
    display: block;
    margin: 0;
}
.opinion__foto img {
    width: 100%;
    aspect-ratio: 1;
    object-fit: cover;
}
.opinion__quien {
    display: flex;
    align-items: center;
    gap: 0.6rem;
}
.opinion__avatar {
    display: grid;
    place-items: center;
    width: 36px; height: 36px;
    border-radius: 50%;
    background: var(--verde-suave);
    color: var(--verde-tinta);
    font-weight: 700;
    font-size: 0.95rem;
    flex: none;
}
.opinion__quien div strong { display: block; font-size: 0.9rem; font-weight: 500; color: var(--g-tinta); line-height: 1.25; }
.opinion__quien div span { display: block; font-size: 0.76rem; color: var(--g-suave); }
.faq { display: flex; flex-direction: column; gap: 0.6rem; }
.faq__item {
    background: #fff;
    border: 1px solid var(--borde);
    border-radius: 14px;
    padding: 0 1.1rem;
    box-shadow: var(--sombra-tarjeta);
}
.faq__pregunta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 0;
    font-weight: 600;
    font-size: 0.98rem;
    color: var(--tinta);
    cursor: pointer;
    list-style: none;
}
.faq__pregunta::-webkit-details-marker { display: none; }
.faq__mas {
    flex: none;
    position: relative;
    width: 16px;
    height: 16px;
}
.faq__mas::before, .faq__mas::after {
    content: '';
    position: absolute;
    background: var(--verde);
    border-radius: 2px;
    transition: transform 0.2s ease;
}
.faq__mas::before { top: 7px; left: 0; width: 16px; height: 2px; }
.faq__mas::after { left: 7px; top: 0; width: 2px; height: 16px; }
.faq__item[open] .faq__mas::after { transform: scaleY(0); }
.faq__respuesta {
    padding: 0 0 1.05rem;
    font-size: 0.92rem;
    line-height: 1.55;
    color: var(--texto-2);
}
.faq__respuesta a { font-weight: 600; }
.historia {
    background: var(--fondo-suave);
    border-radius: var(--radio-tarjeta);
    padding: 1.5rem 1.35rem;
}
.historia__resumen {
    cursor: pointer;
    list-style: none;
}
.historia__resumen::-webkit-details-marker { display: none; }
.historia__titulo { margin-bottom: 0.55rem; }
.historia__entrada {
    margin: 0;
    color: var(--texto-2);
    line-height: 1.6;
}
.historia__mas {
    display: inline-block;
    margin-top: 0.7rem;
    font-size: 0.9rem;
    font-weight: 700;
    color: var(--verde);
}
.historia__mas::after { content: ' ↓'; }
.historia[open] .historia__mas { display: none; }
.historia__texto p {
    margin: 0.9rem 0 0;
    color: var(--tinta);
    line-height: 1.65;
}
.historia--abierta .historia__titulo { margin-bottom: 0.55rem; }
.historia--abierta .historia__cuerpo { margin-top: 1.4rem; }
.historia__linea {
    position: relative;
    display: grid;
    gap: 1.15rem;
    list-style: none;
    margin: 1.8rem 0 0;
    padding: 0;
}
.historia__linea::before {
    content: '';
    position: absolute;
    left: 6px;
    top: 0.6rem;
    bottom: 0.6rem;
    width: 2px;
    background: var(--borde);
}
.hito {
    position: relative;
    padding-left: 1.7rem;
}
.hito::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.32rem;
    width: 14px;
    height: 14px;
    box-sizing: border-box;
    border: 2px solid var(--verde);
    border-radius: 50%;
    background: var(--fondo-suave);
}
.hito__ano {
    display: block;
    font-family: var(--serif);
    font-size: 1.06rem;
    line-height: 1.25;
    color: var(--verde);
}
.historia__video {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.55rem;
    margin: 1.6rem 0 0;
}
.historia__video .reel {
    width: 100%;
    max-width: 208px;
    aspect-ratio: 9 / 16;
}
.historia__video-pie {
    max-width: 22rem;
    text-align: center;
    font-size: 0.82rem;
    line-height: 1.45;
    color: var(--texto-2);
}
@media (min-width: 900px) {
    .historia__video { margin-top: 2rem; }
    .historia__video .reel { max-width: 236px; }
}
.hito__que {
    display: block;
    margin-top: 0.2rem;
    font-size: 0.92rem;
    line-height: 1.5;
    color: var(--texto-2);
}
.info-util .fila-icono { border-bottom: 1px solid var(--borde); }
.info-util .fila-icono:last-child { border-bottom: 0; padding-bottom: 0; }
.info-util a { color: inherit; text-decoration: none; }
.info-util a:hover { color: var(--verde); }
.l-pie {
    margin-top: 2rem;
    padding: 1.15rem 1.25rem calc(0.6rem + var(--gmlr-alto-flotante, 0px) + env(safe-area-inset-bottom, 0px));
    background: var(--verde-tinta);
    color: rgba(255, 255, 255, 0.82);
    text-align: center;
    font-size: 0.82rem;
}
.l-pie img { width: 96px; height: auto; margin: 0 auto 0.7rem; }
.l-pie a { color: #fff; text-decoration: none; font-weight: 600; }
.l-pie p { margin: 0; }
.l-pie__firma {
    margin-top: 0.75rem !important;
    font-size: 0.72rem;
    letter-spacing: 0.06em;
    opacity: 0.85;
}
.l-pie__firma a,
.pie-interior__firma a {
    color: inherit;
    font-weight: 600;
    text-decoration: none;
}
.l-pie__datos {
    margin: 0 0 0.55rem !important;
    line-height: 1.6;
}
.l-pie__datos span { opacity: 0.55; padding: 0 0.25rem; }
.cta-flotante {
    position: sticky;
    bottom: 0;
    z-index: 45;
    height: 0;
    padding: 0;
    background: none;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
}
.cta-flotante.visible {
    opacity: 1;
    pointer-events: auto;
}
.cta-flotante.visible .cta-flotante__bloque { transform: none; }
.cta-flotante::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 11rem;
    background: linear-gradient(0deg, rgba(var(--fondo-rgb), 0.96) 55%, rgba(var(--fondo-rgb), 0));
    pointer-events: none;
}
.cta-flotante__bloque {
    transform: translateY(12px);
    transition: transform 0.3s ease;
    position: absolute;
    left: 1.25rem;
    right: 1.25rem;
    bottom: calc(0.85rem + env(safe-area-inset-bottom, 0px));
    border-radius: 16px;
    overflow: hidden;
    background: var(--fondo);
    box-shadow: var(--sombra-flotante);
}
.cta-flotante__bloque .boton { border-radius: 0; box-shadow: none; }
.cta-flotante.visible .cta-flotante__bloque {
    animation: flotante-zumbido 5s ease-in-out 1.4s infinite;
}
@keyframes flotante-zumbido {
    0%, 84%, 100% { transform: scale(1); }
    88% { transform: scale(1.045); }
    92% { transform: scale(0.992); }
    96% { transform: scale(1.028); }
}
.cta-aviso {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    max-height: 0;
    opacity: 0;
    padding: 0 0.9rem;
    overflow: hidden;
    color: var(--tinta);
    transition: max-height 0.4s ease, opacity 0.3s ease, padding 0.4s ease;
}
.cta-aviso.mostrar {
    max-height: 72px;
    opacity: 1;
    padding: 0.6rem 0.9rem;
    border-bottom: 1px solid var(--borde);
}
.cta-aviso__icono {
    display: grid;
    place-items: center;
    width: 30px; height: 30px;
    border-radius: 50%;
    background: var(--verde-suave);
    color: var(--verde);
    flex: none;
}
.cta-aviso__txt strong { display: block; font-size: 0.84rem; font-weight: 700; line-height: 1.2; }
.cta-aviso__detalle { font-size: 0.77rem; color: var(--texto-2); }
.no-js .cta-flotante { opacity: 1; transform: none; pointer-events: auto; }
.es-ampliable { cursor: zoom-in; }
body.con-visor { overflow: hidden; }
.visor {
    position: fixed;
    inset: 0;
    z-index: 90;
    display: none;
    align-items: center;
    justify-content: center;
    background: rgba(12, 16, 14, 0.94);
}
.visor.abierto { display: flex; }
.visor__marco {
    margin: 0;
    max-width: min(92vw, 1100px);
    max-height: 86vh;
    position: relative;
}
.visor__foto {
    max-width: 100%;
    max-height: 86vh;
    border-radius: 10px;
    display: block;
    -webkit-user-drag: none;
    user-select: none;
}
.visor__marco.cargando .visor__foto { opacity: 0.55; }
.visor__marco.cargando::after {
    content: '';
    position: absolute;
    top: 50%; left: 50%;
    width: 34px; height: 34px;
    margin: -17px 0 0 -17px;
    border-radius: 50%;
    border: 3px solid rgba(255, 255, 255, 0.25);
    border-top-color: #fff;
    animation: visor-giro 0.8s linear infinite;
}
@keyframes visor-giro { to { transform: rotate(360deg); } }
.visor__cerrar,
.visor__flecha {
    position: fixed;
    z-index: 92;
    display: grid;
    place-items: center;
    width: 46px; height: 46px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    font-size: 1.5rem;
    line-height: 1;
    cursor: pointer;
}
.visor__cerrar:hover, .visor__flecha:hover { background: rgba(255, 255, 255, 0.24); }
.visor__cerrar { top: max(0.9rem, env(safe-area-inset-top, 0px)); right: 0.9rem; font-size: 1.1rem; }
.visor__flecha { top: 50%; margin-top: -23px; font-size: 1.9rem; }
.visor__flecha--izq { left: 0.6rem; }
.visor__flecha--der { right: 0.6rem; }
.visor__contador {
    position: fixed;
    bottom: max(1rem, env(safe-area-inset-bottom, 0px));
    left: 50%;
    transform: translateX(-50%);
    color: rgba(255, 255, 255, 0.85);
    font-size: 0.85rem;
    letter-spacing: 0.04em;
}
.tarjeta__cols, .tarjeta__col { display: contents; }
@media (min-width: 1024px) {
    body { padding: 0; background: var(--fondo); }
    .l-pagina {
        max-width: none;
        border-radius: 0;
        box-shadow: none;
    }
    .l-cabecera { padding: 0.9rem clamp(2rem, 6vw, 5rem); }
    .l-cabecera__logo img { width: 118px; }
    .hero {
        display: flex;
        align-items: center;
        min-height: min(74vh, 620px);
        padding: 2.5rem clamp(2rem, 6vw, 5rem) 3.2rem;
    }
    .hero__foto { width: 70%; height: 100%; }
    .hero__foto img { border-bottom-left-radius: 180px; }
    .hero__foto::after {
        background:
            linear-gradient(90deg,
                rgb(var(--fondo-rgb)) 0%,
                rgba(var(--fondo-rgb), 0.85) 10%,
                rgba(var(--fondo-rgb), 0.30) 30%,
                rgba(var(--fondo-rgb), 0) 52%),
            linear-gradient(0deg, rgb(var(--fondo-rgb)) 2%, rgba(var(--fondo-rgb), 0) 14%);
    }
    .hero__cuerpo { max-width: 34rem; }
    .hero h1 { font-size: clamp(2.7rem, 3.4vw, 3.4rem); }
    .hero__texto { max-width: 28rem; font-size: 1.06rem; }
    .hero__sellos { gap: 0.8rem; max-width: 27rem; }
    .sello { padding: 0.65rem 0.85rem; }
    .sello__nota strong { font-size: 1.3rem; }
    .hero__botones { grid-template-columns: 1fr 1fr; gap: 0.8rem; max-width: 27rem; }
    .hero__botones .boton {
        width: 100%;
        padding-inline: 0.5rem;
        gap: 0.45rem;
        font-size: 0.95rem;
        white-space: nowrap;
    }
    .hero__botones .boton--principal { order: 2; }
    .boton__cola { display: inline; }
    .mosaico__titulo {
        margin: 1rem clamp(2rem, 6vw, 5rem) 1.1rem;
        font-size: 1.9rem;
    }
    .mosaico__pista {
        padding-inline: clamp(2rem, 6vw, 5rem);
        scroll-padding-inline: clamp(2rem, 6vw, 5rem);
        gap: 0.8rem;
    }
    .mosaico__col { height: 340px; }
    .mosaico__grande { width: 240px; }
    .mosaico__par { width: 168px; }
    .mosaico__cita { width: 280px; }
    .seccion {
        max-width: 1240px;
        margin-inline: auto;
        padding: 3.2rem clamp(2rem, 6vw, 5rem) 0;
    }
    .seccion:last-of-type { padding-bottom: 3.4rem; }
    .seccion__titulo { font-size: 1.9rem; margin-bottom: 1.3rem; }
    .tarjeta { padding: 2.2rem 2.4rem; }
    .tarjeta__cols {
        display: grid;
        grid-template-columns: 1.05fr 0.95fr;
        column-gap: 2.8rem;
        align-items: stretch;
    }
    .tarjeta__col { display: block; }
    .tarjeta__col--mapa {
        display: flex;
        flex-direction: column;
    }
    .tarjeta__cta { width: auto; padding-inline: 2.2rem; }
    .mapa-zona {
        display: flex;
        flex: 1;
        min-height: 16rem;
    }
    .mapa {
        margin-top: 0;
        flex: 1;
        min-height: 16rem;
    }
    .mapa img { height: 100%; }
    .visita { padding: 2rem 2.4rem 1.6rem; }
    .visita__top {
        flex-direction: row;
        align-items: flex-start;
        justify-content: space-between;
        gap: 0.8rem;
    }
    .visita ul {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 0.4rem 2.2rem;
        margin-bottom: 1.4rem;
    }
    .visita__boton {
        width: auto;
        margin-inline: auto;
        padding-inline: 2.4rem;
    }
    .reels__pista { margin: 0; padding: 0.25rem 0; justify-content: safe center; }
    .reel-ficha { flex: 1 1 0; max-width: 230px; }
    .reels__pista:not(:has(.reel-ficha:nth-child(4))) .reel-ficha { max-width: 282px; }
    .reel__nombre { font-size: 0.88rem; }
    .reel__seguidores { font-size: 0.8rem; }
    .beneficios { gap: 1rem; }
    .beneficios .beneficio {
        flex: 1 1 calc(25% - 0.75rem);
        max-width: calc(25% - 0.75rem);
    }
    .beneficios:has(.beneficio:nth-child(5)):not(:has(.beneficio:nth-child(6))) .beneficio {
        flex-basis: calc(20% - 0.8rem);
        max-width: calc(20% - 0.8rem);
    }
    .beneficios:has(.beneficio:nth-child(6)):not(:has(.beneficio:nth-child(7))) .beneficio {
        flex-basis: calc(33.333% - 0.667rem);
        max-width: calc(33.333% - 0.667rem);
    }
    .beneficio { padding: 1.5rem 1rem; font-size: 0.95rem; }
    .carta__pista {
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        gap: 1rem;
        margin: 0;
        padding: 0.25rem 0;
        overflow: visible;
    }
    .opiniones { max-width: none; padding: 3rem clamp(2rem, 6vw, 5rem) 3.4rem; }
    .opiniones > * { max-width: 1140px; margin-inline: auto; }
    .gpanel { padding: 1.9rem 2.2rem; }
    .gpanel__resumen {
        grid-template-columns: minmax(0, 460px) auto;
        justify-content: start;
        column-gap: 3.5rem;
    }
    .opiniones__pista {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 1.1rem;
        margin: 0;
        padding: 0.25rem 0;
        overflow: visible;
    }
    .opinion blockquote { font-size: 0.98rem; }
    .faq { max-width: 760px; margin-inline: auto; }
    .faq__pregunta { font-size: 1.05rem; }
    .historia { max-width: 760px; margin-inline: auto; padding: 2rem 2.4rem; }
    .historia--abierta { max-width: 940px; padding: 2.2rem 2.5rem; }
    .historia--abierta .historia__cuerpo {
        display: grid;
        grid-template-columns: minmax(0, 0.95fr) minmax(0, 1fr);
        gap: 1.9rem;
        align-items: stretch;
    }
    .historia--abierta .historia__foto {
        display: flex;
        flex-direction: column;
        margin: 0;
    }
    .historia--abierta .historia__foto img {
        flex: 1;
        min-height: 0;
        aspect-ratio: auto;
    }
    .historia--abierta .historia__texto p:first-child { margin-top: 0; }
    .historia--abierta .historia__entrada {
        font-size: 1.1rem;
        line-height: 1.65;
    }
    .historia--abierta .historia__texto p {
        font-size: 1.08rem;
        line-height: 1.85;
        margin-top: 1.45rem;
    }
    .historia--abierta:has(.historia__video) { max-width: 1080px; }
    .historia--abierta:has(.historia__video) .historia__cuerpo {
        grid-template-columns: minmax(0, 1.12fr) minmax(0, 1.3fr) minmax(0, 0.76fr);
        gap: 1.6rem;
    }
    .historia--abierta .historia__video { margin: 0; justify-content: flex-start; }
    .historia--abierta .historia__video .reel { max-width: none; width: 100%; }
    .historia__linea {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 1.5rem;
        margin-top: 2.3rem;
    }
    .historia__linea::before {
        left: 7px;
        right: 7px;
        top: 6px;
        bottom: auto;
        width: auto;
        height: 2px;
    }
    .hito { padding-left: 0; padding-top: 1.55rem; }
    .hito::before { top: 0; }
    .mapa--activo iframe { height: 100%; min-height: 16rem; }
    .info-util {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 0.5rem 1.25rem;
        padding: 1.8rem 1.9rem;
    }
    .info-util .fila-icono {
        border-bottom: 0;
        gap: 0.65rem;
    }
    .info-util .fila-icono:nth-child(2n) {
        border-left: 1px solid var(--borde);
        padding-left: 1.1rem;
    }
    .l-pie {
        display: grid;
        grid-template-columns: auto 1fr;
        align-items: center;
        gap: 1.5rem;
        text-align: left;
        padding: 2rem clamp(2rem, 6vw, 5rem);
        margin-top: 3.2rem;
    }
    .l-pie img { margin: 0; }
    .l-pie p { text-align: right; }
    .cta-flotante { display: block; }
    .cta-flotante::before { display: none; }
    .cta-flotante__bloque {
        left: 0;
        right: 0;
        margin-inline: auto;
        width: max-content;
        max-width: calc(100% - 2.5rem);
        bottom: 1.6rem;
    }
    .cta-flotante .boton {
        width: auto;
        min-width: 15rem;
        padding: 0.85rem 1.7rem;
    }
}
@media (min-width: 1200px) {
    .info-util { gap: 1.1rem 1.25rem; }
    .info-util--cols-4 { grid-template-columns: repeat(4, 1fr); }
    .info-util--cols-3 { grid-template-columns: repeat(3, 1fr); }
    .info-util--cols-2 { grid-template-columns: repeat(2, 1fr); }
    .info-util .fila-icono {
        border-left: 1px solid var(--borde);
        padding-left: 1.1rem;
    }
    .info-util--cols-4 .fila-icono:nth-child(4n + 1),
    .info-util--cols-3 .fila-icono:nth-child(3n + 1),
    .info-util--cols-2 .fila-icono:nth-child(2n + 1) {
        border-left: 0;
        padding-left: 0;
    }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    .cta-flotante { transition: none; }
    .cta-aviso { transition: none; }
    .visita__chispa,
    .cta-flotante.visible .cta-flotante__bloque { animation: none; }
}
body.tema-noche {
    --fondo: #101312;
    --fondo-suave: #1a1f1d;
    --tinta: #f0ede3;
    --texto-2: #a9b2ac;
    --borde: #2a302d;
    --verde-suave: #1c2621;
    --sombra-tarjeta: 0 8px 28px rgba(0, 0, 0, 0.5);
    --sombra-flotante: 0 10px 30px rgba(0, 0, 0, 0.65);
}
.tema-noche a { color: #9ccfb8; }
.tema-noche .hero h1 em,
.tema-noche .mosaico__titulo em { color: #9ccfb8; }
.tema-noche .boton--principal {
    background: #1c6a55;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.45);
}
.tema-noche .boton--principal:hover { background: #218066; }
.tema-noche .boton--secundario {
    background: rgba(23, 28, 26, 0.85);
    border-color: #9ccfb8;
    color: #d9e7de;
}
.tema-noche .boton--secundario:hover { background: #1c2621; }
.tema-noche .hero__foto::after {
    background:
        linear-gradient(96deg, #101312 20%, rgba(16,19,18,0.92) 38%, rgba(16,19,18,0.55) 58%, rgba(16,19,18,0.05) 88%),
        linear-gradient(0deg, #101312 2%, rgba(16,19,18,0) 22%);
}
.tema-noche .pastilla {
    background: rgba(28, 38, 33, 0.92);
    color: #cfe6d9;
}
.tema-noche .sello { background: rgba(16, 19, 18, 0.55); }
.tema-noche .sello__nota { color: #e8eaed; }
.tema-noche .sello__pie { color: #9aa0a6; }
.tema-noche .mosaico__cita { background: var(--g-tinta); }
.tema-noche .mosaico__cita-texto { color: #e8eaed; }
.tema-noche .mosaico__cita-texto mark { color: #81c995; }
.tema-noche .mosaico__cita-tema { color: #bdc1c6; }
.tema-noche .mosaico__cita-mas,
.tema-noche .mosaico__cita-autor { color: #9aa0a6; }
.tema-noche .mosaico__cita-nota { color: #80868b; }
.tema-noche .mosaico__comilla { color: #56d9c8; }
.tema-noche .tarjeta { background: #171c1a; }
.tema-noche .mapa__toca {
    background: rgba(32, 33, 36, 0.92);
    color: #e8eaed;
}
.tema-noche .mapa__distancia { color: #8ab4f8; }
.tema-noche .boton--mapa { background: #303134; color: #8ab4f8; }
.tema-noche .beneficio__icono { background: #1c2621; color: #9ccfb8; }
.tema-noche .visita { background: linear-gradient(150deg, #181d27, #1d1826); }
.tema-noche .visita__badge { color: #81c995; }
.tema-noche .visita__autor { color: #9aa0a6; }
.tema-noche .visita__caras-mas {
    border-color: var(--g-tinta);
    background: #303134;
    color: #bdc1c6;
}
.tema-noche .categoria { background: #171c1a; }
.tema-noche .gpanel { background: var(--g-tinta); }
.tema-noche .gpanel__titulo,
.tema-noche .gpanel__subtitulo,
.tema-noche .gpanel__cifra { color: #e8eaed; }
.tema-noche .gpanel__masmencionado,
.tema-noche .gpanel__total,
.tema-noche .gbarra > span { color: #9aa0a6; }
.tema-noche .gbarra__pista { background: var(--g-texto); }
.tema-noche .chip { color: #bdc1c6; border-color: var(--g-texto); }
.tema-noche .chip b { color: #9aa0a6; }
.tema-noche .chip--boton { background: #303134; }
.tema-noche .chip--boton:hover { background: #35383c; }
.tema-noche .chip--boton.chip--activo {
    background: rgba(138, 180, 248, 0.12);
    border-color: #8ab4f8;
    color: #8ab4f8;
}
.tema-noche .chip--boton.chip--activo b { color: #8ab4f8; }
.tema-noche .gpanel__tema { background: #292d31; }
.tema-noche .tema-cita__texto { color: #bdc1c6; }
.tema-noche .tema-cita__pie strong { color: #e8eaed; }
.tema-noche .opinion { background: #292d31; }
.tema-noche .opinion blockquote { color: #bdc1c6; }
.tema-noche .opinion__mas { color: #8ab4f8; }
.tema-noche .opinion__fecha,
.tema-noche .opinion__visita,
.tema-noche .opinion__quien div span { color: #9aa0a6; }
.tema-noche .opinion__quien div strong { color: #e8eaed; }
.tema-noche .opinion__avatar { color: #9ccfb8; }
.tema-noche .historia__mas { color: #9ccfb8; }
.tema-noche .faq__item { background: #171c1a; }
.tema-noche .cta-flotante::before {
    background: linear-gradient(0deg, rgba(10, 12, 11, 0.96) 55%, rgba(10, 12, 11, 0));
}
.tema-noche .cta-flotante__bloque { background: #1d2320; }
@media (min-width: 760px) {
    body.tema-noche { background: #070908; }
    .tema-noche .hero__foto::after {
        background:
            linear-gradient(90deg, #101312 0%, rgba(16,19,18,0.85) 10%, rgba(16,19,18,0.30) 30%, rgba(16,19,18,0) 52%),
            linear-gradient(0deg, #101312 2%, rgba(16,19,18,0) 14%);
    }
}
body.marca-casa-pepi {
    --verde: #3a7b23;
    --verde-tinta: #2c5c1b;
    --verde-suave: #eaf3e5;
    --sombra-tarjeta: 0 8px 28px rgba(58, 123, 35, 0.10);
    --sombra-flotante: 0 10px 30px rgba(44, 92, 27, 0.28);
}
.prensa__entradilla {
    max-width: 46ch;
    margin: -0.4rem auto 1.8rem;
    text-align: center;
    color: var(--texto-2);
    font-size: 1rem;
    line-height: 1.6;
}
.prensa__logo {
    height: calc(34px * var(--escala-logo, 1));
    width: auto;
    border-radius: 4px;
}
.prensa__medio {
    font-family: var(--sans);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--verde);
}
.prensa-destacado {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    max-width: 44rem;
    margin: 0 auto 1.5rem;
    padding: 1.6rem 1.4rem;
    border-radius: var(--radio-tarjeta);
    background: var(--verde-suave);
    text-align: center;
}
.prensa-destacado .prensa__logo {
    height: calc(30px * var(--escala-logo, 1));
    flex: none;
}
.prensa-destacado__titular {
    position: relative;
    margin: 0;
    font-family: var(--serif);
    font-size: 1.15rem;
    line-height: 1.4;
    color: var(--tinta);
    text-align: center;
}
.prensa-destacado__titular::before { content: '“'; color: var(--verde); opacity: 0.55; }
.prensa-destacado__titular::after { content: '”'; color: var(--verde); opacity: 0.55; }
.prensa-lista {
    display: grid;
    gap: 0.9rem;
    max-width: 44rem;
    margin: 0 auto;
    padding: 0;
    list-style: none;
}
.prensa-item {
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
    padding: 1.05rem 1.2rem;
    border: 1px solid var(--borde);
    border-radius: var(--radio-tarjeta);
    background: var(--fondo);
}
.prensa-item__logo { display: flex; align-items: center; min-height: 30px; }
@media (max-width: 699px) {
    .prensa-lista .prensa-item:only-child { align-items: center; }
    .prensa-lista .prensa-item:only-child .prensa-item__logo { justify-content: center; }
}
.prensa-item__titular {
    position: relative;
    margin: 0;
    padding-left: 0.95rem;
    font-family: var(--serif);
    font-size: 0.98rem;
    line-height: 1.4;
    color: var(--tinta);
}
.prensa-item__titular::before {
    content: '“';
    position: absolute;
    left: -0.1rem;
    top: -0.3rem;
    font-size: 1.7rem;
    line-height: 1;
    color: var(--verde);
    opacity: 0.5;
}
.prensa-item__titular::after { content: '”'; color: var(--verde); opacity: 0.5; }
.prensa-cinta-marco {
    overflow: hidden;
    margin: 0 auto 1.7rem;
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
            mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}
.prensa-cinta {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    width: max-content;
    gap: 0 2.6rem;
    padding: 0.2rem 1.3rem;
    margin: 0;
    list-style: none;
    animation: prensa-desfile 46s linear infinite;
}
@keyframes prensa-desfile {
    from { transform: translateX(0); }
    to   { transform: translateX(-50%); }
}
.prensa-cinta:hover,
.prensa-cinta:focus-within { animation-play-state: paused; }
@media (prefers-reduced-motion: reduce) {
    .prensa-cinta {
        animation: none;
        flex-wrap: wrap;
        justify-content: center;
        width: auto;
        gap: 0.7rem 1.6rem;
        max-width: 52rem;
    }
    .prensa-cinta__medio[aria-hidden="true"] { display: none; }
}
.prensa-cinta__medio {
    display: flex;
    align-items: center;
    opacity: 0.68;
    filter: grayscale(1);
    transition: opacity 0.25s ease, filter 0.25s ease;
}
.prensa-cinta__medio:hover,
.prensa-cinta__medio:focus-within { opacity: 1; filter: grayscale(0); }
.prensa-cinta__medio a {
    display: flex;
    align-items: center;
    text-decoration: none;
    border-radius: 6px;
}
.prensa-cinta__medio a:focus-visible {
    outline: 2px solid var(--verde);
    outline-offset: 3px;
}
.prensa-cinta .prensa__medio { font-size: 0.72rem; letter-spacing: 0.1em; }
.prensa-cinta .prensa__logo  { height: calc(22px * var(--escala-logo, 1)); }
.prensa-carrusel { max-width: 46rem; margin: 0 auto; }
.prensa-carrusel__marco {
    display: grid;
    padding: 1.7rem 1.4rem;
    border-radius: var(--radio-tarjeta);
    background: var(--verde-suave);
    text-align: center;
}
.prensa-cita {
    grid-area: 1 / 1;
    margin: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.9rem;
    visibility: hidden;
    opacity: 0;
    transform: translateY(6px);
    transition: opacity 0.5s ease, transform 0.5s ease, visibility 0s linear 0.5s;
}
.prensa-cita.es-activa {
    visibility: visible;
    opacity: 1;
    transform: none;
    transition: opacity 0.5s ease, transform 0.5s ease, visibility 0s;
}
.prensa-cita__titular {
    position: relative;
    margin: 0;
    font-family: var(--serif);
    font-size: 1.12rem;
    line-height: 1.45;
    color: var(--verde-tinta);
    max-width: 34ch;
}
.prensa-cita__titular::before { content: '“'; color: var(--verde); opacity: 0.55; }
.prensa-cita__titular::after  { content: '”'; color: var(--verde); opacity: 0.55; }
.prensa-cita__pie {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    flex-wrap: wrap;
    justify-content: center;
}
.prensa-cita__fecha {
    font-size: 0.78rem;
    color: var(--texto-2);
    letter-spacing: 0.02em;
}
.prensa-cita__pie::before {
    content: '';
    width: 22px;
    height: 1px;
    background: var(--verde);
    opacity: 0.35;
}
.prensa-carrusel__puntos {
    display: flex;
    justify-content: center;
    gap: 0.5rem;
    margin-top: 1rem;
}
.prensa-punto, .carta-punto { -webkit-tap-highlight-color: transparent; }
.prensa-punto {
    width: 24px;
    height: 24px;
    padding: 0;
    border: 0;
    background: none;
    cursor: pointer;
    display: grid;
    place-items: center;
    border-radius: 50%;
}
.prensa-punto::before {
    content: '';
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--verde);
    opacity: 0.28;
    transition: opacity 0.25s ease, transform 0.25s ease;
}
.prensa-punto:hover::before { opacity: 0.55; }
.prensa-punto.es-activo::before { opacity: 1; transform: scale(1.25); }
.prensa-punto:focus-visible { outline: 2px solid var(--verde); outline-offset: 1px; }
@media (min-width: 700px) {
    .prensa-cinta { gap: 0.9rem 2.2rem; }
    .prensa-carrusel__marco { padding: 2.1rem 2.4rem; }
    .prensa-cita__titular { font-size: 1.28rem; max-width: 38ch; }
}
@media (min-width: 700px) {
    .prensa-lista .prensa-item:only-child {
        flex-direction: row;
        align-items: center;
        gap: 1.7rem;
        padding: 1.5rem 1.9rem;
    }
    .prensa-lista .prensa-item:only-child .prensa-item__logo {
        flex: none;
        width: 8.5rem;
        justify-content: center;
    }
    .prensa-lista .prensa-item:only-child .prensa-item__titular { font-size: 1.1rem; }
    .prensa-destacado {
        flex-direction: row;
        gap: 1.7rem;
        padding: 1.7rem 2rem;
    }
    .prensa-destacado__titular {
        padding-left: 1.1rem;
        font-size: 1.35rem;
        text-align: left;
    }
    .prensa-destacado__titular::before {
        position: absolute;
        left: -0.15rem;
        top: -0.35rem;
        font-size: 2.1rem;
        line-height: 1;
    }
    .prensa-lista { grid-template-columns: repeat(auto-fit, minmax(13.5rem, 1fr)); gap: 1rem; }
    .prensa-item { height: 100%; }
}
.legal-pagina {
    padding: 2rem 1.15rem 4rem;
    background: var(--fondo);
}
.legal-caja {
    max-width: 46rem;
    margin: 0 auto;
}
.legal-volver {
    display: inline-block;
    margin-bottom: 1.6rem;
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--verde);
    text-decoration: none;
}
.legal-volver:hover { text-decoration: underline; }
.legal-caja h1 {
    margin: 0 0 0.4rem;
    font-family: var(--serif);
    font-size: clamp(1.7rem, 5vw, 2.4rem);
    line-height: 1.15;
    color: var(--tinta);
}
.legal-fecha {
    margin: 0 0 2.2rem;
    font-size: 0.85rem;
    color: var(--texto-2);
}
.legal-apartado { margin-bottom: 2.2rem; }
.legal-apartado h2 {
    margin: 0 0 0.7rem;
    font-family: var(--sans);
    font-size: 1.05rem;
    font-weight: 700;
    letter-spacing: 0.01em;
    color: var(--verde);
}
.legal-apartado p,
.legal-lista li {
    margin: 0 0 0.85rem;
    font-size: 1rem;
    line-height: 1.7;
    color: var(--tinta);
}
.legal-lista { padding-left: 1.2rem; }
.legal-lista li { margin-bottom: 0.6rem; }
.legal-datos {
    display: grid;
    gap: 0.55rem 1.2rem;
    margin: 0 0 0.5rem;
    padding: 1.1rem 1.25rem;
    border: 1px solid var(--borde);
    border-radius: var(--radio-tarjeta);
    background: var(--fondo-suave);
}
.legal-datos dt {
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: var(--texto-2);
}
.legal-datos dd {
    margin: 0 0 0.4rem;
    font-size: 0.98rem;
    line-height: 1.5;
    color: var(--tinta);
}
.legal-datos dd:last-child { margin-bottom: 0; }
@media (min-width: 620px) {
    .legal-datos { grid-template-columns: 12rem 1fr; align-items: baseline; }
    .legal-datos dd { margin-bottom: 0; }
}
.legal-pendiente {
    display: inline-block;
    padding: 0.15rem 0.5rem;
    border-radius: 7px;
    background: #fdeaea;
    color: #a3232b;
    font-size: 0.86rem;
    font-weight: 600;
}
.legal-tabla-caja { overflow-x: auto; margin-bottom: 1rem; }
.legal-tabla { width: 100%; border-collapse: collapse; font-size: 0.92rem; }
.legal-tabla th, .legal-tabla td {
    padding: 0.6rem 0.75rem;
    border-bottom: 1px solid var(--borde);
    text-align: left;
}
.legal-tabla th { font-weight: 700; color: var(--verde); }
.legal-otros {
    display: flex;
    flex-wrap: wrap;
    gap: 1.4rem;
    margin-top: 2.6rem;
    padding-top: 1.4rem;
    border-top: 1px solid var(--borde);
}
.legal-otros a {
    font-size: 0.94rem;
    font-weight: 600;
    color: var(--verde);
    text-decoration: none;
}
.legal-otros a:hover { text-decoration: underline; }
.carta-web__entrada {
    max-width: 48ch;
    margin: -0.3rem auto 1.8rem;
    text-align: center;
    color: var(--texto-2);
    line-height: 1.65;
}
.carta-web__secciones {
    display: grid;
    gap: 0.7rem;
    max-width: 46rem;
    margin: 0 auto;
}
.carta-pista {
    display: flex;
    gap: 0.9rem;
    align-items: flex-start;
    max-width: 100%;
    padding: 0.3rem 0.2rem 1rem;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
}
.carta-pista::-webkit-scrollbar { display: none; }
@media (max-width: 899px) {
    .carta-pista {
        transition: height 0.25s ease;
        overflow-y: clip;
    }
}
.carta-tarjeta {
    flex: 0 0 min(19rem, 82vw);
    scroll-snap-align: start;
    display: flex;
    flex-direction: column;
    border: 1px solid var(--borde);
    border-radius: var(--radio-tarjeta);
    background: var(--fondo);
    overflow: hidden;
}
.carta-tarjeta__cabecera {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    padding: 0.75rem 0.9rem;
    border-bottom: 1px solid var(--borde);
    background: var(--verde-suave);
    font-family: var(--serif);
    font-size: 1.05rem;
    line-height: 1.2;
    color: var(--verde-tinta);
}
.carta-tarjeta__nombre { flex: 1; }
.carta-tarjeta__cuenta { flex: none; }
.carta-tarjeta__foto {
    flex: none;
    width: 40px; height: 40px;
    border-radius: 10px;
    object-fit: cover;
}
.carta-tarjeta .carta-seccion__cuenta { background: var(--fondo); }
.carta-tarjeta__lista { flex: 1; }
.carta-tarjeta .carta-platos { padding: 0.1rem 0.9rem 0.7rem; }
.carta-tarjeta .carta-plato__nombre { font-size: 0.92rem; }
.carta-tarjeta__ver { display: none; }
@media (max-width: 699px) {
    .carta-pista--plegar { align-items: stretch; }
    .carta-pista--plegar .carta-tarjeta:not(.esta-abierta):not(.cabe-entera) .carta-tarjeta__lista {
        max-height: var(--carta-alto-plegado, 30rem);
        overflow: hidden;
    }
    .carta-tarjeta.es-plegada:not(.esta-abierta) .carta-tarjeta__lista {
        -webkit-mask-image: linear-gradient(to bottom, #000 calc(100% - 3.5rem), transparent);
                mask-image: linear-gradient(to bottom, #000 calc(100% - 3.5rem), transparent);
    }
    .carta-tarjeta.es-plegada .carta-tarjeta__ver {
        display: block;
        flex: none;
        margin: 0.1rem auto 0.9rem;
        font: inherit;
        font-size: 0.95rem;
        font-weight: 700;
        color: var(--verde);
        background: var(--verde-suave);
        border: 0;
        border-radius: 999px;
        padding: 0.75rem 1.4rem;
        cursor: pointer;
    }
    .carta-tarjeta__ver:focus-visible { outline: 2px solid var(--verde); outline-offset: 2px; }
}
.carta-pista__puntos {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin-top: 0.2rem;
}
.carta-punto {
    width: 24px; height: 24px;
    padding: 0; border: 0; background: none; cursor: pointer;
    display: grid; place-items: center; border-radius: 50%;
}
.carta-punto::before {
    content: '';
    width: 8px; height: 8px;
    border-radius: 50%;
    background: var(--verde);
    opacity: 0.28;
    transition: opacity 0.25s ease, transform 0.25s ease;
}
.carta-punto:hover::before { opacity: 0.55; }
.carta-punto.es-activo::before { opacity: 1; transform: scale(1.25); }
.carta-punto:focus-visible { outline: 2px solid var(--verde); outline-offset: 1px; }
@media (min-width: 700px) {
    .carta-tarjeta { flex-basis: 20rem; }
    .carta-pista { align-items: stretch; }
    .carta-tarjeta__lista {
        overflow-y: auto;
        max-height: 24rem;
        overscroll-behavior-y: auto;
        -webkit-mask-image: linear-gradient(to bottom, #000 calc(100% - 2.2rem), transparent);
                mask-image: linear-gradient(to bottom, #000 calc(100% - 2.2rem), transparent);
    }
    .carta-tarjeta__lista { scrollbar-width: thin; }
    .carta-tarjeta__lista:focus { outline: none; }
    .carta-tarjeta__lista:focus-visible {
        outline: 2px solid var(--verde);
        outline-offset: -2px;
        border-radius: 6px;
    }
}
.carta-seccion {
    border: 1px solid var(--borde);
    border-radius: var(--radio-tarjeta);
    background: var(--fondo);
    overflow: hidden;
}
.carta-seccion[open] { border-color: var(--verde); }
.carta-seccion__cabecera {
    display: flex;
    align-items: center;
    gap: 0.85rem;
    padding: 0.8rem 1rem;
    cursor: pointer;
    list-style: none;
    user-select: none;
}
.carta-seccion__cabecera::-webkit-details-marker { display: none; }
.carta-seccion__cabecera::marker { content: ''; }
.carta-seccion__cabecera:hover { background: var(--fondo-suave); }
.carta-seccion__cabecera:focus-visible {
    outline: 2px solid var(--verde);
    outline-offset: -2px;
}
.carta-seccion__foto {
    width: 46px;
    height: 46px;
    border-radius: 12px;
    object-fit: cover;
    flex: none;
}
.carta-seccion__nombre {
    flex: 1;
    font-family: var(--serif);
    font-size: 1.12rem;
    line-height: 1.25;
    color: var(--tinta);
}
.carta-seccion__cuenta {
    flex: none;
    min-width: 1.6rem;
    padding: 0.1rem 0.45rem;
    border-radius: 999px;
    background: var(--verde-suave);
    color: var(--verde);
    font-size: 0.78rem;
    font-weight: 700;
    text-align: center;
}
.carta-seccion__chevron {
    display: inline-flex;
    flex: none;
    color: var(--verde);
    transition: transform 0.25s ease;
}
.carta-seccion[open] .carta-seccion__chevron { transform: rotate(90deg); }
.carta-platos {
    list-style: none;
    margin: 0;
    padding: 0.2rem 1rem 0.9rem;
}
.carta-plato {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    padding: 0.52rem 0;
    border-top: 1px solid var(--borde);
}
.carta-plato:first-child { border-top: 0; }
.carta-plato__nombre {
    font-size: 0.97rem;
    line-height: 1.4;
    color: var(--tinta);
}
.carta-plato__marca {
    color: var(--verde);
    font-weight: 700;
    text-decoration: none;
    cursor: help;
}
.carta-plato__linea {
    flex: 1;
    min-width: 1.2rem;
    align-self: center;
    height: 1px;
    border-bottom: 1px dotted var(--borde);
}
.carta-plato__precio {
    flex: none;
    font-weight: 700;
    font-size: 0.97rem;
    color: var(--verde);
    white-space: nowrap;
}
.carta-plato__moneda { font-weight: 600; }
.carta-plato__unidad {
    display: block;
    font-size: 0.7rem;
    font-weight: 500;
    color: var(--texto-2);
    text-align: right;
}
.carta-seccion__cuenta { display: none !important; }
.carta-plato__linea { border-bottom-color: transparent; }
.carta-plato__precio {
    display: inline-flex;
    align-items: baseline;
    gap: 0.3rem;
}
.carta-plato__unidad {
    order: -1;
    display: inline;
    font-size: 0.72rem;
    text-align: left;
}
.carta-seccion__nota {
    margin: 0;
    padding: 0 1rem 1rem;
    font-size: 0.88rem;
    font-style: italic;
    color: var(--texto-2);
}
.carta-web__pie {
    max-width: 46rem;
    margin: 1.5rem auto 0;
}
.carta-web__leyenda,
.carta-web__nota {
    margin: 0 0 0.5rem;
    font-size: 0.86rem;
    color: var(--texto-2);
}
.carta-web__leyenda strong { color: var(--verde); }
.carta-web__alergenos {
    display: flex;
    align-items: flex-start;
    gap: 0.55rem;
    margin: 0 0 0.7rem;
    padding: 0.85rem 1rem;
    border-radius: 14px;
    background: var(--verde-suave);
    font-size: 0.9rem;
    line-height: 1.55;
    color: var(--verde-tinta);
}
.carta-web__alergenos svg { flex: none; margin-top: 0.15rem; color: var(--verde); }
@media (min-width: 700px) {
    .carta-seccion__cabecera { padding: 1rem 1.3rem; }
    .carta-seccion__foto { width: 54px; height: 54px; }
    .carta-seccion__nombre { font-size: 1.28rem; }
    .carta-platos { padding: 0.3rem 1.3rem 1.1rem; }
    .carta-plato__nombre, .carta-plato__precio { font-size: 1.02rem; }
}
@media (prefers-reduced-motion: reduce) {
    .carta-seccion__chevron { transition: none; }
}
.perros__caja {
    max-width: 62rem;
    margin: 0 auto;
    padding: 1.5rem 1.3rem;
    border-radius: var(--radio-tarjeta);
    background: var(--verde-suave);
}
.perros__titulo {
    margin: 0 0 0.7rem;
    font-family: var(--serif);
    font-size: clamp(1.5rem, 5vw, 2.05rem);
    line-height: 1.2;
    color: var(--tinta);
    text-wrap: balance;
}
.perros__parrafos p {
    margin: 0 0 0.75rem;
    font-size: 1rem;
    line-height: 1.65;
    color: var(--tinta);
}
.perros__parrafos p:last-child { margin-bottom: 1.3rem; }
.perros__rejilla {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.6rem;
}
@media (max-width: 759px) {
    .perros__rejilla--pares { grid-template-columns: repeat(2, 1fr); }
}
.perros__pieza {
    margin: 0;
    overflow: hidden;
    border-radius: 14px;
    background: var(--fondo);
    aspect-ratio: 1 / 1;
}
.perros__pieza img,
.perros__pieza video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.perros__pieza--principal {
    grid-column: 1 / -1;
    aspect-ratio: 4 / 4.3;
}
.perros__datos {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.7rem;
    margin: 0;
    padding: 1rem 1.1rem;
    border-radius: 14px;
    background: var(--fondo);
    list-style: none;
    grid-column: 1 / -1;
}
.perros__datos li {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    font-size: 0.95rem;
    font-weight: 600;
    line-height: 1.3;
    color: var(--verde-tinta);
}
.perros__datos svg {
    flex: none;
    box-sizing: content-box;
    width: 18px;
    height: 18px;
    padding: 7px;
    border-radius: 50%;
    background: var(--verde-suave);
    color: var(--verde);
}
@media (min-width: 760px) {
    .perros__caja { padding: 2rem 2.2rem; }
    .perros__parrafos {
        columns: 2;
        column-gap: 2.2rem;
    }
    .perros__parrafos p { break-inside: avoid; }
    .perros__rejilla {
        grid-template-columns: 1.42fr 1fr 1fr;
        grid-template-rows: 1fr 1fr;
        gap: 0.8rem;
    }
    .perros__pieza--principal {
        grid-column: 1;
        grid-row: 1 / span 2;
        aspect-ratio: auto;
        height: 100%;
    }
    .perros__pieza:not(.perros__pieza--principal) { aspect-ratio: 1 / 1; }
    .perros__datos { aspect-ratio: 1 / 1; }
    .perros__datos {
        grid-column: 3;
        grid-row: 2;
        padding: 1.1rem 1.2rem;
    }
    .perros__datos { gap: 1rem; }
    .perros__datos li { font-size: 0.92rem; }
}
.prensa-destacado__titular,
.prensa-item__titular,
.seccion__titulo,
.mosaico__titulo,
.carta-seccion__nombre,
.carta-web__entrada,
.prensa__entradilla,
.beneficio span,
.sello__dato-titulo {
    text-wrap: balance;
}
.reserva {
    position: relative;
    display: grid;
    place-items: center;
    min-height: 100svh;
    padding: 1.6rem 1rem 2.4rem;
    overflow: hidden;
}
.reserva__fondo,
.reserva__velo {
    position: absolute;
    inset: 0;
}
.reserva__fondo { background-size: cover; background-position: center; }
.reserva__velo { background: linear-gradient(180deg, rgba(14,51,43,.72), rgba(14,51,43,.88)); }
.reserva--sin-foto { background: var(--verde-tinta); }
.reserva__contenido {
    position: relative;
    display: grid;
    justify-items: center;
    gap: 1.3rem;
    width: 100%;
    max-width: 30rem;
}
.reserva__logo img { display: block; height: auto; }
.reserva__tarjeta {
    width: 100%;
    padding: 1.5rem 1.3rem;
    border-radius: var(--radio-tarjeta);
    background: var(--fondo);
    box-shadow: 0 18px 50px rgba(14, 51, 43, .3);
}
.reserva__titulo {
    margin: 0 0 1rem;
    font-family: var(--serif);
    font-size: 1.4rem;
    line-height: 1.25;
    text-align: center;
    color: var(--tinta);
    text-wrap: balance;
}
.reserva__social {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding-bottom: 1.1rem;
    margin-bottom: 1.1rem;
    border-bottom: 1px solid var(--borde);
    font-size: 0.86rem;
    color: var(--texto-2);
}
.reserva__nota { display: flex; align-items: center; gap: 0.3rem; color: var(--g-tinta); }
.reserva__nota strong { font-size: 1.05rem; }
.reserva__fachada {
    display: grid;
    justify-items: center;
    gap: 0.7rem;
    padding: 1.4rem 1rem;
    border: 1px dashed var(--borde);
    border-radius: 16px;
    background: var(--fondo-suave);
    text-align: center;
}
.reserva__fachada svg { color: var(--verde); }
.reserva__fachada-texto {
    margin: 0;
    font-size: 0.97rem;
    line-height: 1.5;
    color: var(--tinta);
}
.reserva__aviso {
    margin: 0.2rem 0 0;
    font-size: 0.76rem;
    line-height: 1.45;
    color: var(--texto-2);
    max-width: 30ch;
}
.reserva__abrir { width: 100%; justify-content: center; }
.reserva__modulo {
    display: grid;
    min-height: var(--gmlr-alto-calendario, 554px);
}
.reserva__fachada { align-content: center; }
.reserva__modulo iframe {
    display: block;
    width: 100%;
    min-height: 30rem;
    border: 0;
    border-radius: 12px;
}
@media (max-width: 479px) {
    .reserva:has(.reserva__modulo[data-alto]) { padding-left: 0; padding-right: 0; }
    .reserva:has(.reserva__modulo[data-alto]) .reserva__tarjeta { border-radius: 0; }
    .reserva__modulo[data-alto] iframe { width: calc(100% + 2.6rem); max-width: none; margin-left: -1.3rem; border-radius: 0; }
}
.reserva__pie {
    margin: 1rem 0 0;
    font-size: 0.85rem;
    line-height: 1.5;
    text-align: center;
    color: var(--texto-2);
}
.reserva__llamada .boton { min-height: 54px; font-size: 1.02rem; }
.reserva__llamar a { color: var(--verde); font-weight: 700; text-decoration: none; }
.reserva__llamar + .reserva__pie { margin-top: 0.4rem; }
.reserva__modulo[data-muestra] { position: relative; }
.reserva__muestra {
    margin: 0 0 0.8rem;
    padding: 0.65rem 0.9rem;
    border: 1px dashed var(--borde);
    border-radius: 10px;
    font-size: 0.85rem;
    line-height: 1.5;
    text-align: center;
    color: var(--texto-2);
}
.reserva__tapa {
    position: absolute;
    inset: 0;
    z-index: 1;
    border-radius: 12px;
    background: rgba(var(--fondo-rgb), 0.18);
    cursor: not-allowed;
}
.gracias {
    display: grid;
    place-items: center;
    min-height: 100svh;
    padding: 2rem 1.1rem 3rem;
    background: var(--verde-suave);
}
.gracias__caja {
    width: 100%;
    max-width: 32rem;
    padding: 2rem 1.5rem;
    border-radius: var(--radio-tarjeta);
    background: var(--fondo);
    text-align: center;
    box-shadow: var(--sombra-tarjeta);
}
.gracias__logo {
    display: block;
    margin: 0 auto 1.3rem;
    line-height: 0;
    text-align: center;
}
.gracias__logo img {
    width: auto;
    max-width: 150px;
    height: auto;
    max-height: 46px;
    margin-inline: auto;
}
.gracias__marca {
    display: inline-grid;
    place-items: center;
    width: 62px;
    height: 62px;
    margin-bottom: 1rem;
    border-radius: 50%;
    background: var(--verde-suave);
    color: var(--verde);
}
.gracias__titulo {
    margin: 0 0 0.6rem;
    font-family: var(--serif);
    font-size: clamp(1.5rem, 6vw, 2rem);
    color: var(--tinta);
}
.gracias__texto {
    margin: 0 0 1.3rem;
    font-size: 1rem;
    line-height: 1.6;
    color: var(--texto-2);
}
.gracias__telefono {
    display: inline-flex;
    max-width: 100%;
    overflow-wrap: anywhere;
}
.gracias__whatsapp {
    margin: 0 0 1.4rem;
    padding: 1.1rem 1rem 1.2rem;
    border-radius: 14px;
    background: var(--verde-suave);
}
.gracias__whatsapp p {
    margin: 0 0 0.8rem;
    font-size: 0.95rem;
    line-height: 1.5;
    color: var(--texto-2);
}
.gracias__whatsapp .boton {
    display: inline-flex;
    max-width: 100%;
}
.gracias__platos {
    margin-top: 1.8rem;
    padding-top: 1.5rem;
    border-top: 1px solid var(--borde);
    text-align: left;
}
.gracias__platos h2 {
    margin: 0 0 0.3rem;
    font-family: var(--serif);
    font-size: 1.15rem;
    color: var(--tinta);
}
.gracias__platos-nota {
    margin: 0 0 1rem;
    font-size: 0.85rem;
    color: var(--texto-2);
}
.gracias__platos ul { margin: 0; padding: 0; list-style: none; }
.gracias__platos li {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.8rem;
    padding: 0.55rem 0;
    border-bottom: 1px solid var(--borde);
}
.gracias__platos li:last-child { border-bottom: 0; }
.gracias__plato { font-weight: 600; color: var(--tinta); }
.gracias__veces {
    flex: none;
    font-size: 0.82rem;
    font-weight: 700;
    color: var(--verde);
}
.gracias__volver {
    display: inline-block;
    margin-top: 1.6rem;
    font-size: 0.92rem;
    font-weight: 600;
    color: var(--verde);
    text-decoration: none;
}
.gracias__volver:hover { text-decoration: underline; }
.pie-interior {
    padding: 1.6rem 1.2rem 2rem;
    background: var(--verde-tinta);
    color: rgba(255, 255, 255, 0.8);
    text-align: center;
    font-size: 0.85rem;
}
.pie-interior__marca { margin: 0 0 0.5rem; font-weight: 600; color: #fff; }
.pie-interior__legal { display: flex; flex-wrap: wrap; gap: 0.4rem 1.1rem; justify-content: center; }
.pie-interior__firma {
    margin: 0.9rem 0 0;
    font-size: 0.72rem;
    letter-spacing: 0.06em;
    opacity: 0.85;
}
.pie-interior__legal a { color: rgba(255, 255, 255, 0.8); text-decoration: none; }
.gmlr-cookies {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: grid;
    place-items: center;
    padding: 1rem;
    touch-action: none;
    overscroll-behavior: contain;
}
.gmlr-cookies__velo {
    position: absolute;
    inset: 0;
    background: var(--verde-tinta, #0e332b);
    opacity: 0.62;
    -webkit-backdrop-filter: blur(3px);
    backdrop-filter: blur(3px);
}
.gmlr-cookies__caja {
    position: relative;
    width: 100%;
    max-width: 44rem;
    padding: 1.25rem 1.3rem;
    border-radius: var(--radio-tarjeta);
    background: var(--fondo);
    box-shadow: 0 18px 50px rgba(14, 51, 43, .35);
}
.gmlr-cookies__texto {
    margin: 0 0 1rem;
    font-size: 0.93rem;
    line-height: 1.55;
    color: var(--tinta);
}
.gmlr-cookies__texto a { color: var(--verde); }
.gmlr-cookies__botones {
    display: grid;
    gap: 0.6rem;
}
.gmlr-cookies__boton {
    width: 100%;
    padding: 0.85rem 1.2rem;
    border: 1.5px solid var(--verde);
    border-radius: var(--radio-boton);
    background: var(--fondo);
    color: var(--verde-tinta);
    font-family: var(--sans);
    font-size: 0.95rem;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.15s ease;
}
.gmlr-cookies__boton:hover { background: var(--verde-suave); }
.gmlr-cookies__boton:focus-visible { outline: 3px solid var(--verde); outline-offset: 2px; }
@media (min-width: 560px) {
    .gmlr-cookies { place-items: center; }
    .gmlr-cookies__caja { padding: 1.6rem 1.8rem; }
    .gmlr-cookies__botones { grid-template-columns: 1fr 1fr; }
}
.reel__sonido[hidden] { display: none !important; }
.hero__foto .hero__video--pc { display: none; }
@media (min-width: 900px) {
    .hero__foto .hero__video--movil { display: none; }
    .hero__foto .hero__video--pc { display: block; }
}
.hero__foto .hero__video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-bottom-left-radius: 120px;
}
.hero__foto .hero__video.hero__video--pc { display: none; }
@media (min-width: 900px) {
    .hero__foto .hero__video.hero__video--movil { display: none; }
    .hero__foto .hero__video.hero__video--pc { display: block; }
}
.opinion__traducida,
.tema-cita__traducida {
    font-size: 0.72rem;
    font-style: italic;
    opacity: 0.6;
    margin: 0.35rem 0 0;
}
.tema-cita__traducida { margin: 0; }
.hero__carrusel {
    position: absolute;
    inset: 0;
}
.hero__carrusel .hero__diapo {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 1s ease-in-out;
}
.hero__carrusel .hero__diapo--activa { opacity: 1; }
@media (prefers-reduced-motion: reduce) {
    .hero__carrusel .hero__diapo { transition: none; }
}
body.marca-nardi {
    --verde:        #0033cc;
    --verde-tinta:  #00218a;
    --verde-suave:  #e7ecfb;
    --fondo:        #f7f4ec;
    --fondo-rgb:    247, 244, 236;
    --fondo-suave:  #efe9db;
    --borde:        #ded6c4;
    --sombra-tarjeta:  0 8px 28px rgba(0, 51, 204, 0.10);
    --sombra-flotante: 0 10px 30px rgba(0, 33, 138, 0.30);
    --resalte-fondo:   #e4eafd;
    --resalte-tinta:   #00218a;
    --marco-grosor: 6px;
}
body.marca-nardi .mosaico img,
body.marca-nardi .mosaico video,
body.marca-nardi .imprescindible__foto { border: 4px solid #141414; box-sizing: border-box; }
body.marca-nardi .imprescindible__etiqueta { transform: rotate(-4deg); box-shadow: 0 3px 0 #00218a; }
body.marca-nardi .imprescindible:nth-child(even) .imprescindible__etiqueta { transform: rotate(3deg); }
.marco-marca {
    position: fixed;
    top: 0; left: 0; right: 0;
    height: 100%;
    height: 100svh;
    z-index: 900;
    pointer-events: none;
    border: var(--marco-grosor, 3px) solid var(--verde);
}
@media print { .marco-marca { display: none; } }
@media (min-width: 1024px) {
    body.marca-nardi .mosaico__pista > .mosaico__col:nth-last-child(-n+3) { display: none; }
}
@media (min-width: 1024px) and (max-width: 1799px) {
    body.marca-nardi .mosaico__grande { width: 180px; }
    body.marca-nardi .mosaico__par    { width: 127px; }
    body.marca-nardi .mosaico__cita   { width: 220px; }
}
@media (max-width: 759px) {
    .mosaico__cita          { gap: 0.4rem; padding: 0.95rem 1rem; }
    .mosaico__cita-texto    { font-size: 0.98rem; line-height: 1.34; }
    .mosaico__cita-nota     { font-size: 0.68rem; line-height: 1.3; }
}
.l-cabecera__logo-claro { display: none; }
@media (max-width: 899px) {
    .hero__texto-extra { display: none; }
}
@media (max-width: 899px) {
    .hero-cine .l-cabecera {
        position: absolute;
        top: 0; left: 0; right: 0;
        z-index: 20;
        background: transparent;
        padding-top: calc(0.9rem + env(safe-area-inset-top, 0px));
    }
    .hero-cine .l-cabecera__logo img:not(.l-cabecera__logo-claro) { display: none; }
    .hero-cine img.l-cabecera__logo-claro { display: block; }
    .hero-cine .hero {
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        min-height: 100svh;
        padding: 5.5rem 1.25rem 2rem;
    }
    .hero-cine .hero__foto {
        inset: 0;
        width: 100%;
        height: 100%;
    }
    .hero-cine .hero__foto img,
    .hero-cine .hero__foto .hero__video {
        width: 100%; height: 100%;
        object-fit: cover;
        border-bottom-left-radius: 0;
    }
    .hero-cine .hero__foto::after {
        background: linear-gradient(180deg,
            rgba(0, 0, 0, 0.52) 0%,
            rgba(0, 0, 0, 0.20) 26%,
            rgba(0, 0, 0, 0.46) 58%,
            rgba(0, 0, 0, 0.80) 100%);
    }
    .hero-cine .hero__cuerpo { max-width: none; }
    .hero-cine .hero h1,
    .hero-cine .hero h1 em { color: #fff; }
    .hero-cine .hero__texto {
        color: rgba(255, 255, 255, 0.92);
        max-width: 20rem;
        text-shadow: 0 1px 12px rgba(0, 0, 0, 0.45);
    }
    .hero-cine .hero h1 { text-shadow: 0 2px 18px rgba(0, 0, 0, 0.45); }
    .hero-cine .hero__micro { color: rgba(255, 255, 255, 0.9); }
    .hero-cine .hero__micro svg { color: #fff; }
    .hero-cine .pastilla {
        background: rgba(255, 255, 255, 0.16);
        color: #fff;
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
    }
    .hero-cine .sello {
        background: rgba(12, 16, 28, 0.46);
        box-shadow: 0 2px 12px rgba(0, 0, 0, 0.3);
        color: #fff;
    }
    .hero-cine .sello__nota,
    .hero-cine .sello__nota strong,
    .hero-cine .sello__dato-titulo { color: #fff; }
    .hero-cine .sello__pie { color: rgba(255, 255, 255, 0.82); }
    .hero-cine .sello__dato-icono {
        background: rgba(255, 255, 255, 0.18);
        color: #fff;
    }
    .hero-banda .hero {
        display: flex;
        flex-direction: column;
        min-height: 100svh;
        padding: 0 0 2rem;
    }
    .hero-banda .hero__foto {
        position: relative;
        inset: auto;
        width: 100%;
        height: auto;
        aspect-ratio: 16 / 9;
        z-index: 0;
        margin-bottom: 1.4rem;
    }
    .hero-banda .hero__foto img,
    .hero-banda .hero__foto .hero__video {
        width: 100%; height: 100%;
        object-fit: cover;
        border-bottom-left-radius: 0;
    }
    .hero-banda .hero__foto:has(.hero__video),
    .hero-banda .hero__foto:has(.hero__carrusel) { aspect-ratio: 4 / 3; }
    .hero-banda .hero__foto::after {
        background: linear-gradient(0deg,
            rgb(var(--fondo-rgb)) 0%,
            rgba(var(--fondo-rgb), 0) 18%);
    }
    .hero-banda .hero__cuerpo {
        max-width: none;
        padding: 0 1.25rem;
        flex: 1;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }
    .hero-banda .hero__texto { max-width: none; }
}
.junto { white-space: nowrap; }
#gdpr-cookie-consent-show-again {
    left: 1rem !important;
    right: auto !important;
}
@media (max-width: 899px) {
    #gdpr-cookie-consent-show-again {
        bottom: calc(var(--gmlr-alto-flotante, 5.2rem) + 0.9rem) !important;
        transition: bottom 0.25s ease;
    }
}
body #gdpr-cookie-consent-show-again,
body #gdpr-cookie-consent-bar,
body .gdprmodal-content {
    box-shadow: none !important;
}
.single-gmlr_landing .bfr-boton-container,
.single-gmlr_landing .gtranslate_wrapper,
.single-gmlr_landing [id^="gt-wrapper-"] {
    display: none !important;
}
.single-gmlr_landing #gdpr-cookie-consent-show-again {
    background-color: var(--verde) !important;
    color: #fff !important;
}
.single-gmlr_landing .gdpr_action_button,
.single-gmlr_landing #cookie_action_accept,
.single-gmlr_landing #cookie_action_accept_all,
.single-gmlr_landing #cookie_action_reject {
    background-color: var(--verde) !important;
    border-color: var(--verde) !important;
    color: #fff !important;
}
.single-gmlr_landing .gdpr_action_button[data-gdpr_action="settings"],
.single-gmlr_landing #cookie_action_settings {
    background-color: transparent !important;
    color: var(--verde) !important;
}
.single-gmlr_landing .gdprmodal a:not(.gdpr_action_button),
.single-gmlr_landing #cookie_action_link,
.single-gmlr_landing .always-active,
.single-gmlr_landing .gdprmodal-header p {
    color: var(--verde) !important;
}
.single-gmlr_landing input:checked + .gdpr-switch-slider,
.single-gmlr_landing input:checked + .slider {
    background-color: var(--verde) !important;
}
.single-gmlr_landing .gdprmodal-body {
    scrollbar-color: var(--verde) transparent !important;
}
@media (min-width: 900px) {
    .l-pie,
    .pie-interior {
        padding-bottom: max(6.5rem, calc(var(--gmlr-alto-flotante, 0px) + 1.6rem));
    }
}
body.marca-amicks {
    --verde:        #966000;
    --verde-tinta:  #161412;
    --verde-suave:  #f1e5cf;
    --tinta:        #161412;
    --texto-2:      #5c554c;
    --fondo:        #f6f0e6;
    --fondo-rgb:    246, 240, 230;
    --fondo-suave:  #eee5d6;
    --borde:        #e0d5c3;
    --resalte-fondo: #f6e3bf;
    --resalte-tinta: #6b4400;
    --sombra-tarjeta:  0 8px 28px rgba(22, 20, 18, 0.08);
    --sombra-flotante: 0 10px 30px rgba(22, 20, 18, 0.30);
}
body.marca-amicks .hero__sellos {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 1fr;
    align-items: stretch;
    width: max-content;
    max-width: 100%;
}
body.marca-amicks .hero__sellos-datos { display: contents; }
body.marca-amicks .hero__sellos .sello { min-width: 0; }
body.marca-amicks .sello--dato {
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 2px;
}
body.marca-amicks .sello--dato .sello__dato-icono {
    width: 20px;
    height: 20px;
    margin: 0;
    background: none;
}
body.marca-amicks .sello--dato .sello__dato-icono svg { width: 20px; height: 20px; }
@media (min-width: 1024px) and (max-width: 1279px) {
    body.marca-amicks .mosaico__pista > .mosaico__col:nth-last-child(-n+5) { display: none; }
}
@media (min-width: 1280px) and (max-width: 1439px) {
    body.marca-amicks .mosaico__pista > .mosaico__col:nth-last-child(-n+4) { display: none; }
}
@media (min-width: 1440px) {
    body.marca-amicks .mosaico__pista > .mosaico__col:nth-last-child(-n+3) { display: none; }
}
@media (min-width: 1024px) and (max-width: 1799px) {
    body.marca-amicks .mosaico__grande { width: 180px; }
    body.marca-amicks .mosaico__par    { width: 127px; }
    body.marca-amicks .mosaico__cita   { width: 220px; }
}
@media (min-width: 900px) {
    body.marca-amicks .hero h1 { font-size: clamp(2.7rem, 3.4vw, 3.2rem); }
}
@media (max-width: 374px) {
    body.marca-amicks .hero h1 { font-size: 1.75rem; }
}
@media (max-width: 899px) {
    body.marca-amicks.hero-cine .hero__foto { overflow: hidden; }
    body.marca-amicks.hero-cine .hero__foto img[src*="hero-brasa"] {
        transform: scale(1.45);
        transform-origin: 60% 100%;
    }
}
@font-face {
    font-family: 'Cormorant Garamond';
    src: url('fonts/cormorant-garamond.woff2') format('woff2');
    font-weight: 300 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Cormorant Garamond';
    src: url('fonts/cormorant-garamond-italic.woff2') format('woff2');
    font-weight: 300 700;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Inter Tight';
    src: url('fonts/inter-tight.woff2') format('woff2');
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}
body.marca-amicks.estilo-netzero {
    --serif: 'Cormorant Garamond', Georgia, serif;
    --sans: 'Inter Tight', system-ui, -apple-system, sans-serif;
    --fondo:        #e1ccbe;
    --fondo-rgb:    225, 204, 190;
    --fondo-suave:  #ecdccd;
    --borde:        #d4bba8;
    --tinta:        #1a140f;
    --texto-2:      #5f5147;
    --verde:        #1a140f;
    --verde-tinta:  #000000;
    --verde-suave:  #ecdccd;
    --resalte-fondo: #f1ddb6;
    --resalte-tinta: #5a3a00;
    --radio-tarjeta: 8px;
    --radio-boton:   999px;
    --sombra-tarjeta:  0 1px 0 rgba(26, 20, 15, 0.06);
    --sombra-flotante: 0 10px 30px rgba(26, 20, 15, 0.35);
}
body.estilo-netzero .tarjeta,
body.estilo-netzero .gpanel,
body.estilo-netzero .opinion,
body.estilo-netzero .faq__item,
body.estilo-netzero .categoria,
body.estilo-netzero .mosaico__cita,
body.estilo-netzero .chip--boton,
body.estilo-netzero .boton--mapa,
body.estilo-netzero .beneficio__icono,
body.estilo-netzero .mapa__distancia { background: var(--fondo-suave); }
body.estilo-netzero h1,
body.estilo-netzero h2,
body.estilo-netzero h3 { font-weight: 500; letter-spacing: -0.01em; }
body.estilo-netzero .hero h1 { font-size: clamp(2.1rem, 9.6vw, 2.6rem); line-height: 1.05; }
@media (min-width: 900px) {
    body.estilo-netzero .hero h1 { font-size: clamp(3rem, 3.9vw, 3.7rem); }
}
body.estilo-netzero .hero h1 em,
body.estilo-netzero .mosaico__titulo em { color: #6b4400; font-style: italic; }
body.estilo-netzero .pastilla {
    background: transparent;
    padding-left: 0;
    letter-spacing: 0.2em;
    font-weight: 600;
    font-size: 0.72rem;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}
body.estilo-netzero .pastilla svg { display: none; }
body.estilo-netzero .boton { border-radius: 999px; letter-spacing: 0.04em; }
body.estilo-netzero .boton--principal { background: #1a140f; color: #f3e7dc; }
body.estilo-netzero .boton--principal:hover { background: #000; }
body.estilo-netzero .boton--secundario {
    background: transparent;
    color: #1a140f;
    border: 1px solid #1a140f;
}
@media (min-width: 900px) {
    body.estilo-netzero .hero__foto .hero__video--movil,
    body.estilo-netzero .hero__foto img { object-position: 50% 12%; }
}
@media (max-width: 899px) {
    body.estilo-netzero.hero-cine .hero__botones .boton--principal { background: #f3e7dc; color: #1a140f; }
    body.estilo-netzero.hero-cine .hero__botones .boton--secundario { color: #fff; border-color: rgba(255,255,255,0.8); }
}
@media (max-width: 899px) {
    body.estilo-netzero.hero-cine .hero h1 em { color: #e8b44a; }
}
body.estilo-netzero .cta-flotante__bloque {
    background: #ecdccd;
    border-radius: 26px;
    box-shadow: 0 10px 30px rgba(26, 20, 15, 0.28);
}
body.estilo-netzero .cta-flotante__bloque .boton,
body.estilo-netzero .cta-flotante__bloque .boton--principal {
    border-radius: 0;
    background: #1a140f;
    color: #f3e7dc;
    border: 0;
}
body.estilo-netzero .cta-aviso { color: #1a140f; }
body.estilo-netzero .cta-aviso.mostrar { border-bottom-color: #d4bba8; }
body.estilo-netzero .cta-aviso__icono { background: #1a140f; color: #f3e7dc; }
body.estilo-netzero .cta-aviso__detalle { color: #5f5147; }
body.estilo-netzero .cta-flotante::before {
    background: linear-gradient(0deg, rgba(225, 204, 190, 0.96) 55%, rgba(225, 204, 190, 0));
}
body.marca-amicks .gpanel__chips .chip:not(.chip--boton) {
    background: #fff;
    border: 1px solid var(--g-borde);
}
body.estilo-netzero .gpanel__chips .chip,
body.estilo-netzero .gpanel__chips .chip--boton,
body.estilo-netzero .gpanel__chips .chip:not(.chip--boton) {
    background: transparent;
    border: 1px solid #8f7a6a;
    color: #1a140f;
}
body.estilo-netzero .gpanel__chips .chip b { color: #5f5147; }
body.estilo-netzero .gpanel__chips .chip--boton:hover { background: rgba(26, 20, 15, 0.06); }
body.estilo-netzero .gpanel__chips .chip--boton.chip--activo {
    background: #1a140f;
    border-color: #1a140f;
    color: #f3e7dc;
}
body.estilo-netzero .gpanel__chips .chip--boton.chip--activo b { color: #d4bba8; }
@media (hover: none) {
    .boton,
    .mapa__distancia,
    .chip--boton,
    .reel__sonido,
    a.categoria { transition: transform 0.12s ease; }
    .boton:active,
    .mapa__distancia:active,
    .chip--boton:active,
    .reel__sonido:active { transform: scale(0.97); }
    a.categoria:active { transform: scale(0.98); }
    .faq__pregunta,
    .carta-seccion__cabecera,
    .historia__resumen { transition: opacity 0.12s ease; }
    .faq__pregunta:active,
    .carta-seccion__cabecera:active,
    .historia__resumen:active { opacity: 0.7; }
}
@font-face {
    font-family: 'Fredericka the Great';
    src: url('fonts/fredericka.woff2') format('woff2');
    font-weight: 400;
    font-display: swap;
}
body.marca-bona-sort {
    --verde:        #dd7222;
    --verde-tinta:  #b85c18;
    --verde-suave:  #241c14;
    --tinta:        #f2ece4;
    --texto-2:      #b8aea1;
    --fondo:        #12100e;
    --fondo-rgb:    18, 16, 14;
    --fondo-suave:  #1c1915;
    --borde:        #2e2820;
    --resalte-fondo: #3a2a16;
    --resalte-tinta: #f0b169;
    --sombra-tarjeta:  0 8px 28px rgba(0, 0, 0, 0.45);
    --sombra-flotante: 0 10px 30px rgba(0, 0, 0, 0.6);
    --g-tinta: #f2ece4;
    --g-texto: #d8d0c4;
    --g-suave: #a89e91;
    --g-borde: #332c24;
}
body.marca-bona-sort h1,
body.marca-bona-sort h2,
body.marca-bona-sort .seccion__titulo,
body.marca-bona-sort .mosaico__titulo {
    font-family: 'Fredericka the Great', Georgia, serif;
    font-weight: 400;
    letter-spacing: 0.01em;
    line-height: 1.12;
}
body.marca-bona-sort .hero h1 { font-size: clamp(2rem, 8.6vw, 2.5rem); }
@media (min-width: 900px) {
    body.marca-bona-sort .hero h1 { font-size: clamp(2.6rem, 3vw, 3rem); }
}
body.marca-bona-sort .tarjeta,
body.marca-bona-sort .gpanel,
body.marca-bona-sort .opinion,
body.marca-bona-sort .faq__item,
body.marca-bona-sort .categoria,
body.marca-bona-sort .mosaico__cita,
body.marca-bona-sort .chip--boton,
body.marca-bona-sort .chip,
body.marca-bona-sort .gpanel__tema,
body.marca-bona-sort .boton--mapa,
body.marca-bona-sort .beneficio__icono,
body.marca-bona-sort .mapa__distancia {
    background: var(--fondo-suave);
    border-color: var(--borde);
}
body.marca-bona-sort .chip { border: 1px solid var(--borde); }
body.marca-bona-sort .chip--boton.chip--activo {
    background: rgba(221, 114, 34, 0.16);
    border-color: rgba(221, 114, 34, 0.42);
    color: var(--verde);
}
body.marca-bona-sort .chip--boton.chip--activo b { color: var(--verde); }
body.marca-bona-sort .chip--boton:hover { background: rgba(242, 236, 228, 0.06); }
body.marca-bona-sort .tema-cita__texto { color: var(--tinta); }
body.marca-bona-sort #gdpr-cookie-consent-show-again {
    box-shadow: none !important;
    border: 1px solid rgba(0, 0, 0, 0.35) !important;
}
body.marca-bona-sort .sello {
    background: rgba(255, 255, 255, 0.07);
    box-shadow: none;
    border: 1px solid var(--borde);
    color: var(--tinta);
}
body.marca-bona-sort .sello__nota,
body.marca-bona-sort .sello__nota strong,
body.marca-bona-sort .sello__dato-titulo { color: var(--tinta); }
body.marca-bona-sort .sello__pie { color: var(--texto-2); }
body.marca-bona-sort .beneficio__icono {
    background: rgba(221, 114, 34, 0.14);
    border: 1px solid rgba(221, 114, 34, 0.34);
    box-shadow: none;
}
body.marca-bona-sort .pastilla {
    background: rgba(242, 236, 228, 0.07);
    border: 1px solid rgba(242, 236, 228, 0.22);
    color: rgba(242, 236, 228, 0.78);
    font-weight: 600;
}
body.marca-bona-sort .pastilla svg { opacity: 0.65; }
body.marca-bona-sort .boton--principal {
    background: var(--verde);
    color: #12100e;
}
body.marca-bona-sort .boton--principal:hover { background: var(--verde-tinta); color: #fff; }
body.marca-bona-sort .boton--secundario {
    background: transparent;
    color: var(--tinta);
    border-color: var(--borde);
}
.premio__caja {
    position: relative;
    max-width: 36rem;
    margin: 0 auto;
    padding: 2.6rem 1.6rem 2rem;
    text-align: center;
    background: var(--fondo-suave);
    border: 1px solid var(--borde);
    border-radius: var(--radio-tarjeta, 18px);
}
.premio__sello {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    margin-bottom: 1.5rem;
    color: var(--verde);
}
.premio__sello-centro {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.28rem;
}
.premio__estrellas {
    display: inline-flex;
    align-items: flex-end;
    gap: 2px;
    margin-bottom: 0.3rem;
}
.premio__estrella { display: inline-flex; }
.premio__estrellas svg { display: block; }
.premio__marca {
    max-width: 10.5rem;
    font-size: 0.8rem;
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    text-align: center;
    font-family: var(--sans);
}
.premio__sello svg.premio__rama { width: 40px; height: 62px; flex: none; }
.premio__sello svg.premio__rama:last-of-type { transform: scaleX(-1); }
@media (min-width: 900px) {
    .premio__sello svg.premio__rama { width: 46px; height: 72px; }
}
.premio__ano {
    margin-top: 0.3rem;
    font-family: var(--sans);
    font-size: 0.68rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.16em;
    color: var(--verde);
    opacity: 0.8;
}
.premio__icono {
    display: inline-flex;
    width: 3.2rem; height: 3.2rem;
    align-items: center; justify-content: center;
    margin-bottom: 0.9rem;
    border-radius: 50%;
    background: var(--verde);
    color: var(--fondo);
}
.premio__icono svg { width: 30px; height: 30px; }
.premio__titular {
    margin: 0;
    font-family: var(--serif);
    font-size: clamp(1.3rem, 5vw, 1.65rem);
    line-height: 1.25;
    color: var(--tinta);
}
.premio__apoyo {
    margin: 0.5rem 0 0;
    font-size: 0.95rem;
    color: var(--texto-2);
}
.premio__detalle {
    margin: 1.2rem 0 0;
    padding-top: 1.1rem;
    border-top: 1px solid var(--borde);
    font-size: 0.82rem;
    line-height: 1.5;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    color: var(--texto-2);
}
.historia__foto { margin: 0 0 1.2rem; }
.historia__foto img {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    border-radius: 14px;
}
.historia--abierta .historia__foto img {
    aspect-ratio: 4 / 5;
    object-position: center 32%;
}
.historia__foto figcaption {
    margin-top: 0.55rem;
    font-size: 0.82rem;
    line-height: 1.45;
    color: var(--texto-2);
}
.carta-tarjeta__lista,
.carta__pista,
.gpanel__lista,
[data-carta-pista] {
    scrollbar-width: thin;
    scrollbar-color: var(--borde) transparent;
}
.carta-tarjeta__lista::-webkit-scrollbar,
.carta__pista::-webkit-scrollbar,
.gpanel__lista::-webkit-scrollbar,
[data-carta-pista]::-webkit-scrollbar { width: 6px; height: 6px; }
.carta-tarjeta__lista::-webkit-scrollbar-track,
.carta__pista::-webkit-scrollbar-track,
.gpanel__lista::-webkit-scrollbar-track,
[data-carta-pista]::-webkit-scrollbar-track { background: transparent; }
.carta-tarjeta__lista::-webkit-scrollbar-thumb,
.carta__pista::-webkit-scrollbar-thumb,
.gpanel__lista::-webkit-scrollbar-thumb,
[data-carta-pista]::-webkit-scrollbar-thumb {
    background: var(--borde);
    border-radius: 999px;
}
.carta-tarjeta__lista::-webkit-scrollbar-thumb:hover,
.carta__pista::-webkit-scrollbar-thumb:hover,
[data-carta-pista]::-webkit-scrollbar-thumb:hover { background: var(--texto-2); }
body.marca-bona-sort .l-pie img { width: 172px; }
@media (min-width: 900px) {
    body.marca-bona-sort .l-pie img { width: 196px; }
}
body.marca-bona-sort .l-pie { color: rgba(24, 20, 16, 0.86); }
body.marca-bona-sort .l-pie a { color: #18140f; }
body.marca-bona-sort .l-pie__nombre { display: none; }
.l-pie { position: relative; z-index: 46; }
.cta-flotante { z-index: 47; }
.cta-flotante::before { transition: opacity 0.25s ease; }
.cta-flotante--sobre-pie::before { opacity: 0; }
.estrellas--thefork { display: inline-flex; gap: 1px; }
.sello--thefork .sello__nota strong { letter-spacing: -0.01em; }
.premio--sangre {
    position: relative;
    left: 50%;
    width: 100vw;
    margin-left: -50vw;
    margin-top: 2.2rem;
    margin-bottom: 2.2rem;
    padding: 3.4rem 1.25rem;
    overflow: hidden;
    isolation: isolate;
}
.premio__fondo {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: -2;
}
.premio__velo {
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        linear-gradient(180deg, rgba(0,0,0,0.55), rgba(0,0,0,0.78) 45%, rgba(0,0,0,0.6)),
        rgba(0,0,0,0.18);
}
.premio--sangre .premio__caja {
    background: none;
    border: 0;
    padding: 0;
    max-width: 30rem;
}
.premio--sangre .premio__titular,
.premio--sangre .premio__marca,
.premio--sangre .premio__ano { color: #fff; }
.premio--sangre .premio__sello { color: #f0c48a; }
.premio--sangre .premio__apoyo,
.premio--sangre .premio__detalle { color: rgba(255,255,255,0.82); }
.premio--sangre .premio__detalle { border-top-color: rgba(255,255,255,0.28); }
.premio--sangre .premio__detalle a:hover { color: #fff; }
@media (min-width: 900px) {
    .premio--sangre { padding: 5rem 1.25rem; }
}
@media (min-width: 1024px) {
    body.marca-bona-sort .mosaico__pista > .mosaico__col {
        flex-basis: 0;
        flex-shrink: 1;
        width: auto;
        min-width: 0;
    }
    body.marca-bona-sort .mosaico__grande { flex-grow: 240; }
    body.marca-bona-sort .mosaico__par    { flex-grow: 168; }
    body.marca-bona-sort .mosaico__cita   { flex-grow: 280; }
}
@media (min-width: 1024px) and (max-width: 1279px) {
    body.marca-bona-sort .mosaico__pista > .mosaico__col:nth-last-child(-n+5) { display: none; }
}
@media (min-width: 1280px) and (max-width: 1439px) {
    body.marca-bona-sort .mosaico__pista > .mosaico__col:nth-last-child(-n+4) { display: none; }
}
@media (min-width: 1440px) and (max-width: 1799px) {
    body.marca-bona-sort .mosaico__pista > .mosaico__col:nth-last-child(-n+3) { display: none; }
}
@media (min-width: 1800px) and (max-width: 2199px) {
    body.marca-bona-sort .mosaico__pista > .mosaico__col:nth-last-child(-n+2) { display: none; }
}
.patio__titulo { text-align: center; }
.patio__entrada {
    max-width: 42rem;
    margin: 0 auto 1.4rem;
    text-align: center;
    color: var(--texto-2);
    line-height: 1.6;
}
.patio__fotos {
    display: grid;
    gap: 0.7rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.patio__foto { margin: 0; }
.patio__foto img {
    display: block;
    width: 100%;
    aspect-ratio: 3 / 4;
    object-fit: cover;
    border-radius: 14px;
}
.patio__foto--grande { grid-column: 1 / -1; }
.patio__foto--grande img { aspect-ratio: 16 / 10; }
.patio__foto figcaption {
    margin-top: 0.5rem;
    font-size: 0.8rem;
    line-height: 1.45;
    color: var(--texto-2);
}
.patio__datos {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.7rem;
    margin: 1.5rem 0 0;
    padding: 0;
    list-style: none;
    text-align: center;
}
.patio__dato {
    padding: 0.9rem 0.6rem;
    border: 1px solid var(--borde);
    border-radius: var(--radio-tarjeta);
    background: var(--fondo-suave);
}
.patio__dato-cifra {
    display: block;
    font-family: var(--serif);
    font-size: 1.32rem;
    line-height: 1.15;
    color: var(--verde);
}
.patio__dato-pie {
    display: block;
    margin-top: 0.25rem;
    font-size: 0.8rem;
    line-height: 1.4;
    color: var(--texto-2);
}
@media (min-width: 900px) {
    .patio__fotos {
        max-width: 980px;
        margin-inline: auto;
        grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr);
        gap: 0.9rem;
        align-items: start;
    }
    .patio__fotos { align-items: stretch; }
    .patio__foto--grande {
        display: flex;
        flex-direction: column;
        grid-column: 1;
        grid-row: 1 / span 2;
    }
    .patio__foto--grande img {
        flex: 1;
        min-height: 0;
        aspect-ratio: auto;
    }
    .patio__foto img { aspect-ratio: 16 / 11; }
    .patio__datos { max-width: 980px; margin-inline: auto; gap: 0.9rem; }
    .patio__dato-cifra { font-size: 1.5rem; }
}
.camino { margin: 0; }
.camino__mapa {
    overflow: hidden;
    border: 1px solid var(--borde);
    border-radius: 16px;
    background: var(--fondo-suave);
}
.camino-mapa { display: block; width: 100%; height: auto; }
.camino-mapa__manzana { fill: color-mix(in srgb, var(--fondo-suave) 88%, var(--tinta)); }
.camino-mapa__parque  { fill: color-mix(in srgb, var(--fondo-suave) 78%, #6d7a3c); }
.camino-mapa__calles polyline {
    fill: none;
    stroke: var(--fondo);
    stroke-width: 17;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.camino-mapa__chaflanes circle { fill: var(--fondo); }
.camino-mapa__templo { fill: var(--tinta); opacity: 0.9; }
.camino-mapa__nombre {
    font-family: var(--sans);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    fill: var(--texto-2);
}
.camino-mapa__ruta-fondo {
    fill: none;
    stroke: #fff;
    stroke-width: 11;
    stroke-linecap: round;
    stroke-linejoin: round;
    opacity: 0.85;
}
.camino-mapa__ruta {
    fill: none;
    stroke: var(--verde);
    stroke-width: 5.5;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-dasharray: 0.1 10;
    animation: camino-pasos 1.4s linear infinite;
}
@keyframes camino-pasos { to { stroke-dashoffset: -10.1; } }
@media (prefers-reduced-motion: reduce) { .camino-mapa__ruta { animation: none; } }
.camino-mapa__llegada { fill: #fff; stroke: var(--verde); stroke-width: 3; }
.camino-mapa__rotulo {
    font-family: var(--sans);
    font-size: 17px;
    font-weight: 700;
    fill: var(--tinta);
    paint-order: stroke;
    stroke: var(--fondo);
    stroke-width: 5px;
    stroke-linejoin: round;
}
.camino-mapa__rotulo--templo { fill: #fff; stroke: none; font-size: 14px; }
.camino-mapa__pin-halo  { fill: var(--verde); opacity: 0.18; }
.camino-mapa__pin-punto { fill: var(--verde); }
.camino-mapa__pin-ojo   { fill: #fff; }
.camino-mapa__norte path { fill: var(--tinta); }
.camino-mapa__norte text { font-family: var(--sans); font-size: 10px; font-weight: 700; fill: var(--tinta); }
@media (max-width: 600px) {
    .camino-mapa__nombre { font-size: 14px; }
    .camino-mapa__rotulo { font-size: 21px; stroke-width: 6px; }
    .camino-mapa__rotulo--templo { font-size: 16px; }
}
.camino__pie {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.4rem 1rem;
    margin-top: 0.6rem;
}
.camino__chip {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    color: var(--tinta);
    font-size: 0.92rem;
}
.camino__chip svg { color: var(--verde); flex: none; }
.camino__chip strong { font-size: 1.05rem; color: var(--verde); }
.camino__credito { font-size: 0.72rem; color: var(--texto-2); }
.camino__cita {
    margin: 1.15rem 0 0;
    padding: 0.9rem 1rem 0.85rem;
    border-left: 3px solid var(--verde);
    border-radius: 0 12px 12px 0;
    background: var(--fondo-suave);
}
.camino__cita p {
    margin: 0 0 0.45rem;
    font-family: var(--serif);
    font-size: 1.02rem;
    line-height: 1.45;
    color: var(--tinta);
}
.camino__cita footer { font-size: 0.8rem; color: var(--texto-2); }
.camino__cita footer strong { color: var(--tinta); }
.camino__traducida { display: block; margin-top: 0.15rem; font-style: italic; }
@media (max-width: 1023px) { .tarjeta__col--mapa .camino { margin-top: 1.1rem; } }
.camino + .boton--mapa { margin-top: 0.9rem; }
.camino-video {
    margin: 0.2rem 0 1.2rem;
}
.camino-video video {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 5;
    object-fit: cover;
    object-position: 50% 0;
    border-radius: 16px;
    background: var(--fondo-suave);
}
.camino-video figcaption {
    margin-top: 0.45rem;
    font-size: 0.78rem;
    line-height: 1.35;
    color: var(--texto-2);
}
@media (min-width: 1024px) {
    .tarjeta__col.tarjeta__col--con-video {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 10.5rem;
        column-gap: 1.7rem;
        align-items: start;
        align-content: start;
    }
    .tarjeta__col--con-video > * { grid-column: 1; }
    .tarjeta__col--con-video > .seccion__titulo,
    .tarjeta__col--con-video > .camino__cita { grid-column: 1 / -1; }
    .tarjeta__col--con-video > .camino-video {
        grid-column: 2;
        grid-row: 2 / span var(--camino-filas, 3);
        margin: 0.2rem 0 0;
    }
    .camino-video video { aspect-ratio: 9 / 16; }
}
.camino__sv ~ .boton--mapa { margin-top: 0.6rem; }
.panorama {
    width: 100vw;
    max-width: 100vw;
    height: 100vh;
    height: 100dvh;
    max-height: 100dvh;
    margin: 0;
    padding: 0;
    border: 0;
    background: #111;
    color: #fff;
}
.panorama[open] {
    display: flex;
    flex-direction: column;
}
.panorama::backdrop { background: rgba(0, 0, 0, 0.85); }
.panorama__barra {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.7rem 1rem;
}
.panorama__titulo {
    margin: 0;
    font-family: var(--serif);
    font-size: 1rem;
    line-height: 1.3;
}
.panorama__cerrar {
    flex: none;
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    min-height: 44px;
    padding: 0 1rem;
    border: 1px solid rgba(255, 255, 255, 0.45);
    border-radius: 999px;
    background: transparent;
    color: #fff;
    font: 600 0.9rem var(--sans);
    cursor: pointer;
}
.panorama__cerrar:hover { background: rgba(255, 255, 255, 0.12); }
.panorama__visor {
    flex: 1 1 0;
    min-height: 0;
    background: #222;
}
.panorama__visor iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}
.panorama__pie {
    margin: 0;
    padding: 0.6rem 1rem 0.8rem;
    font-size: 0.8rem;
    line-height: 1.4;
    color: rgba(255, 255, 255, 0.8);
}
.gpanel__reciente {
    margin: -0.7rem 0 1.3rem;
    padding: 0.55rem 0.8rem;
    border-radius: 10px;
    background: var(--resalte-fondo);
    color: var(--resalte-tinta);
    font-size: 0.84rem;
    font-weight: 600;
    line-height: 1.35;
}
@font-face {
    font-family: 'Trirong';
    src: url('fonts/trirong-500.woff2') format('woff2');
    font-weight: 500;
    font-display: swap;
}
@font-face {
    font-family: 'Trirong';
    src: url('fonts/trirong-600.woff2') format('woff2');
    font-weight: 600;
    font-display: swap;
}
body.marca-via-napoli {
    --verde:        #8f2a33;
    --verde-tinta:  #6f1f27;
    --verde-suave:  #f3e4e5;
    --tinta:        #3a3634;
    --texto-2:      #6b5a51;
    --fondo:        #f3edea;
    --fondo-rgb:    243, 237, 234;
    --fondo-suave:  #e9e0db;
    --borde:        #d4cac4;
    --resalte-fondo: #f3e0e2;
    --resalte-tinta: #6f1f27;
    --sombra-tarjeta:  0 8px 28px rgba(58, 54, 52, 0.10);
    --sombra-flotante: 0 10px 30px rgba(111, 31, 39, 0.28);
}
body.marca-via-napoli h1,
body.marca-via-napoli h2,
body.marca-via-napoli .seccion__titulo,
body.marca-via-napoli .mosaico__titulo,
body.marca-via-napoli .gracias__titulo {
    font-family: 'Trirong', Georgia, serif;
    font-weight: 600;
    letter-spacing: -0.005em;
}
body.marca-via-napoli .hero h1 { line-height: 1.12; }
body.marca-via-napoli .pastilla {
    background: rgba(243, 228, 229, 0.94);
    color: var(--verde-tinta);
}
body.marca-via-napoli .beneficio__icono {
    background: var(--verde-suave);
    color: var(--verde);
}
body.marca-via-napoli .mosaico__comilla { color: var(--verde); }
body.marca-via-napoli .reserva__velo {
    background: linear-gradient(180deg, rgba(42, 38, 36, 0.72), rgba(42, 38, 36, 0.9));
}
@media (max-width: 767px) {
    body.marca-via-napoli.hero-banda .hero { min-height: 0; }
}
@media (min-width: 1024px) {
    body.marca-via-napoli .hero h1 {
        font-size: clamp(2.45rem, 2.85vw, 3.1rem);
        white-space: nowrap;
    }
    body.marca-via-napoli .hero h1 br { display: none; }
    body.marca-via-napoli .hero h1 .salto-pc { display: block; }
    body.marca-via-napoli .hero__cuerpo { max-width: none; }
    body.marca-via-napoli .hero__foto {
        font-size: clamp(2.45rem, 2.85vw, 3.1rem);
        width: calc(100% - clamp(2rem, 6vw, 5rem) - 17.4em);
    }
}
@media (min-width: 1024px) {
    body.marca-via-napoli .mosaico__pista > .mosaico__col {
        flex-basis: 0;
        flex-shrink: 1;
        width: auto;
        min-width: 0;
    }
    body.marca-via-napoli .mosaico__grande { flex-grow: 240; }
    body.marca-via-napoli .mosaico__par    { flex-grow: 168; }
    body.marca-via-napoli .mosaico__cita   { flex-grow: 280; }
}
@media (min-width: 1024px) and (max-width: 1279px) {
    body.marca-via-napoli .mosaico__pista > .mosaico__col:nth-last-child(-n+5) { display: none; }
}
@media (min-width: 1280px) and (max-width: 1439px) {
    body.marca-via-napoli .mosaico__pista > .mosaico__col:nth-last-child(-n+4) { display: none; }
}
@media (min-width: 1440px) and (max-width: 1679px) {
    body.marca-via-napoli .mosaico__pista > .mosaico__col:nth-last-child(-n+3) { display: none; }
}
@media (min-width: 1680px) and (max-width: 2199px) {
    body.marca-via-napoli .mosaico__pista > .mosaico__col:nth-last-child(-n+2) { display: none; }
}
@media (min-width: 1024px) {
    body.marca-via-napoli .carta__pista { grid-template-columns: repeat(4, 1fr); }
}
@media (max-width: 759px) {
    body.marca-via-napoli .perros__pieza--principal img[src*="terraza-puerta"] { object-position: 50% 8%; }
}
body.marca-via-napoli .camino__mapa { aspect-ratio: 477 / 245; }
body.marca-via-napoli .camino-mapa  { height: 100%; }
@media (min-width: 1024px) {
    body.marca-via-napoli .tarjeta__col--mapa .camino {
        flex: 1 1 0;
        display: flex;
        flex-direction: column;
        min-height: 0;
    }
    body.marca-via-napoli .camino__mapa {
        position: relative;
        aspect-ratio: auto;
        flex: 1 1 0;
        min-height: 16rem;
    }
    body.marca-via-napoli .camino__mapa .camino-mapa {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
    }
}
@media (min-width: 1024px) {
    body.marca-via-napoli .reels .seccion__titulo { text-align: center; }
}
body.marca-via-napoli .hero__sellos {
    display: inline-grid;
    grid-auto-flow: column;
    grid-auto-columns: 1fr;
    align-items: stretch;
    width: max-content;
    max-width: 100%;
    align-self: flex-start;
}
.premio__emblema {
    display: block;
    width: 196px;
    height: auto;
    margin: 0 auto 1.1rem;
    color: #efcd92;
    filter: drop-shadow(0 6px 18px rgba(0, 0, 0, 0.35));
}
.premio__emblema-disco { fill: rgba(22, 17, 14, 0.46); }
.premio__emblema-texto,
.premio__emblema-cinta text {
    font-family: 'Trirong', Georgia, serif;
    font-weight: 600;
}
.premio__emblema-banda { fill: #e6c283; }
.premio__emblema-cola { fill: #b88f52; }
.premio__emblema-pliegue { fill: #7d6035; }
.premio__emblema-cinta text { fill: #2b2420; }
@media (max-width: 767px) {
    .premio__emblema { width: 168px; }
}
.carta-pestanas { margin-top: 1.4rem; }
.carta-pestanas__lista {
    display: flex;
    gap: 0.5rem;
    overflow-x: auto;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    padding: 0.2rem 0.1rem 0.5rem;
    margin: 0 -1.25rem 1.1rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    scroll-padding: 0 1.25rem;
}
.carta-pestanas__lista::-webkit-scrollbar { display: none; }
.carta-pestanas__boton {
    flex: none;
    font: inherit;
    font-size: 0.95rem;
    font-weight: 600;
    line-height: 1;
    padding: 0.7rem 1.05rem;
    border-radius: 999px;
    border: 1px solid var(--borde);
    background: rgba(255, 255, 255, 0.55);
    color: var(--tinta);
    cursor: pointer;
    white-space: nowrap;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
    -webkit-tap-highlight-color: transparent;
}
.carta-pestanas__boton:hover { border-color: var(--verde); }
.carta-pestanas__boton[aria-selected="true"] {
    background: var(--verde);
    border-color: var(--verde);
    color: #fff;
}
.carta-pestanas__boton:focus-visible { outline: 2px solid var(--verde); outline-offset: 2px; }
.carta-pestanas__panel {
    background: #fff;
    border-radius: 18px;
    box-shadow: var(--sombra-tarjeta);
    overflow: hidden;
}
.carta-pestanas__foto { margin: 0; }
.carta-pestanas__foto img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 2 / 1;
    object-fit: cover;
}
.carta-pestanas__platos { padding: 0.4rem 0 0.2rem; }
.carta-pestanas__grupo { break-inside: auto; }
.carta-pestanas__subtitulo {
    margin: 0;
    padding: 0.95rem 1rem 0.15rem;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--verde);
    break-after: avoid;
}
.carta-pestanas .carta-platos { padding-bottom: 0.4rem; }
.carta-pestanas .carta-plato { break-inside: avoid; }
.carta-pestanas__ver {
    display: block;
    margin: 0.2rem auto 1.1rem;
    font: inherit;
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--verde);
    background: var(--verde-suave);
    border: 0;
    border-radius: 999px;
    padding: 0.75rem 1.4rem;
    cursor: pointer;
}
.carta-pestanas__ver:focus-visible { outline: 2px solid var(--verde); outline-offset: 2px; }
@media (max-width: 899px) {
    .carta-pestanas__panel:not(.esta-abierto) .es-extra { display: none; }
}
@media (min-width: 900px) {
    .carta-pestanas__lista {
        flex-wrap: wrap;
        justify-content: center;
        overflow: visible;
        margin: 0 0 1.4rem;
        padding: 0;
    }
    .carta-pestanas__foto img { aspect-ratio: 3 / 1; }
    .carta-pestanas__platos {
        columns: 2;
        column-gap: 2.2rem;
        padding: 0.8rem 1.2rem 1rem;
    }
    .carta-pestanas__ver { display: none; }
    .carta-pestanas__panel--plegar-pc:not(.esta-abierto) .es-extra { display: none; }
    .carta-pestanas__panel--plegar-pc .carta-pestanas__ver { display: block; }
}
body.marca-via-napoli .premio__velo {
    background:
        linear-gradient(180deg, rgba(20,14,12,0.70), rgba(20,14,12,0.86) 45%, rgba(20,14,12,0.74)),
        rgba(0,0,0,0.22);
}
.cerca__intro { margin: -0.4rem 0 1rem; color: var(--texto-2); }
.cerca__lista {
    list-style: none;
    margin: 0;
    padding: 0.35rem 1.1rem;
    background: #fff;
    border: 1px solid var(--borde);
    border-radius: var(--radio-tarjeta);
    box-shadow: var(--sombra-tarjeta);
}
.cerca__sitio {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.85rem 0;
    border-bottom: 1px solid var(--borde);
}
.cerca__sitio:last-child { border-bottom: 0; }
.cerca__texto { display: flex; flex-direction: column; gap: 0.15rem; min-width: 0; }
.cerca__nombre { font-family: var(--serif); font-weight: 600; font-size: 1.04rem; color: var(--tinta); line-height: 1.25; }
.cerca__nota { font-size: 0.86rem; color: var(--texto-2); line-height: 1.35; }
.cerca__tiempo {
    flex: none;
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    color: var(--verde);
    white-space: nowrap;
}
.cerca__tiempo strong { font-size: 1.02rem; }
.cerca__pie { margin: 0.7rem 0 0; font-size: 0.74rem; color: var(--texto-2); }
@media (min-width: 900px) {
    .cerca__lista {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
        gap: 1rem;
        padding: 0;
        background: none;
        border: 0;
        box-shadow: none;
    }
    .cerca__sitio {
        flex-direction: column-reverse;
        align-items: flex-start;
        justify-content: flex-end;
        gap: 0.55rem;
        padding: 1.2rem 1.15rem 1.25rem;
        background: #fff;
        border: 1px solid var(--borde);
        border-radius: var(--radio-tarjeta);
        box-shadow: var(--sombra-tarjeta);
    }
    .cerca__sitio:last-child { border-bottom: 1px solid var(--borde); }
    .cerca__tiempo strong { font-size: 1.35rem; }
}
.platos-prensa__titulo { text-align: center; }
.platos-prensa__entrada {
    max-width: 38rem;
    margin: -0.3rem auto 1.4rem;
    text-align: center;
    color: var(--texto-2);
    line-height: 1.6;
}
.platos-prensa__rejilla { display: grid; gap: 0.8rem; }
.plato-prensa {
    position: relative;
    display: flex;
    align-items: flex-end;
    min-height: 360px;
    overflow: hidden;
    isolation: isolate;
    border-radius: var(--radio-tarjeta);
    background: var(--fondo-suave);
}
.plato-prensa__foto {
    position: absolute; inset: 0; z-index: -2;
    width: 100%; height: 100%;
    object-fit: cover;
    transition: transform 1.2s cubic-bezier(.2, .7, .2, 1);
}
.plato-prensa:hover .plato-prensa__foto { transform: scale(1.05); }
.plato-prensa::before {
    content: ""; position: absolute; inset: 0; z-index: -1;
    background: linear-gradient(to top, rgba(12, 10, 9, .95) 5%, rgba(12, 10, 9, .35) 55%, transparent);
}
.plato-prensa__texto { padding: 1.5rem; color: #f3ece0; }
.plato-prensa h3 {
    margin: 0 0 0.8rem;
    font-family: var(--serif);
    font-weight: 600;
    font-size: 1.35rem;
    line-height: 1.2;
    color: #f3ece0;
    text-wrap: balance;
}
.plato-prensa blockquote { margin: 0; }
.plato-prensa blockquote p {
    margin: 0 0 0.6rem;
    font-family: var(--serif);
    font-size: 1.05rem;
    line-height: 1.45;
    text-wrap: balance;
}
.plato-prensa blockquote footer { display: flex; align-items: center; }
.plato-prensa__medio { display: block; width: auto; height: 18px; filter: brightness(0) invert(1); opacity: .9; }
.plato-prensa blockquote footer.plato-prensa__firma { font-size: .82rem; letter-spacing: .03em; opacity: .85; }
.plato-prensa--letra blockquote footer.plato-prensa__firma { color: #0c0a09; opacity: .7; }
.plato-prensa--letra {
    align-items: center;
    container-type: inline-size;
    background: #efe5d2 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='w'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9 .045' numOctaves='3' seed='7'/%3E%3CfeColorMatrix values='0 0 0 0 .45  0 0 0 0 .36  0 0 0 0 .22  0 0 0 .16 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23w)'/%3E%3C/svg%3E");
}
.plato-prensa--letra::before {
    inset: auto 0 0 0;
    height: 62%;
    -webkit-mask-image: linear-gradient(to top, #000 0%, rgba(0, 0, 0, .55) 45%, transparent 100%);
    mask-image: linear-gradient(to top, #000 0%, rgba(0, 0, 0, .55) 45%, transparent 100%);
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='30' viewBox='0 0 60 30'%3E%3Cg fill='%23efe5d2' stroke='%23b8955c' stroke-opacity='.55' stroke-width='1.1'%3E%3Cg id='o'%3E%3Ccircle cx='30' cy='0' r='30'/%3E%3Ccircle cx='30' cy='0' r='24'/%3E%3Ccircle cx='30' cy='0' r='18'/%3E%3Ccircle cx='30' cy='0' r='12'/%3E%3Ccircle cx='30' cy='0' r='6'/%3E%3C/g%3E%3Cuse href='%23o' x='-30' y='15'/%3E%3Cuse href='%23o' x='30' y='15'/%3E%3Cuse href='%23o' y='30'/%3E%3Cuse href='%23o' x='-30' y='45'/%3E%3Cuse href='%23o' x='30' y='45'/%3E%3C/g%3E%3C/svg%3E") 0 100% / 60px 30px repeat;
}
.plato-prensa--letra .plato-prensa__texto { align-self: center; padding: 2rem 1.6rem 6rem; color: #0c0a09; }
.plato-prensa--letra h3 { color: #0c0a09; font-size: clamp(1.6rem, 3vw, 2.2rem); }
.plato-prensa--letra blockquote p { color: #0c0a09; font-size: min(2.2rem, 8.6cqi); line-height: 1.15; white-space: nowrap; }
.plato-prensa--letra .plato-prensa__medio { filter: brightness(0); opacity: .75; }
@media (min-width: 640px) {
    .platos-prensa__rejilla { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .plato-prensa--grande { grid-column: span 2; min-height: 480px; }
}
@media (min-width: 1000px) {
    .platos-prensa__rejilla {
        max-width: 1180px;
        margin-inline: auto;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        grid-auto-rows: 320px;
    }
    .plato-prensa { min-height: 0; }
    .plato-prensa--grande { grid-column: span 2; grid-row: span 2; min-height: 0; }
    .plato-prensa--grande h3 { font-size: 2rem; }
    .plato-prensa--grande blockquote p { font-size: 1.3rem; }
}
.l-pie__gigante {
    margin: 0.6rem 0 1.4rem !important;
    font-family: var(--serif);
    font-weight: 800;
    font-size: clamp(2.6rem, 12.4vw, 12rem);
    line-height: 0.9;
    letter-spacing: -0.01em;
    text-transform: uppercase;
    text-align: center;
    white-space: nowrap;
    background: linear-gradient(180deg, var(--verde) 0%, var(--verde-tinta) 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}
.l-pie__gigante { grid-column: 1 / -1; }
.l-pie__gigante--img { background: none !important; line-height: 0; }
.l-pie--sin-logo { padding-top: 0.9rem; }
.l-pie--sin-logo .l-pie__firma { margin-top: 0.4rem !important; }
@media (min-width: 760px) {
    .l-pie.l-pie--sin-logo { padding-top: 1.1rem; padding-bottom: calc(1.1rem + var(--gmlr-alto-flotante, 0px)); }
    .l-pie--sin-logo p { text-align: left; }
    .l-pie--sin-logo .l-pie__firma { margin-top: 0 !important; text-align: right; }
}
.l-pie__gigante--img img { display: block; width: min(100%, 1100px); height: auto; margin: 0 auto; }
@media (min-width: 760px) {
    .l-pie:has(.l-pie__gigante) { display: block; text-align: center; }
    .l-pie:has(.l-pie__gigante) p { text-align: center; }
}
@font-face { font-family: 'LN Titulos'; src: url('fonts/KyivTypeSans-Regular3.woff2') format('woff2'); font-weight: 100 900; font-display: swap; }
@font-face { font-family: 'LN Texto'; src: url('fonts/D-DIN.woff2') format('woff2'); font-weight: 100 599; font-display: swap; }
@font-face { font-family: 'LN Texto'; src: url('fonts/D-DIN-Bold.woff2') format('woff2'); font-weight: 600 900; font-display: swap; }
body.marca-lima-nikkei {
    --verde:        #c5a572;
    --verde-tinta:  #a8895a;
    --verde-suave:  #211b13;
    --tinta:        #efe5d2;
    --texto-2:      #b9ad98;
    --fondo:        #0c0a09;
    --fondo-rgb:    12, 10, 9;
    --fondo-suave:  #16130f;
    --borde:        #2a2420;
    --resalte-fondo: #2e2616;
    --resalte-tinta: #e2c894;
    --sombra-tarjeta:  0 8px 28px rgba(0, 0, 0, 0.5);
    --sombra-flotante: 0 10px 30px rgba(0, 0, 0, 0.65);
    --g-tinta: #efe5d2;
    --g-texto: #d4c9b5;
    --g-suave: #a39884;
    --g-borde: #2f2922;
    --serif: 'LN Titulos', Georgia, serif;
    --sans:  'LN Texto', system-ui, -apple-system, sans-serif;
    background: var(--fondo);
}
body.marca-lima-nikkei h1,
body.marca-lima-nikkei h2,
body.marca-lima-nikkei .seccion__titulo,
body.marca-lima-nikkei .mosaico__titulo { font-weight: 600; letter-spacing: 0.005em; line-height: 1.15; }
body.marca-lima-nikkei h1 em,
body.marca-lima-nikkei h2 em,
body.marca-lima-nikkei .seccion__titulo em,
body.marca-lima-nikkei .mosaico__titulo em { font-style: normal; color: var(--verde); }
body.marca-lima-nikkei .tarjeta,
body.marca-lima-nikkei .gpanel,
body.marca-lima-nikkei .opinion,
body.marca-lima-nikkei .faq__item,
body.marca-lima-nikkei .categoria,
body.marca-lima-nikkei .mosaico__cita,
body.marca-lima-nikkei .chip--boton,
body.marca-lima-nikkei .chip,
body.marca-lima-nikkei .gpanel__tema,
body.marca-lima-nikkei .boton--mapa,
body.marca-lima-nikkei .beneficio__icono,
body.marca-lima-nikkei .mapa__distancia {
    background: var(--fondo-suave);
    border-color: var(--borde);
}
body.marca-lima-nikkei .chip { border: 1px solid var(--borde); }
body.marca-lima-nikkei .chip--boton.chip--activo {
    background: rgba(197, 165, 114, 0.14);
    border-color: rgba(197, 165, 114, 0.42);
    color: var(--verde);
}
body.marca-lima-nikkei .chip--boton.chip--activo b { color: var(--verde); }
body.marca-lima-nikkei .chip--boton:hover { background: rgba(239, 229, 210, 0.06); }
body.marca-lima-nikkei .tema-cita__texto { color: var(--tinta); }
body.marca-lima-nikkei #gdpr-cookie-consent-show-again {
    box-shadow: none !important;
    border: 1px solid rgba(0, 0, 0, 0.35) !important;
}
body.marca-lima-nikkei .sello {
    background: rgba(255, 255, 255, 0.06);
    box-shadow: none;
    border: 1px solid var(--borde);
    color: var(--tinta);
}
body.marca-lima-nikkei .sello__nota,
body.marca-lima-nikkei .sello__nota strong,
body.marca-lima-nikkei .sello__dato-titulo { color: var(--tinta); }
body.marca-lima-nikkei .sello__pie { color: var(--texto-2); }
body.marca-lima-nikkei .beneficio__icono {
    background: rgba(197, 165, 114, 0.12);
    border: 1px solid rgba(197, 165, 114, 0.32);
    box-shadow: none;
}
body.marca-lima-nikkei .pastilla {
    background: rgba(239, 229, 210, 0.06);
    border: 1px solid rgba(239, 229, 210, 0.2);
    color: rgba(239, 229, 210, 0.8);
    font-weight: 500;
    letter-spacing: 0.08em;
}
body.marca-lima-nikkei .pastilla svg { opacity: 0.65; }
body.marca-lima-nikkei .boton--principal { background: var(--verde); color: #0c0a09; }
body.marca-lima-nikkei .boton--principal:hover { background: #d6b986; color: #0c0a09; }
body.marca-lima-nikkei .boton--secundario {
    background: transparent;
    color: var(--tinta);
    border-color: rgba(239, 229, 210, 0.35);
}
body.marca-lima-nikkei .boton--secundario:hover { border-color: var(--tinta); }
body.marca-lima-nikkei .l-pie {
    background: var(--fondo);
    border-top: 1px solid var(--borde);
    color: var(--texto-2);
    overflow: hidden;
}
body.marca-lima-nikkei .l-pie a { color: var(--texto-2); font-weight: 500; }
body.marca-lima-nikkei .l-pie__nombre { display: none; }
body.marca-lima-nikkei .l-pie__gigante {
    background: linear-gradient(180deg, #e2c894 0%, var(--verde) 45%, rgba(197, 165, 114, 0.22) 100%);
    -webkit-background-clip: text;
    background-clip: text;
}
body.marca-lima-nikkei .carta-pestanas__panel { background: var(--fondo-suave); border: 1px solid var(--borde); }
body.marca-lima-nikkei .carta-pestanas__boton { background: transparent; color: var(--tinta); border-color: var(--borde); }
body.marca-lima-nikkei .carta-pestanas__boton:hover { border-color: var(--verde); }
body.marca-lima-nikkei .carta-pestanas__boton[aria-selected="true"] { background: var(--verde); border-color: var(--verde); color: #0c0a09; }
body.marca-lima-nikkei .carta-pestanas__ver { background: rgba(197, 165, 114, 0.12); }
body.marca-lima-nikkei .mapa__pin path { fill: var(--verde); }
body.marca-lima-nikkei .mapa__pin circle { fill: #0c0a09; }
body.marca-lima-nikkei .mapa__pulso { background: rgba(197, 165, 114, 0.35); }
body.marca-lima-nikkei .mapa__toca { background: rgba(12, 10, 9, 0.88); color: var(--tinta); border: 1px solid var(--borde); }
body.marca-lima-nikkei .mapa__distancia { color: var(--verde); }
body.marca-lima-nikkei .mosaico__comilla { color: var(--verde); }
body.marca-lima-nikkei .opinion__mas { color: var(--verde); }
body.marca-lima-nikkei h1, body.marca-lima-nikkei h2, body.marca-lima-nikkei h3,
body.marca-lima-nikkei figcaption, body.marca-lima-nikkei summary { text-wrap: balance; }
body.marca-lima-nikkei p, body.marca-lima-nikkei li, body.marca-lima-nikkei blockquote { text-wrap: pretty; }
@media (min-width: 1024px) {
    body.marca-lima-nikkei .mosaico__pista > .mosaico__col { flex-basis: 0; flex-shrink: 1; width: auto; min-width: 0; }
    body.marca-lima-nikkei .mosaico__grande { flex-grow: 240; }
    body.marca-lima-nikkei .mosaico__par    { flex-grow: 168; }
    body.marca-lima-nikkei .mosaico__cita   { flex-grow: 280; }
}
@media (min-width: 1024px) and (max-width: 1279px) {
    body.marca-lima-nikkei .mosaico__pista > .mosaico__col:nth-last-child(-n+4) { display: none; }
}
@media (min-width: 1280px) and (max-width: 1439px) {
    body.marca-lima-nikkei .mosaico__pista > .mosaico__col:nth-last-child(-n+3) { display: none; }
}
@media (min-width: 1440px) and (max-width: 1679px) {
    body.marca-lima-nikkei .mosaico__pista > .mosaico__col:nth-last-child(-n+2) { display: none; }
}
@media (min-width: 1680px) and (max-width: 1919px) {
    body.marca-lima-nikkei .mosaico__pista > .mosaico__col:nth-last-child(-n+1) { display: none; }
}
.carta-plato__titulo { display: block; font-family: var(--serif); font-weight: 600; font-size: 1.02rem; line-height: 1.3; color: var(--tinta); }
.carta-plato__desc { display: block; margin-top: 0.2rem; font-size: 0.84rem; line-height: 1.45; color: var(--texto-2); }
.carta-plato:has(.carta-plato__desc) .carta-plato__linea { align-self: flex-start; margin-top: 0.85em; }
.hero__sellos-datos--alterna { display: grid !important; }
.hero__sellos-datos--alterna > .sello { grid-area: 1 / 1; animation: gmlr-alterna 9s ease-in-out infinite both; }
.hero__sellos-datos--alterna > .sello:nth-child(2) { animation-delay: -4.5s; }
@keyframes gmlr-alterna {
    0%, 44%  { opacity: 1; visibility: visible; }
    50%, 94% { opacity: 0; visibility: hidden; }
    100%     { opacity: 1; visibility: visible; }
}
@media (prefers-reduced-motion: reduce) {
    .hero__sellos-datos--alterna > .sello { animation: none; }
    .hero__sellos-datos--alterna > .sello:not(:first-child) { visibility: hidden; }
}
body.marca-lima-nikkei .gbarra__pista { background: rgba(239, 229, 210, 0.12); }
.premio__sello-img { display: block; width: clamp(128px, 22vw, 168px); height: auto; margin: 0 auto 1.2rem;
    filter: drop-shadow(0 10px 22px rgba(0, 0, 0, 0.55)); }
body.marca-lima-nikkei .l-cabecera__logo img { width: 195px; }
body.marca-lima-nikkei .l-cabecera__logo img { width: auto; height: 66px; }
@media (max-width: 720px) { body.marca-lima-nikkei .l-cabecera__logo img { height: 56px; } }
body.marca-lima-nikkei .reserva__velo { background: linear-gradient(180deg, rgba(12, 10, 9, .78), rgba(12, 10, 9, .92)); }
body.marca-lima-nikkei .reserva__tarjeta { box-shadow: 0 24px 60px rgba(0, 0, 0, .45), inset 0 0 0 1px rgba(239, 229, 210, .1); }
body.marca-lima-nikkei .reserva__modulo iframe { background: transparent; filter: invert(.9) hue-rotate(180deg) sepia(.35) brightness(.95); }
body.marca-lima-nikkei #gdpr-cookie-consent-bar { top: auto !important; bottom: max(16px, env(safe-area-inset-bottom)) !important;
  transform: translateX(-50%) !important; }
body.marca-lima-nikkei .gdpr_action_button, body.marca-lima-nikkei #cookie_action_accept,
body.marca-lima-nikkei #cookie_action_accept_all, body.marca-lima-nikkei #cookie_action_reject,
body.marca-lima-nikkei #gdpr-cookie-consent-show-again { color: #15120f !important; }
body.marca-lima-nikkei .gdpr_action_button[data-gdpr_action="settings"], body.marca-lima-nikkei #cookie_action_settings,
body.marca-lima-nikkei .gdprmodal a:not(.gdpr_action_button), body.marca-lima-nikkei #cookie_action_link,
body.marca-lima-nikkei .always-active, body.marca-lima-nikkei .gdprmodal-header p { color: #15120f !important; }
body.marca-lima-nikkei .gdprmodal a:not(.gdpr_action_button), body.marca-lima-nikkei #cookie_action_link {
  text-decoration: underline !important; text-decoration-color: var(--verde) !important; text-decoration-thickness: 2px !important; text-underline-offset: 3px !important; }
.plato-prensa--solo-cita .plato-prensa__texto { padding-inline: 1.15rem; }
.plato-prensa--solo-cita blockquote p { white-space: normal; font-size: min(2.6rem, 10.3cqi); line-height: 1.12; margin-bottom: 1rem; }
.plato-prensa__medio[src*="conelmorrofino"] { height: 72px; }
@media (max-width: 639px) {
    .plato-prensa--letra { min-height: 0; }
    .plato-prensa--letra .plato-prensa__texto { padding-top: 1.8rem; padding-bottom: 5rem; }
}
body.marca-lima-nikkei .gracias { background: var(--fondo); }
body.marca-lima-nikkei .gracias__caja { background: var(--fondo-suave); box-shadow: 0 24px 60px rgba(0, 0, 0, .45), inset 0 0 0 1px rgba(239, 229, 210, .1); }
body.marca-lima-nikkei .gracias__logo img { max-width: 195px; }
body.marca-lima-nikkei .pie-interior { background: var(--fondo); border-top: 1px solid var(--borde); color: var(--texto-2); }
body.marca-lima-nikkei .pie-interior__marca { color: var(--tinta); }
body.marca-lima-nikkei .pie-interior__legal a { color: var(--texto-2); }
body.marca-lima-nikkei .pie-interior__legal a:hover { color: var(--tinta); }
@media (max-width: 899px) {
    body.marca-lima-nikkei.hero-cine .hero h1 { color: var(--tinta); }
    body.marca-lima-nikkei.hero-cine .hero h1 em { color: var(--verde); }
    body.marca-lima-nikkei.hero-cine .hero__texto { color: var(--tinta); }
    body.marca-lima-nikkei.hero-cine .hero__micro { color: rgba(239, 229, 210, 0.9); }
    body.marca-lima-nikkei.hero-cine .hero__micro svg { color: var(--verde); }
    body.marca-lima-nikkei.hero-cine .hero__foto::after {
        background: linear-gradient(180deg,
            rgba(12, 10, 9, 0.55) 0%,
            rgba(12, 10, 9, 0.12) 18%,
            rgba(12, 10, 9, 0.42) 34%,
            rgba(12, 10, 9, 0.74) 45%,
            rgba(12, 10, 9, 0.82) 58%,
            rgba(12, 10, 9, 0.9) 75%,
            rgba(12, 10, 9, 0.96) 100%);
    }
    body.marca-lima-nikkei.hero-cine .pastilla { background: rgba(12, 10, 9, 0.4); border-color: rgba(239, 229, 210, 0.28); color: var(--tinta); }
    body.marca-lima-nikkei.hero-cine .sello { background: rgba(12, 10, 9, 0.55); border: 1px solid rgba(239, 229, 210, 0.14); }
    body.marca-lima-nikkei.hero-cine .sello__nota,
    body.marca-lima-nikkei.hero-cine .sello__nota strong,
    body.marca-lima-nikkei.hero-cine .sello__dato-titulo { color: var(--tinta); }
    body.marca-lima-nikkei.hero-cine .sello__pie { color: rgba(239, 229, 210, 0.8); }
    body.marca-lima-nikkei.hero-cine .sello__dato-icono { background: rgba(197, 165, 114, 0.16); color: var(--verde); }
    body.marca-lima-nikkei.hero-cine .boton--secundario { background: rgba(12, 10, 9, 0.35); }
}
@media (min-width: 1024px) {
    body.marca-lima-nikkei .menus-grupo__lista:has(> .menu-grupo:nth-child(3):last-child) {
        grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 1080px; margin-inline: auto; gap: 22px; }
}
body.marca-via-napoli .l-cabecera__logo img { width: 150px; }
body.marca-via-napoli .l-pie img { width: 160px; }
@media (min-width: 900px) {
    body.marca-via-napoli .l-cabecera__logo img { width: 180px; }
    body.marca-via-napoli .l-pie img { width: 180px; }
}
@font-face { font-family: 'RD Titulos'; src: url('fonts/redondo-crimson-400.woff2') format('woff2'); font-weight: 400 500; font-style: normal; font-display: swap; }
@font-face { font-family: 'RD Titulos'; src: url('fonts/redondo-crimson-600.woff2') format('woff2'); font-weight: 600 900; font-style: normal; font-display: swap; }
@font-face { font-family: 'RD Titulos'; src: url('fonts/redondo-crimson-400-italic.woff2') format('woff2'); font-weight: 400 500; font-style: italic; font-display: swap; }
@font-face { font-family: 'RD Titulos'; src: url('fonts/redondo-crimson-600-italic.woff2') format('woff2'); font-weight: 600 900; font-style: italic; font-display: swap; }
@font-face { font-family: 'RD Texto'; src: url('fonts/redondo-manrope.woff2') format('woff2'); font-weight: 400 800; font-display: swap; }
body.marca-redondo {
    --verde:        #ffc999;
    --verde-tinta:  #f0b27d;
    --verde-suave:  #1d2632;
    --tinta:        #f6f1e7;
    --texto-2:      #aeb7c2;
    --fondo:        #0e1721;
    --fondo-rgb:    14, 23, 33;
    --fondo-suave:  #131e2b;
    --borde:        #26344a;
    --resalte-fondo: #2b2a2c;
    --resalte-tinta: #ffd9b8;
    --sombra-tarjeta:  0 8px 28px rgba(0, 0, 0, 0.5);
    --sombra-flotante: 0 10px 30px rgba(0, 0, 0, 0.65);
    --g-tinta: #f6f1e7;
    --g-texto: #d5dbe2;
    --g-suave: #9aa5b1;
    --g-borde: #2a3a50;
    --serif: 'RD Titulos', Georgia, serif;
    --sans:  'RD Texto', system-ui, -apple-system, sans-serif;
    background: var(--fondo);
}
body.marca-redondo h1,
body.marca-redondo h2,
body.marca-redondo .seccion__titulo,
body.marca-redondo .mosaico__titulo { font-weight: 600; letter-spacing: 0.005em; line-height: 1.15; }
body.marca-redondo h1 em,
body.marca-redondo h2 em,
body.marca-redondo .seccion__titulo em,
body.marca-redondo .mosaico__titulo em { font-style: italic; color: var(--verde); }
body.marca-redondo .tarjeta,
body.marca-redondo .gpanel,
body.marca-redondo .opinion,
body.marca-redondo .faq__item,
body.marca-redondo .categoria,
body.marca-redondo .mosaico__cita,
body.marca-redondo .chip--boton,
body.marca-redondo .chip,
body.marca-redondo .gpanel__tema,
body.marca-redondo .boton--mapa,
body.marca-redondo .beneficio__icono,
body.marca-redondo .mapa__distancia {
    background: var(--fondo-suave);
    border-color: var(--borde);
}
body.marca-redondo .chip { border: 1px solid var(--borde); }
body.marca-redondo .chip--boton.chip--activo {
    background: rgba(255, 201, 153, 0.14);
    border-color: rgba(255, 201, 153, 0.42);
    color: var(--verde);
}
body.marca-redondo .chip--boton.chip--activo b { color: var(--verde); }
body.marca-redondo .chip--boton:hover { background: rgba(246, 241, 231, 0.06); }
body.marca-redondo .tema-cita__texto { color: var(--tinta); }
body.marca-redondo #gdpr-cookie-consent-show-again {
    box-shadow: none !important;
    border: 1px solid rgba(0, 0, 0, 0.35) !important;
}
body.marca-redondo .sello {
    background: rgba(255, 255, 255, 0.06);
    box-shadow: none;
    border: 1px solid var(--borde);
    color: var(--tinta);
}
body.marca-redondo .sello__nota,
body.marca-redondo .sello__nota strong,
body.marca-redondo .sello__dato-titulo { color: var(--tinta); }
body.marca-redondo .sello__pie { color: var(--texto-2); }
body.marca-redondo .beneficio__icono {
    background: rgba(255, 201, 153, 0.12);
    border: 1px solid rgba(255, 201, 153, 0.32);
    box-shadow: none;
}
body.marca-redondo .pastilla {
    background: rgba(246, 241, 231, 0.06);
    border: 1px solid rgba(246, 241, 231, 0.2);
    color: rgba(246, 241, 231, 0.8);
    font-weight: 500;
    letter-spacing: 0.08em;
}
body.marca-redondo .pastilla svg { opacity: 0.65; }
body.marca-redondo .boton--principal { background: var(--verde); color: #0e1721; }
body.marca-redondo .boton--principal:hover { background: #ffd6b0; color: #0e1721; }
body.marca-redondo .boton--secundario {
    background: transparent;
    color: var(--tinta);
    border-color: rgba(246, 241, 231, 0.35);
}
body.marca-redondo .boton--secundario:hover { border-color: var(--tinta); }
body.marca-redondo .l-pie {
    background: var(--fondo);
    border-top: 1px solid var(--borde);
    color: var(--texto-2);
    overflow: hidden;
}
body.marca-redondo .l-pie a { color: var(--texto-2); font-weight: 500; }
body.marca-redondo .l-pie__nombre { display: none; }
body.marca-redondo .l-pie__gigante {
    background: linear-gradient(180deg, #e2c894 0%, var(--verde) 45%, rgba(255, 201, 153, 0.22) 100%);
    -webkit-background-clip: text;
    background-clip: text;
}
body.marca-redondo .carta-pestanas__panel { background: var(--fondo-suave); border: 1px solid var(--borde); }
body.marca-redondo .carta-pestanas__boton { background: transparent; color: var(--tinta); border-color: var(--borde); }
body.marca-redondo .carta-pestanas__boton:hover { border-color: var(--verde); }
body.marca-redondo .carta-pestanas__boton[aria-selected="true"] { background: var(--verde); border-color: var(--verde); color: #0e1721; }
body.marca-redondo .carta-pestanas__ver { background: rgba(255, 201, 153, 0.12); }
body.marca-redondo .mapa__pin path { fill: var(--verde); }
body.marca-redondo .mapa__pin circle { fill: #0e1721; }
body.marca-redondo .mapa__pulso { background: rgba(255, 201, 153, 0.35); }
body.marca-redondo .mapa__toca { background: rgba(12, 10, 9, 0.88); color: var(--tinta); border: 1px solid var(--borde); }
body.marca-redondo .mapa__distancia { color: var(--verde); }
body.marca-redondo .mosaico__comilla { color: var(--verde); }
body.marca-redondo .opinion__mas { color: var(--verde); }
@media (max-width: 699px) { body.marca-redondo .seccion { padding-top: 3.75rem; } }
body.marca-redondo .pie-interior { background: var(--fondo); border-top: 1px solid var(--borde); color: var(--texto-2); }
body.marca-redondo .pie-interior__marca { color: var(--tinta); }
body.marca-redondo .pie-interior__legal a { color: var(--texto-2); }
body.marca-redondo .pie-interior__legal a:hover { color: var(--tinta); }
body.marca-redondo .reserva__velo { background: linear-gradient(180deg, rgba(14, 23, 33, .82), rgba(14, 23, 33, .94)); }
body.marca-redondo .reserva__tarjeta { box-shadow: 0 24px 60px rgba(0, 0, 0, .45), inset 0 0 0 1px rgba(246, 241, 231, .1); }
body.marca-redondo .gbarra__pista { background: rgba(246, 241, 231, 0.12); }
@media (max-width: 899px) {
    body.marca-redondo.hero-cine .hero__foto::after {
        background: linear-gradient(180deg,
            rgba(8, 13, 19, 0.60) 0%,
            rgba(8, 13, 19, 0.50) 20%,
            rgba(8, 13, 19, 0.62) 40%,
            rgba(8, 13, 19, 0.72) 60%,
            rgba(8, 13, 19, 0.85) 80%,
            rgba(8, 13, 19, 0.94) 100%);
    }
}
body.marca-redondo .carta-plato__titulo { font-family: inherit; font-weight: inherit; font-size: inherit; line-height: 1.4; }
@media (min-width: 900px) {
    body.marca-redondo .menus-grupo + .carta-web { margin-top: 3rem; }
    body.marca-redondo .carta-web + .mosaico { margin-top: 6.5rem; }
    body.marca-redondo .mosaico + .patio { margin-top: 2.8rem; }
    body.marca-redondo section[aria-label="Información útil"] { margin-top: 4.5rem; }
    body.marca-redondo .carta-pestanas .carta-plato { padding: 0.85rem 0; }
    body.marca-redondo .mosaico + .patio { margin-top: 6rem; }
    body.marca-redondo #donde,
    body.marca-redondo section[aria-label="Qué te espera"] { margin-top: 3rem; }
    body.marca-redondo .opiniones { margin-top: 1.5rem; }
}
body.marca-redondo .hero__sellos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.45rem; width: 100%; max-width: 20rem; }
body.marca-redondo .hero__sellos-datos { display: contents; }
body.marca-redondo .hero__sellos .sello { min-width: 0; padding: 0.45rem 0.55rem; gap: 3px; justify-content: center; }
body.marca-redondo .hero__sellos .sello__nota { gap: 0.25rem; }
body.marca-redondo .hero__sellos .sello__nota strong { font-size: 1rem; }
body.marca-redondo .hero__sellos .estrellas svg,
body.marca-redondo .hero__sellos .burbujas svg { width: 10px; height: 10px; }
body.marca-redondo .hero__sellos .sello--dato { flex-direction: column; align-items: flex-start; gap: 3px; }
body.marca-redondo .hero__sellos .sello--dato .sello__dato-icono { width: 20px; height: 20px; margin: 0; background: none; }
body.marca-redondo .hero__sellos .sello--dato .sello__dato-icono svg { width: 18px; height: 18px; }
body.marca-redondo .hero__sellos .sello--dato .sello__dato-titulo { font-size: 0.72rem; line-height: 1.15; white-space: normal; }
body.marca-redondo .hero__sellos .sello--dato .sello__pie { display: none; }
@media (min-width: 900px) {
    body.marca-redondo .hero__sellos { max-width: none; width: 23.75rem; }
    body.marca-redondo .hero__botones { grid-template-columns: auto 1fr; width: 23.75rem; }
}
body.marca-redondo .hero__botones { grid-template-columns: 1fr; }
body.marca-redondo .hero__botones .boton { white-space: nowrap; padding-inline: 1.1rem; }
@media (min-width: 900px) {
    body.marca-redondo .hero__botones { grid-template-columns: auto auto; justify-content: start; max-width: none; }
}
@media (min-width: 1024px) {
    body.marca-redondo .mosaico__pista > .mosaico__col { flex-basis: 0; flex-shrink: 1; width: auto; min-width: 0; }
    body.marca-redondo .mosaico__grande { flex-grow: 240; }
    body.marca-redondo .mosaico__par    { flex-grow: 168; }
    body.marca-redondo .mosaico__cita   { flex-grow: 280; }
}
@media (min-width: 1024px) and (max-width: 1279px) {
    body.marca-redondo .mosaico__pista > .mosaico__col:nth-last-child(-n+4) { display: none; }
}
@media (min-width: 1280px) and (max-width: 1479px) {
    body.marca-redondo .mosaico__pista > .mosaico__col:nth-last-child(-n+3) { display: none; }
}
@media (min-width: 1480px) and (max-width: 1719px) {
    body.marca-redondo .mosaico__pista > .mosaico__col:nth-last-child(-n+2) { display: none; }
}
@media (min-width: 1720px) and (max-width: 1899px) {
    body.marca-redondo .mosaico__pista > .mosaico__col:nth-last-child(-n+1) { display: none; }
}
body.marca-redondo .reserva__modulo iframe { background: transparent; filter: invert(.92) hue-rotate(180deg) sepia(.45) hue-rotate(172deg) saturate(1.6) brightness(.9); }
.eventos { scroll-margin-top: 70px; }
.eventos { margin-bottom: 3.25rem; }
@media (min-width: 700px) { .eventos { margin-bottom: 4rem; } }
.eventos [hidden] { display: none !important; }
.eventos__cabeza { max-width: 720px; margin: 0 auto 22px; text-align: center; }
.eventos__entrada { color: var(--texto-2); margin: 8px auto 0; max-width: 56ch; }
.eventos__form { max-width: 760px; margin: 0 auto; background: var(--fondo-suave); border: 1px solid var(--borde);
  border-radius: 20px; padding: 22px 18px 20px; box-shadow: var(--sombra-tarjeta); }
@media (min-width: 700px) { .eventos__form { padding: 32px 36px 28px; } }
.eventos__trampa { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.eventos__progreso, .eventos__contador { display: none; }
.eventos__form--pasos .eventos__progreso { display: flex; gap: 6px; list-style: none; margin: 0 0 8px; padding: 0; }
.eventos__progreso li { flex: 1; height: 4px; border-radius: 4px; background: var(--borde); transition: background .3s; }
.eventos__progreso li.hecho, .eventos__progreso li.actual { background: var(--verde); }
.eventos__form--pasos .eventos__contador { display: block; margin: 0 0 14px; font-size: .78rem; letter-spacing: .14em; text-transform: uppercase; color: var(--texto-2); }
.eventos__paso { border: 0; margin: 0 0 26px; padding: 0; min-width: 0; }
.eventos__form--pasos .eventos__paso { display: none; margin-bottom: 14px; }
.eventos__form--pasos .eventos__paso--activo { display: block; animation: eventos-entra .35s var(--curva, ease) both; }
@keyframes eventos-entra { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .eventos__form--pasos .eventos__paso--activo { animation: none; } }
.eventos__paso legend { font-family: var(--serif); font-size: clamp(1.5rem, 4.6vw, 2rem); line-height: 1.15; margin: 0 0 16px; padding: 0; color: var(--tinta); outline: none; }
.eventos__opciones { display: grid; gap: 10px; grid-template-columns: repeat(2, 1fr); }
@media (min-width: 700px) { .eventos__opciones--tipos { grid-template-columns: repeat(4, 1fr); } .eventos__opciones--espacios { grid-template-columns: repeat(4, 1fr); } }
.eventos__opciones--franjas { margin-top: 12px; }
.eventos__opciones--menus { grid-template-columns: 1fr; }
@media (min-width: 700px) { .eventos__opciones { grid-auto-rows: 1fr; } }
@media (min-width: 560px) { .eventos__opciones--menus { grid-template-columns: repeat(2, 1fr); } }
.eventos__opcion { position: relative; display: flex; cursor: pointer; }
.eventos__opcion input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.eventos__opcion > span { flex: 1; min-width: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; min-height: 92px;
  padding: 14px 10px; text-align: center; border: 1.5px solid var(--borde); border-radius: 14px; background: var(--fondo);
  color: var(--tinta); transition: border-color .2s, background .2s, transform .15s; }
.eventos__opcion > span svg { color: var(--verde); }
.eventos__opcion b { font-weight: 600; font-size: .95rem; line-height: 1.25; }
.eventos__opcion small { display: block; color: var(--texto-2); font-size: .8rem; margin-top: 2px; font-weight: 400; }
.eventos__opcion--corta > span { min-height: 52px; flex-direction: row; }
.eventos__opcion--texto > span { min-height: 70px; align-items: flex-start; text-align: left; padding: 14px 16px; }
.eventos__precio { white-space: nowrap; }
.eventos__opcion--foto > span { padding: 0; overflow: hidden; min-height: 0; justify-content: flex-start; gap: 0; }
.eventos__opcion--foto img { width: 100%; height: auto; aspect-ratio: 3 / 4; object-fit: cover; display: block; }
.eventos__opcion--foto b { flex: 1; display: flex; align-items: center; justify-content: center; padding: 10px 8px 12px; }
.eventos__sinfoto { display: grid; place-items: center; width: 100%; aspect-ratio: 3 / 4; background: var(--verde-suave); }
.eventos__opcion:hover > span { border-color: var(--texto-2); }
.eventos__opcion input:focus-visible + span { outline: 3px solid var(--verde); outline-offset: 2px; }
.eventos__opcion input:checked + span { border-color: var(--verde); background: var(--verde-suave); box-shadow: inset 0 0 0 1px var(--verde); }
.eventos__opcion input:checked + span::after { content: ""; position: absolute; top: 8px; right: 8px; width: 20px; height: 20px; border-radius: 50%;
  background: var(--verde) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230e1721' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12.5 4 4 8-9'/%3E%3C/svg%3E") center / 14px no-repeat; }
.eventos__rango { padding: 6px 2px 0; }
.eventos__rango--pequeno { margin-top: 22px; }
.eventos__subtitulo { margin: 0 0 4px; color: var(--texto-2); font-size: .85rem; letter-spacing: .1em; text-transform: uppercase; }
.eventos__cifra { display: block; text-align: center; color: var(--texto-2); margin-bottom: 14px; }
.eventos__cifra b { display: block; font-family: var(--serif); font-size: clamp(2.6rem, 9vw, 3.6rem); line-height: 1; color: var(--tinta); font-weight: 600; }
.eventos__rango--pequeno .eventos__cifra b { font-size: clamp(1.9rem, 6vw, 2.4rem); }
.eventos input[type=range] { -webkit-appearance: none; appearance: none; width: 100%; height: 44px; background: transparent; cursor: pointer; --lleno: 50%; }
.eventos input[type=range]::-webkit-slider-runnable-track { height: 8px; border-radius: 8px; background: linear-gradient(to right, var(--verde) var(--lleno), var(--borde) var(--lleno)); }
.eventos input[type=range]::-moz-range-track { height: 8px; border-radius: 8px; background: var(--borde); }
.eventos input[type=range]::-moz-range-progress { height: 8px; border-radius: 8px; background: var(--verde); }
.eventos input[type=range]::-webkit-slider-thumb { -webkit-appearance: none; width: 32px; height: 32px; margin-top: -12px; border-radius: 50%;
  background: var(--tinta); border: 4px solid var(--verde); box-shadow: 0 4px 14px rgba(0, 0, 0, .35); }
.eventos input[type=range]::-moz-range-thumb { width: 26px; height: 26px; border-radius: 50%; background: var(--tinta); border: 4px solid var(--verde); }
.eventos input[type=range]:focus-visible { outline: 3px solid var(--verde); outline-offset: 4px; border-radius: 8px; }
.eventos__marcas { display: flex; justify-content: space-between; font-size: .8rem; color: var(--texto-2); margin-top: 2px; }
.eventos__directa { display: flex; gap: 10px; align-items: flex-start; margin: 18px 0 0; padding: 12px 14px; border-radius: 12px;
  background: var(--verde-suave); border: 1px solid var(--borde); font-size: .92rem; color: var(--tinta); }
.eventos__directa svg { color: var(--verde); flex: none; margin-top: 2px; }
.eventos__directa a { color: var(--verde); font-weight: 700; white-space: nowrap; }
.eventos__campo { display: flex; flex-wrap: wrap; align-items: baseline; align-content: flex-start; gap: 6px 5px;
  font-size: .88rem; font-weight: 600; color: var(--texto-2); margin-top: 12px; }
.eventos__campo input, .eventos__campo textarea, .eventos__campo > .eventos__calendario { flex: 1 0 100%; }
.eventos__campo small { font-weight: 400; }
.eventos__campo input, .eventos__campo textarea { width: 100%; min-height: 50px; padding: 12px 14px; border-radius: 12px; border: 1.5px solid var(--borde);
  background: var(--fondo); color: var(--tinta); font: 400 1rem var(--sans); }
.eventos__campo textarea { min-height: 96px; resize: vertical; }
.eventos__campo input:focus, .eventos__campo textarea:focus { outline: none; border-color: var(--verde); box-shadow: 0 0 0 3px var(--verde-suave); }
.eventos__campo input[type=date] { color-scheme: dark; }
.eventos__datos { display: grid; gap: 0 14px; }
@media (min-width: 560px) { .eventos__datos { grid-template-columns: 1fr 1fr; } }
.eventos__casilla { display: flex; gap: 10px; align-items: flex-start; margin-top: 14px; font-size: .92rem; color: var(--tinta); cursor: pointer; }
.eventos__casilla input { width: 22px; height: 22px; accent-color: var(--verde); flex: none; margin: 1px 0 0; }
.eventos__casilla a { color: var(--verde); }
.eventos__resumen { margin: 6px 0 12px; padding: 12px 14px; border-radius: 12px; border: 1px dashed var(--borde); }
.eventos__resumen-titulo { margin: 0 0 6px; font-size: .74rem; letter-spacing: .16em; text-transform: uppercase; color: var(--verde); }
.eventos__resumen ul { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 6px; }
.eventos__resumen li { font-size: .85rem; padding: 4px 10px; border-radius: 999px; background: var(--fondo); border: 1px solid var(--borde); color: var(--tinta); }
.eventos__error { min-height: 1.2em; margin: 4px 0 8px; color: #ffb4a8; font-size: .92rem; font-weight: 600; }
.eventos__nav { display: flex; gap: 10px; justify-content: space-between; align-items: center; }
.eventos__nav .boton { min-height: 52px; }
.eventos__nav [data-siguiente], .eventos__nav [data-enviar] { margin-left: auto; flex: 1 1 auto; max-width: 320px; justify-content: center; }
.eventos__nav [data-enviar][disabled] { opacity: .7; cursor: progress; }
.eventos__micro { display: flex; gap: 6px; align-items: center; justify-content: center; margin: 12px 0 0; font-size: .82rem; color: var(--texto-2); }
.eventos__micro svg { color: var(--verde); }
.eventos__nav .boton { white-space: nowrap; }
.eventos__nav [data-atras][hidden] ~ [data-siguiente] { margin-inline: auto; }
@media (min-width: 700px) { .eventos__nav .boton { flex: 0 1 calc(50% - 5px); max-width: none; } }
.eventos__calendario { margin-top: 2px; padding: 10px 10px 12px; border: 1.5px solid var(--borde); border-radius: 14px; background: var(--fondo); }
.eventos__cal-cabeza { display: flex; align-items: center; justify-content: space-between; margin-bottom: 6px; }
.eventos__cal-cabeza b { font: 600 1rem var(--sans); color: var(--tinta); text-transform: capitalize; }
.eventos__cal-cabeza button { width: 40px; height: 40px; border-radius: 50%; border: 1px solid var(--borde); background: transparent;
  color: var(--tinta); font-size: 1.4rem; line-height: 1; cursor: pointer; }
.eventos__cal-cabeza button[disabled] { opacity: .3; cursor: default; }
.eventos__cal-dias { display: grid; grid-template-columns: repeat(7, 1fr); gap: 3px; text-align: center; }
.eventos__cal-nombre { font-size: .72rem; font-weight: 700; color: var(--texto-2); padding: 4px 0 2px; }
.eventos__cal-dias button { height: 40px; border: 0; border-radius: 10px; background: transparent; color: var(--tinta);
  font: 600 .95rem var(--sans); cursor: pointer; padding: 0; }
.eventos__cal-dias button:hover:not([disabled]) { background: var(--verde-suave); }
.eventos__cal-dias button[disabled] { color: var(--texto-2); opacity: .5; text-decoration: line-through; cursor: not-allowed; }
.eventos__opcion:has(input:disabled) { opacity: .5; }
.eventos__opcion input:disabled { cursor: not-allowed; }
.eventos__opcion input:disabled + span b { text-decoration: line-through; }
.eventos__cerrado { margin-left: .45rem; font-size: .72rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--texto-2); }
.eventos__cal-dias button.elegido,
.eventos__cal-dias button.elegido:hover:not([disabled]) { background: var(--verde); color: var(--fondo); }
.eventos__cal-cabeza button:focus-visible, .eventos__cal-dias button:focus-visible { outline: 3px solid var(--verde); outline-offset: 1px; }
@media (max-width: 699px) {
  .eventos__form { padding: 18px 14px 16px; border-radius: 16px; }
  .eventos__paso legend { font-size: 1.4rem; margin-bottom: 12px; }
  .eventos__form--pasos .eventos__contador { margin-bottom: 10px; }
  .eventos__opciones--tipos, .eventos__opciones--extras { display: grid; grid-template-columns: 1fr; gap: 8px; }
  .eventos__opciones--tipos .eventos__opcion > span, .eventos__opciones--extras .eventos__opcion > span {
    flex-direction: row; justify-content: flex-start; min-height: 44px; padding: 9px 16px; gap: 10px; border-radius: 999px; }
  .eventos__opciones--tipos .eventos__opcion b, .eventos__opciones--extras .eventos__opcion b { white-space: nowrap; font-size: .9rem; }
  .eventos__opciones--tipos .eventos__opcion svg { width: 18px; height: 18px; flex: none; }
  .eventos__opciones--tipos .eventos__opcion input:checked + span::after,
  .eventos__opciones--extras .eventos__opcion input:checked + span::after { top: -6px; right: -6px; width: 18px; height: 18px; background-size: 12px; }
  .eventos__opcion--foto img, .eventos__sinfoto { aspect-ratio: 16 / 9; height: auto; }
  .eventos__opciones--menus { grid-template-columns: 1fr 1fr; }
  .eventos__opcion--texto > span { padding: 10px 12px; }
  .eventos__opcion--texto b { font-size: .9rem; }
  .eventos__opcion--texto small { font-size: .76rem; }
  .eventos__opcion--corta > span { min-height: 46px; }
  .eventos__rango--pequeno { margin-top: 14px; }
  .eventos__campo { gap: 5px 5px; margin-top: 10px; }
  .eventos__campo input { min-height: 46px; }
  .eventos__opcion--foto b { padding: 7px 6px 8px; font-size: .86rem; }
  .eventos__opcion--texto > span { min-height: 0; padding: 11px 14px; }
  .eventos__cifra { margin-bottom: 6px; }
  .eventos__nav [data-atras] { flex: 0 0 auto; width: auto; padding-inline: 14px; }
  .eventos__cal-dias button { height: 34px; }
  .eventos__cal-cabeza button { width: 34px; height: 34px; }
  .eventos__calendario { padding: 8px 8px 10px; }
  .eventos__resumen { margin: 4px 0 8px; padding: 9px 11px; }
  .eventos__resumen li { font-size: .8rem; padding: 3px 9px; }
}
.menus-grupo { scroll-margin-top: 70px; }
.menus-grupo__cabeza { max-width: 720px; margin: 0 auto 22px; text-align: center; }
.menus-grupo__entrada { color: var(--texto-2); margin: 8px auto 0; max-width: 56ch; }
.menus-grupo__lista { list-style: none; margin: 0; padding: 4px 2px 12px; display: grid; gap: 14px; align-items: stretch;
  grid-auto-flow: column; grid-auto-columns: 78%; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.menus-grupo__lista::-webkit-scrollbar { display: none; }
@media (min-width: 1024px) { .menus-grupo__lista { grid-auto-flow: row; grid-auto-columns: auto; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: visible; } }
@media (min-width: 1280px) { .menus-grupo__lista { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.menu-grupo { scroll-snap-align: center; display: flex; flex-direction: column; min-width: 0; padding: 22px 20px 20px; text-align: center;
  background: var(--fondo-suave); border: 1px solid var(--borde); border-radius: 18px; box-shadow: var(--sombra-tarjeta); }
.menu-grupo__cabeza, .ventana-menu__cabeza { text-align: center; padding-bottom: 14px; margin-bottom: 14px; border-bottom: 1px solid var(--borde); }
.menu-grupo__nombre { margin: 0; font-family: var(--serif); font-size: 1.25rem; line-height: 1.2; color: var(--tinta); }
.menu-grupo__precio { margin: 6px 0 0; font-size: .85rem; color: var(--texto-2); }
.menu-grupo__precio b { display: block; font-family: var(--serif); font-size: 2.4rem; line-height: 1.05; font-weight: 600; color: var(--verde); }
.menu-grupo__resumen { margin: 0 0 18px; font-size: .92rem; line-height: 1.5; color: var(--texto-2); }
.menu-grupo__abrir { margin-top: auto; width: 100%; justify-content: center; min-height: 48px; }
.menu-grupo__parte + .menu-grupo__parte { margin-top: 14px; }
.menu-grupo__parte h4 { margin: 0 0 4px; font: 700 .72rem/1.35 var(--sans); letter-spacing: .14em; text-transform: uppercase; color: var(--verde); }
.menu-grupo__parte h4 small { display: block; font-size: .78rem; font-weight: 400; letter-spacing: 0; text-transform: none; color: var(--texto-2); }
.menu-grupo__parte ul { list-style: none; margin: 0; padding: 0; }
.menu-grupo__parte li { padding: 5px 0; font-size: .92rem; line-height: 1.4; color: var(--tinta); }
.menu-grupo__parte li + li { border-top: 1px dashed var(--borde); }
.menu-grupo__incluye { display: flex; gap: 6px; align-items: center; margin: 16px 0; font-size: .82rem; color: var(--texto-2); }
.menu-grupo__incluye svg { flex: none; color: var(--verde); }
.menu-grupo__pedir { width: 100%; justify-content: center; min-height: 48px; }
.menus-grupo__nota { margin: 14px 0 0; text-align: center; font-size: .82rem; color: var(--texto-2); }
.menu-grupo__etiqueta { margin: 0 0 8px; font: 700 .7rem/1.35 var(--sans); letter-spacing: .12em; text-transform: uppercase; color: var(--verde); }
.ventana-menu__cabeza .menu-grupo__etiqueta { margin: 10px 0 0; }
.menu-grupo__fotos { display: grid; gap: 6px; margin: 0 0 16px; }
.menu-grupo__fotos img { display: block; width: 100%; height: 100%; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 10px; background: var(--borde); }
.menu-grupo__fotos--2 { grid-template-columns: 1fr 1fr; }
.menu-grupo__fotos--3 { grid-template-columns: 2fr 1fr; grid-template-rows: 1fr 1fr; }
.menu-grupo__fotos--3 img:first-child { grid-row: 1 / 3; }
.menu-grupo__fotos--3 img:not(:first-child) { aspect-ratio: auto; min-height: 0; }
.menus-grupo__lista:has(> .menu-grupo:only-child) { grid-auto-flow: row; grid-auto-columns: auto; grid-template-columns: minmax(0, 440px);
  justify-content: center; overflow: visible; }
@media (min-width: 900px) {
  .menu-grupo__fotos--3 { grid-template-columns: repeat(3, 1fr); grid-template-rows: auto; }
  .menu-grupo__fotos--3 img:first-child { grid-row: auto; }
  .menu-grupo__fotos--3 img:not(:first-child) { aspect-ratio: 3 / 2; }
}
.ventana-menu { width: min(92vw, 460px); max-height: min(92vh, 92dvh); padding: 0; border: 1px solid var(--borde); border-radius: 18px;
  background: var(--fondo-suave); color: var(--tinta); box-shadow: 0 30px 80px rgba(0, 0, 0, .45); overflow: hidden; }
.ventana-menu::backdrop { background: rgba(0, 0, 0, .72); }
.ventana-menu[open] { display: flex; flex-direction: column; }
.ventana-menu__pase { display: flex; flex: 1 1 auto; width: 100%; min-height: 0; overflow-x: auto; overflow-y: hidden;
  scroll-snap-type: x mandatory; overscroll-behavior-x: contain; scrollbar-width: none; }
.ventana-menu__pase::-webkit-scrollbar { display: none; }
.ventana-menu__caja { position: relative; display: flex; flex-direction: column; flex: 0 0 100%; min-width: 0; min-height: 0; padding: 22px 22px 18px;
  scroll-snap-align: start; scroll-snap-stop: always; }
.ventana-menu__partes { flex: 1 1 auto; overflow-y: auto; overscroll-behavior: auto contain; min-height: 0; padding-right: 4px; }
.ventana-menu .menu-grupo__pedir { flex: none; }
.ventana-menu__partes.hay-mas { -webkit-mask-image: linear-gradient(to bottom, #000 calc(100% - 40px), transparent);
  mask-image: linear-gradient(to bottom, #000 calc(100% - 40px), transparent); }
.ventana-menu__cabeza { padding-left: 38px; padding-right: 38px; }
.ventana-menu__cerrar { position: absolute; z-index: 2; top: 8px; right: 10px; width: 40px; height: 40px; border: 0; border-radius: 50%; background: none;
  color: var(--texto-2); font-size: 1.7rem; line-height: 1; cursor: pointer; }
.ventana-menu--varios .ventana-menu__caja { padding-bottom: 12px; }
.ventana-menu__nav { flex: none; display: flex; align-items: center; justify-content: center; gap: 18px; padding: 0 16px 12px; }
.ventana-menu__flecha { display: grid; place-items: center; width: 40px; height: 40px; padding: 0; border: 1px solid var(--borde); border-radius: 50%;
  background: none; color: var(--tinta); cursor: pointer; -webkit-tap-highlight-color: transparent; }
.ventana-menu__flecha:disabled { opacity: .3; cursor: default; }
.ventana-menu__flecha:not(:disabled):hover { border-color: var(--verde); color: var(--verde); }
.ventana-menu__flecha:focus-visible { outline: 2px solid var(--verde); outline-offset: 2px; }
.ventana-menu__puntos { display: flex; align-items: center; gap: 7px; }
.ventana-menu__puntos i { width: 7px; height: 7px; border-radius: 999px; background: var(--texto-2); opacity: .45; transition: width .25s ease, opacity .25s ease, background-color .25s ease; }
.ventana-menu__puntos i.activo { width: 20px; background: var(--verde); opacity: 1; }
@media (prefers-reduced-motion: reduce) { .ventana-menu__puntos i { transition: none; } }
.ventana-menu__cerrar:hover, .ventana-menu__cerrar:focus-visible { color: var(--tinta); }
.ventana-menu__cerrar:focus-visible { outline: 2px solid var(--verde); outline-offset: 2px; }
html.no-js .ventana-menu { display: block; position: static; width: auto; max-width: 460px; max-height: none; margin: 16px auto 0; }
html.no-js .ventana-menu__pase { display: block; overflow: visible; }
html.no-js .ventana-menu__caja + .ventana-menu__caja { border-top: 1px solid var(--borde); }
html.no-js .ventana-menu__cerrar, html.no-js .ventana-menu__nav, html.no-js .menu-grupo__abrir { display: none; }
.menus-grupo__pagina { margin: 10px 0 0; text-align: center; font-size: .88rem; }
.menus-grupo__pagina a, .menu-grupo__compartir { display: inline-flex; align-items: center; gap: 7px; min-height: 44px; padding: 6px 10px;
  border-radius: 10px; font-weight: 700; line-height: 1.3; color: var(--verde); text-decoration: none; }
.menus-grupo__pagina svg, .menu-grupo__compartir svg { flex: none; }
.menus-grupo__pagina a:hover, .menu-grupo__compartir:hover { opacity: .8; }
.menus-grupo__pagina a:focus-visible, .menu-grupo__compartir:focus-visible { outline: 2px solid var(--verde); outline-offset: 2px; }
.ventana-menu .menu-grupo__compartir { flex: none; align-self: center; min-height: 32px; margin-top: 2px; padding: 4px 10px; font-size: .85rem; }
.l-cabecera--menus, .hero-cine .l-cabecera--menus { position: static; background: var(--fondo); padding-top: 0.9rem; }
.hero-cine .l-cabecera--menus .l-cabecera__logo img:not(.l-cabecera__logo-claro) { display: block; }
.menus-pagina { padding: 1.25rem 1.25rem 3rem; }
.menus-pagina__cabeza { max-width: 680px; margin: 0 auto 1.75rem; text-align: center; }
.menus-pagina__titulo { margin: 0; font-family: var(--serif); font-weight: 600; font-size: clamp(1.75rem, 7vw, 2.6rem); line-height: 1.12; color: var(--tinta); }
.menus-pagina__restaurante { color: var(--verde); }
@media (max-width: 1023px) {
  .menus-pagina__restaurante { display: block; }
  .menus-pagina__sep { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
}
.menus-pagina__entrada { margin: .85rem auto 0; max-width: 56ch; color: var(--texto-2); }
.menus-pagina__botones { display: grid; gap: .6rem; max-width: 24rem; margin: 1.35rem auto 0; }
.menus-pagina__lista { display: grid; gap: 18px; max-width: 560px; margin: 0 auto; }
.menu-grupo--abierto { text-align: left; scroll-margin-top: 1rem; padding: 24px 20px 20px; }
.menu-grupo--abierto:target { border-color: var(--verde); box-shadow: 0 0 0 2px var(--verde), var(--sombra-tarjeta); }
.menu-grupo--abierto .menu-grupo__parte h3 { margin: 0 0 4px; font: 700 .72rem/1.35 var(--sans); letter-spacing: .14em; text-transform: uppercase; color: var(--verde); }
.menu-grupo--abierto .menu-grupo__parte h3 small { display: block; font-size: .78rem; font-weight: 400; letter-spacing: 0; text-transform: none; color: var(--texto-2); }
.menu-grupo--abierto .menu-grupo__incluye { margin: 16px 0 0; }
.menu-grupo__acciones { display: grid; gap: 10px; margin-top: auto; padding-top: 20px; }
.menu-grupo__acciones .boton { min-height: 50px; }
.menu-grupo__acciones .menu-grupo__compartir-boton { gap: .5rem; padding-inline: .75rem; font-size: .88rem; }
.menus-pagina__nota { max-width: 680px; margin: 1.4rem auto 0; }
.menus-pagina__final { display: grid; justify-items: center; gap: 1rem; max-width: 24rem; margin: 2.25rem auto 0; }
.menus-pagina__volver { display: inline-flex; align-items: center; min-height: 44px; font-size: .92rem; font-weight: 700; color: var(--verde); text-decoration: none; }
.menus-pagina__volver:hover { opacity: .8; }
.menus-pagina .boton:focus-visible, .menus-pagina__volver:focus-visible { outline: 3px solid var(--verde); outline-offset: 3px; }
@media (min-width: 1024px) {
  .menus-pagina { padding: 2rem clamp(2rem, 6vw, 5rem) 4rem; }
  .menus-pagina__botones { grid-template-columns: 1fr 1fr; max-width: 40rem; }
  .menus-pagina__lista--2, .menus-pagina__lista--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 980px; }
  .menus-pagina__lista--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 1180px; }
}
@media (min-width: 1360px) { .menus-pagina__lista--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); max-width: 1320px; } }
@media (min-width: 900px) {
  .menu-grupo--abierto .menu-grupo__fotos--3 { grid-template-columns: 2fr 1fr; grid-template-rows: 1fr 1fr; }
  .menu-grupo--abierto .menu-grupo__fotos--3 img:first-child { grid-row: 1 / 3; }
  .menu-grupo--abierto .menu-grupo__fotos--3 img:not(:first-child) { aspect-ratio: auto; min-height: 0; }
}
body.marca-sagar .menu-grupo--abierto .menu-grupo__parte h3 small,
body.marca-can-tunada .menu-grupo--abierto .menu-grupo__parte h3 small,
body.marca-uyuni .menu-grupo--abierto .menu-grupo__parte h3 small { display: inline; margin-left: 0.5em; padding: 2px 8px; border: 1px solid rgba(233, 179, 90, 0.45);
  border-radius: 999px; font-size: 0.7rem; font-weight: 700; letter-spacing: 0.08em; color: var(--verde); }
body.marca-can-tunada .menu-grupo--abierto .menu-grupo__parte h3 small { border-color: rgba(240, 138, 93, 0.45); }
body.marca-uyuni .menu-grupo--abierto .menu-grupo__parte h3 small { border-color: rgba(231, 191, 69, 0.45); }
body.marca-ozio .menu-grupo--abierto .menu-grupo__parte h3 { color: var(--terracota); font-weight: 600; }
.carta-pestanas[data-deslizar] { overflow-x: clip; }
.carta-pestanas__panel.entra-dcha { animation: carta-entra-dcha .28s ease both; }
.carta-pestanas__panel.entra-izq  { animation: carta-entra-izq .28s ease both; }
@keyframes carta-entra-dcha { from { opacity: 0; transform: translateX(28px); } to { opacity: 1; transform: none; } }
@keyframes carta-entra-izq  { from { opacity: 0; transform: translateX(-28px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .carta-pestanas__panel.entra-dcha, .carta-pestanas__panel.entra-izq { animation: none; } }
.cta-flotante { transition: opacity .25s, transform .25s; }
.cta-flotante.cta-flotante--apartada { opacity: 0; transform: translateY(16px); pointer-events: none; }
body.marca-redondo .premio--sangre .premio__fondo { filter: blur(2px) saturate(1.05); transform: scale(1.03); }
body.marca-redondo .premio--sangre .premio__sello-img { width: clamp(200px, 56vw, 260px); height: auto; border-radius: 12px;
  box-shadow: 0 0 0 1px rgba(255, 201, 153, .25), 0 24px 60px rgba(0, 0, 0, .65), 0 0 80px rgba(255, 201, 153, .14); }
body.marca-redondo .premio--sangre .premio__titular,
body.marca-redondo .premio--sangre .premio__apoyo { position: relative; z-index: 1; }
body.marca-redondo .plato-prensa--letra {
    background: #f4ede1 url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%27200%27 height=%27200%27%3E%3Cfilter id=%27g%27%3E%3CfeTurbulence type=%27fractalNoise%27 baseFrequency=%27.85%27 numOctaves=%272%27 seed=%273%27/%3E%3CfeColorMatrix values=%270 0 0 0 .35 0 0 0 0 .25 0 0 0 0 .15 0 0 0 .07 0%27/%3E%3C/filter%3E%3Crect width=%27200%27 height=%27200%27 filter=%27url%28%23g%29%27/%3E%3C/svg%3E");
}
body.marca-redondo .plato-prensa--letra::before {
    height: 70%;
    background: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%27400%27 height=%27300%27 viewBox=%270 0 400 300%27%3E%3Cg fill=%27none%27 stroke=%27%23c4834a%27 stroke-opacity=%27.6%27%3E%3Ccircle cx=%27200%27 cy=%27372%27 r=%2764%27 stroke-width=%271.5%27/%3E%3Ccircle cx=%27200%27 cy=%27372%27 r=%2786%27 stroke-width=%270.7%27/%3E%3Ccircle cx=%27200%27 cy=%27372%27 r=%27108%27 stroke-width=%271.5%27/%3E%3Ccircle cx=%27200%27 cy=%27372%27 r=%27130%27 stroke-width=%270.7%27/%3E%3Ccircle cx=%27200%27 cy=%27372%27 r=%27152%27 stroke-width=%271.5%27/%3E%3Ccircle cx=%27200%27 cy=%27372%27 r=%27174%27 stroke-width=%270.7%27/%3E%3Ccircle cx=%27200%27 cy=%27372%27 r=%27196%27 stroke-width=%271.5%27/%3E%3Ccircle cx=%27200%27 cy=%27372%27 r=%27218%27 stroke-width=%270.7%27/%3E%3Ccircle cx=%27200%27 cy=%27372%27 r=%27240%27 stroke-width=%271.5%27/%3E%3Ccircle cx=%27200%27 cy=%27372%27 r=%27262%27 stroke-width=%270.7%27/%3E%3Ccircle cx=%27200%27 cy=%27372%27 r=%27284%27 stroke-width=%271.5%27/%3E%3Ccircle cx=%27200%27 cy=%27372%27 r=%27306%27 stroke-width=%270.7%27/%3E%3Ccircle cx=%27200%27 cy=%27372%27 r=%27328%27 stroke-width=%271.5%27/%3E%3Ccircle cx=%27200%27 cy=%27372%27 r=%27350%27 stroke-width=%270.7%27/%3E%3Ccircle cx=%27200%27 cy=%27372%27 r=%27372%27 stroke-width=%271.5%27/%3E%3Ccircle cx=%27200%27 cy=%27372%27 r=%27394%27 stroke-width=%270.7%27/%3E%3Ccircle cx=%27200%27 cy=%27372%27 r=%27416%27 stroke-width=%271.5%27/%3E%3C/g%3E%3C/svg%3E") center bottom / 150% auto no-repeat;
}
@media (max-width: 639px) { body.marca-redondo .plato-prensa--letra::before { height: 46%; } }
body.marca-redondo .plato-prensa--letra .plato-prensa__texto,
body.marca-redondo .plato-prensa--letra h3,
body.marca-redondo .plato-prensa--letra blockquote p,
body.marca-redondo .plato-prensa--letra blockquote footer.plato-prensa__firma { color: #0e1721; }
@font-face { font-family: 'SG Titulos'; src: url('fonts/cormorant-garamond.woff2') format('woff2'); font-weight: 300 700; font-style: normal; font-display: swap; }
@font-face { font-family: 'SG Titulos'; src: url('fonts/cormorant-garamond-italic.woff2') format('woff2'); font-weight: 300 700; font-style: italic; font-display: swap; }
@font-face { font-family: 'SG Texto'; src: url('fonts/redondo-manrope.woff2') format('woff2'); font-weight: 400 800; font-display: swap; }
body.marca-sagar {
    --verde:        #e9b35a;
    --verde-tinta:  #d3a44f;
    --verde-suave:  #10261f;
    --tinta:        #f5ecd9;
    --texto-2:      #bdb6a4;
    --fondo:        #04110f;
    --fondo-rgb:    4, 17, 15;
    --fondo-suave:  #0a1d1a;
    --borde:        #1d3832;
    --resalte-fondo: #2e2511;
    --resalte-tinta: #f7d38d;
    --sombra-tarjeta:  0 8px 28px rgba(0, 0, 0, 0.5);
    --sombra-flotante: 0 10px 30px rgba(0, 0, 0, 0.65);
    --g-tinta: #f5ecd9;
    --g-texto: #ddd5c2;
    --g-suave: #a39d8c;
    --g-borde: #244239;
    --serif: 'SG Titulos', Georgia, serif;
    --sans:  'SG Texto', system-ui, -apple-system, sans-serif;
    background: var(--fondo);
    -webkit-tap-highlight-color: transparent;
    font-variant-numeric: lining-nums;
    font-feature-settings: "lnum" 1;
}
body.marca-sagar h1,
body.marca-sagar h2,
body.marca-sagar .seccion__titulo,
body.marca-sagar .mosaico__titulo { font-weight: 600; letter-spacing: 0; line-height: 1.1; }
body.marca-sagar h1 em,
body.marca-sagar h2 em,
body.marca-sagar .seccion__titulo em,
body.marca-sagar .mosaico__titulo em { font-style: normal; color: var(--verde); }
body.marca-sagar .hero h1 { font-size: clamp(2.5rem, 11.4vw, 3.1rem); line-height: 1.02; }
body.marca-sagar .seccion__titulo,
body.marca-sagar .mosaico__titulo { font-size: clamp(1.9rem, 7.4vw, 2.5rem); }
@media (min-width: 900px) {
    body.marca-sagar .hero h1 { font-size: clamp(3.4rem, 5.2vw, 4.6rem); }
    body.marca-sagar .seccion__titulo,
    body.marca-sagar .mosaico__titulo { font-size: clamp(2.3rem, 3.3vw, 3rem); }
}
body.marca-sagar .tarjeta,
body.marca-sagar .gpanel,
body.marca-sagar .opinion,
body.marca-sagar .faq__item,
body.marca-sagar .categoria,
body.marca-sagar .mosaico__cita,
body.marca-sagar .chip--boton,
body.marca-sagar .chip,
body.marca-sagar .gpanel__tema,
body.marca-sagar .boton--mapa,
body.marca-sagar .beneficio__icono,
body.marca-sagar .mapa__distancia {
    background: var(--fondo-suave);
    border-color: var(--borde);
}
body.marca-sagar .chip { border: 1px solid var(--borde); }
body.marca-sagar .chip--boton.chip--activo {
    background: rgba(233, 179, 90, 0.14);
    border-color: rgba(233, 179, 90, 0.42);
    color: var(--verde);
}
body.marca-sagar .chip--boton.chip--activo b { color: var(--verde); }
body.marca-sagar .chip--boton:hover { background: rgba(245, 236, 217, 0.06); }
body.marca-sagar .tema-cita__texto { color: var(--tinta); }
body.marca-sagar #gdpr-cookie-consent-show-again {
    box-shadow: none !important;
    border: 1px solid rgba(0, 0, 0, 0.35) !important;
}
body.marca-sagar .sello {
    background: rgba(255, 255, 255, 0.06);
    box-shadow: none;
    border: 1px solid var(--borde);
    color: var(--tinta);
}
body.marca-sagar .sello__nota,
body.marca-sagar .sello__nota strong,
body.marca-sagar .sello__dato-titulo { color: var(--tinta); }
body.marca-sagar .sello__pie { color: var(--texto-2); }
body.marca-sagar .sello__dato-icono { background: rgba(233, 179, 90, 0.14); color: var(--verde); }
body.marca-sagar .beneficio__icono {
    background: rgba(233, 179, 90, 0.12);
    border: 1px solid rgba(233, 179, 90, 0.32);
    box-shadow: none;
}
body.marca-sagar .pastilla {
    background: rgba(245, 236, 217, 0.06);
    border: 1px solid rgba(233, 179, 90, 0.4);
    color: rgba(245, 236, 217, 0.88);
    font-weight: 500;
    letter-spacing: 0.08em;
}
body.marca-sagar .pastilla svg { opacity: 0.7; color: var(--verde); }
body.marca-sagar .boton--principal { background: var(--verde); color: #04110f; }
body.marca-sagar .boton--principal:hover { background: #f7d38d; color: #04110f; }
body.marca-sagar .boton--secundario {
    background: transparent;
    color: var(--tinta);
    border-color: rgba(233, 179, 90, 0.55);
}
body.marca-sagar .boton--secundario:hover { border-color: var(--tinta); }
body.marca-sagar .l-pie {
    background: var(--fondo);
    border-top: 1px solid var(--borde);
    color: var(--texto-2);
    overflow: hidden;
}
body.marca-sagar .l-pie a { color: var(--texto-2); font-weight: 500; }
body.marca-sagar .l-pie__nombre { display: none; }
body.marca-sagar .l-pie__gigante--img img { width: min(78%, 620px); }
body.marca-sagar .l-cabecera__logo img { width: auto; height: 44px; }
@media (min-width: 900px) { body.marca-sagar .l-cabecera__logo img { height: 52px; } }
@media (min-width: 1024px) {
    body.marca-sagar .menus-grupo__lista { grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 1080px; margin-inline: auto; gap: 22px; }
}
body.marca-sagar .menu-grupo__nombre { font-size: 1.6rem; font-weight: 600; }
body.marca-sagar .menu-grupo__precio b { font-size: 2.7rem; }
body.marca-sagar .ventana-menu .menu-grupo__parte h4 small { display: inline; margin-left: 0.5em; padding: 2px 8px; border: 1px solid rgba(233, 179, 90, 0.45);
    border-radius: 999px; font-size: 0.7rem; font-weight: 700; letter-spacing: 0.08em; color: var(--verde); }
body.marca-sagar .ventana-menu .menu-grupo__pedir { margin-top: 18px; flex: none; }
body.marca-sagar .menus-grupo + .mosaico { margin-top: 3.2rem; }
@media (min-width: 900px) { body.marca-sagar .menus-grupo + .mosaico { margin-top: 5rem; } }
body.marca-sagar .mosaico__cita-texto { font-size: 1.18rem; line-height: 1.32; }
@media (min-width: 900px) { body.marca-sagar section[aria-label="Antes de venir"] .seccion__titulo { max-width: 760px; margin-inline: auto; } }
body.marca-sagar .carta-pestanas__panel { background: var(--fondo-suave); border: 1px solid var(--borde); }
body.marca-sagar .carta-pestanas__boton { background: transparent; color: var(--tinta); border-color: var(--borde); }
body.marca-sagar .carta-pestanas__boton:hover { border-color: var(--verde); }
body.marca-sagar .carta-pestanas__boton[aria-selected="true"] { background: var(--verde); border-color: var(--verde); color: #04110f; }
body.marca-sagar .carta-pestanas__ver { background: rgba(233, 179, 90, 0.12); }
body.marca-sagar .carta-plato__titulo { font-size: 1.2rem; }
body.marca-sagar .carta-seccion__nota { color: var(--texto-2); }
body.marca-sagar .mapa__pin path { fill: var(--verde); }
body.marca-sagar .mapa__pin circle { fill: #04110f; }
body.marca-sagar .mapa__pulso { background: rgba(233, 179, 90, 0.35); }
body.marca-sagar .mapa__toca { background: rgba(4, 17, 15, 0.88); color: var(--tinta); border: 1px solid var(--borde); }
body.marca-sagar .mapa__distancia { color: var(--verde); }
body.marca-sagar .mosaico__comilla { color: var(--verde); }
body.marca-sagar .opinion__mas { color: var(--verde); }
body.marca-sagar .gbarra__pista { background: rgba(245, 236, 217, 0.12); }
body.marca-sagar .faq__respuesta a,
body.marca-sagar .legal-apartado a,
body.marca-sagar .tarjeta__nota a { text-decoration: none; }
body.marca-sagar .historia--abierta .historia__cuerpo { display: block; margin-top: 1.2rem; }
body.marca-sagar .historia--abierta .historia__foto { display: block; margin: 0; }
body.marca-sagar .historia--abierta .historia__foto img { width: 190px; max-width: 60%; height: auto; aspect-ratio: 703 / 521; object-fit: contain; flex: none;
    border-radius: 8px; box-shadow: 0 0 0 1px rgba(233, 179, 90, 0.35), 0 14px 34px rgba(0, 0, 0, 0.5); }
body.marca-sagar .historia__texto:empty { display: none; }
body.marca-sagar .hito__ano { font-size: 1.5rem; font-weight: 600; }
body.marca-sagar .hito__que { color: var(--g-texto); }
@media (min-width: 900px) {
    body.marca-sagar .historia--abierta { display: grid; grid-template-columns: 210px minmax(0, 1fr); column-gap: 2.4rem; align-items: start; }
    body.marca-sagar .historia--abierta .historia__cuerpo { grid-column: 1; grid-row: 1 / span 2; margin-top: 0.3rem; }
    body.marca-sagar .historia--abierta .historia__foto img { width: 210px; max-width: none; }
    body.marca-sagar .historia--abierta .historia__titulo,
    body.marca-sagar .historia--abierta .historia__entrada { grid-column: 2; }
    body.marca-sagar .historia--abierta .historia__linea { grid-column: 1 / -1; }
}
@media (max-width: 899px) {
    body.marca-sagar.hero-cine .hero h1 { color: var(--tinta); }
    body.marca-sagar.hero-cine .hero h1 em { color: var(--verde); }
    body.marca-sagar.hero-cine .hero__texto { color: var(--tinta); }
    body.marca-sagar.hero-cine .hero__micro { color: rgba(245, 236, 217, 0.9); }
    body.marca-sagar.hero-cine .hero__micro svg { color: var(--verde); }
    body.marca-sagar.hero-cine .hero__foto::after {
        background: linear-gradient(180deg,
            rgba(4, 17, 15, 0.62) 0%,
            rgba(4, 17, 15, 0.10) 16%,
            rgba(4, 17, 15, 0.22) 30%,
            rgba(4, 17, 15, 0.80) 44%,
            rgba(4, 17, 15, 0.92) 58%,
            rgba(4, 17, 15, 0.96) 100%);
    }
    body.marca-sagar.hero-cine .pastilla { background: rgba(4, 17, 15, 0.55); border-color: rgba(233, 179, 90, 0.5); color: var(--tinta); }
    body.marca-sagar.hero-cine .sello { background: rgba(4, 17, 15, 0.6); border: 1px solid rgba(245, 236, 217, 0.16); }
    body.marca-sagar.hero-cine .sello__nota,
    body.marca-sagar.hero-cine .sello__nota strong,
    body.marca-sagar.hero-cine .sello__dato-titulo { color: var(--tinta); }
    body.marca-sagar.hero-cine .sello__pie { color: rgba(245, 236, 217, 0.82); }
    body.marca-sagar.hero-cine .sello__dato-icono { background: rgba(233, 179, 90, 0.16); color: var(--verde); }
    body.marca-sagar.hero-cine .boton--secundario { background: rgba(4, 17, 15, 0.4); }
}
body.marca-sagar .pie-interior { background: var(--fondo); border-top: 1px solid var(--borde); color: var(--texto-2); }
body.marca-sagar .pie-interior__marca { color: var(--tinta); }
body.marca-sagar .pie-interior__legal a { color: var(--texto-2); }
body.marca-sagar .pie-interior__legal a:hover { color: var(--tinta); }
@media (min-width: 1024px) {
    body.marca-sagar .mosaico__pista > .mosaico__col { flex-basis: 0; flex-shrink: 1; width: auto; min-width: 0; }
    body.marca-sagar .mosaico__grande { flex-grow: 240; }
    body.marca-sagar .mosaico__par    { flex-grow: 168; }
    body.marca-sagar .mosaico__cita   { flex-grow: 280; }
}
@media (min-width: 1024px) and (max-width: 1279px) {
    body.marca-sagar .mosaico__pista > .mosaico__col:nth-last-child(-n+4) { display: none; }
}
@media (min-width: 1280px) and (max-width: 1439px) {
    body.marca-sagar .mosaico__pista > .mosaico__col:nth-last-child(-n+3) { display: none; }
}
@media (min-width: 1440px) and (max-width: 1679px) {
    body.marca-sagar .mosaico__pista > .mosaico__col:nth-last-child(-n+2) { display: none; }
}
@media (min-width: 1680px) and (max-width: 1919px) {
    body.marca-sagar .mosaico__pista > .mosaico__col:nth-last-child(-n+1) { display: none; }
}
body.marca-sagar .reserva__velo { background: linear-gradient(180deg, rgba(4, 17, 15, .8), rgba(4, 17, 15, .93)); }
body.marca-sagar .reserva__tarjeta { background: var(--fondo-suave); box-shadow: 0 24px 60px rgba(0, 0, 0, .5), inset 0 0 0 1px rgba(233, 179, 90, .55); }
body.marca-sagar .reserva__titulo { font-size: clamp(1.7rem, 6.4vw, 2.1rem); font-weight: 600; line-height: 1.1; }
body.marca-sagar .reserva__logo img { width: clamp(200px, 56vw, 240px); height: auto; }
body.marca-sagar .reserva__muestra { border-color: rgba(233, 179, 90, .55); color: var(--resalte-tinta); }
body.marca-sagar .reserva__modulo iframe { background: transparent; filter: invert(.92) hue-rotate(180deg) sepia(.45) hue-rotate(118deg) saturate(1.3) brightness(.9); }
body.marca-sagar .gracias { background: var(--fondo); }
body.marca-sagar .gracias__caja { background: var(--fondo-suave); box-shadow: 0 24px 60px rgba(0, 0, 0, .5), inset 0 0 0 1px rgba(233, 179, 90, .55); }
body.marca-sagar .gracias__logo img { max-width: 200px; max-height: 64px; }
body.marca-sagar .hero__sellos:has(.sello--ta) { display: grid; width: max-content; max-width: 100%; grid-template-columns: 1fr 1fr; }
@media (max-width: 379px) {
    body.marca-sagar .hero .pastilla { padding-inline: 0.7rem; letter-spacing: 0.05em; font-size: 0.69rem; }
}
.bloque-ceja { margin: 0 0 .6rem; color: var(--verde); font-size: .78rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }
.bloque-entrada { max-width: 44rem; margin: -.35rem 0 1.5rem; font-size: 1.02rem; line-height: 1.6; color: var(--g-texto); }
.bloque-nota { max-width: 44rem; margin: 1rem 0 0; font-size: .9rem; line-height: 1.55; color: var(--g-suave); }
.bloque-boton { margin: 1.6rem 0 0; }
.eleccion__opciones { display: grid; gap: 1rem; }
.eleccion__opcion { display: flex; flex-direction: column; overflow: hidden; background: var(--fondo-suave); border: 1px solid var(--borde); border-radius: var(--radio-tarjeta); }
.eleccion__foto { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
.eleccion__cuerpo { padding: 1.1rem 1.2rem 1.35rem; }
.eleccion__para { margin: 0 0 .35rem; color: var(--verde); font-size: .76rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.eleccion__nombre { margin: 0 0 .45rem; font-family: var(--serif); font-size: 1.35rem; font-weight: 600; line-height: 1.2; color: var(--tinta); }
.eleccion__texto { margin: 0; line-height: 1.6; color: var(--g-texto); }
.eleccion__ir { margin: .85rem 0 0; }
.eleccion__enlace { font-weight: 700; color: var(--verde); text-decoration: none; }
.eleccion__enlace:hover { text-decoration: none; opacity: .85; }
.eleccion__flecha { white-space: nowrap; }
.eleccion__flecha svg { display: inline-block; vertical-align: -0.15em; }
.momentos__lista { list-style: none; margin: 0; padding: 0; display: grid; gap: 1.1rem; }
.momento { display: grid; grid-template-columns: 7.4rem minmax(0, 1fr); gap: 1rem; align-items: center; }
.momento__foto { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 14px; }
.momento__numero { display: block; margin-bottom: .3rem; font-family: var(--serif); font-size: 1.5rem; line-height: 1; color: var(--verde); font-variant-numeric: tabular-nums; }
.momento__titulo { margin: 0 0 .3rem; font-family: var(--serif); font-size: 1.15rem; font-weight: 600; line-height: 1.25; color: var(--tinta); }
.momento__texto { margin: 0; font-size: .96rem; line-height: 1.55; color: var(--g-texto); }
.imprescindibles__lista {
    list-style: none; margin: 0 -1.25rem; padding: 0 1.25rem .4rem;
    display: grid; grid-auto-flow: column; grid-auto-columns: 72%; gap: .9rem;
    overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scroll-padding-inline: 1.25rem;
    scrollbar-width: none;
}
.imprescindibles__lista::-webkit-scrollbar { display: none; }
.imprescindible { scroll-snap-align: start; display: flex; flex-direction: column; }
.imprescindible__foto { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; border-radius: var(--radio-tarjeta, 14px); }
.imprescindible__cuerpo { padding: .8rem .1rem 0; }
.imprescindible__nombre { margin: 0 0 .25rem; font-family: var(--serif); font-size: 1.12rem; font-weight: 600; line-height: 1.25; color: var(--tinta); }
.imprescindible__precio { margin: 0 0 .35rem; font-weight: 700; color: var(--verde); font-variant-numeric: tabular-nums; }
.imprescindible__unidad { font-weight: 500; font-size: .86rem; color: var(--g-texto); }
.imprescindible__texto { margin: 0; font-size: .93rem; line-height: 1.5; color: var(--g-texto); }
.imprescindibles__nota { margin: 1rem 0 0; font-size: .86rem; color: var(--g-texto); }
.imprescindibles__ir { margin: .7rem 0 0; }
.imprescindible { position: relative; }
.imprescindible__etiqueta {
    position: absolute; z-index: 1; top: .7rem; left: .7rem; max-width: calc(100% - 1.4rem);
    padding: .3rem .65rem; border-radius: 999px; background: var(--verde); color: var(--fondo);
    font: 700 .74rem/1.2 var(--sans); letter-spacing: .06em; text-transform: uppercase;
}
.imprescindibles { position: relative; }
.imprescindibles__sello { position: absolute; top: 1.7rem; right: 1.25rem; width: 6.4rem; height: 6.4rem; pointer-events: none; overflow: hidden; border-radius: 50%; }
.imprescindibles__sello-texto { position: absolute; inset: 0; width: 100%; height: 100%; fill: var(--verde); font: 700 15px var(--sans); letter-spacing: .08em; text-transform: uppercase; animation: im-sello-gira 28s linear infinite; }
.imprescindibles__sello-img { position: absolute; left: 50%; top: 50%; width: 46%; height: auto; transform: translate(-50%, -50%) rotate(-8deg); }
@keyframes im-sello-gira { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .imprescindibles__sello-texto { animation: none; } }
.imprescindibles--con-sello .bloque-ceja,
.imprescindibles--con-sello .seccion__titulo,
.imprescindibles--con-sello .bloque-entrada { padding-right: 6.8rem; }
@media (min-width: 1024px) {
    .imprescindibles__sello { width: 8.4rem; height: 8.4rem; top: 1.9rem; right: clamp(2rem, 6vw, 5rem); }
    .imprescindibles--con-sello .bloque-ceja,
    .imprescindibles--con-sello .seccion__titulo,
    .imprescindibles--con-sello .bloque-entrada { padding-right: 9rem; }
}
@media (min-width: 760px) {
    .imprescindibles__lista { grid-auto-columns: 42%; }
}
@media (min-width: 1024px) {
    .imprescindibles__lista { margin: 0; padding: 0; overflow: visible; grid-auto-columns: minmax(0, 1fr); gap: 1.4rem; scroll-snap-type: none; }
    .imprescindible__nombre { font-size: 1.22rem; }
}
.ocasiones__pestanas { display: flex; flex-wrap: wrap; gap: .5rem; margin: 0 0 1rem; padding: 0; }
.ocasiones__pestanas::-webkit-scrollbar { display: none; }
.ocasiones__pestanas[hidden] { display: none; }
.ocasiones__pestanas button {
    flex: none; min-height: 2.75rem; padding: .5rem 1.1rem;
    border: 1.5px solid var(--borde); border-radius: 999px; background: transparent; color: var(--tinta);
    font: 600 .95rem/1.2 var(--sans); white-space: nowrap; cursor: pointer;
}
.ocasiones__pestanas button:hover { border-color: var(--verde); }
.ocasiones__pestanas button[aria-selected="true"] { background: var(--verde); border-color: var(--verde); color: var(--fondo); }
.ocasion { padding: 1.2rem 1.25rem; background: var(--fondo-suave); border: 1px solid var(--borde); border-radius: var(--radio-tarjeta); }
.ocasion + .ocasion { margin-top: .8rem; }
.con-pestanas .ocasion + .ocasion { margin-top: 0; }
.ocasion[hidden] { display: none; }
.ocasion__nombre { margin: 0 0 .4rem; font-family: var(--serif); font-size: 1.2rem; font-weight: 600; color: var(--tinta); }
.con-pestanas .ocasion__nombre { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.ocasion__texto { margin: 0; line-height: 1.65; color: var(--g-texto); }
@media (min-width: 760px) {
    .eleccion__opciones--2 { grid-template-columns: 1fr 1fr; }
    .eleccion__opciones--3 { grid-template-columns: repeat(3, 1fr); }
    .eleccion__foto { aspect-ratio: 5 / 4; }
    .ocasiones__pestanas { margin: 0 0 1.2rem; padding: 0; overflow: visible; flex-wrap: wrap; }
    .ocasion { max-width: 46rem; padding: 1.5rem 1.8rem; }
}
@media (min-width: 1024px) {
    .bloque-entrada { font-size: 1.08rem; }
    .eleccion__cuerpo { padding: 1.4rem 1.6rem 1.7rem; }
    .eleccion__nombre { font-size: 1.55rem; }
    .momentos__lista { grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 1.4rem; }
    .momento { grid-template-columns: 1fr; align-items: start; align-content: start; gap: .9rem; }
    .momento__foto { border-radius: var(--radio-tarjeta); }
}
.hero__nota-foto {
    position: absolute; z-index: 2; top: .75rem; right: .75rem; margin: 0;
    padding: .25rem .6rem; border-radius: 999px;
    background: rgba(0, 0, 0, .55); color: rgba(255, 255, 255, .88);
    font: 500 .72rem/1.3 var(--sans); letter-spacing: .02em;
}
@media (min-width: 900px) {
    .hero__nota-foto { top: auto; bottom: 1rem; right: 1rem; }
}
@font-face { font-family: 'CT Titulos'; src: url('fonts/D-DIN-Bold.woff2') format('woff2'); font-weight: 600 900; font-display: swap; }
@font-face { font-family: 'CT Texto'; src: url('fonts/inter-tight.woff2') format('woff2'); font-weight: 100 900; font-display: swap; }
body.marca-can-tunada {
    --verde:        #f08a5d;
    --verde-tinta:  #e8693e;
    --verde-suave:  #383709;
    --tinta:        #f1ede8;
    --texto-2:      #c9c4b4;
    --fondo:        #22210a;
    --fondo-rgb:    34, 33, 10;
    --fondo-suave:  #383709;
    --borde:        #4b4a1b;
    --resalte-fondo: #4a2a12;
    --resalte-tinta: #f29a70;
    --sombra-tarjeta:  0 8px 28px rgba(0, 0, 0, 0.45);
    --sombra-flotante: 0 10px 30px rgba(0, 0, 0, 0.6);
    --g-tinta: #f1ede8;
    --g-texto: #ddd8cb;
    --g-suave: #aaa58f;
    --g-borde: #4b4a1b;
    --serif: 'CT Titulos', 'Inter Tight', system-ui, sans-serif;
    --sans:  'CT Texto', system-ui, -apple-system, sans-serif;
    background: var(--fondo);
    -webkit-tap-highlight-color: transparent;
}
body.marca-can-tunada h1,
body.marca-can-tunada h2,
body.marca-can-tunada .seccion__titulo,
body.marca-can-tunada .mosaico__titulo { font-weight: 600; letter-spacing: 0; line-height: 1.1; }
body.marca-can-tunada h1 em,
body.marca-can-tunada h2 em,
body.marca-can-tunada .seccion__titulo em,
body.marca-can-tunada .mosaico__titulo em { font-style: normal; color: var(--verde); }
body.marca-can-tunada .hero h1 { font-size: clamp(2.5rem, 11.4vw, 3.1rem); line-height: 1.02; }
body.marca-can-tunada .seccion__titulo,
body.marca-can-tunada .mosaico__titulo { font-size: clamp(1.9rem, 7.4vw, 2.5rem); }
@media (min-width: 900px) {
    body.marca-can-tunada .hero h1 { font-size: clamp(3.4rem, 5.2vw, 4.6rem); }
    body.marca-can-tunada .seccion__titulo,
    body.marca-can-tunada .mosaico__titulo { font-size: clamp(2.3rem, 3.3vw, 3rem); }
}
body.marca-can-tunada .tarjeta,
body.marca-can-tunada .gpanel,
body.marca-can-tunada .opinion,
body.marca-can-tunada .faq__item,
body.marca-can-tunada .categoria,
body.marca-can-tunada .mosaico__cita,
body.marca-can-tunada .chip--boton,
body.marca-can-tunada .chip,
body.marca-can-tunada .gpanel__tema,
body.marca-can-tunada .boton--mapa,
body.marca-can-tunada .beneficio__icono,
body.marca-can-tunada .mapa__distancia {
    background: var(--fondo-suave);
    border-color: var(--borde);
}
body.marca-can-tunada .chip { border: 1px solid var(--borde); }
body.marca-can-tunada .chip--boton.chip--activo {
    background: rgba(240, 138, 93, 0.14);
    border-color: rgba(240, 138, 93, 0.42);
    color: var(--verde);
}
body.marca-can-tunada .chip--boton.chip--activo b { color: var(--verde); }
body.marca-can-tunada .chip--boton:hover { background: rgba(241, 237, 232, 0.06); }
body.marca-can-tunada .tema-cita__texto { color: var(--tinta); }
body.marca-can-tunada #gdpr-cookie-consent-show-again {
    box-shadow: none !important;
    border: 1px solid rgba(0, 0, 0, 0.35) !important;
}
body.marca-can-tunada .sello {
    background: rgba(255, 255, 255, 0.06);
    box-shadow: none;
    border: 1px solid var(--borde);
    color: var(--tinta);
}
body.marca-can-tunada .sello__nota,
body.marca-can-tunada .sello__nota strong,
body.marca-can-tunada .sello__dato-titulo { color: var(--tinta); }
body.marca-can-tunada .sello__pie { color: var(--texto-2); }
body.marca-can-tunada .sello__dato-icono { background: rgba(240, 138, 93, 0.14); color: var(--verde); }
body.marca-can-tunada .beneficio__icono {
    background: rgba(240, 138, 93, 0.12);
    border: 1px solid rgba(240, 138, 93, 0.32);
    box-shadow: none;
}
body.marca-can-tunada .pastilla {
    background: rgba(241, 237, 232, 0.06);
    border: 1px solid rgba(240, 138, 93, 0.4);
    color: rgba(241, 237, 232, 0.88);
    font-weight: 500;
    letter-spacing: 0.08em;
}
body.marca-can-tunada .pastilla svg { opacity: 0.7; color: var(--verde); }
body.marca-can-tunada .boton--principal { background: var(--verde); color: #22210a; }
body.marca-can-tunada .boton--principal:hover { background: #f29a70; color: #22210a; }
body.marca-can-tunada .boton--secundario {
    background: transparent;
    color: var(--tinta);
    border-color: rgba(240, 138, 93, 0.55);
}
body.marca-can-tunada .boton--secundario:hover { border-color: var(--tinta); }
body.marca-can-tunada .l-pie {
    background: var(--fondo);
    border-top: 1px solid var(--borde);
    color: var(--texto-2);
    overflow: hidden;
}
body.marca-can-tunada .l-pie a { color: var(--texto-2); font-weight: 500; }
body.marca-can-tunada .l-pie__nombre { display: none; }
body.marca-can-tunada .l-pie__gigante--img img { width: min(78%, 620px); }
body.marca-can-tunada .l-cabecera__logo img { width: auto; height: 44px; }
@media (min-width: 900px) { body.marca-can-tunada .l-cabecera__logo img { height: 52px; } }
@media (min-width: 1024px) {
    body.marca-can-tunada .menus-grupo__lista { grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 1080px; margin-inline: auto; gap: 22px; }
}
body.marca-can-tunada .menu-grupo__nombre { font-size: 1.6rem; font-weight: 600; }
body.marca-can-tunada .menu-grupo__precio b { font-size: 2.7rem; }
body.marca-can-tunada .ventana-menu .menu-grupo__parte h4 small { display: inline; margin-left: 0.5em; padding: 2px 8px; border: 1px solid rgba(240, 138, 93, 0.45);
    border-radius: 999px; font-size: 0.7rem; font-weight: 700; letter-spacing: 0.08em; color: var(--verde); }
body.marca-can-tunada .ventana-menu .menu-grupo__pedir { margin-top: 18px; flex: none; }
body.marca-can-tunada .menus-grupo + .mosaico { margin-top: 3.2rem; }
@media (min-width: 900px) { body.marca-can-tunada .menus-grupo + .mosaico { margin-top: 5rem; } }
body.marca-can-tunada .mosaico__cita-texto { font-size: 1.18rem; line-height: 1.32; }
@media (min-width: 900px) { body.marca-can-tunada section[aria-label="Antes de venir"] .seccion__titulo,
    body.marca-can-tunada section[aria-label="Abans de venir"] .seccion__titulo { max-width: 760px; margin-inline: auto; } }
body.marca-can-tunada .carta-pestanas__panel { background: var(--fondo-suave); border: 1px solid var(--borde); }
body.marca-can-tunada .carta-pestanas__boton { background: transparent; color: var(--tinta); border-color: var(--borde); }
body.marca-can-tunada .carta-pestanas__boton:hover { border-color: var(--verde); }
body.marca-can-tunada .carta-pestanas__boton[aria-selected="true"] { background: var(--verde); border-color: var(--verde); color: #22210a; }
body.marca-can-tunada .carta-pestanas__ver { background: rgba(240, 138, 93, 0.12); color: #f4a17b; }
body.marca-can-tunada .carta-web__alergenos { color: var(--verde); }
body.marca-can-tunada .mosaico__cita-nota { color: var(--texto-2); }
body.marca-can-tunada .carta-plato__titulo { font-size: 1.2rem; }
body.marca-can-tunada .carta-seccion__nota { color: var(--texto-2); }
body.marca-can-tunada .mapa__pin path { fill: var(--verde); }
body.marca-can-tunada .mapa__pin circle { fill: #22210a; }
body.marca-can-tunada .mapa__pulso { background: rgba(240, 138, 93, 0.35); }
body.marca-can-tunada .mapa__toca { background: rgba(34, 33, 10, 0.88); color: var(--tinta); border: 1px solid var(--borde); }
body.marca-can-tunada .mapa__distancia { color: var(--verde); }
body.marca-can-tunada .mosaico__comilla { color: var(--verde); }
body.marca-can-tunada .opinion__mas { color: var(--verde); }
body.marca-can-tunada .gbarra__pista { background: rgba(241, 237, 232, 0.12); }
body.marca-can-tunada .faq__respuesta a,
body.marca-can-tunada .legal-apartado a,
body.marca-can-tunada .tarjeta__nota a { text-decoration: none; }
body.marca-can-tunada .historia--abierta .historia__cuerpo { display: block; margin-top: 1.2rem; }
body.marca-can-tunada .historia--abierta .historia__foto { display: block; margin: 0; }
body.marca-can-tunada .historia--abierta .historia__foto img { width: 190px; max-width: 60%; height: auto; aspect-ratio: 703 / 521; object-fit: contain; flex: none;
    border-radius: 8px; box-shadow: 0 0 0 1px rgba(240, 138, 93, 0.35), 0 14px 34px rgba(0, 0, 0, 0.5); }
body.marca-can-tunada .historia__texto:empty { display: none; }
body.marca-can-tunada .hito__ano { font-size: 1.5rem; font-weight: 600; }
body.marca-can-tunada .hito__que { color: var(--g-texto); }
@media (min-width: 900px) {
    body.marca-can-tunada .historia--abierta { display: grid; grid-template-columns: 210px minmax(0, 1fr); column-gap: 2.4rem; align-items: start; }
    body.marca-can-tunada .historia--abierta .historia__cuerpo { grid-column: 1; grid-row: 1 / span 2; margin-top: 0.3rem; }
    body.marca-can-tunada .historia--abierta .historia__foto img { width: 210px; max-width: none; }
    body.marca-can-tunada .historia--abierta .historia__titulo,
    body.marca-can-tunada .historia--abierta .historia__entrada { grid-column: 2; }
    body.marca-can-tunada .historia--abierta .historia__linea { grid-column: 1 / -1; }
}
@media (max-width: 899px) {
    body.marca-can-tunada.hero-cine .hero h1 { color: var(--tinta); }
    body.marca-can-tunada.hero-cine .hero h1 em { color: var(--verde); }
    body.marca-can-tunada.hero-cine .hero__texto { color: var(--tinta); }
    body.marca-can-tunada.hero-cine .hero__micro { color: rgba(241, 237, 232, 0.9); }
    body.marca-can-tunada.hero-cine .hero__micro svg { color: var(--verde); }
    body.marca-can-tunada.hero-cine .hero__foto::after {
        background: linear-gradient(180deg,
            rgba(34, 33, 10, 0.62) 0%,
            rgba(34, 33, 10, 0.10) 16%,
            rgba(34, 33, 10, 0.22) 30%,
            rgba(34, 33, 10, 0.80) 44%,
            rgba(34, 33, 10, 0.92) 58%,
            rgba(34, 33, 10, 0.96) 100%);
    }
    body.marca-can-tunada.hero-cine .pastilla { background: rgba(34, 33, 10, 0.55); border-color: rgba(240, 138, 93, 0.5); color: var(--tinta); }
    body.marca-can-tunada.hero-cine .sello { background: rgba(34, 33, 10, 0.6); border: 1px solid rgba(241, 237, 232, 0.16); }
    body.marca-can-tunada.hero-cine .sello__nota,
    body.marca-can-tunada.hero-cine .sello__nota strong,
    body.marca-can-tunada.hero-cine .sello__dato-titulo { color: var(--tinta); }
    body.marca-can-tunada.hero-cine .sello__pie { color: rgba(241, 237, 232, 0.82); }
    body.marca-can-tunada.hero-cine .sello__dato-icono { background: rgba(240, 138, 93, 0.16); color: var(--verde); }
    body.marca-can-tunada.hero-cine .boton--secundario { background: rgba(34, 33, 10, 0.4); }
}
body.marca-can-tunada .pie-interior { background: var(--fondo); border-top: 1px solid var(--borde); color: var(--texto-2); }
body.marca-can-tunada .pie-interior__marca { color: var(--tinta); }
body.marca-can-tunada .pie-interior__legal a { color: var(--texto-2); }
body.marca-can-tunada .pie-interior__legal a:hover { color: var(--tinta); }
@media (min-width: 1024px) {
    body.marca-can-tunada .mosaico__pista > .mosaico__col { flex-basis: 0; flex-shrink: 1; width: auto; min-width: 0; }
    body.marca-can-tunada .mosaico__grande { flex-grow: 240; }
    body.marca-can-tunada .mosaico__par    { flex-grow: 168; }
    body.marca-can-tunada .mosaico__cita   { flex-grow: 280; }
}
@media (min-width: 1024px) and (max-width: 1279px) {
    body.marca-can-tunada .mosaico__pista > .mosaico__col:nth-last-child(-n+4) { display: none; }
}
@media (min-width: 1280px) and (max-width: 1439px) {
    body.marca-can-tunada .mosaico__pista > .mosaico__col:nth-last-child(-n+3) { display: none; }
}
@media (min-width: 1440px) and (max-width: 1679px) {
    body.marca-can-tunada .mosaico__pista > .mosaico__col:nth-last-child(-n+2) { display: none; }
}
@media (min-width: 1680px) and (max-width: 1919px) {
    body.marca-can-tunada .mosaico__pista > .mosaico__col:nth-last-child(-n+1) { display: none; }
}
body.marca-can-tunada .reserva__velo { background: linear-gradient(180deg, rgba(34, 33, 10, .8), rgba(34, 33, 10, .93)); }
body.marca-can-tunada .reserva__tarjeta { background: var(--fondo-suave); box-shadow: 0 24px 60px rgba(0, 0, 0, .5), inset 0 0 0 1px rgba(240, 138, 93, .55); }
body.marca-can-tunada .reserva__titulo { font-size: clamp(1.7rem, 6.4vw, 2.1rem); font-weight: 600; line-height: 1.1; }
body.marca-can-tunada .reserva__logo img { width: clamp(200px, 56vw, 240px); height: auto; }
body.marca-can-tunada .reserva__muestra { border-color: rgba(240, 138, 93, .55); color: var(--resalte-tinta); }
body.marca-can-tunada .reserva__modulo iframe { background: transparent; filter: invert(.92) hue-rotate(180deg) sepia(.45) hue-rotate(118deg) saturate(1.3) brightness(.9); }
body.marca-can-tunada .gracias { background: var(--fondo); }
body.marca-can-tunada .gracias__caja { background: var(--fondo-suave); box-shadow: 0 24px 60px rgba(0, 0, 0, .5), inset 0 0 0 1px rgba(240, 138, 93, .55); }
body.marca-can-tunada .gracias__logo img { max-width: 200px; max-height: 64px; }
body.marca-can-tunada .hero__sellos:has(.sello--ta) { display: grid; width: max-content; max-width: 100%; grid-template-columns: 1fr 1fr; }
@media (max-width: 379px) {
    body.marca-can-tunada .hero .pastilla { padding-inline: 0.7rem; letter-spacing: 0.05em; font-size: 0.69rem; }
}
body.marca-can-tunada h1,
body.marca-can-tunada h2,
body.marca-can-tunada .seccion__titulo,
body.marca-can-tunada .mosaico__titulo { font-weight: 700; letter-spacing: -0.01em; line-height: 1.08; }
body.marca-can-tunada .hero h1 { font-size: clamp(2.3rem, 10.4vw, 2.9rem); }
@media (min-width: 900px) { body.marca-can-tunada .hero h1 { font-size: clamp(3.1rem, 4.6vw, 4.1rem); } }
body.marca-can-tunada .boton--principal { background: var(--verde-tinta); color: #22210a; }
body.marca-can-tunada .boton--principal:hover { background: var(--verde); color: #22210a; }
body.marca-can-tunada .l-pie { background: #720110; }
body.marca-can-tunada .l-pie a { color: #f1ede8; }
body.marca-can-tunada .patio__dato { background: #720110; border-color: transparent; }
body.marca-can-tunada .patio__dato-cifra { color: #f29a70; }
body.marca-can-tunada .patio__dato-pie { color: #f1ede8; }
@font-face { font-family: 'CT Carta'; src: url('fonts/victor-mono.woff2') format('woff2'); font-weight: 300 600; font-display: swap; }
body.marca-can-tunada .carta-plato__titulo,
body.marca-can-tunada .carta-plato__precio { font-family: 'CT Carta', ui-monospace, monospace; font-weight: 500; letter-spacing: 0; }
@media (min-width: 1024px) {
    body.marca-can-tunada .carta__pista { grid-template-columns: repeat(4, 1fr); max-width: 980px; margin-inline: auto; }
}
@media (max-width: 1023px) {
    body.marca-can-tunada .carta__pista { padding-bottom: 0.9rem; }
}
body.marca-can-tunada .l-pie { padding-top: 0.9rem; }
body.marca-can-tunada .l-pie__gigante { margin: 0.2rem 0 0.7rem !important; }
body.marca-can-tunada .l-pie__gigante--img img { width: min(52%, 360px); }
@media (max-width: 559px) {
    body.marca-can-tunada .hero__botones .boton { letter-spacing: 0.02em; }
}
@media (max-width: 899px) {
    body.marca-can-tunada.hero-banda .hero__foto { aspect-ratio: auto; height: min(100vw, 460px); margin-bottom: 1rem; overflow: hidden; }
    body.marca-can-tunada.hero-banda .hero__foto picture { display: block; height: 100%; }
    body.marca-can-tunada.hero-banda .hero__foto img { height: 100%; object-position: 50% 34%; }
    body.marca-can-tunada.hero-banda .hero { min-height: 0; }
}
.opinion__thefork { display: inline-flex; align-items: center; gap: 0.3rem; font-size: 0.85rem; color: var(--g-texto); }
.opinion__thefork b { color: var(--g-tinta); font-weight: 700; }
@media (min-width: 1024px) {
    body.marca-can-tunada .opiniones__pista { display: flex; flex-wrap: wrap; justify-content: center; }
    body.marca-can-tunada .opiniones__pista > .opinion { flex: 0 0 calc((100% - 2 * 1.1rem) / 3); }
}
@font-face { font-family: 'UY Texto'; src: url('fonts/inter-tight.woff2') format('woff2'); font-weight: 100 900; font-display: swap; }
body.marca-uyuni {
    --verde:        #e7bf45;
    --verde-tinta:  #d4a92e;
    --verde-suave:  #1f2b40;
    --tinta:        #f4efe4;
    --texto-2:      #c3c9d6;
    --fondo:        #141c2b;
    --fondo-rgb:    20, 28, 43;
    --fondo-suave:  #1f2b40;
    --borde:        #34435c;
    --resalte-fondo: #3a3413;
    --resalte-tinta: #f0cf6a;
    --sombra-tarjeta:  0 8px 28px rgba(0, 0, 0, 0.45);
    --sombra-flotante: 0 10px 30px rgba(0, 0, 0, 0.6);
    --g-tinta: #f4efe4;
    --g-texto: #d9dde6;
    --g-suave: #9aa5b8;
    --g-borde: #34435c;
    --serif: 'Lora', Georgia, serif;
    --sans:  'UY Texto', system-ui, -apple-system, sans-serif;
    background: var(--fondo);
    -webkit-tap-highlight-color: transparent;
}
body.marca-uyuni h1,
body.marca-uyuni h2,
body.marca-uyuni .seccion__titulo,
body.marca-uyuni .mosaico__titulo { font-weight: 600; letter-spacing: 0; line-height: 1.1; }
body.marca-uyuni h1 em,
body.marca-uyuni h2 em,
body.marca-uyuni .seccion__titulo em,
body.marca-uyuni .mosaico__titulo em { font-style: normal; color: var(--verde); }
body.marca-uyuni .hero h1 { font-size: clamp(2.5rem, 11.4vw, 3.1rem); line-height: 1.02; }
body.marca-uyuni .seccion__titulo,
body.marca-uyuni .mosaico__titulo { font-size: clamp(1.9rem, 7.4vw, 2.5rem); }
@media (min-width: 900px) {
    body.marca-uyuni .hero h1 { font-size: clamp(3.4rem, 5.2vw, 4.6rem); }
    body.marca-uyuni .seccion__titulo,
    body.marca-uyuni .mosaico__titulo { font-size: clamp(2.3rem, 3.3vw, 3rem); }
}
body.marca-uyuni .tarjeta,
body.marca-uyuni .gpanel,
body.marca-uyuni .opinion,
body.marca-uyuni .faq__item,
body.marca-uyuni .categoria,
body.marca-uyuni .mosaico__cita,
body.marca-uyuni .chip--boton,
body.marca-uyuni .chip,
body.marca-uyuni .gpanel__tema,
body.marca-uyuni .boton--mapa,
body.marca-uyuni .beneficio__icono,
body.marca-uyuni .mapa__distancia {
    background: var(--fondo-suave);
    border-color: var(--borde);
}
body.marca-uyuni .chip { border: 1px solid var(--borde); }
body.marca-uyuni .chip--boton.chip--activo {
    background: rgba(231, 191, 69, 0.14);
    border-color: rgba(231, 191, 69, 0.42);
    color: var(--verde);
}
body.marca-uyuni .chip--boton.chip--activo b { color: var(--verde); }
body.marca-uyuni .chip--boton:hover { background: rgba(244, 239, 228, 0.06); }
body.marca-uyuni .tema-cita__texto { color: var(--tinta); }
body.marca-uyuni #gdpr-cookie-consent-show-again {
    box-shadow: none !important;
    border: 1px solid rgba(0, 0, 0, 0.35) !important;
}
body.marca-uyuni .sello {
    background: rgba(255, 255, 255, 0.06);
    box-shadow: none;
    border: 1px solid var(--borde);
    color: var(--tinta);
}
body.marca-uyuni .sello__nota,
body.marca-uyuni .sello__nota strong,
body.marca-uyuni .sello__dato-titulo { color: var(--tinta); }
body.marca-uyuni .sello__pie { color: var(--texto-2); }
body.marca-uyuni .sello__dato-icono { background: rgba(231, 191, 69, 0.14); color: var(--verde); }
body.marca-uyuni .beneficio__icono {
    background: rgba(231, 191, 69, 0.12);
    border: 1px solid rgba(231, 191, 69, 0.32);
    box-shadow: none;
}
body.marca-uyuni .pastilla {
    background: rgba(244, 239, 228, 0.06);
    border: 1px solid rgba(231, 191, 69, 0.4);
    color: rgba(244, 239, 228, 0.88);
    font-weight: 500;
    letter-spacing: 0.08em;
}
body.marca-uyuni .pastilla svg { opacity: 0.7; color: var(--verde); }
body.marca-uyuni .boton--principal { background: var(--verde); color: #141c2b; }
body.marca-uyuni .boton--principal:hover { background: #f0cf6a; color: #141c2b; }
body.marca-uyuni .boton--secundario {
    background: transparent;
    color: var(--tinta);
    border-color: rgba(231, 191, 69, 0.55);
}
body.marca-uyuni .boton--secundario:hover { border-color: var(--tinta); }
body.marca-uyuni .l-pie {
    background: var(--fondo);
    border-top: 1px solid var(--borde);
    color: var(--texto-2);
    overflow: hidden;
}
body.marca-uyuni .l-pie a { color: var(--texto-2); font-weight: 500; }
body.marca-uyuni .l-pie__nombre { display: none; }
body.marca-uyuni .l-pie__gigante--img img { width: min(78%, 620px); }
body.marca-uyuni .l-cabecera__logo img { width: auto; height: 44px; }
@media (min-width: 900px) { body.marca-uyuni .l-cabecera__logo img { height: 52px; } }
@media (min-width: 1024px) {
    body.marca-uyuni .menus-grupo__lista { grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 1080px; margin-inline: auto; gap: 22px; }
}
body.marca-uyuni .menu-grupo__nombre { font-size: 1.6rem; font-weight: 600; }
body.marca-uyuni .menu-grupo__precio b { font-size: 2.7rem; }
body.marca-uyuni .ventana-menu .menu-grupo__parte h4 small { display: inline; margin-left: 0.5em; padding: 2px 8px; border: 1px solid rgba(231, 191, 69, 0.45);
    border-radius: 999px; font-size: 0.7rem; font-weight: 700; letter-spacing: 0.08em; color: var(--verde); }
body.marca-uyuni .ventana-menu .menu-grupo__pedir { margin-top: 18px; flex: none; }
body.marca-uyuni .menus-grupo + .mosaico { margin-top: 3.2rem; }
@media (min-width: 900px) { body.marca-uyuni .menus-grupo + .mosaico { margin-top: 5rem; } }
body.marca-uyuni .mosaico__cita-texto { font-size: 1.18rem; line-height: 1.32; }
@media (min-width: 900px) { body.marca-uyuni section[aria-label="Antes de venir"] .seccion__titulo,
    body.marca-uyuni section[aria-label="Abans de venir"] .seccion__titulo { max-width: 760px; margin-inline: auto; } }
body.marca-uyuni .carta-pestanas__panel { background: var(--fondo-suave); border: 1px solid var(--borde); }
body.marca-uyuni .carta-pestanas__boton { background: transparent; color: var(--tinta); border-color: var(--borde); }
body.marca-uyuni .carta-pestanas__boton:hover { border-color: var(--verde); }
body.marca-uyuni .carta-pestanas__boton[aria-selected="true"] { background: var(--verde); border-color: var(--verde); color: #141c2b; }
body.marca-uyuni .carta-pestanas__ver { background: rgba(231, 191, 69, 0.12); color: #f0cf6a; }
body.marca-uyuni .carta-web__alergenos { color: var(--verde); }
body.marca-uyuni .mosaico__cita-nota { color: var(--texto-2); }
body.marca-uyuni .carta-plato__titulo { font-size: 1.2rem; }
body.marca-uyuni .carta-seccion__nota { color: var(--texto-2); }
body.marca-uyuni .mapa__pin path { fill: var(--verde); }
body.marca-uyuni .mapa__pin circle { fill: #141c2b; }
body.marca-uyuni .mapa__pulso { background: rgba(231, 191, 69, 0.35); }
body.marca-uyuni .mapa__toca { background: rgba(20, 28, 43, 0.88); color: var(--tinta); border: 1px solid var(--borde); }
body.marca-uyuni .mapa__distancia { color: var(--verde); }
body.marca-uyuni .mosaico__comilla { color: var(--verde); }
body.marca-uyuni .opinion__mas { color: var(--verde); }
body.marca-uyuni .gbarra__pista { background: rgba(244, 239, 228, 0.12); }
body.marca-uyuni .faq__respuesta a,
body.marca-uyuni .legal-apartado a,
body.marca-uyuni .tarjeta__nota a { text-decoration: none; }
body.marca-uyuni .historia--abierta .historia__cuerpo { display: block; margin-top: 1.2rem; }
body.marca-uyuni .historia--abierta .historia__foto { display: block; margin: 0; }
body.marca-uyuni .historia--abierta .historia__foto img { width: 190px; max-width: 60%; height: auto; aspect-ratio: 703 / 521; object-fit: contain; flex: none;
    border-radius: 8px; box-shadow: 0 0 0 1px rgba(231, 191, 69, 0.35), 0 14px 34px rgba(0, 0, 0, 0.5); }
body.marca-uyuni .historia__texto:empty { display: none; }
body.marca-uyuni .hito__ano { font-size: 1.5rem; font-weight: 600; }
body.marca-uyuni .hito__que { color: var(--g-texto); }
@media (min-width: 900px) {
    body.marca-uyuni .historia--abierta { display: grid; grid-template-columns: 210px minmax(0, 1fr); column-gap: 2.4rem; align-items: start; }
    body.marca-uyuni .historia--abierta .historia__cuerpo { grid-column: 1; grid-row: 1 / span 2; margin-top: 0.3rem; }
    body.marca-uyuni .historia--abierta .historia__foto img { width: 210px; max-width: none; }
    body.marca-uyuni .historia--abierta .historia__titulo,
    body.marca-uyuni .historia--abierta .historia__entrada { grid-column: 2; }
    body.marca-uyuni .historia--abierta .historia__linea { grid-column: 1 / -1; }
}
@media (max-width: 899px) {
    body.marca-uyuni.hero-cine .hero h1 { color: var(--tinta); }
    body.marca-uyuni.hero-cine .hero h1 em { color: var(--verde); }
    body.marca-uyuni.hero-cine .hero__texto { color: var(--tinta); }
    body.marca-uyuni.hero-cine .hero__micro { color: rgba(244, 239, 228, 0.9); }
    body.marca-uyuni.hero-cine .hero__micro svg { color: var(--verde); }
    body.marca-uyuni.hero-cine .hero__foto::after {
        background: linear-gradient(180deg,
            rgba(20, 28, 43, 0.62) 0%,
            rgba(20, 28, 43, 0.10) 16%,
            rgba(20, 28, 43, 0.22) 30%,
            rgba(20, 28, 43, 0.80) 44%,
            rgba(20, 28, 43, 0.92) 58%,
            rgba(20, 28, 43, 0.96) 100%);
    }
    body.marca-uyuni.hero-cine .pastilla { background: rgba(20, 28, 43, 0.55); border-color: rgba(231, 191, 69, 0.5); color: var(--tinta); }
    body.marca-uyuni.hero-cine .sello { background: rgba(20, 28, 43, 0.6); border: 1px solid rgba(244, 239, 228, 0.16); }
    body.marca-uyuni.hero-cine .sello__nota,
    body.marca-uyuni.hero-cine .sello__nota strong,
    body.marca-uyuni.hero-cine .sello__dato-titulo { color: var(--tinta); }
    body.marca-uyuni.hero-cine .sello__pie { color: rgba(244, 239, 228, 0.82); }
    body.marca-uyuni.hero-cine .sello__dato-icono { background: rgba(231, 191, 69, 0.16); color: var(--verde); }
    body.marca-uyuni.hero-cine .boton--secundario { background: rgba(20, 28, 43, 0.4); }
}
body.marca-uyuni .pie-interior { background: var(--fondo); border-top: 1px solid var(--borde); color: var(--texto-2); }
body.marca-uyuni .pie-interior__marca { color: var(--tinta); }
body.marca-uyuni .pie-interior__legal a { color: var(--texto-2); }
body.marca-uyuni .pie-interior__legal a:hover { color: var(--tinta); }
@media (min-width: 1024px) {
    body.marca-uyuni .mosaico__pista > .mosaico__col { flex-basis: 0; flex-shrink: 1; width: auto; min-width: 0; }
    body.marca-uyuni .mosaico__grande { flex-grow: 240; }
    body.marca-uyuni .mosaico__par    { flex-grow: 168; }
    body.marca-uyuni .mosaico__cita   { flex-grow: 280; }
}
@media (min-width: 1024px) and (max-width: 1279px) {
    body.marca-uyuni .mosaico__pista > .mosaico__col:nth-last-child(-n+4) { display: none; }
}
@media (min-width: 1280px) and (max-width: 1439px) {
    body.marca-uyuni .mosaico__pista > .mosaico__col:nth-last-child(-n+3) { display: none; }
}
@media (min-width: 1440px) and (max-width: 1679px) {
    body.marca-uyuni .mosaico__pista > .mosaico__col:nth-last-child(-n+2) { display: none; }
}
@media (min-width: 1680px) and (max-width: 1919px) {
    body.marca-uyuni .mosaico__pista > .mosaico__col:nth-last-child(-n+1) { display: none; }
}
body.marca-uyuni .reserva__velo { background: linear-gradient(180deg, rgba(20, 28, 43, .8), rgba(20, 28, 43, .93)); }
body.marca-uyuni .reserva__tarjeta { background: var(--fondo-suave); box-shadow: 0 24px 60px rgba(0, 0, 0, .5), inset 0 0 0 1px rgba(231, 191, 69, .55); }
body.marca-uyuni .reserva__titulo { font-size: clamp(1.7rem, 6.4vw, 2.1rem); font-weight: 600; line-height: 1.1; }
body.marca-uyuni .reserva__logo img { width: clamp(200px, 56vw, 240px); height: auto; }
body.marca-uyuni .reserva__muestra { border-color: rgba(231, 191, 69, .55); color: var(--resalte-tinta); }
body.marca-uyuni .reserva__modulo iframe { background: transparent; filter: invert(.92) hue-rotate(180deg) sepia(.45) hue-rotate(118deg) saturate(1.3) brightness(.9); }
body.marca-uyuni .gracias { background: var(--fondo); }
body.marca-uyuni .gracias__caja { background: var(--fondo-suave); box-shadow: 0 24px 60px rgba(0, 0, 0, .5), inset 0 0 0 1px rgba(231, 191, 69, .55); }
body.marca-uyuni .gracias__logo img { max-width: 200px; max-height: 64px; }
body.marca-uyuni .hero__sellos:has(.sello--ta) { display: grid; width: max-content; max-width: 100%; grid-template-columns: 1fr 1fr; }
@media (max-width: 379px) {
    body.marca-uyuni .hero .pastilla { padding-inline: 0.7rem; letter-spacing: 0.05em; font-size: 0.69rem; }
}
body.marca-uyuni h1,
body.marca-uyuni h2,
body.marca-uyuni .seccion__titulo,
body.marca-uyuni .mosaico__titulo { font-weight: 700; letter-spacing: -0.01em; line-height: 1.08; }
body.marca-uyuni .hero h1 { font-size: clamp(2.3rem, 10.4vw, 2.9rem); }
@media (min-width: 900px) { body.marca-uyuni .hero h1 { font-size: clamp(3.1rem, 4.6vw, 4.1rem); } }
body.marca-uyuni .boton--principal { background: var(--verde-tinta); color: #141c2b; }
body.marca-uyuni .boton--principal:hover { background: var(--verde); color: #141c2b; }
body.marca-uyuni .l-pie { background: #0e1420; }
body.marca-uyuni .l-pie a { color: #f4efe4; }
body.marca-uyuni .patio__dato { background: #0e1420; border-color: transparent; }
body.marca-uyuni .patio__dato-cifra { color: #f0cf6a; }
body.marca-uyuni .patio__dato-pie { color: #f4efe4; }
body.marca-uyuni .carta-plato__titulo { font-family: var(--serif); font-weight: 600; letter-spacing: 0; }
body.marca-uyuni .carta-plato__precio { font-family: var(--sans); font-weight: 600; letter-spacing: 0; }
body.marca-uyuni .patio__foto--grande img { object-position: 50% 0; }
body.marca-uyuni .patio__foto:nth-child(2) img { object-position: 50% 15%; }
@media (min-width: 1024px) {
    body.marca-uyuni .carta__pista { grid-template-columns: repeat(4, 1fr); max-width: 980px; margin-inline: auto; }
    body.marca-uyuni .carta__cabecera { max-width: 980px; margin-inline: auto; }
}
@media (max-width: 1023px) {
    body.marca-uyuni .carta__pista { padding-bottom: 0.9rem; }
}
body.marca-uyuni .l-pie { padding-top: 0.9rem; }
body.marca-uyuni .l-pie__gigante { margin: 0.2rem 0 0.7rem !important; }
body.marca-uyuni .l-pie__gigante--img img { width: min(52%, 360px); }
@media (max-width: 559px) {
    body.marca-uyuni .hero__botones .boton { letter-spacing: 0.02em; }
}
@media (max-width: 899px) {
    body.marca-uyuni.hero-banda .hero__foto { aspect-ratio: auto; height: min(100vw, 460px); margin-bottom: 1rem; overflow: hidden; }
    body.marca-uyuni.hero-banda .hero__foto picture { display: block; height: 100%; }
    body.marca-uyuni.hero-banda .hero__foto img { height: 100%; object-position: 50% 34%; }
    body.marca-uyuni.hero-banda .hero { min-height: 0; }
}
@media (min-width: 1024px) {
    body.marca-uyuni .opiniones__pista { display: flex; flex-wrap: wrap; justify-content: center; }
    body.marca-uyuni .opiniones__pista > .opinion { flex: 0 0 calc((100% - 2 * 1.1rem) / 3); }
}
body.marca-uyuni .premio--sangre { padding: 4rem 1.25rem; }
body.marca-uyuni .premio__velo {
    background:
        radial-gradient(ellipse 85% 62% at 50% 52%, rgba(10, 15, 26, 0.84), rgba(10, 15, 26, 0.5) 72%, rgba(10, 15, 26, 0.34)),
        rgba(10, 15, 26, 0.16);
}
body.marca-uyuni .premio--sangre .premio__caja { max-width: 34rem; }
body.marca-uyuni .premio--sangre .premio__icono { width: 4rem; height: 4rem; margin-bottom: 1.1rem; background: var(--verde); color: #141c2b; }
body.marca-uyuni .premio--sangre .premio__icono svg { width: 36px; height: 36px; }
body.marca-uyuni .premio--sangre .premio__titular { font-size: clamp(1.75rem, 7vw, 2.6rem); font-weight: 600; line-height: 1.12; text-shadow: 0 1px 14px rgba(10, 15, 26, 0.7); }
body.marca-uyuni .premio--sangre .premio__apoyo { margin-top: 0.9rem; font-size: 1.02rem; line-height: 1.5; color: #f4efe4; text-shadow: 0 1px 10px rgba(10, 15, 26, 0.8); }
body.marca-uyuni .premio--sangre .premio__detalle { color: #f0cf6a; border-top-color: rgba(231, 191, 69, 0.45); font-size: 0.86rem; }
@media (min-width: 900px) {
    body.marca-uyuni .premio--sangre { padding: 6.5rem 1.25rem; }
    body.marca-uyuni .premio--sangre .premio__apoyo { font-size: 1.1rem; }
}
body.marca-uyuni .hero__sellos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.45rem; width: 100%; max-width: none; align-items: stretch; }
body.marca-uyuni .hero__sellos-datos { display: contents; }
body.marca-uyuni .hero__sellos .sello { min-width: 0; padding: 0.55rem 0.6rem; gap: 4px; justify-content: center; }
body.marca-uyuni .hero__sellos .sello__nota { gap: 0.3rem; }
body.marca-uyuni .hero__sellos .sello--dato { flex-direction: column; align-items: flex-start; gap: 4px; }
body.marca-uyuni .hero__sellos .sello--dato .sello__dato-icono { width: 20px; height: 20px; margin: 0; background: none; border-radius: 0; }
body.marca-uyuni .hero__sellos .sello--dato .sello__dato-icono svg { width: 20px; height: 20px; }
body.marca-uyuni .hero__sellos .sello--dato .sello__dato-titulo { font-size: 0.74rem; line-height: 1.18; white-space: normal; }
body.marca-uyuni .hero__sellos .sello--dato .sello__pie { display: none; }
@media (min-width: 900px) {
    body.marca-uyuni .hero__sellos { width: 27rem; }
}
body.marca-uyuni .premio--sangre .premio__ceja {
    display: flex; align-items: center; justify-content: center; gap: 0.9rem;
    margin: 0 0 1.1rem; color: #f0cf6a; font-size: 0.8rem; font-weight: 600; letter-spacing: 0.22em;
    text-shadow: 0 1px 10px rgba(10, 15, 26, 0.8);
}
body.marca-uyuni .premio--sangre .premio__ceja::before,
body.marca-uyuni .premio--sangre .premio__ceja::after { content: ""; flex: 0 0 2.4rem; height: 1px; background: rgba(240, 207, 106, 0.75); }
body.marca-uyuni .premio--sangre .premio__titular { font-size: clamp(2rem, 8.4vw, 3rem); }
@media (min-width: 900px) {
    body.marca-uyuni .premio--sangre .premio__ceja { font-size: 0.86rem; margin-bottom: 1.3rem; }
    body.marca-uyuni .premio--sangre .premio__ceja::before,
    body.marca-uyuni .premio--sangre .premio__ceja::after { flex-basis: 3.2rem; }
    body.marca-uyuni .premio--sangre .premio__caja { max-width: 40rem; }
}
body.marca-uyuni .hero__sellos .estrellas,
body.marca-uyuni .hero__sellos .estrellas--thefork { gap: 2px; }
body.marca-uyuni .hero__sellos .estrellas svg,
body.marca-uyuni .hero__sellos .estrellas--thefork svg { width: 12px; height: 12px; }
body.marca-uyuni .hero__sellos .sello,
body.marca-uyuni .hero__sellos .sello--dato { align-items: center; text-align: center; }
@media (max-width: 899px) {
    body.marca-uyuni .hero__sellos .sello__nota { gap: 0.25rem; }
    body.marca-uyuni .hero__sellos .sello__nota strong { font-size: 1.02rem; }
    body.marca-uyuni .hero__sellos .estrellas svg,
    body.marca-uyuni .hero__sellos .estrellas--thefork svg { width: 10px; height: 10px; }
}
body.marca-sagar .gdpr_action_button, body.marca-sagar #cookie_action_accept,
body.marca-sagar #cookie_action_accept_all, body.marca-sagar #cookie_action_reject,
body.marca-sagar #gdpr-cookie-consent-show-again { color: #15120f !important; }
body.marca-sagar .gdpr_action_button[data-gdpr_action="settings"], body.marca-sagar #cookie_action_settings,
body.marca-sagar .gdprmodal a:not(.gdpr_action_button), body.marca-sagar #cookie_action_link,
body.marca-sagar .always-active, body.marca-sagar .gdprmodal-header p { color: #15120f !important; }
body.marca-sagar .gdprmodal a:not(.gdpr_action_button), body.marca-sagar #cookie_action_link {
  text-decoration: underline !important; text-decoration-color: var(--verde) !important; text-decoration-thickness: 2px !important; text-underline-offset: 3px !important; }
@font-face { font-family: 'AH Titulos'; src: url('fonts/ahuevo-alata.woff2') format('woff2'); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: 'AH Texto'; src: url('fonts/ahuevo-newsreader.woff2') format('woff2'); font-weight: 300 700; font-style: normal; font-display: swap; }
@font-face { font-family: 'AH Texto'; src: url('fonts/ahuevo-newsreader-italic.woff2') format('woff2'); font-weight: 300 700; font-style: italic; font-display: swap; }
body.marca-a-huevo {
    --yema:         #ecbd20;
    --verde:        #1b1a17;
    --verde-tinta:  #000000;
    --verde-suave:  #fbf0c9;
    --tinta:        #1b1a17;
    --texto-2:      #57534a;
    --fondo:        #ffffff;
    --fondo-rgb:    255, 255, 255;
    --fondo-suave:  #eef1e9;
    --borde:        #e4e2d8;
    --resalte-fondo: #fbf0c9;
    --resalte-tinta: #1b1a17;
    --serif: 'AH Titulos', 'Helvetica Neue', Arial, sans-serif;
    --sans:  'AH Texto', Georgia, 'Times New Roman', serif;
    --radio-tarjeta: 22px;
    --sombra-tarjeta:  0 10px 30px rgba(27, 26, 23, 0.08);
    --sombra-flotante: 0 10px 30px rgba(27, 26, 23, 0.22);
    background: var(--fondo);
    font-optical-sizing: auto;
}
body.marca-a-huevo h1,
body.marca-a-huevo h2,
body.marca-a-huevo h3,
body.marca-a-huevo .seccion__titulo,
body.marca-a-huevo .mosaico__titulo,
body.marca-a-huevo .premio__titular { font-family: var(--serif); font-weight: 400; letter-spacing: -0.02em; font-synthesis: none; }
body.marca-a-huevo h1 em,
body.marca-a-huevo h2 em,
body.marca-a-huevo .seccion__titulo em,
body.marca-a-huevo .mosaico__titulo em {
    font-style: normal; color: var(--tinta);
    background: linear-gradient(transparent 62%, var(--yema) 62%, var(--yema) 92%, transparent 92%);
    -webkit-box-decoration-break: clone; box-decoration-break: clone;
    padding: 0 0.06em;
}
body.marca-a-huevo .hero h1 { font-size: clamp(2.45rem, 11vw, 3.1rem); line-height: 1.02; }
body.marca-a-huevo .seccion__titulo,
body.marca-a-huevo .mosaico__titulo { font-size: clamp(1.85rem, 7.2vw, 2.45rem); line-height: 1.08; }
@media (min-width: 900px) {
    body.marca-a-huevo .hero h1 { font-size: clamp(3.3rem, 5vw, 4.4rem); }
    body.marca-a-huevo .seccion__titulo,
    body.marca-a-huevo .mosaico__titulo { font-size: clamp(2.2rem, 3.2vw, 2.9rem); }
}
body.marca-a-huevo .boton,
body.marca-a-huevo .pastilla,
body.marca-a-huevo .chip,
body.marca-a-huevo .sello__nota strong,
body.marca-a-huevo .sello__dato-titulo,
body.marca-a-huevo .faq__pregunta,
body.marca-a-huevo .cta-flotante { font-family: var(--serif); font-weight: 400; letter-spacing: 0; }
body.marca-a-huevo .boton { text-transform: none; letter-spacing: 0; font-size: 1.02rem; }
@media (max-width: 899px) {
    body.marca-a-huevo .hero__botones { width: 100%; max-width: none; }
    body.marca-a-huevo .hero__botones .boton { padding-left: 0.7rem; padding-right: 0.7rem; white-space: nowrap; }
}
body.marca-a-huevo .boton--principal { background: var(--yema); color: var(--tinta); box-shadow: none; }
body.marca-a-huevo .boton--principal:hover { background: #f3cd4f; color: var(--tinta); }
body.marca-a-huevo .boton--secundario { background: transparent; color: var(--tinta); border-color: var(--tinta); }
body.marca-a-huevo .boton--secundario:hover { background: var(--fondo-suave); }
body.marca-a-huevo .pastilla { background: var(--verde-suave); color: var(--tinta); border: 0; }
body.marca-a-huevo .beneficio__icono { background: var(--verde-suave); color: var(--tinta); box-shadow: none; }
body.marca-a-huevo .l-pie { background: var(--tinta); color: rgba(255, 255, 255, 0.72); border-top: 0; }
body.marca-a-huevo .l-pie a { color: rgba(255, 255, 255, 0.9); }
body.marca-a-huevo .l-pie__nombre { display: none; }
body.marca-a-huevo .l-pie__gigante--img img { width: min(70%, 460px); }
body.marca-a-huevo #gdpr-cookie-consent-show-again { background-color: var(--yema) !important; color: #15120f !important; }
body.marca-a-huevo .l-cabecera__logo img { width: auto; height: 46px; }
@media (min-width: 900px) { body.marca-a-huevo .l-cabecera__logo img { height: 54px; } }
body.marca-a-huevo .hero__sellos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.45rem; width: 100%; max-width: none; align-items: stretch; }
body.marca-a-huevo .hero__sellos-datos { display: contents; }
body.marca-a-huevo .hero__sellos .sello { min-width: 0; padding: 0.55rem 0.6rem; gap: 4px; justify-content: center; align-items: center; text-align: center; }
body.marca-a-huevo .hero__sellos .sello__nota { gap: 0.3rem; }
body.marca-a-huevo .hero__sellos .sello--dato { flex-direction: column; align-items: center; gap: 4px; }
body.marca-a-huevo .hero__sellos .sello--dato .sello__dato-icono { width: 20px; height: 20px; margin: 0; background: none; border-radius: 0; color: var(--tinta); }
body.marca-a-huevo .hero__sellos .sello--dato .sello__dato-icono svg { width: 20px; height: 20px; }
body.marca-a-huevo .hero__sellos .sello--dato .sello__dato-titulo { font-size: 0.76rem; line-height: 1.18; white-space: normal; }
body.marca-a-huevo .hero__sellos .sello--dato .sello__pie { display: block; font-size: 0.7rem; line-height: 1.2; }
body.marca-a-huevo .hero__sellos .estrellas,
body.marca-a-huevo .hero__sellos .estrellas--thefork { gap: 2px; }
body.marca-a-huevo .hero__sellos .estrellas svg,
body.marca-a-huevo .hero__sellos .estrellas--thefork svg { width: 12px; height: 12px; }
@media (min-width: 900px) { body.marca-a-huevo .hero__sellos { width: 27rem; } }
@media (max-width: 899px) {
    body.marca-a-huevo .hero__sellos .sello__nota { gap: 0.25rem; }
    body.marca-a-huevo .hero__sellos .sello__nota strong { font-size: 1.02rem; }
    body.marca-a-huevo .hero__sellos .estrellas svg,
    body.marca-a-huevo .hero__sellos .estrellas--thefork svg { width: 10px; height: 10px; }
}
body.marca-a-huevo .premio__sello-img { width: 128px; height: auto; filter: drop-shadow(0 2px 10px rgba(0, 0, 0, 0.55)); }
@media (min-width: 900px) { body.marca-a-huevo .premio__sello-img { width: 150px; } }
body.marca-a-huevo .premio--sangre .premio__sello { color: var(--yema); }
body.marca-a-huevo .premio--sangre .premio__ceja {
    display: flex; align-items: center; justify-content: center; gap: 0.9rem;
    margin: 0 0 1.1rem; color: var(--yema); font-family: var(--serif); font-size: 0.86rem; letter-spacing: 0.18em;
    text-shadow: 0 1px 10px rgba(0, 0, 0, 0.7);
}
body.marca-a-huevo .premio--sangre .premio__ceja::before,
body.marca-a-huevo .premio--sangre .premio__ceja::after { content: ""; flex: 0 0 2.4rem; height: 1px; background: rgba(236, 189, 32, 0.8); }
body.marca-a-huevo .premio--sangre .premio__titular { font-size: clamp(2.2rem, 9vw, 3.4rem); }
body.marca-a-huevo .mapa__pin path { fill: var(--tinta); }
body.marca-a-huevo .mapa__pin circle { fill: var(--yema); }
body.marca-a-huevo .mapa__pulso { background: rgba(236, 189, 32, 0.4); }
body.marca-a-huevo .menu-grupo { border: 2px solid #1f3b63; box-shadow: none; background: var(--fondo); }
body.marca-a-huevo .menu-grupo--abierto:target { border-color: var(--verde); box-shadow: 0 0 0 2px var(--verde); }
body.marca-a-huevo .menu-grupo__precio b { font-weight: 400; color: var(--tinta); }
@media (min-width: 1024px) {
    body.marca-a-huevo .menus-grupo__lista { grid-template-columns: repeat(2, minmax(0, 420px)); justify-content: center; gap: 26px; }
}
.gpanel__resumen--tres { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; align-items: start; margin: 6px 0 18px; }
.gpanel__fuente { display: flex; flex-direction: column; align-items: center; gap: 4px; text-align: center; padding: 14px 6px 12px;
  border: 1px solid var(--g-borde); border-radius: 14px; background: var(--fondo); min-width: 0; }
.gpanel__fuente-marca { display: inline-flex; height: 24px; align-items: center; }
.gpanel__resumen--tres .gpanel__cifra { font-size: 2.1rem; line-height: 1; }
.gpanel__resumen--tres .gpanel__cifra small { font-size: 0.9rem; margin-left: 1px; color: var(--g-suave); }
.gpanel__resumen--tres .gpanel__total { font-size: 0.78rem; line-height: 1.25; }
@media (min-width: 900px) { .gpanel__resumen--tres { max-width: 640px; margin-inline: auto; gap: 16px; } .gpanel__resumen--tres .gpanel__cifra { font-size: 2.5rem; } }
@font-face { font-family: 'BBC Abhaya'; src: url('fonts/bbc-abhaya-400.woff2') format('woff2'); font-weight: 100 600; font-display: swap; }
@font-face { font-family: 'BBC Abhaya'; src: url('fonts/bbc-abhaya-700.woff2') format('woff2'); font-weight: 700; font-display: swap; }
@font-face { font-family: 'BBC Abhaya'; src: url('fonts/bbc-abhaya-800.woff2') format('woff2'); font-weight: 800 900; font-display: swap; }
body.marca-boom-boom-ciao {
    --verde:        #c7a13d;
    --verde-tinta:  #a8862f;
    --verde-suave:  #1f1a0e;
    --tinta:        #f6f1e6;
    --texto-2:      #bdb4a3;
    --fondo:        #0a0908;
    --fondo-rgb:    10, 9, 8;
    --fondo-suave:  #15130f;
    --borde:        #2b261d;
    --resalte-fondo: #2c2410;
    --resalte-tinta: #e0bf63;
    --sombra-tarjeta:  0 8px 28px rgba(0, 0, 0, 0.5);
    --sombra-flotante: 0 10px 30px rgba(0, 0, 0, 0.65);
    --g-tinta: #f6f1e6;
    --g-texto: #d8d0c0;
    --g-suave: #a59c8b;
    --g-borde: #2f291f;
    --serif: 'BBC Abhaya', Georgia, 'Times New Roman', serif;
    --sans:  system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
    background: var(--fondo);
}
body.marca-boom-boom-ciao h1,
body.marca-boom-boom-ciao h2,
body.marca-boom-boom-ciao .seccion__titulo,
body.marca-boom-boom-ciao .mosaico__titulo { font-weight: 800; letter-spacing: 0.01em; line-height: 1.1; }
body.marca-boom-boom-ciao h1 em,
body.marca-boom-boom-ciao h2 em,
body.marca-boom-boom-ciao .seccion__titulo em,
body.marca-boom-boom-ciao .mosaico__titulo em { font-style: normal; color: var(--verde); }
body.marca-boom-boom-ciao .tarjeta,
body.marca-boom-boom-ciao .gpanel,
body.marca-boom-boom-ciao .opinion,
body.marca-boom-boom-ciao .faq__item,
body.marca-boom-boom-ciao .categoria,
body.marca-boom-boom-ciao .mosaico__cita,
body.marca-boom-boom-ciao .chip--boton,
body.marca-boom-boom-ciao .chip,
body.marca-boom-boom-ciao .gpanel__tema,
body.marca-boom-boom-ciao .boton--mapa,
body.marca-boom-boom-ciao .beneficio__icono,
body.marca-boom-boom-ciao .mapa__distancia {
    background: var(--fondo-suave);
    border-color: var(--borde);
}
body.marca-boom-boom-ciao .chip { border: 1px solid var(--borde); }
body.marca-boom-boom-ciao .chip--boton.chip--activo {
    background: rgba(199, 161, 61, 0.14);
    border-color: rgba(199, 161, 61, 0.42);
    color: var(--verde);
}
body.marca-boom-boom-ciao .chip--boton.chip--activo b { color: var(--verde); }
body.marca-boom-boom-ciao .chip--boton:hover { background: rgba(246, 241, 230, 0.06); }
body.marca-boom-boom-ciao .tema-cita__texto { color: var(--tinta); }
body.marca-boom-boom-ciao #gdpr-cookie-consent-show-again {
    box-shadow: none !important;
    border: 1px solid rgba(0, 0, 0, 0.35) !important;
}
body.marca-boom-boom-ciao .sello {
    background: rgba(255, 255, 255, 0.06);
    box-shadow: none;
    border: 1px solid var(--borde);
    color: var(--tinta);
}
body.marca-boom-boom-ciao .sello__nota,
body.marca-boom-boom-ciao .sello__nota strong,
body.marca-boom-boom-ciao .sello__dato-titulo { color: var(--tinta); }
body.marca-boom-boom-ciao .sello__pie { color: var(--texto-2); }
body.marca-boom-boom-ciao .beneficio__icono {
    background: rgba(199, 161, 61, 0.12);
    border: 1px solid rgba(199, 161, 61, 0.32);
    box-shadow: none;
}
body.marca-boom-boom-ciao .pastilla {
    background: rgba(246, 241, 230, 0.06);
    border: 1px solid rgba(246, 241, 230, 0.2);
    color: rgba(246, 241, 230, 0.8);
    font-weight: 500;
    letter-spacing: 0.08em;
}
body.marca-boom-boom-ciao .pastilla svg { opacity: 0.65; }
body.marca-boom-boom-ciao .boton--principal { background: var(--verde); color: #0a0908; }
body.marca-boom-boom-ciao .boton--principal:hover { background: #d8b552; color: #0a0908; }
body.marca-boom-boom-ciao .boton--secundario {
    background: transparent;
    color: var(--tinta);
    border-color: rgba(246, 241, 230, 0.35);
}
body.marca-boom-boom-ciao .boton--secundario:hover { border-color: var(--tinta); }
body.marca-boom-boom-ciao .l-pie {
    background: var(--fondo);
    border-top: 1px solid var(--borde);
    color: var(--texto-2);
    overflow: hidden;
}
body.marca-boom-boom-ciao .l-pie a { color: var(--texto-2); font-weight: 500; }
body.marca-boom-boom-ciao .l-pie__nombre { display: none; }
body.marca-boom-boom-ciao .l-pie__gigante {
    background: linear-gradient(180deg, #e0bf63 0%, var(--verde) 45%, rgba(199, 161, 61, 0.22) 100%);
    -webkit-background-clip: text;
    background-clip: text;
}
body.marca-boom-boom-ciao .carta-pestanas__panel { background: var(--fondo-suave); border: 1px solid var(--borde); }
body.marca-boom-boom-ciao .carta-pestanas__boton { background: transparent; color: var(--tinta); border-color: var(--borde); }
body.marca-boom-boom-ciao .carta-pestanas__boton:hover { border-color: var(--verde); }
body.marca-boom-boom-ciao .carta-pestanas__boton[aria-selected="true"] { background: var(--verde); border-color: var(--verde); color: #0a0908; }
body.marca-boom-boom-ciao .carta-pestanas__ver { background: rgba(199, 161, 61, 0.12); }
body.marca-boom-boom-ciao .mapa__pin path { fill: var(--verde); }
body.marca-boom-boom-ciao .mapa__pin circle { fill: #0a0908; }
body.marca-boom-boom-ciao .mapa__pulso { background: rgba(199, 161, 61, 0.35); }
body.marca-boom-boom-ciao .mapa__toca { background: rgba(10, 9, 8, 0.88); color: var(--tinta); border: 1px solid var(--borde); }
body.marca-boom-boom-ciao .mapa__distancia { color: var(--verde); }
body.marca-boom-boom-ciao .mosaico__comilla { color: var(--verde); }
body.marca-boom-boom-ciao .opinion__mas { color: var(--verde); }
@media (min-width: 1024px) {
    body.marca-boom-boom-ciao .mosaico__pista > .mosaico__col { flex-basis: 0; flex-shrink: 1; width: auto; min-width: 0; }
    body.marca-boom-boom-ciao .mosaico__grande { flex-grow: 240; }
    body.marca-boom-boom-ciao .mosaico__par    { flex-grow: 168; }
    body.marca-boom-boom-ciao .mosaico__cita   { flex-grow: 280; }
}
@media (min-width: 1024px) and (max-width: 1279px) {
    body.marca-boom-boom-ciao .mosaico__pista > .mosaico__col:nth-last-child(-n+4) { display: none; }
}
@media (min-width: 1280px) and (max-width: 1439px) {
    body.marca-boom-boom-ciao .mosaico__pista > .mosaico__col:nth-last-child(-n+3) { display: none; }
}
@media (min-width: 1440px) and (max-width: 1679px) {
    body.marca-boom-boom-ciao .mosaico__pista > .mosaico__col:nth-last-child(-n+2) { display: none; }
}
@media (min-width: 1680px) and (max-width: 1919px) {
    body.marca-boom-boom-ciao .mosaico__pista > .mosaico__col:nth-last-child(-n+1) { display: none; }
}
body.marca-boom-boom-ciao .gbarra__pista { background: rgba(246, 241, 230, 0.12); }
body.marca-boom-boom-ciao .reserva__velo { background: linear-gradient(180deg, rgba(10, 9, 8, .78), rgba(10, 9, 8, .92)); }
body.marca-boom-boom-ciao .reserva__tarjeta { box-shadow: 0 24px 60px rgba(0, 0, 0, .45), inset 0 0 0 1px rgba(246, 241, 230, .1); }
body.marca-boom-boom-ciao .reserva__modulo iframe { background: #000; filter: none; }
body.marca-boom-boom-ciao .gracias { background: var(--fondo); }
body.marca-boom-boom-ciao .gracias__caja { background: var(--fondo-suave); box-shadow: 0 24px 60px rgba(0, 0, 0, .45), inset 0 0 0 1px rgba(246, 241, 230, .1); }
body.marca-boom-boom-ciao .gracias__logo img { max-width: 195px; }
body.marca-boom-boom-ciao .pie-interior { background: var(--fondo); border-top: 1px solid var(--borde); color: var(--texto-2); }
body.marca-boom-boom-ciao .pie-interior__marca { color: var(--tinta); }
body.marca-boom-boom-ciao .pie-interior__legal a { color: var(--texto-2); }
body.marca-boom-boom-ciao .pie-interior__legal a:hover { color: var(--tinta); }
@media (max-width: 899px) {
    body.marca-boom-boom-ciao.hero-cine .hero h1 { color: var(--tinta); }
    body.marca-boom-boom-ciao.hero-cine .hero h1 em { color: var(--verde); }
    body.marca-boom-boom-ciao.hero-cine .hero__texto { color: var(--tinta); }
    body.marca-boom-boom-ciao.hero-cine .hero__micro { color: rgba(246, 241, 230, 0.9); }
    body.marca-boom-boom-ciao.hero-cine .hero__micro svg { color: var(--verde); }
    body.marca-boom-boom-ciao.hero-cine .hero__foto::after {
        background: linear-gradient(180deg,
            rgba(10, 9, 8, 0.55) 0%,
            rgba(10, 9, 8, 0.12) 18%,
            rgba(10, 9, 8, 0.42) 34%,
            rgba(10, 9, 8, 0.74) 45%,
            rgba(10, 9, 8, 0.82) 58%,
            rgba(10, 9, 8, 0.9) 75%,
            rgba(10, 9, 8, 0.96) 100%);
    }
    body.marca-boom-boom-ciao.hero-cine .pastilla { background: rgba(10, 9, 8, 0.4); border-color: rgba(246, 241, 230, 0.28); color: var(--tinta); }
    body.marca-boom-boom-ciao.hero-cine .sello { background: rgba(10, 9, 8, 0.55); border: 1px solid rgba(246, 241, 230, 0.14); }
    body.marca-boom-boom-ciao.hero-cine .sello__nota,
    body.marca-boom-boom-ciao.hero-cine .sello__nota strong,
    body.marca-boom-boom-ciao.hero-cine .sello__dato-titulo { color: var(--tinta); }
    body.marca-boom-boom-ciao.hero-cine .sello__pie { color: rgba(246, 241, 230, 0.8); }
    body.marca-boom-boom-ciao.hero-cine .sello__dato-icono { background: rgba(199, 161, 61, 0.16); color: var(--verde); }
    body.marca-boom-boom-ciao.hero-cine .boton--secundario { background: rgba(10, 9, 8, 0.35); }
}
@media (min-width: 1024px) {
    body.marca-boom-boom-ciao .menus-grupo__lista:has(> .menu-grupo:nth-child(3):last-child) {
        grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 1080px; margin-inline: auto; gap: 22px; }
}
body.marca-boom-boom-ciao .l-cabecera__logo img { width: 132px; height: auto; }
@media (min-width: 900px) { body.marca-boom-boom-ciao .l-cabecera__logo img { width: 156px; } }
body.marca-boom-boom-ciao .l-pie img { width: 210px; }
body.marca-boom-boom-ciao #contenido { position: relative; isolation: isolate; }
body.marca-boom-boom-ciao #contenido::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background:
        url('img/boom-boom-ciao/estrellas-1.svg') 0 0 / 900px 900px repeat,
        url('img/boom-boom-ciao/estrellas-2.svg') 310px 470px / 1370px 1370px repeat,
        radial-gradient(60% 34% at 12% 22%, rgba(22, 74, 70, 0.30), transparent 70%) no-repeat,
        radial-gradient(52% 30% at 92% 40%, rgba(84, 30, 72, 0.28), transparent 70%) no-repeat,
        radial-gradient(56% 26% at 26% 60%, rgba(150, 92, 22, 0.16), transparent 70%) no-repeat,
        radial-gradient(58% 30% at 84% 78%, rgba(22, 74, 70, 0.26), transparent 70%) no-repeat,
        radial-gradient(50% 24% at 18% 94%, rgba(84, 30, 72, 0.22), transparent 70%) no-repeat,
        var(--fondo);
    --lienzo-desde: 980px;
    -webkit-mask-image: linear-gradient(180deg, transparent 0, transparent var(--lienzo-desde), #000 calc(var(--lienzo-desde) + 480px), #000 calc(100% - 560px), transparent 100%);
            mask-image: linear-gradient(180deg, transparent 0, transparent var(--lienzo-desde), #000 calc(var(--lienzo-desde) + 480px), #000 calc(100% - 560px), transparent 100%);
}
@media (min-width: 900px) { body.marca-boom-boom-ciao #contenido::before { --lienzo-desde: 520px; } }
body.marca-boom-boom-ciao .opiniones,
body.marca-boom-boom-ciao .menus-grupo,
body.marca-boom-boom-ciao .patio,
body.marca-boom-boom-ciao .carta-web,
body.marca-boom-boom-ciao .seccion { background: transparent; }
body.marca-boom-boom-ciao .tarjeta,
body.marca-boom-boom-ciao .gpanel,
body.marca-boom-boom-ciao .opinion,
body.marca-boom-boom-ciao .faq__item,
body.marca-boom-boom-ciao .mosaico__cita,
body.marca-boom-boom-ciao .menu-grupo,
body.marca-boom-boom-ciao .beneficio { background-color: rgba(21, 19, 15, 0.88); }
body.marca-boom-boom-ciao .l-pie {
    background:
        linear-gradient(180deg, rgba(10, 9, 8, 0.97) 0%, rgba(10, 9, 8, 0.7) 40%, rgba(10, 9, 8, 0.86) 100%),
        url('img/boom-boom-ciao/ilustracion-globos.webp') center 62% / cover no-repeat;
}
@media (max-width: 899px) {
    body.marca-boom-boom-ciao .l-pie {
        background:
            linear-gradient(180deg, rgba(10, 9, 8, 0.97) 0%, rgba(10, 9, 8, 0.7) 40%, rgba(10, 9, 8, 0.86) 100%),
            url('img/boom-boom-ciao/ilustracion-globos-800.webp') center 62% / cover no-repeat;
    }
}
body.marca-boom-boom-ciao .boton--secundario { border-color: rgba(199, 161, 61, 0.7); color: var(--verde); }
body.marca-boom-boom-ciao .boton--secundario:hover { border-color: var(--verde); background: rgba(199, 161, 61, 0.08); }
@media (max-width: 520px) {
    body.marca-boom-boom-ciao .hero__botones { grid-template-columns: 1fr 1fr; max-width: none; gap: 0.5rem; }
    body.marca-boom-boom-ciao .hero__botones .boton { white-space: nowrap; padding-inline: 0.4rem; gap: 0.35rem; font-size: 0.78rem; letter-spacing: 0.02em; min-width: 0; }
    body.marca-boom-boom-ciao .hero__botones .boton svg { width: 15px; height: 15px; flex: none; }
}
@media (min-width: 1024px) {
    body.marca-boom-boom-ciao .menus-grupo__lista:has(> .menu-grupo:nth-child(2):last-child) {
        grid-template-columns: repeat(2, minmax(0, 400px)); justify-content: center; gap: 22px; }
}
@media (max-width: 374px) {
    body.marca-boom-boom-ciao .hero__botones .boton { font-size: 0.72rem; letter-spacing: 0.01em; }
    body.marca-boom-boom-ciao .hero__botones .boton svg { width: 13px; height: 13px; }
}
body.marca-boom-boom-ciao.estilo-bbc-web {
    --sans: var(--serif);
    --radio-boton: 999px;
    font-size-adjust: 0.47;
}
body.marca-boom-boom-ciao.estilo-bbc-web :is(h1, h2, h3, .seccion__titulo, .mosaico__titulo) { font-size-adjust: none; }
body.marca-boom-boom-ciao.estilo-bbc-web .boton { font-weight: 700; letter-spacing: 0.1em; font-size-adjust: none; }
body.marca-boom-boom-ciao.estilo-bbc-web .hero__botones .boton { letter-spacing: 0.04em; }
body.marca-boom-boom-ciao.estilo-bbc-web .boton--principal { color: #0a0908; box-shadow: none; }
body.marca-boom-boom-ciao.estilo-bbc-web .boton--secundario { background: rgba(10, 9, 8, 0.55); }
body.marca-boom-boom-ciao.estilo-bbc-web .pastilla {
    letter-spacing: 0.16em;
    font-weight: 700;
    color: var(--resalte-tinta);
    border-color: rgba(199, 161, 61, 0.45);
    font-size-adjust: none;
}
@media (max-width: 899px) {
    body.marca-boom-boom-ciao.estilo-bbc-web.hero-banda .hero__foto:has(.hero__video) { aspect-ratio: 4 / 5; overflow: hidden; }
    body.marca-boom-boom-ciao.estilo-bbc-web.hero-banda .hero__foto:has(.hero__video) .hero__video { position: absolute; inset: 0; }
}
@font-face { font-family: 'OZ Raleway'; src: url('fonts/ozio-raleway.woff2') format('woff2'); font-weight: 100 900; font-style: normal; font-display: swap; }
@font-face { font-family: 'OZ Raleway'; src: url('fonts/ozio-raleway-italic.woff2') format('woff2'); font-weight: 100 900; font-style: italic; font-display: swap; }
body.marca-ozio {
    --crema:        #f4ecdf;
    --crema-2:      #ebe1cf;
    --papel:        #fbf7f0;
    --terracota:    #8c3e20;
    --taupe:        #a89a88;
    --verde:        #8c3e20;
    --verde-tinta:  #2a1d16;
    --verde-suave:  #f0e0d0;
    --tinta:        #2a1d16;
    --texto-2:      #65554a;
    --fondo:        #f4ecdf;
    --fondo-rgb:    244, 236, 223;
    --fondo-suave:  #ebe1cf;
    --borde:        #ddd0bb;
    --resalte-fondo: #f0e0d0;
    --resalte-tinta: #8c3e20;
    --serif: 'OZ Raleway', 'Helvetica Neue', Arial, sans-serif;
    --sans:  'OZ Raleway', 'Helvetica Neue', Arial, sans-serif;
    --radio-tarjeta: 16px;
    --radio-boton: 8px;
    --sombra-tarjeta:  0 10px 30px rgba(42, 29, 22, 0.07);
    --sombra-flotante: 0 10px 30px rgba(42, 29, 22, 0.22);
    background: var(--fondo);
    font-size: 1.04rem;
    font-variant-numeric: lining-nums;
}
body.marca-ozio a { color: var(--terracota); }
body.marca-ozio h1,
body.marca-ozio h2,
body.marca-ozio h3,
body.marca-ozio .seccion__titulo,
body.marca-ozio .mosaico__titulo,
body.marca-ozio .premio__titular { font-family: var(--serif); font-weight: 600; letter-spacing: -0.012em; }
body.marca-ozio h1 em,
body.marca-ozio h2 em,
body.marca-ozio .seccion__titulo em,
body.marca-ozio .mosaico__titulo em { font-style: italic; font-weight: 500; color: var(--terracota); }
body.marca-ozio .hero h1 { font-size: clamp(2.05rem, 8.6vw, 2.6rem); line-height: 1.08; }
body.marca-ozio .seccion__titulo,
body.marca-ozio .mosaico__titulo { font-size: clamp(1.75rem, 6.8vw, 2.25rem); line-height: 1.12; }
@media (min-width: 900px) {
    body.marca-ozio .seccion__titulo,
    body.marca-ozio .mosaico__titulo { font-size: clamp(2.15rem, 2.9vw, 2.75rem); }
}
body.marca-ozio .bloque-ceja {
    display: flex; align-items: center; gap: 0.7rem;
    color: var(--terracota); font-family: var(--sans); font-weight: 500; font-size: 0.74rem; letter-spacing: 0.24em;
}
body.marca-ozio .bloque-ceja::before { content: ""; flex: 0 0 1.8rem; height: 1px; background: var(--terracota); opacity: 0.7; }
body.marca-ozio .pastilla {
    background: var(--crema-2); color: var(--tinta); border: 1px solid var(--borde);
    font-family: var(--sans); font-weight: 500; letter-spacing: 0.16em; font-size: 0.68rem;
}
body.marca-ozio .pastilla svg { color: var(--terracota); }
body.marca-ozio .boton { font-family: var(--sans); font-weight: 500; letter-spacing: 0.02em; text-transform: none; }
body.marca-ozio .boton--principal { background: var(--terracota); color: #fbf3e6; box-shadow: 0 6px 18px rgba(140, 62, 32, 0.22); }
body.marca-ozio .boton--principal:hover { background: #7a3519; color: #fbf3e6; }
body.marca-ozio .boton--secundario { background: transparent; color: var(--tinta); border-color: var(--tinta); }
body.marca-ozio .boton--secundario:hover { background: var(--crema-2); }
@media (max-width: 899px) {
    body.marca-ozio .hero__botones { width: 100%; max-width: none; }
    body.marca-ozio .hero__botones .boton { padding-left: 0.7rem; padding-right: 0.7rem; white-space: nowrap; }
}
body.marca-ozio .l-cabecera__logo img { width: auto; height: 46px; }
@media (min-width: 900px) { body.marca-ozio .l-cabecera__logo img { height: 56px; } }
@media (max-width: 899px) {
    body.marca-ozio.hero-banda .hero__foto { aspect-ratio: 4 / 3; margin-bottom: 1.1rem; }
    body.marca-ozio.hero-banda .hero { min-height: 0; padding-bottom: 1.4rem; }
}
body.marca-ozio .hero__texto { color: var(--texto-2); }
@media (min-width: 900px) {
    body.marca-ozio .hero__cuerpo { max-width: 44rem; }
    body.marca-ozio .hero h1 { font-size: clamp(2.45rem, 2.9vw, 2.75rem); line-height: 1.08; }
    body.marca-ozio .hero__texto { max-width: 34rem; }
}
body.marca-ozio .sello { background: var(--papel); border: 1px solid var(--borde); box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none; }
body.marca-ozio .sello__dato-icono { background: var(--verde-suave); color: var(--terracota); }
body.marca-ozio .hero__sellos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.6rem; width: 100%; max-width: none; align-items: stretch; }
body.marca-ozio .hero__sellos-datos { display: contents; }
body.marca-ozio .hero__sellos .sello { min-width: 0; padding: 0.6rem 0.45rem; gap: 4px; justify-content: center; align-items: center; text-align: center; }
body.marca-ozio .hero__sellos .sello__nota { gap: 0.3rem; }
body.marca-ozio .hero__sellos .sello--conlogo { flex-direction: column; align-items: center; gap: 4px; }
body.marca-ozio .hero__sellos .sello--conlogo .sello__marca { margin: 0; }
body.marca-ozio .hero__sellos .sello__logo-medio { width: 20px; height: 20px; }
body.marca-ozio .hero__sellos .sello--conlogo .sello__dato-titulo { font-size: 0.92rem; line-height: 1.1; white-space: nowrap; color: var(--tinta); }
body.marca-ozio .hero__sellos .sello--dato .sello__pie { display: block; white-space: nowrap; font-size: 0.72rem; }
@media (min-width: 900px) { body.marca-ozio .hero__sellos { gap: 0.8rem; width: 27rem; } }
@media (max-width: 899px) {
    body.marca-ozio .hero__sellos .sello__nota { gap: 0.25rem; }
    body.marca-ozio .hero__sellos .sello__nota strong { font-size: 1.02rem; }
    body.marca-ozio .hero__sellos .estrellas svg,
    body.marca-ozio .hero__sellos .estrellas--thefork svg { width: 10px; height: 10px; }
    body.marca-ozio .hero__sellos .sello--conlogo .sello__dato-titulo { font-size: 0.8rem; }
    body.marca-ozio .hero__sellos .sello__pie,
    body.marca-ozio .hero__sellos .sello--dato .sello__pie { font-size: 0.68rem; }
}
body.marca-ozio .mosaico__titulo em { color: var(--terracota); }
@media (min-width: 1024px) {
    body.marca-ozio .mosaico__pista > .mosaico__col { flex-basis: 0; flex-shrink: 1; width: auto; min-width: 0; }
    body.marca-ozio .mosaico__grande { flex-grow: 240; }
    body.marca-ozio .mosaico__par    { flex-grow: 168; }
    body.marca-ozio .mosaico__cita   { flex-grow: 280; }
}
@media (min-width: 1024px) and (max-width: 1279px) { body.marca-ozio .mosaico__pista > .mosaico__col:nth-last-child(-n+4) { display: none; } }
@media (min-width: 1280px) and (max-width: 1439px) { body.marca-ozio .mosaico__pista > .mosaico__col:nth-last-child(-n+3) { display: none; } }
@media (min-width: 1440px) and (max-width: 1679px) { body.marca-ozio .mosaico__pista > .mosaico__col:nth-last-child(-n+2) { display: none; } }
@media (min-width: 1680px) and (max-width: 1919px) { body.marca-ozio .mosaico__pista > .mosaico__col:nth-last-child(-n+1) { display: none; } }
body.marca-ozio .patio__entrada { color: var(--texto-2); font-size: 1.05rem; }
body.marca-ozio .patio__dato { background: var(--papel); }
body.marca-ozio .patio__dato-cifra { color: var(--terracota); font-weight: 600; }
body.marca-ozio .patio__foto img { border-radius: 12px; }
body.marca-ozio .patio__foto figcaption { color: var(--texto-2); font-style: normal; }
body.marca-ozio .beneficio__icono { background: var(--terracota); color: #fbf3e6; box-shadow: none; }
body.marca-ozio .gpanel__resumen--tres { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 30rem; margin-inline: auto; }
body.marca-ozio .menu-grupo,
body.marca-ozio .ventana-menu { background: var(--papel); border-color: var(--borde); }
body.marca-ozio .menu-grupo__nombre { font-style: italic; font-weight: 500; font-size: 1.35rem; }
body.marca-ozio .menu-grupo__precio b { color: var(--terracota); font-weight: 600; }
body.marca-ozio .menu-grupo__parte h4,
body.marca-ozio .menu-grupo__etiqueta { color: var(--terracota); font-weight: 600; }
body.marca-ozio .menus-grupo__cabeza .bloque-ceja { justify-content: center; text-align: center; text-wrap: balance; }
body.marca-ozio .menus-grupo__cabeza .bloque-ceja::before { display: none; }
@media (min-width: 1024px) {
    body.marca-ozio .menus-grupo__lista { grid-template-columns: repeat(2, minmax(0, 400px)); justify-content: center; }
}
body.marca-ozio .ocasion { background: var(--papel); border-color: var(--borde); }
body.marca-ozio .ocasion__texto { color: var(--tinta); }
body.marca-ozio .ocasion__texto strong { font-weight: 500; color: var(--terracota); }
body.marca-ozio .ocasiones__pestanas button { font-family: var(--sans); font-weight: 500; border-color: var(--borde); }
body.marca-ozio .ocasiones__pestanas button[aria-selected="true"] { background: var(--tinta); border-color: var(--tinta); color: var(--crema); }
.ocasiones__ir { margin: 1.3rem 0 0; }
@media (min-width: 760px) { .ocasiones__ir .boton { display: inline-flex; width: auto; padding-left: 1.6rem; padding-right: 1.6rem; } }
body.marca-ozio .imprescindible__nombre { font-weight: 600; font-size: 1.15rem; }
body.marca-ozio .imprescindible__precio { font-family: var(--serif); font-weight: 600; font-size: 1.05rem; color: var(--terracota); }
body.marca-ozio .imprescindible__etiqueta { background: var(--crema); color: var(--tinta); font-family: var(--sans); font-weight: 500; letter-spacing: 0.12em; box-shadow: 0 2px 10px rgba(42, 29, 22, 0.18); }
body.marca-ozio .imprescindible:not(:has(.imprescindible__foto))::before {
    content: ""; display: block; aspect-ratio: 4 / 5; border-radius: var(--radio-tarjeta);
    border: 1px solid var(--borde);
    background:
        radial-gradient(ellipse 30% 25% at 50% 50%, rgba(168, 154, 136, 0.2) 98%, transparent 100%),
        radial-gradient(ellipse 23% 31% at 50% 50%, rgba(168, 154, 136, 0.2) 98%, transparent 100%),
        var(--papel);
    box-shadow: inset 0 0 0 6px var(--papel), inset 0 0 0 7px rgba(140, 62, 32, 0.22);
}
body.marca-ozio .imprescindible:not(:has(.imprescindible__foto)) .imprescindible__nombre {
    position: absolute; top: 0; left: 0; right: 0; aspect-ratio: 4 / 5; margin: 0; padding: 0 1.1rem;
    display: flex; align-items: center; justify-content: center; text-align: center;
    font-style: italic; font-weight: 500; font-size: clamp(1.4rem, 5.8vw, 1.7rem); line-height: 1.15; color: var(--tinta);
}
body.marca-ozio .imprescindible:not(:has(.imprescindible__foto)) .imprescindible__etiqueta { background: var(--crema-2); box-shadow: none; }
@media (min-width: 1024px) {
    body.marca-ozio .imprescindible:not(:has(.imprescindible__foto)) .imprescindible__nombre { font-size: 1.35rem; }
}
body.marca-ozio .imprescindibles__nota a,
body.marca-ozio .faq__respuesta a { font-weight: 600; text-decoration: none; }
body.marca-ozio .imprescindibles__nota a:is(:hover, :focus-visible),
body.marca-ozio .faq__respuesta a:is(:hover, :focus-visible) { text-decoration: underline; text-underline-offset: 3px; }
body.marca-ozio .carta-pestanas__boton { font-family: var(--sans); font-weight: 500; }
body.marca-ozio .carta-plato__precio { font-family: var(--serif); font-weight: 600; color: var(--terracota); }
body.marca-ozio .carta-pestanas__subtitulo { font-family: var(--sans); font-weight: 500; letter-spacing: 0.18em; text-transform: uppercase; font-size: 0.78rem; color: var(--terracota); }
body.marca-ozio .faq__pregunta { font-family: var(--sans); font-weight: 500; }
body.marca-ozio .mapa__pin path { fill: var(--terracota); }
body.marca-ozio .mapa__pulso { background: rgba(140, 62, 32, 0.3); }
body.marca-ozio .l-pie { background: var(--tinta); color: rgba(244, 236, 223, 0.74); border-top: 0; }
body.marca-ozio .l-pie a { color: rgba(244, 236, 223, 0.92); }
body.marca-ozio .l-pie__gigante {
    font-family: var(--serif); font-weight: 400; font-style: italic; text-transform: none; letter-spacing: -0.02em;
    font-size: clamp(2.6rem, 11.5vw, 8.5rem); line-height: 1; white-space: normal;
    background: none; -webkit-background-clip: border-box; background-clip: border-box; color: #e9dfcd;
}
body.marca-ozio .l-pie__nombre { display: none; }
body.marca-ozio .l-pie__gigante--img img { width: min(64%, 440px); }
body.marca-ozio #gdpr-cookie-consent-show-again { background-color: var(--terracota) !important; color: #fbf3e6 !important; }
body.marca-ozio .reserva__velo { background: linear-gradient(180deg, rgba(42, 29, 22, 0.66), rgba(42, 29, 22, 0.86)); }
body.marca-ozio .reserva--sin-foto { background: var(--tinta); }
.l-pie a,
.pie-interior a {
    text-decoration: none !important;
    transition: color 0.2s ease, opacity 0.2s ease;
}
.l-pie a:hover,
.l-pie a:focus-visible,
.pie-interior a:hover,
.pie-interior a:focus-visible {
    opacity: 0.7;
}
body:is(.marca-lima-nikkei, .marca-redondo, .marca-sagar, .marca-can-tunada, .marca-uyuni, .marca-boom-boom-ciao) :is(.l-pie, .pie-interior) a:is(:hover, :focus-visible) {
    color: var(--verde);
    opacity: 1;
}
body.marca-ozio :is(.l-pie, .pie-interior) a:is(:hover, :focus-visible) {
    color: #fbf3e6;
    opacity: 1;
}
body.marca-a-huevo :is(.l-pie, .pie-interior) a:is(:hover, :focus-visible) {
    color: var(--yema);
    opacity: 1;
}
@media (max-width: 899px) {
    .l-pie,
    .l-pie.l-pie--sin-logo,
    .pie-interior {
        padding-bottom: calc(var(--gmlr-alto-flotante, 5.2rem) + 4rem + env(safe-area-inset-bottom, 0px));
    }
}
@media (min-width: 900px) {
    .l-pie.l-pie--sin-logo {
        padding-bottom: max(6.5rem, calc(var(--gmlr-alto-flotante, 0px) + 1.6rem));
    }
}
.beneficio__boton {
    margin-top: .1rem; padding: .35rem .8rem; border: 1px solid currentColor; border-radius: 999px; background: transparent;
    color: var(--verde); font: 600 .78rem/1.2 var(--sans); letter-spacing: .02em; cursor: pointer;
}
.beneficio__boton:hover, .beneficio__boton:focus-visible { background: var(--verde); color: #fff; }
.ventana-beneficio[open] { height: min(92vh, 92dvh); }
.ventana-beneficio__cabeza { flex: none; padding: 22px 22px 0; }
.ventana-beneficio__cabeza .menu-grupo__nombre { text-align: center; padding: 0 30px; margin-bottom: 10px; }
.ventana-beneficio .ventana-menu__caja { padding-top: 6px; }
.ventana-beneficio .ventana-menu__partes { display: flex; overflow: hidden; padding-right: 0; }
.ventana-beneficio__texto { font-size: .92rem; line-height: 1.5; color: var(--texto-2); margin: 0 0 .6rem; }
.ventana-beneficio__img { flex: 1 1 auto; min-height: 0; display: flex; flex-direction: column; margin: 0; }
.ventana-beneficio__ampliar { flex: 1 1 0; min-height: 0; display: block; cursor: zoom-in; }
.ventana-beneficio__img img { display: block; width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 2px 10px rgba(0, 0, 0, .35)); }
.ventana-beneficio__img figcaption { flex: none; }
.faq__abre { margin: .8rem 0 0; }
.ventana-beneficio__img figcaption { margin-top: .4rem; font-size: .8rem; color: var(--texto-2); text-align: center; }
.menu-grupo__ventana-acciones { display: flex; flex-direction: column; align-items: stretch; }
@media (max-width: 600px) {
  .ventana-menu { max-height: min(97vh, 97dvh); }
}
@font-face { font-family: 'AF Titulos'; src: url('fonts/al-fuego-league-gothic.woff2') format('woff2'); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: 'AF Texto'; src: url('fonts/al-fuego-jost.woff2') format('woff2'); font-weight: 400 700; font-style: normal; font-display: swap; }
body.marca-al-fuego {
    --verde:        #d1784e;
    --verde-tinta:  #b9653e;
    --verde-suave:  #241d19;
    --tinta:        #f5f5f5;
    --texto-2:      #c4bab0;
    --fondo:        #171717;
    --fondo-rgb:    23, 23, 23;
    --fondo-suave:  #1f1e1d;
    --borde:        #33302d;
    --resalte-fondo: #2b231e;
    --resalte-tinta: #f0b48f;
    --sombra-tarjeta:  0 8px 28px rgba(0, 0, 0, 0.5);
    --sombra-flotante: 0 10px 30px rgba(0, 0, 0, 0.65);
    --g-tinta: #f5f5f5;
    --g-texto: #ddd6cf;
    --g-suave: #a89f97;
    --g-borde: #3a3633;
    --serif: 'AF Titulos', 'Arial Narrow', sans-serif-condensed, Impact, sans-serif;
    --sans:  'AF Texto', system-ui, -apple-system, sans-serif;
    background: var(--fondo);
}
body.marca-al-fuego h1,
body.marca-al-fuego h2,
body.marca-al-fuego .seccion__titulo,
body.marca-al-fuego .mosaico__titulo,
body.marca-al-fuego .premio__titular {
    font-family: var(--serif);
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.012em;
    line-height: 1.02;
}
body.marca-al-fuego h1 { font-size: clamp(3rem, 12vw, 5.4rem); }
body.marca-al-fuego .seccion__titulo,
body.marca-al-fuego .mosaico__titulo { font-size: clamp(2.2rem, 7.4vw, 3.4rem); }
body.marca-al-fuego h1 em,
body.marca-al-fuego h2 em,
body.marca-al-fuego .seccion__titulo em,
body.marca-al-fuego .mosaico__titulo em { font-style: normal; color: var(--verde); }
body.marca-al-fuego h3 { font-family: var(--sans); font-weight: 600; letter-spacing: 0; text-transform: none; }
body.marca-al-fuego .tarjeta,
body.marca-al-fuego .gpanel,
body.marca-al-fuego .opinion,
body.marca-al-fuego .faq__item,
body.marca-al-fuego .categoria,
body.marca-al-fuego .mosaico__cita,
body.marca-al-fuego .chip--boton,
body.marca-al-fuego .chip,
body.marca-al-fuego .gpanel__tema,
body.marca-al-fuego .boton--mapa,
body.marca-al-fuego .beneficio__icono,
body.marca-al-fuego .mapa__distancia {
    background: var(--fondo-suave);
    border-color: var(--borde);
}
body.marca-al-fuego .chip { border: 1px solid var(--borde); }
body.marca-al-fuego .tema-cita__texto { color: var(--tinta); }
body.marca-al-fuego #gdpr-cookie-consent-show-again { box-shadow: none !important; border: 1px solid rgba(0, 0, 0, 0.35) !important; }
body.marca-al-fuego .sello {
    background: rgba(255, 255, 255, 0.07);
    box-shadow: none;
    border: 1px solid rgba(245, 245, 245, 0.16);
    color: var(--tinta);
}
body.marca-al-fuego .sello__nota,
body.marca-al-fuego .sello__nota strong,
body.marca-al-fuego .sello__dato-titulo,
body.marca-al-fuego .sello__premio-titulo { color: var(--tinta); }
body.marca-al-fuego .sello__pie { color: var(--texto-2); }
body.marca-al-fuego .beneficio__icono {
    background: rgba(209, 120, 78, 0.12);
    border: 1px solid rgba(209, 120, 78, 0.34);
    box-shadow: none;
    color: var(--verde);
}
body.marca-al-fuego .pastilla {
    background: rgba(245, 245, 245, 0.07);
    border: 1px solid rgba(245, 245, 245, 0.22);
    color: rgba(245, 245, 245, 0.86);
    font-weight: 500;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
body.marca-al-fuego .pastilla svg { opacity: 0.7; }
body.marca-al-fuego .boton { font-family: var(--sans); letter-spacing: 0.04em; }
body.marca-al-fuego .boton--principal { background: #c11e2f; color: #fff; }
body.marca-al-fuego .boton--principal:hover { background: #a01b30; color: #fff; }
body.marca-al-fuego .boton--secundario {
    background: transparent;
    color: var(--tinta);
    border-color: rgba(245, 245, 245, 0.4);
}
body.marca-al-fuego .boton--secundario:hover { border-color: var(--tinta); }
body.marca-al-fuego .menus-grupo__entrada { color: var(--texto-2); }
body.marca-al-fuego .l-pie {
    background: #101010;
    border-top: 1px solid var(--borde);
    color: var(--texto-2);
}
body.marca-al-fuego .l-pie a { color: var(--texto-2); font-weight: 500; }
body.marca-al-fuego :is(.l-pie, .pie-interior) a:is(:hover, :focus-visible) { color: var(--verde); opacity: 1; }
body.marca-al-fuego .pie-interior { background: #101010; border-top: 1px solid var(--borde); color: var(--texto-2); }
body.marca-al-fuego .pie-interior__marca { color: var(--tinta); }
body.marca-al-fuego .pie-interior__legal a { color: var(--texto-2); }
body.marca-al-fuego .mapa__pin path { fill: #c11e2f; }
body.marca-al-fuego .mapa__pin circle { fill: #171717; }
body.marca-al-fuego .mapa__pulso { background: rgba(193, 30, 47, 0.35); }
body.marca-al-fuego .mapa__toca { background: rgba(10, 10, 10, 0.88); color: var(--tinta); border: 1px solid var(--borde); }
body.marca-al-fuego .mapa__distancia { color: var(--verde); }
body.marca-al-fuego .mosaico__comilla { color: var(--verde); }
body.marca-al-fuego .opinion__mas { color: var(--verde); }
body.marca-al-fuego .gbarra__pista { background: rgba(245, 245, 245, 0.12); }
body.marca-al-fuego .reserva__velo { background: linear-gradient(180deg, rgba(23, 23, 23, .82), rgba(23, 23, 23, .94)); }
body.marca-al-fuego .reserva__tarjeta { box-shadow: 0 24px 60px rgba(0, 0, 0, .45), inset 0 0 0 1px rgba(245, 245, 245, .1); }
body.marca-al-fuego .reserva__modulo iframe { background: transparent; filter: invert(.92) hue-rotate(180deg); }
@media (max-width: 899px) {
    body.marca-al-fuego.hero-cine .hero__foto::after {
        background: linear-gradient(180deg,
            rgba(12, 12, 12, 0.55) 0%,
            rgba(12, 12, 12, 0.45) 20%,
            rgba(12, 12, 12, 0.60) 40%,
            rgba(12, 12, 12, 0.74) 60%,
            rgba(12, 12, 12, 0.86) 80%,
            rgba(12, 12, 12, 0.95) 100%);
    }
}
@media (max-width: 699px) { body.marca-al-fuego .seccion { padding-top: 3.75rem; } }
body.marca-al-fuego .mosaico__cita-texto { font-family: var(--sans); }
body.marca-al-fuego .patio__foto--grande img { object-position: 50% 78%; }
@font-face { font-family: 'LGP Fondamento'; src: url('fonts/lgp-fondamento.woff2') format('woff2'); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: 'LGP Fondamento'; src: url('fonts/lgp-fondamento-italic.woff2') format('woff2'); font-weight: 400; font-style: italic; font-display: swap; }
@font-face { font-family: 'LGP Lato'; src: url('fonts/lgp-lato-400.woff2') format('woff2'); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: 'LGP Lato'; src: url('fonts/lgp-lato-400-italic.woff2') format('woff2'); font-weight: 400; font-style: italic; font-display: swap; }
@font-face { font-family: 'LGP Lato'; src: url('fonts/lgp-lato-700.woff2') format('woff2'); font-weight: 700; font-style: normal; font-display: swap; }
body.marca-la-gran-pulperia {
    --rojo:         #a13e3a;
    --rojo-oscuro:  #801c18;
    --papel:        #ffffff;
    --verde:        #a13e3a;
    --verde-tinta:  #2b2321;
    --verde-suave:  #f4e4e2;
    --tinta:        #222222;
    --texto-2:      #5c5652;
    --fondo:        #fbfaf8;
    --fondo-rgb:    251, 250, 248;
    --fondo-suave:  #f3eee8;
    --borde:        #e3dcd4;
    --resalte-fondo: #f4e4e2;
    --resalte-tinta: #801c18;
    --serif: 'LGP Fondamento', Georgia, 'Times New Roman', serif;
    --sans:  'LGP Lato', 'Helvetica Neue', Arial, sans-serif;
    --radio-tarjeta: 14px;
    --radio-boton: 999px;
    --sombra-tarjeta:  0 10px 30px rgba(43, 35, 33, 0.07);
    --sombra-flotante: 0 10px 30px rgba(43, 35, 33, 0.22);
    background: var(--fondo);
    font-family: var(--sans);
    font-size: 1.04rem;
}
body.marca-la-gran-pulperia a { color: var(--rojo); }
body.marca-la-gran-pulperia h1,
body.marca-la-gran-pulperia h2,
body.marca-la-gran-pulperia h3,
body.marca-la-gran-pulperia .seccion__titulo,
body.marca-la-gran-pulperia .mosaico__titulo,
body.marca-la-gran-pulperia .premio__titular { font-family: var(--serif); font-weight: 400; letter-spacing: 0; }
body.marca-la-gran-pulperia h1 em,
body.marca-la-gran-pulperia h2 em,
body.marca-la-gran-pulperia .seccion__titulo em,
body.marca-la-gran-pulperia .mosaico__titulo em { font-style: italic; font-weight: 400; color: var(--rojo); }
body.marca-la-gran-pulperia .hero h1 { font-size: clamp(2.15rem, 9vw, 2.7rem); line-height: 1.08; }
body.marca-la-gran-pulperia .seccion__titulo,
body.marca-la-gran-pulperia .mosaico__titulo { font-size: clamp(1.8rem, 7vw, 2.3rem); line-height: 1.12; }
@media (min-width: 900px) {
    body.marca-la-gran-pulperia .seccion__titulo,
    body.marca-la-gran-pulperia .mosaico__titulo { font-size: clamp(2.2rem, 3vw, 2.85rem); }
}
body.marca-la-gran-pulperia .bloque-ceja {
    display: flex; align-items: center; gap: 0.6rem;
    color: var(--rojo); font-family: var(--sans); font-weight: 700; font-size: 0.74rem; letter-spacing: 0.2em;
}
body.marca-la-gran-pulperia .bloque-ceja::before { content: ""; flex: 0 0 1.6rem; height: 1px; background: var(--rojo); opacity: 0.7; }
body.marca-la-gran-pulperia .pastilla {
    background: var(--fondo-suave); color: var(--tinta); border: 1px solid var(--borde);
    font-family: var(--sans); font-weight: 700; letter-spacing: 0.14em; font-size: 0.68rem;
}
body.marca-la-gran-pulperia .pastilla svg { color: var(--rojo); }
body.marca-la-gran-pulperia .boton { font-family: var(--sans); font-weight: 700; letter-spacing: 0.01em; text-transform: none; }
body.marca-la-gran-pulperia .boton--principal { background: var(--rojo); color: #fff; box-shadow: 0 6px 18px rgba(161, 62, 58, 0.24); }
body.marca-la-gran-pulperia .boton--principal:hover { background: var(--rojo-oscuro); color: #fff; }
body.marca-la-gran-pulperia .boton--secundario { background: transparent; color: var(--tinta); border-color: var(--tinta); }
body.marca-la-gran-pulperia .boton--secundario:hover { background: var(--fondo-suave); }
@media (max-width: 899px) {
    body.marca-la-gran-pulperia .hero__botones { width: 100%; max-width: none; }
    body.marca-la-gran-pulperia .hero__botones .boton { padding-left: 0.7rem; padding-right: 0.7rem; white-space: nowrap; }
}
body.marca-la-gran-pulperia .l-cabecera__logo img { width: auto; height: 50px; }
@media (min-width: 900px) { body.marca-la-gran-pulperia .l-cabecera__logo img { height: 60px; } }
@media (max-width: 899px) {
    body.marca-la-gran-pulperia.hero-banda .hero__foto { aspect-ratio: 4 / 3; margin-bottom: 1.1rem; }
    body.marca-la-gran-pulperia.hero-banda .hero { min-height: 0; padding-bottom: 1.4rem; }
}
body.marca-la-gran-pulperia .hero__texto { color: var(--texto-2); }
@media (min-width: 900px) {
    body.marca-la-gran-pulperia .hero__cuerpo { max-width: 44rem; }
    body.marca-la-gran-pulperia .hero h1 { font-size: clamp(2.6rem, 3.1vw, 3rem); line-height: 1.06; }
    body.marca-la-gran-pulperia .hero__texto { max-width: 34rem; }
}
body.marca-la-gran-pulperia .sello { background: var(--papel); border: 1px solid var(--borde); box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none; }
body.marca-la-gran-pulperia .sello__dato-icono { background: var(--verde-suave); color: var(--rojo); }
body.marca-la-gran-pulperia .beneficio__icono { background: var(--rojo); color: #fff; box-shadow: none; }
body.marca-la-gran-pulperia .patio__entrada { color: var(--texto-2); font-size: 1.05rem; }
body.marca-la-gran-pulperia .patio__dato { background: var(--papel); }
body.marca-la-gran-pulperia .patio__dato-cifra { font-family: var(--serif); color: var(--rojo); font-weight: 400; }
body.marca-la-gran-pulperia .patio__foto img { border-radius: 12px; }
body.marca-la-gran-pulperia .patio__foto figcaption { color: var(--texto-2); font-style: normal; }
body.marca-la-gran-pulperia .menu-grupo,
body.marca-la-gran-pulperia .ventana-menu { background: var(--papel); border-color: var(--borde); }
body.marca-la-gran-pulperia .menu-grupo__nombre { font-family: var(--serif); font-weight: 400; font-size: 1.5rem; }
body.marca-la-gran-pulperia .menu-grupo__precio b { color: var(--rojo); font-weight: 700; }
body.marca-la-gran-pulperia .menu-grupo__parte h4,
body.marca-la-gran-pulperia .menu-grupo__etiqueta { color: var(--rojo); font-weight: 700; }
body.marca-la-gran-pulperia .menus-grupo__cabeza .bloque-ceja { justify-content: center; text-align: center; text-wrap: balance; }
@media (min-width: 1024px) {
    body.marca-la-gran-pulperia .menus-grupo__lista { grid-template-columns: repeat(3, minmax(0, 360px)); justify-content: center; }
}
body.marca-la-gran-pulperia .ocasion { background: var(--papel); border-color: var(--borde); }
body.marca-la-gran-pulperia .ocasion__nombre { font-family: var(--serif); font-weight: 400; }
body.marca-la-gran-pulperia .ocasiones__pestanas button { font-family: var(--sans); font-weight: 700; border-color: var(--borde); }
body.marca-la-gran-pulperia .ocasiones__pestanas button[aria-selected="true"] { background: var(--rojo); border-color: var(--rojo); color: #fff; }
body.marca-la-gran-pulperia .faq__pregunta { font-family: var(--sans); font-weight: 700; }
body.marca-la-gran-pulperia .faq__respuesta a { font-weight: 700; text-decoration: none; }
body.marca-la-gran-pulperia .mapa__pin path { fill: var(--rojo); }
body.marca-la-gran-pulperia .mapa__pulso { background: rgba(161, 62, 58, 0.3); }
body.marca-la-gran-pulperia .l-pie { background: #2b2321; color: rgba(233, 228, 222, 0.74); border-top: 0; }
body.marca-la-gran-pulperia .l-pie a { color: rgba(233, 228, 222, 0.92); }
body.marca-la-gran-pulperia .l-pie__gigante {
    font-family: var(--serif); font-weight: 400; font-style: normal; text-transform: none; letter-spacing: 0;
    font-size: clamp(2.6rem, 11vw, 8rem); line-height: 1; white-space: normal;
    background: none; -webkit-background-clip: border-box; background-clip: border-box; color: #e9e4de;
}
body.marca-la-gran-pulperia .l-pie__nombre { display: none; }
body.marca-la-gran-pulperia #gdpr-cookie-consent-show-again { background-color: var(--rojo) !important; color: #fff !important; }
body.marca-la-gran-pulperia .reserva__velo { background: linear-gradient(180deg, rgba(43, 35, 33, 0.62), rgba(43, 35, 33, 0.86)); }
body.marca-la-gran-pulperia .reserva--sin-foto { background: #2b2321; }
body.marca-la-gran-pulperia .bloque-ceja::before {
    flex: 0 0 0.95rem; height: 1.22rem; opacity: 1; background: var(--rojo);
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='12 -138 752 976'%3E%3Cpath fill='%23000' transform='matrix(1 0 0 -1 0 700)' d='M580 470l152 238c-46 29-98 50-155 60-232 41-453-114-494-346-41-232 114-453 346-494 125-22 244 61 266 187 22 125-61 245-186 267-63 11-123-31-134-94-4-26 0-51 11-73 2-4 6-6 10-7 7-1 14 3 15 11 0 2 0 3 0 5-3 11-4 22-2 33 8 41 47 69 89 62 69-13 116-79 103-149-12-69-78-116-148-103-116 20-193 131-173 247 21 116 131 193 247 173 19-4 37-10 53-17m112 286c3 17 19 29 37 26 17-4 29-20 26-38-3-17-20-29-37-26-18 3-29 20-26 38m-58 26c3 18 19 30 37 26 17-3 29-19 26-37-3-17-20-29-37-26-18 3-29 20-26 37m-62 19c3 17 20 29 37 26 18-3 29-20 26-37-3-18-19-29-37-26-17 3-29 19-26 37m-63 10c3 17 19 29 37 26 17-3 29-20 26-38-3-17-20-29-37-26-18 3-29 20-26 38m-65 0c4 18 20 30 38 26 17-3 29-19 26-37-3-17-20-29-37-26-18 3-30 20-27 37m-63-8c3 18 20 29 37 26 17-3 29-19 26-37-3-17-20-29-37-26-18 3-29 20-26 37m-62-17c3 18 20 29 37 26 18-3 29-20 26-37-3-17-20-29-37-26-18 3-29 20-26 37m-59-25c3 17 20 29 37 26 18-3 29-20 26-38-3-17-19-29-37-26-17 3-29 20-26 38m-55-34c3 18 20 29 38 26 17-3 29-19 26-37-3-17-20-29-38-26-17 3-29 20-26 37m-49-41c3 18 19 30 37 27 17-4 29-20 26-38-3-17-20-29-37-26-18 3-29 20-26 37m-44-47c3 18 20 29 38 26 17-3 29-19 26-37-3-17-20-29-38-26-17 3-29 20-26 37m-36-53c3 18 20 29 37 26 18-3 29-19 26-37-3-17-20-29-37-26-17 3-29 20-26 37m-29-57c3 17 20 29 37 26 18-3 30-20 27-37-4-18-20-29-38-26-17 3-29 19-26 37m-20-61c3 18 20 29 37 26 18-3 29-20 26-37-3-18-19-29-37-26-17 3-29 20-26 37m-12-63c3 17 20 29 38 26 17-3 29-20 26-37-3-18-20-29-38-26-17 3-29 19-26 37m-2-64c3 17 19 29 37 26 17-3 29-20 26-37-3-18-20-29-37-26-18 3-29 19-26 37m6-64c3 17 20 29 37 26 18-3 29-20 26-37-3-18-20-29-37-26-17 3-29 20-26 37m15-62c3 17 20 29 37 26 18-3 29-20 26-38-3-17-20-29-37-26-18 3-29 20-26 38m24-60c3 17 20 29 37 26 17-3 29-20 26-37-3-18-20-29-37-26-18 3-29 19-26 37m32-56c3 18 19 29 37 26 17-3 29-20 26-37-3-17-20-29-37-26-18 3-30 20-26 37m39-51c3 18 19 29 37 26 17-3 29-19 26-37-3-17-20-29-37-26-18 3-29 20-26 37m46-44c3 17 19 29 37 26 17-3 29-20 26-38-3-17-20-29-37-26-18 3-29 20-26 38m51-39c4 18 20 30 38 26 17-3 29-19 26-37-3-17-20-29-38-26-17 3-29 20-26 37m57-30c3 18 20 29 37 26 18-3 29-20 26-37-3-17-20-29-37-26-17 3-29 20-26 37m60-22c3 18 20 29 37 26 18-3 30-20 26-37-3-18-19-29-37-26-17 3-29 20-26 37m63-13c3 17 20 29 37 26 18-3 29-20 26-37-3-18-19-30-37-26-17 3-29 19-26 37m64 0c3 17 20 29 37 26 18-3 29-20 26-37-3-18-19-29-37-26-17 3-29 19-26 37m62 16c3 17 20 29 38 26 17-3 29-20 26-37-3-18-20-30-38-27-17 4-29 20-26 38m57 30c3 18 19 29 37 26 17-3 29-19 26-37-3-17-20-29-37-26-18 3-29 20-26 37m47 43c3 18 20 30 37 27 18-3 29-20 26-38-3-17-19-29-37-26-17 3-29 20-26 37m36 54c3 17 19 29 37 26 17-3 29-20 26-37-3-18-20-29-37-26-18 3-29 20-26 37m21 60c3 18 20 30 37 26 18-3 30-19 26-37-3-17-19-29-37-26-17 3-29 20-26 37m6 64c4 18 20 30 38 26 17-3 29-19 26-37-3-17-20-29-38-26-17 3-29 20-26 37m-9 64c3 17 20 29 37 26 18-3 29-20 26-37-3-18-20-29-37-26-18 3-29 19-26 37m-25 59c3 18 20 29 37 26 18-3 30-20 26-37-3-18-19-29-37-26-17 3-29 20-26 37m-38 52c3 17 19 29 37 26 17-3 29-20 26-38-3-17-20-29-37-26-18 3-29 20-26 38m-50 40c3 18 20 29 37 26 18-3 29-20 26-37-3-17-19-29-37-26-17 3-29 20-26 37m-58 28c3 17 20 29 37 26 18-3 29-20 26-38-3-17-19-29-37-26-17 3-29 20-26 38m-63 11c3 17 20 29 37 26 18-3 29-20 26-37-3-18-20-29-37-26-17 3-29 20-26 37m-63-15c3 18 20 30 38 26 17-3 29-19 26-37-3-17-20-29-38-26-17 3-29 20-26 37m-50-39c3 17 20 29 37 26 18-3 29-20 26-37-3-18-20-29-37-26-17 3-29 19-26 37m-29-58c3 18 20 30 37 27 18-4 30-20 26-38-3-17-19-29-37-26-17 3-29 20-26 37m-2-64c4 18 20 29 38 26 17-3 29-19 26-37-3-17-20-29-37-26-18 3-30 20-27 37'/%3E%3C/svg%3E") center / contain no-repeat;
            mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='12 -138 752 976'%3E%3Cpath fill='%23000' transform='matrix(1 0 0 -1 0 700)' d='M580 470l152 238c-46 29-98 50-155 60-232 41-453-114-494-346-41-232 114-453 346-494 125-22 244 61 266 187 22 125-61 245-186 267-63 11-123-31-134-94-4-26 0-51 11-73 2-4 6-6 10-7 7-1 14 3 15 11 0 2 0 3 0 5-3 11-4 22-2 33 8 41 47 69 89 62 69-13 116-79 103-149-12-69-78-116-148-103-116 20-193 131-173 247 21 116 131 193 247 173 19-4 37-10 53-17m112 286c3 17 19 29 37 26 17-4 29-20 26-38-3-17-20-29-37-26-18 3-29 20-26 38m-58 26c3 18 19 30 37 26 17-3 29-19 26-37-3-17-20-29-37-26-18 3-29 20-26 37m-62 19c3 17 20 29 37 26 18-3 29-20 26-37-3-18-19-29-37-26-17 3-29 19-26 37m-63 10c3 17 19 29 37 26 17-3 29-20 26-38-3-17-20-29-37-26-18 3-29 20-26 38m-65 0c4 18 20 30 38 26 17-3 29-19 26-37-3-17-20-29-37-26-18 3-30 20-27 37m-63-8c3 18 20 29 37 26 17-3 29-19 26-37-3-17-20-29-37-26-18 3-29 20-26 37m-62-17c3 18 20 29 37 26 18-3 29-20 26-37-3-17-20-29-37-26-18 3-29 20-26 37m-59-25c3 17 20 29 37 26 18-3 29-20 26-38-3-17-19-29-37-26-17 3-29 20-26 38m-55-34c3 18 20 29 38 26 17-3 29-19 26-37-3-17-20-29-38-26-17 3-29 20-26 37m-49-41c3 18 19 30 37 27 17-4 29-20 26-38-3-17-20-29-37-26-18 3-29 20-26 37m-44-47c3 18 20 29 38 26 17-3 29-19 26-37-3-17-20-29-38-26-17 3-29 20-26 37m-36-53c3 18 20 29 37 26 18-3 29-19 26-37-3-17-20-29-37-26-17 3-29 20-26 37m-29-57c3 17 20 29 37 26 18-3 30-20 27-37-4-18-20-29-38-26-17 3-29 19-26 37m-20-61c3 18 20 29 37 26 18-3 29-20 26-37-3-18-19-29-37-26-17 3-29 20-26 37m-12-63c3 17 20 29 38 26 17-3 29-20 26-37-3-18-20-29-38-26-17 3-29 19-26 37m-2-64c3 17 19 29 37 26 17-3 29-20 26-37-3-18-20-29-37-26-18 3-29 19-26 37m6-64c3 17 20 29 37 26 18-3 29-20 26-37-3-18-20-29-37-26-17 3-29 20-26 37m15-62c3 17 20 29 37 26 18-3 29-20 26-38-3-17-20-29-37-26-18 3-29 20-26 38m24-60c3 17 20 29 37 26 17-3 29-20 26-37-3-18-20-29-37-26-18 3-29 19-26 37m32-56c3 18 19 29 37 26 17-3 29-20 26-37-3-17-20-29-37-26-18 3-30 20-26 37m39-51c3 18 19 29 37 26 17-3 29-19 26-37-3-17-20-29-37-26-18 3-29 20-26 37m46-44c3 17 19 29 37 26 17-3 29-20 26-38-3-17-20-29-37-26-18 3-29 20-26 38m51-39c4 18 20 30 38 26 17-3 29-19 26-37-3-17-20-29-38-26-17 3-29 20-26 37m57-30c3 18 20 29 37 26 18-3 29-20 26-37-3-17-20-29-37-26-17 3-29 20-26 37m60-22c3 18 20 29 37 26 18-3 30-20 26-37-3-18-19-29-37-26-17 3-29 20-26 37m63-13c3 17 20 29 37 26 18-3 29-20 26-37-3-18-19-30-37-26-17 3-29 19-26 37m64 0c3 17 20 29 37 26 18-3 29-20 26-37-3-18-19-29-37-26-17 3-29 19-26 37m62 16c3 17 20 29 38 26 17-3 29-20 26-37-3-18-20-30-38-27-17 4-29 20-26 38m57 30c3 18 19 29 37 26 17-3 29-19 26-37-3-17-20-29-37-26-18 3-29 20-26 37m47 43c3 18 20 30 37 27 18-3 29-20 26-38-3-17-19-29-37-26-17 3-29 20-26 37m36 54c3 17 19 29 37 26 17-3 29-20 26-37-3-18-20-29-37-26-18 3-29 20-26 37m21 60c3 18 20 30 37 26 18-3 30-19 26-37-3-17-19-29-37-26-17 3-29 20-26 37m6 64c4 18 20 30 38 26 17-3 29-19 26-37-3-17-20-29-38-26-17 3-29 20-26 37m-9 64c3 17 20 29 37 26 18-3 29-20 26-37-3-18-20-29-37-26-18 3-29 19-26 37m-25 59c3 18 20 29 37 26 18-3 30-20 26-37-3-18-19-29-37-26-17 3-29 20-26 37m-38 52c3 17 19 29 37 26 17-3 29-20 26-38-3-17-20-29-37-26-18 3-29 20-26 38m-50 40c3 18 20 29 37 26 18-3 29-20 26-37-3-17-19-29-37-26-17 3-29 20-26 37m-58 28c3 17 20 29 37 26 18-3 29-20 26-38-3-17-19-29-37-26-17 3-29 20-26 38m-63 11c3 17 20 29 37 26 18-3 29-20 26-37-3-18-20-29-37-26-17 3-29 20-26 37m-63-15c3 18 20 30 38 26 17-3 29-19 26-37-3-17-20-29-38-26-17 3-29 20-26 37m-50-39c3 17 20 29 37 26 18-3 29-20 26-37-3-18-20-29-37-26-17 3-29 19-26 37m-29-58c3 18 20 30 37 27 18-4 30-20 26-38-3-17-19-29-37-26-17 3-29 20-26 37m-2-64c4 18 20 29 38 26 17-3 29-19 26-37-3-17-20-29-37-26-18 3-30 20-27 37'/%3E%3C/svg%3E") center / contain no-repeat;
}
@media (max-width: 599px) {
    body.marca-la-gran-pulperia .hero__botones { grid-template-columns: 1fr; }
    body.marca-la-gran-pulperia .hero__botones .boton--principal { order: -1; }
}
@media (min-width: 1024px) {
    body.marca-la-gran-pulperia .mosaico__pista > .mosaico__col { flex-basis: 0; flex-shrink: 1; width: auto; min-width: 0; }
    body.marca-la-gran-pulperia .mosaico__grande { flex-grow: 240; }
    body.marca-la-gran-pulperia .mosaico__par    { flex-grow: 168; }
    body.marca-la-gran-pulperia .mosaico__cita   { flex-grow: 280; }
}
@media (min-width: 1024px) and (max-width: 1279px) { body.marca-la-gran-pulperia .mosaico__pista > .mosaico__col:nth-last-child(-n+3) { display: none; } }
@media (min-width: 1280px) and (max-width: 1535px) { body.marca-la-gran-pulperia .mosaico__pista > .mosaico__col:nth-last-child(-n+2) { display: none; } }
@media (min-width: 1536px) and (max-width: 1919px) { body.marca-la-gran-pulperia .mosaico__pista > .mosaico__col:nth-last-child(-n+1) { display: none; } }
