/* Hide toggle buttons */
.thegem-te-menu__hamburger.desktop-view .overlay-menu-back,
.thegem-te-menu__hamburger.desktop-view .dl-trigger,
.thegem-te-menu__hamburger.desktop-view .overlay-toggle,
.thegem-te-menu__hamburger.desktop-view .mobile-menu-slide-close{
    display: none;
}
/* Hide back item */
.thegem-te-menu__hamburger.desktop-view ul.nav-menu li.dl-back,
.thegem-te-menu__hamburger.desktop-view ul.nav-menu li.dl-parent{
    display: none !important;
}

/* Menu style default level1 */
.thegem-te-menu__hamburger.desktop-view ul.nav-menu{
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    width: 340px;
    height: 100vh;
    left: inherit !important;
    max-height: none !important;
    display: flex;
    flex-direction: column;
    -moz-transition: transform 1s;
    -webkit-transition: transform 1s;
    transition: transform 1s;
    background-image: var(--thegem-to-navigation-background-image);
    background-repeat: var(--thegem-to-navigation-background-repeat);
    background-size: var(--thegem-to-navigation-background-size);
    background-position-x: var(--thegem-to-navigation-background-position-x);
    background-position-y: var(--thegem-to-navigation-background-position-y);
    background-color: var(--thegem-to-navigation-background-color, #FFFFFF);
    padding: 100px 30px 30px 0;
    z-index: 10;
    -moz-transform: translateX(340px);
    -webkit-transform: translateX(340px);
    transform: translateX(340px);
    margin: 0;
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu li.megamenu-enable ul {
    margin-top: -1px;
}
.thegem-te-menu__hamburger.desktop-view.hamburger-active ul.nav-menu{
    right: 0;
    -moz-transform: translateX(0);
    -webkit-transform: translateX(0);
    transform: translateX(0);
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li{
    position: relative;
    display: flex;
    align-items: center;
    padding-left: 30px;
    padding-top: 11px;
    padding-bottom: 11px;
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li > a{
    position: relative;
    display: inline-flex;
    align-items: center;
    padding: 2px 16px;
    font-family: var(--thegem-to-menu-font-family, 'Montserrat');
    font-style: var(--thegem-to-menu-font-style, normal);
    font-weight: var(--thegem-to-menu-font-weight, 700);
    font-size: var(--thegem-to-menu-font-size, 14px);
    line-height: var(--thegem-to-menu-line-height, 25px);
    letter-spacing: var(--thegem-to-menu-letter-spacing, 0);
    text-transform: var(--thegem-to-menu-text-transform, uppercase);
    text-decoration: none;
    color: var(--thegem-to-menu-level1-color, #3C3950);
    background-color: var(--thegem-to-menu-level1-bg-color);
}

/* Menu style default level2 */
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li ul,
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li .megamenu-template {
    position: absolute;
    top: 0;
    left: inherit !important;
    right: 100%;
    border: 1px solid var(--thegem-to-menu-level2-border-color, #DFE5E8);
    border-top: 0;
    opacity: 0;
    visibility: hidden;
    z-index: 2;
}
@media (-webkit-device-pixel-ratio: 1.25) {
   .thegem-te-menu__hamburger.desktop-view ul.nav-menu > li ul {
       border: 0.8px solid var(--thegem-to-menu-level2-border-color, #DFE5E8);
   }
}

.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li:not(.megamenu-enable) ul {
    max-height: none !important;
    width: 280px;
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li > ul,
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li .megamenu-template {
    transform: translateY(20px);
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu:hover > li ul,
.thegem-te-menu__hamburger.desktop-view ul.nav-menu:hover > li .megamenu-template {
    visibility: hidden;
    opacity: 0;
    transition: transform 0.1s linear, opacity 0.1s linear, visibility 0.1s linear;
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li:hover > ul,
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li:hover .megamenu-template {
    visibility: visible;
    opacity: 1;
    transition: transform 0.3s linear, opacity 0.3s linear, visibility 0.3s linear;
    transform: translateY(0);
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li > ul > li{
    border-top: 1px solid var(--thegem-to-menu-level2-border-color, #DFE5E8);
}
@media (-webkit-device-pixel-ratio: 1.25) {
    .thegem-te-menu__hamburger.desktop-view ul.nav-menu > li > ul > li{
        border-top: 0.8px solid var(--thegem-to-menu-level2-border-color, #DFE5E8);
    }
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li > ul > li a{
    position: relative;
    display: flex;
    align-items: center;
    padding: 15px 15px 15px 45px;
    font-family: var(--thegem-to-submenu-font-family, 'Source Sans Pro');
    font-style: var(--thegem-to-submenu-font-style, normal);
    font-weight: var(--thegem-to-submenu-font-weight, normal);
    font-size: var(--thegem-to-submenu-font-size, 16px);
    line-height: var(--thegem-to-submenu-line-height, 20px);
    letter-spacing: var(--thegem-to-submenu-letter-spacing, 0);
    text-transform: var(--thegem-to-submenu-text-transform, none);
    text-decoration: none;
    color: var(--thegem-to-menu-level2-color, #5F727F);
    background-color: var(--thegem-to-menu-level2-bg-color, #F4F6F7);
    border-right: 3px solid transparent;
    transition: color 0.3s, background-color 0.3s, border-left-color 0.3s;
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li li.menu-item-parent > a:before{
    content: '\e603';
    font-family: 'thegem-icons';
    width: 16px;
    height: 16px;
    margin-left: -22px;
    font-size: 16px;
    margin-right: 6px;
    line-height: 1;
    color: var(--thegem-to-menu-submenu-highlighter-color);
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li > ul > li:hover > a,
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li li.menu-item-current > a,
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li li.menu-item-active > a{
    border-color: var(--thegem-to-styled-color1, #00BCD4);
    background-color: var(--thegem-to-menu-level2-hover-bg-color, #FFFFFF);
    color: var(--thegem-to-menu-level2-hover-color, #3C3950);
}

/* Menu style default level3+ */
.thegem-te-menu__hamburger.desktop-view ul.nav-menu:hover li:hover > ul{
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
    transition: transform 0.3s linear, opacity 0.3s linear, visibility 0.3s linear;
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li > ul > li ul{
    position: absolute;
    right: 100%;
    left: auto;
    top: 0;
    border: 1px solid var(--thegem-to-menu-level2-border-color, #DFE5E8);
    border-top: 0;
    visibility: hidden;
    opacity: 0;
    z-index: 1;
    white-space: normal;
    transform: translateX(20px);
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li > ul > li > ul li{
    border-top: 1px solid var(--thegem-to-menu-level2-border-color, #DFE5E8);
}
@media (-webkit-device-pixel-ratio: 1.25) {
    .thegem-te-menu__hamburger.desktop-view ul.nav-menu > li > ul > li ul{
        border: 0.8px solid var(--thegem-to-menu-level2-border-color, #DFE5E8);
        border-top: 0;
    }
    .thegem-te-menu__hamburger.desktop-view ul.nav-menu > li > ul > li > ul li{
        border-top: 0.8px solid var(--thegem-to-menu-level2-border-color, #DFE5E8);
    }
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li > ul > li > ul li a{
    border-right: 3px solid transparent;
    background-color: var(--thegem-to-menu-level3-bg-color, #FFFFFF);
    color: var(--thegem-to-menu-level3-color, #5F727F);
    transition: color 0.3s, background-color 0.3s, border-left-color 0.3s;
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li > ul > li li:hover > a {
    border-color: var(--thegem-to-styled-color1, #00BCD4);
    background-color: var(--thegem-to-menu-level3-hover-bg-color, #FFFFFF);
    color: var(--thegem-to-menu-level3-hover-color, #5F727F);
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li > ul > li li.menu-item-active > a,
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li > ul > li li.menu-item-current > a{
    border-color: var(--thegem-to-styled-color1, #00BCD4);
    background-color: var(--thegem-to-menu-level3-active-bg-color, #FFFFFF);
    color: var(--thegem-to-menu-level3-active-color, #5F727F);
}

/*Hamburger overlay*/
.thegem-te-menu__hamburger.desktop-view .hamburger-menu-back{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--thegem-to-overlay-menu-bg-color, #212331);
    -o-transition: all 0.5s;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    visibility: hidden;
    opacity: 0;
}
.thegem-te-menu__hamburger.desktop-view .hamburger-menu-back.active{
    visibility: visible;
    opacity: 0.96;
}
/*Hamburger toggle*/
.thegem-te-menu__hamburger.desktop-view .hamburger-toggle-close{
    position: absolute;
    right: 0;
    border: none;
    width: 36px;
    height: 30px;
    text-indent: 100%;
    font-size: 0;
    line-height: 0;
    overflow: hidden;
    cursor: pointer;
    outline: none;
    background: transparent;
    padding: 0;
    transition: margin-right 1s, margin-left 1s, width .3s, height .2s, transform 1s;
    transform: translateX(0);
    margin: 35px;
}
.thegem-te-menu__hamburger.desktop-view.hamburger-active .hamburger-toggle-close{
    -moz-transform: translateX(-340px);
    -webkit-transform: translateX(-340px);
    transform: translateX(-340px);
}
.thegem-te-menu__hamburger.desktop-view .hamburger-toggle-close .menu-line-1,
.thegem-te-menu__hamburger.desktop-view .hamburger-toggle-close .menu-line-2,
.thegem-te-menu__hamburger.desktop-view .hamburger-toggle-close .menu-line-3{
    position: absolute;
    height: 4px;
    width: 100%;
    left: 0;
    transition: all 0.5s, top .3s, height .3s;
    background-color:  var(--thegem-to-hamburger-menu-icon-light-color, #FFFFFF);
}
.thegem-te-menu__hamburger.desktop-view .hamburger-toggle-close.small .menu-line-1,
.thegem-te-menu__hamburger.desktop-view .hamburger-toggle-close.small .menu-line-2,
.thegem-te-menu__hamburger.desktop-view .hamburger-toggle-close.small .menu-line-3{
    height: 2px;
    width: 18px;
    left: 9px;
}
.thegem-te-menu__hamburger.desktop-view .hamburger-toggle-close .menu-line-1{
    top: 3px;
    transform: rotate(0);
}
.thegem-te-menu__hamburger.desktop-view .hamburger-toggle-close.small .menu-line-1 {
    top: 8px;
}
.thegem-te-menu__hamburger.desktop-view.hamburger-active .hamburger-toggle-close .menu-line-1{
    transform: rotate(45deg);
    top: 13px;
}
.thegem-te-menu__hamburger.desktop-view .hamburger-toggle-close .menu-line-2{
    top: 13px;
    opacity: 1;
}
.thegem-te-menu__hamburger.desktop-view .hamburger-toggle-close.small .menu-line-2 {
    top: 13px;
}
.thegem-te-menu__hamburger.desktop-view.hamburger-active .hamburger-toggle-close .menu-line-2{
    opacity: 0;
}
.thegem-te-menu__hamburger.desktop-view .hamburger-toggle-close .menu-line-3{
    top: 23px;
    transform: rotate(0);
}
.thegem-te-menu__hamburger.desktop-view .hamburger-toggle-close.small .menu-line-3 {
    top: 18px;
}
.thegem-te-menu__hamburger.desktop-view.hamburger-active .hamburger-toggle-close .menu-line-3{
    top: 13px;
    transform: rotate(-45deg);
}
@media (-webkit-device-pixel-ratio: 1.25) {
    .thegem-te-menu__hamburger.desktop-view .hamburger-toggle-close.small .menu-line-1,
    .thegem-te-menu__hamburger.desktop-view .hamburger-toggle-close.small .menu-line-2,
    .thegem-te-menu__hamburger.desktop-view .hamburger-toggle-close.small .menu-line-3{
        height: 1.6px;
    }
}

/*Search Widget*/
.thegem-te-menu__hamburger.show-desktop-search ul.nav-menu > li.menu-item-type-search-widget{
    display: block !important;
    margin-top: auto;
    padding-left: 45px;
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li.menu-item-type-search-widget > a {
    display: none;
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li.menu-item-type-search-widget .minisearch{
    position: relative;
    width: 100%;
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li.menu-item-type-search-widget .minisearch form{
    position: relative;
    width: 100%;
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li.menu-item-type-search-widget .minisearch .sf-input{
    position: relative;
    width: 100%;
    height: 40px;
    padding: 0 50px 0 10px;
    outline: none;
    border: none;

    background: #e0e5e9;
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li.menu-item-type-search-widget .minisearch .sf-submit{
    position: absolute;
    right: 0;
    width: 40px;
    height: 40px;
    margin: 0;
    padding: 0;
    border: 0;
    cursor: pointer;
    opacity: 0;
    z-index: 1;
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li.menu-item-type-search-widget .minisearch .sf-submit:hover{
    background: transparent;
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li.menu-item-type-search-widget .minisearch .sf-submit:focus{
    outline: none;
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li.menu-item-type-search-widget .minisearch .sf-submit-icon{
    position: absolute;
    right: 0;
    width: 40px;
    height: 40px;
    z-index: 0;
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li.menu-item-type-search-widget .minisearch .sf-submit-icon:after{
    content: "\e612";
    font-family: "thegem-icons";

    display: block;
    font-style: normal;
    font-size: 24px;
    font-weight: normal;
    line-height: 40px;
    text-align: center;
    vertical-align: top;
    width: 100%;
    height: 40px;
    color: #FFFFFF;
    background: #3d3950;
}

/*Socials Widget*/
.thegem-te-menu__hamburger.show-desktop-socials ul.nav-menu > li.menu-item-type-socials-widget{
    position: relative;
    display: block !important;
    margin-top: auto;
}
.thegem-te-menu__hamburger.show-desktop-search ul.nav-menu > li.menu-item-type-socials-widget{
    margin-top: 0;
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li.menu-item-type-socials-widget .menu-item-socials{
    padding: 0 15px;
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li.menu-item-type-socials-widget .menu-item-socials .socials{
    position: relative;
    display: flex;
    flex-wrap: wrap;
    margin: 0 -8px;
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li.menu-item-type-socials-widget .socials-item{
    padding: 8px;
    margin: 0;
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu > li.menu-item-type-socials-widget .socials-item .socials-item-icon{
    font-size: 24px;
}

/* Hover Styles */

.style-hover-lined.style-hover-type-line-underline-1 .thegem-te-menu__hamburger.desktop-view ul.nav-menu > li:not(.menu-item-active):not(.menu-item-current) > a,
.style-hover-lined.style-hover-type-line-overline-1 .thegem-te-menu__hamburger.desktop-view ul.nav-menu > li:not(.menu-item-active):not(.menu-item-current) > a,
.style-hover-lined.style-hover-type-line-underline-2 .thegem-te-menu__hamburger.desktop-view ul.nav-menu > li:not(.menu-item-active):not(.menu-item-current) > a,
.style-hover-lined.style-hover-type-line-overline-2 .thegem-te-menu__hamburger.desktop-view ul.nav-menu > li:not(.menu-item-active):not(.menu-item-current) > a {
    padding-left: 0;
    padding-right: 0;
}

.style-hover-lined.style-hover-type-line-top-bottom .thegem-te-menu__hamburger.desktop-view ul.nav-menu > li:not(.menu-item-active):not(.menu-item-current) > a,
.style-hover-background.style-hover-type-background-color .thegem-te-menu__hamburger.desktop-view ul.nav-menu > li:not(.menu-item-active):not(.menu-item-current) > a {
    padding-left: 10px;
    padding-right: 10px;
}

.style-hover-background.style-hover-type-background-underline .thegem-te-menu__hamburger.desktop-view ul.nav-menu > li:not(.menu-item-active):not(.menu-item-current) > a,
.style-hover-background.style-hover-type-background-extra-paddings .thegem-te-menu__hamburger.desktop-view ul.nav-menu > li:not(.menu-item-active):not(.menu-item-current) > a {
    padding-left: 15px;
    padding-right: 15px;
}

.style-hover-background.style-hover-type-background-extra-paddings .thegem-te-menu__hamburger.desktop-view ul.nav-menu > li:not(.menu-item-active):not(.menu-item-current) > a:before {
    border-radius: 3px;
}

.thegem-te-menu__hamburger.desktop-view ul.nav-menu.hamburger-with-template {
	padding: 0;
	overflow-y: auto;
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu.hamburger-with-template > li {
	display: none;
}
.thegem-te-menu__hamburger.desktop-view ul.nav-menu.hamburger-with-template > li.menu-item-type-template {
	display: block !important;
	padding: 0 21px;
}
