@charset "utf-8";
#genmenu,
#genmenu ul,
#genmenu ul li,
#genmenu ul li a,
#genmenu #menu-button {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
  line-height: 1;
  display: block;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#genmenu:after,
#genmenu > ul:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}
#genmenu #menu-button {
  display: none;
}
#genmenu {
  width: auto;
  line-height: 1; text-align:right;
}
#menu-line {
  position: absolute;
  top: 0;
  left: 0;
  height: 3px;
  background: #009ae1;
  -webkit-transition: all 0.25s ease-out;
  -moz-transition: all 0.25s ease-out;
  -ms-transition: all 0.25s ease-out;
  -o-transition: all 0.25s ease-out;
  transition: all 0.25s ease-out;
}
#genmenu > ul > li {
display:inline-block; *display:inline;*zoom:1; 
}
#genmenu.align-center > ul {
  font-size: 0;
  text-align: center;
}
#genmenu.align-center > ul > li {
  display: inline-block;
  float: none;
}
#genmenu.align-center ul ul {
  text-align: left;
}
#genmenu.align-right > ul > li {
  float: right;
}
#genmenu.align-right ul ul {
  text-align: right;
}
#genmenu > ul > li > a {
padding:0px; padding:0 3px; margin:0px 33px; line-height:98px; 
	text-decoration:none; transition: all 0.3s; -webkit-transition: all 0.3s;
	display:block; font-family:opensansregularregular,Arial, Helvetica, sans-serif;
	
}
#genmenu > ul > li > a.req {}
#genmenu > ul > li:hover > a,
#genmenu > ul > li.active > a { color:#f37e17; }
#genmenu > ul > li:hover > a.req {color:#fff;}
#genmenu > ul > li > a:after {    content: '';
    position: absolute;
    left: 0;
    bottom: 1px;
    width: 100%;
    height: 3px;
    background: #f37e17;
    -webkit-transform: scale(0,1);
    transform: scale(0,1);
    -webkit-transform-origin: left center;
    transform-origin: left center;
    -webkit-transition: -webkit-transform ease-out 350ms;
    transition: -webkit-transform ease-out 350ms;
    transition: transform ease-out 350ms;
    transition: transform ease-out 350ms,-webkit-transform ease-out 350ms;}
#genmenu > ul > li:hover>a:after{-webkit-transform:scale(1,1);transform:scale(1,1)}
/*#genmenu > ul > li.has-sub > a {
  padding-right: 25px;
}
#genmenu > ul > li > a::after {
    content: '';
    display: block;
    width: 0;
    height: 2px;
    background: #da251d;
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transition: all 200ms ease-in-out;
    -moz-transition: all 200ms ease-in-out;
    -ms-transition: all 200ms ease-in-out;
    -o-transition: all 200ms ease-in-out;
    transition: all 200ms ease-in-out;
}
#genmenu > ul > li > a:hover:after {
 width:100%;
 left:0
}
#genmenu > ul > li.has-sub > a::after {
  position: absolute;
  top: 16px;
  right: 5px;
  width: 4px;
  height: 4px;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: border-color 0.2s ease;
  -moz-transition: border-color 0.2s ease;
  -ms-transition: border-color 0.2s ease;
  -o-transition: border-color 0.2s ease;
  transition: border-color 0.2s ease;
}
#genmenu > ul > li.has-sub:hover > a::after {
  border-color: #fff;
}*/
#genmenu ul ul {
  position: absolute;
width:225px; z-index:999; background:#fff; padding:5px 0;box-shadow: 0 0 7px rgba(0, 0, 0, 0.12);
	-moz-box-shadow: 0 0 7px rgba(0, 0, 0, 0.12);
	-webkit-box-shadow: 0 0 7px rgba(0, 0, 0, 0.12);
	transform: translateY(10px);
	-webkit-transform: translateY(10px);
	-ms-transform: translateY(10px);
	-o-transform: translateY(10px);
	-moz-transform: translateY(10px);
	transition: all 300ms ease 0s;
	-webkit-transition: all 300ms ease 0s;
	-moz-transition: all 300ms ease 0s;
	-ms-transition: all 300ms ease 0s;
	-o-transition: all 300ms ease 0s;
	visibility: hidden;
	opacity: 0;
	-khtml-opacity: 0;
	-webkit-opacity: 0;
	-moz-opacity: 0;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
	filter: alpha(opacity=0);
	min-width: auto;
}
#genmenu li:hover > ul {
  left:30px; top:95px;background-color:#fff;opacity: 1;
	-khtml-opacity: 1;
	-webkit-opacity: 1;
	-moz-opacity: 1; 
	filter: alpha(opacity=100);
	transform: translateY(0);
	-webkit-transform: translateY(0);
	-ms-transform: translateY(0);
	-o-transform: translateY(0);
	-moz-transform: translateY(0);
	visibility: visible;
	display: block;
}
#genmenu.align-right li:hover > ul {
  right: 0;
}
#genmenu ul ul ul {
  margin-left: 100%;
  top: 0;
}
#genmenu.align-right ul ul ul {
  margin-left: 0;
  margin-right: 100%;
}
#genmenu ul ul li {
  height: 0;
  -webkit-transition: height .2s ease;
  -moz-transition: height .2s ease;
  -ms-transition: height .2s ease;
  -o-transition: height .2s ease;
  transition: height .2s ease;
}
#genmenu ul li:hover > ul > li {
  height: auto;
}
#genmenu ul ul li a {
  padding:6px 15px; display:block; text-transform:none; text-align:left; 
  font-size: 15px; line-height:24px; font-weight:normal;
  text-decoration: none;
  color: #444;
  -webkit-transition: color .2s ease;
  -moz-transition: color .2s ease;
  -ms-transition: color .2s ease;
  -o-transition: color .2s ease;
  transition: color .2s ease;
}
#genmenu ul ul li:hover > a,
#genmenu ul ul li a:hover {
  color: #f37e17; 
}
#genmenu ul ul li.has-sub > a::after {
  position: absolute;
  top: 13px;
  right: 10px;
  width: 4px;
  height: 4px;
  border-bottom: 1px solid #dddddd;
  border-right: 1px solid #dddddd;
  content: "";
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: border-color 0.2s ease;
  -moz-transition: border-color 0.2s ease;
  -ms-transition: border-color 0.2s ease;
  -o-transition: border-color 0.2s ease;
  transition: border-color 0.2s ease;
}
#genmenu.align-right ul ul li.has-sub > a::after {
  right: auto;
  left: 10px;
  border-bottom: 0;
  border-right: 0;
  border-top: 1px solid #dddddd;
  border-left: 1px solid #dddddd;
}
#genmenu ul ul li.has-sub:hover > a::after {
  border-color: #ffffff;
}
@media screen and (max-width: 1680px) {
	#genmenu > ul > li > a { }
	}
@media screen and (max-width: 1280px) {
	#genmenu > ul > li > a {margin: 3px 32px; }
	}
@media screen and (max-width: 1170px) {
	#genmenu > ul > li > a {margin: 3px 25px;}
	}
@media screen and (max-width: 1024px) {
	#genmenu > ul > li > a { margin: 3px 18px;}
	}
	
@media screen and (max-width: 860px) {
	#genmenu > ul > li > a {font-size:0.85em;padding:0 3px; margin:3px 10px; font-weight:normal;}
	}
@media all and (max-width: 768px), only screen and (-webkit-min-device-pixel-ratio: 2) and (max-width: 1000px), only screen and (min--moz-device-pixel-ratio: 2) and (max-width: 1000px), only screen and (-o-min-device-pixel-ratio: 2/1) and (max-width: 1024px), only screen and (min-device-pixel-ratio: 2) and (max-width: 1000px), only screen and (min-resolution: 192dpi) and (max-width: 1000px), only screen and (min-resolution: 2dppx) and (max-width: 1000px) {
  #genmenu {
    width: 70%; float:right;
  }
  #genmenu ul {
    width: 100%;
    display: none; position:absolute; background:#f8f8f8; z-index:9999;
  }
  #genmenu > ul > li > a { padding:0 20px; border:none; text-align:left; line-height:40px;}
  #genmenu.align-center > ul,
  #genmenu.align-right ul ul {
    text-align: left;
  }
  #genmenu ul li,
  #genmenu ul ul li,
  #genmenu ul li:hover > ul > li {
    width: 100%;
    height: auto;
    border-top: 1px solid rgba(120, 120, 120, 0.15);
  }
  #genmenu ul li a,
  #genmenu ul ul li a {
    width: 100%; margin:0; font-weight:bold;
  }
    #genmenu ul ul li a  { font-weight:normal;}
  #genmenu li:hover > ul { left:0; background:#eee; top:0;}
  #genmenu > ul > li,
  #genmenu.align-center > ul > li,
  #genmenu.align-right > ul > li {
    float: none;
    display: block;
  }
  #genmenu ul ul li a {
    padding: 10px 20px 10px 20px;
    font-size: 14px;
    color: #333;
    background: none;
  }
  #genmenu ul ul li:hover > a,
  #genmenu ul ul li a:hover {
    color: #000000;
  }
  #genmenu ul ul ul li a {
    padding-left: 40px;
  }
  #genmenu ul ul,
  #genmenu ul ul ul {
    position: relative; padding:0;
    left: 0; background:#ddd;
    right: auto;
    width: 100%;
    margin: 0;
  }
  #genmenu > ul > li.has-sub > a::after,
  #genmenu ul ul li.has-sub > a::after {
    display: none;
  }
  #menu-line {
    display: none;
  }
  #genmenu #menu-button {
    display: block; background:#ddd;
    padding: 12px;
    color: #333;
    cursor: pointer; text-align:left;
    font-size: 12px;
    text-transform: uppercase;
  }
  #genmenu #menu-button::after {
    content: '';
    position: absolute;
    top: 10px;
    right: 10px;
    display: block;
    width: 15px;
    height: 2px;
    background: #0c5497;
  }
  #genmenu #menu-button::before {
    content: '';
    position: absolute;
    top: 15px;
    right: 10px;
    display: block;
    width: 15px;
    height: 3px;
    border-top: 2px solid #0c5497;
    border-bottom: 2px solid #0c5497;
  }
  #genmenu .submenu-button {
    position: absolute;
    z-index: 10; cursor:pointer;
    right: 0;
    top: 0;
    display: block;
    border-left: 1px solid rgba(120, 120, 120, 0.15);
    height:36px;
    width: 36px;
    cursor: pointer;
  }
  #genmenu .submenu-button::after {
    content: '';
    position: absolute;
    top: 15px;
    left: 18px;
    display: block;
    width: 2px;
    height: 12px;
    background: #0c5497;
    z-index: 99;
  }
  #genmenu .submenu-button::before {
    content: '';
    position: absolute;
    left: 13px;
    top: 20px;
    display: block;
    width: 12px;
    height: 2px;
    background: #0c5497;
    z-index: 99;
  }
  #genmenu .submenu-button.submenu-opened:after {
    display: none;
  }
}