
.hac{
    --hac-blue:#4183B3;
    --hac-dark:#17354F;
    --hac-muted:#6E7D8B;
    --hac-border:#DCE7EF;
    --hac-gap:28px;
    width:calc(100% - 24px);
    margin:0 auto;
    display:flex;
    flex-direction:column;
    gap:var(--hac-gap);
    color:var(--hac-dark);
}
.hac,.hac *{box-sizing:border-box}
.hac a{text-decoration:none}
.hac-header{padding:8px 0 2px}
.hac-kicker{
    color:var(--hac-blue);
    font-size:10px;
    font-weight:900;
    letter-spacing:.12em;
    margin-bottom:7px;
}
.hac-title{
    margin:0;
    color:var(--hac-dark);
    font-size:34px;
    line-height:1.05;
    font-weight:900;
}
.hac-description{
    max-width:780px;
    margin:8px 0 0;
    color:var(--hac-muted);
    font-size:13px;
    line-height:1.45;
}
.hac-benefits{
    display:flex;
    flex-wrap:wrap;
    gap:7px 16px;
    margin-top:13px;
}
.hac-benefit{
    position:relative;
    padding-left:13px;
    color:var(--hac-dark);
    font-size:11px;
    font-weight:700;
}
.hac-benefit:before{
    content:"";
    position:absolute;
    left:0;
    top:50%;
    width:5px;
    height:5px;
    margin-top:-2.5px;
    border-radius:50%;
    background:var(--hac-blue);
}
.hac-section-head h2,
.hac-catalog-head h2{
    margin:0;
    font-size:20px;
    line-height:1.1;
    color:var(--hac-dark);
    font-weight:900;
}
.hac-subcat-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin-top:11px;
}
.hac-subcat-card{
    position:relative;
    min-height:235px;
    overflow:hidden;
    background:#EAF2F7;
    border:1px solid var(--hac-border);
}
.hac-subcat-card img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .25s ease;
}
.hac-subcat-card:hover img{transform:scale(1.025)}
.hac-subcat-overlay{
    position:absolute;
    inset:42% 0 0;
    background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.72));
}
.hac-subcat-content{
    position:absolute;
    left:16px;
    right:16px;
    bottom:14px;
    color:#fff;
}
.hac-subcat-name{
    display:block;
    font-size:17px;
    line-height:1.05;
    font-weight:900;
}
.hac-subcat-content small{
    display:block;
    margin-top:4px;
    font-size:10px;
    line-height:1.25;
    opacity:.92;
}
.hac-subcat-content b{
    display:inline-block;
    margin-top:9px;
    font-size:10px;
    font-weight:800;
    color:#fff;
}
.hac-catalog-head{
    display:flex;
    align-items:end;
    justify-content:space-between;
    gap:12px;
    margin-bottom:11px;
}
.hac-catalog-head p{
    margin:4px 0 0;
    font-size:10px;
    color:var(--hac-muted);
}
.hac-products-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
}
.hac-product-card{
    overflow:hidden;
    border:1px solid var(--hac-border);
    background:#fff;
    box-shadow:0 5px 18px rgba(23,53,79,.045);
}
.hac-product-image{
    position:relative;
    display:block;
    aspect-ratio:1/1;
    background:#F7FAFC;
    overflow:hidden;
}
.hac-product-image img{
    width:100%;
    height:100%;
    object-fit:contain;
    transition:transform .2s ease;
}
.hac-product-card:hover .hac-product-image img{transform:scale(1.02)}
.hac-sale{
    position:absolute;
    z-index:2;
    left:9px;
    top:9px;
    padding:5px 7px;
    border-radius:999px;
    background:var(--hac-blue);
    color:#fff;
    font-size:9px;
    font-weight:900;
}
.hac-product-body{padding:12px}
.hac-product-title{
    display:block;
    min-height:38px;
    color:var(--hac-dark)!important;
    font-size:12px;
    line-height:1.3;
    font-weight:800;
}
.hac-price{
    margin-top:8px;
    color:var(--hac-dark);
    font-size:14px;
    font-weight:900;
}
.hac-price del{opacity:.5;font-size:.85em}
.hac-price ins{text-decoration:none}
.hac-product-button{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    margin-top:11px;
    border-radius:8px;
    background:#EEF6FB;
    color:var(--hac-blue)!important;
    font-size:10px;
    font-weight:900;
}
.hac-product-button:hover{
    background:var(--hac-blue);
    color:#fff!important;
}
.hac-pagination{margin-top:18px}
.hac-pagination ul{
    list-style:none;
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:5px;
    margin:0;
    padding:0;
}
.hac-pagination a,
.hac-pagination span{
    min-width:34px;
    height:34px;
    border-radius:8px;
    border:1px solid var(--hac-border);
    display:grid;
    place-items:center;
    padding:0 8px;
    color:var(--hac-dark);
    background:#fff;
    font-size:10px;
    font-weight:800;
}
.hac-pagination .current{
    background:var(--hac-blue);
    color:#fff;
    border-color:var(--hac-blue);
}
.hac-empty,.hac-notice{
    padding:16px;
    border:1px solid var(--hac-border);
    border-radius:10px;
    background:#F7FAFC;
    color:var(--hac-muted);
    font-size:12px;
}

@media(max-width:1024px){
    .hac-subcat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .hac-products-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:767px){
    .hac{width:calc(100% - 16px);gap:20px}
    .hac-header{text-align:center}
    .hac-title{font-size:26px}
    .hac-description{font-size:11px;margin-left:auto;margin-right:auto}
    .hac-benefits{justify-content:center;gap:6px 12px}
    .hac-benefit{font-size:9.5px}
    .hac-section-head h2,.hac-catalog-head h2{font-size:17px}
    .hac-subcat-grid{grid-template-columns:1fr;gap:8px}
    .hac-subcat-card{min-height:180px}
    .hac-subcat-name{font-size:15px}
    .hac-products-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
    .hac-product-body{padding:9px}
    .hac-product-title{font-size:10px;min-height:34px}
    .hac-price{font-size:12px}
    .hac-product-button{min-height:36px;font-size:9px}
}


/* ======================================
   v1.1.0 - Diseño alineado al Home Hanlob
   ====================================== */

/* Más ancho y con mejor uso del espacio */
.hac{
    width:calc(100% - 40px);
}
.hac-header{
    padding-top:12px;
}
.hac-title{
    font-size:38px;
}
.hac-description{
    font-size:14px;
}
.hac-benefits{
    margin-top:15px;
}

/* Subcategorías más grandes y limpias */
.hac-subcat-grid{
    gap:16px;
}
.hac-subcat-card{
    min-height:260px;
    box-shadow:0 7px 22px rgba(23,53,79,.06);
}
.hac-subcat-content{
    left:18px;
    right:18px;
    bottom:16px;
}
.hac-subcat-name{
    font-size:19px;
}
.hac-subcat-content b{
    font-size:11px;
}

/* Productos: estilo similar a Favoritos del Home */
.hac-products-grid{
    gap:16px;
}
.hac-product-card{
    border:1px solid var(--hac-border);
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 6px 20px rgba(23,53,79,.055);
    display:flex;
    flex-direction:column;
    min-width:0;
}
.hac-product-image{
    height:270px;
    aspect-ratio:auto;
    background:#fff;
    padding:14px;
}
.hac-product-image img{
    width:100%;
    height:100%;
    object-fit:contain;
}
.hac-sale{
    left:10px;
    top:10px;
    padding:5px 8px;
    background:var(--hac-blue);
    font-size:9px;
    letter-spacing:.02em;
}
.hac-product-body{
    padding:14px;
    display:flex;
    flex-direction:column;
    flex:1;
}
.hac-product-title{
    min-height:48px;
    font-size:14px;
    line-height:1.25;
    font-weight:800;
    color:var(--hac-dark)!important;
}
.hac-price-row{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
    margin-top:10px;
}
.hac-price{
    margin-top:0;
    font-size:20px;
    line-height:1;
    color:var(--hac-blue);
    font-weight:900;
}
.hac-price del{
    display:block;
    margin-bottom:4px;
    color:#84919C;
    font-size:11px;
    font-weight:500;
}
.hac-price ins{
    text-decoration:none;
    color:var(--hac-blue);
}
.hac-discount{
    display:inline-flex;
    align-items:center;
    min-height:21px;
    padding:0 7px;
    border-radius:5px;
    background:#15A64A;
    color:#fff;
    font-size:9px;
    font-weight:900;
}
.hac-free-shipping{
    margin-top:8px;
    color:#119B43;
    font-size:11px;
    font-weight:800;
}
.hac-product-button{
    margin-top:auto;
    min-height:42px;
    border-radius:8px;
    background:var(--hac-blue);
    color:#fff!important;
    font-size:11px;
    font-weight:900;
}
.hac-product-button:hover{
    filter:brightness(.94);
    color:#fff!important;
}

/* El catálogo aprovecha mejor el ancho aun con pocos productos */
.hac-products-grid{
    grid-template-columns:repeat(4,minmax(220px,1fr));
}
.hac-products-grid:has(.hac-product-card:only-child){
    grid-template-columns:minmax(260px,330px);
}
.hac-products-grid:has(.hac-product-card:nth-child(2):last-child){
    grid-template-columns:repeat(2,minmax(260px,330px));
}

/* Encabezados */
.hac-section-head h2,
.hac-catalog-head h2{
    font-size:23px;
}
.hac-catalog-head p{
    font-size:11px;
}

@media(max-width:1024px){
    .hac{
        width:calc(100% - 24px);
    }
    .hac-products-grid{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }
    .hac-product-image{
        height:235px;
    }
}

@media(max-width:767px){
    .hac{
        width:calc(100% - 16px);
    }
    .hac-header{
        text-align:left;
    }
    .hac-title{
        font-size:28px;
    }
    .hac-description{
        font-size:12px;
    }
    .hac-benefits{
        justify-content:flex-start;
    }

    .hac-subcat-grid{
        grid-template-columns:1fr;
        gap:9px;
    }
    .hac-subcat-card{
        min-height:190px;
    }

    .hac-products-grid,
    .hac-products-grid:has(.hac-product-card:only-child),
    .hac-products-grid:has(.hac-product-card:nth-child(2):last-child){
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:9px;
    }
    .hac-product-image{
        height:175px;
        padding:8px;
    }
    .hac-product-body{
        padding:10px;
    }
    .hac-product-title{
        min-height:42px;
        font-size:11px;
    }
    .hac-price{
        font-size:15px;
    }
    .hac-price del{
        font-size:9px;
    }
    .hac-discount{
        font-size:8px;
    }
    .hac-free-shipping{
        font-size:9px;
    }
    .hac-product-button{
        min-height:38px;
        font-size:9px;
    }
}


/* =====================================================
   v1.2.0 - Tarjeta copiada del diseño Home Hanlob
   Base visual: Best Sellers Pro + precio/descuento Ofertas Pro
   ===================================================== */

.hac-products-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
    align-items:stretch;
}
.hac-product-card{
    position:relative;
    display:flex;
    flex-direction:column;
    min-width:0;
    overflow:hidden;
    background:#fff;
    border:1px solid #DCE7EF;
    border-radius:14px;
    box-shadow:none;
    transition:transform .22s ease,box-shadow .22s ease;
}
.hac-product-card:hover{
    transform:translateY(-3px);
    box-shadow:0 8px 24px rgba(16,47,75,.07);
}
.hac-product-image{
    position:relative;
    height:245px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    background:#fff;
    padding:0;
    aspect-ratio:auto;
}
.hac-product-image-link{
    width:100%;
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
}
.hac-product-image img{
    width:100%;
    height:100%;
    object-fit:contain;
    transition:transform .28s ease;
}
.hac-product-card:hover .hac-product-image img{
    transform:scale(1.025);
}
.hac-badges{
    position:absolute;
    top:12px;
    left:12px;
    right:12px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    z-index:3;
    pointer-events:none;
}
.hac-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:6px 9px;
    border-radius:999px;
    font-size:10px;
    font-weight:800;
    line-height:1;
    text-transform:uppercase;
    letter-spacing:.25px;
}
.hac-badge-main{
    background:#4183B3;
    color:#fff;
}
.hac-sale{display:none!important}

.hac-product-body{
    position:relative;
    z-index:2;
    display:flex;
    flex:1;
    flex-direction:column;
    gap:7px;
    padding:14px;
}
.hac-product-title{
    margin:0;
    min-height:0;
    font-size:17px;
    line-height:1.25;
    font-weight:800;
}
.hac-product-title a{
    color:#0D2A45!important;
    text-decoration:none!important;
}
.hac-price-row{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
    margin-top:2px;
}
.hac-price{
    margin:0;
    font-size:21px;
    line-height:1.05;
    font-weight:800;
    color:#4183B3;
}
.hac-price del{
    font-size:.65em;
    opacity:.8;
    margin-right:4px;
    color:#96A1AC;
}
.hac-price ins{
    text-decoration:none;
    color:#4183B3;
}
.hac-discount{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:5px 8px;
    border-radius:5px;
    background:#139B4A;
    color:#fff;
    font-size:10px;
    line-height:1;
    font-weight:900;
    white-space:nowrap;
}
.hac-free-shipping{
    display:flex;
    align-items:center;
    gap:6px;
    margin:0;
    font-size:11px;
    line-height:1.2;
    font-weight:700;
    color:#169B4D;
}
.hac-product-button{
    position:relative;
    z-index:3;
    margin-top:auto;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    width:100%;
    min-height:42px;
    padding:8px 12px;
    background:#4183B3;
    color:#fff!important;
    border-radius:9px;
    text-decoration:none!important;
    font-size:12px;
    font-weight:800;
    line-height:1;
    transition:background .2s ease,transform .2s ease;
}
.hac-product-button:hover{
    background:#2F6F9E;
    color:#fff!important;
    filter:none;
}

/* Cuando hay pocos productos, mantienen el tamaño de las tarjetas del Home */
.hac-products-grid:has(.hac-product-card:only-child){
    grid-template-columns:minmax(0,330px);
}
.hac-products-grid:has(.hac-product-card:nth-child(2):last-child){
    grid-template-columns:repeat(2,minmax(0,330px));
}
.hac-products-grid:has(.hac-product-card:nth-child(3):last-child){
    grid-template-columns:repeat(3,minmax(0,330px));
}

/* Subcategorías: conservar navegación visual, pero alinear radios/bordes al Home */
.hac-subcat-card{
    border:1px solid #DCE7EF;
    border-radius:14px;
    box-shadow:0 8px 25px rgba(16,47,75,.06);
}

@media(max-width:1024px){
    .hac-products-grid{
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:14px;
    }
    .hac-product-image{
        height:220px;
    }
}

@media(max-width:767px){
    .hac-products-grid,
    .hac-products-grid:has(.hac-product-card:only-child),
    .hac-products-grid:has(.hac-product-card:nth-child(2):last-child),
    .hac-products-grid:has(.hac-product-card:nth-child(3):last-child){
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:9px;
    }
    .hac-product-card{
        border-radius:11px;
    }
    .hac-product-image{
        height:145px;
    }
    .hac-badges{
        top:7px;
        left:7px;
        right:7px;
    }
    .hac-badge{
        font-size:8px;
        padding:5px 7px;
    }
    .hac-product-body{
        padding:10px;
        gap:5px;
    }
    .hac-product-title{
        font-size:13px;
        line-height:1.18;
    }
    .hac-price{
        font-size:18px;
    }
    .hac-discount{
        font-size:8px;
        padding:4px 6px;
    }
    .hac-free-shipping{
        font-size:9px;
        gap:4px;
    }
    .hac-product-button{
        min-height:38px;
        padding:7px 8px;
        font-size:10px;
    }
}


/* ======================================
   v1.3.0 - textos e iconos editables
   ====================================== */
.hac-benefit{
    padding-left:0!important;
    display:inline-flex;
    align-items:center;
    gap:6px;
}
.hac-benefit:before{display:none!important}
.hac-benefit-icon,
.hac-subcat-button-icon,
.hac-product-button-icon,
.hac-shipping-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:none;
}
.hac-benefit-icon svg,
.hac-subcat-button-icon svg,
.hac-product-button-icon svg,
.hac-shipping-icon svg{
    width:12px;
    height:12px;
    fill:currentColor;
}
.hac-subcat-content b{
    display:inline-flex;
    align-items:center;
    gap:6px;
}
.hac-product-button{
    gap:8px;
}
.hac-free-shipping{
    gap:6px;
}


/* ======================================
   v1.3.1 - Subcategorías compactas en móvil
   ====================================== */
@media(max-width:767px){
    .hac-subcat-grid{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
        gap:6px!important;
    }
    .hac-subcat-card{
        min-height:118px!important;
        border-radius:9px!important;
    }
    .hac-subcat-content{
        left:7px!important;
        right:7px!important;
        bottom:7px!important;
    }
    .hac-subcat-name{
        font-size:10px!important;
        line-height:1.05!important;
    }
    .hac-subcat-content small{
        display:none!important;
    }
    .hac-subcat-content b{
        margin-top:4px!important;
        font-size:7.5px!important;
        gap:3px!important;
    }
    .hac-subcat-button-icon svg{
        width:8px!important;
        height:8px!important;
    }
    .hac-subcat-overlay{
        inset:48% 0 0!important;
    }
}


/* ======================================
   v1.4.0 - Subcategorías estilo tarjeta del Home
   Imagen arriba + información abajo
   ====================================== */

.hac-subcat-grid{
    gap:14px;
}

.hac-subcat-card{
    min-height:0!important;
    display:flex;
    flex-direction:column;
    overflow:hidden;
    background:#fff;
    border:1px solid #DCE7EF;
    border-radius:14px;
    box-shadow:none;
    transition:transform .22s ease, box-shadow .22s ease;
}

.hac-subcat-card:hover{
    transform:translateY(-2px);
    box-shadow:0 8px 24px rgba(16,47,75,.06);
}

.hac-subcat-image{
    position:relative;
    display:block;
    height:210px;
    overflow:hidden;
    background:#fff;
}

.hac-subcat-image img{
    width:100%;
    height:100%;
    object-fit:contain;
    transition:transform .25s ease;
}

.hac-subcat-card:hover .hac-subcat-image img{
    transform:scale(1.025);
}

.hac-subcat-overlay,
.hac-subcat-content{
    display:none!important;
}

.hac-subcat-body{
    display:flex;
    flex:1;
    flex-direction:column;
    padding:12px;
    background:#fff;
}

.hac-subcat-name{
    display:block;
    color:#0D2A45!important;
    font-size:16px;
    line-height:1.15;
    font-weight:900;
    text-decoration:none!important;
}

.hac-subcat-desc{
    margin-top:5px;
    color:#6E7D8B;
    font-size:10px;
    line-height:1.3;
}

.hac-subcat-button{
    margin-top:auto;
    min-height:38px;
    padding:8px 10px;
    border-radius:8px;
    background:#EEF6FB;
    color:#4183B3!important;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    text-decoration:none!important;
    font-size:10px;
    font-weight:800;
}

.hac-subcat-button:hover{
    background:#4183B3;
    color:#fff!important;
}

.hac-subcat-button-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
}

@media(max-width:767px){
    .hac-subcat-grid{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
        gap:6px!important;
    }

    .hac-subcat-card{
        border-radius:9px!important;
    }

    .hac-subcat-image{
        height:92px!important;
    }

    .hac-subcat-body{
        padding:7px!important;
    }

    .hac-subcat-name{
        font-size:9px!important;
        line-height:1.1!important;
        min-height:20px;
    }

    .hac-subcat-desc{
        display:none!important;
    }

    .hac-subcat-button{
        min-height:28px!important;
        padding:5px 4px!important;
        font-size:7px!important;
        gap:3px!important;
        border-radius:6px!important;
    }

    .hac-subcat-button-icon svg{
        width:7px!important;
        height:7px!important;
    }
}


/* ==========================================================
   v1.4.1 - Subcategorías copiadas de Product Categories Pro
   Referencia exacta: hanlob-product-categories-pro v1.3.0
   ========================================================== */

.hac-subcat-grid{
    align-items:stretch;
    gap:18px;
}
.hac-subcat-card{
    min-height:360px!important;
    border:1px solid #DCE7EE!important;
    border-radius:16px!important;
    background:#fff!important;
    box-shadow:0 8px 24px rgba(23,50,77,.055)!important;
    transition:transform .25s ease,box-shadow .25s ease!important;
}
.hac-subcat-card:hover{
    transform:translateY(-4px)!important;
    box-shadow:0 15px 34px rgba(23,50,77,.11)!important;
}
.hac-subcat-image{
    height:238px!important;
    background:#fff!important;
    overflow:hidden;
}
.hac-subcat-image img{
    width:100%;
    height:100%;
    padding:8px;
    object-fit:contain!important;
    transition:transform .25s ease;
}
.hac-subcat-card:hover .hac-subcat-image img{
    transform:scale(1.035)!important;
}
.hac-subcat-body{
    padding:15px 15px 14px!important;
}
.hac-subcat-name{
    font-size:18px!important;
    font-weight:800!important;
    line-height:1.15!important;
    color:#0D2A45!important;
}
.hac-subcat-desc{
    margin-top:7px!important;
    min-height:34px;
    font-size:12px!important;
    line-height:1.4!important;
    color:#6E7D8B;
}
.hac-subcat-button{
    min-height:38px!important;
    margin-top:14px!important;
    padding:0 14px!important;
    border-radius:8px!important;
    background:#EEF6FB!important;
    color:#4183B3!important;
    font-size:12px!important;
    font-weight:700!important;
}
.hac-subcat-button:hover{
    background:#4183B3!important;
    color:#fff!important;
}

/* móvil: misma proporción del widget de referencia,
   conservando 3 subcategorías en una sola fila como se solicitó */
@media(max-width:767px){
    .hac-subcat-grid{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
        gap:6px!important;
    }
    .hac-subcat-card{
        min-height:176px!important;
        border-radius:9px!important;
    }
    .hac-subcat-image{
        height:92px!important;
    }
    .hac-subcat-image img{
        padding:4px!important;
    }
    .hac-subcat-body{
        padding:7px!important;
    }
    .hac-subcat-name{
        min-height:20px!important;
        font-size:9px!important;
        line-height:1.1!important;
    }
    .hac-subcat-desc{
        display:none!important;
    }
    .hac-subcat-button{
        min-height:28px!important;
        margin-top:7px!important;
        padding:0 4px!important;
        border-radius:6px!important;
        font-size:7px!important;
    }
}

/* v1.5.0 */
.hac-header{padding-top:6px!important;margin-bottom:18px!important}
.hac-kicker:empty{display:none!important}
.hac-title{margin:0!important;font-size:34px!important;line-height:1.05!important}
.hac-description{max-width:720px;margin-top:7px!important;font-size:13px!important;line-height:1.35!important;color:#657789!important}
.hac-benefits{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:8px!important;margin-top:12px!important}
.hac-benefit{min-height:30px;padding:6px 10px!important;border:1px solid #E1ECF3;border-radius:8px;background:#F7FBFD;color:#0D2A45;font-size:10px!important;font-weight:700!important}
.hac-benefit-icon{color:#4183B3!important}
.hac-section-head{margin-bottom:9px!important}.hac-section-head h2,.hac-catalog-head h2{font-size:21px!important;line-height:1.1!important}
.hac-subcat-grid{gap:12px!important}
.hac-subcat-card{min-height:0!important;border-radius:12px!important}
.hac-subcat-image{height:165px!important}.hac-subcat-image img{padding:6px!important}
.hac-subcat-body{padding:10px!important}.hac-subcat-name{font-size:15px!important;line-height:1.12!important}
.hac-subcat-desc{min-height:0!important;margin-top:4px!important;font-size:10px!important;line-height:1.25!important}
.hac-subcat-button{min-height:32px!important;margin-top:9px!important;padding:0 10px!important;border-radius:7px!important;font-size:10px!important}
.hac-catalog{margin-top:18px!important}.hac-catalog-head{margin-bottom:9px!important}
@media(max-width:1024px){.hac-title{font-size:31px!important}.hac-subcat-image{height:150px!important}}
@media(max-width:767px){
.hac-header{margin-bottom:14px!important}.hac-title{font-size:27px!important}.hac-description{font-size:11px!important}
.hac-benefits{gap:5px!important;margin-top:9px!important}.hac-benefit{min-height:25px!important;padding:4px 6px!important;font-size:8px!important;border-radius:6px!important}
.hac-section-head h2,.hac-catalog-head h2{font-size:18px!important}
.hac-subcat-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
.hac-subcat-card{min-height:0!important;border-radius:8px!important}.hac-subcat-image{height:82px!important}
.hac-subcat-body{padding:6px!important}.hac-subcat-name{min-height:19px!important;font-size:8.5px!important}.hac-subcat-desc{display:none!important}
.hac-subcat-button{min-height:25px!important;margin-top:5px!important;padding:0 3px!important;font-size:6.8px!important}.hac-catalog{margin-top:14px!important}}


/* ======================================
   v1.5.1 - Alineación centrada y editable
   ====================================== */
.hac-header{
    max-width:900px;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center;
}
.hac-description{
    margin-left:auto!important;
    margin-right:auto!important;
}
.hac-benefits{
    justify-content:center!important;
}
.hac-section-head{
    text-align:center;
}
.hac-catalog-head{
    text-align:center;
    justify-content:center!important;
}
.hac-catalog-head>div{
    width:100%;
}
.hac-subcat-body{
    text-align:center;
}
.hac-subcat-button{
    justify-content:center;
}

/* Mantener tarjetas de producto con información alineada a la izquierda por defecto */
.hac-product-body{
    text-align:left;
}
.hac-price-row,
.hac-free-shipping{
    justify-content:flex-start;
}

@media(max-width:767px){
    .hac-header{
        text-align:center!important;
    }
    .hac-benefits{
        justify-content:center!important;
    }
    .hac-section-head,
    .hac-catalog-head{
        text-align:center!important;
    }
}


/* =========================================================
   v1.6.0 - Filtros de catálogo
   ========================================================= */
.hac-filters{
    display:grid;
    grid-template-columns:minmax(150px,1fr) minmax(150px,1fr) minmax(180px,1fr) auto;
    align-items:end;
    gap:10px;
    margin:0 0 18px;
    padding:12px;
    border:1px solid #D5E6F0;
    border-radius:10px;
    background:#F7FBFE;
}
.hac-filter-field{
    display:flex;
    flex-direction:column;
    gap:5px;
    min-width:0;
}
.hac-filter-label{
    color:#173F68;
    font-size:10px;
    line-height:1.1;
    font-weight:800;
}
.hac-filter-select{
    width:100%;
    min-height:38px;
    padding:0 30px 0 10px;
    border:1px solid #D5E6F0;
    border-radius:8px;
    background:#fff;
    color:#173F68;
    font-size:11px;
    font-weight:600;
    outline:none;
    box-shadow:none;
}
.hac-filter-select:focus{
    border-color:#2D93C8;
}
.hac-filter-actions{
    display:flex;
    align-items:center;
    gap:8px;
}
.hac-filter-apply{
    min-height:38px;
    padding:0 15px;
    border:0;
    border-radius:8px;
    background:#2D93C8;
    color:#fff;
    font-size:11px;
    font-weight:800;
    cursor:pointer;
}
.hac-filter-clear{
    display:inline-flex;
    align-items:center;
    min-height:38px;
    color:#52718A!important;
    font-size:10px;
    font-weight:700;
    text-decoration:none!important;
}

@media(max-width:767px){
    .hac-filters{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:7px;
        margin-bottom:13px;
        padding:9px;
    }
    .hac-filter-field:nth-child(3){
        grid-column:1 / -1;
    }
    .hac-filter-actions{
        grid-column:1 / -1;
        display:grid;
        grid-template-columns:1fr auto;
    }
    .hac-filter-select,
    .hac-filter-apply{
        min-height:36px;
        font-size:10px;
    }
    .hac-filter-label{
        font-size:9px;
    }
    .hac-filter-clear{
        min-height:36px;
        padding:0 5px;
        font-size:9px;
    }
}


/* =========================================================
   v1.7.0 - Filtros profesionales + colores disponibles
   ========================================================= */

/* Filtro más limpio y profesional */
.hac-filters{
    display:block!important;
    margin:0 0 20px!important;
    padding:0!important;
    border:1px solid #DCE9F1!important;
    border-radius:14px!important;
    background:#FFFFFF!important;
    box-shadow:0 7px 22px rgba(30,79,111,.07)!important;
    overflow:hidden;
}
.hac-filters-intro{
    display:flex;
    align-items:center;
    gap:10px;
    padding:11px 14px 9px;
    border-bottom:1px solid #E8F0F5;
    background:#F8FBFD;
}
.hac-filters-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:32px;
    height:32px;
    min-width:32px;
    border-radius:9px;
    background:#E8F5FB;
    color:#2D93C8;
}
.hac-filters-icon svg{width:17px;height:17px}
.hac-filters-intro>span:last-child{
    display:flex;
    min-width:0;
    flex-direction:column;
    gap:1px;
}
.hac-filters-title{
    color:#173F68;
    font-size:12px;
    line-height:1.15;
    font-weight:900;
}
.hac-filters-subtitle{
    color:#6D7E8B;
    font-size:9px;
    line-height:1.25;
    font-weight:500;
}
.hac-filter-grid{
    display:grid;
    grid-template-columns:minmax(145px,1fr) minmax(145px,1fr) minmax(180px,1.25fr) auto;
    align-items:end;
    gap:9px;
    padding:11px 12px 12px;
}
.hac-filter-field{gap:5px!important}
.hac-filter-label{
    padding-left:2px;
    font-size:9px!important;
    line-height:1!important;
    font-weight:800!important;
    color:#34566E;
}
.hac-filter-select{
    min-height:39px!important;
    padding:0 34px 0 11px!important;
    border:1px solid #D7E5EE!important;
    border-radius:9px!important;
    background-color:#fff!important;
    color:#233F53!important;
    font-size:10px!important;
    font-weight:650!important;
    transition:border-color .15s ease,box-shadow .15s ease;
}
.hac-filter-select:hover,
.hac-filter-select:focus{
    border-color:#7DB7D9!important;
    box-shadow:0 0 0 3px rgba(65,131,179,.08)!important;
}
.hac-filter-actions{
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
}
.hac-filter-apply{
    min-height:39px!important;
    padding:0 16px!important;
    border-radius:9px!important;
    box-shadow:0 5px 12px rgba(45,147,200,.17);
}
.hac-filter-clear{
    min-height:39px!important;
    padding:0 5px!important;
    white-space:nowrap;
}

/* Colores disponibles en la tarjeta */
.hac-product-meta-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    min-height:20px;
}
.hac-product-meta-row .hac-free-shipping{
    min-width:0;
    margin:0!important;
}
.hac-product-colors{
    display:inline-flex;
    align-items:center;
    justify-content:flex-end;
    gap:5px;
    min-width:0;
    margin-left:auto;
}
.hac-product-colors-label{
    color:#5E7282;
    font-size:8px;
    line-height:1;
    font-weight:700;
    white-space:nowrap;
}
.hac-color-dots{
    display:inline-flex;
    align-items:center;
    gap:3px;
}
.hac-color-dot{
    display:inline-block;
    width:13px;
    height:13px;
    flex:0 0 auto;
    border:1px solid #D2DCE4;
    border-radius:50%;
    background:var(--hac-swatch,#C7D1D9);
    box-shadow:0 1px 2px rgba(0,0,0,.08);
}
.hac-color-dot[style*="#FFFFFF"],
.hac-color-dot[style*="#ffffff"]{
    box-shadow:inset 0 0 0 1px #E4E8EB;
}
.hac-color-more{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:17px;
    height:17px;
    padding:0 3px;
    border-radius:999px;
    background:#EEF5F9;
    color:#547084;
    font-size:7px;
    line-height:1;
    font-weight:800;
}

/* Evita que tarjetas sin colores pierdan el acomodo */
.hac-product-meta-row:has(.hac-product-colors:only-child){
    justify-content:flex-end;
}

@media(max-width:767px){
    .hac-filters{margin-bottom:15px!important;border-radius:12px!important}
    .hac-filters-intro{padding:9px 10px 8px}
    .hac-filters-icon{width:29px;height:29px;min-width:29px}
    .hac-filters-title{font-size:11px}
    .hac-filters-subtitle{font-size:8px}
    .hac-filter-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:7px!important;
        padding:9px!important;
    }
    .hac-filter-field:nth-child(3){grid-column:1/-1}
    .hac-filter-actions{
        grid-column:1/-1!important;
        display:grid!important;
        grid-template-columns:1fr auto!important;
    }
    .hac-product-meta-row{
        align-items:flex-start;
        flex-wrap:wrap;
        gap:5px;
    }
    .hac-product-colors{
        margin-left:0;
    }
    .hac-product-colors-label{font-size:7px}
    .hac-color-dot{width:11px;height:11px}
}

@media(max-width:390px){
    .hac-product-colors-label{display:none}
    .hac-color-dots{gap:2px}
}


/* =========================================================
   v1.7.1 - Colores compactos en móvil
   Mantiene escritorio igual y evita alargar las tarjetas.
   ========================================================= */
@media(max-width:767px){

    .hac-product-meta-row{
        display:grid!important;
        grid-template-columns:minmax(0,1fr) auto!important;
        align-items:center!important;
        gap:6px!important;
        min-height:24px!important;
        width:100%!important;
    }

    .hac-product-meta-row .hac-free-shipping{
        display:flex!important;
        align-items:center!important;
        min-width:0!important;
        margin:0!important;
        white-space:nowrap!important;
    }

    .hac-product-colors{
        display:flex!important;
        align-items:center!important;
        justify-content:flex-end!important;
        gap:3px!important;
        margin:0!important;
        min-width:0!important;
        white-space:nowrap!important;
    }

    /* En móvil quitamos la palabra "Colores" para no sumar altura ni ruido */
    .hac-product-colors-label{
        display:none!important;
    }

    .hac-color-dots{
        display:flex!important;
        align-items:center!important;
        gap:3px!important;
        flex-wrap:nowrap!important;
    }

    .hac-color-dot{
        width:11px!important;
        height:11px!important;
        min-width:11px!important;
        border-width:1px!important;
        box-shadow:0 1px 2px rgba(0,0,0,.10)!important;
    }

    .hac-color-more{
        min-width:16px!important;
        height:16px!important;
        padding:0 3px!important;
        font-size:7px!important;
        background:#EEF5F9!important;
    }

    /* Menos separación vertical dentro de la tarjeta */
    .hac-product-body{
        gap:5px!important;
    }
}

@media(max-width:390px){
    .hac-product-meta-row{
        gap:4px!important;
    }
    .hac-color-dot{
        width:10px!important;
        height:10px!important;
        min-width:10px!important;
    }
}


/* =========================================================
   v1.7.2 - Beneficios compactos en móvil
   Solo afecta la cabecera de beneficios en pantallas móviles.
   ========================================================= */
@media(max-width:767px){
    .hac-benefits{
        display:grid!important;
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:7px!important;
        width:100%!important;
        max-width:440px!important;
        margin:12px auto 0!important;
        padding:0 4px!important;
    }

    .hac-benefit{
        display:flex!important;
        align-items:center!important;
        justify-content:flex-start!important;
        gap:7px!important;
        min-width:0!important;
        min-height:38px!important;
        padding:7px 9px!important;
        border:1px solid #DCE9F1!important;
        border-radius:9px!important;
        background:#F7FBFD!important;
        box-shadow:none!important;
        text-align:left!important;
    }

    .hac-benefit-icon{
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        width:22px!important;
        height:22px!important;
        min-width:22px!important;
        padding:0!important;
        border-radius:6px!important;
        background:#E6F4FA!important;
        color:#2D93C8!important;
        font-size:11px!important;
        line-height:1!important;
    }

    .hac-benefit-icon i,
    .hac-benefit-icon svg{
        width:11px!important;
        height:11px!important;
        font-size:11px!important;
    }

    .hac-benefit-text{
        min-width:0!important;
        font-size:10px!important;
        line-height:1.15!important;
        font-weight:750!important;
        white-space:normal!important;
        color:#173F58!important;
    }

    /* Reduce el hueco entre beneficios y subcategorías */
    .hac-category-header{
        margin-bottom:26px!important;
    }
}

@media(max-width:390px){
    .hac-benefits{
        gap:6px!important;
    }
    .hac-benefit{
        padding:6px 7px!important;
        gap:6px!important;
    }
    .hac-benefit-text{
        font-size:9px!important;
    }
}
/* ======================================
   v1.8.0 - Buscador rápido de producto
   ====================================== */
.hac-quick-finder{display:grid;grid-template-columns:210px minmax(0,1fr) 340px;align-items:stretch;margin:14px 0 22px;border:1px solid #DCE7EF;border-radius:14px;background:#fff;overflow:hidden}
.hac-qf-intro,.hac-qf-options,.hac-qf-result{padding:16px 18px}
.hac-qf-intro{display:flex;align-items:center;gap:10px;border-right:1px solid #DCE7EF}
.hac-qf-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#EEF6FB;color:#4183B3;flex:none}.hac-qf-icon svg{width:18px;height:18px}
.hac-qf-intro strong{display:block;color:#0D2A45;font-size:15px;line-height:1.08;font-weight:900}.hac-qf-intro small{display:block;margin-top:4px;color:#687C8D;font-size:10px;line-height:1.25}
.hac-qf-options{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:24px;border-right:1px solid #DCE7EF}
.hac-qf-label{display:block;margin-bottom:7px;color:#0D2A45;font-size:11px;font-weight:800}.hac-qf-colors,.hac-qf-measures{display:flex;flex-wrap:wrap;gap:8px}
.hac-qf-color,.hac-qf-measure{appearance:none;border:1px solid #C9D8E3;background:#fff;color:#0D2A45;cursor:pointer;transition:.18s ease}
.hac-qf-color{display:flex;align-items:center;gap:5px;border:0;padding:3px;border-radius:9px;font-size:10px}.hac-qf-color i{display:block;width:25px;height:25px;border:2px solid #fff;border-radius:50%;background:var(--hac-qf-color);box-shadow:0 0 0 1px #B9C9D5}
.hac-qf-color.is-active i{box-shadow:0 0 0 3px #4183B3}.hac-qf-measure{min-height:36px;padding:7px 11px;border-radius:8px;font-size:11px;font-weight:700}.hac-qf-measure.is-active{border-color:#4183B3;box-shadow:0 0 0 2px rgba(65,131,179,.16);color:#4183B3}.hac-qf-color:disabled,.hac-qf-measure:disabled{opacity:.28;cursor:not-allowed}
.hac-qf-result{display:grid;grid-template-columns:70px 1fr;gap:10px;align-items:center;background:#FBFDFE}.hac-qf-image{width:70px;height:70px;object-fit:contain}.hac-qf-product{display:flex;flex-direction:column;min-width:0}.hac-qf-name{color:#0D2A45;font-size:13px;line-height:1.1}.hac-qf-selection{margin-top:3px;color:#607486;font-size:10px}.hac-qf-price{margin-top:4px;color:#4183B3;font-size:18px;font-weight:900}.hac-qf-price del{font-size:11px;color:#8796A2}.hac-qf-stock{color:#159447;font-weight:800}
.hac-qf-cart{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;gap:5px}.hac-qf-cart button{min-height:35px;border:0;border-radius:7px;background:#4183B3;color:#fff;font-size:11px;font-weight:900;cursor:pointer}.hac-qf-cart button:disabled{background:#9BAAB5}.hac-qf-details{align-self:center;color:#4183B3;font-size:10px;font-weight:800;text-decoration:none!important}
@media(max-width:1024px){.hac-quick-finder{grid-template-columns:190px 1fr}.hac-qf-result{grid-column:1/-1;border-top:1px solid #DCE7EF}.hac-qf-options{border-right:0}}
@media(max-width:767px){.hac-quick-finder{grid-template-columns:1fr;margin:10px 0 16px}.hac-qf-intro,.hac-qf-options,.hac-qf-result{padding:12px}.hac-qf-intro{border-right:0;border-bottom:1px solid #DCE7EF}.hac-qf-options{grid-template-columns:1fr;gap:12px}.hac-qf-colors{gap:12px}.hac-qf-color{flex-direction:column}.hac-qf-measure{flex:1 1 calc(50% - 8px)}.hac-qf-result{grid-column:auto}.hac-qf-name{font-size:12px}}

/* v1.8.1 - Selector por tipo y mayor claridad visual */
.hac-quick-finder{grid-template-columns:minmax(0,1fr) 310px}
.hac-qf-intro{grid-column:1/-1;padding:12px 18px;border-right:0;border-bottom:1px solid #DCE7EF;background:#F7FBFE}
.hac-qf-options{grid-template-columns:190px 150px minmax(240px,1fr);align-items:start;padding:16px 18px;border-right:1px solid #DCE7EF}
.hac-qf-result{grid-column:auto;padding:14px 16px}
.hac-qf-types{display:flex;flex-direction:column;gap:6px}.hac-qf-type{min-height:34px;padding:6px 10px;border:1px solid #C9D8E3;border-radius:8px;background:#fff;color:#0D2A45;font-size:11px;font-weight:800;text-align:left;cursor:pointer}.hac-qf-type.is-active{border-color:#4183B3;background:#EEF6FB;color:#276F9F;box-shadow:inset 3px 0 0 #4183B3}
.hac-qf-label{font-size:12px}.hac-qf-measure{min-width:72px}.hac-qf-cart{margin-top:3px}
@media(max-width:1024px){.hac-quick-finder{grid-template-columns:1fr}.hac-qf-intro{grid-column:auto}.hac-qf-options{grid-template-columns:180px 145px 1fr;border-right:0}.hac-qf-result{grid-column:auto;border-top:1px solid #DCE7EF}}
@media(max-width:767px){.hac-qf-options{grid-template-columns:1fr}.hac-qf-types{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.hac-qf-type{text-align:center;padding:6px 4px;font-size:9px}.hac-qf-label{font-size:11px}.hac-qf-result{grid-template-columns:82px 1fr}.hac-qf-image{width:82px;height:82px}}

/* v1.8.2 - Selector compacto y estados de color protegidos */
.hac-quick-finder{margin:18px 0 28px!important;border-radius:16px!important;box-shadow:0 8px 24px rgba(13,42,69,.05)}
.hac-qf-intro{padding:15px 20px!important}.hac-qf-intro strong{font-size:17px!important}.hac-qf-intro small{font-size:11px!important}
.hac-qf-options{grid-template-columns:210px 180px minmax(210px,1fr)!important;gap:28px!important;padding:22px!important}
.hac-qf-group{min-width:0}.hac-qf-label{margin-bottom:10px!important;font-size:12px!important;letter-spacing:.01em}
.hac-qf-type,.hac-qf-measure,.hac-qf-color{font-family:inherit!important;text-transform:none!important;letter-spacing:0!important;box-shadow:none!important}
.hac-qf-type{background:#fff!important;color:#0D2A45!important;border-color:#C9D8E3!important}
.hac-qf-type:hover{background:#F7FBFE!important;border-color:#4183B3!important;color:#0D2A45!important}
.hac-qf-type.is-active{background:#4183B3!important;border-color:#4183B3!important;color:#fff!important;box-shadow:none!important}
.hac-qf-color{background:transparent!important;color:#0D2A45!important;border:0!important}.hac-qf-color:hover,.hac-qf-color:focus{background:transparent!important;color:#0D2A45!important}.hac-qf-color.is-active{background:transparent!important;color:#0D2A45!important}
.hac-qf-color.is-active i{box-shadow:0 0 0 3px #4183B3!important}.hac-qf-color:disabled{background:transparent!important}
.hac-qf-measure-select{display:block;width:100%;height:44px;padding:0 38px 0 13px;border:1px solid #C9D8E3!important;border-radius:9px!important;background-color:#fff!important;color:#0D2A45!important;font-family:inherit!important;font-size:12px!important;font-weight:800!important;box-shadow:none!important;cursor:pointer}
.hac-qf-measure-select:focus{border-color:#4183B3!important;outline:3px solid rgba(65,131,179,.14)!important}
.hac-qf-result{padding:18px!important;background:#FBFDFE!important}.hac-qf-image{width:86px!important;height:86px!important}.hac-qf-name{font-size:14px!important}.hac-qf-selection{font-size:11px!important}.hac-qf-price{font-size:20px!important}.hac-qf-stock{margin-top:2px;font-size:11px!important}
.hac-qf-cart button{background:#4183B3!important;color:#fff!important;border:0!important;min-height:40px!important}.hac-qf-cart button:hover{background:#4183B3!important;color:#fff!important;filter:brightness(.94)}
@media(max-width:1024px){.hac-qf-options{grid-template-columns:190px 160px 1fr!important;gap:18px!important}.hac-qf-result{display:grid;grid-template-columns:90px 1fr}.hac-qf-cart{grid-column:auto}}
@media(max-width:767px){.hac-quick-finder{margin:14px 0 20px!important}.hac-qf-options{grid-template-columns:1fr!important;gap:18px!important;padding:16px!important}.hac-qf-types{gap:7px}.hac-qf-result{grid-template-columns:82px 1fr;padding:15px!important}.hac-qf-cart{grid-column:1/-1}.hac-qf-image{width:78px!important;height:78px!important}.hac-qf-intro strong{font-size:15px!important}}

/* v1.8.3 - Diseño compacto aprobado */
.hac-quick-finder{grid-template-columns:minmax(0,1fr) 330px!important;margin:14px 0 22px!important;border-radius:13px!important;box-shadow:none!important}
.hac-qf-intro{display:flex!important;align-items:center!important;padding:11px 16px!important}.hac-qf-intro strong{display:inline!important;font-size:15px!important}.hac-qf-intro small{display:inline!important;margin:0 0 0 14px!important;font-size:10px!important}
.hac-qf-options{display:grid!important;grid-template-columns:250px 170px minmax(320px,1fr)!important;align-items:start!important;gap:22px!important;padding:16px!important}
.hac-qf-types{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}.hac-qf-type{min-height:38px!important;padding:6px 7px!important;text-align:center!important;font-size:10px!important}
.hac-qf-colors{gap:13px!important}.hac-qf-color{flex-direction:column!important;gap:4px!important;padding:2px!important}.hac-qf-color i{width:29px!important;height:29px!important}.hac-qf-color span{font-size:9px!important}
.hac-qf-measures{display:flex!important;flex-wrap:wrap!important;gap:7px!important}.hac-qf-measure,.hac-qf-more{min-height:38px!important;padding:7px 11px!important;border:1px solid #C9D8E3!important;border-radius:8px!important;background:#fff!important;color:#0D2A45!important;font-family:inherit!important;font-size:10px!important;font-weight:800!important;line-height:1!important;text-transform:none!important;box-shadow:none!important;cursor:pointer!important}
.hac-qf-measure:hover,.hac-qf-more:hover{border-color:#4183B3!important;background:#F7FBFE!important;color:#0D2A45!important}.hac-qf-measure.is-active{border-color:#4183B3!important;background:#4183B3!important;color:#fff!important}.hac-qf-measure.is-overflow{display:none!important}.hac-qf-measures.is-expanded .hac-qf-measure.is-overflow{display:inline-flex!important}.hac-qf-more{border-color:#4183B3!important;color:#276F9F!important}
.hac-qf-result{display:grid!important;grid-template-columns:76px minmax(0,1fr)!important;align-content:center!important;gap:9px!important;padding:14px!important;background:#FBFDFE!important}.hac-qf-image{width:76px!important;height:76px!important}.hac-qf-name{font-size:12px!important}.hac-qf-selection{font-size:9px!important}.hac-qf-price{font-size:18px!important}.hac-qf-stock{font-size:10px!important}.hac-qf-cart{grid-column:1/-1!important;grid-template-columns:auto 1fr!important;align-items:center!important;margin-top:0!important}.hac-qf-details{order:0!important}.hac-qf-cart button{order:1!important;min-height:36px!important}
@media(max-width:1100px){.hac-quick-finder{grid-template-columns:1fr!important}.hac-qf-options{grid-template-columns:220px 150px 1fr!important;border-right:0!important}.hac-qf-result{grid-template-columns:70px 1fr!important;border-top:1px solid #DCE7EF!important}.hac-qf-cart{grid-column:auto!important}}
@media(max-width:767px){.hac-qf-intro{align-items:flex-start!important}.hac-qf-intro small{display:block!important;margin:3px 0 0!important}.hac-qf-options{grid-template-columns:1fr!important;gap:15px!important;padding:14px!important}.hac-qf-types{grid-template-columns:repeat(3,minmax(0,1fr))!important}.hac-qf-type{font-size:9px!important}.hac-qf-result{grid-template-columns:76px 1fr!important}.hac-qf-cart{grid-column:1/-1!important}.hac-qf-measure,.hac-qf-more{flex:1 1 calc(33.333% - 7px)!important}}

/* v1.8.4 - Compra clara, controles Elementor y medidas exactas */
.hac-qf-measure[hidden],.hac-qf-more[hidden]{display:none!important}
.hac-quick-finder{grid-template-columns:minmax(0,1fr) 390px!important}
.hac-qf-result{grid-template-columns:88px minmax(0,1fr)!important;padding:15px 16px!important}.hac-qf-image{width:88px!important;height:88px!important}.hac-qf-name{font-size:13px!important;line-height:1.15!important}.hac-qf-selection{margin-top:4px!important}.hac-qf-price{margin-top:5px!important}
.hac-qf-cart{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important;margin-top:5px!important}.hac-qf-details{grid-column:1/-1!important;display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;gap:5px!important;min-height:22px!important;order:0!important}.hac-qf-add,.hac-qf-buy{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;min-height:40px!important;padding:7px 9px!important;border:0!important;border-radius:8px!important;color:#fff!important;font-size:10px!important;font-weight:900!important;line-height:1.1!important;white-space:normal!important;text-align:center!important}.hac-qf-add{background:#4183B3!important}.hac-qf-buy{background:#0D2A45!important}.hac-qf-add:hover,.hac-qf-buy:hover{color:#fff!important;filter:brightness(.95)}.hac-qf-add:disabled,.hac-qf-buy:disabled{opacity:.45!important;cursor:not-allowed!important}.hac-qf-action-icon{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:none!important}.hac-qf-action-icon svg{width:12px;height:12px;fill:currentColor}
@media(max-width:1180px){.hac-quick-finder{grid-template-columns:1fr!important}.hac-qf-result{grid-template-columns:90px minmax(0,1fr)!important}.hac-qf-cart{grid-column:auto!important}}
@media(max-width:767px){.hac-qf-result{grid-template-columns:78px minmax(0,1fr)!important}.hac-qf-image{width:78px!important;height:78px!important}.hac-qf-cart{grid-column:1/-1!important}.hac-qf-add,.hac-qf-buy{font-size:9px!important}}

/* v1.8.5 - Modelos gráficos y orden Reforzadas, Argollas, Triangulares */
.hac-qf-types{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}
.hac-qf-type{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;min-height:56px!important;padding:6px 9px!important;text-align:left!important;overflow:hidden!important}
.hac-qf-type-image{display:block;width:42px;height:42px;flex:0 0 auto;object-fit:contain;border-radius:6px;background:#fff}
.hac-qf-type span{display:block;min-width:0;line-height:1.15}
.hac-qf-type.is-active .hac-qf-type-image{box-shadow:0 0 0 1px rgba(255,255,255,.55)}
@media(max-width:1180px){.hac-qf-options{grid-template-columns:minmax(330px,1.1fr) 150px minmax(300px,1fr)!important}}
@media(max-width:767px){.hac-qf-types{grid-template-columns:repeat(3,minmax(0,1fr))!important}.hac-qf-type{flex-direction:column!important;justify-content:center!important;gap:4px!important;min-height:76px!important;padding:5px 3px!important;text-align:center!important}.hac-qf-type-image{width:38px;height:38px}.hac-qf-type span{font-size:8px!important}}

/* v1.8.6 - Tarjetas de modelo compactas y legibles */
.hac-qf-options{grid-template-columns:250px 145px minmax(320px,1fr)!important;gap:18px!important}
.hac-qf-types{gap:6px!important}
.hac-qf-type{flex-direction:column!important;justify-content:center!important;gap:3px!important;min-height:72px!important;padding:5px 3px!important;text-align:center!important}
.hac-qf-type-image{width:38px;height:38px}
.hac-qf-type span{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px!important;line-height:1.1!important}
.hac-qf-colors{gap:10px!important}
@media(max-width:1180px){.hac-qf-options{grid-template-columns:250px 145px minmax(280px,1fr)!important;gap:16px!important}}
@media(max-width:767px){.hac-qf-options{grid-template-columns:1fr!important}.hac-qf-type{min-height:72px!important}.hac-qf-type span{font-size:8px!important}}

/* v1.8.7 - Colores verticales para liberar espacio a las medidas */
.hac-qf-options{grid-template-columns:250px 90px minmax(360px,1fr)!important;gap:16px!important}
.hac-qf-colors{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:5px!important}
.hac-qf-color{width:100%!important;flex-direction:row!important;justify-content:flex-start!important;gap:7px!important;padding:2px!important;text-align:left!important}
.hac-qf-color i{width:22px!important;height:22px!important;flex:0 0 22px!important}
.hac-qf-color span{font-size:9px!important;white-space:nowrap!important}
@media(max-width:1180px){.hac-qf-options{grid-template-columns:250px 90px minmax(320px,1fr)!important;gap:14px!important}}
@media(max-width:767px){.hac-qf-options{grid-template-columns:1fr!important}.hac-qf-colors{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}.hac-qf-color{justify-content:center!important}}

/* v1.9.0 - Flujo Modelo, Medida y colores dentro del resultado */
.hac-qf-options{grid-template-columns:250px minmax(0,1fr)!important;gap:22px!important}
.hac-qf-result-colors{display:flex;align-items:center;gap:7px;margin-top:5px;min-width:0}
.hac-qf-result-colors>span{color:#607486;font-size:8px;font-weight:700;white-space:nowrap}
.hac-qf-result-colors .hac-qf-colors{display:flex!important;flex-direction:row!important;align-items:center!important;gap:7px!important}
.hac-qf-result-colors .hac-qf-color{display:inline-flex!important;width:auto!important;padding:1px!important;gap:3px!important}
.hac-qf-result-colors .hac-qf-color[hidden]{display:none!important}
.hac-qf-result-colors .hac-qf-color i{width:17px!important;height:17px!important;flex:0 0 17px!important}
.hac-qf-result-colors .hac-qf-color span{font-size:8px!important}
.hac-qf-measure.is-overflow{display:none!important}.hac-qf-measures.is-expanded .hac-qf-measure.is-overflow{display:inline-flex!important}
@media(max-width:1180px){.hac-qf-options{grid-template-columns:250px minmax(0,1fr)!important}}
@media(max-width:767px){.hac-qf-options{grid-template-columns:1fr!important}.hac-qf-result-colors{grid-column:1/-1;flex-wrap:wrap}.hac-qf-result-colors .hac-qf-colors{display:flex!important}}

/* v1.9.1 - Resultado con colores claros, detalles y envío */
.hac-qf-shipping{display:inline-flex!important;align-items:center!important;gap:5px!important;margin-top:4px!important;color:#169B4D;font-size:9px!important;font-weight:800!important;line-height:1.1!important}
.hac-qf-shipping[hidden]{display:none!important}
.hac-qf-shipping .hac-shipping-icon{display:inline-flex;align-items:center}.hac-qf-shipping svg{width:12px!important;height:12px!important;fill:currentColor}
.hac-qf-result-colors{grid-column:1/-1!important;display:flex!important;align-items:center!important;gap:10px!important;margin-top:2px!important;padding:6px 8px!important;border-radius:8px!important;background:#F3F8FB!important}
.hac-qf-result-colors>span{font-size:9px!important;font-weight:800!important;color:#0D2A45!important}
.hac-qf-result-colors .hac-qf-colors{flex:1!important;gap:9px!important}
.hac-qf-result-colors .hac-qf-color{min-height:25px!important;padding:2px 4px!important;border-radius:6px!important}
.hac-qf-result-colors .hac-qf-color i{width:20px!important;height:20px!important;flex-basis:20px!important}
.hac-qf-result-colors .hac-qf-color span{font-size:9px!important;color:#0D2A45!important}
.hac-qf-details{justify-self:start!important;min-height:31px!important;padding:6px 10px!important;border:1px solid #C9DDEB!important;border-radius:7px!important;background:#EEF6FB!important;color:#276F9F!important;font-size:10px!important;line-height:1!important}
.hac-qf-details:hover{background:#E3F0F8!important;color:#0D2A45!important}
@media(max-width:767px){.hac-qf-result-colors{align-items:flex-start!important;flex-direction:column!important;gap:5px!important}.hac-qf-details{min-height:34px!important}}

/* v1.10.0 - Orden compacto del catálogo */
.hac-catalog-sort{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:-10px 0 16px;padding:9px 11px;border:1px solid #DCE7EF;border-radius:10px;background:#F8FBFD}
.hac-catalog-sort label{color:#0D2A45;font-size:10px;font-weight:800;white-space:nowrap}
.hac-catalog-sort select{min-width:210px;height:35px;padding:0 34px 0 10px;border:1px solid #C9D8E3;border-radius:7px;background-color:#fff;color:#0D2A45;font-family:inherit;font-size:10px;font-weight:700;box-shadow:none}
.hac-catalog-sort button{min-height:35px;padding:7px 14px;border:0;border-radius:7px;background:#4183B3;color:#fff;font-family:inherit;font-size:10px;font-weight:900;cursor:pointer}
.hac-catalog-sort button:hover{background:#3677A6;color:#fff}
@media(max-width:767px){.hac-catalog-sort{align-items:stretch;flex-direction:column;margin:-5px 0 14px}.hac-catalog-sort select{width:100%;min-width:0}.hac-catalog-sort button{width:100%}}

/* v1.10.1 - Una fila de medidas en móvil */
@media(max-width:767px){.hac-qf-more{flex:1 1 100%!important;width:100%!important}.hac-qf-measures{gap:7px!important}}
