
/*=========================================================
CONTAINER
=========================================================*/

.container{
    max-width:1400px;
    margin:auto;
    padding:0 20px;
}

/*=========================================================
HEADER
=========================================================*/

.header{
    width:100%;
    background:#fff;
    position:relative;
    z-index:100;
}

/*=========================================================
HEADER TOP
=========================================================*/

.header-top{
    padding:12px 0;
}

.header-top .container{

    display:flex;
    align-items:center;
    gap:18px;

}

/*=========================================================
LOGO
=========================================================*/

.logo img{

    width:145px;
    display:block;

}

/*=========================================================
BOTON CATEGORIAS
=========================================================*/

.categories{

    position:relative;

}

.categories-btn{

    display:flex;
    align-items:center;
    gap:10px;

    padding:14px 22px;

    background:#f7f7f7;

    border-radius:14px;

    font-size:17px;
    font-weight:600;

    color:#ff7a00;

    transition:.25s;

}

.categories-btn:hover{

    background:#efefef;

}

.btn-icon{

    width:18px;
    height:18px;
    object-fit:contain;

}

/*=========================================================
MENU CATEGORIAS
=========================================================*/

.categories:hover .categories-menu{

    opacity:1;
    visibility:visible;
    transform:translateY(0);

}

.categories-menu{

    position:absolute;

    top:calc(100% + 12px);
    left:0;

    width:300px;

    background:#fff;

    border-radius:8px;

    box-shadow:0 12px 35px rgba(0,0,0,.12);

    overflow-y:auto;

    max-height:620px;

    opacity:0;
    visibility:hidden;

    transform:translateY(8px);

    transition:.25s;

    z-index:999;

}

.category-item{

    display:flex;
    align-items:center;

    gap:14px;

    height:50px;

    padding:0 18px;

    font-size:15px;

    color:#555;

    transition:.2s;

}

.category-item:hover{

    background:#f7f7f7;

    color:#ff7a00;

}

.category-item span{

    flex:1;

}

.category-icon{

    width:20px;
    height:20px;

    object-fit:contain;

    flex-shrink:0;

}

.category-arrow{

    width:10px;
    height:10px;

    opacity:.6;

}

.categories-menu::-webkit-scrollbar{

    width:7px;

}

.categories-menu::-webkit-scrollbar-thumb{

    background:#d5d5d5;
    border-radius:20px;

}

/*=========================================================
SEARCH
=========================================================*/

.search{

    flex:1;

    display:flex;

}

.search input{

    width:100%;

    height:50px;

    border:none;

    outline:none;

    background:#f5f5f5;

    border-radius:14px 0 0 14px;

    padding:0 20px;

    font-size:15px;

}

.search input::placeholder{

    color:#9d9d9d;

}

.search button{

    width:60px;

    background:#194493;

    border-radius:0 14px 14px 0;

    display:flex;
    align-items:center;
    justify-content:center;

}

.search-icon{

    width:20px;
    height:20px;

    object-fit:contain;

}

/*=========================================================
ACCIONES
=========================================================*/

.header-actions{

    display:flex;
    align-items:center;
    gap:30px;

}

.header-actions a{

    display:flex;
    align-items:center;
    gap:10px;

}

.action-icon{

    width:28px;
    height:28px;

    object-fit:contain;

}

.cart-icon{

    width:34px;
    height:34px;

    object-fit:contain;

}

.header-actions small{

    display:block;

    font-size:12px;

    color:#666;

    line-height:1.1;

}

.header-actions span{

    display:block;

    font-size:15px;

    font-weight:700;

    line-height:1.1;

}

/*=========================================================
HEADER BOTTOM
=========================================================*/

.header-bottom{

    list-style: none;
    border-top:1px solid #efefef;
    border-bottom:1px solid #efefef;

}

.header-bottom .container{

    height:56px;

    display:flex;
    align-items:center;
    justify-content:space-between;

}

/*=========================================================
DELIVERY
=========================================================*/

.delivery{

    display:flex;
    align-items:center;
    gap:10px;

    font-size:15px;

    color:#444;

}

.delivery-icon{

    width:18px;
    height:18px;

}

/*=========================================================
NAV
=========================================================*/

nav{

    display:flex;
    align-items:center;
    gap:26px;

}

nav a{

    display:flex;
    align-items:center;
    gap:5px;

    font-size:15px;
    font-weight:500;

    transition:.25s;

}

nav a:hover{

    color:#ff7a00;

}

.nav-arrow{

    width:10px;
    height:10px;

    object-fit:contain;

}

/*=========================================================
RESPONSIVE
=========================================================*/

@media (max-width:1200px){

    .header-top .container{

        flex-wrap:wrap;

    }

    .search{

        width:100%;
        order:3;

    }

    .header-actions{

        margin-left:auto;

    }

    .header-bottom .container{

        flex-direction:column;

        justify-content:center;

        gap:18px;

        height:auto;

        padding:18px 0;

    }

    nav{

        flex-wrap:wrap;
        justify-content:center;
        gap:18px;

    }

}

@media (max-width:768px){

    .categories-btn{

        display:none;

    }

    .header-actions{

        gap:16px;

    }

    .header-actions small,
    .header-actions span{

        display:none;

    }

    .logo img{

        width:120px;

    }

    .search input{

        height:44px;

        font-size:14px;

    }

    .search button{

        width:50px;

    }

    .search-icon{

        width:18px;
        height:18px;

    }

}