/**
 * @file
 * Styles for menus in Showcase Lite.
 */

/*Menus*/
ul.menu {
  margin: 0;
  padding: 0;
  list-style: none;
}
ul.menu li {
  margin: 0;
  position: relative;
  list-style: none;
  padding: 0;
}
ul.menu li a,
ul.menu li span {
  padding: 10px 0 10px 20px;
  line-height: 150%;
  display: block;
  text-decoration: none;
  font-size: 12px;
  text-transform: uppercase;
  color: #2d2d2d;
}
.sidebar__section ul.menu li a:hover,
.sidebar__section ul.menu li span:hover {
  -ms-transform: translateX(5px);
  -webkit-transform: translateX(5px);
  transform: translateX(5px);
}
.region--light-typography ul.menu li a,
.region--light-typography ul.menu li a.is-active,
.region--light-typography ul.menu li.active-trail > a,
.region--light-typography ul.menu li span,
.region--light-typography ul.menu li span.is-active,
.region--light-typography ul.menu li.active-trail > span {
  color: #ffffff;
}
ul.menu li.menu-item--expanded ul {
  padding-left: 25px;
}

/*menu arrows*/
ul.menu li > a:before,
ul.menu li > span:before {
  font-family: "FontAwesome";
  content: "\f105";
  position: absolute;
  left: 0;
  top: 9px;
  font-size: 12px;
}
.region--light-typography ul.menu li > a:before,
.region--light-typography ul.menu li > span:before {
  color: #ffffff;
}

/*Main navigation*/
.header-container ul.menu {
  margin: 0;
  list-style: none;
  text-align: right;
}
.header__section ul.menu {
  padding: 15px 0;
}
.header-container ul.menu li {
  background: none;
  padding: 0;
  margin: 0;
  display: inline-block;
  float: none;
  z-index: 497;
}
.header-container ul.menu li a,
.header-container ul.menu li span {
  font-size: 12px;
  font-weight: 600;
  padding: 5px 17px;
  margin: 0 5px;
  color: #2d2d2d;
}
.headings-wide-spacing-enabled .header-container ul.menu li a,
.headings-wide-spacing-enabled .header-container ul.menu li span {
  letter-spacing: 0.25em;
  text-transform: uppercase;
}
.header-container .region--light-typography ul.menu li a,
.header-container .region--light-typography ul.menu li a:hover,
.header-container .region--light-typography ul.menu li a.is-active,
.header-container .region--light-typography ul.menu li.active-trail > a,

.header-container .region--light-typography ul.menu li span,
.header-container .region--light-typography ul.menu li span:hover,
.header-container .region--light-typography ul.menu li span.is-active,
.header-container .region--light-typography ul.menu li.active-trail > span {
  text-decoration: none;
  color: #ffffff;
}
.header-container ul.menu li a:before,
.header-container ul.menu li span:before {
  content: "";
  width: 0;
  height: 0;
}
.header-container ul.menu ul.menu {
  display: none;
}
@media (max-width:1199px) {
  .header-container ul.menu li a,
  .header-container ul.menu li span {
    margin: 0;
    padding: 5px 15px;
  }
  .header-container ul.menu {
    text-align: left;
  }
}
@media (max-width: 991px) {
  .header-container ul.menu li a,
  .header-container ul.menu li span {
    margin: 0 5px;
  }
}

/*header top*/
.header-top__section ul.menu {
  text-align: center;
}
.header-top__section ul.menu li a,
.header-top__section ul.menu li span {
  text-transform: none;
  padding: 0 15px;
  line-height: 1.2;
  margin: 0;
}
.header-top__section ul.menu li:first-child a,
.header-top__section ul.menu li:first-child span {
  padding-left: 0;
}
.header-top__section ul.menu li:last-child a,
.header-top__section ul.menu li:last-child span {
  padding-right: 0;
}
@media (min-width: 768px) {
  .header-top-first ul.menu {
    text-align: left;
  }
  .header-top-second ul.menu {
    text-align: right;
  }
}

/*footer menu*/
.footer__section ul.menu li a,
.footer__section ul.menu li span {
  padding: 8px 0 8px 30px;
  text-decoration: none;
}
.footer__section ul.menu li a:hover,
.footer__section ul.menu li span:hover {
  -ms-transform: translateX(5px);
  -webkit-transform: translateX(5px);
  transform: translateX(5px);
}
.footer__section ul.menu li a:before,
.footer__section ul.menu li span:before {
  top: 8px;
}
@media (max-width:767px) {
  .footer__section ul.menu {
    text-align: center;
  }
  .footer__section ul.menu li a,
  .footer__section ul.menu li span {
    padding: 7px 20px 8px 20px;
  }
  .footer__section ul.menu li > a:before,
  .footer__section ul.menu li > span:before {
    content: "";
    width: 0px;
    height: 0px;
  }
}

/*Footer Bottom menu*/
.footer-bottom__section ul.menu {
  margin: 0;
  padding: 0;
  list-style-type: none;
  text-align: center;
}
.footer-bottom__section ul.menu li {
  display: inline-block;
}
.footer-bottom__section ul.menu ul.menu {
  display: none;
}
.footer-bottom__section ul.menu li a,
.footer-bottom__section ul.menu li span {
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  margin: 0 20px 0 18px;
  padding: 5px 0;
  line-height: 1;
  border-bottom-color: transparent;
  border-bottom-width: 1px;
  border-bottom-style: solid;
}
.headings-wide-spacing-enabled .footer-bottom__section ul.menu li a,
.headings-wide-spacing-enabled .footer-bottom__section ul.menu li span {
  letter-spacing: 0.25em;
  text-transform: uppercase;
}
.footer-bottom__section ul.menu li a:hover,
.footer-bottom__section ul.menu li span:hover {
  border-bottom-color: #2d2d2d;
  text-decoration: none;
}
.region--light-typography .footer-bottom__section ul.menu li a:hover,
.region--light-typography .footer-bottom__section ul.menu li span:hover {
  border-bottom-color: #ffffff;
}
.footer-bottom__section ul.menu li:first-child a,
.footer-bottom__section ul.menu li:first-child span {
  margin-left: 0;
}
.footer-bottom__section ul.menu li:last-child a,
.footer-bottom__section ul.menu li:last-child span {
  margin-right: 0;
}
.footer-bottom__section ul.menu li a:before,
.footer-bottom__section ul.menu li span:before {
  content: "";
  width: 0;
  height: 0;
}
@media (max-width:991px) {
  .footer-bottom__section ul.menu {
    text-align: center;
    padding: 10px 0;
  }
}
@media (max-width:767px) {
  .footer-bottom__section ul.menu li {
    display: block;
    margin: 10px 20px;
  }
  .footer-bottom__section ul.menu li:last-child a,
  .footer-bottom__section ul.menu li:first-child a,
  .footer-bottom__section ul.menu li a,
  .footer-bottom__section ul.menu li:last-child span,
  .footer-bottom__section ul.menu li:first-child span,
  .footer-bottom__section ul.menu li span {
    margin: 0 10px;
    display: inline-block;
    padding: 5px;
  }
}

/*Subfooter menu*/
.subfooter__section ul.menu {
  margin: 0;
  padding: 0;
  list-style-type: none;
  text-align: right;
}
.subfooter__section.subfooter-first ul.menu {
  text-align: left;
}
.subfooter__section ul.menu li {
  display: inline-block;
}
.subfooter__section ul.menu ul.menu {
  display: none;
}
.subfooter__section ul.menu li a,
.subfooter__section ul.menu li span {
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  margin: 0 20px 0 18px;
  padding: 2px 0;
  line-height: 1;
  border-bottom-color: transparent;
  border-bottom-width: 1px;
  border-bottom-style: solid;
}
.headings-wide-spacing-enabled .subfooter__section ul.menu li a,
.headings-wide-spacing-enabled .subfooter__section ul.menu li span {
  letter-spacing: 0.25em;
  text-transform: uppercase;
}
.subfooter__section ul.menu li a:hover,
.subfooter__section ul.menu li span:hover {
  border-bottom-color: #2d2d2d;
  text-decoration: none;
}
.region--light-typography .subfooter__section ul.menu li a:hover,
.region--light-typography .subfooter__section ul.menu li span:hover {
  border-bottom-color: #ffffff;
}
.subfooter__section ul.menu li:first-child a,
.subfooter__section ul.menu li:first-child span {
  margin-left: 0;
}
.subfooter__section ul.menu li:last-child a,
.subfooter__section ul.menu li:last-child span {
  margin-right: 0;
}
.subfooter__section ul.menu li a:before,
.subfooter__section ul.menu li span:before {
  content: "";
  width: 0;
  height: 0;
}
@media (max-width: 1199px) {
  .subfooter__section ul.menu li a,
  .subfooter__section ul.menu li span {
    margin: 0 8px 0 6px;
  }
}
@media (max-width: 991px) {
  .subfooter__section ul.menu {
    text-align: center;
    padding: 10px 0;
  }
}
@media (max-width: 767px) {
  .subfooter__section ul.menu li {
    display: block;
    margin: 10px 20px;
  }
  .subfooter__section ul.menu li:last-child a,
  .subfooter__section ul.menu li:first-child a,
  .subfooter__section ul.menu li a,
  .subfooter__section ul.menu li:last-child span,
  .subfooter__section ul.menu li:first-child span,
  .subfooter__section ul.menu li span {
    margin: 0 10px;
    display: inline-block;
    padding: 5px;
  }
}

/*superfish support*/
.sf-menu ul {
  display: none;
}
.header-container .sf-menu li.sfHover {
  z-index: 498;
}
.header-container .region--light-typography .sf-menu li a.is-active,
.header-container .region--light-typography .sf-menu li.active-trail > a,
.header-container .region--light-typography .sf-menu li.sfHover > a,
.header-container .region--light-typography .sf-menu li > a:hover,
.header-container .region--light-typography .sf-menu li span.is-active,
.header-container .region--light-typography .sf-menu li.active-trail > span,
.header-container .region--light-typography .sf-menu li.sfHover > span,
.header-container .region--light-typography .sf-menu li > span:hover {
  opacity: 0.75;
}
.header-container .sf-menu > li > ul {
  right: 0 !important;
}
.header-container .sf-menu.menu ul {
  display: none;
  margin-top: 30px;
  padding: 20px;
  text-align: left;
  left: 0;
  top: 100%;
  border-radius: 5px;
  -webkit-box-shadow: rgba(28, 56, 72, 0.1) 0px 2px 2px, rgba(28, 56, 72, 0.1) 0px 4px 4px, rgba(28, 56, 72, 0.1) 0px 8px 8px, rgba(28, 56, 72, 0.1) 0px 16px 16px, rgba(28, 56, 72, 0.1) 0px 32px 32px, rgba(28, 56, 72, 0.1) 0px 64px 64px;
  box-shadow: rgba(28, 56, 72, 0.1) 0px 2px 2px, rgba(28, 56, 72, 0.1) 0px 4px 4px, rgba(28, 56, 72, 0.1) 0px 8px 8px, rgba(28, 56, 72, 0.1) 0px 16px 16px, rgba(28, 56, 72, 0.1) 0px 32px 32px, rgba(28, 56, 72, 0.1) 0px 64px 64px;
}
.region--white-background .sf-menu.menu ul {
  background-color: #ffffff;
}
.region--gray-background .sf-menu.menu ul {
  background-color: #f4f4f4;
}
.header.region--gray-background .sf-menu.menu ul {
  background-color: #f1f1f1;
}
.region--black-background .sf-menu.menu ul {
  background-color: #1d1d1d;
}
.header-container .sf-menu ul li a,
.header-container .sf-menu ul li span {
  font-size: 14px;
  padding: 9px 0px 10px;
  display: block;
  text-transform: none;
  font-weight: 400;
}
.headings-wide-spacing-enabled .header-container .sf-menu ul li a,
.headings-wide-spacing-enabled .header-container .sf-menu ul li span {
  letter-spacing: 0;
  text-transform: none;
}
.header-container .sf-menu ul li:last-child a,
.header-container .sf-menu ul li:last-child span {
  border-bottom: none;
}
.header-container .sf-menu.menu ul ul {
  top: -20px;
  margin-left: 25px;
  margin-right: 25px;
  margin-top: 0;
}
@media (max-width: 992px) {
  .header-container .sf-menu.menu ul {
    margin-top: 20px;
  }
}

/*superfish menu arrows*/
.header-container ul.sf-menu > li > a.menuparent:after,
.header-container ul.sf-menu > li > span.menuparent:after {
  content: "\f107";
  font-family: 'FontAwesome';
  position: absolute;
  top: 4px;
  right: 6px;
  font-weight: 400;
  line-height: 20px;
  font-size: 10px;
}
.header-top__section ul.sf-menu > li > a.menuparent:after,
.header-top__section ul.sf-menu > li > span.menuparent:after {
  top: 0px;
  line-height: 14px;
  right: 5px;
}
.header-container ul.sf-menu ul li a.menuparent:after,
.header-container ul.sf-menu ul li span.menuparent:after {
  font-family: 'FontAwesome';
  content: "\f105";
  right: 0px;
  top: 10px;
  position: absolute;
  font-weight: 400;
}
@media (min-width: 992px) and (max-width: 1199px) {
  .header-container ul.sf-menu > li > a.menuparent:after,
  .header-container ul.sf-menu > li > span.menuparent:after {
    top: 4px;
    right: 3px;
  }
}

/* Superfish mega-menu support */
.header-container ul.sf-menu li.sf-multicolumn-column {
  display: inline;
  float: left;
}
.header-container ul.sf-menu ul li.sf-multicolumn-column a.menuparent,
.header-container ul.sf-menu ul li.sf-multicolumn-column span.menuparent {
  font-weight: bold;
}
.header-container ul.sf-menu ul li.sf-multicolumn-column a.menuparent:after,
.header-container ul.sf-menu ul li.sf-multicolumn-column span.menuparent:after {
  content: "";
}

/*Menu with call-to-action button*/
.header__section .menu.cta-active {
  padding: 5px 0;
}
.menu.cta-active > li:last-child > a,
.menu.cta-active > li:last-child > span {
  font-weight: 400;
  padding: 15px 30px;
  color: #ffffff;
  display: inline-block;
  line-height: 1;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  text-align: center;
  border-radius: 5px;
  border-width: 1px;
  border-style: solid;
  border-color: transparent;
  text-decoration: none;
  margin: 0 0 0 40px;
}
.headings-wide-spacing-enabled .menu.cta-active > li:last-child > a,
.headings-wide-spacing-enabled .menu.cta-active > li:last-child > span {
  letter-spacing: 0.25em;
  text-transform: uppercase;
}
.region--dark-background .menu.cta-active > li:last-child > a,
.region--dark-background .menu.cta-active > li:last-child > span {
  border-color: #ffffff;
  border-bottom-width: 1px;
}
.menu.cta-active > li:last-child > a.is-active,
.menu.cta-active > li:last-child > span.is-active {
  color: #ffffff;
}
.menu.cta-active > li:last-child > a:hover,
.menu.cta-active > li:last-child > span:hover {
  color: #ffffff;
}
.menu.cta-active--email > li:last-child > a:before,
.menu.cta-active--email > li:last-child > span:before {
  content: "\f0e0";
  font-family: "FontAwesome";
  padding-right: 10px;
  position: static;
  color: inherit;
  vertical-align: top;
}
@media (max-width: 1199px) {
  .menu.cta-active > li:last-child > a,
  .menu.cta-active > li:last-child > span {
    margin-left: 10px;
    padding: 15px;
  }
}
@media (max-width: 991px) {
  .menu.cta-active > li:last-child > a,
  .menu.cta-active > li:last-child > span {
    margin-left: 20px;
    padding: 15px 20px;
  }
}
.sf-accordion.sf-style-none.cta-active > li:last-child {
  text-align: center;
}
.sf-accordion.sf-style-none.cta-active > li:last-child > a,
.sf-accordion.sf-style-none.cta-active > li:last-child > span {
  display: block;
  padding: 15px 25px;
}
.region--colored-background .menu.cta-active > li:last-child > a,
.region--colored-background .menu.cta-active > li:last-child > span {
  background-color: #ffffff;
  -webkit-box-shadow: 0 0 15px rgba(255, 255, 255, 0.5);
  box-shadow: 0 0 15px rgba(255, 255, 255, 0.5);
}
.region--colored-background .menu.cta-active > li:last-child > a:hover,
.region--colored-background .menu.cta-active > li:last-child > span:hover {
  text-decoration: none;
  color: #ffffff;
}

/*Mobile Menu*/
.header-container .block-superfish {
  position: relative;
}
.header-container .sf-accordion-toggle.sf-style-none {
  text-align: right;
}
.header-container .sf-accordion-toggle.sf-style-none a,
.header-container .sf-accordion-toggle.sf-style-none span {
  padding: 15px 10px;
  display: inline-block;
  text-decoration: none;
}
.header-container .region--dark-typography .sf-accordion-toggle.sf-style-none a,
.header-container .region--dark-typography .sf-accordion-toggle.sf-style-none span {
  color: #2d2d2d;
}
.header-container .sf-accordion-toggle.sf-style-none a:after,
.header-container .sf-accordion-toggle.sf-style-none span:after {
  content: "\f0c9";
  font-family: "FontAwesome";
  font-size: 24px;
  line-height: 1;
}
.header-container .sf-accordion-toggle.sf-style-none a.sf-expanded,
.header-container .sf-accordion-toggle.sf-style-none span.sf-expanded {
  position: relative;
  right: auto;
  z-index: auto;
}
.header-container .sf-accordion-toggle.sf-style-none a.sf-expanded:after,
.header-container .sf-accordion-toggle.sf-style-none span.sf-expanded:after {
  content: "\f00d";
}
.header-container .sf-accordion-toggle.sf-style-none span {
  display: none;
}
.header-container ul.menu.sf-accordion {
  padding: 0;
  text-align: left;
  background: #ffffff;
  border-radius: 5px;
  border: 1px solid #eaeaea;
}
.header-container ul.menu.sf-accordion ul {
  padding: 0;
  margin: 0;
  border: none;
  box-shadow: none;
}
.header-container ul.menu.sf-accordion li a,
.header-container ul.menu.sf-accordion li span {
  border-bottom: 1px solid #eaeaea;
  text-transform: none;
  margin: 0;
  padding: 15px 30px;
  font-size: 13px;
}
.header-container ul.menu.sf-accordion li:last-child > a,
.header-container ul.menu.sf-accordion li:last-child > span {
  border-bottom-color: transparent;
}
.header-container ul.menu.sf-accordion ul li a,
.header-container ul.menu.sf-accordion ul li span {
  padding-left: 45px;
  border-top: 1px solid rgba(255, 255, 255, 0.25);
}
.header-container ul.menu.sf-accordion ul ul li a,
.header-container ul.menu.sf-accordion ul ul li span {
  padding-left: 60px;
}
.header-container ul.menu.sf-accordion ul ul ul li a,
.header-container ul.menu.sf-accordion ul ul ul li span {
  padding-left: 75px;
}
.header-container ul.menu.sf-accordion ul ul ul ul li a,
.header-container ul.menu.sf-accordion ul ul ul ul li span {
  padding-left: 90px;
}

/*mobile menu arrows*/
.header-container ul.sf-accordion li a.menuparent:after,
.header-container ul.sf-accordion li span.menuparent:after {
  content: "\f067";
  font-family: 'FontAwesome';
  position: absolute;
  border-left: 1px solid #eaeaea;
  top: 0;
  right: 0;
  text-align: center;
  font-size: 12px;
  font-weight: 400;
  line-height: 52px;
  width: 50px;
  height: 50px;
}
.header-container ul.sf-accordion li.sf-expanded>a.menuparent:after,
.header-container ul.sf-accordion li.sf-expanded>span.menuparent:after {
  content: "\f068";
}
.header-container ul.sf-accordion ul li a.menuparent:after,
.header-container ul.sf-accordion ul li span.menuparent:after {
  content: "\f067";
  top: 0;
  right: 0;
  left: auto;
}

/*Mobile Menu at slideout region*/
.slideout .block-superfish {
  position: relative;
}
.slideout .sf-accordion-toggle.sf-style-none {
  display: none;
}
.slideout ul.menu.sf-accordion {
  padding: 0;
  text-align: left;
  background: #f6f8f9;
  border-radius: 5px;
  border-width: 0;
  display: block;
}
.slideout ul.menu.sf-accordion ul {
  padding: 0;
  margin: 0;
  border: none;
  box-shadow: none;
  background-color: #ffffff;
}
.slideout ul.menu.sf-accordion li a,
.slideout ul.menu.sf-accordion li span {
  border-bottom-width: 0;
  text-transform: none;
  margin: 0;
  padding: 15px 0;
  font-size: 13px;
}
.slideout ul.menu.sf-accordion ul li a,
.slideout ul.menu.sf-accordion ul li span {
  padding-left: 20px;
  border-top-width: 0;
}
.slideout ul.menu.sf-accordion ul ul li a,
.slideout ul.menu.sf-accordion ul ul li span {
  padding-left: 30px;
}
.slideout ul.menu.sf-accordion ul ul ul li a,
.slideout ul.menu.sf-accordion ul ul ul li span {
  padding-left: 45px;
}
.slideout ul.menu.sf-accordion ul ul ul ul li a,
.slideout ul.menu.sf-accordion ul ul ul ul li span {
  padding-left: 60px;
}
.slideout .sf-accordion.sf-style-none.cta-active > li:last-child > a,
.slideout .sf-accordion.sf-style-none.cta-active > li:last-child > span {
  margin-top: 10px;
}

/*mobile menu arrows*/
.slideout ul.sf-accordion li > a:before,
.slideout ul.sf-accordion li > span:before {
  content: "";
}
.slideout ul.sf-accordion li a.menuparent:after,
.slideout ul.sf-accordion li span.menuparent:after {
  content: "\f067";
  font-family: 'FontAwesome';
  position: absolute;
  border-left-width: 0;
  top: 0;
  right: 10px;
  text-align: right;
  font-size: 12px;
  font-weight: 400;
  line-height: 52px;
  width: 50px;
  height: 50px;
}
.slideout ul.sf-accordion li.sf-expanded>a.menuparent:after,
.slideout ul.sf-accordion li.sf-expanded>span.menuparent:after {
  content: "\f068";
}
.slideout ul.sf-accordion ul li a.menuparent:after,
.slideout ul.sf-accordion ul li span.menuparent:after {
  content: "\f067";
  top: 0;
  right: 0;
  left: auto;
}

/*Mobile menu @colored regions*/
.region--light-typography ul.menu.sf-accordion {
  background: transparent;
  border-color: rgba(255, 255, 255, 0.1);
}
.region--light-typography ul.menu.sf-accordion ul {
  background-color: transparent;
}
.region--light-typography ul.menu.sf-accordion li a,
.region--light-typography ul.menu.sf-accordion li span {
  border-bottom-color: rgba(255, 255, 255, 0.1);
  color: #ffffff;
}
.region--light-typography ul.menu.sf-accordion ul li a,
.region--light-typography ul.menu.sf-accordion ul li span {
  border-top-color: rgba(255, 255, 255, 0.1);
}
.region--light-typography ul.sf-accordion li a.menuparent:after,
.region--light-typography ul.sf-accordion li span.menuparent:after {
  border-color: rgba(255, 255, 255, 0.1);
}
