/* =============================================== *//* ====================== header ================= *//* =============================================== *//* 071025 */header {	-js-display: flex;	display: -webkit-box;	display: -moz-box;	display: -ms-flexbox;	display: -webkit-flex;	display: flex;	align-items: center;	z-index:100;	position: absolute;	left:0;	right:0;	top:0;	padding-top:62px;} @media only screen and (min-width: 768px) {header { padding-top:28px;}}/* header elements */header .logo img, .header .logo img {	width:100%;	max-width:162px;	height:auto;} @media only screen and (min-width: 768px) {header .logo img, .header .logo img { width:100%; max-width:248px;}} @media only screen and (min-width: 768px) {header .logo img, .header .logo img { width:100%; max-width:248px;}} @media only screen and (min-width: 1200px) {header .logo img, .header .logo img { width:100%; max-width:248px;}} @media only screen and (min-width: 1400px) {header .logo img, .header .logo img { width:100%; max-width:248px;}}.header-tools-wrapper {	-js-display: flex;	display: -webkit-box;	display: -moz-box;	display: -ms-flexbox;	display: -webkit-flex;	display: flex;	align-items: center;	justify-content: flex-end;} @media only screen and (min-width: 992px) {.header-tools-wrapper {justify-content: flex-end;}}.header-tools {	-js-display: flex;	display: -webkit-box;	display: -moz-box;	display: -ms-flexbox;	display: -webkit-flex;	display: flex;	align-items: center;	justify-content: flex-end;	text-align:right;}.header-tools button, .header-tools .btn {	margin-left:7px;} @media only screen and (max-width: 374px) {.header-tools button, .header-tools .btn { font-size:16px; padding-left:12px; padding-right:12px;}} @media only screen and (min-width: 375px) {.header-tools button, .header-tools .btn { margin-left:15px;}} @media only screen and (min-width: 768px) {.header-tools button, .header-tools .btn { margin-left:15px;}}.search-btn {	padding:0;	border-radius:0;	width:25px;	height:25px;	background-image: url(../images/icon-search-sm.png);	background-repeat: no-repeat;	background-position: center center;	background-size:contain;} @media only screen and (min-width: 400px) {.search-btn {width:32px; height:32px;}} @media only screen and (min-width: 992px) {.search-btn { width:26px; height:26px; background-image: url(../images/icon-search.png);}} @media only screen and (min-width: 1200px) {.search-btn {width:32px; height:32px;}}.relative {	position:relative;}/* main menu navigation */.mainmenu {	display:none;} @media only screen and (min-width: 992px) {.mainmenu { -js-display: flex; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; align-items: center; justify-content:flex-end; text-align:right;} .mainmenu ul { font-size:1.6vw; color:#FFF; font-weight:700; margin:0; padding:0; list-style:none; text-align:right;} .mainmenu ul, .mainmenu ul li { text-align:right; position:relative;}.mainmenu ul li { display:inline-flex; line-height:1;}.mainmenu ul li a { margin-left:.35rem;margin-right:.35rem;padding-left:.35rem;padding-right:.35rem;}} @media only screen and (min-width: 1400px) { .mainmenu ul { font-size:20px;}}.mainmenu ul li a:link, .mainmenu ul li a:visited {	color:#FFF;	text-decoration:none;	transition: none;}.mainmenu ul li a:hover, .mainmenu ul li a:focus, .mainmenu ul li a.active {	color:#FFF;	text-decoration: underline;	text-decoration-thickness: 3px;	text-underline-offset: 6px;	text-decoration-style: solid;}/* ==============    Hamburger button ======================= */.close {	opacity:1;} .close:not(:disabled):not(.disabled):focus, .close:not(:disabled):not(.disabled):hover { opacity:1;}.button-lines {	background: transparent;	border: none;	cursor: pointer;	display: inline-block;	padding: 0.5rem;	padding-top:0;	-webkit-user-select: none;	-moz-user-select: none;	-ms-user-select: none;	user-select: none;	z-index:9999;	position:relative;}.lines {	display: inline-block;	height: 4px;	width: 26px;	border-radius:0;	position: relative;	background-color:#FFF;}.lines:after, .lines:before {	background-color:#FFF;	display: inline-block;	height: 4px;	width: 26px;	border-radius:0;	content: "";	left: 0;	position: absolute;} @media only screen and (min-width: 400px) { .lines { width: 32px;} .lines:after, .lines:before { width: 32px;}}.lines:after:hover, .lines:before:hover { background: #FFF;}/* hamburger button */header button:focus {	outline:none;	box-shadow:none;}.lines:after {	top: 10px;}.lines:before {	top: -10px;}.button-lines-x .lines {	transition: background 0.3s ease;}.button-lines-x .lines:after, .button-lines-x .lines:before {	transform-origin: 50% 50% 0;	transition: top 0.3s 0.4s ease, transform 0.3s ease;}.button-lines-x.active .lines {	background: transparent;}.button-lines-x.active .lines:after, .button-lines-x.active .lines:before {	top: 0;	transition: top 0.3s ease, transform 0.3s 0.3s ease;}.button-lines-x.active .lines:after {	transform: rotate3d(0, 0, 1, 45deg);}.button-lines-x.active .lines:before {	transform: rotate3d(0, 0, 1, -45deg);}/* ==============  Menu Overlay ======================= */.overlay {	height: 0%;	width: 100%;	position:  absolute;	z-index: 1;	top: 0;	left: 0;	color:#FFF;	background-color: #154CA1;	overflow: hidden;	transition: 0.5s;	z-index:30;}.overlay.open {	height: 100%;	height: 100vh;} @media only screen and (min-width: 992px) {.overlay.open { display:none;}}.overlay-content {	position: relative;	text-align: center;	text-align:left;	padding-top:150px;} @media only screen and (min-width: 425px) { .overlay-content {padding-top:180px;}} @media only screen and (min-width: 576px) { .overlay-content { padding-top:230px;}} @media only screen and (min-width: 992px) { .overlay-content { padding-top:27vh;}} @media only screen and (min-width: 1200px) { .overlay-content { padding-top:35.5vh;}}.mobilemenu ul {	text-align: center;	padding-bottom:150px;} @media only screen and (min-width: 992px) { .mobilemenu ul { -moz-column-count: 2; -webkit-column-count: 2; column-count: 2; -webkit-column-gap: 30px; column-gap: 30px; max-width:800px; margin-left:auto; margin-right:auto;} .mobilemenu ul li { -webkit-column-break-inside: avoid; page-break-inside: avoid; break-inside: avoid-column;}}.mobilemenu ul li {	line-height:147%;	list-style:none;}.mobilemenu ul li a, .mobilemenu ul li a:visited {	font-size: 28px;	line-height:133%;	color:#FFF;	font-weight:700;	display:block;	width:100%;	text-decoration:none;	padding: 5px;	padding-top:15px;	padding-bottom:15px;}.mobilemenu ul li a:hover, .mobilemenu ul li a:focus {	color:#2EB5C5;	outline:none;	background-color: transparent;}.mobilemenu ul.menu li.nav-item:after {	border:none;	display:none;}.mobilemenu ul.menu li.nav-item:last-of-type:after {	border:none;	display:none;}/* ============== takeover search ==============  *//* Large Search Overlay */.search-overlay {	height: 0%;	width: 100%;	position:absolute;	left: 0;	right: 0;	background-color: #154CA1;	transition: 0.5s;	-webkit-box-shadow: 6px 6px 7px -1px rgba(0, 0, 0, 0.15);	-moz-box-shadow: 6px 6px 7px -1px rgba(0, 0, 0, 0.15);	box-shadow: 6px 6px 7px -1px rgba(0, 0, 0, 0.15);	z-index: 200;}.search-overlay .search-area {	display:none;}.search-overlay.open .search-area {	display:block;}.search-overlay .header {	padding-top:62px;	padding-bottom:100px;} @media only screen and (min-width: 768px) {.search-overlay .header { padding-top:28px;}} @media only screen and (max-width: 767px) { .container.search-area { max-width:95%; width:95%;}}.search-area .form-btn input {	font-size: 18px;	color: #000000;	background-color:transparent;	height: 60px;	font-weight:700;}@media only screen and (min-width: 1200px) { .search-area .form-btn input { font-size: 20px;}} @media only screen and (min-width: 1800px) { .search-area .form-btn input { font-size: 22px;}}/* large search */.large-search form {	width: 100%;	background-color:rgba(255, 255, 255, 0.8);	border: 1px solid #d5d5d5;	border-radius:2px;}.large-search .form-control {	padding-left: 2.375rem;	height: auto;}.large-search .form-control-feedback {	position: absolute;	z-index: 2;	display: block;	width: 2.375rem;	height: 2.375rem;	line-height: 2.375rem;	text-align: center;	pointer-events: none;	color: #aaa;}.large-search .input-group {	background-color: transparent;	background-clip: border-box;	font-weight: 500;	border:  none;}.search-area .large-search .input-group {	border: 2px solid #FFF;	background-color: transparent;}.overlay-bg .large-search .input-group {	border: none;}.large-search input {	background-color: #FFFFFF;	background-clip: border-box;	font-weight: 400;	border: none;	text-align: left;}.large-search .form-control {	color: #000000; padding: .65rem;	padding-left: 1rem;	height: auto;	font-size: 18px;}@media only screen and (min-width: 768px) { .large-search .form-control { font-size: 2.292vw;}} .form-control::-webkit-input-placeholder { color: #000000; opacity: 1;}input::-webkit-input-placeholder { color: #000000;opacity: 1;}input:-moz-placeholder { color: #000000;opacity: 1;}input::-moz-placeholder { color: #000000;opacity: 1;}input:-ms-input-placeholder { color: #000000;opacity: 1;}.form-control {	border-radius: 0;}.input-group-prepend .btn, .input-group-append .btn {	position: relative;	z-index: 0;}.searchform fieldset {	float: none;	padding-bottom: 20px;	margin-bottom: 20px;	border-bottom-width: 1px;	border-bottom-style: solid;	border-bottom-color: #8A8C8C;}.searchform fieldset:last-of-type {	margin-bottom: 0;	padding-bottom: 10px;	border: none;}.searchform fieldset.noborder {	margin-bottom: 0;	border: none;}.searchform legend {	float: none;}.search-area .btn-searchsubmit {	padding:9px;	padding-left:12px;	padding-right:12px;}.search-area .btn-searchsubmit, .search-area .btn-searchsubmit:visited {	height: 60px;	color: #2EB5C5;}.btn-searchsubmit:hover, .btn-searchsubmit:focus {	color: #0CBABA;	background-color: transparent;	text-decoration: none;}.btn-searchsubmit .fa {	font-size: 32px;}@media only screen and (min-width: 992px) { .btn-searchsubmit { padding-top: .6rem; padding-right: 1.25rem; padding-bottom: .6rem; padding-left: 1.25rem; font-size: 32px} .btn-searchsubmit .fa { font-size: 32px;}}.search-overlay .close-btn {	position: absolute;	top: 62px;	right: 2.5%;	padding-right:15px;	height:45px;			-js-display: flex;	display: -webkit-box;	display: -moz-box;	display: -ms-flexbox;	display: -webkit-flex;	display: flex;	align-items: center;	justify-content: flex-end;}@media only screen and (min-width: 768px) {.search-overlay .close-btn {		top: 28px;			height:70px;}}