/* ===========================
   HEADER
=========================== */

.header{
    position:sticky;
    top:0;
    z-index:1000;
    background:#fff;
    border-bottom:1px solid #ececec;
}

/* ===========================
   TOP
=========================== */

.header-top{
    height:88px;
    display:flex;
    align-items:center;
}

.header-top .container{
    display:flex;
    align-items:center;
    gap:32px;
}

/* ===========================
   LOGO
=========================== */

.header-logo{
    flex-shrink:0;
    display:flex;
    align-items:center;
}

.header-logo img{
    display:block;
    height:48px;
    width:auto;
}

/* ===========================
   SEARCH
=========================== */

.header-search{
    flex:1;
    position:relative;
}

.header-search input{
    width:100%;
    height:54px;
    padding:0 70px 0 22px;

    border:1px solid #e8e8e8;
    border-radius:14px;

    background:#fff;

    font-size:15px;

    transition:.25s;
}

.header-search input:focus{
    outline:none;
    border-color:var(--primary);
}

.header-search button{
    position:absolute;

    top:5px;
    right:5px;

    width:44px;
    height:44px;

    border:none;

    border-radius:10px;

    background:var(--primary);

    color:#fff;

    cursor:pointer;

    transition:.25s;
}

.header-search button:hover{
    background:var(--primary-hover);
}

/* ===========================
   ACTIONS
=========================== */

.header-actions{
    display:flex;
    align-items:center;
    gap:28px;
}

.header-action{
    position:relative;

    display:flex;
    align-items:center;
    gap:10px;

    color:var(--text);

    text-decoration:none;

    transition:.2s;
}

.header-action:hover{
    color:var(--primary);
}

.header-action i{
    font-size:22px;
}

.action-text{
    display:flex;
    flex-direction:column;
    line-height:1.2;
    font-size:14px;
}

/* ===========================
   CART COUNT
=========================== */

#cart_counts{
    position:absolute;

    top:-6px;
    right:-8px;

    min-width:18px;
    height:18px;

    padding:0 5px;

    border-radius:30px;

    background:#ff4040;

    color:#fff;

    font-size:11px;
    font-weight:600;

    display:flex;
    align-items:center;
    justify-content:center;
}

/* ===========================
   BOTTOM
=========================== */

.header-bottom{
    border-top:1px solid #f2f2f2;
}

.header-bottom .container{

    display:flex;

    align-items:center;

    justify-content:space-between;

    height:66px;
}

/* ===========================
   CATALOG BUTTON
=========================== */

.catalog-btn{

    display:flex;

    align-items:center;

    gap:12px;

    height:48px;

    padding:0 22px;

    border:none;

    border-radius:12px;

    background:var(--primary);

    color:#fff;

    font-weight:600;

    cursor:pointer;

    transition:.25s;
}

.catalog-btn:hover{

    background:var(--primary-hover);

}

/* ===========================
   NAVIGATION
=========================== */

.header-nav{

    display:flex;

    align-items:center;

    gap:36px;

}

.header-nav a{

    color:var(--text);

    text-decoration:none;

    font-size:15px;

    transition:.2s;

}

.header-nav a:hover{

    color:var(--primary);

}

/* ===========================
   LANGUAGE
=========================== */

.header-lang{
    position:relative;
}

.header-lang-current{

    display:flex;

    align-items:center;

    gap:10px;

    background:none;

    border:none;

    cursor:pointer;

    color:var(--text);

    font-size:15px;
}

/* ===========================
   MOBILE MENU BUTTON
=========================== */

.mobile-menu-btn{

    display:none;

    width:46px;

    height:46px;

    border:none;

    background:none;

    cursor:pointer;

    font-size:22px;
}

/* ==========================
   Login Modal
========================== */

.modal-login > a{
    display:block;
    width:40px;
    height:40px;
    line-height:40px;
    color:var(--text2);
    font-size:28px;
    text-align:center;
    cursor:pointer;
}

.modal-login form{
    display:none;
    position:fixed;
    min-width:500px;
    top:50%;
    left:50%;
    margin-right:-50%;
    transform:translate(-50%,-50%);
    background:var(--bg2);
    box-shadow:0 0 20px 0 rgb(0 0 0 / 10%);
    padding:40px 80px;
    border-radius:var(--radius);
    text-align:center;
    z-index:9;
}

@media (max-width:860px){

    .modal-login form{
        min-width:100%;
        padding:30px;
        border-radius:0;
    }

}

.modal-login form > i{
    position:absolute;
    top:20px;
    right:20px;
    background:var(--bg);
    border-radius:var(--radius);
    width:35px;
    height:35px;
    line-height:35px;
    text-align:center;
    cursor:pointer;
}

.modal-login form > i:hover{
    background:var(--color1);
    color:#fff;
}

.modal-login .e-float > a{
    position:absolute;
    top:20px;
    right:15px;
    font-size:14px;
    border-bottom:1px dotted #20a8d8;
}

.modal-login_btn a{
    background:#000;
    margin-left:20px;
}

.modal-login_btn a:hover{
    background:var(--bg3);
    opacity:.8;
}

.modal-login_soc span{
    display:block;
    color:#767389;
    margin:20px 0;
}

.modal-login_soc .e-flex{
    align-items:center;
    justify-content:center;
}

.modal-login_soc .e-flex > a,
.modal-login_soc .e-flex a > img{
    width:40px;
    height:40px;
    margin:0 10px;
}