/*==================================================
  COSVIN FRAMEWORK
  HEADER
  Version: 2.0.0
==================================================*/

/*==================================
HEADER
==================================*/

.cosvin-header{

    position:fixed;
    inset:0 0 auto 0;

    width:100%;

    z-index:9999;

    background:var(--bg-header);

    backdrop-filter:blur(18px);

    box-shadow:var(--shadow);

}

/*==================================
HEADER MAIN
==================================*/

.cosvin-header-main{

    min-height:95px;

    display:flex;

    align-items:center;

}

.cosvin-header .cosvin-container{

    width:100%;

    max-width:var(--container);

    margin:0 auto;

    padding:0 24px;

    display:flex;

    align-items:center;

    gap:40px;

}

/*==================================
LOGO
==================================*/

.cosvin-logo{

    flex-shrink:0;

}

.cosvin-logo a{

    display:flex;

    align-items:center;

    text-decoration:none;

}

.cosvin-logo .custom-logo{

    width:300px;

    max-width:300px;

    height:auto;

    transition:transform .30s ease;

}

.cosvin-logo:hover .custom-logo{

    transform:scale(1.04);

}

.logo-text{

    color:var(--color-primary);

    font-size:2rem;

    font-weight:800;

    letter-spacing:2px;

}

/*==================================
ACCIONES
==================================*/

.cosvin-actions{

    display:flex;

    align-items:center;

    gap:22px;

    margin-left:auto;

    flex-shrink:0;

}

.cosvin-action{

    width:46px;

    height:46px;

    display:flex;

    justify-content:center;

    align-items:center;

    border-radius:50%;

    color:var(--text-white);

    text-decoration:none;

    transition:.30s;

}

.cosvin-action i{

    font-size:22px;

}

.cosvin-action:hover{

    background:rgba(255,255,255,.06);

    color:var(--color-primary);

    transform:translateY(-2px);

}

/*==================================
CARRITO
==================================*/

.cosvin-cart{

    position:relative;

}

.cosvin-cart-count{

    position:absolute;

    top:-5px;

    right:-5px;

    width:20px;

    height:20px;

    border-radius:50%;

    background:var(--color-primary);

    color:#000;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:11px;

    font-weight:700;

}

/*==================================
RESPONSIVE
==================================*/

@media (max-width:1200px){

    .cosvin-logo .custom-logo{

        width:250px;

    }

}

@media (max-width:992px){

    .cosvin-header-main{

        padding:18px 0;

    }

    .cosvin-header .cosvin-container{

        flex-wrap:wrap;

        justify-content:center;

        gap:20px;

    }

}

@media (max-width:768px){

    .cosvin-logo .custom-logo{

        width:190px;

    }

    .cosvin-actions{

        gap:14px;

    }

}

/* Tablet and zoomed desktop: keep the header in one predictable row.
   The mobile two-row header begins only at the actual phone breakpoint. */
@media (min-width:601px) and (max-width:992px){

    .cosvin-header-main{
        min-height:76px;
        padding:10px 0;
    }

    .cosvin-header .cosvin-container{
        flex-wrap:nowrap!important;
        justify-content:flex-start!important;
        gap:16px!important;
        padding:0 18px;
    }

    .cosvin-logo .custom-logo{
        width:170px;
        max-width:170px;
    }

    .cosvin-search{
        order:initial;
        flex:1 1 280px;
        width:auto;
        min-width:0;
        max-width:none;
        margin:0;
    }

    .cosvin-search-form{
        height:44px;
    }

    .cosvin-actions{
        gap:4px;
    }

    .cosvin-action{
        width:38px;
        height:38px;
    }
}

/* Specific header shortcut: a later generic page rule inherits a dark color. */
.cosvin-actions button.cosvin-action[data-cosvin-wishlist-shortcut]{
    color:#f5f7f6;
    opacity:1;
}

.cosvin-actions button.cosvin-action[data-cosvin-wishlist-shortcut] i{
    color:currentColor;
    -webkit-text-stroke:.35px currentColor;
}

.cosvin-actions button.cosvin-action[data-cosvin-wishlist-shortcut]:hover,
.cosvin-actions button.cosvin-action[data-cosvin-wishlist-shortcut]:focus-visible,
.cosvin-actions button.cosvin-action[data-cosvin-wishlist-shortcut].is-active{
    color:var(--color-primary);
    outline:0;
}

.cosvin-action[data-cosvin-wishlist-shortcut]{position:relative}
.cosvin-wishlist-count{position:absolute;top:-7px;right:-8px;display:grid;min-width:18px;height:18px;place-items:center;border:2px solid #101010;border-radius:50%;background:var(--color-primary);color:#062313;font-size:10px;font-weight:900;line-height:1}

@media (max-width:600px){

    .cosvin-header-main{

        min-height:0;

        padding:7px 0;

    }

    .cosvin-header .cosvin-container{

        justify-content:space-between;

        gap:6px 8px;

        padding:0 10px;

    }

    .cosvin-logo .custom-logo{

        width:112px;

        max-width:112px;

    }

    .cosvin-actions{

        gap:2px;

        margin-left:auto;

    }

    .cosvin-action{

        width:34px;

        height:34px;

    }

    .cosvin-action i{

        font-size:18px;

    }

    .cosvin-header-main,
    .cosvin-logo .custom-logo,
    .cosvin-action,
    .cosvin-actions,
    .cosvin-search,
    .cosvin-search-form{

        transition:padding .22s ease, width .22s ease, height .22s ease, max-width .22s ease, flex-basis .22s ease, margin .22s ease;

    }

    .cosvin-header.is-compact .cosvin-header-main{

        padding:3px 0;

    }

    .cosvin-header.is-compact .cosvin-logo .custom-logo{

        width:78px;
        max-width:78px;

    }

    .cosvin-header.is-compact .cosvin-actions{

        gap:0;

    }

    .cosvin-header.is-compact .cosvin-action{

        width:28px;
        height:28px;

    }

    .cosvin-header.is-compact .cosvin-action i{

        font-size:15px;

    }

    .cosvin-header.is-compact .cosvin-cart-count{

        top:-4px;
        right:-3px;
        width:16px;
        height:16px;
        font-size:9px;

    }

    .cosvin-header.is-compact .cosvin-search{

        order:0;
        flex:0 0 34px;
        width:34px;
        max-width:34px;
        margin:0 0 0 auto;

    }

    .cosvin-header.is-compact .cosvin-search-form{

        width:34px;
        height:32px;
        border-radius:50%;

    }

    .cosvin-header.is-compact .cosvin-search-form input{

        position:absolute;
        width:1px;
        padding:0;
        opacity:0;
        pointer-events:none;

    }

    .cosvin-header.is-compact .cosvin-search-form button{

        width:34px;
        flex:0 0 34px;

    }

    .cosvin-header.is-compact.is-search-open .cosvin-search{

        order:3;
        flex:0 0 100%;
        width:100%;
        max-width:100%;
        margin:0;

    }

    .cosvin-header.is-compact.is-search-open .cosvin-search-form{

        width:100%;
        border-radius:999px;

    }

    .cosvin-header.is-compact.is-search-open .cosvin-search-form input{

        position:static;
        width:auto;
        padding:0 12px;
        opacity:1;
        pointer-events:auto;

    }

}

html{

    scroll-padding-top:var(--cosvin-header-offset,230px);

}

main{

    padding-top:var(--cosvin-header-offset,230px);

}
.cosvin-cart-wrap{position:relative}.cosvin-cart-wrap summary{list-style:none}.cosvin-cart-wrap summary::-webkit-details-marker{display:none}.cosvin-mini-cart{position:absolute;right:0;top:calc(100% + 12px);z-index:1100;width:330px;padding:16px;border-radius:14px;background:#fff;color:#18251d;box-shadow:0 16px 40px rgba(0,0,0,.24)}.cosvin-mini-cart .woocommerce-mini-cart{max-height:310px;overflow:auto;margin:0;padding:0;list-style:none}.cosvin-mini-cart .woocommerce-mini-cart-item{display:grid;grid-template-columns:42px 1fr auto;gap:9px;padding:8px 0;border-bottom:1px solid #edf0ed;font-size:13px}.cosvin-mini-cart img{width:42px;height:42px;object-fit:cover}.cosvin-mini-cart .woocommerce-mini-cart__total{margin:12px 0;font-weight:700}.cosvin-mini-cart .button{display:inline-block;margin:8px 5px 0 0;padding:9px;border-radius:8px;background:#0b9b50;color:#fff;text-decoration:none;font-size:13px}.cosvin-mini-cart .checkout{background:#17251c}
.cosvin-mini-cart--floating{position:fixed;top:calc(var(--cosvin-header-offset,230px) + 12px);right:24px;}
