﻿.sm {
    box-sizing: border-box;
    position: relative;
    z-index: 999;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

.sm, .sm ul, .sm li {
    display: block;
    list-style: none;
    margin: 0;
    padding: 0;
    line-height: normal;
    direction: ltr;
    text-align: left
}

.sm-rtl, .sm-rtl ul, .sm-rtl li {
    direction: rtl;
    text-align: right
}

.sm > li > h1, .sm > li > h2, .sm > li > h3, .sm > li > h4, .sm > li > h5, .sm > li > h6 {
    margin: 0;
    padding: 0
}

.sm ul {
    display: none
}

.sm li, .sm a {
    position: relative;
    display: block
}

.sm a.disabled {
    cursor: default
}

.sm::after {
    content: "";
    display: block;
    height: 0;
    font: 0px/0 serif;
    clear: both;
    overflow: hidden
}

.sm *, .sm *::before, .sm *::after {
    box-sizing: inherit
}

.main-nav {
    background: var(--menu-bg);
    -webkit-border-radius: 1px;
    -moz-border-radius: 1px;
    -ms-border-radius: 1px;
    -o-border-radius: 1px;
    border-radius: 1px
}

@media (min-width: 769px) {
    .main-nav {
        max-width: 1280px;
        margin-left: auto;
        margin-right: auto
    }
}

.main-nav:after {
    clear: both;
    content: " ";
    display: block;
    height: 0;
    font: 0px/0 serif;
    overflow: hidden
}

.main-menu-btn {
    padding: var(--base-size-half) var(--gutter-quarter) var(--base-size-quarter) var(--gutter-quarter);
    position: relative;
    display: inline-block;
    max-width: var(--gutter);
    text-indent: var(--gutter-double);
    white-space: nowrap;
    overflow: hidden;
    cursor: pointer;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

.main-menu-btn-icon, .main-menu-btn-icon:before, .main-menu-btn-icon:after {
    position: absolute;
    top: 50%;
    left: 2px;
    height: 2px;
    width: 24px;
    background: var(--menu-icon-button);
    -webkit-transition: all .25s;
    transition: all .25s
}

.main-menu-btn-icon:before {
    content: "";
    top: -7px;
    left: 0
}

.main-menu-btn-icon:after {
    content: "";
    top: 7px;
    left: 0
}

#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon {
    height: 0;
    background: rgba(0, 0, 0, 0)
}

#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:before {
    top: 0;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:after {
    top: 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

#main-menu-state {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    border: 0;
    padding: 0;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px)
}

#main-menu-state:not(:checked) ~ #main-menu {
    display: none
}

#main-menu-state:checked ~ #main-menu {
    display: block
}

@media (min-width: 769px) {
    .main-menu-btn {
        position: absolute;
        top: -99999px
    }

    #main-menu-state:not(:checked) ~ #main-menu {
        display: block
    }
}

#main-menu {
    clear: both
}

@media (min-width: 769px) {
    #main-menu.justified > li {
        float: none;
        display: table-cell;
        width: 1%;
        text-align: center
    }
}

.wrapper-topmenu {
    background: var(--menu-bg-100vw)
}

@media (min-width: 769px)and (max-width: 1296px) {
    #main-menu {
        padding-left: var(--gutter);
        padding-right: var(--gutter)
    }
}

@media screen and (max-width: 768px) {
    .wrapper-topmenu {
        position: absolute;
        top: var(--nav-header-height);
        z-index: 99;
        left: 0;
        right: 0;
        height: 0;
        background: rgba(0, 0, 0, 0)
    }

    #main-menu {
        width: 100%
    }

    .main-menu-btn {
        top: calc(var(--base-size) * -2);
        left: var(--gutter-half)
    }

    .sm {
        top: calc(var(--base-size) * -2)
    }

    .main-nav.menu-horizontal {
        height: 0
    }

    .main-menu-btn-text {
        color: var(--menu-icon-button)
    }
}

.moremenu a b {
    line-height: 1;
    font-size: var(--font-size3)
}

.sm-clean .mega-menu.sm-nowrap li.mega-flex > a, .sm-clean .mega-menu.sm-nowrap li.mega-flex > :not(ul) a {
    white-space: normal;
    overflow-wrap: break-word;
    word-wrap: break-word;
    word-break: break-word;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    -moz-hyphens: auto;
    hyphens: auto
}

.sm-clean {
    background: var(--menu-bg);
    border-radius: 2px
}

.sm-clean a {
    padding: .75rem .75rem;
    padding-right: 2.75rem
}

.sm-clean a {
    color: var(--menu-link-color);
    font-family: var(--menu-font-family);
    font-size: var(--body-font-size);
    font-weight: normal;
    line-height: 1.5rem;
    text-decoration: none
}

.sm-clean a:hover, .sm-clean a:focus, .sm-clean a:active {
    color: var(--menu-link-hover-color)
}

.sm-clean a:hover, .sm-clean a:focus, .sm-clean a:active, .sm-clean a.highlighted {
    color: var(--menu-link-hover-color)
}

.sm-clean a.current, .sm-clean a.active {
    color: var(--menu-link-hover-color);
    background: var(--menu-current-bg)
}

.sm-clean a.disabled {
    color: var(--gray4)
}

.sm-clean a .sub-arrow {
    position: absolute;
    top: 50%;
    margin-top: -1rem;
    left: auto;
    right: 0rem;
    width: 2rem;
    height: 2rem;
    overflow: hidden;
    font: bold var(--body-font-size)/2rem monospace !important;
    text-align: center;
    text-shadow: none;
    background: var(--collapsible-toggle-bg);
    border-radius: 2px
}

.sm-clean a .sub-arrow::before {
    content: "+"
}

.sm-clean a.highlighted .sub-arrow::before {
    content: "-"
}

.sm-clean > li:first-child > a, .sm-clean > li:first-child > :not(ul) a {
    border-radius: 2px 2px 0 0
}

.sm-clean > li:last-child > a, .sm-clean > li:last-child > *:not(ul) a, .sm-clean > li:last-child > ul, .sm-clean > li:last-child > ul > li:last-child > a, .sm-clean > li:last-child > ul > li:last-child > *:not(ul) a, .sm-clean > li:last-child > ul > li:last-child > ul, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > a, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul {
    border-radius: 0 0 2px 2px
}

.sm-clean > li:last-child > a.highlighted, .sm-clean > li:last-child > *:not(ul) a.highlighted, .sm-clean > li:last-child > ul > li:last-child > a.highlighted, .sm-clean > li:last-child > ul > li:last-child > *:not(ul) a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted {
    border-radius: 0
}

.sm-clean li {
    border-top: 1px solid var(--collapsible-separators-color)
}

.sm-clean > li:first-child {
    border-top: 0
}

.sm-clean ul {
    background: var(--collapsible-submenu-bg)
}

.sm-clean ul a, .sm-clean ul a:hover, .sm-clean ul a:focus, .sm-clean ul a:active {
    font-size: var(--body-font-size);
    border-left: .75rem solid rgba(0, 0, 0, 0)
}

.sm-clean ul a.current, .sm-clean ul a.active {
    color: var(--submenu-link-hover-color);
    background: var(--submenu-current-bg)
}

.sm-clean ul ul a, .sm-clean ul ul a:hover, .sm-clean ul ul a:focus, .sm-clean ul ul a:active {
    border-left: 1.5rem solid rgba(0, 0, 0, 0)
}

.sm-clean ul ul ul a, .sm-clean ul ul ul a:hover, .sm-clean ul ul ul a:focus, .sm-clean ul ul ul a:active {
    border-left: 2.25rem solid rgba(0, 0, 0, 0)
}

.sm-clean ul ul ul ul a, .sm-clean ul ul ul ul a:hover, .sm-clean ul ul ul ul a:focus, .sm-clean ul ul ul ul a:active {
    border-left: 3rem solid rgba(0, 0, 0, 0)
}

.sm-clean ul ul ul ul ul a, .sm-clean ul ul ul ul ul a:hover, .sm-clean ul ul ul ul ul a:focus, .sm-clean ul ul ul ul ul a:active {
    border-left: 3.75rem solid rgba(0, 0, 0, 0)
}

@media (min-width: 769px) {
    .sm-clean ul {
        position: absolute;
        width: 12em
    }

    .sm-clean li {
        float: left
    }

    .sm-clean.sm-rtl li {
        float: right
    }

    .sm-clean ul li, .sm-clean.sm-rtl ul li, .sm-clean.sm-vertical li {
        float: none
    }

    .sm-clean a {
        white-space: nowrap
    }

    .sm-clean ul a, .sm-clean.sm-vertical a {
        white-space: normal
    }

    .sm-clean .sm-nowrap > li > a, .sm-clean .sm-nowrap > li > :not(ul) a {
        white-space: nowrap
    }

    .sm-clean {
        padding: 0 0;
        background: var(--menu-bg);
        border-radius: 0
    }

    .sm-clean a {
        padding: .75rem .75rem
    }

    .sm-clean a.current, .sm-clean a.active {
        color: var(--menu-link-hover-color)
    }

    .sm-clean a.disabled {
        color: var(--gray4)
    }

    .sm-clean a .sub-arrow {
        display: none;
        width: 0;
        height: 0;
        border-width: 6px;
        border-style: solid dashed dashed dashed;
        border-color: var(--menu-arrow-color) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0);
        background: rgba(0, 0, 0, 0);
        border-radius: 0;
        top: auto;
        margin-top: 0;
        bottom: 0;
        left: 50%;
        margin-left: -3px;
        right: auto;
        padding-right: 0
    }

    .sm-clean a .sub-arrow::before {
        display: none
    }

    .sm-clean li {
        border-top: 0
    }

    .sm-clean > li > ul::before, .sm-clean > li > ul::after {
        content: "";
        position: absolute;
        top: -18px;
        left: 30px;
        width: 0;
        height: 0;
        overflow: hidden;
        border-width: 9px;
        border-style: dashed dashed solid dashed;
        border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) var(--desktop-submenu-border-color) rgba(0, 0, 0, 0)
    }

    .sm-clean > li > ul::after {
        top: -16px;
        left: 31px;
        border-width: 8px;
        border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) var(--submenu-bg) rgba(0, 0, 0, 0)
    }

    .sm-clean ul {
        border: 1px solid var(--desktop-submenu-border-color);
        padding: 3px 0;
        background: var(--submenu-bg);
        border-radius: 2px !important;
        box-shadow: 0 5px 9px var(--box-shadow)
    }

    .sm-clean ul a {
        padding: .75rem .75rem
    }

    .sm-clean ul a, .sm-clean ul a:hover, .sm-clean ul a:focus, .sm-clean ul a:active, .sm-clean ul a.highlighted {
        border: 0 !important;
        color: var(--submenu-link-color)
    }

    .sm-clean ul a:hover, .sm-clean ul a:focus, .sm-clean ul a:active, .sm-clean ul a.highlighted {
        background: var(--submenu-hover-bg);
        color: var(--submenu-link-hover-color)
    }

    .sm-clean ul a.current, .sm-clean ul a.active {
        color: var(--submenu-current-hover-color);
        background: var(--submenu-current-bg)
    }

    .sm-clean ul a.disabled {
        background: var(--submenu-bg);
        color: var(--gray5)
    }

    .sm-clean ul a .sub-arrow {
        right: 8px;
        top: 50%;
        left: auto;
        margin-top: -5px;
        border-width: 5px;
        border-style: dashed dashed dashed solid;
        border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) var(--menu-arrow-color)
    }

    .sm-clean .scroll-up, .sm-clean .scroll-down {
        position: absolute;
        display: none;
        visibility: hidden;
        overflow: hidden;
        background: var(--submenu-bg);
        height: 20px
    }

    .sm-clean .scroll-up:hover, .sm-clean .scroll-down:hover {
        background: var(--submenu-hover-bg)
    }

    .sm-clean .scroll-up:hover .scroll-up-arrow {
        border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) var(--submenu-link-hover-color) rgba(0, 0, 0, 0)
    }

    .sm-clean .scroll-down:hover .scroll-down-arrow {
        border-color: var(--submenu-link-hover-color) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0)
    }

    .sm-clean .scroll-up-arrow, .sm-clean .scroll-down-arrow {
        position: absolute;
        top: 0;
        left: 50%;
        margin-left: -6px;
        width: 0;
        height: 0;
        overflow: hidden;
        border-width: 6px;
        border-style: dashed dashed solid dashed;
        border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) var(--submenu-link-color) rgba(0, 0, 0, 0)
    }

    .sm-clean .scroll-down-arrow {
        top: 8px;
        border-style: solid dashed dashed dashed;
        border-color: var(--submenu-link-color) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0)
    }

    .sm-clean.sm-vertical {
        padding: .75rem 0;
        border-radius: 2px
    }

    .sm-clean.sm-vertical a {
        padding: .75rem .75rem
    }

    .sm-clean.sm-vertical a:hover, .sm-clean.sm-vertical a:focus, .sm-clean.sm-vertical a:active, .sm-clean.sm-vertical a.highlighted {
        background: var(--menu-hover-bg)
    }

    .sm-clean.sm-vertical a.disabled {
        background: var(--menu-bg)
    }

    .sm-clean.sm-vertical a .sub-arrow {
        right: 8px;
        top: 50%;
        left: auto;
        margin-top: -5px;
        border-width: 5px;
        border-style: dashed dashed dashed solid;
        border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) var(--menu-arrow-color)
    }

    .sm-clean.sm-vertical > li > ul::before, .sm-clean.sm-vertical > li > ul::after {
        display: none
    }

    .sm-clean.sm-vertical ul a {
        padding: .75rem .75rem
    }

    .sm-clean.sm-vertical ul a:hover, .sm-clean.sm-vertical ul a:focus, .sm-clean.sm-vertical ul a:active, .sm-clean.sm-vertical ul a.highlighted {
        background: var(--submenu-hover-bg)
    }

    .sm-clean.sm-vertical ul a.disabled {
        background: var(--submenu-bg)
    }
}
