/* Mobile first layout SmartMenus Core CSS (it's not recommended editing these rules)
   You need this once per page no matter how many menu trees or different themes you use.
-------------------------------------------------------------------------------------------*/

.sm{position:relative;z-index:9999;}
.sm,.sm ul,.sm li{display:block;list-style:none;margin:0px;padding:0;line-height:normal;direction:ltr;text-align:left;-webkit-tap-highlight-color:rgba(0,0,0,0);}
.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;}
.sm a{display:block;}
.sm a.disabled{cursor:not-allowed;}
.sm:after{content:"\00a0";display:block;height:0;font:0px/0 serif;clear:both;visibility:hidden;overflow:hidden;}
.sm,.sm *,.sm *:before,.sm *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;}
/* SM Blue
-------------------------------------------------------------------------------------------*/
.sm-blue {  background: transparent;  -webkit-border-radius: 8px;  -moz-border-radius: 8px;  -ms-border-radius: 8px;  -o-border-radius: 8px;  border-radius: 8px;  -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);  -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);}
.sm-blue a, .sm-blue a:hover, .sm-blue a:focus, .sm-blue a:active {  padding: 10px 20px;	/* make room for the toggle button (sub indicator) */  padding-right: 58px;  color: white;   font-size: 0.95rem; text-transform: uppercase;  font-weight: bold;  line-height: 23px;  text-decoration: none;}
.sm-blue a.current {  background: #006892;  background-image: -webkit-gradient(linear, to bottom, to top, color-stop(0%, #006188), color-stop(100%, #006f9c));  background-image: -webkit-linear-gradient(to bottom, #006188, #006f9c);  background-image: -moz-linear-gradient(to bottom, #006188, #006f9c);  background-image: -o-linear-gradient(to bottom, #006188, #006f9c);  background-image: linear-gradient(to bottom, #006188, #006f9c);  color: white; }
.sm-blue a.disabled {  color: #a1d1e8;}
.sm-blue a span.sub-arrow {  position: absolute;  top: 50%;  margin-top: -17px;  left: auto;  right: 4px;  width: 34px;  height: 34px;  overflow: hidden;  font: bold 16px/34px monospace !important;  text-align: center;  text-shadow: none;  background: rgba(0, 0, 0, 0.1);  -webkit-border-radius: 4px;  -moz-border-radius: 4px;  -ms-border-radius: 4px;  -o-border-radius: 4px;  border-radius: 4px;}
.sm-blue a.highlighted span.sub-arrow:before {  display: block;  content: '-';}
.sm-blue > li:first-child > a, .sm-blue > li:first-child > :not(ul) a {}
.sm-blue > li:last-child > a, .sm-blue > li:last-child > *:not(ul) a, .sm-blue > li:last-child > ul,
.sm-blue > li:last-child > ul > li:last-child > a, .sm-blue > li:last-child > ul > li:last-child > *:not(ul) a, .sm-blue > li:last-child > ul > li:last-child > ul,
.sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > a, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul,
.sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul,
.sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul {
}
.sm-blue > li:last-child > a.highlighted, .sm-blue > li:last-child > *:not(ul) a.highlighted,
.sm-blue > li:last-child > ul > li:last-child > a.highlighted, .sm-blue > li:last-child > ul > li:last-child > *:not(ul) a.highlighted,
.sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted,
.sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted,
.sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted {  -webkit-border-radius: 0;  -moz-border-radius: 0;  -ms-border-radius: 0;  -o-border-radius: 0;  border-radius: 0;}
.sm-blue ul {  background: white;}
.sm-blue ul ul {  background: rgba(102, 102, 102, 0.1);}
.sm-blue ul a, .sm-blue ul a:hover, .sm-blue ul a:focus, .sm-blue ul a:active { background: 0 0; text-shadow: none; border-left: 8px solid transparent; text-transform: revert; color: #0e457c;}
.sm-blue ul a.current {  background: #006892;  background-image: -webkit-gradient(linear, to bottom, to top, color-stop(0%, #006188), color-stop(100%, #006f9c));  background-image: -webkit-linear-gradient(to bottom, #006188, #006f9c);  background-image: -moz-linear-gradient(to bottom, #006188, #006f9c);  background-image: -o-linear-gradient(to bottom, #006188, #006f9c);  background-image: linear-gradient(to bottom, #006188, #006f9c);  color: white;}
.sm-blue ul a.disabled {  color: #b3b3b3;}
.sm-blue ul ul a,
.sm-blue ul ul a:hover,
.sm-blue ul ul a:focus,
.sm-blue ul ul a:active {  border-left: 16px solid transparent;}
.sm-blue ul ul ul a,
.sm-blue ul ul ul a:hover,
.sm-blue ul ul ul a:focus,
.sm-blue ul ul ul a:active {  border-left: 24px solid transparent;}
.sm-blue ul ul ul ul a,
.sm-blue ul ul ul ul a:hover,
.sm-blue ul ul ul ul a:focus,
.sm-blue ul ul ul ul a:active {  border-left: 32px solid transparent;}
.sm-blue ul ul ul ul ul a,
.sm-blue ul ul ul ul ul a:hover,
.sm-blue ul ul ul ul ul a:focus,
.sm-blue ul ul ul ul ul a:active {  border-left: 40px solid transparent;}
.sm-blue ul li {  border-top: 1px solid #dddddd;}
.sm-blue ul li:first-child {  border-top: 0;}
#main-menu-state:checked ~ #main-menu { display: block!important;}

@media (min-width: 700px) {
  /* Switch to desktop layout
  -----------------------------------------------
     These transform the menu tree from
     collapsible to desktop (navbar + dropdowns)
  -----------------------------------------------*/
  /* start... (it's not recommended editing these rules) */
  .sm-blue ul {    position: absolute;    width: 12em;  }
  .sm-blue li {    float: left;  }
  .sm-blue.sm-rtl li {    float: right;  }
  .sm-blue ul li, .sm-blue.sm-rtl ul li, .sm-blue.sm-vertical li {    float: none;  }
  .sm-blue a {    white-space: nowrap;  }
  .sm-blue ul a, .sm-blue.sm-vertical a {    white-space: normal;  }
  .sm-blue .sm-nowrap > li > a, .sm-blue .sm-nowrap > li > :not(ul) a {    white-space: nowrap;  }
  /* ...end */
  .sm-blue {   -webkit-border-radius: 8px;    -moz-border-radius: 8px;    -ms-border-radius: 8px;    -o-border-radius: 8px;    border-radius: 8px;    -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);    -moz-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);  }
  .sm-blue a, .sm-blue a:hover, .sm-blue a:focus, .sm-blue a:active, .sm-blue a.highlighted {    padding: 8px 20px 8px 25px;  color: white; border-bottom: 3px solid transparent; }
  .sm-blue a:hover, .sm-blue a:focus, .sm-blue a:active, .sm-blue a.highlighted { border-bottom: 3px solid #357166; }
  .sm-blue a.current {    background: #006892;    background-image: -webkit-gradient(linear, to bottom, to top, color-stop(0%, #166616), color-stop(100%, #166616));    background-image: -webkit-linear-gradient(to bottom, #166616, #166616);    background-image: -moz-linear-gradient(to bottom, #166616, #166616);    background-image: -o-linear-gradient(to bottom, #166616, #166616);    background-image: linear-gradient(to bottom, #166616, #166616);    color: white;  }
  .sm-blue a.disabled {    background: #339933;    background-image: -webkit-gradient(linear, to bottom, to top, color-stop(0%, #339933), color-stop(100%, #339933));    background-image: -webkit-linear-gradient(to bottom, #339933, #339933);    background-image: -moz-linear-gradient(to bottom, #339933, #339933);    background-image: -o-linear-gradient(to bottom, #339933, #339933);    background-image: linear-gradient(to bottom, #339933, #339933);    color: #a1d1e8;  }
  .sm-blue a span.sub-arrow {        top: auto;    margin-top: 0;    bottom: -2px;    left: 50%;    margin-left: -5px;   right: 5%;    width: 0;    height: 0;    border-width: 4px;    border-style: solid dashed dashed dashed;    border-color: white transparent transparent transparent;    background: transparent;    -webkit-border-radius: 0;    -moz-border-radius: 0;    -ms-border-radius: 0;    -o-border-radius: 0;    border-radius: 0;}
  .sm-blue a.highlighted span.sub-arrow:before {    display: none;  }
  .sm-blue > li:first-child > a, .sm-blue > li:first-child > :not(ul) a {  }
  .sm-blue > li:last-child > a, .sm-blue > li:last-child > :not(ul) a {   }
  .sm-blue > li {    border-left: 1px solid #a1d1e8;  }
  .sm-blue > li:first-child {    border-left: 0; }
  .sm-blue ul {    border: 1px solid #a8a8a8;    padding: 7px 0;    background: white;    -webkit-border-radius: 0 0 4px 4px !important;    -moz-border-radius: 0 0 4px 4px !important;    -ms-border-radius: 0 0 4px 4px !important;    -o-border-radius: 0 0 4px 4px !important;    border-radius: 0 0 4px 4px !important;    -webkit-box-shadow: 0 5px 12px rgba(0, 0, 0, 0.2);    -moz-box-shadow: 0 5px 12px rgba(0, 0, 0, 0.2);    box-shadow: 0 5px 12px rgba(0, 0, 0, 0.2); max-width: 22em!important; }
  .sm-blue ul ul {    -webkit-border-radius: 4px !important;    -moz-border-radius: 4px !important;    -ms-border-radius: 4px !important;    -o-border-radius: 4px !important;    border-radius: 4px !important;    background: white;  }
  .sm-blue ul a, .sm-blue ul a:hover, .sm-blue ul a:focus, .sm-blue ul a:active, .sm-blue ul a.highlighted {  padding: 11px 23px;    background: transparent;    color: #155777;    -webkit-border-radius: 0 !important;    -moz-border-radius: 0 !important;    -ms-border-radius: 0 !important;    -o-border-radius: 0 !important;    border-radius: 0 !important; border-top: 1px solid #dddddd; }
  .sm-blue ul a:hover, .sm-blue ul a:focus, .sm-blue ul a:active, .sm-blue ul a.highlighted {     color: #155777; border-bottom: 2px solid #75918c;  }
  .sm-blue ul a.current {    background: #006892;    background-image: -webkit-gradient(linear, to bottom, to top, color-stop(0%, #006188), color-stop(100%, #006f9c));    background-image: -webkit-linear-gradient(to bottom, #006188, #006f9c);    background-image: -moz-linear-gradient(to bottom, #006188, #006f9c);    background-image: -o-linear-gradient(to bottom, #006188, #006f9c);    background-image: linear-gradient(to bottom, #006188, #006f9c);    color: white;  }
  .sm-blue ul a.disabled {    background: white;    color: #b3b3b3;  }
  .sm-blue ul a span.sub-arrow {    top: auto;    margin-top: 0;    bottom: 0px;    left: 50%;    margin-left: -5px;   right: 5%;    border-style: dashed dashed dashed solid;    border-color: transparent transparent transparent #a1d1e8; }
  .sm-blue ul li {    border: 0;  }
  .sm-blue span.scroll-up,
  .sm-blue span.scroll-down {    position: absolute;    display: none;    visibility: hidden;    overflow: hidden;    background: white;    height: 20px;  }
  .sm-blue span.scroll-up-arrow, .sm-blue span.scroll-down-arrow {    position: absolute;    top: -2px;    left: 50%;    margin-left: -8px;    width: 0;    height: 0;    overflow: hidden;    border-width: 8px;    border-style: dashed dashed solid dashed;    border-color: transparent transparent #2b82ac transparent;  }
  .sm-blue span.scroll-down-arrow {    top: 6px;    border-style: solid dashed dashed dashed;    border-color: #2b82ac transparent transparent transparent;  }
  .sm-blue.sm-rtl.sm-vertical a span.sub-arrow {    right: auto;    left: 10px;    border-style: dashed solid dashed dashed;    border-color: transparent #a1d1e8 transparent transparent;  }
  .sm-blue.sm-rtl > li:first-child > a, .sm-blue.sm-rtl > li:first-child > :not(ul) a {
    -webkit-border-radius: 0 8px 8px 0;    -moz-border-radius: 0 8px 8px 0;    -ms-border-radius: 0 8px 8px 0;    -o-border-radius: 0 8px 8px 0;    border-radius: 0 8px 8px 0;  }
  .sm-blue.sm-rtl > li:last-child > a, .sm-blue.sm-rtl > li:last-child > :not(ul) a {
    -webkit-border-radius: 8px 0 0 8px !important;
    -moz-border-radius: 8px 0 0 8px !important;
    -ms-border-radius: 8px 0 0 8px !important;
    -o-border-radius: 8px 0 0 8px !important;
    border-radius: 8px 0 0 8px !important;
  }
  .sm-blue.sm-rtl > li:first-child {    border-left: 1px solid #2b82ac;  }
  .sm-blue.sm-rtl > li:last-child {    border-left: 0;  }
  .sm-blue.sm-rtl ul a span.sub-arrow {    right: auto;    left: 10px;    border-style: dashed solid dashed dashed;    border-color: transparent #a1d1e8 transparent transparent;  }
  .sm-blue.sm-vertical {    -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);    -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);  }
  .sm-blue.sm-vertical a {    padding: 9px 23px;  }
  .sm-blue.sm-vertical a span.sub-arrow {    top: 50%;    margin-top: -5px;    bottom: auto;    left: auto;    margin-left: 0;    right: 10px;    border-style: dashed dashed dashed solid;    border-color: transparent transparent transparent #a1d1e8;  }
  .sm-blue.sm-vertical > li:first-child > a, .sm-blue.sm-vertical > li:first-child > :not(ul) a {
    -webkit-border-radius: 8px 8px 0 0;
    -moz-border-radius: 8px 8px 0 0;
    -ms-border-radius: 8px 8px 0 0;
    -o-border-radius: 8px 8px 0 0;
    border-radius: 8px 8px 0 0;
  }
  .sm-blue.sm-vertical > li:last-child > a, .sm-blue.sm-vertical > li:last-child > :not(ul) a {
    -webkit-border-radius: 0 0 8px 8px !important;
    -moz-border-radius: 0 0 8px 8px !important;
    -ms-border-radius: 0 0 8px 8px !important;
    -o-border-radius: 0 0 8px 8px !important;
    border-radius: 0 0 8px 8px !important;
  }
  .sm-blue.sm-vertical > li {    border-left: 0 !important;  }
  .sm-blue.sm-vertical ul {    -webkit-border-radius: 4px !important;    -moz-border-radius: 4px !important;    -ms-border-radius: 4px !important;    -o-border-radius: 4px !important;    border-radius: 4px !important;  }
  .sm-blue.sm-vertical ul a {    padding: 9px 23px;  }
}
.main-menu-btn {  position: relative;  display: inline-block;  width: 31px;  height: 30px;  text-indent: 28px; padding: 20px 20px; white-space: nowrap; box-sizing: border-box; overflow: hidden;  cursor: pointer;  -webkit-tap-highlight-color: rgba(0,0,0,0);}
/* hamburger icon */
.main-menu-btn-icon, .main-menu-btn-icon:before, .main-menu-btn-icon:after {   position: absolute;  top: 50%;  left: 2px;  height: 3px;  width: 32px;  background: #fff;  -webkit-transition: all 0.25s;  transition: all 0.25s;}
.main-menu-btn-icon:before {  content: '';  top: -7px;  left: 0;}
.main-menu-btn-icon:after {  content: '';  top: 7px;  left: 0;}
/* x icon */
#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon {  height: 0;  background: transparent;}
#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);}
/* hide menu state checkbox (keep it visible to screen readers) */
#main-menu-state {   position: absolute;  width: 1px;  height: 1px;  margin: -1px;  border: 0;  padding: 0;  overflow: hidden;  clip: rect(1px,1px,1px,1px);}
/* hide the menu in mobile view */
#main-menu-state:not(:checked) ~ #main-menu {  display: none;}
#main-menu-state:checked ~ #main-menu {  display: inline-flex;}
.main-menu-heading {    font-weight: bold;    float: left;    margin: 2px 20px;    font-size: 16px;    color: #fff;}

@media (min-width: 700px) {
  /* hide the button in desktop view */
  .main-menu-btn {    position: absolute;    top: -99999px;	float: right;  }
  .main-menu-heading {    display: none;  }
  /* always show the menu in desktop view */
  #main-menu-state:not(:checked) ~ #main-menu {    display: inline-flex;  }
}
/* Mega menus */
/* make mega menus take the full width of .main-nav */
#main-menu, #main-menu > li.mega-menu  { position:static !important; }
#main-menu > li > ul.mega-menu { margin-left: auto !important; margin-right: auto;  right: 0 !important; width: auto !important; max-width: 1220px !important;  }
#main-menu {  clear: both;  -webkit-box-shadow: none;  -moz-box-shadow: none;  box-shadow: none;}
.has-mega-menu {  position: static !important; }
.mega-menu {  margin-left: 0 !important;  right: 0 !important;  width: auto !important;  max-width: none !important;}
#main-menu > .has-mega-menu .scroll-up,
#main-menu > .has-mega-menu .scroll-down {  margin-left: 0 !important;}
/* clear any floats inside the mega menus */
#main-menu .mega-menu > li {  overflow: auto;}
/* reset mega menu list/link styles (which are inherited from the SmartMenus core/theme styles) */
#main-menu .mega-menu {  color: #353451;}
#main-menu .mega-menu ul {  position: static;  display: block;  margin: 0.83em 0;  border: 0;  padding: 0 20px 0 20px;  width: auto;  background: transparent;  -moz-box-shadow: none;  -webkit-box-shadow: none;  box-shadow: none;}
#main-menu .mega-menu ul li {  display: list-item;  list-style-type: disc; border-bottom: 1px solid #dddddd; padding: 8px 0; }
#main-menu .mega-menu a {  display: block;  border: 0;  padding: 0;  background: transparent;  text-decoration: none;  color: #155777; white-space: normal;}
#main-menu .mega-menu a:hover { text-decoration: underline;}
ul .mega-menu li { border-top: 0;}
.TL { font-size: 1.2rem; font-weight: 600; margin: 0.5rem 0 0.2rem 0;  padding: 0.5rem 0 0.2rem 0; line-height: 1.5rem; border-bottom: 3px double #da3ab3; }
.TL2 { font-size: 1.2rem; font-weight: 600; margin: 1.5rem 0 0.2rem 0;  padding: 0.5rem 0 0.2rem 0; line-height: 1.5rem; border-bottom: 3px double #da3ab3; }
.homel2 { background-color: #efefef !important; padding: .6rem 1rem .4rem !important; display: block !important; color: #da3ab3 !important; width: 24%; float: left; margin: 0 5px 10px 0; text-align: center; text-transform: uppercase !important;}
.homel2:hover { text-decoration: underline!important; }
/* simple columns inside the mega menus */

#main-menu .mega-menu .column-1-3 {  padding: 0 30px;}
#main-menu .mega-menu .column-1-2 {  padding: 0 30px;}

@media (min-width: 768px) {
#main-menu .mega-menu .column-1-3 {    float: left;    width: 33.33%;  }
#main-menu .mega-menu .column-1-1 {    width: 100%;    padding: 0 20px;    border-bottom: 1px solid wheat; display: inline-block;}
#main-menu .mega-menu .column-1-2 {    width: 90%;    padding: 0 20px;    border-bottom: dashed 1px;}
}

/* Sample image placeholder */
.mega-menu-sample-image {  margin: 0.83em 0;  border: 1px solid;  height: 80px;  line-height: 80px;  text-align: center;}
.mshop { font-size: 101%!important;}