    /* ============================================================
       RESET VISITED Y FOCUS
       ============================================================ */

    .hero-slide-btn:visited                { color: #ffffff; text-decoration: none; }
    .cat-card-link:visited                 { color: inherit; text-decoration: none; }
    .home-propuesta-cta:visited            { color: #d63031; text-decoration: none; }
    .home-prensa-link:visited              { color: #1a1a1a; text-decoration: none; }
    .home-showroom-btn-primario:visited    { color: #ffffff; text-decoration: none; }
    .home-showroom-btn-secundario:visited  { color: #1a1a1a; text-decoration: none; }
    .home-showroom-btn-wsp:visited         { color: #ffffff; text-decoration: none; }
    .home-showroom-link-maps:visited       { color: #888;    text-decoration: none; }
    .home-video-cta:visited                { color: #ffffff; text-decoration: none; }
    .home-comedor-card:visited             { color: #1a1a1a; text-decoration: none; }
    .home-mas-cats-card:visited            { color: #1a1a1a; text-decoration: none; }
    .home-contacto-datos li a:visited      { color: #d63031; text-decoration: none; }

    .hero-slide-btn:focus,
    .cat-card-link:focus,
    .home-propuesta-cta:focus,
    .home-prensa-link:focus,
    .home-showroom-btn-primario:focus,
    .home-showroom-btn-secundario:focus,
    .home-showroom-btn-wsp:focus,
    .home-showroom-link-maps:focus,
    .home-video-cta:focus,
    .home-comedor-card:focus,
    .home-mas-cats-card:focus,
    .home-contacto-datos li a:focus        { outline: none; }

    /* ============================================================
       SECCIÓN 1: HERO SLIDER
       ============================================================ */

    #heroSlider {
        margin-bottom: 0;
    }

    /*
     * Todos los slides se apilan en el mismo lugar (position:absolute).
     * Solo el .active es position:relative para definir la altura del contenedor.
     * La transición es fade (opacidad) en lugar del slide horizontal de Bootstrap,
     * que se rompe cuando la altura es auto.
     */
    #heroSlider .carousel-inner {
        position: relative;
        overflow: hidden;
    }

    #heroSlider .carousel-inner > .item {
        display: block !important;
        position: absolute;
        top: 0;
        left: 0 !important;
        width: 100%;
        opacity: 0;
        -webkit-transition: opacity 0.8s ease-in-out;
                transition: opacity 0.8s ease-in-out;
        -webkit-transform: none !important;
                transform: none !important;
        background: #1c1c1c;
        overflow: hidden;
        line-height: 0;
    }

    /* El slide activo es el único position:relative — él define la altura */
    #heroSlider .carousel-inner > .item.active {
        position: relative;
        opacity: 1;
        z-index: 2;
    }

    /* Slide entrante */
    #heroSlider .carousel-inner > .item.next,
    #heroSlider .carousel-inner > .item.prev {
        opacity: 0;
        z-index: 1;
    }

    /* Slide entrante al completarse la transición */
    #heroSlider .carousel-inner > .item.next.left,
    #heroSlider .carousel-inner > .item.prev.right {
        opacity: 1;
        z-index: 2;
    }

    /* Slide activo saliendo */
    #heroSlider .carousel-inner > .item.active.left,
    #heroSlider .carousel-inner > .item.active.right {
        opacity: 0;
        z-index: 1;
    }

    #heroSlider .item picture {
        display: block;
        width: 100%;
        line-height: 0;
    }

    #heroSlider .item picture img,
    #heroSlider .item > img {
        width: 100%;
        height: auto;
        display: block;
    }

    /* Overlay degradado: oscuro a la izquierda (donde va el texto), transparente a la derecha */
    #heroSlider .hero-slide-overlay {
        position: absolute;
        inset: 0;
        background: linear-gradient(
            to right,
            rgba(0, 0, 0, 0.68) 0%,
            rgba(0, 0, 0, 0.35) 50%,
            rgba(0, 0, 0, 0.08) 100%
        );
        z-index: 1;
    }

    /* Caption: centrado verticalmente a la izquierda */
    #heroSlider .hero-slide-caption {
        position: absolute;
        left: 7%;
        right: auto;
        bottom: auto;
        top: 50%;
        transform: translateY(-50%);
        text-align: left;
        max-width: 520px;
        padding: 0;
        text-shadow: none;
        z-index: 2;
    }

    #heroSlider .hero-slide-caption h1,
    #heroSlider .hero-slide-caption h2 {
        font-size: 40px;
        font-weight: 700;
        line-height: 1.2;
        margin: 0 0 14px 0;
        color: #ffffff;
        text-shadow: 0 2px 10px rgba(0, 0, 0, 0.5);
    }

    #heroSlider .hero-slide-caption p {
        font-size: 19px;
        color: #eeeeee;
        margin: 0 0 26px 0;
        line-height: 1.5;
        text-shadow: 0 1px 5px rgba(0, 0, 0, 0.5);
    }

    #heroSlider .hero-slide-btn {
        display: inline-block;
        padding: 14px 30px;
        background-color: #d63031;
        color: #ffffff;
        font-size: 17px;
        font-weight: 600;
        border-radius: 6px;
        text-decoration: none;
        transition: background-color 0.2s ease;
        border: none;
    }

    #heroSlider .hero-slide-btn:hover,
    #heroSlider .hero-slide-btn:focus {
        background-color: #b82627;
        color: #ffffff;
        text-decoration: none;
    }

    /* Flechas prev/next */
    #heroSlider .carousel-control {
        background-image: none !important;
        background: none !important;
        width: 54px;
        opacity: 1;
        z-index: 3;
    }

    #heroSlider .carousel-control .glyphicon {
        font-size: 32px;
        text-shadow: 0 2px 8px rgba(0, 0, 0, 0.7);
        top: 50%;
        margin-top: -16px;
    }

    #heroSlider .left.carousel-control .glyphicon {
        left: 14px;
        margin-left: 0;
    }

    #heroSlider .right.carousel-control .glyphicon {
        right: 14px;
        margin-right: 0;
        left: auto;
    }

    /* Indicadores (puntitos) */
    #heroSlider .carousel-indicators {
        bottom: 14px;
        z-index: 3;
    }

    #heroSlider .carousel-indicators li {
        width: 10px;
        height: 10px;
        margin: 0 5px;
        background-color: rgba(255, 255, 255, 0.45);
        border: 2px solid rgba(255, 255, 255, 0.8);
        border-radius: 50%;
    }

    #heroSlider .carousel-indicators .active {
        width: 12px;
        height: 12px;
        background-color: #ffffff;
        border-color: #ffffff;
        margin: 0 5px;
    }

    /* ── Tablet (768px – 991px) ─────────────────────────────── */
    @media (max-width: 991px) {
        #heroSlider .hero-slide-caption {
            left: 5%;
            max-width: 420px;
        }
        #heroSlider .hero-slide-caption h1,
        #heroSlider .hero-slide-caption h2 {
            font-size: 28px;
            margin-bottom: 10px;
        }
        #heroSlider .hero-slide-caption p {
            font-size: 16px;
            margin-bottom: 18px;
        }
        #heroSlider .hero-slide-btn {
            font-size: 15px;
            padding: 11px 22px;
        }
    }

    /* ── Mobile (≤ 767px) ───────────────────────────────────── */
    @media (max-width: 767px) {
        #heroSlider .hero-slide-caption {
            left: 5%;
            right: 5%;
            top: auto;
            bottom: 18%;
            -webkit-transform: none;
            transform: none;
            transform: none;
            max-width: none;
        }
        #heroSlider .hero-slide-overlay {
            background: linear-gradient(
                to top,
                rgba(0, 0, 0, 0.75) 0%,
                rgba(0, 0, 0, 0.35) 60%,
                rgba(0, 0, 0, 0.05) 100%
            );
        }
        #heroSlider .hero-slide-caption h1,
        #heroSlider .hero-slide-caption h2 {
            font-size: 18px;
            line-height: 1.3;
            margin-bottom: 14px;
        }
        #heroSlider .hero-slide-caption p {
            display: none;
        }
        #heroSlider .hero-slide-btn {
            display: inline-block;
            width: auto;
            font-size: 14px;
            padding: 9px 20px;
            border-radius: 6px;
        }
        #heroSlider .carousel-control {
            display: none;
        }
        #heroSlider .carousel-indicators {
            bottom: 6px;
        }
    }
    /* ============================================================
       SECCIÓN 2: CATEGORÍAS PRINCIPALES
       ============================================================ */

    .home-categorias {
        padding: 48px 0 40px;
        background: #fff;
    }

    .home-categorias .home-seccion-titulo {
        text-align: center;
        font-size: 30px;
        font-weight: 700;
        margin: 0 0 8px 0;
        color: #222;
    }

    .home-categorias .home-seccion-bajada {
        text-align: center;
        font-size: 16px;
        color: #666;
        margin: 0 0 36px 0;
    }

    .cat-card-link {
        display: block;
        text-decoration: none;
        margin-bottom: 24px;
    }

    .cat-card {
        position: relative;
        overflow: hidden;
        border-radius: 10px;
        aspect-ratio: 1 / 1;
        background: #ddd;
    }

    .cat-card img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        transition: transform 0.4s ease;
    }

    .cat-card:hover img {
        transform: scale(1.05);
    }

    .cat-card-overlay {
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        background: linear-gradient(to top, rgba(0,0,0,0.72) 0%, rgba(0,0,0,0.08) 100%);
        padding: 28px 14px 14px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        transition: background 0.3s ease;
    }

    .cat-card:hover .cat-card-overlay {
        background: linear-gradient(to top, rgba(0,0,0,0.88) 0%, rgba(0,0,0,0.18) 100%);
    }

    .cat-card-nombre {
        color: #fff;
        font-size: 17px;
        font-weight: 600;
        text-shadow: 0 1px 4px rgba(0,0,0,0.4);
    }

    .cat-card-arrow {
        color: #fff;
        font-size: 16px;
        transition: transform 0.3s ease;
        flex-shrink: 0;
        margin-left: 8px;
    }

    .cat-card:hover .cat-card-arrow {
        transform: translateX(5px);
    }

    @media (max-width: 767px) {
        .home-categorias {
            padding: 30px 0 20px;
        }
        .home-categorias .home-seccion-titulo {
            font-size: 22px;
            margin-bottom: 6px;
        }
        .home-categorias .home-seccion-bajada {
            font-size: 14px;
            margin-bottom: 20px;
        }
        .cat-card-link {
            margin-bottom: 12px;
        }
        .cat-card-nombre {
            font-size: 14px;
        }
    }

    /* ============================================================
       SECCIÓN 3: PROPUESTA DE VALOR
       ============================================================ */

    .home-propuesta {
        background: #ffffff;
        padding: 56px 0;
        border-top: 1px solid #eee;
    }

    .home-propuesta-izq {
        padding-right: 40px;
        padding-top: 8px;
    }

    .home-propuesta-izq h2 {
        font-size: 30px;
        font-weight: 700;
        color: #1a1a1a;
        line-height: 1.2;
        margin: 0 0 16px;
    }

    .home-propuesta-izq h2 span {
        color: #d63031;
    }

    .home-propuesta-izq p {
        font-size: 15px;
        color: #666;
        line-height: 1.7;
        margin: 0 0 28px;
    }

    .home-propuesta-cta {
        display: inline-block;
        font-size: 14px;
        font-weight: 600;
        color: #d63031;
        text-decoration: none;
        border-bottom: 2px solid #d63031;
        padding-bottom: 2px;
        -webkit-transition: opacity 0.2s;
        transition: opacity 0.2s;
    }

    .home-propuesta-cta:hover {
        opacity: 0.75;
        text-decoration: none;
        color: #d63031;
    }

    .home-propuesta-cols-row {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .home-propuesta-col {
        margin-bottom: 20px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .home-propuesta-item {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        gap: 16px;
        background: #fafafa;
        border: 1px solid #f0f0f0;
        border-radius: 12px;
        padding: 22px 20px;
        height: 100%;
        -webkit-transition: box-shadow 0.25s, -webkit-transform 0.25s;
        transition: box-shadow 0.25s, transform 0.25s;
    }

    .home-propuesta-item:hover {
        box-shadow: 0 6px 20px rgba(0,0,0,0.08);
        -webkit-transform: translateY(-3px);
        transform: translateY(-3px);
    }

    .home-propuesta-icono {
        -ms-flex-negative: 0;
        flex-shrink: 0;
        width: 42px;
        height: 42px;
        border-radius: 10px;
        background: #f0f0f0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        color: #555;
        font-size: 17px;
        -webkit-transition: background 0.25s, color 0.25s;
        transition: background 0.25s, color 0.25s;
    }

    .home-propuesta-item:hover .home-propuesta-icono {
        background: #d63031;
        color: #ffffff;
    }

    .home-propuesta-contenido {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
    }

    .home-propuesta-titulo {
        font-size: 15px;
        font-weight: 700;
        color: #1a1a1a;
        margin: 0 0 5px;
    }

    .home-propuesta-texto {
        font-size: 13px;
        color: #555;
        margin: 0;
        line-height: 1.6;
    }

    @media (max-width: 991px) {
        .home-propuesta-izq {
            padding-right: 20px;
        }
        .home-propuesta-izq h2 {
            font-size: 24px;
        }
    }

    @media (max-width: 767px) {
        .home-propuesta {
            padding: 36px 0 20px;
        }
        .home-propuesta-izq {
            padding-right: 0;
            margin-bottom: 28px;
        }
        .home-propuesta-izq h2 {
            font-size: 22px;
        }
        .home-propuesta-col {
            margin-bottom: 14px;
            width: 100%;
        }
        .home-propuesta-item:hover {
            -webkit-transform: none;
            transform: none;
        }
    }

    /* ============================================================
       SECCIÓN 4: NOS MENCIONARON EN
       ============================================================ */

    .home-prensa {
        background: #ffffff;
        padding: 56px 0;
        border-top: 1px solid #eee;
    }

    .home-prensa-titulo {
        text-align: center;
        font-size: 12px;
        font-weight: 700;
        color: #666;
        letter-spacing: 3px;
        text-transform: uppercase;
        margin: 0 0 40px;
    }

    .home-prensa-card {
        background: #ffffff;
        padding: 32px 28px 24px;
        border: 1px solid #e8e8e8;
        border-top: 3px solid #1a1a1a;
        border-radius: 8px;
        height: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -ms-flex-direction: column;
        flex-direction: column;
        position: relative;
        overflow: hidden;
    }

    .home-prensa-card::before {
        content: '\201C';
        position: absolute;
        top: -10px;
        right: 16px;
        font-size: 120px;
        line-height: 1;
        color: #f0f0f0;
        font-family: Georgia, serif;
        pointer-events: none;
        z-index: 0;
    }

    .home-prensa-logo-wrap {
        height: 36px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        margin-bottom: 20px;
        position: relative;
        z-index: 1;
    }

    .home-prensa-logo-wrap img {
        max-height: 32px;
        width: auto;
        display: block;
    }

    .home-prensa-card-infobae { border-top-color: #e5460a; }
    .home-prensa-card-elle    { border-top-color: #1a1a1a; }
    .home-prensa-card-civismo { border-top-color: #1a3461; }

    .home-prensa-cita {
        font-size: 15px;
        color: #444;
        line-height: 1.65;
        margin: 0 0 24px;
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        position: relative;
        z-index: 1;
    }

    .home-prensa-cita::before { content: '\201C'; color: #bbb; }
    .home-prensa-cita::after  { content: '\201D'; color: #bbb; }

    .home-prensa-link {
        display: inline-block;
        font-size: 12px;
        font-weight: 700;
        color: #1a1a1a;
        text-decoration: none;
        letter-spacing: 0.5px;
        text-transform: uppercase;
        border-bottom: 1px solid #ccc;
        padding-bottom: 2px;
        -webkit-transition: border-color 0.2s, color 0.2s;
        transition: border-color 0.2s, color 0.2s;
        -webkit-align-self: flex-start;
        align-self: flex-start;
        position: relative;
        z-index: 1;
    }

    .home-prensa-link:hover {
        color: #1a1a1a;
        border-bottom-color: #1a1a1a;
        text-decoration: none;
    }

    @media (max-width: 767px) {
        .home-prensa {
            padding: 36px 0 20px;
        }
    }

    /* ============================================================
       SECCIÓN 5: PRUEBA SOCIAL
       ============================================================ */

    .home-resenas {
        background: #1a1a1a;
        padding: 60px 0;
    }

    .home-resenas-titulo {
        text-align: center;
        font-size: 12px;
        font-weight: 700;
        color: #ccc;
        letter-spacing: 3px;
        text-transform: uppercase;
        margin: 0 0 40px 0;
    }

    /* --- Bloque resumen (número + barras) --- */
    .home-resenas-resumen {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        gap: 48px;
        margin-bottom: 48px;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .home-resenas-badge {
        text-align: center;
    }

    .home-resenas-num {
        font-size: 80px;
        font-weight: 900;
        color: #ffffff;
        line-height: 1;
        letter-spacing: -3px;
    }

    .home-resenas-stars {
        font-size: 22px;
        color: #f0a500;
        margin: 6px 0 8px;
    }

    .home-resenas-count {
        font-size: 13px;
        color: #ccc;
    }

    /* Barras de distribución */
    .home-resenas-bars {
        min-width: 220px;
    }

    .home-resenas-bar-row {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 8px;
        margin-bottom: 13px;
    }

    .home-resenas-bar-lbl {
        font-size: 12px;
        color: #ccc;
        white-space: nowrap;
        -webkit-flex-shrink: 0;
        flex-shrink: 0;
    }

    .home-resenas-bar-track {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        height: 6px;
        background: #333;
        border-radius: 3px;
        overflow: hidden;
    }

    .home-resenas-bar-fill {
        height: 100%;
        background: #f0a500;
        border-radius: 3px;
    }

    .home-resenas-bar-pct {
        font-size: 11px;
        color: #ccc;
        width: 30px;
        text-align: right;
        -webkit-flex-shrink: 0;
        flex-shrink: 0;
    }

    /* --- Slider de testimonios --- */
    .home-resenas-slider-wrap {
        position: relative;
    }

    .home-resenas-slider .slick-list {
        padding: 8px 0 16px;
    }

    .home-resenas-card {
        background: #ffffff;
        border-radius: 10px;
        padding: 22px 20px;
        margin: 0 8px;
        display: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important;
        -webkit-box-orient: vertical;
        -ms-flex-direction: column;
        flex-direction: column;
        height: 100%;
    }

    .home-resenas-card-top {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 12px;
        margin-bottom: 12px;
    }

    .home-resenas-avatar {
        width: 40px;
        height: 40px;
        border-radius: 50%;
        background: #d63031;
        color: #ffffff;
        font-size: 14px;
        font-weight: 700;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-flex-shrink: 0;
        flex-shrink: 0;
    }

    .home-resenas-nombre {
        font-size: 14px;
        font-weight: 700;
        color: #1a1a1a;
        line-height: 1.2;
    }

    .home-resenas-card-stars {
        font-size: 13px;
        color: #f0a500;
        margin-bottom: 10px;
    }

    .home-resenas-comentario {
        font-size: 14px;
        color: #555;
        line-height: 1.6;
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
    }

    /* Botones nav */
    .home-resenas-nav {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        gap: 10px;
        margin-top: 20px;
    }

    .home-resenas-btn {
        width: 36px;
        height: 36px;
        border-radius: 50%;
        border: 1px solid #444;
        background: transparent;
        color: #888;
        font-size: 13px;
        cursor: pointer;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-transition: border-color 0.2s, color 0.2s;
        transition: border-color 0.2s, color 0.2s;
    }

    .home-resenas-btn:hover {
        border-color: #fff;
        color: #fff;
    }

    /* Slick altura uniforme */
    .home-resenas-slider .slick-track {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }

    .home-resenas-slider .slick-slide {
        height: auto;
        display: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important;
        -webkit-box-orient: vertical;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    @media (max-width: 767px) {
        .home-resenas {
            padding: 40px 0;
        }
        .home-resenas-resumen {
            gap: 32px;
        }
        .home-resenas-num {
            font-size: 64px;
        }
    }

    /* ============================================================
       SECCIÓN 6: VIDEO DE PRESENTACIÓN
       ============================================================ */

    .home-video {
        background: #1a1a1a;
        padding: 72px 0;
    }

    @media (min-width: 992px) {
        .home-video-row {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-align: center;
            -ms-flex-align: center;
            align-items: center;
        }
    }

    .home-video-izq {
        padding-right: 32px;
    }

    .home-video-label {
        font-size: 12px;
        font-weight: 700;
        color: #e07070;
        letter-spacing: 3px;
        text-transform: uppercase;
        margin: 0 0 14px;
    }

    .home-video-titulo {
        font-size: 28px;
        font-weight: 800;
        color: #ffffff;
        line-height: 1.3;
        margin: 0 0 18px;
    }

    .home-video-texto {
        font-size: 15px;
        color: #aaaaaa;
        line-height: 1.7;
        margin: 0 0 28px;
    }

    .home-video-cta {
        display: inline-block;
        background: #d63031;
        color: #ffffff;
        font-size: 14px;
        font-weight: 700;
        padding: 12px 28px;
        border-radius: 4px;
        text-decoration: none;
        -webkit-align-self: flex-start;
        align-self: flex-start;
        -webkit-transition: background 0.2s;
        transition: background 0.2s;
    }

    .home-video-cta:hover {
        background: #b52626;
        color: #ffffff;
        text-decoration: none;
    }

    /* Player */
    .home-video-player {
        position: relative;
        width: 100%;
        aspect-ratio: 16 / 9;
        background: #000;
        border-radius: 12px;
        overflow: hidden;
        box-shadow: 0 16px 48px rgba(0,0,0,0.22);
        cursor: pointer;
        border: 3px solid #ffffff;
        outline: 1px solid #e0e0e0;
    }

    .home-video-player iframe {
        position: absolute;
        top: 0; left: 0;
        width: 100%; height: 100%;
        border: none;
        display: block;
    }

    .home-video-player img {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover;
        display: block;
        -webkit-transition: -webkit-filter 0.3s;
        transition: filter 0.3s;
    }

    .home-video-player:hover img {
        -webkit-filter: brightness(0.72);
        filter: brightness(0.72);
    }

    /* Botón Play CSS puro */
    .home-video-play {
        position: absolute;
        top: 50%; left: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        width: 72px;
        height: 72px;
        background: rgba(255,255,255,0.92);
        border-radius: 50%;
        pointer-events: none;
        -webkit-transition: transform 0.2s, background 0.2s;
        transition: transform 0.2s, background 0.2s;
        z-index: 2;
    }

    .home-video-play::after {
        content: '';
        position: absolute;
        top: 50%; left: 54%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        border-style: solid;
        border-width: 13px 0 13px 22px;
        border-color: transparent transparent transparent #1a1a1a;
    }

    .home-video-player:hover .home-video-play {
        background: rgba(255,255,255,1);
        -webkit-transform: translate(-50%, -50%) scale(1.08);
        transform: translate(-50%, -50%) scale(1.08);
    }

    @media (max-width: 991px) {
        .home-video-izq {
            padding-right: 0;
            margin-bottom: 36px;
            text-align: center;
        }
        .home-video-cta {
            -webkit-align-self: center;
            align-self: center;
        }
    }

    @media (max-width: 767px) {
        .home-video {
            padding: 48px 0;
        }
        .home-video-titulo {
            font-size: 22px;
        }
    }

    /* ============================================================
       SECCIÓN 7: SHOWROOM Y CÓMO LLEGAR
       ============================================================ */

    .home-showroom {
        background: #f8f8f8;
        padding: 72px 0;
    }

    .home-showroom-label {
        font-size: 12px;
        font-weight: 700;
        color: #d63031;
        letter-spacing: 3px;
        text-transform: uppercase;
        margin: 0 0 14px;
    }

    .home-showroom-titulo {
        font-size: 26px;
        font-weight: 800;
        color: #1a1a1a;
        line-height: 1.3;
        margin: 0 0 28px;
    }

    .home-showroom-bloque {
        margin-bottom: 22px;
    }

    .home-showroom-bloque-titulo {
        font-size: 11px;
        font-weight: 700;
        color: #666;
        letter-spacing: 2px;
        text-transform: uppercase;
        margin: 0 0 8px;
    }

    .home-showroom-direccion {
        font-size: 16px;
        color: #1a1a1a;
        font-weight: 600;
        line-height: 1.5;
        margin: 0;
    }

    .home-showroom-horarios {
        list-style: none;
        padding: 0;
        margin: 0;
    }

    .home-showroom-horarios li {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        font-size: 14px;
        color: #444;
        padding: 5px 0;
        border-bottom: 1px solid #f0f0f0;
    }

    .home-showroom-horarios li:last-child {
        border-bottom: none;
    }

    .home-showroom-horarios .dia {
        font-weight: 600;
        color: #1a1a1a;
    }

    .home-showroom-horarios .cerrado {
        color: #bbb;
    }

    .home-showroom-acciones {
        margin-top: 28px;
    }

    .home-showroom-acciones-fila {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 10px;
        margin-bottom: 12px;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .home-showroom-btn-primario {
        display: inline-block;
        background: #d63031;
        color: #ffffff;
        font-size: 14px;
        font-weight: 700;
        padding: 12px 24px;
        border-radius: 4px;
        text-decoration: none;
        -webkit-transition: background 0.2s;
        transition: background 0.2s;
    }

    .home-showroom-btn-primario:hover {
        background: #b52626;
        color: #ffffff;
        text-decoration: none;
    }

    .home-showroom-btn-secundario {
        display: inline-block;
        background: transparent;
        color: #1a1a1a;
        font-size: 14px;
        font-weight: 600;
        padding: 12px 24px;
        border-radius: 4px;
        border: 1px solid #ccc;
        text-decoration: none;
        -webkit-transition: border-color 0.2s, color 0.2s;
        transition: border-color 0.2s, color 0.2s;
    }

    .home-showroom-btn-secundario:hover {
        border-color: #1a1a1a;
        color: #1a1a1a;
        text-decoration: none;
    }

    .home-showroom-btn-wsp {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 7px;
        background: #25d366;
        color: #ffffff;
        font-size: 14px;
        font-weight: 700;
        padding: 12px 20px;
        border-radius: 4px;
        text-decoration: none;
        -webkit-transition: background 0.2s;
        transition: background 0.2s;
    }

    .home-showroom-btn-wsp i {
        font-size: 18px;
    }

    .home-showroom-btn-wsp:hover,
    .home-showroom-btn-wsp:focus,
    .home-showroom-btn-wsp:active,
    .home-showroom-btn-wsp:visited {
        background: #1da851;
        color: #ffffff;
        text-decoration: none;
        outline: none;
    }

    .home-showroom-link-maps {
        display: inline-block;
        font-size: 13px;
        color: #888;
        text-decoration: none;
        -webkit-transition: color 0.2s;
        transition: color 0.2s;
    }

    .home-showroom-link-maps:hover {
        color: #444;
        text-decoration: none;
    }

    /* Mapa estático */
    .home-showroom-mapa-wrap {
        position: relative;
        border-radius: 12px;
        overflow: hidden;
        box-shadow: 0 8px 32px rgba(0,0,0,0.12);
        height: 100%;
        min-height: 360px;
    }

    .home-showroom-mapa-wrap img {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover;
        display: block;
    }

    .home-showroom-mapa-badge {
        position: absolute;
        bottom: 16px;
        left: 16px;
        background: #ffffff;
        border-radius: 8px;
        padding: 10px 14px;
        box-shadow: 0 2px 12px rgba(0,0,0,0.15);
        font-size: 13px;
        font-weight: 600;
        color: #1a1a1a;
        line-height: 1.4;
    }

    .home-showroom-mapa-badge i {
        color: #d63031;
        margin-right: 6px;
    }

    @media (min-width: 992px) {
        .home-showroom-row {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-align: stretch;
            -ms-flex-align: stretch;
            align-items: stretch;
        }
    }

    @media (max-width: 991px) {
        .home-showroom-mapa-wrap {
            min-height: 260px;
            margin-top: 32px;
        }
    }

    @media (max-width: 767px) {
        .home-showroom {
            padding: 48px 0;
        }
        .home-showroom-titulo {
            font-size: 22px;
        }
        .home-showroom-acciones-fila {
            -webkit-box-orient: vertical;
            -ms-flex-direction: column;
            flex-direction: column;
        }
        .home-showroom-btn-primario,
        .home-showroom-btn-wsp {
            text-align: center;
            -webkit-box-pack: center;
            -ms-flex-pack: center;
            justify-content: center;
        }
    }

    /* ============================================================
       SECCIÓN 2B: MÁS CATEGORÍAS (slider)
       ============================================================ */

    .home-mas-cats {
        background: #f8f8f8;
        padding: 40px 0;
        border-top: 1px solid #eee;
    }

    .home-mas-cats-titulo {
        font-size: 13px;
        font-weight: 700;
        color: #666;
        letter-spacing: 2px;
        text-transform: uppercase;
        margin: 0 0 20px;
        text-align: center;
    }

    .home-mas-cats-slider-wrap {
        position: relative;
    }

    .home-mas-cats-card {
        display: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        gap: 8px;
        padding: 14px 16px;
        margin: 4px 6px;
        border: 1px solid #e0e0e0;
        border-radius: 8px;
        background: #ffffff;
        text-decoration: none;
        color: #1a1a1a;
        font-size: 14px;
        font-weight: 600;
        -webkit-transition: border-color 0.2s, box-shadow 0.2s, color 0.2s;
        transition: border-color 0.2s, box-shadow 0.2s, color 0.2s;
        white-space: nowrap;
    }

    .home-mas-cats-card:hover {
        border-color: #d63031;
        box-shadow: 0 2px 10px rgba(214,48,49,0.1);
        color: #d63031;
        text-decoration: none;
    }

    .mc-arrow {
        font-size: 11px;
        color: #ccc;
        -webkit-flex-shrink: 0;
        flex-shrink: 0;
        -webkit-transition: color 0.2s;
        transition: color 0.2s;
    }

    .home-mas-cats-card:hover .mc-arrow { color: #d63031; }

    .home-mas-cats-btn {
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        width: 32px;
        height: 32px;
        border-radius: 50%;
        border: 1px solid #ddd;
        background: #fff;
        color: #666;
        font-size: 12px;
        cursor: pointer;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-transition: border-color 0.2s, color 0.2s;
        transition: border-color 0.2s, color 0.2s;
        z-index: 2;
    }

    .home-mas-cats-btn:hover {
        border-color: #1a1a1a;
        color: #1a1a1a;
    }

    .home-mas-cats-prev { left: -18px; }
    .home-mas-cats-next { right: -18px; }

    /* Nunca mostrar dots en este slider */
    .home-mas-cats .slick-dots { display: none !important; }

    /* Texto largo/corto según pantalla */
    .mc-short { display: none; }

    @media (max-width: 479px) {
        .mc-full  { display: none; }
        .mc-short { display: inline; }
    }

    @media (max-width: 767px) {
        .home-mas-cats {
            padding: 28px 0;
        }
        .home-mas-cats-slider-wrap {
            margin: 0 22px;
        }
        .home-mas-cats-btn {
            width: 28px;
            height: 28px;
            font-size: 11px;
        }
        .home-mas-cats-prev { left: -22px; }
        .home-mas-cats-next { right: -22px; }
        .home-mas-cats-card {
            font-size: 13px;
            padding: 12px 14px;
            justify-content: center;
        }
        /* El botón de nav ya indica deslizamiento: chevron de la card sobra */
        .mc-arrow {
            display: none;
        }
    }

    /* ============================================================
       SECCIÓN 8: FORMAS DE PAGO
       ============================================================ */


    /* ============================================================
       SECCIÓN 9: POR QUÉ EL ALGARROBO
       ============================================================ */

    .home-algarrobo {
        background: #f8f8f8;
        padding: 60px 0;
        border-top: 1px solid #eee;
    }

    .home-algarrobo-row {
        -webkit-box-align: center;
        -ms-flex-align: center;
    }

    .home-algarrobo-izq {
        padding-right: 20px;
        margin-bottom: 32px;
    }

    .home-algarrobo-label {
        font-size: 12px;
        font-weight: 700;
        letter-spacing: 2.5px;
        text-transform: uppercase;
        color: #c0392b;
        margin: 0 0 12px;
    }

    .home-algarrobo-titulo {
        font-size: 28px;
        font-weight: 700;
        color: #1a1a1a;
        line-height: 1.25;
        margin: 0 0 18px;
    }

    .home-algarrobo-intro {
        font-size: 15px;
        color: #555;
        line-height: 1.65;
        margin: 0;
    }

    .home-algarrobo-grid {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        gap: 24px 20px;
    }

    .home-algarrobo-item {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 14px;
        -webkit-box-flex: 1;
        -ms-flex: 1 1 calc(50% - 20px);
        flex: 1 1 calc(50% - 20px);
        min-width: 220px;
    }

    .home-algarrobo-icono {
        -ms-flex-negative: 0;
        flex-shrink: 0;
        width: 38px;
        height: 38px;
        background: #f5f0ea;
        border-radius: 50%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        color: #8b5e3c;
        font-size: 16px;
    }

    .home-algarrobo-item-titulo {
        font-size: 14px;
        font-weight: 700;
        color: #1a1a1a;
        margin: 0 0 5px;
    }

    .home-algarrobo-item-texto {
        font-size: 13px;
        color: #666;
        line-height: 1.6;
        margin: 0;
    }

    @media (max-width: 991px) {
        .home-algarrobo-titulo {
            font-size: 24px;
        }
    }

    @media (max-width: 767px) {
        .home-algarrobo {
            padding: 40px 0;
        }
        .home-algarrobo-item {
            -ms-flex: 1 1 100%;
            flex: 1 1 100%;
        }
    }

    /* ============================================================
       SECCIÓN 10: NUEVA LÍNEA — SILLAS Y MESAS DE COMEDOR
       ============================================================ */

    .home-comedor {
        background: #faf7f4;
        padding: 56px 0 48px;
        border-top: 3px solid #c8a87a;
    }

    .home-comedor-header {
        text-align: center;
        margin-bottom: 36px;
    }

    .home-comedor-badge {
        display: inline-block;
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 2px;
        text-transform: uppercase;
        color: #8b5e3c;
        background: #f0e6d8;
        border-radius: 20px;
        padding: 4px 14px;
        margin-bottom: 14px;
    }

    .home-comedor-titulo {
        font-size: 30px;
        font-weight: 700;
        color: #1a1a1a;
        margin: 0 0 14px;
        line-height: 1.2;
    }

    .home-comedor-subtitulo {
        font-size: 15px;
        color: #666;
        max-width: 560px;
        margin: 0 auto;
        line-height: 1.65;
    }

    .home-comedor-card {
        display: block;
        background: #fff;
        border: 1px solid #e8ddd2;
        border-radius: 10px;
        overflow: hidden;
        text-decoration: none;
        color: #1a1a1a;
        margin-bottom: 24px;
        -webkit-transition: box-shadow 0.2s, border-color 0.2s;
        transition: box-shadow 0.2s, border-color 0.2s;
    }

    .home-comedor-card:hover {
        box-shadow: 0 4px 20px rgba(139,94,60,0.15);
        border-color: #c8a87a;
        text-decoration: none;
        color: #1a1a1a;
    }

    .home-comedor-card-img {
        width: 100%;
        aspect-ratio: 3/2;
        overflow: hidden;
        background: #ede5d8;
    }

    .home-comedor-card-img img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        display: block;
        -webkit-transition: transform 0.4s;
        transition: transform 0.4s;
    }

    .home-comedor-card:hover .home-comedor-card-img img {
        -webkit-transform: scale(1.04);
        transform: scale(1.04);
    }

    .home-comedor-card-body {
        padding: 20px 22px 22px;
    }

    .home-comedor-card-titulo {
        font-size: 18px;
        font-weight: 700;
        color: #1a1a1a;
        margin: 0 0 8px;
    }

    .home-comedor-card-texto {
        font-size: 13px;
        color: #666;
        line-height: 1.6;
        margin: 0 0 14px;
    }

    .home-comedor-card-cta {
        font-size: 13px;
        font-weight: 700;
        color: #8b5e3c;
        -webkit-transition: color 0.2s;
        transition: color 0.2s;
    }

    .home-comedor-card:hover .home-comedor-card-cta {
        color: #5c3a1e;
    }

    .home-comedor-card-cta i {
        font-size: 11px;
        margin-left: 4px;
    }

    @media (max-width: 767px) {
        .home-comedor {
            padding: 36px 0 28px;
        }
        .home-comedor-titulo {
            font-size: 24px;
        }
    }


    /* ============================================================
       SECCIÓN 11: FORMULARIO DE CONTACTO
       ============================================================ */

    .home-contacto {
        background: #ffffff;
        padding: 64px 0 56px;
        border-top: 1px solid #eee;
    }

    .home-contacto-row {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }

    .home-contacto-izq {
        padding-right: 40px;
        padding-top: 8px;
    }

    .home-contacto-label {
        font-size: 12px;
        font-weight: 700;
        letter-spacing: 2.5px;
        text-transform: uppercase;
        color: #d63031;
        margin: 0 0 12px;
    }

    .home-contacto-titulo {
        font-size: 30px;
        font-weight: 700;
        color: #1a1a1a;
        margin: 0 0 14px;
        line-height: 1.2;
    }

    .home-contacto-subtitulo {
        font-size: 15px;
        color: #666;
        line-height: 1.65;
        margin: 0 0 32px;
    }

    .home-contacto-datos {
        list-style: none;
        margin: 0;
        padding: 0;
    }

    .home-contacto-datos li {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 12px;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        margin-bottom: 18px;
        font-size: 14px;
        color: #444;
        line-height: 1.5;
    }

    .home-contacto-datos li i {
        color: #d63031;
        font-size: 16px;
        width: 18px;
        text-align: center;
        margin-top: 2px;
        -ms-flex-negative: 0;
        flex-shrink: 0;
    }

    .home-contacto-datos li a {
        color: #d63031;
        font-weight: 600;
        text-decoration: none;
    }

    .home-contacto-datos li a:hover {
        text-decoration: underline;
    }

    .home-contacto-form {
        background: #f8f8f8;
        border-radius: 14px;
        padding: 8px 20px 16px;
    }

    @media (max-width: 767px) {
        .home-contacto {
            padding: 40px 0 36px;
        }
        .home-contacto-izq {
            padding-right: 0;
            margin-bottom: 32px;
        }
        .home-contacto-titulo {
            font-size: 24px;
        }
        .home-contacto-row {
            display: block;
        }
        .home-contacto .col-md-7 {
            padding-left: 0;
            padding-right: 0;
        }
        .home-contacto-form {
            border-radius: 0;
            padding-left: 15px;
            padding-right: 15px;
        }
    }

