@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Montserrat:wght@300;400;600;700;800&display=swap');
*{box-sizing:border-box}
body.catalog-home{margin:0;background:var(--home-bg);color:var(--home-text);font-family:Montserrat,Arial,sans-serif}.top-cta{display:block;text-align:center;background:var(--top-cta-bg,var(--home-accent-soft));color:var(--top-cta-color,var(--home-dark));padding:12px 16px;letter-spacing:var(--top-cta-letter-spacing,.22em);text-transform:uppercase;font-weight:var(--top-cta-weight,700);font-size:var(--top-cta-size,14px);font-family:var(--top-cta-font,Montserrat,Arial,sans-serif);text-decoration:underline}.site-header{height:74px;display:flex;align-items:center;justify-content:space-between;padding:0 min(6vw,76px);background:#fff;border-bottom:1px solid rgba(0,0,0,.08);box-shadow:0 2px 12px rgba(0,0,0,.12);position:sticky;top:0;z-index:30}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--home-dark);font-weight:800}.brand img{width:46px;height:46px;object-fit:contain}.brand-text{font-size:24px;color:#b05497}.logo-diamond{width:42px;height:42px;border-radius:10px;background:var(--home-accent);display:inline-block;transform:rotate(45deg)}.main-menu{display:flex;gap:32px;text-transform:uppercase;font-size:13px}.main-menu a{text-decoration:none;color:#555}.hamburger{display:none;background:transparent;border:0;width:42px;height:42px;gap:5px;flex-direction:column;align-items:center;justify-content:center}.hamburger span{width:26px;height:3px;background:#777;border-radius:4px}.hero-simple{height:380px;position:relative;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-slider{position:relative;width:100%;height:100%}.hero-slider img,.hero-placeholder{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity .8s;background:#fff}.hero-slider img.active,.hero-placeholder.active{opacity:1}.hero-arrow{position:absolute;z-index:4;border:0;background:transparent;color:var(--home-accent);font-size:56px;line-height:1;cursor:pointer}.hero-prev{left:4%}.hero-next{right:4%}.hero-placeholder{display:grid;place-items:center}.phone-card{width:170px;height:310px;border:10px solid #111;border-radius:34px;display:grid;place-items:center;text-align:center;font-family:'Cormorant Garamond',serif;font-size:28px}
.quick-categories{padding:28px 18px 46px;background:#fff;display:flex;gap:18px;justify-content:center;flex-wrap:wrap;overflow:hidden}.quick-categories.is-carousel{justify-content:flex-start;flex-wrap:nowrap;animation:buttonsSide 7s ease-in-out infinite alternate}.event-tile{min-width:100px;width:100px;height:76px;border-radius:8px;background:#fff;color:var(--home-dark);border:1px solid #e6e6e6;display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;font-size:11px;box-shadow:0 8px 22px rgba(0,0,0,.06);transition:.2s}.event-tile:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(0,0,0,.12)}.event-icon{font-size:26px;color:#6d7682;margin-bottom:6px}@keyframes buttonsSide{from{transform:translateX(0)}to{transform:translateX(calc(100vw - 100% - 36px))}}
.story-section{text-align:center;padding:80px 22px;background:#fffaf3}.kicker{text-transform:uppercase;letter-spacing:.22em;font-weight:700}.heart-line{color:var(--home-accent-soft);font-size:26px;margin:22px 0}.story-section h1,.catalog-section h2,.price-section h2{font-family:'Cormorant Garamond',serif;font-weight:400;font-size:clamp(42px,7vw,78px);line-height:1;margin:0 0 20px}.story-section em{font-weight:400}.catalog-section{padding:70px min(6vw,70px)}.category-block{margin:0 auto 70px;max-width:1180px}.category-block>h3{font-family:'Cormorant Garamond',serif;font-size:54px;text-align:center;margin:0 0 30px}.subcategory-block{margin-bottom:42px}.subcat-head{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid rgba(0,0,0,.12);margin-bottom:22px}.subcat-head h4{font-size:26px;margin:0 0 10px}.subcat-head span{opacity:.65;margin-bottom:10px}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:26px;justify-items:center}.model-card{background:transparent;border-radius:0;padding:10px;box-shadow:none;text-align:center;width:fit-content}.phone-mockup{display:block;width:180px;height:340px;margin:0 auto 18px;border:10px solid #111;border-radius:34px;overflow:hidden;background:#111;box-shadow:0 20px 45px rgba(0,0,0,.25)}.phone-mockup img{width:100%;height:100%;object-fit:cover}.phone-empty{height:100%;display:grid;place-items:center;color:#fff;padding:18px}.model-info small{text-transform:uppercase;letter-spacing:.16em;color:var(--home-accent);font-weight:700}.model-info h5{font-family:'Cormorant Garamond',serif;font-size:30px;margin:8px 0}.model-info a{display:inline-flex;background:var(--home-dark);color:#fff;text-decoration:none;border-radius:999px;padding:10px 20px}.digital-package{width:min(980px,calc(100% - 32px));margin:20px auto 70px;padding:32px;border-radius:30px;background:#fff;box-shadow:0 18px 45px rgba(0,0,0,.08);display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}.digital-package h2{font-family:'Cormorant Garamond',serif;font-size:46px;margin:0 0 10px}.package-price{text-align:center}.package-price strong{display:block;font-size:30px;margin-bottom:12px}.package-price a{display:inline-flex;background:var(--home-accent);color:#fff;text-decoration:none;border-radius:999px;padding:12px 22px;font-weight:800}.price-section{padding:60px min(6vw,70px);background:#fff}.price-section h2{text-align:center}.price-head,.feature-row{display:grid;grid-template-columns:1fr 150px 150px;gap:10px;align-items:center;max-width:900px;margin:0 auto}.price-head{font-weight:800;text-align:center;border-bottom:1px solid #bbb;padding-bottom:10px}.price-head small{display:block;color:var(--home-accent);font-size:12px;margin-top:4px}.feature-row{border-bottom:1px solid #ddd;min-height:42px}.feature-row b{text-align:center;color:#ff8080;font-size:24px}.feature-row span{font-size:14px}.empty-catalog{text-align:center;background:#fff;border-radius:24px;padding:30px;max-width:720px;margin:auto}.home-footer{background:var(--home-dark);color:#fff;display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;padding:54px min(8vw,100px)}.home-footer a{color:#fff}.home-footer p{line-height:1.7}.social-icons{display:flex;gap:12px;align-items:center}.social-icon{width:46px;height:46px;border-radius:50%;background:var(--footer-social-bg,#000);color:var(--footer-social-color,#fff)!important;border:1px solid var(--footer-social-border,#000);display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:900;font-size:25px}.wa-float{position:fixed;right:24px;bottom:24px;width:72px;height:72px;border-radius:50%;background:#19d83a;color:#fff;text-decoration:none;display:grid;place-items:center;font-size:34px;box-shadow:0 14px 30px rgba(0,0,0,.28);z-index:999}@media(max-width:760px){.site-header{height:74px;padding:0 18px}.brand-text{font-size:19px}.main-menu{position:fixed;right:16px;top:86px;width:min(280px,calc(100% - 32px));background:#fff;border-radius:18px;box-shadow:0 18px 40px rgba(0,0,0,.18);padding:18px;display:none;flex-direction:column;gap:14px}.menu-open .main-menu{display:flex}.hamburger{display:flex}.hero-simple{height:330px}.quick-categories{justify-content:flex-start;overflow:hidden;flex-wrap:nowrap}.event-tile{min-width:100px}.digital-package{grid-template-columns:1fr;text-align:center}.price-head,.feature-row{grid-template-columns:1fr 90px 90px}.home-footer{grid-template-columns:1fr}.model-grid{grid-template-columns:1fr}.phone-mockup{width:170px;height:320px}}



/* PATCH_REMOVE_CATALOG_BLACK_FRAME: quitar fondo/marco negro del modelo en el index */
.phone-mockup {
    width: 230px !important;
    height: 330px !important;
    margin: 0 auto 18px !important;
    border: 0 !important;
    border-radius: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    box-shadow: none !important;
}

.phone-mockup img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.phone-empty {
    color: var(--home-dark, #1d2623) !important;
    background: transparent !important;
}

.model-card {
    background: transparent !important;
    box-shadow: none !important;
}



/* PATCH botones inicio avanzados */
.quick-categories{
    position:relative;
    padding:28px 18px 46px;
    background:var(--home-buttons-bg,#fff);
    display:flex;
    gap:18px;
    justify-content:center;
    flex-wrap:wrap;
    overflow:hidden;
    min-height:150px;
}

.quick-categories.is-carousel{
    justify-content:flex-start;
    flex-wrap:nowrap;
}

.quick-categories.is-carousel .event-tile{
    animation:buttonsSide var(--home-buttons-speed,18s) ease-in-out infinite alternate;
}

.quick-categories.is-orbit{
    height:min(54vw,360px);
    min-height:260px;
    display:block;
    overflow:hidden;
}

.quick-categories.is-orbit .event-tile{
    position:absolute;
    left:50%;
    top:50%;
    --i:0;
    --total:8;
    --angle:calc((360deg / var(--total)) * var(--i));
    transform:
        translate(-50%,-50%)
        rotate(var(--angle))
        translateX(min(42vw,520px))
        rotate(calc(-1 * var(--angle)));
    animation:orbitButtons var(--home-buttons-speed,18s) linear infinite;
}

.event-tile{
    min-width:var(--home-buttons-size,100px);
    width:var(--home-buttons-size,100px);
    height:calc(var(--home-buttons-size,100px) * .76);
    border-radius:8px;
    background:var(--home-buttons-card-bg,#fff);
    color:var(--home-buttons-text-color,#1d2623);
    border:1px solid var(--home-buttons-card-border,#e6e6e6);
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    font-size:var(--home-buttons-text-size,11px);
    box-shadow:var(--home-buttons-card-shadow,0 8px 22px rgba(0,0,0,.06));
    transition:.2s;
    z-index:1;
}

.event-tile:hover{
    transform:translateY(-3px);
    box-shadow:0 14px 28px rgba(0,0,0,.12);
}

.quick-categories.is-orbit .event-tile:hover{
    box-shadow:0 14px 28px rgba(0,0,0,.12);
}

.event-icon{
    font-size:var(--home-buttons-icon-size,26px);
    color:var(--home-buttons-icon-color,#6d7682);
    margin-bottom:6px;
    line-height:1;
}

@keyframes buttonsSide{
    from{transform:translateX(0)}
    to{transform:translateX(calc(100vw - 100% - 36px))}
}

@keyframes orbitButtons{
    from{
        transform:
            translate(-50%,-50%)
            rotate(var(--angle))
            translateX(min(42vw,520px))
            rotate(calc(-1 * var(--angle)));
    }
    to{
        transform:
            translate(-50%,-50%)
            rotate(calc(var(--angle) + 360deg))
            translateX(min(42vw,520px))
            rotate(calc(-1 * (var(--angle) + 360deg)));
    }
}

@media(max-width:760px){
    .quick-categories.is-orbit{
        height:260px;
    }
    .quick-categories.is-orbit .event-tile{
        transform:
            translate(-50%,-50%)
            rotate(var(--angle))
            translateX(42vw)
            rotate(calc(-1 * var(--angle)));
    }
    @keyframes orbitButtons{
        from{
            transform:
                translate(-50%,-50%)
                rotate(var(--angle))
                translateX(42vw)
                rotate(calc(-1 * var(--angle)));
        }
        to{
            transform:
                translate(-50%,-50%)
                rotate(calc(var(--angle) + 360deg))
                translateX(42vw)
                rotate(calc(-1 * (var(--angle) + 360deg)));
        }
    }
}



/* PATCH logo y seccion historia editable */
.brand-text{
    color:var(--brand-text-color,#b05497) !important;
}

.story-section{
    text-align:center;
    padding:var(--story-padding,80px) 22px;
    background:var(--story-bg,#fffaf3);
}

.story-section .kicker{
    text-transform:uppercase;
    letter-spacing:.22em;
    font-weight:700;
    color:var(--story-kicker-color,#062b49);
    font-size:var(--story-kicker-size,14px);
    font-family:var(--story-kicker-font,Montserrat,Arial,sans-serif);
}

.story-section .heart-line{
    color:var(--story-icon-color,#0b4b91);
    font-size:var(--story-icon-size,26px);
    margin:22px 0;
    line-height:1;
}

.story-section h1{
    font-family:var(--story-title-font,'Cormorant Garamond',serif);
    font-weight:400;
    font-size:clamp(34px,7vw,var(--story-title-size,64px));
    line-height:1;
    margin:0 0 20px;
    color:var(--story-title-color,#0b4b91);
}

.story-section h1 em{
    font-weight:400;
}

.story-section .story-description{
    color:var(--story-text-color,#0b4b91);
    font-size:var(--story-text-size,15px);
    font-family:var(--story-text-font,Montserrat,Arial,sans-serif);
    line-height:1.65;
    max-width:920px;
    margin:0 auto;
}



/* PATCH catálogo, precios, paquete digital y footer editables */
.catalog-section{
    background:var(--catalog-bg,#86b9f4) !important;
}

.category-block>h3{
    color:var(--catalog-type-color,#0b4b91) !important;
    font-size:var(--catalog-type-size,48px) !important;
    font-family:var(--catalog-type-font,'Cormorant Garamond',serif) !important;
}

.subcat-head h4{
    color:var(--catalog-subcat-color,#062b49) !important;
    font-size:var(--catalog-subcat-size,26px) !important;
    font-family:var(--catalog-subcat-font,Montserrat,Arial,sans-serif) !important;
}

.model-card{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    gap:var(--catalog-model-gap,10px) !important;
    background:transparent !important;
    box-shadow:none !important;
}

.phone-mockup{
    width:var(--catalog-model-image-width,320px) !important;
    height:var(--catalog-model-image-height,360px) !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    overflow:visible !important;
    margin:0 auto !important;
}

.phone-mockup img{
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}

.model-info{
    margin-top:0 !important;
}

.model-info small{
    color:var(--catalog-badge-color,#8b6a5b) !important;
    font-size:var(--catalog-badge-size,13px) !important;
    font-family:var(--catalog-badge-font,Montserrat,Arial,sans-serif) !important;
}

.model-info h5{
    color:var(--catalog-model-name-color,#1d2623) !important;
    font-size:var(--catalog-model-name-size,32px) !important;
    font-family:var(--catalog-model-name-font,'Cormorant Garamond',serif) !important;
    margin:4px 0 10px !important;
}

.model-info a{
    background:var(--catalog-button-bg,#1d2623) !important;
    color:var(--catalog-button-color,#fff) !important;
    font-size:var(--catalog-button-size,15px) !important;
}

.digital-package{
    background:var(--package-bg,#fff) !important;
    color:var(--package-text-color,#1d2623) !important;
    font-size:var(--package-text-size,15px) !important;
}

.digital-package h2{
    color:var(--package-title-color,#062b49) !important;
    font-size:var(--package-title-size,46px) !important;
    font-family:var(--package-title-font,'Cormorant Garamond',serif) !important;
}

.package-price strong{
    color:var(--package-price-color,#062b49) !important;
}

.package-price a{
    background:var(--package-button-bg,#c5854a) !important;
    color:var(--package-button-color,#fff) !important;
}

.price-section{
    background:var(--price-bg,#fff) !important;
}

.price-section h2{
    color:var(--price-title-color,#0b4b91) !important;
}

.price-head,
.feature-row{
    color:var(--price-text-color,#0b4b91) !important;
}

.feature-row b{
    color:var(--price-check-color,#ff8080) !important;
}

.home-footer{
    background:var(--footer-bg,#1d2623) !important;
    color:var(--footer-text-color,#fff) !important;
    font-size:var(--footer-text-size,15px) !important;
}

.home-footer h3{
    color:var(--footer-title-color,#fff) !important;
}

.home-footer p,
.home-footer a{
    color:var(--footer-text-color,#fff) !important;
}

.social-icon img{
    width:62% !important;
    height:62% !important;
    object-fit:contain !important;
    display:block !important;
}







/* =========================================================
   FIX CODEPEN STYLE CARRUSEL 3D
   Carrusel completo con 8 caras alrededor del eje.
   ========================================================= */

.index-3d-carousel {
    background: var(--carousel3d-bg,#111) !important;
    padding: 78px 20px 145px !important;
    overflow: hidden !important;
    text-align: center !important;
    min-height: 620px !important;
}

.index-3d-carousel h2 {
    color: var(--carousel3d-title-color,#fff) !important;
    font-size: var(--carousel3d-title-size,32px) !important;
    font-family: var(--carousel3d-title-font,'Cormorant Garamond',serif) !important;
    margin: 0 0 58px !important;
}

/* Stage equivalente al .contenedor del CodePen */
.carousel3d-stage {
    --c3-w: var(--carousel3d-card-width,150px);
    --c3-h: var(--carousel3d-card-height,200px);
    --c3-radius: var(--carousel3d-radius,250px);

    position: relative !important;
    width: var(--c3-w) !important;
    height: var(--c3-h) !important;
    perspective: 1000px !important;
    margin: 0 auto !important;
    transform: scale(.98) rotateX(-10deg) !important;
    transform-style: preserve-3d !important;
}

/* Caja giratoria equivalente al .box del CodePen */
.carousel3d-box {
    position: absolute !important;
    inset: 0 !important;
    height: 100% !important;
    width: 100% !important;
    transform-style: preserve-3d !important;
    animation: carousel3dRotate var(--carousel3d-speed,50s) infinite linear !important;
    transition: transform 2s !important;
}

/* Cada cara sale del centro y se reparte con 360 / count */
.carousel3d-item {
    position: absolute !important;
    inset: 0 !important;
    height: var(--c3-h) !important;
    width: var(--c3-w) !important;
    transform-style: preserve-3d !important;
    transform:
        rotateY(calc((360deg / var(--c3-count, 8)) * var(--i)))
        translateZ(var(--c3-radius)) !important;
    backface-visibility: hidden !important;
}

/* Tarjeta doble cara: esto da volumen y evita que se vea “plano incompleto” */
.carousel3d-card {
    position: relative !important;
    height: 100% !important;
    width: 100% !important;
    transform-style: preserve-3d !important;
    box-shadow: 0 0 14px rgba(255,255,255,.68) !important;
    background: rgba(0,0,0,.2) !important;
}

.carousel3d-card img {
    position: absolute !important;
    inset: 0 !important;
    height: 100% !important;
    width: 100% !important;
    object-fit: cover !important;
    display: block !important;
    backface-visibility: hidden !important;
    -webkit-box-reflect: below 10px linear-gradient(transparent, transparent, rgba(0,0,0,.35)) !important;
}

/* Segunda cara usando la misma imagen con CSS: ayuda a que se vea como el CodePen al girar */
.carousel3d-card::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: inherit !important;
    transform: rotateY(180deg) !important;
    backface-visibility: hidden !important;
}

/* Piso / brillo inferior, equivalente visual al piso del CodePen */
.carousel3d-floor {
    position: absolute !important;
    left: 50% !important;
    top: 100% !important;
    width: 43em !important;
    height: 43em !important;
    transform: translateX(-50%) rotateX(90deg) translateY(40px) translateZ(125px) !important;
    background: radial-gradient(ellipse at center, rgba(255,255,255,.22), rgba(255,255,255,0) 62%) !important;
    border-radius: 50% !important;
    pointer-events: none !important;
}

@keyframes carousel3dRotate {
    to {
        transform: rotateY(-360deg);
    }
}

/* En pantallas pequeñas bajamos escala para que no se corte */
@media (max-width: 760px) {
    .index-3d-carousel {
        min-height: 500px !important;
        padding: 58px 12px 110px !important;
    }

    .index-3d-carousel h2 {
        margin-bottom: 42px !important;
    }

    .carousel3d-stage {
        transform: scale(.72) rotateX(-10deg) !important;
    }
}

/* En pantallas grandes, que se vea más parecido al ejemplo */
@media (min-width: 1000px) {
    .carousel3d-stage {
        transform: scale(1.08) rotateX(-10deg) !important;
    }
}



/* =========================================================
   FIX CARRUSEL 3D: mostrar fotos de atrás, no paneles grises
   ========================================================= */

.carousel3d-card {
    position: relative !important;
    height: 100% !important;
    width: 100% !important;
    transform-style: preserve-3d !important;
    box-shadow: 0 0 14px rgba(255,255,255,.68) !important;
    background: transparent !important;
}

/* Apagar la cara gris que venía del pseudo-elemento */
.carousel3d-card::after {
    display: none !important;
    content: none !important;
}

/* Las dos caras usan imagen real */
.carousel3d-card img,
.carousel3d-front,
.carousel3d-back {
    position: absolute !important;
    inset: 0 !important;
    height: 100% !important;
    width: 100% !important;
    object-fit: cover !important;
    display: block !important;
    backface-visibility: hidden !important;
    -webkit-backface-visibility: hidden !important;
    border: 0 !important;
}

/* Frente */
.carousel3d-front {
    transform: rotateY(0deg) translateZ(.6px) !important;
    -webkit-box-reflect: below 10px linear-gradient(transparent, transparent, rgba(0,0,0,.35)) !important;
}

/* Reverso: ahora sí se ve foto cuando la tarjeta está atrás */
.carousel3d-back {
    transform: rotateY(180deg) translateZ(.6px) !important;
    -webkit-box-reflect: below 10px linear-gradient(transparent, transparent, rgba(0,0,0,.25)) !important;
}

.carousel3d-item {
    background: transparent !important;
}



/* =========================================================
   FIX BOTONES DEL INICIO - MARQUEE INFINITO REAL
   Basado en estructura:
   .marquee > .marquee__group + .marquee__group duplicado
   ========================================================= */

.quick-categories {
    --buttons-gap: var(--home-buttons-gap, 18px);
    --buttons-duration: var(--home-buttons-speed, 18s);
    --buttons-scroll-start: 0;
    --buttons-scroll-end: calc(-100% - var(--buttons-gap));

    position: relative !important;
    width: 100% !important;
    background: var(--home-buttons-bg, #fff) !important;
    padding: 28px 0 46px !important;
    overflow: hidden !important;
    min-height: 148px !important;
}

/* Modo estático */
.quick-categories.is-static .quick-categories-track {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: var(--buttons-gap) !important;
    width: 100% !important;
}

/* Marquee real */
.quick-categories.is-marquee {
    display: flex !important;
    align-items: center !important;
}

.wicion-marquee {
    display: flex !important;
    overflow: hidden !important;
    user-select: none !important;
    gap: var(--buttons-gap) !important;
    width: 100% !important;
    mask-image: linear-gradient(
        to right,
        hsl(0 0% 0% / 0),
        hsl(0 0% 0% / 1) 12%,
        hsl(0 0% 0% / 1) 88%,
        hsl(0 0% 0% / 0)
    ) !important;
    -webkit-mask-image: linear-gradient(
        to right,
        hsl(0 0% 0% / 0),
        hsl(0 0% 0% / 1) 12%,
        hsl(0 0% 0% / 1) 88%,
        hsl(0 0% 0% / 0)
    ) !important;
}

/* Fallback visual para navegadores sin mask */
.wicion-marquee::before,
.wicion-marquee::after {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    width: 110px !important;
    height: 100% !important;
    z-index: 5 !important;
    pointer-events: none !important;
}

.wicion-marquee::before {
    left: 0 !important;
    background: linear-gradient(to right, var(--home-buttons-fade-color, var(--home-buttons-bg,#fff)) 8%, rgba(255,255,255,0) 92%) !important;
}

.wicion-marquee::after {
    right: 0 !important;
    background: linear-gradient(to left, var(--home-buttons-fade-color, var(--home-buttons-bg,#fff)) 8%, rgba(255,255,255,0) 92%) !important;
}

.wicion-marquee-group {
    flex-shrink: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-around !important;
    gap: var(--buttons-gap) !important;
    min-width: 100% !important;
    animation: wicionMarqueeScroll var(--buttons-duration) linear infinite !important;
}

/* Pausa al pasar el mouse */
.wicion-marquee:hover .wicion-marquee-group {
    animation-play-state: paused !important;
}

@keyframes wicionMarqueeScroll {
    from {
        transform: translateX(var(--buttons-scroll-start));
    }
    to {
        transform: translateX(var(--buttons-scroll-end));
    }
}

@media (prefers-reduced-motion: reduce) {
    .wicion-marquee-group {
        animation-play-state: paused !important;
    }
}

/* Botón/tarjeta */
.quick-categories .event-tile {
    flex: 0 0 var(--home-buttons-loop-width, 118px) !important;
    width: var(--home-buttons-size, 100px) !important;
    min-width: var(--home-buttons-loop-width, 118px) !important;
    height: calc(var(--home-buttons-size, 100px) * .76) !important;
    border-radius: 8px !important;
    background: var(--home-buttons-card-bg, #fff) !important;
    color: var(--home-buttons-text-color, #1d2623) !important;
    border: 1px solid var(--home-buttons-card-border, #e6e6e6) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    font-size: var(--home-buttons-text-size, 11px) !important;
    box-shadow: var(--home-buttons-card-shadow, 0 8px 22px rgba(0,0,0,.06)) !important;
    transition: transform .2s ease, box-shadow .2s ease !important;
    position: relative !important;
    z-index: 2 !important;
}

.quick-categories .event-tile:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 14px 28px rgba(0,0,0,.12) !important;
}

.quick-categories .event-icon {
    font-size: var(--home-buttons-icon-size, 26px) !important;
    color: var(--home-buttons-icon-color, #6d7682) !important;
    margin-bottom: 6px !important;
    line-height: 1 !important;
}

/* Anula cualquier regla vieja de órbita que dejaba los botones apilados */
.quick-categories.is-orbit,
.quick-categories.is-carousel {
    display: flex !important;
}

.quick-categories.is-orbit .event-tile,
.quick-categories.is-carousel .event-tile {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
}

/* Mobile */
@media (max-width: 760px) {
    .quick-categories {
        min-height: 130px !important;
        padding: 22px 0 36px !important;
    }

    .wicion-marquee::before,
    .wicion-marquee::after {
        width: 52px !important;
    }

    .quick-categories .event-tile {
        min-width: 96px !important;
    }
}



/* PATCH FIX INDEX: carrusel botones y carrusel 3D estable */
.quick-categories.is-marquee,
.quick-categories.is-carousel,
.quick-categories.is-orbit{
    position:relative!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:120px!important;
}

.quick-categories.is-marquee .wicion-marquee{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    width:100%!important;
    overflow:hidden!important;
}

.quick-categories.is-marquee .wicion-marquee-group{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    flex-wrap:nowrap!important;
}

.quick-categories.is-marquee .event-tile{
    flex:0 0 var(--home-buttons-loop-width,118px)!important;
    display:flex!important;
    flex-direction:column!important;
    white-space:nowrap!important;
}

.index-3d-carousel{
    overflow:hidden!important;
    position:relative!important;
    display:block!important;
    min-height:560px!important;
    padding:70px 12px 140px!important;
}

.index-3d-carousel h2{
    text-align:center!important;
    margin:0 auto 70px!important;
}

.carousel3d-stage{
    display:block!important;
    position:relative!important;
    width:var(--carousel3d-card-width,150px)!important;
    height:var(--carousel3d-card-height,200px)!important;
    margin:0 auto!important;
    perspective:1000px!important;
    transform:scale(.98) rotateX(-10deg)!important;
    transform-style:preserve-3d!important;
}

.carousel3d-box{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    transform-style:preserve-3d!important;
    animation:carousel3dRotate var(--carousel3d-speed,50s) infinite linear!important;
}

.carousel3d-item{
    position:absolute!important;
    inset:0!important;
    width:var(--carousel3d-card-width,150px)!important;
    height:var(--carousel3d-card-height,200px)!important;
    transform:rotateY(calc((360deg / var(--c3-count,8)) * var(--i))) translateZ(var(--carousel3d-radius,250px))!important;
    transform-style:preserve-3d!important;
}

.carousel3d-card,
.carousel3d-card img{
    width:100%!important;
    height:100%!important;
}

.carousel3d-card{
    position:relative!important;
    transform-style:preserve-3d!important;
    box-shadow:0 0 14px rgba(255,255,255,.68)!important;
    background:rgba(0,0,0,.18)!important;
}

.carousel3d-card img{
    position:absolute!important;
    inset:0!important;
    object-fit:cover!important;
    display:block!important;
    backface-visibility:hidden!important;
    -webkit-box-reflect:below 10px linear-gradient(transparent, transparent, rgba(0,0,0,.35))!important;
}

.carousel3d-card .carousel3d-back{
    transform:rotateY(180deg)!important;
}

@keyframes carousel3dRotate{to{transform:rotateY(-360deg)}}

@media(max-width:760px){
    .quick-categories.is-marquee,
    .quick-categories.is-carousel,
    .quick-categories.is-orbit{min-height:108px!important}
    .index-3d-carousel{min-height:480px!important;padding:52px 10px 120px!important}
    .carousel3d-stage{transform:scale(.68) rotateX(-10deg)!important}
}
