/* Flexnav Base Styles */
.flexnav {
  -webkit-transition: none;
  -moz-transition: none;
  -ms-transition: none;
  transition: none;
  -webkit-transform-style: preserve-3d;
  overflow: hidden;
  margin: 0 auto;
  width: 100%;
  max-height: 0
}
  
.flexnav.opacity {
    opacity: 0
}
  
.flexnav.flexnav-show {
    max-height: 4000px;
    opacity: 1;
}
  
  .flexnav.one-page {
    position: fixed;
    top: 50px;
    right: 5%;
    max-width: 200px
  }
  
  .flexnav li {
    font-size: 100%;
    position: relative;
    overflow: hidden
}

.flexnav li:first-child {
      display: none;
}

.flexnav li li:first-child {
      display: block;
}

  .flexnav li a {
    position: relative;
    display: block;
    padding: 0 .96em;
    height: 50px;
    z-index: 2;
    line-height: 50px;
    /*overflow: hidden;*/
    color: #003768;
    border-bottom: 1px solid rgba(0, 0, 0, 0.15);
    text-decoration: none;
}
  .flexnav li ul {
    width: 100%
  }
    
.flexnav li ul li {
  font-size: 100%;
  position: relative;
  overflow: hidden
}

.flexnav li ul.flexnav-show li {
    overflow: visible
}

.flexnav li ul li a {
    display: block;
    background: #E3D5B1
}
  
.flexnav ul li ul li a {
    background: #E2D9C3
}
  
.flexnav ul li ul li ul li a {
    background: #cbcbc9
}

.flexnav .touch-button {
    position: absolute;
    z-index: 999;
    top: 0;
    right: 0;
    width: 50px;
    height: 50px;
    display: inline-block;
    background: #acaca1;
    background: rgba(0, 0, 0, 0.075) url(../img/navdown.png) no-repeat scroll center center;
    text-align: center; 
}
    
.flexnav .touch-button:hover {
      cursor: pointer
}

.flexnav .touch-button .navicon {
      position: relative;
      top: 1.4em;
      font-size: 12px;
      color: #666
  }

.menu-button {
  position: relative;
  display: block;
  padding: 0 0.5em;
  background: #003768;
  color: #fff;
  cursor: pointer;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2)
}

.menu-button.one-page {
    position: fixed;
    top: 0;
    right: 5%;
    padding-right: 45px
}
  
.menu-button .touch-button {
    position: relative;
    top: 2px;
    background: url(../img/burger.png) no-repeat center;
    width: 50px;
    height: 40px;
    display: inline-block;
    text-align: center; 
    z-index: 1000;
  }

.menu-button .touch-button .navicon {
      font-size: 16px;
      position: relative;
      top: 1em;
      color: #666;
}



@media all and (min-width: 942px) {

  #topnav {
  width: 100%;
  height: 26px;
  position: absolute;
  top: 192px;
  left: 20px;
  margin-top: 0;
  z-index: 99;
  background: rgba(0, 0, 0, 0) url("../img/top-nav-bg.gif") no-repeat scroll 915px bottom;
}


.flexnav {
    overflow: visible;
}

ul.flexnav {position:relative;font-weight: bold}
ul.flexnav2 {font-weight: normal}

.flexnav.opacity {
  opacity: 1; 
}


.flexnav li {
      position: relative;
      margin-right: 1%;
      float: left;
      display: block;
      overflow: visible;
      width: auto;
}

.flexnav li a {
      padding: 0 8px;
      line-height: 27px;
      height: auto;
      font-size: 105%;
      background: #fff url("../img/topnav-bg.gif") no-repeat scroll left bottom;
      color: #003867;
      border-bottom: none;
}


.flexnav2 li a, .flexnav3 li a {background-image: none;}

.flexnav li ul li a, .flexnav ul li ul li a  {
  background: #fff;
}


.flexnav li ul li a, .flexnav ul ul a:visited {
    background: #fff url(../img/top-nav-level-bg.gif) repeat-y scroll 0 0;
    border-right: 1px solid #c3aa71;
    border-top: 1px solid #c3aa71;
    color: #003867;
    height: auto;
    line-height: 1.4em;
    padding: 7px 5px 7px 12px;
    width: 220px;
}



 
ul.flexnav li a.firstactive, 
ul.flexnav li a.secondactive,
ul.flexnav li a.thirdactive,
ul.flexnav li a.fourthactive,
ul.flexnav li a.fifthactive,
ul.flexnav li a.sixthactive,
ul.flexnav li a.seventhactive,
ul.flexnav li a.eightthhactive
 {
    background: rgba(0, 0, 0, 0) url("../img/topnav-active-bg.gif") no-repeat scroll left bottom;
    color: #fff;
}

ul.flexnav2 li a.firstactive, 
ul.flexnav2 li a.secondactive,
ul.flexnav2 li a.thirdactive,
ul.flexnav2 li a.fourthactive,
ul.flexnav2 li a.fifthactive,
ul.flexnav2 li a.sixthactive,
ul.flexnav2 li a.seventhactive,
ul.flexnav2 li a.eightthhactive
 {
    background: url(../img/top-nav-level-bg.gif) repeat-y #fff;
    color: #003867;
}

ul.flexnav2 li a.firstactive:hover, 
ul.flexnav2 li a.secondactive:hover,
ul.flexnav2 li a.thirdactive:hover,
ul.flexnav2 li a.fourthactive:hover,
ul.flexnav2 li a.fifthactive:hover,
ul.flexnav2 li a.sixthactive:hover,
ul.flexnav2 li a.seventhactive:hover,
ul.flexnav2 li a.eightthhactive:hover
 {
    background: url(../img/top-nav-level-hover-bg.gif) repeat-y transparent;
    color: #003867;
}




.flexnav2 li { border-bottom: none;}

.flexnav2 a:hover {
    background: url(../img/top-nav-level-hover-bg.gif) repeat-y scroll left top;
}

.flexnav2 a.first {border-top: none}

.flexnav2 li:last-child a {
  padding-bottom: 8px;
  background: url(../img/topnav-last-bg.png) left bottom #fff
}

.flexnav2 li:last-child a:hover {
  background: url(../img/topnav-last-hover-bg.png) left bottom #fff 
}

.flexnav3 li a, .flexnav3 li:last-child a {
  background-image: none !important;
}

.flexnav3 { 
  border-top: 1px solid #c3aa71;
  border-bottom: 1px solid #c3aa71;
}

.flexnav3 li a {
  border-top: 1px solid #ede3cb;
  border-right: 1px solid #ede3cb;
  border-left: 1px solid #ede3cb;
}

.flexnav  ul.flexnav3 li a {width: 220px}
.flexnav  ul.flexnav3 li a:hover {background-color: #ede3cb}

    
.flexnav li > ul {
      position: absolute;
      top: 22px;
      left: 0;
      width: 220px;
}

.flexnav li > ul li {
       /* width: 230px;*/
}

.flexnav li ul li > ul {
      margin-left: 100%;
      top: 0
}
    .flexnav li ul li a {
      border-bottom: none
}


    .flexnav li ul.open {
      display: block;
      opacity: 1;
      visibility: visible;
      z-index: 1;
}

.flexnav li ul.open li {
        overflow: visible;
        max-height: 100px
}

.flexnav li ul.open ul.open {
        margin-left: 100%;
        top: 0
}


.flexnav .touch-button {

   /*background: rgba(0, 0, 0, 0.035) none repeat scroll 0 0;*/
   background: transparent;
    display: inline-block;
    height: 40px;
    position: absolute;
    right: 0;
    width: 10px;
    z-index: 999;
}




.menu-button {
    display: none
  } 
}




@media all and (min-width: 769px) {

.flexnav a.firstactive + ul.flexnav2,
.flexnav a.secondactive + ul.flexnav2,
.flexnav a.thirdactive + ul.flexnav2,
.flexnav a.fourthactive + ul.flexnav2,
.flexnav a.fifthactive + ul.flexnav2,
.flexnav a.sixthactive + ul.flexnav2,
.flexnav a.seventhactive + ul.flexnav2,
.flexnav a.eightthhactive + ul.flexnav2

 {
  display:none !important;
}

.flexnav li:nth-child(4)  > ul.flexnav2 {display:none !important}
}

@media all and (min-width: 988px) {

  #topnav {
  width: 100%;
  max-width: 975px;
}
}

@media only screen 
  and (min-width: 768px) 
  and (max-width: 1530px) {
  
  ul.flexnav li:last-child ul ul.flexnav3 {
    margin-right: 0;
    left: auto;
    right: 219px;
    border-left: 1px solid #c3aa71
  }
}

@media all and (max-width: 768px) {

.flexnav.flexnav-show {
    -webkit-transition: all .5s ease-in-out;
    -moz-transition: all .5s ease-in-out;
    -ms-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out
  }
}

@media all and (max-width: 920px) {
    /*.flexnav li {
        margin-right: 0.4%
    }*/
    
    .flexnav li a {
        padding: 0 4px
    }
    
}


/*.oldie body.one-page {
  padding-top: 70px; }
.oldie .flexnav {
  overflow: visible; }
  .oldie .flexnav.one-page {
    top: 0;
    right: auto;
    max-width: 1080px; }
  .oldie .flexnav li {
    position: relative;
    list-style: none;
    float: left;
    display: block;
    background-color: #a6a6a2;
    width: 20%;
    min-height: 50px;
    overflow: visible; }
  .oldie .flexnav li:hover > ul {
    display: block;
    width: 100%;
    overflow: visible; }
    .oldie .flexnav li:hover > ul li {
      width: 100%;
      float: none; }
  .oldie .flexnav li a {
    border-left: 1px solid #acaca1;
    border-bottom: none;
    overflow: visible; }
  .oldie .flexnav li > ul {
    background: #acaca1;
    position: absolute;
    top: auto;
    left: 0;
    display: none;
    z-index: 1;
    overflow: visible; }
  .oldie .flexnav li ul li ul {
    top: 0; }
  .oldie .flexnav li ul li a {
    border-bottom: none; }
  .oldie .flexnav li ul.open {
    display: block;
    width: 100%;
    overflow: visible; }
    .oldie .flexnav li ul.open li {
      width: 100%; }
    .oldie .flexnav li ul.open ul.open {
      margin-left: 100%;
      top: 0;
      display: block;
      width: 100%;
      overflow: visible; }
  .oldie .flexnav ul li:hover ul {
    margin-left: 100%;
    top: 0; }
.oldie .menu-button {
  display: none; }
.oldie.ie7 .flexnav li {
  width: 19.9%; } */
