/* ===== HOME — hoja del rediseño. Todo con prefijo .home-* ===== */

/* Tokens Fiubags que usa esta hoja (autocontenidos, igual que las demás
   hojas del home, para que cargue sola). */
:root {
    --fiu-sand: #F6F0E6;
    --fiu-white: #FFFFFF;
    --fiu-ink: #1F2937;
    --fiu-muted: #64748B;
    --fiu-teal: #6EABA5;
    --fiu-teal-darker: #355E5A;
    --fiu-radius-lg: 20px;
    --fiu-radius-xl: 28px;
    --fiu-radius-pill: 999px;
    --fiu-shadow-sm: 0 2px 10px rgba(26, 53, 50, .07);
    --fiu-shadow-lg: 0 14px 36px rgba(26, 53, 50, .12);
    --fiu-shadow-xl: 0 24px 60px rgba(26, 53, 50, .16);
    --fiu-ease-out: cubic-bezier(.22, .61, .36, 1);
}


/* ===== PALETA DE TEMPORADA (otoño): la comparten todas las secciones ===== */
.home-hero,
.home-marcas,
.home-usos,
.home-mdm,
.home-vendidos,
.home-perso,
.home-pasos,
.home-wtc,
.home-compra,
.home-carrito,
.home-clientes,
.home-volumen-sec,
.home-usos-eco,
.home-redes,
.home-conoce,
.home-productos {
    --home-vino: #5E1E2C;
    --home-vino-deep: #4A1622;
    --home-calabaza: #D97A2B;
    --home-calabaza-ink: #A9561B;   /* texto calabaza sobre blanco (AA) */
    --home-durazno: #F3C9A6;
    --home-durazno-claro: #FBE3CF;  /* texto chico sobre olivo (AA) */
    --home-olivo: #586956;          /* botones de la tira */
    --home-olivo-deep: #45533F;     /* hover */
    --home-salvia: #C3D0C0;         /* verde claro: pastilla 3, "Más popular" */
}


/* Solo para lectores de pantalla y buscadores (H1 del hero) */
.home-sr {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* ===== HERO DE TEMPORADA ===== */
.home-hero {
    clear: both;
    display: flow-root;
    width: 100%;
    background: var(--fiu-sand);
    padding: clamp(16px, 3vw, 32px) 0 clamp(24px, 4vw, 48px);
    overflow-x: clip;               /* los adornos asoman del panel sin
                                       provocar scroll horizontal */
}

/* El panel es más ancho que el .container del sitio (1200px en
   escritorio, 450/350px en móvil) para que el vino abra la página. */
.home-hero > .container {
    max-width: 1360px;
    padding-left: clamp(12px, 2vw, 24px);
    padding-right: clamp(12px, 2vw, 24px);
}

.home-hero__panel {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: clamp(32px, 5vw, 48px);
    align-items: center;
    padding: clamp(32px, 5vw, 56px) clamp(20px, 4.5vw, 48px);
    border-radius: var(--fiu-radius-xl);
    background: var(--home-vino);
    box-shadow: var(--fiu-shadow-xl);
    animation: home-entra .5s var(--fiu-ease-out) both;
}

@media (min-width: 992px) {
    .home-hero__panel {
        grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
    }
}


/* ---------- Texto ---------- */
.home-hero__panel > * {
    min-width: 0;
}

.home-hero__texto {
    position: relative;
    z-index: 2;
    max-width: 34rem;
}

.home-hero__eyebrow {
    display: block;
    margin-bottom: 14px;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--home-durazno);
}

.home-hero__titulo {
    margin: 0 0 18px;
    font-family: "Fredoka", "Poppins", system-ui, sans-serif;
    font-size: clamp(2.3rem, 1.5rem + 3vw, 3.5rem);
    font-weight: 600;
    line-height: 1.05;
    letter-spacing: -.01em;
    color: var(--fiu-white);
}

.home-hero__sub {
    margin: 0 0 28px;
    font-family: "Poppins", sans-serif;
    font-size: 15px;
    line-height: 1.6;
    color: rgba(255, 255, 255, .86);
}

.home-hero__ctas {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.home-hero__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 26px;
    border: 1.5px solid transparent;
    border-radius: var(--fiu-radius-pill);
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    text-decoration: none;
    transition: transform .15s var(--fiu-ease-out),
                background-color .15s var(--fiu-ease-out),
                color .15s var(--fiu-ease-out),
                box-shadow .15s var(--fiu-ease-out);
}

.home-hero__btn:hover {
    transform: translateY(-2px);
    text-decoration: none;
}

.home-hero__btn:active {
    transform: translateY(1px) scale(.985);
}

.home-hero__btn:focus-visible {
    outline: none;
    box-shadow: 0 0 0 3px rgba(255, 255, 255, .55);
}

.home-hero__btn--solido {
    background: var(--home-olivo);
    color: var(--fiu-white);
}

.home-hero__btn--solido:hover {
    background: var(--home-olivo-deep);
    color: var(--fiu-white);
    box-shadow: 0 10px 24px rgba(0, 0, 0, .25);
}

.home-hero__btn--linea {
    border-color: rgba(255, 255, 255, .7);
    color: var(--fiu-white);
}

.home-hero__btn--linea:hover {
    background: var(--fiu-white);
    border-color: var(--fiu-white);
    color: var(--home-vino);
    box-shadow: 0 10px 24px rgba(0, 0, 0, .25);
}

.home-hero__rating {
    display: inline-block;
    margin: 22px 0 0;
    text-decoration: none;
    font-family: "Poppins", sans-serif;
    font-size: 15px;
    color: rgba(255, 255, 255, .86);
}

/* Solo estrellas + reseñas son enlace; "Facturamos" va como texto */
.home-hero__rating-link {
    color: inherit;
    text-decoration: none;
}

.home-hero__rating-link:hover {
    color: var(--fiu-white);
    text-decoration: none;
}

.home-hero__resenas {
    text-decoration: underline;
    text-underline-offset: 3px;
}

.home-hero__rating-link:focus-visible {
    outline: 3px solid var(--home-durazno);
    outline-offset: 4px;
    border-radius: 4px;
}

/* Salto suave a #comentarios (solo si no se pidió reducir movimiento) */
@media (prefers-reduced-motion: no-preference) {
    html:has(.home-hero) {
        scroll-behavior: smooth;
    }
}

.home-hero__rating strong {
    font-weight: 700;
    color: var(--fiu-white);
}

.home-hero__estrellas {
    display: inline-flex;
    gap: 2px;
    margin-right: 8px;
    vertical-align: -1px;
    font-size: 15px;
    color: var(--home-durazno);
}

@media (max-width: 479.98px) {
    .home-hero__btn {
        flex: 1 1 100%;
    }
}


/* ---------- Polaroids ---------- */
/* Tres columnas que se enciman: la del centro va al frente y las de los
   lados se meten detrás, cada una con su giro. */
.home-hero__fotos {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr) minmax(0, 1fr);
    align-items: center;
    width: 100%;
    padding: 12px 0;
}

.home-hero__polaroid {
    position: relative;
    display: block;
    padding: 8px 8px 0;
    border-radius: 6px;
    background: var(--fiu-white);
    box-shadow: 0 12px 28px rgba(0, 0, 0, .28);
    color: var(--fiu-ink);
    text-decoration: none;
    transition: transform .25s var(--fiu-ease-out),
                box-shadow .25s var(--fiu-ease-out);
}

.home-hero__polaroid--izq {
    z-index: 1;
    margin-right: -22%;
    transform: rotate(-7deg) translateY(4%);
}

.home-hero__polaroid--centro {
    z-index: 3;
    transform: rotate(2deg) translateY(-3%);
}

.home-hero__polaroid--der {
    z-index: 2;
    margin-left: -22%;
    transform: rotate(6deg) translateY(6%);
}

.home-hero__polaroid:hover,
.home-hero__polaroid:focus-visible {
    z-index: 4;
    color: var(--fiu-ink);
    text-decoration: none;
    box-shadow: 0 22px 44px rgba(0, 0, 0, .38);
}

.home-hero__polaroid--izq:hover,
.home-hero__polaroid--izq:focus-visible    { transform: rotate(-3deg) translateY(-4%); }
.home-hero__polaroid--centro:hover,
.home-hero__polaroid--centro:focus-visible { transform: rotate(0deg) translateY(-8%); }
.home-hero__polaroid--der:hover,
.home-hero__polaroid--der:focus-visible    { transform: rotate(3deg) translateY(-2%); }

.home-hero__polaroid:focus-visible {
    outline: 3px solid var(--home-durazno);
    outline-offset: 3px;
}

.home-hero__foto {
    display: block;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    border-radius: 3px;
    background: var(--fiu-sand);
}

.home-hero__foto img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .45s var(--fiu-ease-out);
}

.home-hero__polaroid:hover .home-hero__foto img {
    transform: scale(1.07);
}

/* Nombre | precio en una fila; debajo, paquete y envío a todo lo ancho */
.home-hero__pie {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: 3px 6px;
    padding: 8px 2px 10px;
    font-family: "Poppins", sans-serif;
    font-size: clamp(10px, .55rem + .5vw, 13px);
    line-height: 1.25;
}

.home-hero__nombre {
    display: flex;
    flex-direction: column;
    font-weight: 600;
}

.home-hero__tag {
    margin-bottom: 2px;
    font-size: .78em;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--home-calabaza-ink);
}

.home-hero__precio {
    font-weight: 700;
    color: var(--home-vino);
}

/* Celular/tablet: polaroids angostas; el precio va debajo del nombre */
@media (max-width: 991.98px) {
    .home-hero__pie {
        grid-template-columns: minmax(0, 1fr);
    }

    .home-hero__nombre {
        overflow-wrap: anywhere;
    }
}

.home-hero__detalle {
    grid-column: 1 / -1;
    font-size: .82em;
    color: var(--fiu-muted);
}

.home-hero__envio {
    display: block;
    margin-top: 1px;
    font-weight: 600;
    color: var(--fiu-teal-darker);
}

.home-hero__envio i {
    margin-right: 2px;
    font-size: .9em;
}


/* ---------- Tira de productos (debajo del panel) ---------- */
/* 4 cards compactas al azar: foto | nombre + paquete | precio + botón.
   Toda la card es un solo enlace; "Comprar" es solo la pista visual. */
.home-tira {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
    margin-top: clamp(16px, 2.5vw, 24px);
}

@media (min-width: 576px) {
    .home-tira {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 1200px) {
    .home-tira {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

.home-tira__card {
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    padding: 8px 10px 8px 8px;
    border: 1px solid rgba(94, 30, 44, .12);
    border-radius: 14px;
    background: var(--fiu-white);
    box-shadow: var(--fiu-shadow-sm);
    color: var(--fiu-ink);
    text-decoration: none;
    transition: transform .15s var(--fiu-ease-out),
                box-shadow .15s var(--fiu-ease-out),
                border-color .15s var(--fiu-ease-out);
}

.home-tira__card:hover {
    transform: translateY(-3px);
    border-color: var(--home-calabaza);
    box-shadow: var(--fiu-shadow-lg);
    color: var(--fiu-ink);
    text-decoration: none;
}

.home-tira__card:focus-visible {
    outline: 3px solid var(--home-calabaza);
    outline-offset: 2px;
}

.home-tira__foto {
    display: block;
    width: 56px;
    height: 56px;
    overflow: hidden;
    border-radius: 10px;
    background: var(--fiu-sand);
}

.home-tira__foto img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .45s var(--fiu-ease-out);
}

.home-tira__card:hover .home-tira__foto img {
    transform: scale(1.07);
}

.home-tira__info {
    display: flex;
    flex-direction: column;
    min-width: 0;
    font-family: "Poppins", sans-serif;
    line-height: 1.3;
}

.home-tira__nombre {
    font-size: 13px;
    font-weight: 600;
}

.home-tira__nota {
    font-size: 11.5px;
    color: var(--fiu-muted);
}

.home-tira__envio {
    font-size: 11.5px;
    font-weight: 600;
    color: var(--fiu-teal-darker);
}

.home-tira__envio i {
    font-size: .9em;
}

.home-tira__compra {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 6px;
    font-family: "Poppins", sans-serif;
}

.home-tira__precio {
    font-size: 18px;
    font-weight: 700;
    white-space: nowrap;
    color: var(--home-vino);
}

.home-tira__btn {
    padding: 5px 12px;
    border-radius: var(--fiu-radius-pill);
    background: var(--home-olivo);
    color: var(--fiu-white);
    font-size: 10.5px;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    transition: background-color .15s var(--fiu-ease-out);
}

.home-tira__card:hover .home-tira__btn {
    background: var(--home-olivo-deep);
}


/* ---------- Cinta de confianza (barra blanca dentro del panel) ---------- */
/* Líneas divisorias = fondo asomando por el gap de 1px.
   Hasta tablet: "Compra online" en una línea y los otros 4 en 2×2. */
.home-confianza__barra {
    position: relative;
    z-index: 2;
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1px;
    overflow: hidden;
    border-radius: var(--fiu-radius-lg);
    background: rgba(94, 30, 44, .12);
    box-shadow: 0 10px 28px rgba(0, 0, 0, .22);
}

.home-confianza__bloque--segura {
    grid-column: 1 / -1;
}

@media (min-width: 1200px) {
    .home-confianza__barra {
        grid-template-columns: minmax(0, .85fr) minmax(0, 1fr) minmax(0, 1.25fr) minmax(0, .8fr) minmax(0, .9fr);
    }

    .home-confianza__bloque--segura {
        grid-column: auto;
    }
}

.home-confianza__bloque {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 8px;
    padding: 16px 20px;
    background: var(--fiu-white);
}

@media (max-width: 575.98px) {
    .home-confianza__bloque {
        padding: 14px 12px;
    }

    /* Paqueterías: 2 logos arriba y 1 abajo, centrado */
    .home-confianza__bloque:has(.home-confianza__logos) {
        padding-left: 8px;
        padding-right: 8px;
    }

    .home-confianza__barra .home-confianza__logos {
        flex-wrap: wrap;
        justify-content: center;
        gap: 6px 4px;
    }

    .home-confianza__logos .home-confianza__logo {
        flex: 0 0 calc(50% - 2px);
        width: auto;
    }
}

.home-confianza__bloque--segura {
    flex-direction: row;
    align-items: center;
    gap: 14px;
}

.home-confianza__bloque--segura i {
    flex-shrink: 0;
    font-size: 26px;
    color: var(--home-vino);
}

.home-confianza__lema {
    margin: 0;
    font-family: "Poppins", sans-serif;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.3;
    color: var(--home-vino);
}

.home-confianza__label {
    margin: 0;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--fiu-muted);
}

.home-confianza__nota {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.35;
    color: var(--fiu-ink);
}

.home-confianza__nota i {
    flex-shrink: 0;
    font-size: 20px;
    color: var(--home-vino);
}

/* Ancho manda y el alto sigue la proporción del archivo (309×50): nunca
   se estira. Tope de 272px ≈ 44px de alto, cerca de su tamaño natural. */
.home-confianza__pagos img {
    display: block;
    width: 100%;
    max-width: 272px;
    height: auto;
}

/* Las tres paqueterías siempre en una fila: si falta espacio se
   encogen parejas en vez de bajar a otra línea. */
.home-confianza__logos {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 12px;
}

/* Recorta el aire del cuadro 500×500: la caja es horizontal y el logo
   (una franja al centro) la llena a lo ancho. */
.home-confianza__logo {
    display: block;
    flex: 0 1 84px;
    min-width: 0;
    width: 84px;
    aspect-ratio: 3 / 1;            /* 84×28; se encoge sin deformarse */
    overflow: hidden;
}

.home-confianza__logo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Mercado Libre se queda más grande: es un solo logo */
.home-confianza__ml .home-confianza__logo {
    width: 120px;
}

/* Solo logo, sin enlace */
.home-confianza__ml {
    display: inline-block;
    align-self: flex-start;
    border-radius: 8px;
}


/* ---------- Orden en celular/tablet ----------
   Título, texto, polaroids, botones, calificación y cinta de confianza. */
@media (max-width: 991.98px) {
    .home-hero__panel {
        row-gap: 0;
    }

    .home-hero__texto {
        display: contents;
    }

    .home-hero__eyebrow,
    .home-hero__titulo,
    .home-hero__sub,
    .home-hero__ctas,
    .home-hero__rating {
        position: relative;
        z-index: 2;
    }

    .home-hero__eyebrow { order: 1; }
    .home-hero__titulo  { order: 2; }
    .home-hero__sub     { order: 3; margin-bottom: 0; }
    .home-hero__fotos   { order: 4; margin: 24px 0; }
    .home-hero__ctas    { order: 5; }
    .home-hero__rating  { order: 6; justify-self: start; }
    .home-hero__panel > .home-confianza__barra { order: 7; margin-top: 24px; }
}


/* ---------- Adornos de otoño ---------- */
/* Puro adorno: quietos, sin enlaces y ocultos a lectores de pantalla. */
.home-hero__adornos {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
}

.home-hero__hoja {
    position: absolute;
    line-height: 1;
}

/* Las dos grandes asoman por el borde del panel */
.home-hero__hoja--arriba {
    top: -28px;
    left: 38%;
    font-size: 58px;
    color: var(--home-calabaza);
    transform: rotate(18deg);
}

/* Réplica de la de arriba, asomando por la esquina inferior derecha */
.home-hero__hoja--abajo {
    right: 4%;
    bottom: -28px;
    font-size: 58px;
    color: var(--home-calabaza);
    transform: rotate(-162deg);
}

.home-hero__hoja--1 {
    left: 40%;
    bottom: 14%;
    font-size: 26px;
    color: var(--home-calabaza);
    transform: rotate(-25deg);
}

.home-hero__hoja--2 {
    top: 8%;
    right: 3%;
    font-size: 16px;
    color: var(--home-durazno);
    transform: rotate(30deg);
}

@media (max-width: 991.98px) {
    .home-hero__hoja--arriba {
        left: auto;
        right: 12%;
        top: -20px;
        font-size: 44px;
    }

    .home-hero__hoja--abajo {
        bottom: -20px;
        font-size: 44px;
    }

    .home-hero__hoja--1 {
        display: none;
    }
}


/* ===== MARCAS QUE CONFÍAN ===== */
.home-marcas {
    clear: both;
    display: flow-root;
    width: 100%;
    background: var(--fiu-sand);
    padding: clamp(32px, 5vw, 56px) 0 clamp(16px, 3vw, 32px);
    text-align: center;
}

.home-marcas__eyebrow {
    display: block;
    margin-bottom: 8px;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--home-calabaza-ink);
}

.home-marcas__titulo {
    margin: 0 0 10px;
    font-family: "Fredoka", "Poppins", system-ui, sans-serif;
    font-size: clamp(1.7rem, 1.2rem + 1.8vw, 2.4rem);
    font-weight: 600;
    line-height: 1.1;
    color: var(--home-vino);
}

.home-marcas__desc {
    max-width: 560px;
    margin: 0 auto;
    font-family: "Poppins", sans-serif;
    font-size: 15px;
    line-height: 1.55;
    color: var(--fiu-slate, #475569);
}

/* style.css apila las .section con float; aquí van en flujo normal */
.home-marcas .section {
    float: none;
    width: 100%;
}

/* Cinta de logos: más baja y en gris, a color al pasar el mouse */
.home-marcas .clients--marquee,
.home-marcas .clients--marquee .clients,
.home-marcas .clients--marquee .mt-4.mb-5.section {
    margin: 0 !important;
    padding: 0 !important;
    background: transparent;
}

/* Sin la card blanca del partial: el logo va directo sobre la arena */
.home-marcas .clients--marquee .brand-item {
    width: 120px;
    height: 64px;
    padding: 10px;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.home-marcas .clients--marquee .brand-item:hover {
    transform: none;
    box-shadow: none;
}

.home-marcas .clients--marquee .brand-item img {
    filter: grayscale(1);
    opacity: .6;
    transition: filter .25s var(--fiu-ease-out),
                opacity .25s var(--fiu-ease-out);
}

.home-marcas .clients--marquee .brand-item:hover img {
    filter: none;
    opacity: 1;
}

@media (max-width: 767.98px) {
    .home-marcas .clients--marquee .brand-item {
        width: 100px;
        height: 56px;
    }
}


/* ===== COMPRA POR USO ===== */
.home-usos {
    clear: both;
    display: flow-root;
    width: 100%;
    background: var(--fiu-sand);
    padding: clamp(8px, 2vw, 16px) 0 clamp(40px, 6vw, 72px);
}

.home-usos > .container {
    max-width: 1360px;
    padding-left: clamp(12px, 2vw, 24px);
    padding-right: clamp(12px, 2vw, 24px);
}

.home-usos__head {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
    gap: 8px 24px;
    margin-bottom: clamp(20px, 3vw, 32px);
}

.home-usos__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 6px;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--home-olivo);
}

.home-usos__titulo {
    margin: 0;
    font-family: "Fredoka", "Poppins", system-ui, sans-serif;
    font-size: clamp(1.7rem, 1.2rem + 1.8vw, 2.4rem);
    font-weight: 600;
    line-height: 1.1;
    color: var(--home-vino);
}

.home-usos__todo {
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: var(--home-olivo);
    text-decoration: none;
    transition: color .15s var(--fiu-ease-out);
}

.home-usos__todo span {
    display: inline-block;
    transition: transform .15s var(--fiu-ease-out);
}

.home-usos__todo:hover {
    color: var(--home-vino);
    text-decoration: none;
}

.home-usos__todo:hover span {
    transform: translateX(4px);
}

/* Círculos: fila con scroll en móvil, rejilla en tablet y escritorio */
.home-usos__lista {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 132px;
    gap: 16px;
    margin: 0 calc(-1 * clamp(12px, 2vw, 24px));
    padding: 6px clamp(12px, 2vw, 24px) 12px;
    list-style: none;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.home-usos__lista::-webkit-scrollbar {
    display: none;
}

.home-usos__lista > li {
    scroll-snap-align: start;
}

@media (min-width: 768px) {
    .home-usos__lista {
        grid-auto-flow: row;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 28px 16px;
        margin: 0;
        padding: 6px 0 12px;
        overflow: visible;
    }
}

@media (min-width: 1200px) {
    .home-usos__lista {
        grid-template-columns: repeat(8, minmax(0, 1fr));
    }
}

.home-usos__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    color: var(--fiu-ink);
    text-decoration: none;
    border-radius: var(--fiu-radius-lg);
}

.home-usos__item:hover {
    color: var(--fiu-ink);
    text-decoration: none;
}

.home-usos__item:focus-visible {
    outline: 3px solid var(--home-calabaza);
    outline-offset: 4px;
}

.home-usos__foto {
    display: block;
    width: 100%;
    max-width: 124px;
    aspect-ratio: 1 / 1;
    margin-bottom: 12px;
    overflow: hidden;
    border: 4px solid var(--fiu-white);
    border-radius: 50%;
    background: var(--fiu-white);
    box-shadow: 0 0 0 2px var(--home-durazno), var(--fiu-shadow-sm);
    transition: transform .25s var(--fiu-ease-out),
                box-shadow .25s var(--fiu-ease-out);
}

.home-usos__foto img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .45s var(--fiu-ease-out);
}

.home-usos__item:hover .home-usos__foto {
    transform: translateY(-6px);
    box-shadow: 0 0 0 3px var(--home-calabaza), var(--fiu-shadow-lg);
}

.home-usos__item:hover .home-usos__foto img {
    transform: scale(1.07);
}

.home-usos__nombre {
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.25;
    transition: color .15s var(--fiu-ease-out);
}

.home-usos__item:hover .home-usos__nombre {
    color: var(--home-vino);
}

.home-usos__sub {
    margin-top: 4px;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    line-height: 1.35;
    color: var(--fiu-muted);
}

/* Pills por material */
.home-usos__materiales {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-top: clamp(24px, 3vw, 36px);
}

.home-usos__materiales-label {
    margin-right: 4px;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 600;
    color: var(--home-vino);
}

.home-usos__chip {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 0 20px;
    border: 1px solid rgba(94, 30, 44, .2);
    border-radius: var(--fiu-radius-pill);
    background: var(--fiu-white);
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    color: var(--fiu-ink);
    text-decoration: none;
    transition: background-color .15s var(--fiu-ease-out),
                border-color .15s var(--fiu-ease-out),
                color .15s var(--fiu-ease-out),
                transform .15s var(--fiu-ease-out);
}

.home-usos__chip:hover {
    transform: translateY(-2px);
    border-color: var(--home-vino);
    background: var(--home-vino);
    color: var(--fiu-white);
    text-decoration: none;
}

.home-usos__chip:focus-visible,
.home-usos__todo:focus-visible {
    outline: 3px solid var(--home-calabaza);
    outline-offset: 2px;
}


/* ===== TEMPORADA DÍA DE MUERTOS ===== */
.home-mdm {
    clear: both;
    display: flow-root;
    width: 100%;
    background: var(--fiu-sand);
    padding: 0 0 clamp(32px, 4vw, 48px);
}

.home-mdm > .container {
    max-width: 1360px;
    padding-left: clamp(12px, 2vw, 24px);
    padding-right: clamp(12px, 2vw, 24px);
}

.home-mdm__panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    overflow: hidden;
    border-radius: var(--fiu-radius-xl);
    background: var(--home-durazno-claro);
    box-shadow: var(--fiu-shadow-sm);
}

@media (min-width: 992px) {
    .home-mdm__panel {
        grid-template-columns: minmax(0, .85fr) minmax(0, 1fr);
    }
}

/* Carrusel: scroll-snap, las flechas y puntos los mueve home.js */
.home-mdm__media {
    position: relative;
    min-height: 0;
    background: var(--fiu-teal);
}

.home-mdm__track {
    display: flex;
    height: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scrollbar-width: none;
}

.home-mdm__track::-webkit-scrollbar {
    display: none;
}

.home-mdm__slide {
    position: relative;
    flex: 0 0 100%;
    aspect-ratio: 16 / 10;
    scroll-snap-align: start;
}

/* Tablet: más baja para no crecer de alto */
@media (min-width: 576px) and (max-width: 991.98px) {
    .home-mdm__slide {
        aspect-ratio: 2 / 1;
    }
}

/* Escritorio: la foto no empuja el alto, toma el de la columna de texto */
@media (min-width: 992px) {
    .home-mdm__track {
        position: absolute;
        inset: 0;
    }

    .home-mdm__slide {
        aspect-ratio: auto;
        min-height: 100%;
    }
}

.home-mdm__slide picture,
.home-mdm__slide img {
    display: block;
    width: 100%;
    height: 100%;
}

.home-mdm__slide img {
    object-fit: cover;
}

.home-mdm__nombre {
    position: absolute;
    top: 14px;
    left: 14px;
    padding: 4px 12px;
    border-radius: var(--fiu-radius-pill);
    background: rgba(255, 255, 255, .92);
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 600;
    color: var(--home-vino);
}

.home-mdm__flecha {
    position: absolute;
    top: 50%;
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, .92);
    color: var(--home-vino);
    box-shadow: var(--fiu-shadow-sm);
    transform: translateY(-50%);
    cursor: pointer;
    transition: background-color .2s var(--fiu-ease-out),
                color .2s var(--fiu-ease-out),
                transform .2s var(--fiu-ease-out);
}

.home-mdm__flecha--prev { left: 12px; }
.home-mdm__flecha--next { right: 12px; }

.home-mdm__flecha:hover {
    background: var(--home-vino);
    color: var(--fiu-white);
    transform: translateY(-50%) scale(1.08);
}

.home-mdm__dots {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 12px;
    display: flex;
    justify-content: center;
    gap: 4px;
}

/* Botón de 24px para el toque; el punto visible es el ::before */
.home-mdm__dot {
    width: 24px;
    height: 24px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
}

.home-mdm__dot::before {
    content: "";
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .6);
    box-shadow: 0 1px 3px rgba(0, 0, 0, .25);
    transition: width .2s var(--fiu-ease-out), background-color .2s var(--fiu-ease-out);
}

.home-mdm__dot[aria-current="true"]::before {
    width: 22px;
    border-radius: var(--fiu-radius-pill);
    background: var(--fiu-white);
}

/* Columna de texto */
.home-mdm__info {
    padding: clamp(20px, 2.6vw, 32px);
}

.home-mdm__eyebrow {
    display: block;
    margin-bottom: 8px;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--home-calabaza-ink);
}

.home-mdm__titulo {
    margin: 0 0 8px;
    font-family: "Fredoka", "Poppins", system-ui, sans-serif;
    font-size: clamp(1.5rem, 1.1rem + 1.4vw, 2.1rem);
    font-weight: 600;
    line-height: 1.15;
    color: var(--home-vino);
}

.home-mdm__desc {
    margin: 0 0 14px;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    line-height: 1.5;
    color: var(--fiu-ink);
}

/* Paquetes 3 / 5 / 10 */
.home-mdm__paquetes {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin: 0 0 12px;
    padding-top: 8px;               /* aire para la cinta "Más popular" */
}

.home-mdm__paquete {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0;
    width: 100%;
    padding: 10px 8px 8px;
    border: 2px solid transparent;
    border-radius: 16px;
    background: rgba(255, 255, 255, .7);
    font: inherit;
    text-align: center;
    cursor: pointer;
    transition: transform .2s var(--fiu-ease-out),
                box-shadow .2s var(--fiu-ease-out),
                border-color .2s var(--fiu-ease-out),
                background-color .2s var(--fiu-ease-out);
}

.home-mdm__paquete:hover {
    transform: translateY(-4px);
    background: var(--fiu-white);
    box-shadow: var(--fiu-shadow-lg);
}

.home-mdm__paquete[aria-pressed="true"] {
    border-color: var(--home-vino);
    background: var(--fiu-white);
    box-shadow: var(--fiu-shadow-sm);
}

.home-mdm__ribbon {
    position: absolute;
    top: -10px;
    left: 50%;
    padding: 2px 10px;
    border-radius: var(--fiu-radius-pill);
    background: var(--home-vino);
    font-family: "Poppins", sans-serif;
    font-size: 10px;
    font-weight: 600;
    white-space: nowrap;
    color: var(--fiu-white);
    transform: translateX(-50%);
}

.home-mdm__qty {
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--fiu-muted);
}

.home-mdm__precio {
    font-family: "Fredoka", "Poppins", system-ui, sans-serif;
    font-size: clamp(1.15rem, 1rem + .6vw, 1.4rem);
    font-weight: 600;
    color: var(--home-vino);
}

.home-mdm__pieza {
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    color: var(--fiu-ink);
}

/* Medida, material, surtidos y envío */
.home-mdm__datos {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0 0 10px;
    padding: 0;
    list-style: none;
}

.home-mdm__datos li {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 12px;
    border-radius: var(--fiu-radius-pill);
    background: var(--fiu-white);
    font-family: "Poppins", sans-serif;
    font-size: 12.5px;
    color: var(--fiu-ink);
}

.home-mdm__datos i {
    color: var(--home-calabaza-ink);
}

.home-mdm__nota {
    margin: 0 0 14px;
    font-family: "Poppins", sans-serif;
    font-size: 12.5px;
    line-height: 1.5;
    color: var(--fiu-muted);
}

/* Fila de compra: cantidad de paquetes + agregar al carrito */
.home-mdm__compra {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 10px;
    margin: 0 0 14px;
}

.home-mdm__cantidad-campo {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.home-mdm__cantidad-label {
    margin: 0;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 600;
    color: var(--fiu-ink);
}

.home-mdm__stepper {
    display: inline-flex;
    align-items: center;
    border: 1.5px solid rgba(94, 30, 44, .18);
    border-radius: var(--fiu-radius-pill);
    background: var(--fiu-white);
}

.home-mdm__menos,
.home-mdm__mas {
    width: 44px;
    height: 44px;
    border: 0;
    border-radius: 50%;
    background: transparent;
    font-size: 20px;
    line-height: 1;
    color: var(--home-vino);
    cursor: pointer;
}

.home-mdm__menos:hover,
.home-mdm__mas:hover {
    background: var(--home-durazno-claro);
}

.home-mdm__cantidad {
    width: 40px;
    border: 0;
    background: transparent;
    font-family: "Poppins", sans-serif;
    font-size: 15px;
    font-weight: 600;
    text-align: center;
    color: var(--fiu-ink);
    -moz-appearance: textfield;
}

.home-mdm__cantidad::-webkit-outer-spin-button,
.home-mdm__cantidad::-webkit-inner-spin-button {
    margin: 0;
    -webkit-appearance: none;
}

.home-mdm__agregar {
    flex: 1 1 220px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 48px;
    padding: 10px 22px;
    border: 0;
    border-radius: var(--fiu-radius-pill);
    background: var(--home-vino);
    font-family: "Poppins", sans-serif;
    font-size: 15px;
    font-weight: 600;
    color: var(--fiu-white);
    cursor: pointer;
    transition: background-color .2s var(--fiu-ease-out), transform .2s var(--fiu-ease-out);
}

.home-mdm__agregar:hover {
    background: var(--home-vino-deep);
    transform: translateY(-2px);
}

.home-mdm__agregar:disabled {
    opacity: .7;
    cursor: wait;
    transform: none;
}

.home-mdm__total {
    padding-left: 10px;
    border-left: 1px solid rgba(255, 255, 255, .35);
}

.home-mdm__link {
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: var(--home-vino);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.home-mdm__link:hover {
    color: var(--home-calabaza-ink);
}

.home-mdm__paquete:focus-visible,
.home-mdm__agregar:focus-visible,
.home-mdm__menos:focus-visible,
.home-mdm__mas:focus-visible,
.home-mdm__link:focus-visible,
.home-mdm__flecha:focus-visible,
.home-mdm__dot:focus-visible {
    outline: 3px solid var(--home-calabaza);
    outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
    .home-mdm__track { scroll-behavior: auto; }
    .home-mdm__paquete,
    .home-mdm__agregar,
    .home-mdm__flecha { transition: none; }
}


/* ===== NUESTROS MÁS VENDIDOS ===== */
.home-vendidos {
    clear: both;
    display: flow-root;
    width: 100%;
    background: var(--fiu-sand);
    padding: 0 0 clamp(40px, 6vw, 72px);
    scroll-margin-top: 80px;        /* el ancla no queda bajo el header */
}

.home-vendidos > .container {
    max-width: 1360px;
    padding-left: clamp(12px, 2vw, 24px);
    padding-right: clamp(12px, 2vw, 24px);
}

.home-vendidos__head {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px 24px;
    margin-bottom: clamp(18px, 2.5vw, 28px);
}

.home-vendidos__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 6px;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--home-olivo);
}

.home-vendidos__titulo {
    margin: 0;
    font-family: "Fredoka", "Poppins", system-ui, sans-serif;
    font-size: clamp(1.7rem, 1.2rem + 1.8vw, 2.4rem);
    font-weight: 600;
    line-height: 1.1;
    color: var(--home-vino);
}

.home-vendidos__controles {
    display: flex;
    flex: 1 1 auto;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    min-width: 0;
}

/* Si no caben, los filtros bajan de renglón; las flechas se quedan al lado */
.home-vendidos__filtros {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    min-width: 0;
}

.home-vendidos__filtro {
    flex-shrink: 0;
    min-height: 44px;
    padding: 0 18px;
    border: 1px solid rgba(94, 30, 44, .22);
    border-radius: var(--fiu-radius-pill);
    background: var(--fiu-white);
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    color: var(--fiu-ink);
    cursor: pointer;
    transition: background-color .15s var(--fiu-ease-out),
                border-color .15s var(--fiu-ease-out),
                color .15s var(--fiu-ease-out);
}

.home-vendidos__filtro:hover {
    border-color: var(--home-vino);
    color: var(--home-vino);
}

.home-vendidos__filtro[aria-pressed="true"] {
    border-color: var(--home-vino);
    background: var(--home-vino);
    color: var(--fiu-white);
}

.home-vendidos__flechas {
    display: flex;
    flex-shrink: 0;
    gap: 8px;
}

@media (max-width: 575.98px) {
    .home-vendidos__filtro {
        padding: 0 14px;
        font-size: 12.5px;
    }
}

.home-vendidos__flecha {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border: 1px solid rgba(94, 30, 44, .22);
    border-radius: 50%;
    background: var(--fiu-white);
    color: var(--home-vino);
    font-size: 14px;
    cursor: pointer;
    transition: background-color .15s var(--fiu-ease-out),
                color .15s var(--fiu-ease-out),
                transform .15s var(--fiu-ease-out),
                opacity .15s var(--fiu-ease-out);
}

.home-vendidos__flecha--sig {
    border-color: var(--home-vino);
    background: var(--home-vino);
    color: var(--fiu-white);
}

.home-vendidos__flecha:hover:not(:disabled) {
    transform: translateY(-2px);
    background: var(--home-vino-deep);
    border-color: var(--home-vino-deep);
    color: var(--fiu-white);
}

.home-vendidos__flecha:disabled {
    opacity: .4;
    cursor: default;
}

.home-vendidos__filtro:focus-visible,
.home-vendidos__flecha:focus-visible {
    outline: 3px solid var(--home-calabaza);
    outline-offset: 2px;
}

/* Track: 2 cards en móvil, 4 en tablet, 6 en escritorio */
.home-vendidos__track {
    position: relative;             /* home.js mide offsetLeft contra el carril */
    --vend-gap: 14px;
    --vend-visibles: 2;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - (var(--vend-visibles) - 1) * var(--vend-gap)) / var(--vend-visibles));
    gap: var(--vend-gap);
    padding: 10px 2px 14px;         /* aire para el lift de la card en hover */
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.home-vendidos__track::-webkit-scrollbar {
    display: none;
}

@media (min-width: 768px) {
    .home-vendidos__track {
        --vend-visibles: 4;
        --vend-gap: 16px;
    }
}

@media (min-width: 1200px) {
    .home-vendidos__track {
        --vend-visibles: 6;
    }
}

.home-vendidos__card {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid rgba(94, 30, 44, .1);
    border-radius: 14px;
    background: var(--fiu-white);
    box-shadow: var(--fiu-shadow-sm);
    scroll-snap-align: start;
    transition: transform .25s var(--fiu-ease-out),
                box-shadow .25s var(--fiu-ease-out),
                border-color .25s var(--fiu-ease-out);
}

.home-vendidos__card[hidden] {
    display: none;
}

.home-vendidos__card:hover {
    transform: translateY(-6px);
    border-color: var(--home-durazno);
    box-shadow: var(--fiu-shadow-lg);
}

.home-vendidos__foto {
    display: block;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: var(--fiu-sand);
}

.home-vendidos__foto img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .45s var(--fiu-ease-out);
}

.home-vendidos__card:hover .home-vendidos__foto img {
    transform: scale(1.07);
}

.home-vendidos__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 12px 12px 10px;
    font-family: "Poppins", sans-serif;
}

.home-vendidos__nombre {
    margin: 0 0 8px;
    font-family: "Poppins", sans-serif;
    font-size: 13.5px;
    font-weight: 500;
    line-height: 1.3;
}

.home-vendidos__nombre a {
    color: var(--fiu-ink);
    text-decoration: none;
}

.home-vendidos__nombre a:hover {
    color: var(--home-vino);
    text-decoration: none;
}

.home-vendidos__precio {
    margin: auto 0 0;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    color: var(--fiu-ink);
}

.home-vendidos__nota,
.home-vendidos__envio {
    margin: 2px 0 0;
    font-size: 12px;
    line-height: 1.35;
    color: var(--fiu-muted);
}

.home-vendidos__envio {
    font-weight: 600;
    color: var(--fiu-teal-darker);
}

.home-vendidos__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    margin-top: 12px;
    padding: 0 10px;
    border-radius: 10px;
    background: var(--home-olivo);
    color: var(--fiu-white);
    font-size: 13px;
    font-weight: 600;
    text-align: center;
    text-decoration: none;
    transition: background-color .15s var(--fiu-ease-out),
                transform .15s var(--fiu-ease-out);
}

.home-vendidos__btn:hover {
    background: var(--home-olivo-deep);
    color: var(--fiu-white);
    text-decoration: none;
}

.home-vendidos__btn:active {
    transform: translateY(1px) scale(.985);
}





.home-vendidos__btn:focus-visible,

/* Puntitos: la página actual se alarga en vino */
.home-vendidos__dots {
    display: flex;
    justify-content: center;
    gap: 6px;
    margin-top: 16px;
}

.home-vendidos__dot {
    width: 6px;
    height: 6px;
    border-radius: var(--fiu-radius-pill);
    background: rgba(94, 30, 44, .22);
    transition: width .25s var(--fiu-ease-out),
                background-color .25s var(--fiu-ease-out);
}

.home-vendidos__dot.is-activo {
    width: 20px;
    background: var(--home-vino);
}


/* ===== NUESTROS PRODUCTOS PERSONALIZADOS ===== */
.home-perso {
    clear: both;
    display: flow-root;
    width: 100%;
    background: var(--home-olivo);
    padding: clamp(40px, 6vw, 72px) 0 clamp(32px, 5vw, 56px);
}

.home-perso > .container {
    max-width: 1360px;
    padding-left: clamp(12px, 2vw, 24px);
    padding-right: clamp(12px, 2vw, 24px);
}

.home-perso__head {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px 24px;
    margin-bottom: clamp(18px, 2.5vw, 26px);
}

.home-perso__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 6px;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--home-durazno-claro);
}

.home-perso__titulo {
    margin: 0 0 8px;
    font-family: "Fredoka", "Poppins", system-ui, sans-serif;
    font-size: clamp(1.7rem, 1.2rem + 1.8vw, 2.4rem);
    font-weight: 600;
    line-height: 1.1;
    color: var(--fiu-white);
}

.home-perso__sub {
    margin: 0;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    line-height: 1.5;
    color: rgba(255, 255, 255, .92);
}

.home-perso__todo {
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: var(--home-durazno-claro);
    text-decoration: none;
    transition: color .15s var(--fiu-ease-out);
}

.home-perso__todo span {
    display: inline-block;
    transition: transform .15s var(--fiu-ease-out);
}

.home-perso__todo:hover {
    color: var(--fiu-white);
    text-decoration: none;
}

.home-perso__todo:hover span {
    transform: translateX(4px);
}

/* Pestañas a la izquierda, flechas a la derecha, sobre la misma línea */
.home-perso__barra {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: clamp(14px, 2vw, 20px);
    border-bottom: 1px solid rgba(255, 255, 255, .22);
}

.home-perso__filtros {
    display: flex;
    gap: 4px 8px;
    min-width: 0;
    overflow-x: auto;
    scrollbar-width: none;
}

.home-perso__filtros::-webkit-scrollbar {
    display: none;
}

.home-perso__filtro {
    flex-shrink: 0;
    min-height: 44px;
    margin-bottom: -1px;
    padding: 0 14px;
    border: 0;
    border-bottom: 3px solid transparent;
    background: none;
    font-family: "Poppins", sans-serif;
    font-size: 13.5px;
    color: rgba(255, 255, 255, .9);
    cursor: pointer;
    transition: color .15s var(--fiu-ease-out),
                border-color .15s var(--fiu-ease-out);
}

.home-perso__filtro:hover {
    color: var(--fiu-white);
    border-bottom-color: rgba(243, 201, 166, .5);
}

.home-perso__filtro[aria-pressed="true"] {
    font-weight: 600;
    color: var(--fiu-white);
    border-bottom-color: var(--home-durazno);
}

.home-perso__flechas {
    display: flex;
    flex-shrink: 0;
    gap: 8px;
    padding-bottom: 8px;
}

.home-perso__flecha {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border: 0;
    border-radius: 50%;
    background: var(--fiu-white);
    color: var(--home-olivo);
    font-size: 14px;
    cursor: pointer;
    transition: background-color .15s var(--fiu-ease-out),
                color .15s var(--fiu-ease-out),
                transform .15s var(--fiu-ease-out),
                opacity .15s var(--fiu-ease-out);
}

.home-perso__flecha:hover:not(:disabled) {
    transform: translateY(-2px);
    background: var(--home-durazno-claro);
    color: var(--home-olivo-deep);
}

.home-perso__flecha:disabled {
    opacity: .4;
    cursor: default;
}

@media (max-width: 575.98px) {
    .home-perso__flechas {
        display: none;              /* en celular se desliza con el dedo */
    }
}

/* Track: 2 cards en móvil, 3 en tablet, 5 en escritorio */
.home-perso__track {
    position: relative;             /* home.js mide offsetLeft contra el carril */
    --perso-gap: 14px;
    --perso-visibles: 2;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - (var(--perso-visibles) - 1) * var(--perso-gap)) / var(--perso-visibles));
    gap: var(--perso-gap);
    padding: 10px 2px 14px;         /* aire para el lift de la card en hover */
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.home-perso__track::-webkit-scrollbar {
    display: none;
}

@media (min-width: 768px) {
    .home-perso__track {
        --perso-visibles: 3;
        --perso-gap: 16px;
    }
}

@media (min-width: 1200px) {
    .home-perso__track {
        --perso-visibles: 5;
    }
}

.home-perso__card {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border-radius: 14px;
    background: var(--fiu-sand);
    box-shadow: 0 6px 18px rgba(0, 0, 0, .14);
    scroll-snap-align: start;
    transition: transform .25s var(--fiu-ease-out),
                box-shadow .25s var(--fiu-ease-out);
}

.home-perso__card[hidden] {
    display: none;
}

.home-perso__card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 36px rgba(0, 0, 0, .24);
}
.home-perso__foto {
    display: block;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: #EFE6D4;            /* --fiu-canvas */
}

.home-perso__foto img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .45s var(--fiu-ease-out);
}

.home-perso__card:hover .home-perso__foto img {
    transform: scale(1.07);
}

.home-perso__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: flex-start;
    padding: 12px;
    font-family: "Poppins", sans-serif;
}

.home-perso__nombre {
    margin: 0 0 8px;
    font-family: "Poppins", sans-serif;
    font-size: 13.5px;
    font-weight: 500;
    line-height: 1.3;
}

.home-perso__nombre a {
    color: var(--fiu-ink);
    text-decoration: none;
}

.home-perso__nombre a:hover {
    color: var(--home-vino);
    text-decoration: none;
}

.home-perso__tag {
    margin-bottom: 14px;            /* respiro mínimo antes del botón */
    padding: 3px 9px;
    border-radius: var(--fiu-radius-pill);
    background: #FDE7E4;            /* --fiu-coral-light */
    font-size: 10.5px;
    font-weight: 600;
    color: var(--home-vino);
}

.home-perso__btn {
    display: flex;
    align-self: stretch;
    align-items: center;
    justify-content: center;
    gap: 4px;
    min-height: 44px;
    margin-top: auto;
    padding: 0 10px;
    border: 1.5px solid var(--home-calabaza-ink);
    border-radius: 10px;
    background: transparent;
    color: var(--home-calabaza-ink);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    text-decoration: none;
    transition: background-color .15s var(--fiu-ease-out),
                color .15s var(--fiu-ease-out);
}

.home-perso__btn span {
    transition: transform .15s var(--fiu-ease-out);
}

.home-perso__btn:hover {
    background: var(--home-calabaza-ink);
    color: var(--fiu-white);
    text-decoration: none;
}

.home-perso__btn:hover span {
    transform: translateX(3px);
}

.home-perso__filtro:focus-visible,
.home-perso__flecha:focus-visible,
.home-perso__todo:focus-visible,
.home-perso__nombre a:focus-visible,
.home-perso__btn:focus-visible {
    outline: 3px solid var(--home-durazno-claro);
    outline-offset: 2px;
}

.home-perso__dots {
    display: flex;
    justify-content: center;
    gap: 6px;
    margin-top: 12px;
}

.home-perso__dot {
    width: 6px;
    height: 6px;
    border-radius: var(--fiu-radius-pill);
    background: rgba(255, 255, 255, .35);
    transition: width .25s var(--fiu-ease-out),
                background-color .25s var(--fiu-ease-out);
}

.home-perso__dot.is-activo {
    width: 20px;
    background: var(--home-durazno);
}


/* ===== ASÍ TRABAJAMOS ===== */
.home-pasos {
    clear: both;
    display: flow-root;
    width: 100%;
    background: var(--fiu-sand);
    padding: clamp(40px, 6vw, 64px) 0;
}

.home-pasos > .container {
    max-width: 1360px;
    padding-left: clamp(12px, 2vw, 24px);
    padding-right: clamp(12px, 2vw, 24px);
}

.home-pasos__caja {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
    align-items: center;
    padding: clamp(22px, 3.5vw, 32px) clamp(20px, 3.5vw, 36px);
    border-radius: var(--fiu-radius-xl);
    background: #E8DCC6;            /* canvas un tono más hondo que el sand */
}

@media (min-width: 1200px) {
    .home-pasos__caja {
        grid-template-columns: minmax(220px, 1.1fr) 3.4fr auto;
        gap: 28px;
    }
}

.home-pasos__eyebrow {
    display: block;
    margin-bottom: 8px;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--home-calabaza-ink);
}

.home-pasos__titulo {
    margin: 0 0 6px;
    font-family: "Fredoka", "Poppins", system-ui, sans-serif;
    font-size: clamp(1.3rem, 1rem + 1vw, 1.6rem);
    font-weight: 600;
    line-height: 1.2;
    color: var(--home-vino);
}

.home-pasos__sub {
    margin: 0;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    line-height: 1.5;
    color: var(--fiu-slate, #475569);
}

.home-pasos__lista {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px 18px;
    margin: 0;
    padding: 0;
    list-style: none;
}

@media (min-width: 768px) {
    .home-pasos__lista {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

.home-pasos__num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    margin-bottom: 10px;
    border-radius: 50%;
    background: var(--home-vino);
    font-family: "Fredoka", "Poppins", system-ui, sans-serif;
    font-size: 15px;
    font-weight: 600;
    color: var(--fiu-white);
}

.home-pasos__paso-titulo {
    margin: 0 0 4px;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.3;
    color: var(--fiu-ink);
}

.home-pasos__paso-desc {
    margin: 0;
    font-family: "Poppins", sans-serif;
    font-size: 12.5px;
    line-height: 1.45;
    color: var(--fiu-slate, #475569);
}

.home-pasos__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 52px;
    padding: 10px 20px;
    border-radius: 12px;
    background: var(--home-calabaza-ink);
    box-shadow: 0 8px 20px rgba(169, 86, 27, .28);
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.3;
    color: var(--fiu-white);
    text-align: center;
    text-decoration: none;
    transition: background-color .15s var(--fiu-ease-out),
                transform .15s var(--fiu-ease-out),
                box-shadow .15s var(--fiu-ease-out);
}

.home-pasos__cta i {
    flex-shrink: 0;
    font-size: 20px;
}

@media (min-width: 1200px) {
    .home-pasos__cta {
        max-width: 220px;
    }
}

.home-pasos__cta:hover {
    transform: translateY(-2px);
    background: var(--home-vino);
    box-shadow: 0 12px 26px rgba(94, 30, 44, .3);
    color: var(--fiu-white);
    text-decoration: none;
}

.home-pasos__cta:active {
    transform: translateY(1px) scale(.985);
}

.home-pasos__cta:focus-visible {
    outline: 3px solid var(--home-vino);
    outline-offset: 3px;
}


/* ===== THE WEDDING TOTE CLUB ===== */
.home-wtc {
    clear: both;
    display: flow-root;
    width: 100%;
    background: var(--fiu-sand);
    padding: 0 0 clamp(40px, 6vw, 64px);
}

.home-wtc > .container {
    max-width: 1360px;
    padding-left: clamp(12px, 2vw, 24px);
    padding-right: clamp(12px, 2vw, 24px);
}

.home-wtc__card {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    overflow: hidden;
    border-radius: var(--fiu-radius-xl);
    background: #FDE7E4;            /* --fiu-coral-light */
    box-shadow: var(--fiu-shadow-sm);
}

@media (min-width: 768px) {
    .home-wtc__card {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr);
    }
}

.home-wtc__foto {
    display: block;
    aspect-ratio: 16 / 9;
    overflow: hidden;
}

@media (min-width: 768px) {
    .home-wtc__foto {
        aspect-ratio: auto;
        min-height: 300px;
    }
}

.home-wtc__foto img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform .45s var(--fiu-ease-out);
}

.home-wtc__card:hover .home-wtc__foto img {
    transform: scale(1.04);
}

.home-wtc__texto {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(24px, 4vw, 48px) clamp(20px, 4vw, 48px);
}

.home-wtc__tag {
    margin-bottom: 10px;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--home-vino);
}

.home-wtc__titulo {
    margin: 0 0 12px;
    font-family: "Fredoka", "Poppins", system-ui, sans-serif;
    font-size: clamp(1.8rem, 1.2rem + 2vw, 2.6rem);
    font-weight: 600;
    line-height: 1.1;
    color: var(--home-vino);
}

.home-wtc__desc {
    max-width: 36rem;
    margin: 0 0 22px;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    line-height: 1.65;
    color: var(--fiu-slate, #475569);
}

.home-wtc__btns {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 16px;
}

.home-wtc__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 46px;
    padding: 0 22px;
    border: 1.5px solid var(--home-vino);
    border-radius: var(--fiu-radius-pill);
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    text-decoration: none;
    transition: background-color .15s var(--fiu-ease-out),
                color .15s var(--fiu-ease-out),
                transform .15s var(--fiu-ease-out),
                box-shadow .15s var(--fiu-ease-out);
}

.home-wtc__btn--solido {
    background: var(--home-vino);
    color: var(--fiu-white);
}

.home-wtc__btn--solido:hover {
    background: var(--home-vino-deep);
    border-color: var(--home-vino-deep);
    color: var(--fiu-white);
}

.home-wtc__btn--linea {
    background: transparent;
    color: var(--home-vino);
}

.home-wtc__btn--linea:hover {
    background: var(--home-vino);
    color: var(--fiu-white);
}

.home-wtc__btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 22px rgba(94, 30, 44, .22);
    text-decoration: none;
}

.home-wtc__btn:active {
    transform: translateY(1px) scale(.985);
}

.home-wtc__btn:focus-visible,
.home-wtc__rating a:focus-visible {
    outline: 3px solid var(--home-calabaza);
    outline-offset: 3px;
}

@media (max-width: 479.98px) {
    .home-wtc__btn {
        flex: 1 1 100%;
    }
}

.home-wtc__rating {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px 8px;
    margin: 0;
    font-family: "Poppins", sans-serif;
    font-size: 12.5px;
    color: var(--fiu-slate, #475569);
}

.home-wtc__estrellas {
    display: inline-flex;
    gap: 1px;
    font-size: 12px;
    color: #B8862A;                 /* dorado profundo: se lee sobre el rosa */
}

.home-wtc__rating a {
    color: var(--home-vino);
    text-decoration: underline;
}

.home-wtc__rating a:hover {
    color: var(--home-vino-deep);
}


/* ===== COMPRA DIRECTA (carrito, debajo de Más Vendidos) ===== */
.home-carrito {
    clear: both;
    display: flow-root;
    width: 100%;
    background: var(--fiu-sand);
    padding: 0 0 clamp(40px, 6vw, 64px);
}

.home-carrito > .container {
    max-width: 1360px;
    padding-left: clamp(12px, 2vw, 24px);
    padding-right: clamp(12px, 2vw, 24px);
}

/* ===== COMPRA Y COTIZA =====
   Carrito compartido (cart-widget-tsg): todo va bajo .home-compra__carrito #lav-widget */
.home-compra {
    clear: both;
    display: flow-root;
    width: 100%;
    background: var(--fiu-sand);
    padding: 0;                     /* la cierra la banda olivo del cotizador */
}

.home-compra > .container {
    max-width: 1360px;
    padding-left: clamp(12px, 2vw, 24px);
    padding-right: clamp(12px, 2vw, 24px);
}

#elige-tu-paquete,
#cotiza-a-tu-medida {
    scroll-margin-top: 90px;
}













/* ---------- Chips de cada bloque ---------- */
.home-compra__chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 12px;
    border-radius: var(--fiu-radius-pill);
    font-family: "Poppins", sans-serif;
    font-size: 10.5px;
    font-weight: 600;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.home-compra__chip--1 {
    background: var(--home-durazno-claro);
    color: var(--home-vino-deep);
}

.home-compra__chip--2 {
    background: var(--fiu-sand);
    color: var(--home-olivo-deep);
}

/* ---------- 1 · Carrito ---------- */
.home-compra__carrito {
    position: relative;
    display: grid;
    grid-template-columns: clamp(84px, 24vw, 120px) minmax(0, 1fr);
    gap: 16px 18px;
    align-items: start;
    padding: clamp(18px, 2.5vw, 26px);
    border: 1.5px solid rgba(94, 30, 44, .45);
    border-radius: var(--fiu-radius-xl);
    background: #FFFCF8;
    box-shadow: var(--fiu-shadow-sm);
}

.home-compra__carrito #lav-widget,
.home-compra__carrito #lav-widget .hf-precio-card {
    display: contents;
}

/* Pastilla de oferta arriba y la foto cuadrada debajo */
.home-compra__foto {
    grid-column: 1;
    grid-row: 1;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.home-compra__foto picture {
    display: block;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    border-radius: 14px;
    background: var(--fiu-sand);
}

.home-compra__foto img {
    display: block;
    width: 100%;
    height: 100%;
}

.home-compra__foto img {
    object-fit: cover;
}

/* Título + pastilla grande de envío gratis en la misma línea */
.home-compra__titulo-fila {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 14px;
    margin: 10px 0 6px;
}

.home-compra__titulo-fila .home-compra__card-titulo {
    margin: 0;
}

.home-compra__envio {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 16px;
    border-radius: var(--fiu-radius-pill);
    background: var(--fiu-teal-darker);
    box-shadow: 0 6px 14px rgba(53, 94, 90, .25);
    font-family: "Poppins", sans-serif;
    font-size: clamp(13px, .7rem + .4vw, 16px);
    font-weight: 700;
    letter-spacing: .06em;
    line-height: 1.1;
    text-transform: uppercase;
    color: var(--fiu-white);
}

.home-compra__envio i {
    font-size: 1.1em;
}

/* Etiqueta de descuento (los precios del carrito ya lo traen aplicado) */
.home-compra__descuento {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 16px;
    border-radius: var(--fiu-radius-pill);
    background: var(--home-vino);
    box-shadow: 0 6px 14px rgba(94, 30, 44, .25);
    font-family: "Poppins", sans-serif;
    font-size: clamp(13px, .7rem + .4vw, 16px);
    font-weight: 700;
    letter-spacing: .06em;
    line-height: 1.1;
    text-transform: uppercase;
    color: var(--fiu-white);
}

.home-compra__info {
    grid-column: 2;
    grid-row: 1;
    min-width: 0;
}

.home-compra__card-titulo {
    margin: 10px 0 6px;
    font-family: "Fredoka", "Poppins", system-ui, sans-serif;
    font-size: clamp(1.35rem, 1.1rem + .8vw, 1.65rem);
    font-weight: 600;
    line-height: 1.15;
    color: var(--home-vino);
}

.home-compra__producto-nombre {
    margin: 0 0 6px;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 700;
    color: var(--fiu-ink);
}

.home-compra__producto-desc {
    margin: 0;
    font-family: "Poppins", sans-serif;
    font-size: 12.5px;
    line-height: 1.5;
    color: var(--fiu-slate, #475569);
}

/* Piezas del widget en la rejilla (móvil/tablet: todo a lo ancho) */
.home-compra__carrito #lav-widget .lav-pkg-grid,
.home-compra__carrito #lav-widget .new-pkg-row,
.home-compra__carrito #lav-widget .lav-pkg-footer,
.home-compra__carrito #lav-widget .lav-cart-feedback {
    grid-column: 1 / -1;
}

/* Celular/tablet: etiqueta a todo lo ancho arriba; foto y textos debajo */
@media (max-width: 991.98px) {
    .home-compra__carrito {
        row-gap: 8px;
    }

    .home-compra__info {
        display: contents;
    }

    .home-compra__chip--1 {
        margin-bottom: 8px;
    }

    .home-compra__foto {
        align-self: start;
    }

    .home-compra__carrito #lav-widget .lav-pkg-grid {
        margin-top: 12px;
    }

    .home-compra__chip--1 {
        grid-column: 1 / -1;
        grid-row: 1;
        justify-content: center;
        text-align: center;
    }

    .home-compra__foto {
        grid-row: 2 / span 3;
    }

    .home-compra__titulo-fila,
    .home-compra__producto-nombre,
    .home-compra__producto-desc {
        grid-column: 2;
        margin-top: 0;
        margin-bottom: 0;
    }

    .home-compra__titulo-fila {
        grid-row: 2;
    }

    .home-compra__producto-nombre {
        grid-row: 3;
    }

    .home-compra__producto-desc {
        grid-row: 4;
    }
}

/* Escritorio: foto | info + paquetes | cantidad + botón (con divisor) */
@media (min-width: 992px) {
    .home-compra__carrito {
        grid-template-columns: 170px minmax(0, 1fr) 250px;
        gap: 14px 28px;
    }

    .home-compra__carrito::after {
        content: "";
        position: absolute;
        top: 26px;
        bottom: 26px;
        right: calc(26px + 250px + 14px);
        width: 1px;
        background: rgba(94, 30, 44, .15);
    }

    .home-compra__foto {
        grid-row: 1 / 3;
        align-self: center;
    }

    .home-compra__carrito #lav-widget .lav-pkg-grid {
        grid-column: 2;
        grid-row: 2;
    }

    .home-compra__carrito #lav-widget .new-pkg-row {
        grid-column: 3;
        grid-row: 1;
        align-self: end;
    }

    .home-compra__carrito #lav-widget .lav-pkg-footer {
        grid-column: 3;
        grid-row: 2;
        align-self: start;
    }

    .home-compra__carrito #lav-widget .lav-cart-feedback {
        grid-column: 2 / 4;
        grid-row: 3;
    }
}

/* Paquetes: 4 tarjetas con radio arriba a la derecha */
.home-compra__carrito #lav-widget .lav-pkg-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px;
    margin: 0;
    padding: 0;
    overflow: visible;
}

@media (min-width: 576px) {
    .home-compra__carrito #lav-widget .lav-pkg-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
}

.home-compra__carrito #lav-widget .lav-pkg-btn {
    position: relative;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 4px !important;
    min-width: 0;
    min-height: 76px;
    padding: 12px 14px !important;
    border: 1.5px solid rgba(94, 30, 44, .14);
    border-radius: 12px;
    background: var(--fiu-white);
    text-align: left;
    cursor: pointer;
    transition: border-color .15s var(--fiu-ease-out),
                background-color .15s var(--fiu-ease-out),
                transform .15s var(--fiu-ease-out);
}

/* El "radio" es un pseudo-elemento: el botón sigue siendo el control */
.home-compra__carrito #lav-widget .lav-pkg-btn::before {
    content: "";
    position: absolute;
    top: 14px;
    right: 14px;
    width: 14px;
    height: 14px;
    border: 1.5px solid var(--fiu-faint, #94A3B8);
    border-radius: 50%;
    background: var(--fiu-white);
}

.home-compra__carrito #lav-widget .lav-pkg-btn:hover {
    border-color: rgba(94, 30, 44, .45);
    transform: translateY(-2px);
}

.home-compra__carrito #lav-widget .lav-pkg-btn.active {
    border-color: var(--home-calabaza-ink);
    background: var(--home-durazno-claro);
}

.home-compra__carrito #lav-widget .lav-pkg-btn.active::before {
    border-color: var(--home-vino);
    background: var(--home-vino);
    box-shadow: inset 0 0 0 3px var(--fiu-white);
}

.home-compra__carrito #lav-widget .lav-pkg-btn:focus-visible {
    outline: 3px solid var(--home-calabaza);
    outline-offset: 2px;
}

.home-compra__carrito #lav-widget .lav-pkg-qty {
    order: 1;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 700;
    color: var(--fiu-ink);
}

.home-compra__carrito #lav-widget .lav-pkg-total {
    order: 2;
    margin: 0;
    font-family: "Poppins", sans-serif;
    font-size: clamp(15px, 1.4vw, 18px);
    font-weight: 700;
    color: var(--fiu-ink);
}

.home-compra__carrito #lav-widget .lav-pkg-popular-ribbon {
    position: static;
    order: 3;
    padding: 2px 8px;
    border-radius: var(--fiu-radius-pill);
    background: var(--home-salvia);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0;
    text-transform: none;
    color: var(--home-olivo-deep);
    transform: none;
}

/* Precio por pieza bajo el total del paquete */
/* El widget pone su propio "Elige Tu Paquete" aunque llegue title => null; el home ya tiene título */
.home-compra__carrito #lav-widget .hf-precio-card > h2,
.home-compra__carrito #lav-widget .lav-title-row {
    display: none;
}

.home-compra__carrito #lav-widget .lav-pkg-perpiece {
    order: 2;
    display: flex;
    align-items: baseline;
    gap: 4px;
    margin: 0;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    line-height: 1.2;
    color: var(--fiu-muted);
}

.home-compra__carrito #lav-widget .lav-pkg-precio {
    font-size: 12px;
    font-weight: 600;
    color: var(--home-vino);
}

.home-compra__carrito #lav-widget .lav-pkg-unit {
    font-size: 11px;
    color: var(--fiu-muted);
}

.home-compra__carrito #lav-widget .lav-pkg-check,
.home-compra__carrito #lav-widget .lav-pkg-total-original,
.home-compra__carrito #lav-widget .lav-pkg-ahorro,
.home-compra__carrito #lav-widget .lav-precio-ref,
.home-compra__carrito #lav-widget .lav-subtitulo-paquete,
.home-compra__carrito #lav-widget .lav-tabla-mini,
.home-compra__carrito #lav-widget .lav-shopify-wa-btn {
    display: none !important;
}

/* Cantidad arriba, botón abajo, ambos a todo lo ancho de su columna */
.home-compra__carrito #lav-widget .new-pkg-row {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    margin: 0;
}

.home-compra__carrito #lav-widget .new-pkg-stepper {
    flex-direction: column;
    align-items: stretch;
    gap: 6px;
}

.home-compra__carrito #lav-widget .new-pkg-stepper-label {
    font-family: "Poppins", sans-serif;
    font-size: 12.5px;
    color: var(--fiu-slate, #475569);
}

.home-compra__carrito #lav-widget .new-pkg-stepper-controls {
    display: flex;
    border: 1px solid rgba(94, 30, 44, .2);
    border-radius: 10px;
    background: var(--fiu-white);
}

.home-compra__carrito #lav-widget .new-pkg-stepper-btn {
    width: 48px;
    height: 44px;
    background: var(--fiu-white);
    color: var(--home-vino);
}

.home-compra__carrito #lav-widget .new-pkg-stepper-input {
    flex: 1;
    min-width: 0;                   /* sin esto el número no se encoge y tapa el + */
    width: auto !important;
    height: 44px;
    border-color: transparent;
    background: var(--fiu-white);
}

/* Celular: cantidad compacta (− número +), sin estirarse a todo lo ancho */
@media (max-width: 991.98px) {
    .home-compra__carrito #lav-widget .new-pkg-stepper-controls {
        align-self: flex-start;
    }

    .home-compra__carrito #lav-widget .new-pkg-stepper-input {
        flex: 0 0 120px;
        width: 120px !important;
    }
}

.home-compra__carrito #lav-widget .lav-shopify-add-btn {
    min-height: 48px;
    padding: 0 16px;
    border: 0;
    border-radius: 10px;
    background: var(--home-vino);
    font-size: 12.5px;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--fiu-white);
    transition: background-color .15s var(--fiu-ease-out),
                transform .15s var(--fiu-ease-out);
}

.home-compra__carrito #lav-widget .lav-shopify-add-btn:hover:not(:disabled) {
    background: var(--home-vino-deep);
    transform: translateY(-1px);
}

.home-compra__carrito #lav-widget .lav-shopify-add-btn:focus-visible {
    outline: 3px solid var(--home-calabaza);
    outline-offset: 2px;
}

/* Contador de la promo (home.js lo llena y lo oculta al terminar) */
.home-compra__contador {
    grid-column: 1 / -1;
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 10px 12px;
    border-radius: 12px;
    background: var(--home-durazno-claro);
}

.home-compra__contador[hidden] {
    display: none;
}

/* Pastilla arriba de la foto de la bolsa */
.home-compra__oferta {
    justify-content: center;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 3px 10px;
    border-radius: var(--fiu-radius-pill);
    background: var(--home-vino);
    font-family: "Poppins", sans-serif;
    font-size: 9.5px;
    font-weight: 700;
    letter-spacing: .04em;
    line-height: 1.2;
    text-align: center;
    text-transform: uppercase;
    color: var(--fiu-white);
    box-shadow: 0 4px 10px rgba(94, 30, 44, .25);
}

.home-compra__oferta i {
    color: var(--home-durazno);
}

.home-compra__contador-label {
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 600;
    color: var(--home-vino);
}

.home-compra__contador-label i {
    margin-right: 4px;
    color: var(--home-calabaza-ink);
}

.home-compra__contador-cajas {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 6px;
}

.home-compra__contador-cajas span {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 5px 2px;
    border-radius: 8px;
    background: var(--fiu-white);
    font-family: "Poppins", sans-serif;
    font-size: 10.5px;
    line-height: 1.2;
    color: var(--fiu-muted);
}

.home-compra__contador-cajas strong {
    font-size: 17px;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    color: var(--home-vino);
}

/* Escritorio: columna derecha, debajo de "En stock · Envío gratis" */
@media (min-width: 992px) {
    .home-compra__contador {
        grid-column: 3;
        grid-row: 2;
        align-self: end;
    }
}

/* Total en vivo (lo agrega home.js): precio arriba, texto abajo */
.home-compra__carrito #lav-widget .lav-shopify-add-btn {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    column-gap: 6px;
    row-gap: 2px;
    min-height: 56px;
    padding: 8px 16px;
}

.home-compra__carrito #lav-widget .lav-shopify-add-btn svg {
    width: 16px;
    height: 16px;
}

.home-compra__carrito #lav-widget .home-compra__total {
    order: -1;
    flex: 0 0 100%;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: 0;
    text-transform: none;
    text-align: center;
    white-space: nowrap;
}

/* Pie: "En stock · Envío calculado al finalizar tu compra" */
.home-compra__carrito #lav-widget .lav-pkg-footer {
    justify-content: center;
    gap: 4px;
    margin: 0;
    text-align: center;
}

.home-compra__carrito #lav-widget .lav-pkg-stock,
.home-compra__carrito #lav-widget .lav-pkg-shipping {
    margin: 0;
    font-size: 11.5px;
    font-weight: 400;
    color: var(--fiu-muted);
}

.home-compra__carrito #lav-widget .lav-pkg-stock i {
    display: none;
}

.home-compra__carrito #lav-widget .lav-pkg-shipping::before {
    content: "·";
    margin-right: 4px;
}

/* La loneta lleva envío gratis: se resalta como en el resto del home */
.home-compra__carrito #lav-widget .lav-pkg-shipping {
    font-weight: 600;
    color: var(--fiu-teal-darker);
}

/* ---------- Separador ---------- */
.home-compra__separador {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: clamp(20px, 3vw, 28px) 0;
    font-family: "Poppins", sans-serif;
    font-size: 12.5px;
    color: var(--fiu-slate, #475569);
    text-align: center;
}

.home-compra__separador::before,
.home-compra__separador::after {
    content: "";
    flex: 1;
    height: 1px;
    background: rgba(94, 30, 44, .15);
}

/* ---------- Cotizador: estructura de mini-configurador-bolsas.css; aquí solo colores ---------- */
.home-compra__cot {
    position: relative;
    overflow: hidden;
    padding: clamp(40px, 6vw, 72px) 0;
    background: var(--home-olivo);
    font-family: "Poppins", sans-serif;
}

.home-compra__cot > .container {
    max-width: 1360px;
    padding-left: clamp(12px, 2vw, 24px);
    padding-right: clamp(12px, 2vw, 24px);
}

/* El título vive dentro de la columna derecha: va primero y un poco más
   chico que en la versión original, donde ocupaba todo el ancho. */
.home-compra__cot .mcb-col-form .mcb-hero-copy {
    order: -1;
    margin: 0;
}

.home-compra__cot .mcb-hero-copy .mcb-badge {
    margin-bottom: 12px;
    color: var(--home-durazno-claro);
}

.home-compra__cot .mcb-col-form .mcb-titulo {
    max-width: none;
    font-size: clamp(26px, 1.4rem + 1.2vw, 34px);
}

.home-compra__cot .mcb-hero-copy .mcb-titulo {
    color: var(--fiu-white);
}

.home-compra__cot .mcb-hero-copy .mcb-titulo span {
    color: var(--home-durazno);
}

.home-compra__cot .mcb-nota {
    color: rgba(255, 255, 255, .88);
}

.home-compra__cot .mcb-nota::before {
    background: var(--fiu-sand);
    color: var(--home-olivo-deep);
}

.home-compra__cot .mcb-col-form {
    background: rgba(0, 0, 0, .14);
    border-color: rgba(255, 255, 255, .18);
}

.home-compra__cot .mcb-label,
.home-compra__cot .mcb-num,
.home-compra__cot .mcb-label-color {
    color: rgba(255, 255, 255, .9);
}

.home-compra__cot .mcb-label-color span {
    color: var(--home-durazno);
}

.home-compra__cot .mcb-tela-card {
    background: rgba(255, 255, 255, .06);
    border-color: rgba(255, 255, 255, .3);
}

.home-compra__cot .mcb-tela-card:hover {
    background: rgba(255, 255, 255, .1);
    border-color: var(--fiu-white);
}

.home-compra__cot .mcb-tela-card.active {
    background: var(--home-vino);
    border-color: rgba(255, 255, 255, .6);
}

.home-compra__cot .mcb-tela-desc {
    color: rgba(255, 255, 255, .78);
}

.home-compra__cot .mcb-color-dot.active {
    border-color: var(--home-durazno);
    box-shadow: 0 0 0 2px rgba(243, 201, 166, .45);
}

.home-compra__cot .mcb-stepper {
    background: rgba(255, 255, 255, .06);
    border-color: rgba(255, 255, 255, .3);
}

.home-compra__cot .mcb-btn-wa {
    background: var(--fiu-sand);
    color: var(--home-vino) !important;
}

.home-compra__cot .mcb-btn-wa:hover {
    background: var(--fiu-white);
    box-shadow: 0 12px 26px rgba(0, 0, 0, .22);
    color: var(--home-vino) !important;
}

.home-compra__cot .mcb-tela-card:focus-visible,
.home-compra__cot .mcb-color-dot:focus-visible,
.home-compra__cot .mcb-btn-step:focus-visible,
.home-compra__cot .mcb-btn-wa:focus-visible {
    outline: 3px solid var(--home-durazno);
    outline-offset: 2px;
}

/* Móvil: la hoja original limita el form a 100vw - 80px; aquí ocupa todo el ancho */
@media (max-width: 899px) {
    .home-compra__cot .mcb-wrapper,
    .home-compra__cot .mcb-col-img,
    .home-compra__cot .mcb-col-img picture,
    .home-compra__cot .mcb-col-form {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }

    /* El contador de piezas conserva su ancho compacto (la hoja original lo estira en ≤480px) */
    .home-compra__cot .mcb-stepper {
        grid-template-columns: 46px 104px 46px;
        width: fit-content;
    }
}


/* ===== NUESTROS CLIENTES (viste include.comentarios y clients solo aquí) ===== */
.home-clientes {
    clear: both;
    display: flow-root;
    width: 100%;
    background: var(--fiu-white);  /* distinto a Productos (arriba) y Usos (abajo) */
    padding: clamp(40px, 6vw, 64px) 0 clamp(24px, 4vw, 40px);
}

.home-clientes > .container,
.home-clientes .reviews-section > .container {
    max-width: 1360px;
    padding-left: clamp(12px, 2vw, 24px);
    padding-right: clamp(12px, 2vw, 24px);
}

/* style.css apila las .section con float; aquí van en flujo normal */
.home-clientes .section {
    float: none;
    width: 100%;
}

.home-clientes .reviews-section {
    padding: 0;
    background: transparent;
}

/* Resumen a la izquierda, carrusel de 2 reseñas a la derecha */
.home-clientes .reviews-split {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
    align-items: center;
}

@media (min-width: 992px) {
    .home-clientes .reviews-split {
        grid-template-columns: minmax(260px, .9fr) 2fr;
        gap: 40px;
    }
}

.home-clientes .reviews-carousel {
    min-width: 0;                   /* deja que Swiper mida bien dentro del grid */
}

.home-clientes .reviews-summary .reviews-eyebrow {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 8px;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .12em;
    color: var(--home-calabaza-ink);
}

.home-clientes .reviews-summary .reviews-eyebrow span {
    color: var(--home-calabaza);
}

.home-clientes .reviews-summary .reviews-titulo {
    margin: 0 0 10px;
    font-family: "Fredoka", "Poppins", system-ui, sans-serif;
    font-size: clamp(1.7rem, 1.2rem + 1.8vw, 2.4rem);
    font-weight: 600;
    line-height: 1.1;
    color: var(--home-vino);
}

.home-clientes .reviews-score {
    display: flex;
    align-items: flex-end;
    gap: 12px;
    margin-bottom: 12px;
}

.home-clientes .reviews-score-num {
    font-family: "Fredoka", "Poppins", system-ui, sans-serif;
    font-size: clamp(3.2rem, 2.4rem + 3vw, 4.4rem);
    font-weight: 600;
    line-height: .9;
    color: var(--home-vino);
}

.home-clientes .reviews-score-meta {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding-bottom: 4px;
}

.home-clientes .reviews-score-meta .review-stars {
    font-size: 18px;
    letter-spacing: 2px;
    color: #B8862A;                 /* dorado profundo, legible sobre arena */
}

.home-clientes .reviews-score-count {
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    color: var(--fiu-muted);
}

.home-clientes .reviews-summary .reviews-sub {
    margin: 0;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    line-height: 1.55;
    color: var(--fiu-slate, #475569);
}

/* Tarjetas de reseña */
.home-clientes .review-card {
    gap: 12px;
    padding: 20px;
    border: 1px solid rgba(94, 30, 44, .1);
    border-radius: 16px;
    background: var(--fiu-sand);
    box-shadow: var(--fiu-shadow-sm);
}

.home-clientes .review-card .review-stars {
    font-size: 14px;
    color: #B8862A;
}

.home-clientes .review-date {
    font-size: 12px;
    color: var(--fiu-muted);
}

.home-clientes .review-text {
    font-family: "Poppins", sans-serif;
    font-size: 13.5px;
    line-height: 1.6;
    color: var(--fiu-ink);
}

.home-clientes .review-avatar {
    width: 34px;
    height: 34px;
    background: var(--home-durazno-claro) !important;   /* el partial lo pinta inline */
    font-size: 14px;
    color: var(--home-vino);
}

.home-clientes .review-author strong {
    font-size: 13px;
    color: var(--fiu-ink);
}

.home-clientes .reviews-pagination .swiper-pagination-bullet {
    background: rgba(94, 30, 44, .3);
    opacity: 1;
}

.home-clientes .reviews-pagination .swiper-pagination-bullet-active {
    background: var(--home-vino);
}


/* ===== VOLUMEN (+500 piezas) ===== */
/* Mismo fondo que Bolsas Ecológicas de Tela, que va justo abajo */
.home-volumen-sec {
    clear: both;
    display: flow-root;
    width: 100%;
    background: #E8DCC6;
    padding: clamp(32px, 5vw, 48px) 0 0;
}

.home-volumen-sec > .container {
    max-width: 1360px;
    padding-left: clamp(12px, 2vw, 24px);
    padding-right: clamp(12px, 2vw, 24px);
}

.home-volumen {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px 32px;
    padding: clamp(24px, 3.5vw, 40px) clamp(20px, 4vw, 48px);
    overflow: hidden;
    border-radius: var(--fiu-radius-xl);
    background: var(--home-olivo-deep);
    box-shadow: var(--fiu-shadow-lg);
}

/* Hoja decorativa de fondo, sin animación */
.home-volumen::after {
    content: "\f06c";
    position: absolute;
    right: -30px;
    bottom: -60px;
    font-family: "Font Awesome 5 Pro", "Font Awesome 5 Free";
    font-size: 220px;
    font-weight: 900;
    line-height: 1;
    color: var(--home-durazno);
    opacity: .07;
    transform: rotate(-20deg);
    pointer-events: none;
}

.home-volumen__icono {
    flex: 0 0 auto;
    width: 64px;
    height: 64px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--home-durazno);
    font-size: 26px;
    color: var(--home-vino);
}

.home-volumen__texto {
    position: relative;
    z-index: 1;
    flex: 1 1 420px;
    min-width: 0;
}

.home-volumen__eyebrow {
    display: block;
    margin-bottom: 6px;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--home-durazno);
}

.home-volumen__titulo {
    margin: 0 0 6px;
    font-family: "Fredoka", "Poppins", system-ui, sans-serif;
    font-size: clamp(1.45rem, 1.1rem + 1.2vw, 2rem);
    font-weight: 600;
    line-height: 1.15;
    color: var(--fiu-white);
}

.home-volumen__desc {
    max-width: 580px;
    margin: 0 0 14px;
    font-family: "Poppins", sans-serif;
    font-size: 14.5px;
    line-height: 1.55;
    color: rgba(255, 255, 255, .85);
}

.home-volumen__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.home-volumen__chips li {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 12px;
    border: 1px solid rgba(243, 201, 166, .35);
    border-radius: var(--fiu-radius-pill);
    background: rgba(255, 255, 255, .06);
    font-family: "Poppins", sans-serif;
    font-size: 12.5px;
    color: var(--fiu-white);
}

.home-volumen__chips i {
    color: var(--home-durazno);
}

.home-volumen__btn {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 48px;
    padding: 12px 28px;
    border-radius: var(--fiu-radius-pill);
    background: var(--home-durazno);
    font-family: "Poppins", sans-serif;
    font-size: 15px;
    font-weight: 600;
    color: var(--home-vino);
    text-decoration: none;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .18);
    transition: background-color .2s var(--fiu-ease-out),
                transform .2s var(--fiu-ease-out),
                box-shadow .2s var(--fiu-ease-out);
}

.home-volumen__btn:hover {
    background: var(--fiu-white);
    color: var(--home-vino);
    text-decoration: none;
    transform: translateY(-3px);
    box-shadow: 0 12px 26px rgba(0, 0, 0, .25);
}

.home-volumen__btn:focus-visible {
    outline: 3px solid var(--home-durazno);
    outline-offset: 3px;
}

@media (max-width: 767.98px) {
    .home-volumen__icono {
        width: 52px;
        height: 52px;
        font-size: 21px;
    }

    .home-volumen__btn {
        width: 100%;
        justify-content: center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .home-volumen__btn { transition: none; }
}


/* ===== USOS DE LAS BOLSAS ECOLÓGICAS ===== */
.home-usos-eco {
    clear: both;
    display: flow-root;
    width: 100%;
    background: #E8DCC6;            /* canvas un tono más hondo que el sand */
    padding: clamp(32px, 5vw, 48px) 0;
}

.home-usos-eco > .container {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
    align-items: center;
    max-width: 1360px;
    padding-left: clamp(12px, 2vw, 24px);
    padding-right: clamp(12px, 2vw, 24px);
}

@media (min-width: 1200px) {
    .home-usos-eco > .container {
        grid-template-columns: minmax(260px, .95fr) 2.1fr;
        gap: 36px;
    }
}

.home-usos-eco__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--home-calabaza-ink);
}

.home-usos-eco__eyebrow i {
    color: var(--home-calabaza);
}

.home-usos-eco__titulo {
    margin: 0 0 10px;
    font-family: "Fredoka", "Poppins", system-ui, sans-serif;
    font-size: clamp(1.6rem, 1.2rem + 1.4vw, 2.1rem);
    font-weight: 600;
    line-height: 1.15;
    color: var(--home-vino);
}

.home-usos-eco__desc {
    margin: 0;
    font-family: "Poppins", sans-serif;
    font-size: 13.5px;
    line-height: 1.6;
    color: var(--fiu-slate, #475569);
}

.home-usos-eco__desc strong {
    color: var(--home-vino);
}

.home-usos-eco__lista {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

@media (min-width: 576px) {
    .home-usos-eco__lista {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (min-width: 992px) {
    .home-usos-eco__lista {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }
}

.home-usos-eco__lista > li {
    display: flex;
}

.home-usos-eco__item {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 120px;
    padding: 18px 12px;
    border-radius: 16px;
    background: var(--fiu-sand);
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.3;
    text-align: center;
    color: var(--fiu-ink);
    text-decoration: none;
    transition: transform .25s var(--fiu-ease-out),
                box-shadow .25s var(--fiu-ease-out);
}

.home-usos-eco__icono {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: var(--home-vino);
    font-size: 16px;
    color: var(--fiu-white);
    transition: background-color .15s var(--fiu-ease-out);
}

a.home-usos-eco__item:hover {
    transform: translateY(-6px);
    box-shadow: var(--fiu-shadow-lg);
    color: var(--home-vino);
    text-decoration: none;
}

a.home-usos-eco__item:hover .home-usos-eco__icono {
    background: var(--home-calabaza-ink);
}

a.home-usos-eco__item:focus-visible {
    outline: 3px solid var(--home-calabaza);
    outline-offset: 3px;
}


/* ===== POPULAR EN REDES SOCIALES (viste include.popular-redes) ===== */
.home-redes {
    clear: both;
    display: flow-root;
    width: 100%;
    background: #E8DCC6;            /* mismo canvas que Usos */
}

.home-redes .prs2-section {
    float: none;
    width: 100%;
    padding: 0 0 clamp(36px, 5vw, 56px);
    background: transparent;
}

.home-redes .prs2-section > .container {
    max-width: 1360px;
    padding-left: clamp(12px, 2vw, 24px);
    padding-right: clamp(12px, 2vw, 24px);
}

/* Encabezado: @FIUBAGS + título a la izquierda, "Etiquétanos…" a la derecha */
.home-redes .prs2-header {
    align-items: flex-end;
    margin-bottom: clamp(16px, 2.5vw, 22px);
}

.home-redes .prs2-header-left {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
    gap: 4px 24px;
}

.home-redes .prs2-badge {
    flex-basis: 100%;
    margin: 0 0 4px;
    font-size: 11px;
    letter-spacing: .12em;
    color: var(--home-calabaza-ink);
}

.home-redes .prs2-badge::before {
    content: "\f06c";               /* fa-leaf */
    margin-right: 8px;
    font-family: "Font Awesome 5 Pro";
    font-weight: 900;
    color: var(--home-calabaza);
}

.home-redes .prs2-title {
    margin: 0;
    font-size: clamp(1.5rem, 1.1rem + 1.4vw, 2rem);
    font-weight: 600;
    color: var(--home-vino);
}

.home-redes .prs2-title span {
    color: var(--home-vino);
}

.home-redes .prs2-subtitle {
    font-size: 13px;
    color: var(--fiu-slate, #475569);
}

.home-redes .prs2-subtitle strong {
    color: var(--home-vino);
}

/* Sin flechas: se mueve solo y con swipe, con los puntos abajo */
.home-redes .prs2-header .prs2-nav {
    display: none;
}

/* Tarjetas: nombre siempre visible abajo a la izquierda */
.home-redes .prs2-img-wrap {
    border-radius: 14px;
}

.home-redes .prs2-overlay {
    inset: auto 0 0 0;
    align-items: flex-start;
    justify-content: flex-end;
    padding: 36px 12px 12px;
    background: linear-gradient(to top, rgba(0, 0, 0, .62) 0%, rgba(0, 0, 0, .28) 60%, transparent 100%);
    opacity: 1;
}

.home-redes .prs2-ig-icon {
    display: none;
}

.home-redes .prs2-overlay p {
    padding: 0;
    font-size: 12.5px;
    font-weight: 500;
    text-align: left;
}

.home-redes .prs2-card:hover .prs2-overlay {
    background: linear-gradient(to top, rgba(94, 30, 44, .82) 0%, rgba(94, 30, 44, .35) 65%, transparent 100%);
}

.home-redes .prs2-card:focus-visible {
    outline: 3px solid var(--home-calabaza);
    outline-offset: 3px;
}

.home-redes .prs2-bottom {
    margin-top: 16px;
}

.home-redes .cpr-dots li button {
    background: var(--home-vino);
}


/* Banner fiubags.com (wholesale): mismo fondo que Conoce más, que va
   justo debajo, para que se lean como una sola banda. */
.home-banner {
    background: var(--fiu-sand);
}

.home-banner > .container {
    margin-top: 0 !important;
    padding-top: clamp(40px, 6vw, 64px);
}

/* ===== CONOCE MÁS ===== */
.home-conoce {
    clear: both;
    display: flow-root;
    width: 100%;
    background: var(--fiu-sand);
    padding: clamp(40px, 6vw, 64px) 0;
}

.home-conoce > .container {
    max-width: 1360px;
    padding-left: clamp(12px, 2vw, 24px);
    padding-right: clamp(12px, 2vw, 24px);
}

.home-conoce__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--home-calabaza-ink);
}

.home-conoce__eyebrow i {
    color: var(--home-calabaza);
}

.home-conoce__titulo {
    margin: 0 0 clamp(24px, 3.5vw, 36px);
    font-family: "Fredoka", "Poppins", system-ui, sans-serif;
    font-size: clamp(1.6rem, 1.2rem + 1.4vw, 2.2rem);
    font-weight: 600;
    line-height: 1.15;
    color: var(--home-vino);
}

.home-conoce__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
}

@media (min-width: 768px) {
    .home-conoce__grid {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 32px clamp(32px, 5vw, 64px);
    }
}

.home-conoce__item-eyebrow {
    margin: 0 0 8px;
    font-family: "Poppins", sans-serif;
    font-size: 10.5px;
    font-weight: 600;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--home-calabaza-ink);
}

.home-conoce__item-titulo {
    margin: 0 0 10px;
    font-family: "Poppins", sans-serif;
    font-size: clamp(15px, .8rem + .4vw, 17px);
    font-weight: 600;
    line-height: 1.4;
    color: var(--home-vino);
}

.home-conoce__item-titulo a {
    color: inherit;
    text-decoration: none;
}

.home-conoce__item-titulo a:hover {
    color: var(--home-calabaza-ink);
    text-decoration: underline;
}

.home-conoce__item-desc {
    margin: 0;
    font-family: "Poppins", sans-serif;
    font-size: 13.5px;
    line-height: 1.7;
    color: var(--fiu-slate, #475569);
}

.home-conoce__item-desc strong {
    color: var(--fiu-ink);
}

.home-conoce__item-desc a {
    color: inherit;
    text-decoration: none;
}

.home-conoce__item-desc a:hover strong,
.home-conoce__item-desc a:hover {
    color: var(--home-calabaza-ink);
    text-decoration: underline;
}

.home-conoce__link {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-top: 10px;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 500;
    color: var(--home-calabaza-ink);
    text-decoration: none;
}

.home-conoce__link span {
    transition: transform .15s var(--fiu-ease-out);
}

.home-conoce__link:hover {
    color: var(--home-vino);
    text-decoration: none;
}

.home-conoce__link:hover span {
    transform: translateX(3px);
}

.home-conoce a:focus-visible {
    outline: 3px solid var(--home-calabaza);
    outline-offset: 2px;
    border-radius: 2px;
}


/* ===== NUESTROS PRODUCTOS ===== */
.home-productos {
    clear: both;
    display: flow-root;
    width: 100%;
    background: var(--fiu-sand);
    padding: clamp(40px, 6vw, 64px) 0;
    scroll-margin-top: 80px;
}

.home-productos > .container {
    max-width: 1360px;
    padding-left: clamp(12px, 2vw, 24px);
    padding-right: clamp(12px, 2vw, 24px);
}

.home-productos__head {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px 24px;
    margin-bottom: clamp(18px, 2.5vw, 28px);
}

.home-productos__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 6px;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--home-calabaza-ink);
}

.home-productos__eyebrow i {
    color: var(--home-calabaza);
}

.home-productos__titulo {
    margin: 0 0 6px;
    font-family: "Fredoka", "Poppins", system-ui, sans-serif;
    font-size: clamp(1.7rem, 1.2rem + 1.8vw, 2.4rem);
    font-weight: 600;
    line-height: 1.1;
    color: var(--home-vino);
}

.home-productos__sub {
    margin: 0;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    line-height: 1.5;
    color: var(--fiu-slate, #475569);
}

.home-productos__filtros {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.home-productos__filtro {
    min-height: 44px;
    padding: 0 18px;
    border: 1px solid rgba(94, 30, 44, .22);
    border-radius: var(--fiu-radius-pill);
    background: var(--fiu-white);
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    color: var(--fiu-ink);
    cursor: pointer;
    transition: background-color .15s var(--fiu-ease-out),
                border-color .15s var(--fiu-ease-out),
                color .15s var(--fiu-ease-out);
}

.home-productos__filtro:hover {
    border-color: var(--home-vino);
    color: var(--home-vino);
}

.home-productos__filtro[aria-pressed="true"] {
    border-color: var(--home-vino);
    background: var(--home-vino);
    color: var(--fiu-white);
}

/* Rejilla: 2 · 3 · 4 · 5 columnas */
.home-productos__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

@media (min-width: 768px) {
    .home-productos__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 16px;
    }
}

@media (min-width: 992px) {
    .home-productos__grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (min-width: 1200px) {
    .home-productos__grid {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }
}

/* Recortada: 10 productos (dos filas de 5 en escritorio) */
.home-productos__grid.is-recortado > .home-productos__card:nth-child(n + 11) {
    display: none;
}

/* Celular: solo los primeros 6 (tres filas de 2) */
@media (max-width: 767.98px) {
    .home-productos__grid.is-recortado > .home-productos__card:nth-child(n + 7) {
        display: none;
    }
}

.home-productos__card {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid rgba(94, 30, 44, .1);
    border-radius: 14px;
    background: var(--fiu-white);
    box-shadow: var(--fiu-shadow-sm);
    transition: transform .25s var(--fiu-ease-out),
                box-shadow .25s var(--fiu-ease-out),
                border-color .25s var(--fiu-ease-out);
}

.home-productos__card[hidden] {
    display: none;
}

.home-productos__card:hover {
    transform: translateY(-6px);
    border-color: var(--home-durazno);
    box-shadow: var(--fiu-shadow-lg);
}

.home-productos__foto {
    display: block;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: var(--fiu-sand);
}

.home-productos__foto img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .45s var(--fiu-ease-out);
}

.home-productos__card:hover .home-productos__foto img {
    transform: scale(1.07);
}

.home-productos__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 12px;
}

.home-productos__nombre {
    margin: 0 0 12px;
    font-family: "Poppins", sans-serif;
    font-size: 13.5px;
    font-weight: 500;
    line-height: 1.3;
}

.home-productos__nombre a {
    color: var(--fiu-ink);
    text-decoration: none;
}

.home-productos__nombre a:hover {
    color: var(--home-vino);
    text-decoration: none;
}

.home-productos__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    min-height: 44px;
    margin-top: auto;
    border-radius: 10px;
    background: var(--home-olivo);
    font-family: "Poppins", sans-serif;
    font-size: 12.5px;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--fiu-white);
    text-decoration: none;
    transition: background-color .15s var(--fiu-ease-out);
}

.home-productos__btn:hover {
    background: var(--home-olivo-deep);
    color: var(--fiu-white);
    text-decoration: none;
}

.home-productos__pie {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 12px 24px;
    margin-top: clamp(20px, 3vw, 28px);
}

.home-productos__mas {
    min-height: 48px;
    padding: 0 28px;
    border: 1.5px solid var(--home-vino);
    border-radius: var(--fiu-radius-pill);
    background: transparent;
    font-family: "Poppins", sans-serif;
    font-size: 12.5px;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--home-vino);
    cursor: pointer;
    transition: background-color .15s var(--fiu-ease-out),
                color .15s var(--fiu-ease-out);
}

.home-productos__mas:hover {
    background: var(--home-vino);
    color: var(--fiu-white);
}

.home-productos__todo {
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: var(--home-olivo);
    text-decoration: none;
}

.home-productos__todo span {
    display: inline-block;
    transition: transform .15s var(--fiu-ease-out);
}

.home-productos__todo:hover {
    color: var(--home-vino);
    text-decoration: none;
}

.home-productos__todo:hover span {
    transform: translateX(4px);
}

.home-productos__filtro:focus-visible,
.home-productos__nombre a:focus-visible,
.home-productos__btn:focus-visible,
.home-productos__mas:focus-visible,
.home-productos__todo:focus-visible {
    outline: 3px solid var(--home-calabaza);
    outline-offset: 2px;
}


/* ---------- Movimiento ---------- */
/* Solo movimiento, sin opacidad: el hero se ve desde el primer pintado */
@keyframes home-entra {
    from { transform: translateY(12px); }
    to   { transform: none; }
}

@media (prefers-reduced-motion: reduce) {
    .home-hero__panel {
        animation: none;
    }

    .home-hero__btn,
    .home-hero__polaroid,
    .home-hero__foto img,
    .home-tira__card,
    .home-tira__foto img,
    .home-tira__btn,
    .home-usos__foto,
    .home-usos__foto img,
    .home-usos__nombre,
    .home-usos__todo,
    .home-usos__todo span,
    .home-usos__chip,
    .home-vendidos__filtro,
    .home-vendidos__flecha,
    .home-vendidos__card,
    .home-vendidos__foto img,
    .home-vendidos__btn,
    .home-vendidos__dot,
    .home-perso__todo,
    .home-perso__todo span,
    .home-perso__filtro,
    .home-perso__flecha,
    .home-perso__card,
    .home-perso__foto img,
    .home-perso__btn,
    .home-perso__btn span,
    .home-perso__dot,
    .home-confianza__ml,
    .home-pasos__cta,
    .home-wtc__foto img,
    .home-wtc__btn,
    .home-usos-eco__item,
    .home-usos-eco__icono,
    .home-productos__card,
    .home-productos__foto img,
    .home-compra__cta,
    .home-compra__carrito #lav-widget .lav-pkg-btn {
        transition: none;
    }
}
