body{
    font-family: Arial, Helvetica, sans-serif;
    font-size: 16px;
    line-height: 22px;
    color: var(--bodyFontColor1);
    vertical-align: middle;
    background-color: var(--bodyBgColor1);
}

.clear{
    display: block;
    clear: both;
}

.cols .left{ float: left; }
.cols .right{ float: right; }

.mycontainer{
    position: relative;
    width: var(--width1);
    margin: 0 auto;
    box-sizing: border-box;
}

@media (max-width: 2560px) { .mycontainer{ width: var(--width2); } }
@media (max-width: 2048px) { .mycontainer{ width: var(--width3); } }
@media (max-width: 1840px) { .mycontainer{ width: var(--width4); } }
@media (max-width: 1440px) { .mycontainer{ width: var(--width5); } }
@media (max-width: 1280px) { .mycontainer{ width: var(--width6); padding: 0 40px; } }
@media (max-width: 980px) { .mycontainer{ padding: 0 20px; } }

/* HEADER */

header h1,
header h2,
header p{
    display: none;
}

header .upper{
    background-color: var(--headerUpperBgColor1);
    text-align: center;
    padding: 10px 0;
    color: var(--headerUpperFontColor1);
}

header .middle{
    padding: 10px 0;
    font-size: 13px;
    line-height: 16px;
    color: var(--headerMiddleFontColor1);
    background-color: var(--headerMiddleBgColor1);
}

header .bottom{
    background-color: var(--headerBottomBgColor1);
    padding: 10px 0;
}

header ul li{ display: inline-block;}

header .middle .left a{
    color: var(--headerMiddleFontColor1);
    transition: color var(--menuSpeed1);
}
header .middle .left a:hover{ color: var(--headerMiddleFontColor2); } 

/* LINK MENU MOBILE */

header .bottom .links li{
    padding-left: 10px;
    display: none;
}

header .bottom .links li a{
    color: var(--headerBottomFontColor1);
    transition: color var(--menuSpeed1);
}

header .bottom .links li a:hover{ color: var(--headerBottomFontColor2); }

@media (max-width: 768px) {

    header .bottom ul.menu{
        position: absolute;
        top: 0;
        height: 0px;
        overflow: hidden;
    }
    header .bottom .links li:first-child{ display: inline-block; }
}

/* LANG - CONTACT - ACCOUNT - CART */

header #mhl1 img{
    position: relative;
    top: -1px;
    height: 14px;
}

header .middle ul.right li{ padding: 0 0 0 20px; } 

header .middle ul.right li a{
    color: var(--headerMiddleFontColor1);
    transition: color var(--menuSpeed1);
}

header .middle ul.right li a:hover{ color: var(--headerMiddleFontColor2); } 

header .setLang{
    position: absolute;
    top: -10px;
    left: 0;
    background-color: var(--headerMiddleBgColor1);
    height: 0px;
    width: 100%;
    overflow: hidden;
    display: block;
    z-index: 100;
    text-align: center;
    box-sizing: border-box;
    padding-left: var(--posSlide2);
    transition: height var(--menuSpeed1), padding var(--menuSpeed3);
}

header .setLang img{
    position: relative;
    top: 1px;
    height: 14px;
    float: right;
    padding-left: 10px;
    opacity: 0.3;
    transition: opacity var(--menuSpeed1);
}

header .setLang a:hover img,
header .setLang a.active img{ opacity: 1; }

header .setLang li{ 
    display: inline-block; 
    padding: 10px !important;
    opacity: 0;
    transition: opacity var(--menuSpeed2);
}

header .setLang li:last-child{
    position: absolute;
    top: 0;
    right: -10px;
    transition: color var(--menuSpeed1);
}

header .setLang li:last-child:hover{ 
    color: var(--headerMiddleFontColor2);
    cursor: pointer;
}

@media (max-width: 1280px) {

    header .setLang li:last-child{ right: 30px; }
}

@media (max-width: 980px) {
    #adminLogin{
        display: none;
    }
    header .setLang li:last-child{ right: 10px; }
}

@media (max-width: 680px) {

    header .setLang li a{
        width: 26px;
        overflow: hidden;
        display: inline-block;
        text-indent: -999px;
    }
}

@media (max-width: 480px) {
    header .setLang li{ 
        padding-left: 5px !important;
        padding-right: 5px !important;
    }
}

#mhl4 div{ position: relative; }

#mhl4 img{
    position: absolute;
    top: 0;
    left: 0;
    right: 25px;
    height: 20px;
    display: block;
}

#mhl4 span{
    position: absolute;
    top: 1px;
    right: 0;
    padding: 3px 5px 4px 4px;
    font-size: 10px;
    line-height: 12px;
    font-weight: bold;
    color: var(--headerMiddleFontColor3);
    text-align: center;
    background-color: var(--headerMiddleBgColor2);
    border-radius: 100%;
    box-sizing: border-box;
    display: block;
    overflow: hidden;
}

#accountMenu{ position: relative; } /* account menu */

#accountMenu div{
    position: absolute;
    top: 26px;
    right: 0;
    background-color: var(--headerMiddleBgColor3);
    width: 240px;
    height: 0;
    overflow: hidden;
    display: block;
    transition: height var(--menuSpeed1);
    z-index: 40;
    font-size: 13px;
    line-height: 15px;
    padding: 0 20px;
    box-sizing: border-box;
    color: var(--headerMiddleFontColor4);
    border: 0px solid var(--headerMiddleBorderColor1);
}

#accountMenu div ul{
    position: relative;
    top: var(--posSlide1);
    opacity: 0;
    transition: opacity var(--menuSpeed2), top var(--menuSpeed3);
    padding: 10px 0 20px 0;
}

#accountMenu div ul li{
    display: block;
    padding: 10px 0 0 0;
    margin: 0;
}

#accountMenu div ul li a{
    display: block;
    color: var(--headerMiddleFontColor4) !important;
}
#accountMenu div ul li a:hover{ color: var(--headerMiddleFontColor5) !important; }

#accountMenu div ul li.separator{
    background-color: var(--headerMiddleBgColor3);
    padding: 10px 0 0 0;
    margin: 0;
    border: 0px solid var(--headerMiddleBorderColor2);
}

#accountMenu div ul li.separator.top{
    border-top-width: 1px;
    margin-top: 10px;
}
#accountMenu div ul li.separator.bottom{
    border-bottom-width: 1px;
    padding-bottom: 10px;
}

/* LOGO */
header .bottom .logo img{
    height: var(--logoHeight1);
    margin: var(--logoMargin1) 0 var(--logoMargin2) 0;
}

@media (max-width: 768px) {

    header .bottom .logo img{
        height: var(--logoHeight2);
        margin: var(--logoMargin3) 0 var(--logoMargin4) 0 !important;
    }
}
/* NAV */
header nav{
    padding-top: 0px;
    font-size: 14px;
    line-height: 16px;
}

header nav .menu li{ padding-left: 20px; }

header nav .menu li a{
    color: var(--headerBottomFontColor1);
    transition: color var(--menuSpeed1);
}
header nav .menu li a:hover{ color: var(--headerBottomFontColor2); }

header .mobileMenu{ display: none; }

@media (max-width: 768px) {

    header .mobileMenu{ 
        display: block; 
        margin-bottom: -2px; 
    }

    header .bottom .mobileMenu ul.menu{
        position: relative;
        clear: both;
        float: none;
        height: 0px;
        transition: height var(--menuSpeed1);
        margin: 0;
        box-sizing: border-box;
    }

    header .bottom .mobileMenu ul.menu li{
        display: block;
        text-align: left;
        padding: 0 !important;
        background-color: var(--headerBottomBgColor3);
    }

    header .bottom .mobileMenu ul.menu{
        position: relative;
        top: var(--logoMargin2);
        border-top: 1px solid var(--headerBottomBorderColor2);
        border-bottom: 1px solid var(--headerBottomBorderColor2);
    }

    header .bottom .mobileMenu ul.menu li a{
        position: relative;
        display: block;
        color: var(--headerBottomFontColor5) !important;
        transition: color var(--menuSpeed1);
        padding: 10px 0 !important;
        border-top: 1px solid var(--headerBottomBorderColor3);
        margin: 0 10px;
    }

    header .bottom .mobileMenu ul.menu li:first-child a{ border-top: none; }

    header .bottom .mobileMenu ul.menu li a:hover{ color: var(--headerBottomFontColor6) !important; }
    
    header .bottom .mobileMenu ul.menu li i{ float: right; }

}
/* SUB-MENU */

header .subMenu{
    position: absolute;
    top: 0;
    left: 0;
    background-color: var(--headerBottomBgColor2);
    width: 100%;
    height: 0px;
    overflow: hidden;
    display: block;
    transition: height var(--menuSpeed1);
    z-index: 20;
    font-size: 13px;
    line-height: 15px;
    padding: 0 20px;
    box-sizing: border-box;
    color: var(--headerBottomFontColor3);
}

header nav li.subBox .subMenu{
    top: 0;
    width: 0;
    min-width: 200px;
}

header nav li.subBox .subMenu li{ padding-bottom: 10px; }
header nav li.subBox .subMenu li:first-child{ padding-top: 20px !important; }
header nav li.subBox .subMenu li:last-child{ padding-bottom: 20px !important; }

header .subMenu li{
    padding: 0 0 10px 0 !important;
    display: block;
}

header .subMenu li a{
    color: var(--headerBottomFontColor3) !important;
}

header .subMenu .noSub li a{
    white-space: nowrap;
}

header .subMenu li a:hover{
    color: var(--headerBottomFontColor4) !important;
}

header nav ul.subMenu ul{
    display: block;
    float: left;
    width: 25%;
    box-sizing: border-box;
    padding: 0 40px 40px 40px;
}

header nav ul.subMenu ul li{ display: block; }

header nav ul.subMenu ul:not(.imageLink):nth-of-type(1) li:first-child,
header nav ul.subMenu ul:not(.imageLink):nth-of-type(2) li:first-child,
header nav ul.subMenu ul:not(.imageLink):nth-of-type(3) li:first-child,
header nav ul.subMenu ul:not(.imageLink):nth-of-type(4) li:first-child{  padding-top: 60px !important; }

@media (max-width: 1280px) {
    header nav ul.subMenu ul{ padding: 0 20px 40px 20px; }
}

@media (max-width: 980px) {

    header nav ul.subMenu ul{
        width: 33%;
    }
    header nav ul.subMenu ul:nth-of-type(4) li:first-child{  padding-top: 0 !important; }
}

header .subMenu ul li.title{
    font-weight: bold;
    border-bottom: 1px solid var(--headerBottomBorderColor1);
    margin-bottom: 12px;
}

@media (max-width: 768px) {

    header .subMenu{ width: 0px !important; }

    header .bottom .mobileMenu .subMenu{
        position: relative;
        top: 1px;
        left: 0;
        width: 100% !important;
        margin: 0;
        padding: 0 10px;
        background-color: var(--headerBottomBgColor3);
    }

    header .bottom  ul.subMenu ul{
        display: block;
        float: none;
        width: 100%;
    }

    header .bottom  ul.subMenu ul li{
        padding: 0 !important;
        margin: 0 !important;
    }

    header .bottom  ul.subMenu ul li a{
        padding: 0 !important;
        margin: 0 !important;
    }

    header .bottom  ul.subMenu ul li.title{
        padding: 10px 0 10px 10px !important;
        border-bottom: none;
        border-top: 1px solid var(--headerBottomBorderColor3);
        font-weight: normal;
        cursor: pointer;
        transition: color var(--menuSpeed1);
        color: var(--headerBottomFontColor5);
    }

    header .bottom  ul.subMenu ul li.title:hover{ color: var(--headerBottomFontColor6) !important; }

    header .bottom .mobileMenu ul.menu ul.subMenu ul:not(.noSub) li a{
        padding: 10px 10px 10px 20px !important;
        color: var(--headerBottomFontColor5) !important;
    }

    header .bottom .mobileMenu ul.menu ul.subMenu li.subLink a{ border-top: none ; }
    header .bottom .mobileMenu ul.menu ul.subMenu li.subLink:first-child a{ padding-top: 5px !important; }
    header .bottom .mobileMenu ul.menu ul.subMenu li.subLink:last-child a{ padding-bottom: 20px !important; }

    header .bottom .mobileMenu ul.menu ul.subMenu ul li a:hover{
        color: var(--headerBottomFontColor6) !important;
    }

    header .bottom .mobileMenu li.close{ display: none !important; }

    header .bottom .mobileMenu li.title.open{
        font-weight: bold;
        cursor: default;
    }

    header .bottom  ul.subMenu ul li.title.open:hover{ color: var(--headerBottomFontColor5) !important; }

    header .bottom .mobileMenu ul.menu ul.subMenu ul:not(.noSub):last-child li:last-child{ margin-bottom: 10px !important; }

    header .bottom .mobileMenu ul.menu ul.subMenu ul.noSub li{ padding-left: 10px !important; }

    header .bottom .mobileMenu ul.menu li a.open{
        font-weight: bold !important;
        cursor: default;
    }
    header .bottom .mobileMenu ul.menu li a.open:hover{ color: var(--headerBottomFontColor5) !important; }
    header .bottom .mobileMenu ul.menu li a.open i{ display: none !important; }
}

header nav ul.subMenu ul.noSub,
header nav li.smWrap,
header nav li.subBox .subMenu li.smWrap{
    padding: 0 !important;
    display: block !important;
    float: none !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

header nav ul.subMenu ul.noSub:nth-of-type(1) li:first-child,
header nav ul.subMenu ul.noSub:nth-of-type(2) li:first-child,
header nav ul.subMenu ul.noSub:nth-of-type(3) li:first-child,
header nav ul.subMenu ul.noSub:nth-of-type(4) li:first-child{  padding-top: 20px !important; }

header nav li.smWrap{
    position: relative;
    top: var(--posSlide1);
    opacity: 0;
    transition: opacity var(--menuSpeed2), top  var(--menuSpeed3);
}

header ul.subMenu .imageLink{
    float: right;
    width: 25%;
    box-sizing: border-box;
    margin: 0 !important;
    padding: 0 40px 0 0 !important;
}

@media (max-width: 1280px) {
    header ul.subMenu .imageLink{
        padding: 0 20px 0 0 !important;
    }
}

header ul.subMenu .imageLink li{
    width: 100%;
    height: 100%;
    display: block;
    float: left;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box;
}

header ul.subMenu .imageLink.x1 li{
    width: 100%;
    height: 100%;
    display: none;
}
header ul.subMenu .imageLink.x1 li:first-child{ display: block; }

header ul.subMenu .imageLink.x2 li{
    width: 100%;
    height: 50%;
    display: none;
}
header ul.subMenu .imageLink.x2 li:first-child{ display: block; }
header ul.subMenu .imageLink.x2 li:nth-child(2){ display: block; }

header ul.subMenu .imageLink.x2v li{
    width: 50%;
    height: 100%;
    display: none;
}
header ul.subMenu .imageLink.x2v li:first-child{ display: block; }
header ul.subMenu .imageLink.x2v li:nth-child(2){ display: block; }

header ul.subMenu .imageLink.x4 li{
    width: 50%;
    height: 50%;
    display: none;
}
header ul.subMenu .imageLink.x4 li:first-child{ display: block; }
header ul.subMenu .imageLink.x4 li:nth-child(2){ display: block; }
header ul.subMenu .imageLink.x4 li:nth-child(3){ display: block; }
header ul.subMenu .imageLink.x4 li:nth-child(4){ display: block; }

header ul.subMenu.fullImage .imageLink{
    float: right;
    width: 100%;
    text-align: center;
    vertical-align: top;
}

header ul.subMenu.fullImage .imageLink li{
    float: none;
    width: 10%;
    display: inline-block;
    padding: 20px !important;
    vertical-align: top;
}

@media (min-width: 1280px) and (max-width: 1440px){
    
    header ul.subMenu .imageLink.x2v li,
    header ul.subMenu .imageLink.x4 li{
        width: 100%;
        height: 100%;
        display: none !important;
    }

    header ul.subMenu .imageLink.x2v li:first-child,
    header ul.subMenu .imageLink.x4 li:first-child{ display: block !important; } 

}

@media (max-width: 2048px) {
    header ul.subMenu.fullImage .imageLink li{
        width: 12%;
    }    
}


@media (max-width: 1440px) {
    header ul.subMenu.fullImage .imageLink li{
        width: 14%;
    }    
}

@media (max-width: 1280px) {
    header ul.subMenu .imageLink{ width: 50%; }

    header ul.subMenu.fullImage .imageLink li{
        width: 16%;
    }    
}

@media (max-width: 980px) {
    header ul.subMenu:not(.fullImage) .imageLink{ display: none; }

    header ul.subMenu.fullImage .imageLink li{
        width: 18%;
    }    
}

@media (min-width: 768px) {
    header ul.subMenu.fullImage ul:not(.imageLink){ display: none; }
}

@media (max-width: 768px) {
    header ul.subMenu .imageLink{ display: none !important; }
}

header ul.subMenu .imageLink li a{
    display: block;
    text-align: center;
    width: 100%;
}

header ul.subMenu .imageLink li a img{
    display: block;
    width: 100%;
}

/* FOOTER */

footer .upper{
    background-color: var(--footerUpperBgColor1);
    padding: 60px 0;
    color: var(--footerUpperFontColor1);
}

footer .upper a{
    color: var(--footerUpperFontColor1);
    transition: color var(--menuSpeed1);
}

footer .upper a:hover{
    color: var(--footerUpperFontColor2);
}

footer .upper ul.social{
    position: absolute;
    top: 8px;
    right: 0px;
    z-index: 20;
}

footer .upper ul.social li{
    display: inline;
    padding-left: 10px;
}

footer .upper .logo{
    position: absolute;
    top: 0px;
    left: 0px;
}

footer .upper .logo img{ width: 120px; }

footer .upper .top{
    position: absolute;
    right: 0px;
    bottom: 0px;
}

footer .upper .menu{ margin: 0 160px 20px 200px; }

footer .upper .menu ul{
    float: left;
    width: 33%;
    box-sizing: border-box;
    padding-right: 40px;
    font-size: 13px;
}

@media (min-width: 1840px){
    footer .upper .menu{ margin: 0 200px 20px 300px; }

    footer .upper .menu ul{ padding-right: 160px; }
}

footer .upper .menu ul li{
    padding-top: 6px;
}

footer .upper .menu ul li.title{
    font-weight: bold;
    padding-bottom: 6px;
    border-bottom: 1px solid var(--footerUpperBorderColor1);
}

footer.small .upper{ padding: 10px 0; }

footer.small .upper .logo{
    position: relative;
    top: 0px;
    left: 0px;
    text-align: center;
    padding-bottom: 30px;       
}
footer.small .upper .top{
    top: 0px;
    bottom: auto;
    z-index: 2001;
}
footer.small .upper ul.social{
    right: auto;
    left: 0px;
    z-index: 2000;
}

footer.small .upper ul.social li{
    padding: 0 10px 0 0;
}

footer.small .upper .menu{ margin: 0px; }

footer.small .upper .menu ul{
    width: 100%;
    text-align: center;
    padding-bottom: 30px;
    padding-right: 0 !important;
}

footer.small .upper .menu ul li{
    display: inline-block;
    padding: 0 10px;
}

@media (max-width: 1280px) {
    footer .upper{
        padding: 30px 0;
    }

    footer .upper .logo{
        left: 40px;
    }

    footer .upper ul.social{
        right: 40px !important;
    }

    footer.small .upper ul.social{
        left: 40px !important;
    }

    footer .upper .top{
        right: 40px;
    }
}

@media (max-width: 980px) {

    footer .upper .menu{ margin: 0 100px 20px 180px; }

    footer .upper .logo{
        left: 20px;
    }
    footer .upper ul.social{
        right: 20px !important;
    }
    footer.small .upper ul.social{
        left: 20px !important;
    }
    footer .upper .top{
        right: 20px;
    }
}

@media (max-width: 768px) {

    footer .mycontainer{ padding: 0 10px; }

    footer .upper{ 
        padding-top: 0 !important; 
        padding-bottom: 10px !important; 
    }

    footer:not(.nolink) .upper .logo{ display: none; }

    footer:not(.nolink) .upper ul.social{
        left: 0px !important;
        top: auto;
        bottom: 2px;
    }
    footer.small .upper ul.social{
        left: 10px !important;
    }
    footer:not(.nolink) .upper .top{
        right: 10px;
        top: auto !important;
        bottom: 4px !important;
    }
    footer.nolink .upper .top{
        top: 5px !important;
    }

    footer .upper .menu{
        margin: 0px;
        padding-bottom: 30px;
    }

    footer.small .upper .menu{ padding-bottom: 0; }


    footer .upper .menu ul{
        padding-top: 0;
        padding-right: 0;
        float: none;
        width: 100%;
    }

    footer .upper .menu ul li{
        display: block !important;
        padding: 10px 0 !important;
        border-bottom: 1px solid var(--footerUpperBorderColor1);
        text-align: left;
    }


    footer .upper .menu ul li a{ display: block; }

    footer .upper .menu ul:first-child{ padding-top: 0px; }
}

/* BOTTOM FOOTER */

footer .bottom{
    background-color: var(--footerBottomBgColor1);
    padding: 15px 0;
    font-size: 13px;
    line-height: 18px;
    color: var(--footerBottomFontColor1);

}

footer .bottom p.left.last{ clear: left; }

footer .bottom .left a{
    color: var(--footerUpperFontColor1);
    transition: color var(--menuSpeed1);
}

footer .bottom .left a:hover{
    color: var(--footerUpperFontColor2);
}

footer .bottom ul li{
    display: block;
    float: right;
    padding-left: 25px;
}

footer .bottom ul li img{ height: 35px; }

@media (max-width: 980px) {
    footer .bottom ul{
        width: 100%;
        float: left !important;
        clear: left;
        text-align: center;
        line-height: 16px;
        padding: 0 10px 10px 10px;
        box-sizing: border-box;
    }

    footer .bottom ul li{
        display: inline-block;
        float: none;
        padding: 0 12px;
    }

    footer .bottom ul li img{ height: 30px; }

    footer .bottom .payment ~ p{
        width: 100%;
        text-align: center;
    }

}

@media (max-width: 580px) {

    footer .bottom p{
        width: 100%;
        text-align: center;
    }

}