
:root{
    --font-global: 'DM Sans', sans-serif;
    --font-alt: 'DM Sans', sans-serif;
    --font-serif: Georgia, 'Times New Roman', Times, serif;
    --full-wrapper-margin-x: 30px;
    --container-width: 1350px;
    --section-padding-y: 120px;
    --menu-bar-height: 77px;
    --menu-bar-height-scrolled: 65px;
    --color-dark-1: #010101;
    --color-dark-2: #171717;
    --color-dark-3: #272727;
    --color-dark-3a: #333;
    --color-dark-4: #555;
    --color-gray-1: #757575;
    --color-gray-2: #888;
    --color-gray-3: #999;
    --color-gray-light-1: #f1f1f1;
    --color-gray-light-2: #f7f7f7;
    --color-gray-light-3: #e5e5e5;
    --color-gray-light-4: #d5d5d5;
    --color-gray-light-5: #ccc;
    --color-gray-light-6: #bbb;
    --color-dark-mode-gray-1: rgba(255,255,255, .7);
    --color-dark-mode-gray-2: rgba(255,255,255, .1275);
    --color-primary-1: #4567ed;
    --color-primary-1-a: #375ae3;    
    --color-primary-light-1: #e3effe;
    --color-primary-green-1: #3ddf70;
    --color-primary-light-1-a: #bcd1f1;
    --color-primary-2: #7752e7;
    --color-primary-light-2: #e7defe;
    --color-primary-3: #b947d9;
    --color-primary-light-3: #f7defe;
    --color-primary-4: #e748b1;
    --color-primary-light-4: #ffe1f5; 
    --color-secondary-1: #fbe3a1;   
    --gradient-primary-1: linear-gradient( 90deg, var(--color-primary-4) 0%, var(--color-primary-3) 33%, var(--color-primary-2) 67%, var(--color-primary-1) 100%);
    --gradient-primary-1-a: linear-gradient( 90deg, var(--color-primary-4) 25%, var(--color-primary-3) 40%, var(--color-primary-2) 60%, var(--color-primary-1) 75%);
    --gradient-primary-1-b: linear-gradient( 45deg, var(--color-primary-4) 0%, var(--color-primary-3) 33%, var(--color-primary-2) 67%, var(--color-primary-1) 100%);
    --gradient-primary-1-c: linear-gradient( 0deg, var(--color-primary-4) 0%, var(--color-primary-3) 33%, var(--color-primary-2) 67%, var(--color-primary-1) 100%);
    --gradient-gray-light-1: linear-gradient(0deg, #f5f5f5 0%, #fff 100%);
    --gradient-gray-light-2: linear-gradient(0deg, #fff 0%, #f5f5f5 100%);
    --gradient-dark-alpha-1: linear-gradient( 90deg, var(--color-dark-1) 40%, transparent 87%);
    --gradient-dark-alpha-2: linear-gradient( 90deg, transparent 13%, var(--color-dark-1) 60%);
    --gradient-primary-alpha-1: linear-gradient( 90deg, var(--color-primary-1) 40%, transparent 87%);
    --gradient-primary-alpha-2: linear-gradient( 90deg, transparent 13%, var(--color-primary-1) 60%);
    --border-radius-default: 4px;
    --border-radius-large: 30px;
    --box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.05),0px 1px 1px 0px rgba(0, 0, 0, 0.03),0px 3px 5px 0px rgba(0, 0, 0, 0.03);
    --box-shadow-strong: 0px 5px 10px 0px rgba(0, 0, 0, 0.08),0px 1px 1px 0px rgba(0, 0, 0, 0.06),0px 3px 5px 0px rgba(0, 0, 0, 0.06);
    --box-shadow-block: 0px 3px 50px 0px rgba(0, 0, 0, 0.05);
    --box-shadow-block-strong: 0px 3px 50px 0px rgba(0, 0, 0, 0.15);  
    --transition-default: all 0.27s cubic-bezier(0, 0, 0.58, 1);
    --ease-default: cubic-bezier(0, 0, 0.58, 1);
    --ease-out-long: cubic-bezier(0,.5,0,1);
    --ease-out-medium: cubic-bezier(0,.57,.55,1);
    --ease-out-short: cubic-bezier(.15,.7,.78,1);
    --ease-elastic-1: cubic-bezier(0.68,-0.55,0.27,1.55);
    --ease-elastic-2: cubic-bezier(0.68,-3,0.27,5);
}

.icons{
    width: 20px;
    height: 20px;
}
.stick-fixed{
    position: fixed !important;
    top: 0;
    left: 0;
}
.block-sticky{
    position: sticky;
    top: calc(var(--menu-bar-height-scrolled) + 40px);
    left: 0;
}
.round{
    border-radius: var(--border-radius-default) !important;
}
.round-large{
    border-radius: var(--border-radius-large) !important;
}
.circle{
    border-radius: 0px !important;
}
.circle-large{
    border-radius: 700px !important;
}
.clearlist, .clearlist li{
    list-style: none;
    padding: 0;
    margin: 0;
    background: none;
}

.clearlinks a{
    text-decoration: none;
    color: unset;
}
.clearlinks a:hover{
    color: unset !important;
}
.full-wrapper{
    margin: 0 var(--full-wrapper-margin-x);
}



/* ==============================
Classic menu bar
============================== */


/*
* Logo (in navigation panel)
*/

.nav-logo-wrap{
    position: absolute;
    top: 0;
    left: 0;
    flex-shrink: 0;
    z-index: 1;
}
.nav-logo-wrap .logo{
    display: flex;
    align-items: center;
    max-width: 188px;
    height: var(--menu-bar-height);
    transition: all 0.2s cubic-bezier(0.000, 0.000, 0.580, 1.000);
}
.nav-logo-wrap .logo img{
    max-height: 100%;
}
.nav-logo-wrap .logo:before,
.nav-logo-wrap .logo:after{
    display: none;
}
.logo,
a.logo:hover{
    font-size: 18px;
    font-weight: 600 !important;
    text-decoration: none;
    color: rgba(0,0,0, .9);
    
}

.img-logo{
    transition: ease-in-out 0.5s;
}
.img-logo:hover{
    filter: invert(10%) sepia(7%) saturate(4291%) hue-rotate(76deg) brightness(93%) contrast(88%);
}

/*
* Desktop nav
*/

.main-nav{
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: stretch;
    width: 100%;
    height: var(--menu-bar-height) !important;
    position: relative;
    top: 0;
    left: 0;
    text-align: left;
    background: rgba(255,255,255, .98);
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.025),0px 1px 1px 0px rgba(0, 0, 0, 0.01),0px 0px 50px 0px rgba(0, 0, 0, 0.07);
    z-index: 1030;
    transition: all 0.2s var(--ease-default);
}
.main-nav.sticky{
    position: -webkit-sticky;
    position: sticky;
    top: 0;
}
.small-height{
    height: var(--menu-bar-height-scrolled) !important;
}
.main-nav-sub{
    flex-grow: 1;
    display: flex;
    position: relative;
}
.inner-nav{
    flex-grow: 1;
    position: relative;
}
.inner-nav ul{
    margin: auto;
    font-size: 17px;
    font-weight: 500;
    text-align: center;
    letter-spacing: 0;
    line-height: 1.3;    
}
.inner-nav ul i.align-center:before{
    display: block;
    margin-top: -0.15em;
    transform: translateY(13.5%);
}
.inner-nav ul i.mi-mobile:before{
    margin-left: -0.25em;
    margin-right: -0.25em;
}
.inner-nav > ul{
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
}
.inner-nav ul li{
    margin: 0 20px;
    position: relative;
}
.inner-nav ul li:first-child{
    margin-left: 0;
}
.inner-nav ul li:last-child{
    margin-right: 0;
}
.inner-nav > ul.items-end{
    position: absolute;
    top: 0;
    right: 0;
}
.inner-nav ul li a{
    display: inline-block;
    text-decoration: none;  
    transition: all 0.2s cubic-bezier(0.000, 0.000, 0.580, 1.000);
}
.inner-nav > ul > li > a{
    display: table-cell;
    vertical-align: middle;
    height: var(--menu-bar-height); 
    opacity: .65;     
}
.main-nav:not(.mobile-on).small-height .inner-nav > ul > li > a{
    height: var(--menu-bar-height-scrolled) !important;
}
.inner-nav ul li a:hover,
.inner-nav ul li a.active{
    color: var(--color-dark-1);
    opacity: 1;
    text-decoration: none;
}
.body-scrolled .scrolled-hidden{
    display: none;
}
.scrolled-visible{
    display: none;
}
.body-scrolled .scrolled-visible{
    display: block;
}
.mobile-on .scrolled-hidden,
.mobile-on .body-scrolled .scrolled-hidden{
    display: block;
}
.mobile-on .scrolled-visible{
    display: none;
}


/* Menu sub */

.inner-nav .mi-chevron-down{
    margin-left: -0.19em;
    font-size: 16px;
    transition: all 0.2s var(--ease-default), color 0 var(--ease-default);
}
.mi-chevron-right{
    transition: var(--transition-default);
}
.mn-sub{
    display: none;
    width: 220px;
    position: absolute;
    top: 100%;
    left: 0;
    padding: 0;
    background: rgba(35,35,35, .9927);
    border-radius: 0 0 3px 3px;
}
.light-content .mn-sub{
    background: rgba(50,50,50, .9927);
}
.transparent .mn-sub,
.inner-nav .mn-sub .mn-sub,
.mn-has-multi a{
    border-radius: 3px;  
}
.transparent .mn-sub > li:first-child > a,
.transparent .mn-sub > li:first-child > a{
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
}
.mn-sub > li:last-child > a{
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px;
}
.main-nav.mobile-on.transparent .mn-sub > li:first-child > a,
.main-nav.mobile-on.transparent .mn-sub > li:first-child > a,
.main-nav.mobile-on .mn-sub > li:last-child > a{
    border-radius: 0;
}
.mn-sub li{
    display: block;
    width: 100%;
    margin: 0 !important;
}
.inner-nav ul li .mn-sub li a,
.mn-group-title{
    display: block;
    width: 100%;
    height: auto !important;
    line-height: 1.3 !important;
    position: relative;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0;
    padding: 12px 15px;
    font-size: 15px;
    font-weight: 400;
    text-align: left;
    text-transform: none;    
    border-left: none;
    border-right: none;
    letter-spacing: 0;
    color: var(--color-gray-light-5) !important;
    outline-offset: -2px !important;
    transition: var(--transition-default);
}
.mobile-on .mn-has-multi > li:last-child > a{
    border-bottom: 1px solid rgba(255,255,255, .065) !important;
}
.mn-sub li a:hover,
.inner-nav ul li .mn-sub li a:hover,
.mn-sub li a.active{
    background: rgba(255,255,255, .09);
    color: var(--color-gray-light-1) !important;
}
.mn-sub:not(.mn-has-multi) li ul{
    left: 100%;
    right: auto;
    top: 0;
    border-left: 1px solid rgba(255,255,255, .07);
}
.inner-nav li .mn-sub.to-left{
    left: auto;
    right: 0;
}
.inner-nav > ul > li:last-child .mn-sub li ul,
.inner-nav > li:last-child .mn-sub li ul,
.inner-nav li .mn-sub li ul.to-left{
    left: auto;
    right: 100%;
    top: 0;
    border-left: none;
    border-right: 1px solid rgba(255,255,255, .07);
}
.mobile-on .inner-nav li:last-child .mn-sub li ul{
    left: auto;
    right: auto;
    top: 0;
}
.mn-wrap{
    padding: 8px;
}

/* Menu sub multi */

.mn-has-multi{
    width: auto !important;
    padding: 15px;
    text-align: left;
    white-space: nowrap;
}
.mn-sub-multi{
    width: 200px !important;
    overflow: hidden;
    white-space: normal;
    float: none !important;
    display: inline-block !important;
    vertical-align: top;
}
.mn-sub-multi > ul{
    width: auto;
    margin: 0;
    padding: 0;
    float: none;
}
.mn-group-title{
    font-size: 18px !important;
}
.mn-group-title:hover{
    background: none !important;
}
.mobile-on .mn-sub-multi > ul{
    left: auto;
    right: auto;
    border: none;
}
.mobile-on .mn-sub-multi{
    display: block;
    width: 100% !important;
}
.mobile-on .mn-sub-multi > ul > li:last-child > a{
    border: none !important;
}
.mobile-on .mn-sub:not(.mn-has-multi) > li:last-child > a{
    border: none !important;
}
.mobile-on .mn-sub-multi:last-child > ul{
    border-bottom: none !important;
}

/*
* Mobile nav
*/

.mobile-on .desktop-nav{
    display: none;
    width: 100%;
    position: absolute;
    top: 100%;
    left: 0;
    padding: 0 15px;
    z-index: 100;    
}
.mobile-on .full-wrapper .desktop-nav{
    padding: 0;
}
.mobile-on .desktop-nav ul{
    position: relative;
    width: 100%;
    float: none;
    overflow-x: hidden;
    background: rgba(18,18,18, .995);
}
.mobile-on .desktop-nav > ul{
    overflow-y: auto;
    display: block;
}
.mobile-on .desktop-nav ul li{
    display: block;
    float: none !important;
    overflow: hidden;
}
.mobile-on .desktop-nav ul li ul{
    padding: 0;
    border-bottom: 1px solid rgba(255,255,255, .1);
}
.mobile-on .desktop-nav ul li a{
    display: block;
    width: 100%;
    height: auto !important;
    line-height: 1.3 !important;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 15px 10px;
    text-align: left;
    border-left: none;
    border-right: none;
    border-bottom: 1px solid rgba(255,255,255, .065);
    color: var(--color-gray-light-5);
    opacity: 1;
    cursor: pointer;
}
.mobile-on .desktop-nav ul li a:hover,
.mobile-on .desktop-nav ul li a.active{
    background: rgba(255,255,255, .025);
    color: #eee;
}
.mobile-on .desktop-nav ul li a:focus{
    outline-offset: -2px !important; 
}

.mobile-nav-display{
    display: none;
}
.mobile-on .mobile-nav-display{
    display: block !important;
}
.mobile-nav-display-i{
    display: none;
}
.mobile-on .mobile-nav-display-i{
    display: inline-block !important;
}
.desktop-nav-display{
    display: block;
}
.mobile-on .desktop-nav-display{
    display: none !important;
}

/* Mobile nav menu sub */

.mobile-on .mn-has-sub > .mi-chevron-down{
    display: block;
    width: 24px;
    height: 24px;
    font-size: 14px;
    line-height: 22px;
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -12px;
    text-align: center;
    border: 1px solid rgba(255,255,255, .1);
    border-radius: 50%;
}
.mobile-on .mn-has-sub > .mi-chevron-right{
    display: block;
    width: 24px;
    height: 24px;
    font-size: 14px;
    line-height: 22px;
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -12px;
    text-align: center;
    border: 1px solid rgba(255,255,255, .1);
    transform: rotate(90deg);
    border-radius: 50%;
}
.mobile-on .js-opened > .mn-has-sub > .mi-chevron-down{
    border-color: rgba(255,255,255, .4);
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    transform: rotate(180deg);
}
.mobile-on .js-opened > .mn-has-sub > .mi-chevron-right{
    border-color: rgba(255,255,255, .4);
    -webkit-transform: rotate(270deg);
    -moz-transform: rotate(270deg);
    transform: rotate(270deg);
}
.mobile-on .inner-nav li{
    margin: 0 !important;
}
.mobile-on .mn-sub{
    display: none;
    opacity: 0;
    position: relative;
    left: 0 !important;
    right: 0;
    top: 0;
    bottom: 0;
    border-left: none !important;
    border-right: none !important;
    border-top: none;
    z-index: 10;
}
.mobile-on .mn-sub li{
    padding-left: 10px;
}
.inner-nav li.js-opened .mn-sub{
    opacity: 1;
}
.mobile-nav{
    display: none;
    margin-left: auto;
    margin-right: -15px;
    padding-left: 15px;
    padding-right: 15px;
    font-size: 16px;
    cursor: pointer;
    height: var(--menu-bar-height);    
    transition: all 0.2s cubic-bezier(0.000, 0.000, 0.580, 1.000);
    transition-property:  background, color, height;
}
.main-nav.small-height .mobile-nav{
    height: var(--menu-bar-height-scrolled);
}
.mobile-nav:active{
    box-shadow: 0 0 35px rgba(0,0,0,.05) inset;
}
.mobile-on .mobile-nav{
    display: flex;
}
.mobile-nav-icon{
    position: relative;
    display: block;
    width: 1.8em;
    height: 2px;
    margin: auto;
    background: var(--color-dark-1);     
}
.mobile-nav-icon:before,
.mobile-nav-icon:after{
    content: "";
    position: absolute;
    top: -0.5em; 
    display: block;
    width: 100%;
    height: 100%;
    background: var(--color-dark-1);
    transition: var(--transition-default);
    will-change: top, transform;
}
.mobile-nav-icon:after{
    top: 0.5em;
}
.mobile-nav.active .mobile-nav-icon{
    background: transparent;
}
.mobile-nav.active .mobile-nav-icon:before{
    top: 0;
    transform: rotate(45deg);
}
.mobile-nav.active .mobile-nav-icon:after{
    top: 0;
    transform: rotate(-45deg);
}


/* Mobile nav menu sub multi */

.mobile-on .mn-has-multi{
    width: auto;
    padding: 0;
    text-align: left;
    white-space: normal;
    
}
.mobile-on .mn-sub{
    width: 100%;
    float: none;
    position: relative;
    overflow-x: hidden;
}
.mobile-on .mn-group-title{
    font-size: 15px !important;
}

/*
* Dark panel style
*/

.main-nav.light-after-scroll.dark .logo-dark{
    display: none;
}
.main-nav.light-after-scroll.dark .logo-white{
    display: block;
}
.main-nav.light-after-scroll .logo-dark{
    display: block;
}
.main-nav.light-after-scroll .logo-white{
    display: none;
}
.main-nav.dark{
    background-color: rgba(10,10,10, .905);
    box-shadow: none;
    
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow:  none;
}
.main-nav.dark-mode{
    background-color: rgb(20, 20, 20);
}
.main-nav:not(.transparent){
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
}
.main-nav.dark .inner-nav ul > li > a{
    color: #fff;
    opacity: .78;
    font-size: 1.1rem;
}
.main-nav.dark .inner-nav ul > li > a:hover,
.main-nav.dark .inner-nav ul > li > a.active{
    color: #fff;
    opacity: 1;
}
.main-nav.dark .inner-nav ul li .mn-sub li a{
    opacity: 1;
}
.main-nav.dark .main-nav-icon-cart{
    opacity: 1;
}
.main-nav.dark .mobile-nav{
    background-color: transparent;
    border-color: transparent;
}
.main-nav.dark .mobile-nav-icon,
.main-nav.dark .mobile-nav-icon:before,
.main-nav.dark .mobile-nav-icon:after{
    background: #fff;
}
.main-nav.dark .mobile-nav.active .mobile-nav-icon{
    background: transparent;
}
.main-nav.mobile-on.dark .inner-nav{
    border-top: 1px solid rgba(100,100,100, .4);
}
.main-nav.dark .logo,
.main-nav.dark a.logo:hover{
    font-size: 18px;
    font-weight: 700;
    text-decoration: none;
    color: rgba(255,255,255, .9);
}
.main-nav.dark .mn-sub{    
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow:  none;
}
.main-nav.dark .mi-chevron-down,
.main-nav.dark.body-scrolled .inner-nav ul > li > a:hover .mi-chevron-down,
.main-nav.dark.body-scrolled .inner-nav ul > li > a.active .mi-chevron-down{
    opacity: 1;
}

/*
* Transparent panel style
*/

.main-nav.transparent{
    background: transparent !important;
    box-shadow: none;
}
.main-nav.js-transparent{
    transition: all 0.2s var(--ease-default);
}

/*
* Menu social links
*/

.mn-soc-link{
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    font-size: 16px;    
    border-radius: 50%;    
    cursor: pointer;
    isolation: isolate;
    transition: all .2s var(--ease-out-medium);
}
.mn-soc-link:before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 1px solid currentColor;
    border-radius: 50%;
    opacity: .2;
    transition: all .2s var(--ease-out-medium);
    z-index: -1;
}
.mn-soc-link:after{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--color-dark-1);
    border-radius: 50%;
    opacity: 0;
    transform: scale(.25);
    transition: all .2s var(--ease-out-short);
    z-index: -1;
}
.mn-soc-link:hover{
    color: #fff;
}
.mn-soc-link:hover:before{
    opacity: 0;
}
.mn-soc-link:hover:after{
    opacity: 1;
    transform: none;
}
.mn-soc-link.alt,
.mn-soc-link.mn-soc-link-color.alt{
    color: #fff;
}
.mn-soc-link.alt:before{
    opacity: 0;
}
.mn-soc-link.alt:after{
    opacity: 1;
    transform: none;
}
.mn-soc-link.alt:hover{
    opacity: .85;
}
.mn-soc-link.mn-soc-link-color{
    color: var(--color-primary-1);
}
.mn-soc-link.mn-soc-link-color:hover{
    color: #fff;
}
.mn-soc-link.mn-soc-link-color:before{
    border-color: var(--color-primary-1);
    opacity: 1;
}
.mn-soc-link.mn-soc-link-color:after{
    background: var(--color-primary-1);
}
.mn-soc-link.mn-soc-link-color:hover:before{
    opacity: 0;
}

