

/*------------------------------------*\
  NORMALIZE
\*------------------------------------*/


html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}
body {
  margin: 0;
}
main {
  display: block;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}
pre {
  font-family: monospace, monospace;
  font-size: 1em;
}
a {
  background-color: transparent;
}
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}
b, strong {
  font-weight: bolder;
}
code, kbd, samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
small {
  font-size: 80%;
}
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
img {
  border-style: none;
}
button, input, optgroup, select, textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}
button, input {
  overflow: visible;
}
button, select {
  text-transform: none;
}
button, [type="button"], [type="reset"], [type="submit"] {
  -webkit-appearance: button;
}
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, 
[type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
button:-moz-focusring, [type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}
fieldset {
  padding: 0.35em 0.75em 0.625em;
}
legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}
progress {
  vertical-align: baseline;
}
textarea {
  overflow: auto;
}
[type="checkbox"], [type="radio"] {
  box-sizing: border-box;
  padding: 0;
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
details {
  display: block;
}
summary {
  display: list-item;
}
template {
  display: none;
}
[hidden] {
  display: none;
}





/*------------------------------------*\
  RESET
\*------------------------------------*/


*, *::before, *::after {
	box-sizing: border-box;
}
a {
	text-decoration: none;
	color: inherit;
	cursor: pointer;
}
button {
	color: inherit;
	background-color: transparent;
	padding: 0;
	border-width: 0;
	cursor: pointer;
}
img {
	width: 100%;
	height: auto;
}
figure {
	margin: 0;
}
input::-moz-focus-inner {
	padding: 0;
	border: 0;
	margin: 0;
}
ul, ol, dd {
	list-style: none;
	padding: 0;
	margin: 0;
}
h1, h2, h3, h4, h5, h6 {
	font-size: inherit; 
	font-weight: inherit;
	margin: 0; 
}
p {
	margin: 0;
}

::placeholder {
  color: #e1e9ef;
  opacity: 1;
}
:-ms-input-placeholder {
  color: #e1e9ef;
}
::-ms-input-placeholder {
  color: #e1e9ef;
}

input[type=radio],
input[type=checkbox],
select {
	-webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}





/*------------------------------------*\
  #HEADER
\*------------------------------------*/


.page-head {
	position: fixed;
	display: flex;
	justify-content: space-between;
	width: 100%;
	top: 0;
	background: #fff;
	padding: 1.7em 2.5em 0;
	border-bottom: 10px solid #00365e;
	z-index: 999;
}

.page-head__logo {
	align-self: flex-end;
	width: 220px;
	padding-bottom: 1.1em;
}


@media only screen and (max-width: 1200px) {
	.page-head {
		padding: 1.2em 1.8em 0;
	}
	.search-bar {
		margin-bottom: 0.8em;
	}
	.page-head__logo {
		width: 200px;
		padding-bottom: 0.8em;
	}
}

@media only screen and (max-width: 1040px) {
	.page-head {
		padding: 1.2em 1.2em 0.8em;
		border-bottom: 8px solid #0061aa;
	}
	.page-head__logo {
		width: 160px;
		padding: 0;
	}
}





/*------------------------------------*\
  #SEARCH-BAR
\*------------------------------------*/


.search-bar {
	margin-bottom: 1em;
}
.search-bar form {
	position: relative;
	display: flex;
	font-family: proxima-nova, sans-serif;
}
.search-bar__input,
.search-bar__button input {
	font-size: 1em;
	font-weight: 700;
	letter-spacing: 0.05em;
	color: #0061aa;
}
.search-bar__input {
	width: 180px;
  background: #fff;
  padding: 0.5em 0.5em 0.5em 2.15em;
  border-color: #e1e9ef;
  border-style: solid;
  border-width: 2px 0 2px 2px;
  border-radius: 5px 0 0 5px;
	-webkit-transition: all 0.8s ease;
        	transition: all 0.8s ease;
}
.search-bar__input:focus {
	width: 300px;
  border-color: #0061aa;
  outline: 0;
  -webkit-transition: all 0.8s ease;
        transition: all 0.8s ease;
}
.search-bar__input::-webkit-search-decoration {
	display: none; 
}
.search-bar__icon {
	position: absolute;
	width: 20px;
	top: 0;
	bottom: 0;
	left: 9px;
	margin: auto;
}
.search-bar__icon svg {
	fill: #e1e9ef;
	-webkit-transition: fill 1s ease;
	        transition: fill 1s ease;
}
.search-bar__input:focus + .search-bar__icon svg {
	fill: #0061aa;
}
.search-bar__button input {
	display: flex;
	height: 100%;
	color: #fff;
	background: #00365e;
	padding: 0 0.8em;
	border: none;
	border-radius: 0 5px 5px 0;
	cursor: pointer;
	-webkit-transition: background-color 0.5s ease;
          transition: background-color 0.5s ease;
}
.search-bar__button:hover input {
	background: #0061aa;
}


@media only screen and (max-width: 1200px) {
	.search-bar {
		margin-bottom: 0.8em;
	}
}

@media only screen and (max-width: 1040px) {
	.search-bar {
		width: 100%;
		margin: 0 0 0.2em;
	}
	.search-bar__input,
	.search-bar__input:focus {
		width: 100%;
	  background: #fff;
	  border-color: #00365e;
	}
	.search-bar__icon svg,
	.search-bar__input:focus + .search-bar__icon svg {
		fill: #00365e;
	}
	.search-bar__button input,
	.search-bar__button:hover input {
		background: #00365e;
	}
}





/*------------------------------------*\
  #NAVIGATION
\*------------------------------------*/


.menu-inner {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}

.primary-nav {
	position: relative;
	margin-right: -1.4em;
}
.primary-nav ul li .dropdown-nav {
  display: none;
}
.primary-nav ul li:hover .dropdown-nav {
  display: block;
}
.primary-nav ul li:hover .primary-nav__link {
  color: #fff;
	background: #00365e;
	border-radius: 5px 5px 0 0;
}
.primary-nav__list {
	display: flex;
}
.primary-nav__link {
	display: block;
	font-size: 1.2em;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1;
	text-transform: uppercase;
	color: #0061aa;
	padding: 1em 1.1em 1em;
	cursor: pointer;
	-webkit-transition: color 0.5s ease 0s;
					transition: color 0.5s ease 0s;
}

.dropdown-nav {
	display: none;
	position: absolute;
	top: 3.6em;
	background: rgba(0,97,170, 0.88);
	padding: 1.2em 2.3em 1.8em;
	border-top: 10px solid #00365e;
	border-radius: 0 0 5px 5px;
}
.dropdown-nav__wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 660px;
	margin-bottom: -0.8em;
}
.dropdown-nav__wrap .dropdown-nav__list {
	width: 48%;
	margin-bottom: 0.8em;
}
.dropdown-nav__header,
.dropdown-nav__link {
	display: block;
	letter-spacing: 0.05em;
	color: #fff;
}
.dropdown-nav__header {
	position: relative;
	font-size: 1.2em;
	font-weight: 700;
	margin: 0.5em 0 0.7em;
}
.dropdown-nav__header::after {
	position: absolute;
	content: '';
	width: 0.5em;
	height: 0.5em;
	top: 0;
	bottom: 0;
	border: solid #fff;
	border-width: 0 0.15em 0.15em 0;
	margin: auto;
	margin-left: 0.3em;
	-webkit-transform: rotate(-45deg);
	  			transform: rotate(-45deg);
	-webkit-transition: border-color 0.5s ease 0s;
					transition: border-color 0.5s ease 0s;
}
.dropdown-nav__link {
	font-size: 1.1em;
	font-weight: 500;
	margin-top: 0.5em;
}

.js-mobile {
	display: none;
}


@media only screen and (max-width: 1200px) {
	.primary-nav {
		margin-right: -1em;
	}
	.primary-nav__link {
		font-size: 1.1em;
		letter-spacing: 0.08em;
		padding: 0.8em 0.9em 0.8em;
	}
	.dropdown-nav {
		top: 2.8em;
		padding: 1.2em 2em 1.8em;
	}
	.dropdown-nav__wrap {
		max-width: 600px;
	}
	.dropdown-nav__header {
		font-size: 1.1em;
		font-weight: 700;
		margin: 0.5em 0;
	}
	.dropdown-nav__link {
		font-size: 1em;
		font-weight: 500;
		margin-top: 0.5em;
	}
}

@media only screen and (max-width: 1040px) {
	.js-mobile {
		display: block;
	}
	.mobile-icon {
	  display: block;
	  position: absolute;
	  width: 30px;
	  height: 30px;
	  top: 0;
		right: 1.4em;
		bottom: 0;
	  border-radius: 3px;
	  margin: auto;
	  cursor: pointer;
	  z-index: 999;
	}
	.mobile-icon span {
		display: block;
		position: absolute;
		content: '';
		width: 30px;
	  height: 4px;
	  top: 12px;
	  background-color: #0061aa;
	  transition: background-color 0.2s ease-in-out, top 0.2s 0.2s ease-out, -webkit-transform 0.2s linear;
	  transition: background-color 0.2s ease-in-out, top 0.2s 0.2s ease-out, transform 0.2s linear;
	  transition: background-color 0.2s ease-in-out, top 0.2s 0.2s ease-out, transform 0.2s linear, -webkit-transform 0.2s linear;
	}
	.mobile-icon span::before,
	.mobile-icon span::after {
	  display: block;
	  position: absolute;
	  content: "";
	  width: 30px;
	  height: 4px;
	  background-color: #0061aa;
	  transition: background-color 0.2s ease-in-out, top 0.2s 0.2s ease-out, -webkit-transform 0.2s linear;
	  transition: background-color 0.2s ease-in-out, top 0.2s 0.2s ease-out, transform 0.2s linear;
	  transition: background-color 0.2s ease-in-out, top 0.2s 0.2s ease-out, transform 0.2s linear, -webkit-transform 0.2s linear;
	}
	.mobile-icon span:before {
	  top: 9px;
	}
	.mobile-icon span:after {
	  top: -9px;
	}
	.mobile-icon.active span {
	  background-color: transparent !important;
	  transition: background 0.2s ease-out;
	}
	.mobile-icon.active span:before, .mobile-icon.active span:after {
	  transition: top 0.2s ease-out, -webkit-transform 0.2s 0.2s ease-out;
	  transition: top 0.2s ease-out, transform 0.2s 0.2s ease-out;
	  transition: top 0.2s ease-out, transform 0.2s 0.2s ease-out, -webkit-transform 0.2s 0.2s ease-out;
	}
	.mobile-icon.active span:before {
	  top: 0;
	  -webkit-transform: rotate3d(0, 0, 1, -45deg);
	          transform: rotate3d(0, 0, 1, -45deg);
	}
	.mobile-icon.active span:after {
	  top: 0;
	  -webkit-transform: rotate3d(0, 0, 1, 45deg);
	          transform: rotate3d(0, 0, 1, 45deg);
	}
	.mobile-icon:hover span,
	.mobile-icon:hover span::before,
	.mobile-icon:hover span::after {
		background-color: #00365e;
	}
	.page-head__menu {
		display: block;
    position: fixed;
    width: 430px;
    height: 100%;
    top: 5.7em;
	  right: -100%;
	  background: rgba(0,97,170, 0.98);
	  border-top: 8px solid #00365e;
	  -webkit-transition: 0.5s transform;
	  				transition: 0.5s transform;
  	transition-timing-function: cubic-bezier(0.38, 0.52, 0.37, 1);
	  z-index: 9999;
	}
	.page-head__menu.open {
		-webkit-transform: translateX(-100vw);
          	transform: translateX(-100vw);
	}
	.menu-inner {
		position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    text-align: left;
    padding: 2em 2em 8em;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
	}
	.primary-nav {
		width: 100%;
		margin: 1em 0;
	}
	.primary-nav__list {
		flex-direction: column;
		width: 100%;
		margin: 0;
	}
	.primary-nav__list li {
		position: relative;
	}
	.primary-nav__link {
		display: block;
		position: relative;
		width: 100%;
		font-size: 1.2em;
		letter-spacing: 0.1em;
		color: #fff;
		padding: 0.5em 0;
		margin: 0;
		border-bottom: 1px solid #fff;
		-webkit-transition: color 0.5s ease 0s;
						transition: color 0.5s ease 0s;
	}
	.primary-nav__link::after {
		position: absolute;
		content: '';
	  width: 0.5em;
	  height: 0.5em;
	  top: 0;
	  bottom: 0;
	  border: solid #fff;
	  border-width: 0 0.15em 0.15em 0;
	  margin: auto;
	  margin-left: 0.3em;
	  -webkit-transform: rotate(-45deg);
	  				transform: rotate(-45deg);
	  -webkit-transition: border-color 0.5s ease 0s;
						transition: border-color 0.5s ease 0s;
	}
	.primary-nav ul li:hover .primary-nav__link {
	  color: #00365e;
		background: none;
		border-radius: 0;
	}
	.primary-nav ul li:hover .primary-nav__link:hover::after {
	  border: solid #00365e;
	  border-width: 0 3px 3px 0;
	}
	.primary-nav ul li .dropdown-nav {
	  display: block;
	}
	.dropdown-nav {
		display: block;
		position: relative;
		top: 0;
		padding: 0;
		border-top: none;
		border-radius: 0;
		margin: 1.6em 0 1em;
		background: transparent;
	}
	.dropdown-nav__wrap {
		display: block;
		max-width: 100%;
		margin: 0;
	}
	.dropdown-nav__wrap .dropdown-nav__list {
		width: 100%;
		margin: 0;
	}
	.dropdown-nav__header,
	.dropdown-nav__link {
		display: block;
		letter-spacing: 0.05em;
		color: #fff;
	}
	.dropdown-nav__header {
		font-size: 1.2em;
		margin: 1.2em 0 0.5em;
	}
	.dropdown-nav__link {
		font-size: 1.1em;
		margin-top: 0.7em;
	}
	.dropdown-nav__link:hover {
		text-decoration: underline;
	}
}

@media only screen and (max-width: 550px) {
	.page-head__menu {
    width: 360px;
    top: 5.7em;
	  right: -100%;
	}
	.menu-inner {
    padding: 1.8em 1.8em 7em;
	}
	.primary-nav__link {
		font-size: 1.1em;
	}
	.dropdown-nav {
		margin: 1.3em 0 0.8em;
	}
	.dropdown-nav__header,
	.dropdown-nav__link {
		letter-spacing: 0.02em;
	}
	.dropdown-nav__header {
		font-size: 1.1em;
		margin: 1.1em 0 0.5em;
	}
	.dropdown-nav__link {
		font-size: 1em;
		margin-top: 0.6em;
	}
}





/*------------------------------------*\
  #LAYOUT
\*------------------------------------*/


.container {
	position: relative;
	width: 90%;
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
}

.page-content {
	padding-top: 148px;
}

section {
	margin: 4em 0;
}


@media only screen and (max-width: 1200px) {
	.page-content {
		padding-top: 125px;
	}
}

@media only screen and (max-width: 1040px) {
	.page-content {
		padding-top: 98px;
	}
}

@media only screen and (max-width: 750px) {
	.container {
		width: 85%;
	}
	section {
		margin: 3em 0;
	}
}





/*------------------------------------*\
  #TYPE
\*------------------------------------*/


body {
	font-family: proxima-nova, sans-serif;
	font-size: 100%;
	font-weight: 400;
	color: #6e6e6e;
}

.page-content h1,
.page-content h2,
.page-content h3 {
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1.2;
	color: #0061aa;
}
.page-content h1 {
	font-size: 3.2em;
	margin-bottom: 0.6em;
}
.page-content h2 {
	font-size: 2.2em;
	margin: 0.6em 0;
}
.page-content h3 {
	font-size: 1.6em;
	line-height: 1.3;
	margin-bottom: 0.3em;
}
.page-content h4 {
	font-size: 1.8em;
	font-weight: 500;
	line-height: 1.3;
	color: #323232;
	margin-bottom: 0.2em;
}
.page-content h5,
.page-content h6 {
	font-size: 1.3em;
	font-weight: 700;
	line-height: 1.3;
	margin-bottom: 0.3em;
}
.page-content h5 {
	color: #6e6e6e;
}
.page-content h6 {
	color: #323232;
}

.page-content p,
.page-content li {
	font-size: 1.25em;
	line-height: 1.6;
	color: #6e6e6e;
}
.page-content p,
.page-content ul {
  margin-bottom: 1em;
}

.page-content ul {
	list-style: none;
}
.page-content li {
  position: relative;
  padding-left: 1.8em;
  margin: 0.5em 0;
}
.page-content li::before {
  position: absolute;
  content: '\2022';
  font-size: 1.5em;
  line-height: 1.6;
  font-weight: 700;
  color: #6e6e6e;
  top: -0.3em;
  left: 0.5em;
}
.page-content li:last-child,
.page-content li li:last-child {
	margin-bottom: 0;
}

.page-content li li {
	font-size: 1em;
}

.text li li {
	font-size: 0.8em;
}
.text li li::before {
  position: absolute;
  content: '\25CB';
  font-size: 1.1em;
  top: 0.1em;
}

.page-content ol li {
	counter-increment: decimal;
	padding-left: 1.2em;
}
.page-content ol li::before {
	content: counter(decimal) '.';
	font-size: 0.95em;
  line-height: 1.6;
  font-weight: 700;
  top: 1px;
}

.page-content p a {
	font-weight: 500;
	color: #0061aa;
	text-decoration: underline;
}
.page-content p a:hover {
	color: #00365e;
}
.page-content hr {
  border: 1px solid #e1e9ef;
  margin: 2em 0;
}

.page-content h1 + h4 {
	margin: -0.8em 0 1.5em;
}


@media only screen and (max-width: 1100px) {
	.page-content {
		font-size: 95%;
	}
	.page-content h1 {
		font-size: 3em;
		margin-bottom: 0.6em;
	}
}

@media only screen and (max-width: 950px) {
	.page-content {
		font-size: 90%;
	}
	.page-content h1 {
		font-size: 2.8em;
	}
}

@media only screen and (max-width: 750px) {
	.page-content {
		font-size: 85%;
	}
	.page-content h1 {
		font-size: 2.6em;
	}
	.page-content h2 {
		font-size: 2em;
	}
	.page-content h1 + h4 {
		margin: -0.7em 0 1.4em;
	}
}

@media only screen and (max-width: 650px) {
	.page-content {
		font-size: 80%;
	}
}





/*------------------------------------*\
  #COMPONENTS
\*------------------------------------*/


.btn {
	display: inline-block;
	font-size: 1em;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1;
	text-transform: uppercase;
	text-align: center;
	color: #0061aa;
	padding: 1.2em 1.5em 1em;
	box-shadow: #0061aa 0 0px 0px 2px inset;
	border: none;
	border-radius: 5px;
	margin: 1em 0.5em 1em 0;
	cursor: pointer;
	-webkit-transition: all 200ms cubic-bezier(0.390, 0.500, 0.150, 1.360);
					transition: all 200ms cubic-bezier(0.390, 0.500, 0.150, 1.360);
}
.btn:hover {
  color: #fff;
  box-shadow: #0061aa 0 80px 0px 2px inset;
}
.btn:hover::before {
  box-shadow: inset 0 0 0 10em #0061aa;
}

.text .btn {
	font-size: 0.9em;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1;
	text-decoration: none;
	color: #0061aa;
	margin: 0.5em 0.5em 1.5em 0;
}
.text .btn:hover {
	color: #fff;
}

.bg-black {
	background: #323232;
}
.bg--blue {
	background: #0061aa;
}
.bg--gray {
	background: #6e6e6e;
}
.bg--light {
	background: #e1e9ef;
}

.banner {
	width: 100%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  padding: 12% 0;
  margin-top: 0;
}

.featured {
	max-width: 880px;
	text-align: center;
}
.featured h1 + h4 {
	margin-bottom: 0.5em;
}

.img--small,
.img--medium,
.img--large {
	margin: 1em auto;
}
.img--large {
	max-width: 850px;
}
.img--medium {
	max-width: 650px;
}
.img--small {
	max-width: 350px;
}
.img--left,
.img--right {
	max-width: 400px;
}
.img--left {
	float: left;
	margin: 0 2em 1em 0;
}
.img--right {
	float: right;
	margin: 0 0 1em 2em;
}

.pdf-link {
	position: relative;
	font-weight: 700;
	color: #0061aa;
	padding-left: 1em;
}
.pdf-link::before {
	position: absolute;
  content: url(../img/common/pdf-icon.svg);
  width: 0.9em;
  height: 0.9em;
  top: 0.1em;
  left: 0;
}
.pdf-link:hover {
	text-decoration: underline;
}

.text-image {
	display: flex;
}
.text-image img {
	align-self: flex-start;
	max-width: 35%;
	margin-right: 5%;
}

.text + .two-column {
	margin: -2em auto 0;
}
.text .text--disclaimer {
	font-size: 0.95em;
}

.text p:last-child,
.text-image p:last-child,
.text-image ul:last-child {
	margin-bottom: 0;
}

.two-column {
	display: flex;
}
.two-column .column {
	padding: 0 4em;
}
.two-column .column:first-of-type {
	padding-left: 0;
}
.two-column .column:last-of-type {
	padding-right: 0;
}

.disclaimer li {
	font-size: 0.95em;
}

.caption {
	text-align: center;
	margin-top: 1.5em;
}
.caption p {
	font-size: 1.1em;
	color: #0061aa;
}


@media only screen and (max-width: 1260px) {
	.two-column .column {
		padding: 0 3em;
	}
}

@media only screen and (max-width: 1100px) {
	.two-column .column {
		padding: 0 2.5em;
	}
}

@media only screen and (max-width: 900px) {
	.two-column .column {
		padding: 0 2em;
	}
	.img--left,
	.img--right {
		float: none;
		margin: 0;
	}
}

@media only screen and (max-width: 750px) {
	.text-image {
		display: block;
	}
	.text-image img {
		max-width: 500px;
		margin: 0 0 2em;
	}
}

@media only screen and (max-width: 700px) {
	.two-column {
		display: block;
	}
	.two-column .column {
		padding: 0;
	}
}





/*------------------------------------*\
  #BREADCRUMBS
\*------------------------------------*/


.breadcrumbs {
	background: #e1e9ef;
	margin-top: -4.3em;
}

.breadcrumbs__wrap {
	display: flex;
}
.breadcrumbs__wrap .breadcrumbs__list {
	display: flex;
	margin: 1em 0;
}

.breadcrumbs__list li {
	padding: 0 1em;
	margin: 0;
}
.breadcrumbs__list li::before {
	display: none;
}
.breadcrumbs__list li:first-child {
	padding-left: 0;
}

.breadcrumbs__link {
	position: relative;
	display: block;
	font-size: 0.9em;
	font-weight: 500;
	line-height: 1.1;
	color: #0061aa;
}
.breadcrumbs__link:hover {
	text-decoration: underline;
}

.breadcrumbs__list li::after {
	position: absolute;
	content: '';
  width: 8px;
  height: 8px;
  top: 0;
  right: -0.15em;
  bottom: 0;
  border: solid #00365e;
  border-width: 0 2px 2px 0;
  margin: auto;
  -webkit-transform: rotate(-45deg);
  				transform: rotate(-45deg);
}
.breadcrumbs__list li:last-child::after {
	display: none;
}
.breadcrumbs__list li:last-child .breadcrumbs__link:hover {
	text-decoration: none;
	cursor: default;
}


@media only screen and (max-width: 750px) {
	.breadcrumbs {
		margin-top: -3.3em;
	}
}




/*------------------------------------*\
  #TITLE
\*------------------------------------*/


.title {
	margin-bottom: -2em;
}





/*------------------------------------*\
  #HEADLINE
\*------------------------------------*/


.headline {
	margin-bottom: -4em;
}

.headline__inner {
	display: flex;
	justify-content: space-between;
}

.headline__img {
	align-self: flex-start;
	max-width: 150px;
	margin: 0 0 -1.8em 2em;
}


@media only screen and (max-width: 1040px) {
	.headline {
		margin-bottom: -2em;
	}
	.headline__inner {
		display: block;
	}
	.headline__img {
		display: none;
	}
}





/*------------------------------------*\
  #VIDEO
\*------------------------------------*/


.video {
  background: #eee url(../img/common/video-bg.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  margin-top: 5em;
}
.video__inner {
	max-width: 900px;
	margin: 0 auto;
}
.video__wrap {
  position: relative;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
}
.video__wrap iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}




/*------------------------------------*\
  #MODAL
\*------------------------------------*/


.overlay {
  position: fixed;
  display: none;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0,0,0, 0.8);
  z-index: 9999;
}
.overlay.open {
  display: block;
}

.modal {
  position: fixed;
  width: 600px;
  max-width: calc(100% - 3em);
  max-height: calc(100% - 3em);
  top: 50%;
  left: 50%;
  background: #00365e;
  border-radius: 10px;
  z-index: 99999;
  -webkit-transform: translate(-50%,-50%);
          transform: translate(-50%,-50%);
}

.modal__close {
  position: absolute;
  font-size: 3.5em;
  line-height: 1;
  color: #fff;
  top: 0.1em;
  right: 0.3em;
  cursor: pointer;
  -webkit-transition: color 0.3s ease;
          transition: color 0.3s ease;
}
.modal__close:hover {
  color: #0061aa;
}

.modal__content {
  max-height: calc(100vh - 5em);
  padding: 2.5em;
  overflow: auto;
}

.modal__text h5 {
  font-size: 1.4em;
  font-weight: 700;
  line-height: 1.3;
  color: #fff;
  margin-bottom: 0.5em;
}
.modal__text p {
	font-size: 1em;
	line-height: 1.5;
	color: #fff;
	margin-bottom: 1em;
}
.modal__text p:last-of-type {
	margin-bottom: 2em;
}
.modal__text a {
	text-decoration: underline;
}
.modal__text a:hover {
	color: #0061aa;
}

.modal__content .btn {
  color: #fff;
  background: #0061aa;
  margin: 0;
}
.modal__content .btn:first-of-type {
  margin-right: 0.5em;
}

.no-scroll {
  overflow: hidden;
}


@media only screen and (max-width: 1250px) {
	.modal__close {
		font-size: 3em;
	}
	.modal__content .btn {
    margin: 0;
  }
}

@media only screen and (max-width: 750px) {
  .modal {
    width: 480px;
  }
  .modal__content {
    max-height: calc(100vh - 4em);
    padding: 2em;
  }
  .modal__text h5 {
    font-size: 1.3em;
  }
  .modal__text p {
    font-size: 0.95em;
  }
}




/*------------------------------------*\
  #TABLE
\*------------------------------------*/


.table__row {
	display: flex;
	justify-content: space-between;
	padding: 0.8em;
	border-left: 2px solid #e1e9ef;
	border-right: 2px solid #e1e9ef;
}
.table__row:nth-child(odd) {
	background: #e1e9ef;
}
.table__row:first-child {
	border-radius: 5px 5px 0 0;
}
.table__row:last-child {
	border-bottom: 2px solid #e1e9ef;
	border-radius: 0 0 5px 5px;
}
.table__row p {
	line-height: 1.4;
	margin: 0;
}

.table__label {
	font-size: 0.9em;
}
.table__label p {
	font-weight: 700;
	white-space: nowrap;
	margin-right: 2em;
}

.table__description {
	align-self: center;
	font-size: 0.8em;
}
.table__description p {
	font-weight: 500;
	text-align: right;
}

.text + .table {
	margin-top: -2em;
}

.table--col .table__row:first-child .table__cell {
  font-size: 0.9em;
  font-weight: 700;
}
.table__cell {
  align-self: center;
  width: 32%;
  font-size: 0.8em;
  font-weight: 500;
  text-align: center;
}
.table__cell:first-child {
  width: 30%;
  font-size: 0.9em;
  font-weight: 700;
  text-align: left;
}


@media only screen and (max-width: 750px) {
	.table__row {
		display: block;
		padding: 1em;
	}
	.table__label p,
  .table__cell p {
		margin: 0 0 0.5em;
	}
	.table__description p {
		display: inline;
		text-align: left;
	}
  .table--col .table__row:first-child {
    display: none;
  }
  .table--col .table__row:nth-child(2) {
    background: #e1e9ef;
    border-radius: 5px 5px 0 0;
  }
  .table--col .table__row:nth-child(odd) {
    background: #fff;
  }
  .table--col .table__row:nth-child(even) {
    background: #e1e9ef;
  }
  .table--col .table__row:nth-child(2) {
    border-radius: 5px 5px 0 0;
  }
  .table__cell,
  .table__cell:first-child {
    width: 100%;
    text-align: left;
  }
  .table__cell:last-child p {
    margin: 0;
  }
}





/*------------------------------------*\
  #PAGE-CTA
\*------------------------------------*/


.page-cta__inner {
	display: flex;
	flex-wrap: wrap;
}

.page-cta__link {
	position: relative;
	width: 30%;
	background-position: center;
  background-size: cover;
  padding: 11% 0;
  margin: 0 5% 5% 0;
  border-radius: 5px;
}
.page-cta__link::after {
	position: absolute;
	content: '';
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: rgba(0,97,170, 0.7);
	border-radius: 5px;
	-webkit-transition: all 0.5s ease;
  				transition: all 0.5s ease;
}
.page-cta__link:nth-child(3n) {
	margin-right: 0;
}
.page-cta__link span {
	display: inline-block;
	position: absolute;
	width: 80%;
	right: 0;
	bottom: 20%;
	font-size: 1.15em;
	font-weight: 700;
	color: #0061aa;
	background: #e1e9ef;
	padding: 1em;
	border-radius: 3px 0 0 3px;
	z-index: 1;
	-webkit-transition: all 0.5s ease;
  				transition: all 0.5s ease;
}
.page-cta__link:hover::after {
	background: rgba(0,97,170, 0.85);
}
.page-cta__link:hover span {
	color: #fff;
	background: #00365e;
}

.text + .page-cta {
	margin-top: -2em;
}


@media only screen and (max-width: 900px) {
	.page-cta__link {
		width: 48%;
		margin: 0 4% 4% 0;
	}
	.page-cta__link:nth-child(3n) {
		margin: 0 4% 4% 0;
	}
	.page-cta__link:nth-child(2n) {
		margin-right: 0;
	}
}

@media only screen and (max-width: 900px) {
	.page-cta__link {
	  padding: 14% 0;
	}
}

@media only screen and (max-width: 550px) {
	.page-cta__link {
	  padding: 20% 0;
	}
	.page-cta__link,
	.page-cta__link:nth-child(2n),
	.page-cta__link:nth-child(3n) {
		width: 100%;
		margin: 0 0 4%;
	}
	.page-cta__link span {
		width: 55%;
	}
}





/*------------------------------------*\
  #PRODUCTS
\*------------------------------------*/


.product {
	display: flex;
	padding: 2em 0;
	border-top: 2px solid #e1e9ef;
}
.product:first-child {
	padding-top: 0;
	border-top: none;
}
.product__img {
	width: 35%;
	padding-right: 5%;
}
.product img {
	align-self: flex-start;
}
.product__text {
	width: 65%;
	align-self: center;
}
.product__text h3 {
	font-size: 1.8em;
	margin-bottom: 0.1em;
}
.product__text h4 {
	font-size: 1.4em;
	margin: 0;
}
.product__text p {
	margin: 0.8em 0 1.3em;
}
.product__text .btn {
	font-size: 0.9em;
	margin: 1.3em 0 0;
}
.product__text p + .btn {
	margin: 0;
}


@media only screen and (max-width: 900px) {
	.product__img {
		padding-right: 8%;
	}
}

@media only screen and (max-width: 750px) {
	.product {
		display: block;
		padding: 2em 0;
	}
	.product img {
		align-self: flex-start;
		width: 100%;
		max-width: 300px;
		margin: 0 0 1em;
	}
}





/*------------------------------------*\
  #CERTIFICATE
\*------------------------------------*/


.certificate {
	margin: -2em auto -1.5em;
}

.certificate__form {
	background: #e1e9ef;
	padding: 2.2em 3em 1.5em;
	border-radius: 15px;
}
.certificate__form h3 {
	margin-bottom: 0.2em;
}
.certificate__form h4 {
	position: relative;
	font-size: 1.15em;
	padding-left: 1.5em;
}
.certificate__form h4 svg {
	position: absolute;
	width: 1em;
	top: 0;
	bottom: 0;
	fill: #323232;
	margin: auto 0 auto -1.5em;
}

.certificate__inner {
	display: flex;
	max-width: 1000px;
	margin: 1.5em 0;
}
.certificate__wrap {
	display: flex;
	margin-right: 5%;
}
.certificate__label,
.certificate__input,
.certificate__button input[type=submit] {
	font-size: 1.1em;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.05em;
	color: #0061aa;
}
.certificate__label {
	align-self: center;
	white-space: nowrap;
	padding-right: 1em;
}
.certificate__input {
	width: 100%;
	background: #fff;
  padding: 0.5em;
  border: 2px solid #fff;
  border-radius: 5px;
  -webkit-transition: all 0.8s ease;
	        transition: all 0.8s ease;
}
.certificate__input:focus {
	border-color: #0061aa;
  outline: 0;
  -webkit-transition: all 0.8s ease;
	        transition: all 0.8s ease;
}
.certificate__button {
	align-self: center;
	width: 15%;
	text-align: center;
}
.certificate__button input[type=submit] {
	width: 100%;
	color: #fff;
	background: #0061aa;
  padding: 0.5em 1em;
  border: 4px solid #0061aa;
  border-radius: 5px;
  cursor: pointer;
  -webkit-transition: background-color 0.5s ease, border-color 0.5s ease;
          transition: background-color 0.5s ease, border-color 0.5s ease;
}
.certificate__button:hover input[type=submit] {
	background: #00365e;
  border: 4px solid #00365e;
}

.certificate__form p {
	font-size: 1.15em;
	font-weight: 500;
	color: #323232;
	margin: 0 0 0.7em;
}
.certificate__form p a {
	font-weight: 900;
}


@media only screen and (max-width: 1040px) {
	.certificate__button {
		width: 20%;
	}
}

@media only screen and (max-width: 800px) {
	.certificate__form {
		text-align: center;
	}
	.certificate__form h3 {
		margin-bottom: 0.3em;
	}
	.certificate__inner {
		display: block;
		max-width: 300px;
		margin: 2em auto;
	}
	.certificate__wrap {
		margin: 0 0 1em;
	}
	.certificate__label {
		width: 50%;
		text-align: left;
	}
	.certificate__input {
		width: 50%;
	}
	.certificate__button {
		width: 100%;
		margin-top: 1.5em;
	}
}

@media only screen and (max-width: 750px) {
	.certificate {
		margin: -1em auto -0.5em;
	}
}





/*------------------------------------*\
  #CERTIFICATE-RESULT
\*------------------------------------*/


.result__inner {
	display: flex;
	padding: 1.2em 0;
	border-top: 2px solid #e1e9ef;
	border-bottom: 2px solid #e1e9ef;
}

.result {
	display: flex;
	align-self: center;
	margin-right: 4%;
}
.result h3,
.result p {
	font-size: 1.4em;
	font-weight: 900;
	line-height: 1.3;
	margin: 0;
}
.result p {
	font-weight: 500;
	padding-left: 0.5em;
}

.certificate-result p svg {
	position: relative;
	width: 1.05em;
	top: 0.3em;
	fill: #0061aa;
	margin-right: 0.5em;
}
.certificate-result .link {
	display: inline-block;
	color: #6e6e6e;
	margin: 0.8em 0 0;
}
.certificate-result .btn {
	margin: 0 0 0 auto;
}


@media only screen and (max-width: 980px) {
	.result__inner {
		display: block;
		padding: 0.5em 0;
	}
	.result {
		display: flex;
		margin: 0.8em 0;
	}
	.certificate-result .btn {
		margin: 0.5em 0 1.2em;
	}
}





/*------------------------------------*\
  #SEARCH-RESULT
\*------------------------------------*/


.search__result {
	margin-bottom: 1.8em;
}
.search__result h3 {
	font-size: 1.4em;
}
.search__result h3:hover {
	text-decoration: underline;
}




/*------------------------------------*\
  #FAQ
\*------------------------------------*/


.faq__wrap {
	margin-bottom: 1em;
}

.faq__question p {
	position: relative;
	font-size: 1.3em;
	font-weight: 700;
	line-height: 1.3;
	color: #0061aa;
	padding-left: 1.1em;
	margin: 0;
	cursor: pointer;
}
.faq__question p::before,
.faq__question h3::before {
	position: absolute;
	content: '';
  width: 10px;
  height: 10px;
  top: 0.3em;
  left: 0;
  border: solid #0061aa;
  border-width: 0 3px 3px 0;
  margin: auto;
  -webkit-transform: rotate(45deg);
  				transform: rotate(45deg);
  -webkit-transition: all 0.5s ease;
  				transition: all 0.5s ease;
}
.faq__wrap.open .faq__question p::before,
.faq__wrap.open .faq__question h3::before { 
	top: 0.5em;
	border: solid #0061aa;
	border-width: 0 3px 3px 0;
	-webkit-transform: rotate(-135deg);
  				transform: rotate(-135deg);
}
.faq__question p:hover {
	text-decoration: underline;
}

.faq__answer {
	display: none;
	padding: 1em 0 1em 1.4em;
}
.faq__answer p:last-of-type {
	margin: 0;
}

.faq__question h3 {
	position: relative;
	padding-left: 0.9em;
	margin: 1em 0 0.1em;
	cursor: pointer;
}
.faq__question h3:hover {
	text-decoration: underline;
}
.faq__question h3 + p {
	font-size: 1.1em;
	color: #323232;
	padding-left: 1.3em;
}
.faq__question h3 + p::before {
	display: none;
}
.faq__question h3 + p:hover {
	text-decoration: none;
}




/*------------------------------------*\
  #CALENDAR
\*------------------------------------*/


.calendar__inner {
	border: 2px solid #0061aa;
	border-radius: 5px;
}

.calendar__row {
	display: flex;
}
.calendar__row:nth-child(even) {
	background: #e1e9ef;
}
.calendar__row:last-child {
	border-radius: 0 0 5px 5px;
}
.calendar__row p {
	font-size: 1.1em;
	line-height: 1.3;
	text-align: left;
	margin: 0;
}

.row--header {
	background: #0061aa;
}
.row--header p {
	font-weight: 500;
	color: #fff;
}

.calendar__cell {
	align-self: center;
	padding: 0.8em 1em;
}
.cell--date {
	width: 18%;
}
.cell--event {
	width: 40%;
}
.cell--location {
	width: 20%;
}
.cell--action {
  width: 22%;
}
.cell--action .btn {
  font-size: 0.85em;
  padding: 1.2em 1.2em 1em;
  margin: 0.5em 0;
}

.calendar--holiday .calendar__cell {
	width: 25%;
}

@media only screen and (max-width: 900px) {
  .cell--event {
    width: 36%;
  }
  .cell--action {
    width: 26%;
  }
  .cell--action .btn {
    font-size: 0.8em;
    padding: 1.1em 1em 0.9em;
  }
}

@media only screen and (max-width: 750px) {
	.calendar__row {
		display: block;
		padding: 1em;
	}
	.row--header {
		display: none;
	}
	.calendar__row:nth-child(2) {
		border-radius: 5px 5px 0 0;
	}
	.calendar__cell {
		padding: 0;
	}
	.cell--date,
	.cell--event,
	.cell--location,
  .cell--action {
		width: 100%;
	}
  .cell--action .btn {
    margin: 1em 0 0;
  }
	.cell--date {
		font-weight: 700;
		margin-bottom: 0.5em;
	}
	.cell--event {
		margin-bottom: 0.2em;
	}
	.calendar--holiday .calendar__cell {
		width: 100%;
		margin-bottom: 0.5em;
	}
	.calendar--holiday .calendar__cell:first-child {
		font-weight: 700;
	}
	.calendar--holiday .cell--closed {
		margin: 0;
	}
	.cell--samples {
		display: none;
	}
}





/*------------------------------------*\
  #PDF-LIST
\*------------------------------------*/


.pdf-list li {
	padding-left: 1.2em;
}
.pdf-list li::before {
	display: none;
}
.pdf-list li a {
	font-weight: 700;
	color: #0061aa;
}
.pdf-list li a::before {
	position: absolute;
  content: url(../img/common/pdf-icon.svg);
  width: 0.9em;
  height: 0.9em;
  top: 0.1em;
  left: 0;
}
.pdf-list li a:hover {
	text-decoration: underline;
}

.pdf-list li h3 {
	font-size: 1.05em;
	color: #00365e;
	margin-left: -1.1em;
	margin-top: 1em;
}





/*------------------------------------*\
  #GLOBAL-DISTRIBUTION
\*------------------------------------*/


.filter {
	margin: -1em auto;
}
.filter__inner {
	display: flex;
	flex-wrap: wrap;
}
.filter__inner h4 {
	align-self: center;
	margin: 0 0.8em 0 0;
}
.filter__inner .form__wrap {
	display: flex;
	margin: 0 5% 1em 0;
}
.filter__inner .select {
	width: 190px;
	margin: 0;
}
.filter__submit .btn {
	padding: 0.85em 1.5em;
	margin: 0;
}

.global__country {
	margin-bottom: 3em;
}
.global__affiliate {
	border: 2px solid #e1e9ef;
	padding: 1.5em 2em;
	border-radius: 10px;
	margin-bottom: 1.5em;
}
.affiliate__inner {
	display: flex;
}
.affiliate__inner h3 {
	width: 40%;
	margin-right: 2%;
}
.affiliate__column {
	width: 20%;
	margin-right: 2%;
}
.affiliate__column:last-child {
	width: 14%;
	margin: 0;
}
.affiliate__column h5 {
	font-size: 1.2em;
	color: #323232;
	margin-bottom: 0.2em;
}
.affiliate__column p {
	font-size: 1.05em;
	font-weight: 500;
}
.affiliate__column p:last-child {
	margin: 0;
}

.global__link {
	display: flex;
	align-items: center;
	font-size: 1.1em;
 	font-weight: 700;
 	word-break: break-all;
 	color: #0061aa;
 	margin-top: 0.8em;
}
.global__link span {
	font-size: 0.8em;
	font-weight: 500;
	color: #fff;
	background: #0061aa;
	padding: 0.5em 0.8em;
	border-radius: 5px;
	margin-right: 0.7em;
}
.global__link svg {
	display: inline-block;
	width: 1em;
	height: 1em;
	fill: #0061aa;
	margin-left: 0.5em;
}


@media only screen and (max-width: 900px) {
	.affiliate__inner {
		flex-wrap: wrap;
	}
	.affiliate__inner h3 {
		width: 100%;
		margin: 0 0 0.5em;
	}
	.affiliate__column {
		width: 36%;
		margin-right: 3%;
	}
	.affiliate__column:last-child {
		width: 22%;
		margin: 0;
	}
	.filter__submit {
		flex-wrap: wrap;
	}
}

@media only screen and (max-width: 600px) {
	.affiliate__inner {
		flex-direction: column;
	}
	.filter__inner .form__wrap {
		justify-content: space-between;
		margin: 0 0 1em;
	}
	.affiliate__column {
		width: 100%;
		margin: 0 0 0.8em;
	}
	.global__country {
		margin-bottom: 2.5em;
	}
	.global__affiliate {
		padding: 2em;
		margin-bottom: 1em;
	}
}





/*------------------------------------*\
  #FORM
\*------------------------------------*/


.contact {
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
	margin-top: -2em;
}
.contact h3 {
	font-size: 1.25em;
	font-weight: 500;
	color: #323232;
	margin: 1.5em 0 1em;
}
.contact h4 {
	font-size: 1.15em;
	font-weight: 700;
	color: #0061aa;
	margin: 0;
}

.contact__info {
	width: 46%;
}
.contact__inner {
	background: #e1e9ef;
	padding: 1.8em 2em;
	border-radius: 10px;
	margin-top: 1.2em;
}
.contact__inner h2 {
	font-size: 1.7em;
	margin: 0 0 0.2em;
}
.contact__inner p {
	color: #323232;
	margin: 0;
}
.contact__inner p strong {
	color: #0061aa;
}
.contact__profile {
	margin-top: 1.2em;
	border-top: 2px solid #0061aa;
	padding-top: 1.3em;
}

.contact__form {
	width: 46%;
}
.form__text + .form__inner {
	margin-top: 0;
}
.form__inner {
	display: flex;
	justify-content: space-between;
	margin: 1em 0;
}
.form__inner .form__input,
.form__inner .form__wrap {
	width: 48%;
	margin: 0 4% 0 0;
}
.form__inner .form__input:last-child,
.form__inner .form__wrap:last-child {
	margin: 0;
}

.form__input {
	margin: 1em 0;
}
.label,
.input {
	display: block;
	line-height: 1.2;
}
.label {
  font-size: 1.15em;
  font-weight: 700;
  color: #0061aa;
  margin-bottom: 0.3em;
}
.input,
select {
  width: 100%;
  font-size: 1.15em;
  color: #6e6e6e;
  background: #fff;
  padding: 0.5em 2.2em 0.5em 0.5em;
  border: 2px solid #e1e9ef;
  border-radius: 5px;
  -webkit-transition: border 0.5s ease;
          transition: border 0.5s ease;
}
.input:focus,
select:focus {
	outline: 0;
  border-color: #0061aa;
}

.contact__form input:focus:invalid {
  border: 2px solid #0061aa;
}
.contact__form input:focus:invalid {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23e1e9ef' viewBox='0 0 24 24'%3E%3Cpath d='M12 0c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm4.151 17.943l-4.143-4.102-4.117 4.159-1.833-1.833 4.104-4.157-4.162-4.119 1.833-1.833 4.155 4.102 4.106-4.16 1.849 1.849-4.1 4.141 4.157 4.104-1.849 1.849z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.5em center;
  -webkit-transition: none;
          transition: none;
}
.contact__form input:valid {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%230061aa' viewBox='0 0 24 24'%3E%3Cpath d='M12 0c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm-1.25 17.292l-4.5-4.364 1.857-1.858 2.643 2.506 5.643-5.784 1.857 1.857-7.5 7.643z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.5em center;
  -webkit-transition: none;
          transition: none;
}
.contact__form input:optional,
.contact__form input[type=submit] {
  background-image: none;
}
.contact__form input[type=submit] {
	background: inherit;
}

.contact__form textarea {
	min-height: 150px;
	resize: none;
}

.form__checkbox {
	display: flex;
	margin: 0.8em 0;
}
.form__checkbox .label {
	font-weight: 500;
	padding-left: 0.5em;
	margin: 0;
	cursor: pointer;
}
.checkbox {
  position: relative;
  flex-shrink: 0;
  height: 1.3em;
  width: 1.3em;
  outline: none;
  border: 2px solid #e1e9ef;
  border-radius: 5px;
  cursor: pointer;
}
.checkbox:checked::before {
	content: '';
	position: absolute;
  width: 0.7em;
  height: 0.4em;
  top: 0.25em;
  left: 0;
  right: 0;
  border: 2px solid #fff;
  border-top: none;
  border-right: none;
  margin: auto;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.checkbox:hover {
  background: #e1e9ef;
}
.checkbox:checked {
  background: #0061aa;
  border: 2px solid #0061aa;
}

select {
	font-size: 1.15em;
  font-weight: 500;
	padding: 0.5em 1.8em 0.5em 0.5em;
	cursor: pointer;
}
.select {
	position: relative;
	max-width: 250px;
	margin: 0.8em 0 1.5em;
}
.select::after {
  position: absolute;
	content: '';
  width: 0.6em;
  height: 0.6em;
  top: 0.9em;
  right: 0.8em;
  border: solid #6e6e6e;
  border-width: 0 0.2em 0.2em 0;
  -webkit-transform: rotate(45deg);
  				transform: rotate(45deg);
  pointer-events: none;
}

.form__submit {
	padding-top: 1em;
	border-top: 2px solid #e1e9ef;
	margin-top: 2em;
}
.form__submit .btn {
	width: 180px;
}

.contact--calendar {
  flex-direction: row;
}

.form--calendar .form__submit {
  padding: 0;
  border: none;
}

.form__event {
  padding-bottom: 2em;
  border-bottom: 2px solid #e1e9ef;
  margin-bottom: 2.5em;
}
.form__event h3,
.form__event p {
  margin-bottom: 0;
}
.form__event h2 {
  margin: 0.2em 0;
}


@media only screen and (max-width: 900px) {
	.contact {
		flex-direction: column;
		margin-top: -2em;
	}
	.contact__info,
	.contact__form {
		width: 100%;
	}
	.contact__info {
		margin-bottom: 3em;
	}
  .contact--calendar .contact__info {
    margin-top: 1em;
  }
}

@media only screen and (max-width: 750px) {
	.contact__info {
		margin-bottom: 2em;
	}
}





/*------------------------------------*\
  #PARALLAX
\*------------------------------------*/


.parallax__img {
  position: relative;
  height: 100%;
  background-attachment: fixed;
  background-position: center 0;
  background-repeat: no-repeat;
  background-size: cover;
}

.parallax--overlay .parallax__img {
	text-align: center;
	padding: 8em;
}
.parallax--overlay p {
	display: inline-block;
	font-size: 2.6em;
	line-height: 1.3;
	font-weight: 300;
	color: #fff;
	text-align: center;
	background: rgba(0,97,170, 0.88);
	padding: 1.2em 1.7em;
	margin: 1em 0;
}

.parallax--sml {
	height: 15em;
}
.parallax--med {
	height: 22em;
}
.parallax--lrg {
	height: 30em;
}

.page-content .parallax:last-of-type {
	margin-bottom: 0;
}


@media only screen and (max-width: 1260px) {
	.parallax--overlay p {
		font-size: 2.2em;
	}
}

@media only screen and (max-width: 1100px) {
	.parallax--overlay .parallax__img {
		padding: 6em;
	}
	.parallax--overlay p {
		font-size: 2em;
	}
	.parallax--sml {
		height: 12em;
	}
	.parallax--med {
		height: 18em;
	}
	.parallax--lrg {
		height: 25em;
	}
}

@media only screen and (max-width: 1040px) {
  .parallax__img {
  	background-attachment: scroll;
    background-position: center center !important;
    background-size: cover;
  }
  .parallax--overlay .parallax__img {
		padding: 5em;
	}
	.parallax--overlay p {
		font-size: 1.8em;
		line-height: 1.2;
		padding: 1em 1.2em;
	}
  .parallax--sml,
  .parallax--med,
  .parallax--lrg {
		height: inherit;
	}
	.parallax--sml .parallax__img {
		padding: 10% 0;
	}
  .parallax--med .parallax__img {
		padding: 12% 0;
	}
	.parallax--lrg .parallax__img {
		padding: 20% 0;
	}
}

@media only screen and (max-width: 700px) {
	.parallax--overlay .parallax__img {
		padding: 4em;
	}
	.parallax--overlay p {
		font-size: 1.6em;
	}
	.parallax--sml .parallax__img {
		padding: 10% 0;
	}
  .parallax--med .parallax__img {
		padding: 12% 0;
	}
	.parallax--lrg .parallax__img {
		padding: 18% 0;
	}
}





/*------------------------------------*\
  #FOOTER
\*------------------------------------*/


.page-foot__content p {
	font-size: 1em;
	letter-spacing: 0.1em;
	font-weight: 500;
	line-height: 1.8;
	text-transform: uppercase;
	color: #fff;
}

.page-foot__inner {
	display: flex;
	flex-direction: column;
	font-family: proxima-nova, sans-serif;
	text-align: center;
	padding: 3em 0;
	margin: 0 auto;
}
.page-foot__inner p span {
	font-size: 1.2em;
	font-weight: 700;
}

.foot-nav__list {
	display: flex;
	justify-content: space-between;
	max-width: 780px;
	margin: 0 auto;
}
.foot-nav__link {
	font-size: 1em;
	letter-spacing: 0.1em;
	font-weight: 700;
	color: #fff;
	text-transform: uppercase;
	text-decoration: none;
	-webkit-transition: color 0.5s ease 0s;
					transition: color 0.5s ease 0s;
}
.foot-nav__link:hover {
	color: #00365e;
}

.social {
	display: flex;
	align-self: center;
	margin: 2.5em 0;
}
.social__link {
	display: block;
	position: relative;
	width: 44px;
	height: 44px;
	border: 2px solid #fff;
	border-radius: 50%;
	margin: 0 0.4em;
	-webkit-transition: background 0.3s ease-in-out;
          transition: background 0.3s ease-in-out;
}
.social__link svg {
	position: absolute;
	width: 18px;
	height: 18px;
	fill: #fff;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	-webkit-transition: all 0.3s ease-in-out;
          transition: all 0.3s ease-in-out;
}
.social__link:hover {
	background: #fff;
}
.social__link:hover svg {
	fill: #0061aa;
}

.copyright {
	text-align: center;
	background: #00365e;
	padding: 1em 2.5em;
}
.copyright p {
	font-size: 0.85em;
}


@media only screen and (max-width: 1100px) {
	.foot-nav__link {
		font-size: 0.9em;
		letter-spacing: 0.05em;
	}
}

@media only screen and (max-width: 950px) {
	.foot-nav__list {
		display: block;
	}
	.foot-nav__link {
		display: block;
		margin-bottom: 0.8em;
	}
	.social {
		margin: 1.5em 0 2em;
	}
}

@media only screen and (max-width: 600px) {
	.page-foot__content p {
		font-size: 0.9em;
	}
	.copyright p {
		font-size: 0.7em;
	}
}





/*------------------------------------*\
  #CTA-ROW
\*------------------------------------*/


.cta {
	margin-top: 6em;
}
.cta__item {
	display: flex;
	flex-direction: column;
	position: relative;
	background: #eee;
	border-radius: 5px;
	margin: 0 1%;
	-webkit-transition: all 0.5s ease;
					transition: all 0.5s ease;
}
.cta__item img {
	border-radius: 5px 5px 0 0;
}

.cta__text {
	padding: 1.6em 1.8em 3em;
}
.cta__text h3 {
	font-size: 1.2em;
	margin-bottom: 0.5em;
}
.cta__text p {
	font-size: 1.1em;
	line-height: 1.5;
}
.cta__text .cta__link {
	display: block;
	position: absolute;
	font-size: 1em;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: #fff;
	text-align: center;
	left: 0;
	right: 0;
	bottom: 0;
	background: #0061aa;
	padding: 0.8em;
	border-radius: 0 0 5px 5px;
	-webkit-transition: background 0.3s ease-in-out;
          transition: background 0.3s ease-in-out;
}
.cta__text .cta__link:hover {
	background: #00365e;
}





















/*------------------------------------*\
  #SLIDER
\*------------------------------------*/


.slider--homepage {
	margin-top: 0;
}

.slider-progress {
  width: 100%;
  height: 4px;
  background: #e1e9ef;
}
.slider-progress .progress {
  width: 0%;
  height: 4px;
  background: #0061aa;
}

.slider__slide {
	position: relative;
	z-index: 9;
}
.slider__slide:focus {
  outline: none;
}
.slide-headline {
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 99;
}
.slide-headline p {
	display: inline-block;
	font-size: 2.6em;
	line-height: 1.2;
	font-weight: 300;
	color: #fff;
	text-align: center;
	background: rgba(0,97,170, 0.85);
	padding: 1.2em 1.7em;
	margin: 0;
}


@media only screen and (max-width: 1050px) {
	.slide-headline p {
		font-size: 2.2em;
		padding: 1em 1.4em;
	}
}

@media only screen and (max-width: 750px) {
	.slide-headline {
		position: relative;
		left: 0;
	}
	.slide-headline p {
		display: block;
		width: 100%;
		font-size: 1.8em;
		padding: 0.9em;
		background: #0061aa;
	}
}

@media only screen and (max-width: 550px) {
	.slide-headline p {
		font-size: 1.5em;
	}
}






/*------------------------------------*\
  #SLIDER-RESPONSIVE
\*------------------------------------*/


.slider--responsive {
	padding: 0 70px;
	margin: 5em auto 4em;
}
.slider--responsive .slick-track {
	display: flex !important;
}
.slider--responsive .slick-slide {
	height: inherit !important;
}

.slider--responsive .cta__item:focus {
  outline: none;
}

.slider--responsive .slick-prev,
.slider--responsive .slick-next {
	background: #eee;
}


@media only screen and (max-width: 1300px) {
	.slider--responsive {
		padding: 0 60px;
	}
}


@media only screen and (max-width: 550px) {
	.slide-headline p {
		font-size: 1.5em;
	}
	.slider--responsive {
		padding: 0 80px;
		margin: 4.5em auto 4em;
	}
}








/*------------------------------------*\
  #SLIDER-ARROWS
\*------------------------------------*/


.slick-prev,
.slick-next {
	display: block;
	position: absolute;
	content: '';
	width: 50px;
	height: 60px;
	top: 50%;
	font-size: 0;
  line-height: 0;
  color: transparent;
	background: #e1e9ef;
	outline: none;
	z-index: 99;
  cursor: pointer;
	-webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  -webkit-transition: background 0.3s ease-in-out;
          transition: background 0.3s ease-in-out;
}
.slick-prev {
  left: 0;
  border-radius: 0 5px 5px 0;
}
.slick-next {
  right: 0;
  border-radius: 5px 0 0 5px;
}
.slick-prev::after,
.slick-next::after {
	position: absolute;
	content: '';
	width: 22px;
  height: 22px;
  top: 0;
  bottom: 0;
	border: solid #0061aa;
  border-width: 0 5px 5px 0;
  margin: auto;
  -webkit-transition: border-color 0.3s ease-in-out;
          transition: border-color 0.3s ease-in-out;
}
.slick-prev::after {
	left: 18px;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}
.slick-next::after {
	right: 18px;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.slick-prev:hover,
.slick-next:hover {
	background: #0061aa;
}
.slick-prev:hover::after,
.slick-next:hover::after {
	border: solid #fff;
  border-width: 0 5px 5px 0;
}


@media only screen and (max-width: 750px) {
	.slick-prev::after,
	.slick-next::after {
	  width: 18px;
	  height: 18px;
	  border-width: 0 4px 4px 0;
	}
}





/*------------------------------------*\
  #SLIDER
\*------------------------------------*/


.slider .slide {
  display: none;
}
.slider.slick-initialized .slide {
  display: block;
}

.slick-slider {
  display: block;
  position: relative;
  box-sizing: border-box;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-touch-callout: none;
     -khtml-user-select: none;
  -ms-touch-action: pan-y;
      touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  display: block;
  position: relative;
  overflow: hidden;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}
.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
     -moz-transform: translate3d(0, 0, 0);
      -ms-transform: translate3d(0, 0, 0);
       -o-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}
.slick-track {
  display: block;
  position: relative;
  top: 0;
  left: 0;
}
.slick-track:before,
.slick-track:after {
  display: table;
  content: '';
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}
.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}
[dir='rtl'] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
  display: none;
}

.slick-dots {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -50px;
  list-style: none;
  text-align: center;
  margin: auto;
}
.slick-dots li {
  display: inline-block;
  position: relative;
  width: 12px;
  height: 12px;
  padding: 0;
  margin: 0 5px;
}
.slick-dots li::before {
	display: none;
}
.slick-dots li button {
  display: block;
  position: absolute;
  width: 12px;
  height: 12px;
  color: transparent;
  background: #e1e9ef;
  padding: 0;
  border-radius: 50%;
  outline: none;
}
.slick-dots li button:hover,
.slick-dots li.slick-active button {
  background: #0061aa;
}





/*------------------------------------*\
  #LOGIN
\*------------------------------------*/


.page-head--login {
  padding-top: 5.5em;
}

.login {
  position: fixed;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  top: 0;
  left: 0;
  padding: 0.6em 2.5em 0.7em;
  background: #00365e;
}
.login p {
  color: #fff;
}
.login__btn .btn {
  font-size: 0.8em;
  color: #fff;
  padding: 0.8em 1.2em 0.7em;
  box-shadow: #0061aa 0 80px 0px 2px inset;
  margin: 0;
}


@media only screen and (max-width: 1200px) {
  .page-head--login {
    padding-top: 4.5em;
  }
  .login {
    padding: 0.6em 1.8em 0.7em;
  }
  .login p {
    font-size: 0.9em;
  }
}

@media only screen and (max-width: 1040px) {
  .page-head--login {
    padding-top: 4.5em;
  }
  .page-head--login .mobile-icon {
    top: 3em;
  }
  .page-head--login .page-head__menu {
    top: 9em;
  }
  .login {
    padding: 0.6em 1.2em 0.7em;
  }
  .login p {
    font-size: 0.8em;
  }
  .login__btn .btn {
    font-size: 0.7em;
    padding: 0.8em 1em 0.7em;
  }
}





/*------------------------------------*\
  #NOTIFICATION
\*------------------------------------*/


.page-head--notification {
  padding-top: 8em;
}

.notification {
  position: fixed;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  top: 0;
  left: 0;
  padding: 0.6em 5em 0.7em 2.5em;
  background: #0061aa;
  z-index: 99;
}
.notification p {
  max-width: 1100px;
  font-size: 1em;
  line-height: 1.5;
  color: #fff;
}

.notification__btn {
  position: absolute;
  font-size: 3em;
  line-height: 1;
  color: #fff;
  top: 0;
  right: 0.8em;
  cursor: pointer;
  -webkit-transition: color 0.3s ease;
          transition: color 0.3s ease;
}
.notification__btn:hover {
  color: #eee;
}


@media only screen and (max-width: 1200px) {
  .page-head--notification {
    padding-top: 7em;
  }
  .notification {
    padding: 0.6em 4em 0.7em 1.8em;
  }
  .notification__btn {
    font-size: 2.8em;
    right: 0.6em;
  }
  .notification p {
    font-size: 0.9em;
  }
}

@media only screen and (max-width: 1040px) {
  .page-head--notification {
    padding-top: 6em;
  }
  .page-head--notification .mobile-icon {
    top: 5em;
  }
  .page-head--notification .page-head__menu {
    top: 10.5em;
  }
  .notification {
    padding: 0.6em 3em 0.7em 1.2em;
  }
  .notification__btn {
    font-size: 2.6em;
    right: 0.5em;
  }
  .notification p {
    font-size: 0.8em;
  }
}

@media only screen and (max-width: 750px) {
  .page-head--notification {
    padding-top: 6.5em;
  }
  .page-head--notification .mobile-icon {
    top: 5.5em;
  }
  .page-head--notification .page-head__menu {
    top: 11em;
  }
  .notification p {
    max-width: 600px;
    line-height: 1.3;
  }
}

@media only screen and (max-width: 525px) {
  .page-head--notification {
    padding-top: 7.5em;
  }
  .page-head--notification .mobile-icon {
    top: 7.5em;
  }
  .page-head--notification .page-head__menu {
    top: 12em;
  }
  .notification p {
    max-width: 400px;
  }
}






