.sm-clean {
  background: #fff;
  border-radius: 5px; }
  .sm-clean a, .sm-clean a:hover, .sm-clean a:focus, .sm-clean a:active {
    padding: 13px 20px;
    /* make room for the toggle button (sub indicator) */
    padding-right: 57px;
    color: #555555;
    font-family: "PT Sans", Arial, sans-serif;
    font-size: 0.8rem;
    font-weight: normal;
    line-height: 16px;
    text-decoration: none; }
  .sm-clean a.current {
    color: #282c38; }
  .sm-clean a.disabled {
    color: #cccccc; }
  .sm-clean a .sub-arrow {
    position: absolute;
    top: 50%;
    margin-top: -17px;
    left: auto;
    right: 4px;
    width: 33px;
    height: 33px;
    overflow: hidden;
    font: bold 0.8rem/33px monospace !important;
    text-align: center;
    text-shadow: none;
    background: rgba(255, 255, 255, 0.5);
    border-radius: 5px; }
  .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: 5px 5px 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 5px 5px; }
  .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 rgba(0, 0, 0, 0.05); }
  .sm-clean > li:first-child {
    border-top: 0; }
  .sm-clean ul {
    background: rgba(179, 179, 179, 0.1); }
    .sm-clean ul a, .sm-clean ul a:hover, .sm-clean ul a:focus, .sm-clean ul a:active {
      font-size: 0.8rem;
      border-left: 8px solid transparent; }
    .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: 16px solid transparent; }
    .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: 24px solid transparent; }
    .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: 32px solid transparent; }
    .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: 40px solid transparent; }

@media (min-width: 992px) {
  /* Switch to desktop layout
	-----------------------------------------------
	   These transform the menu tree from
	   collapsible to desktop (navbar + dropdowns)
	-----------------------------------------------*/
  /* start... (it's not recommended editing these rules) */
  .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; }
  /* ...end */
  .sm-clean {
    padding: 0 10px;
    background: #fff;
    border-radius: 100px; }
    .sm-clean a, .sm-clean a:hover, .sm-clean a:focus, .sm-clean a:active, .sm-clean a.highlighted {
      padding: 10px 10px;
      color: #555555;
      border-radius: 0 !important; }
    .sm-clean a:hover, .sm-clean a:focus, .sm-clean a:active, .sm-clean a.highlighted {
      color: #282c38; }
    .sm-clean a.current {
      color: #282c38; }
    .sm-clean a.disabled {
      color: #cccccc; }
    .sm-clean a.has-submenu {
      padding-right: 22px; }
    .sm-clean a .sub-arrow {
      top: 50%;
      margin-top: -2px;
      right: 10px;
      width: 0;
      height: 0;
      border-width: 4px;
      border-style: solid dashed dashed dashed;
      border-color: #555555 transparent transparent transparent;
      background: transparent;
      border-radius: 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: transparent transparent #c3cbd2 transparent; }
    .sm-clean > li > ul::after {
      top: -16px;
      left: 31px;
      border-width: 8px;
      border-color: transparent transparent #fff transparent; }
    .sm-clean ul {
      border: 1px solid #c3cbd2;
      padding: 5px 0;
      background: #fff;
      border-radius: 5px !important;
      box-shadow: 0 5px 9px none; }
      .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;
        padding: 10px 20px;
        color: #555555; }
      .sm-clean ul a:hover, .sm-clean ul a:focus, .sm-clean ul a:active, .sm-clean ul a.highlighted {
        background: #fff;
        color: #282c38; }
      .sm-clean ul a.current {
        color: #282c38; }
      .sm-clean ul a.disabled {
        background: #fff;
        color: #cccccc; }
      .sm-clean ul a.has-submenu {
        padding-right: 20px; }
      .sm-clean ul a .sub-arrow {
        right: 8px;
        top: 50%;
        margin-top: -5px;
        border-width: 5px;
        border-style: dashed dashed dashed solid;
        border-color: transparent transparent transparent #555555; }
    .sm-clean .scroll-up,
    .sm-clean .scroll-down {
      position: absolute;
      display: none;
      visibility: hidden;
      overflow: hidden;
      background: #fff;
      height: 20px; }
      .sm-clean .scroll-up:hover,
      .sm-clean .scroll-down:hover {
        background: #fff; }
    .sm-clean .scroll-up:hover .scroll-up-arrow {
      border-color: transparent transparent #282c38 transparent; }
    .sm-clean .scroll-down:hover .scroll-down-arrow {
      border-color: #282c38 transparent transparent transparent; }
    .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: transparent transparent #555555 transparent; }
    .sm-clean .scroll-down-arrow {
      top: 8px;
      border-style: solid dashed dashed dashed;
      border-color: #555555 transparent transparent transparent; }
    .sm-clean.sm-rtl a.has-submenu {
      padding-right: 10px;
      padding-left: 22px; }
    .sm-clean.sm-rtl a .sub-arrow {
      right: auto;
      left: 10px; }
    .sm-clean.sm-rtl.sm-vertical a.has-submenu {
      padding: 10px 20px; }
    .sm-clean.sm-rtl.sm-vertical a .sub-arrow {
      right: auto;
      left: 8px;
      border-style: dashed solid dashed dashed;
      border-color: transparent #555555 transparent transparent; }
    .sm-clean.sm-rtl > li > ul::before {
      left: auto;
      right: 30px; }
    .sm-clean.sm-rtl > li > ul::after {
      left: auto;
      right: 31px; }
    .sm-clean.sm-rtl ul a.has-submenu {
      padding: 10px 20px !important; }
    .sm-clean.sm-rtl ul a .sub-arrow {
      right: auto;
      left: 8px;
      border-style: dashed solid dashed dashed;
      border-color: transparent #555555 transparent transparent; }
    .sm-clean.sm-vertical {
      padding: 10px 0;
      border-radius: 5px; }
      .sm-clean.sm-vertical a {
        padding: 10px 20px; }
        .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: #fff; }
        .sm-clean.sm-vertical a.disabled {
          background: #fff; }
        .sm-clean.sm-vertical a .sub-arrow {
          right: 8px;
          top: 50%;
          margin-top: -5px;
          border-width: 5px;
          border-style: dashed dashed dashed solid;
          border-color: transparent transparent transparent #555555; }
      .sm-clean.sm-vertical > li > ul::before,
      .sm-clean.sm-vertical > li > ul::after {
        display: none; }
      .sm-clean.sm-vertical ul a {
        padding: 10px 20px; }
        .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: #fff; }
        .sm-clean.sm-vertical ul a.disabled {
          background: #fff; } }

.sm {
  z-index: 998; }

.sm-clean {
  display: inline-block;
  width: 100%;
  border-radius: 0;
  padding: 0; }
  .sm-clean ul li.active > a {
    text-decoration: underline; }
  .sm-clean ul li a:hover {
    text-decoration: underline; }
  .sm-clean .mega-menu-content {
    width: 100%;
    max-width: 100%;
    padding: 1.5rem 0; }
    .sm-clean .mega-menu-content .container {
      padding: 0; }
      .sm-clean .mega-menu-content .container .row {
        margin: 0;
        width: 100%; }
        .sm-clean .mega-menu-content .container .row h5.last {
          margin-top: 0; }
        .sm-clean .mega-menu-content .container .row ul {
          position: relative;
          display: block;
          margin-top: 0em;
          border: none;
          width: 100%; }
          .sm-clean .mega-menu-content .container .row ul li {
            border-top: 0;
            border-bottom: 1px solid #ecf2f5; }
            .sm-clean .mega-menu-content .container .row ul li a {
              font-size: 0.8rem;
              border-left: 0; }
              .sm-clean .mega-menu-content .container .row ul li a:hover, .sm-clean .mega-menu-content .container .row ul li a:focus, .sm-clean .mega-menu-content .container .row ul li a:active {
                background-color: #fff;
                text-decoration: underline; }
            .sm-clean .mega-menu-content .container .row ul li:last-child {
              border-bottom: none; }
          .sm-clean .mega-menu-content .container .row ul li.active > a {
            text-decoration: underline; }
    .sm-clean .mega-menu-content .col-12 {
      margin-bottom: 0; }
  .sm-clean.sm-vertical {
    display: block;
    width: 100%;
    padding: 0; }
    .sm-clean.sm-vertical li a {
      border-bottom: 1px solid #c3cbd2; }
    .sm-clean.sm-vertical li:last-child a {
      border-bottom: 0; }
    .sm-clean.sm-vertical .mega-menu-content {
      width: 54rem;
      max-width: 100%;
      padding: .5rem 1rem; }
      .sm-clean.sm-vertical .mega-menu-content ul {
        background: transparent; }
  .sm-clean .mega-menu-content .container .row ul li a:hover, .sm-clean .mega-menu-content .container .row ul li a:focus, .sm-clean .mega-menu-content .container .row ul li a:active {
    background-color: #fff; }
  .sm-clean .mega-menu-content.is-mega-menu a img {
    float: left;
    margin-right: 10px;
    max-width: 60px; }
  .sm-clean .mega-menu-content.is-mega-menu .cat-item {
    padding-top: 0.8rem;
    padding-bottom: 0.8rem; }
    .sm-clean .mega-menu-content.is-mega-menu .cat-item > a {
      padding: 0px; }
  .sm-clean .mega-menu-content.is-mega-menu .categories {
    overflow: hidden; }
    .sm-clean .mega-menu-content.is-mega-menu .categories > a {
      display: none; }
    .sm-clean .mega-menu-content.is-mega-menu .categories h5 {
      margin-bottom: 0.2rem; }
      .sm-clean .mega-menu-content.is-mega-menu .categories h5 > a {
        padding: 0px;
        font-weight: bold;
        font-size: 80%; }
    .sm-clean .mega-menu-content.is-mega-menu .categories .sub-cat p {
      line-height: 1.2;
      margin-bottom: 0px; }
    .sm-clean .mega-menu-content.is-mega-menu .categories .sub-cat a {
      display: inline-block;
      padding: 0px;
      text-transform: none;
      font-size: .75rem; }
    .sm-clean .mega-menu-content.is-mega-menu .categories .sub-cat a.active {
      text-decoration: underline; }
    .sm-clean .mega-menu-content.is-mega-menu .categories h5.active > a {
      color: #dc3545; }
  .sm-clean .mega-menu h5.active,
  .sm-clean .mega-menu h5:hover,
  .sm-clean .mega-menu h5:focus {
    color: #dc3545; }
    .sm-clean .mega-menu h5.active a:hover,
    .sm-clean .mega-menu h5:hover a:hover,
    .sm-clean .mega-menu h5:focus a:hover {
      text-decoration: none; }
  .sm-clean .mega-menu a:hover {
    text-decoration: underline; }
    .sm-clean .mega-menu a:hover h5.active,
    .sm-clean .mega-menu a:hover h5 {
      color: #dc3545;
      text-decoration: none; }
  .sm-clean .mega-menu a.no-underline {
    padding: 0px 20px; }
    .sm-clean .mega-menu a.no-underline:hover {
      text-decoration: none; }

.sm-vertical.sm-clean .mega-menu-content.is-mega-menu .cat-item {
  padding-top: 1rem;
  padding-bottom: 1rem; }

.sm-vertical.sm-clean a {
  font-size: 0.8rem;
  white-space: inherit; }
  .sm-vertical.sm-clean a:hover, .sm-vertical.sm-clean a:focus, .sm-vertical.sm-clean a:active {
    font-size: 0.8rem; }

.sm-vertical.sm-clean .mega-menu-content.is-mega-menu.mega-menu-2 .cat-item:nth-child(1), .sm-vertical.sm-clean .mega-menu-content.is-mega-menu.mega-menu-2 .cat-item:nth-child(2), .sm-vertical.sm-clean .mega-menu-content.is-mega-menu.mega-menu-2 .cat-item:nth-child(3) {
  padding-top: 0rem;
  border-top: 1px solid transparent;
  padding-bottom: 1rem; }

.sm-vertical.sm-clean .mega-menu-content.is-mega-menu.mega-menu-3 .cat-item:nth-child(1) {
  padding-top: 0rem;
  border-top: 1px solid transparent;
  padding-bottom: 1rem; }

#sm-products-menu-vertical #submenu-19 {
  display: block !important; }

#sm-products-menu-horizontal.sm-clean .mega-menu-content.is-mega-menu.mega-menu-3 .cat-item:nth-child(1) {
  padding-top: 0rem;
  border-top: 1px solid transparent;
  padding-bottom: 1rem; }

#sm-products-menu-horizontal.sm-clean .mega-menu-content.is-mega-menu.mega-menu-3 .cat-item:nth-child(2) {
  padding-top: 0rem;
  border-top: 1px solid transparent;
  padding-bottom: 1rem; }

ul#sm-products-menu-horizontal > li.active > a {
  background: #dc3545;
  color: #fff; }

#sm-products-menu-horizontal,
#sm-products-menu-horizontal > .has-mega-menu {
  position: static !important; }

#sm-products-menu-horizontal .mega-menu {
  margin-left: 0 !important;
  right: 0 !important;
  width: auto !important;
  max-width: none !important;
  border-radius: 0 !important;
  border-left: none !important;
  border-right: none !important; }
  #sm-products-menu-horizontal .mega-menu::before, #sm-products-menu-horizontal .mega-menu::after {
    display: none; }

#sm-products-menu-horizontal > .has-mega-menu .scroll-up,
#sm-products-menu-horizontal > .has-mega-menu .scroll-down {
  margin-left: 0 !important; }

#sm-products-menu-horizontal .mega-menu > li {
  overflow: auto; }

#sm-products-menu-horizontal .mega-menu ul {
  position: static;
  display: block;
  border: 0;
  padding: 0;
  width: auto;
  background: transparent;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none; }

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

@media (min-width: 992px) {
  .sm-clean ul a {
    padding: 5px 20px; }
    .sm-clean ul a:hover, .sm-clean ul a:focus, .sm-clean ul a:active {
      padding: 5px 20px; }
  .sm-clean ul a.highlighted {
    padding: 5px 20px; }
  .sm-clean .mega-menu-content .container .row ul li a {
    padding-top: 0.8rem;
    padding-bottom: 0.8rem; }
  .sm-clean li.active > a > .sub-arrow {
    margin-top: -.25rem;
    border-color: transparent transparent transparent #fff; }
  .sm-clean li ul li.active > a > .sub-arrow {
    border-color: transparent transparent transparent #555555; }
  .sm-clean li.default li.active a .sub-arrow {
    right: inherit;
    border-color: #dc3545 transparent transparent transparent; }
  .sm-clean.sm-vertical .menu-typ-0 ul a {
    padding: 5px 20px; }
  .sm-clean .menu-typ-0 > ul {
    padding: 20px 0px; }
  #sm-products-menu-horizontal > li > a {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem; }
    #sm-products-menu-horizontal > li > a:hover, #sm-products-menu-horizontal > li > a:focus, #sm-products-menu-horizontal > li > a:active {
      padding-top: 0.5rem;
      padding-bottom: 0.5rem; }
  #sm-products-menu-horizontal > li > a.highlighted {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem; }
  #sm-products-menu-vertical.sm-vertical > li.active > a {
    background: #dc3545;
    color: #fff; } }

@media only screen and (max-width: 1200px) {
  .sm-clean.sm-vertical .mega-menu-content .col-12:last-child {
    margin-top: 1.5rem; } }

@media only screen and (max-width: 992px) {
  .sm-clean .mega-menu-content .col-12:last-child {
    margin-top: 1.5rem; }
  .sm-clean.sm-vertical li a {
    border-bottom: 0; } }

@media (max-width: 992px) {
  .sm-clean a .sub-arrow {
    background: white;
    color: #282c38; }
  .sm-clean .mega-menu-content.is-mega-menu .categories .sub-cat p {
    border-left: 8px solid transparent; } }

@media (max-width: 768px) {
  .sm-vertical.sm-clean .mega-menu-content.is-mega-menu.mega-menu-2 .cat-item:nth-child(3) {
    padding-top: 1rem;
    border-top: 1px solid #ccc; }
  #sm-products-menu-horizontal.sm-clean .mega-menu-content.is-mega-menu.mega-menu-3 .cat-item:nth-child(2) {
    padding-top: 1rem;
    border-top: 1px solid #ccc; } }

@media (max-width: 576px) {
  .sm-vertical.sm-clean .mega-menu-content.is-mega-menu.mega-menu-2 .cat-item:nth-child(2) {
    padding-top: 1rem;
    border-top: 1px solid #ccc; } }

@media only screen and (max-width: 767px) {
  .sm-clean .mega-menu-content .col-12 {
    margin-top: 1.5rem; }
    .sm-clean .mega-menu-content .col-12:first-child {
      margin-top: 0; } }

.sm-clean .sm-nowrap > li > a,
.sm-clean .sm-nowrap > li > :not(ul) a,
.sm-clean ul a,
.sm-clean.sm-vertical a {
  white-space: normal !important; }
