@font-face {
	font-family: Lora;
	src: url('fonts/Lora-Bold.woff2') format('woff2'), url('fonts/Lora-Bold.woff') format('woff');
	font-weight: bold;
	font-display: fallback;
}

@font-face {
	font-family: Lora;
	src: url('fonts/Lora-BoldItalic.woff2') format('woff2'), url('fonts/Lora-BoldItalic.woff') format('woff');
	font-weight: bold;
	font-style: italic;
	font-display: fallback;
}

@font-face {
	font-family: Lora;
	src: url('fonts/Lora-Italic.woff2') format('woff2'), url('fonts/Lora-Italic.woff') format('woff');
	font-style: italic;
	font-display: fallback;
}

@font-face {
	font-family: Lora;
	src: url('fonts/Lora-Medium.woff2') format('woff2'), url('fonts/Lora-Medium.woff') format('woff');
	font-weight: 500;
	font-display: fallback;
}

@font-face {
	font-family: Lora;
	src: url('fonts/Lora-MediumItalic.woff2') format('woff2'), url('fonts/Lora-MediumItalic.woff') format('woff');
	font-weight: 500;
	font-style: italic;
	font-display: fallback;
}
@font-face {
	font-family: Lora;
	src: url('fonts/Lora-Regular.woff2') format('woff2'), url('fonts/Lora-Regular.woff') format('woff');
	font-display: fallback;
}
@font-face {
	font-family: Montserrat;
	src: url('fonts/Montserrat-Bold.woff2') format('woff2'), url('fonts/Montserrat-Bold.woff') format('woff');
	font-weight: bold;
	font-display: fallback;
}

@font-face {
	font-family: Montserrat;
	src: url('fonts/Montserrat-Light.woff2') format('woff2'), url('fonts/Montserrat-Light.woff') format('woff');
	font-weight: 300;
	font-display: fallback;
}

@font-face {
	font-family: Montserrat;
	src: url('fonts/Montserrat-Medium.woff2') format('woff2'), url('fonts/Montserrat-Medium.woff') format('woff');
	font-weight: 500;
	font-display: fallback;
}

@font-face {
	font-family: Montserrat;
	src: url('fonts/Montserrat-SemiBold.woff2') format('woff2'), url('fonts/Montserrat-SemiBold.woff') format('woff');
	font-weight: 600;
	font-display: fallback;
}

@font-face {
	font-family: Montserrat;
	src: url('fonts/Montserrat-Regular.woff2') format('woff2'), url('fonts/Montserrat-Regular.woff') format('woff');
	font-display: fallback;
}

@supports (font-variation-settings: normal) {
	@font-face {
		font-family: Lora;
		src: url('fonts/Lora-VariableFont_wght.woff2') format('woff2 supports variations'),
				 url('fonts/Lora-VariableFont_wght.woff2') format('woff-variations');
		font-weight: 400 700;
		font-display: fallback;
	}
	@font-face {
		font-family: Lora;
		src: url('fonts/Lora-Italic-VariableFont_wght.woff2') format('woff2 supports variations'),
				 url('fonts/Lora-Italic-VariableFont_wght.woff2') format('woff2-variations');
		font-weight: 400 700;
		font-style: italic;
		font-display: fallback;
	}
}
@font-face {
	font-family: Icons;
	src: url('fonts/icons.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: block;
}
/*
facebook: "\e900"
instagram: "\e901"
twitter: "\e902"
youtube: "\e903"
linkedin: "\e904"
arrow down: "\e905"
*/

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */button,hr,input{overflow:visible}progress,sub,sup{vertical-align:baseline}[type=checkbox],[type=radio],legend{box-sizing:border-box;padding:0}html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}details,main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0}code,kbd,pre,samp{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}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:ButtonText dotted 1px}fieldset{padding:.35em .75em .625em}legend{color:inherit;display:table;max-width:100%;white-space:normal}textarea{overflow:auto}[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}summary{display:list-item}[hidden],template{display:none}

html, body {font-size: 100%;}
html {
	height: 100%;
	scroll-behavior: smooth;
	scroll-snap-type: y proximity;
	scroll-padding-top: 7.312em;
}
body {
	color: #4A4A4A;
	background-color: white;
	font: 1em/1.714 Lora, Georgia, "Times New Roman", Times, serif;
	margin: 0 auto;
	padding: 0;
	quotes: "“" "”" "‘" "’";
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
a {color: inherit;}
a img {border: none;}
address {font-style: normal;}
blockquote {
	margin: 0 0 1.5em;
	font-style: italic;
}
blockquote > :first-child:before {content: open-quote;}
blockquote > p:last-of-type:after {content: close-quote;}
dd {margin-left: 0;}
img, input, select, textarea {
	vertical-align: middle;
	margin: 0;
}
fieldset {
	margin: 0;
	padding: 0;
	border: none;
}
fieldset > div {margin-bottom: 1em;}
figure {margin: 0;}
figcaption {
	display: block;
	margin-top: 1em;
	font-weight: 500;
}
h1, h2, h3, p {margin-top: 0;}
h1, h2 {font: 300 3em/1.208 Montserrat, Arial, Helvetica, Sans-serif;}
h1 {text-transform: uppercase;}
h3 {
	font-size: 1em;
	margin-bottom: 0;
}
img {
	max-width: 100%;
	height: auto;
}
input, select, textarea {
	background-color: transparent;
	border: 1px solid #9B9B9B;
	padding: .5em;
	box-sizing: border-box;
	width: 100%;
	font-size: 1.125em;
}
input[type=submit] {width: auto;}
input:focus, select:focus, textarea:focus {
	background-color: white;
}
label {
	font-family: Montserrat, Arial, Helvetica, Sans-serif;
	text-transform: uppercase;
	display: table;
}
legend {
	position: absolute;
	left: -9999em;
}
p, ul, ol, table {margin: 0 0 1.714em;}
select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTNweCIgaGVpZ2h0PSI4cHgiIHZpZXdCb3g9IjAgMCAxMyA4IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPHRpdGxlPlBhdGg8L3RpdGxlPgogICAgPGcgaWQ9IlNWLUxhYnMtVUktLS1GaW5hbCIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IjEtVUktQ29udGFjdCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTEzMDQuMDAwMDAwLCAtMTg5Ni4wMDAwMDApIiBmaWxsPSIjQjFCMUIxIj4KICAgICAgICAgICAgPGcgaWQ9IkZvcm0iIHRyYW5zZm9ybT0idHJhbnNsYXRlKDc1Ni40NDY1NjUsIDE1MzQuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0iUGF0aCIgcG9pbnRzPSI1NDguNDIwNzAzIDM2MiA1NTkuNjQxMzc4IDM2MiA1NTQuMDMxMDQxIDM2OS45MTk0MDEiPjwvcG9seWdvbj4KICAgICAgICAgICAgPC9nPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+) top 50% right 1.333em no-repeat;
	padding-right: 3em;
}
textarea {resize: vertical;}
form fieldset div.radio {
	display: none;
}

.btn, input[type=submit], button {
	background-color: #EE602C;
	font-weight: 600;
	line-height: 1;
	font-family: Montserrat, Arial, Helvetica, Sans-serif;
	text-transform: uppercase;
	border-radius: 10em;
	padding: 1.143em;
	text-decoration: none;
	text-align: center;
	min-width: 9em;
	color: white;
	display: inline-block;
	border: none;
}
.btngroup {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.btngroup .btn {margin-bottom: 1em;}
nav a {text-decoration: none;}
nav ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
header nav a {
	font-weight: 500;
	transition: font-weight .25s;
	font-size: .875em;
	line-height: 1.214;
	display: block;
}
header nav a:hover, header nav .current > a {text-decoration: underline;}

body > header {
	font-family: Montserrat, Arial, Helvetica, Sans-serif;
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	z-index: 111;
	filter: drop-shadow(0 0 .25em rgb(0 0 0 / .1));
	background-color: white;
}
body > header > div {
	padding: 3.125em 3.819% 3.125em 18.056%;
	box-sizing: border-box;
	display: flex;
	position: relative;
	z-index: 110;
	max-width: 90em;
	margin: auto;
}
body > header .logo {
	position: absolute;
	left: 5%;
	bottom: -1.125em;
}
body > header .logo:before {
	content: '';
	background-color: #fff;
	border-radius: 100%;
	width: 141.379%;
	height: 117.241%;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
}
body > header .logo img {position: relative;}
body > header nav {margin-left: auto;}
#nav_toggle, #nav_toggle + label {
	position: absolute;
	left: -9999em;
}
body > header nav > ul {display: flex;}
body > header nav li {margin-left: 2.778vw;}
body > header nav ul ul {
	position: absolute;
	left: -9999em;
	top: -9999em;
}
body > footer {
	padding: 3.875em 6.944% 1.5em;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
body > footer > * {flex: 1 0 100%;}
body > footer > nav, body > footer > nav + * {
	flex: 0 1 46.371%;
	max-width: 35.938em;
}
body > footer > nav {
	font-weight: 500;
	margin-right: 7.258%;
}
body > footer a {text-decoration: none;}
body > footer a:hover {text-decoration: underline;}
body > footer h2 {
	font-weight: bold;
	font-size: 1em;
	line-height: 1.188;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	margin-bottom: 1.75em;
	text-transform: uppercase;
}
footer ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
body > footer nav li {margin-bottom: .75em;}
body > footer nav ul ul {
	margin-left: 1em;
	margin-top: .5em;
}
body > footer nav li li > a {font-size: .75em;}
footer .contacts h2 {flex: 1 0 100%;}
footer .contact {
	line-height: 1.625em;
	font-weight: 500;
	flex: 0 1 50%;
	margin-bottom: 1.625em;
}
footer .contact ul {margin-top: 1.625em;}
footer .social {
	text-align: center;
	display: flex;
	justify-content: center;
	margin: 0 0 1.813em;
}
footer .social li {margin: 0 .764%;}
footer .social a {
	color: white;
	background-color: #9B9B9B;
	border-radius: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 2.375em;
	height: 2.375em;
}
footer .social a:hover {text-decoration: none;}
footer .social a:before {
	font: 1.5em/1 Icons;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	display: block;
}
footer .facebook a:before {
	content: '\e900';
	font-size: 1.313em;
}
footer .linkedin a:before {content: '\e904';}
footer .instagram a:before {content: '\e901';}
footer .social a span {
	position: absolute;
	left: -9999em;
	top: -9999em;
}
footer .copyright {
	font: .75em Montserrat, Arial, Helvetica, Sans-serif;
	text-align: center;
}

main {font-size: 1.458vw;} /* 21px */
main h1, main h2 {margin-bottom: 1em;}
main h1 {font-size: 2.286em;}
main h2 {font-size: 2.095em;}
main .inner {
	max-width: 59.058em; /* 1240 */
	margin: auto;
	padding-left: 6.944%;
	padding-right: 6.944%;
}

main ul {
	list-style: none;
	margin-left: 0;
	padding-left: 1em;
}
main ul li:before {
	content: '–';
	margin-left: -1em;
	float: left;
}
main > section > section {
	padding: 0 6.944%;
	max-width: 77.5em;
	margin: auto;
}
main > section > section > p {font-size: 1.313em;}
.split {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 6.25em 6.944%;
	max-width: none;
	flex-wrap: wrap;
}
.split > h2 {
	flex: 1 0 100%;
	text-align: center;
	margin-bottom: 2em;
}
.split > * {
	flex: 0 1 47.258%;
	max-width: 36.625em;
}
/* .split > :first-child:not(h2) {margin-right: 5.484%;} */
.split > * > :last-child {margin-bottom: 0;}
.split form label {
	font-size: .875;
	line-height: 1.286;
}

.hero, .hero .inner > :not(picture) {position: relative;}
.hero {
	height: 100vh;
	min-height: 23.81em;
	/* max-height: 36.857em; */
	max-height: 56.25vw;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: center;
	color: white;
	text-align: center;
	padding: 8em 6.994% 2.857em;
	position: relative;
	margin-bottom: 3.429em;
	overflow: hidden;
}
.hero .inner {
	width: 100%;
	max-width: 59.048em;
	margin: 0 auto;
	min-height: 8.286em;
	padding: 0;
}
.hero > .inner > * {z-index: 1;}
.hero h1 {margin-bottom: 0;}
.hero picture {display: block;}
.hero img {
	position: absolute;
	left: 50%;
	min-width: 100%;
	bottom: 0;
	min-height: 100%;
	transform: translateX(-50%);
	z-index: auto;
	object-fit: cover;
	height: 100%;
	object-position: center;
}

main > .section:first-child {margin-top: 10em;}

#intro {padding-bottom: 3.333em;}
#intro h2 {text-align: center;}
#intro :last-child {margin-bottom: 0;}

.home #nav_toggle + label:before,
.home #nav_toggle + label:after
	{border-color: currentcolor;}

.home main {overflow-x: hidden;}
.home .hero {
	height: 95vh;
	/* max-height: 43.286em; */
	max-height: none;
	padding: 13em 35.883% 12.029vh;
	overflow: hidden;
	border-radius: 0 0 50% 50% / 0 0 45.972% 45.972%;
	margin: 0 -28.889%;
}
@media screen and (min-height: 59.75em) {
	.home .hero {padding-bottom: 5.476em;}
}
.home .hero img {
	width: auto;
	min-width: 100vw;
	max-width: none;
}
.home .hero + .more {
	position: absolute;
	left: 50%;
	transform: translate(-50%, -50%);
	height: 1.19em;
	cursor: pointer;
	min-width: 5em;
	font-size: .762em;
}
.home .hero + .more:before {
	content: '\e905';
	font: 1.19em/1 Icons;
	color: #fff;
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	transform: translate(-50%, -50%);
}

.home .split h2 {
	margin-bottom: .688em;
	max-width: none;
}
.home #intro {
	padding-top: 5em;
	text-align: center;
}
.home #intro h2 {margin-bottom: .571em;}
.home #intro > div + div > * {font: 1.5em/1.833 Montserrat, Arial, Helvetica, Sans-serif;}

.home #partner {background-color: rgb(148 197 204 / .4);}
.home #partner .inner {
	padding-top: 2.571em;
	padding-bottom: 2.571em;
}
.home #partner picture {
	margin-left: -20.161%;
	flex: 0 1 67.258%;
	max-width: none;
	align-self: flex-start;
}
.home #partner img {border-radius: 50%;}

.home #access {
	color: white;
	background-color: #124459;
	text-align: center;
	padding: 6em 6.944%;
	font-family: Montserrat, Arial, Helvetica, Sans-serif;
}
.home #access h2 {
	font-size: 2em;
	line-height: 1.219;
	max-width: 23.69em;
	margin: 0 auto .571em;
}
.home #access p {
	font-family: Lora, Georgia, "Times New Roman", Times, serif;
	max-width: 48.476em;
	margin-left: auto;
	margin-right: auto;
}
.home #access ul {
	display: flex;
	flex-wrap: wrap;
	max-width: 77.5em;
	margin: auto;
	list-style: none;
	justify-content: space-between;
	padding: 0;
}
.home #access ul li {
	margin: 0 0 2em;
	font-size: .857em;
	font-weight: 500;
	line-height: 1.167;
	flex: 0 1 30%;
	position: relative;
	padding-top: 16.935%;
}
.home #access ul li:before {content: none;}
.home #access img {
	opacity: .47;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, 0);
}
.home #access ul li:first-child img {transform: translate(-50%, 50%);}
.home #access ul li:nth-child(4) img,
.home #access ul li:nth-child(5) img,
.home #access ul li:nth-child(6) img
	{transform: translate(-50%, 25%);}

.slider {
	overflow: hidden;
	visibility: hidden;
	position: relative;
}
.wrapper {
	overflow: hidden;
	position: relative;
	display: flex;
}
.wrapper > * {
	width:100%;
	position: relative;
	overflow: hidden;
}
.slider .nav {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 86.112%;
	transform: translateX(-50%);
	max-width: 59.048em;
	padding: 0 6.944%;
	margin: auto;
}
.slider .nav > * {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 1.5em;
	height: 2.667em;
	cursor: pointer;
}
.slider .nav .hidden {display: none;}
.slider .nav > :before,
.slider .nav > :after
{
	content: '';
	position: absolute;
	height: 50%;
	left: 25%;
	border-left: 6px solid #979797;
	box-sizing: border-box;
}
.slider .nav > :before {
	top: 0;
	transform: rotate(25deg);
	transform-origin: bottom left;
}
.slider .nav > :after {
	transform: rotate(-25deg);
	bottom: 0;
	transform-origin: top left;
}
.slider .nav .prev {left: 1em;}
.slider .nav .next {right: 1em;}
.slider .nav .next:before {
	transform: rotate(-25deg);
	transform-origin: bottom right;
	left: 50%;
}
.slider .nav .next:after {
	transform: rotate(25deg);
	transform-origin: top right;
	left: 50%;
}
.slider_pagination {
	display: flex;
	justify-content: space-between;
	padding: 0 6.944%;
	max-width: 48.905em;
	margin: 0 auto 2.667em;
}
.slider_pagination li {
	display: flex;
	flex: 0 1 11.048em;
}
.slider_pagination li:before {content: none;}
.slider_pagination li a {
	flex: 1 0 auto;
	font: bold 1em/1 Montserrat, Arial, Helvetica, Sans-serif;
	text-transform: capitalize;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	height: 11.048em;
	border-radius: 100%;
	background-size: cover;
	background-repeat: no-repeat;
	color: white;
	cursor: pointer;
}
@keyframes rotation {
	50% {
		transform: rotateY(90deg);
	}
	100% {
		transform: rotateY(0deg);
	}
}
.slider_pagination li:hover a {animation: rotation .5s;}
.slider_pagination .current a {
	background-position: -9999em -9999em;
	color: #2A2A2A;
	cursor: default;
}
.slider_pagination .current:hover a {animation: none;}

#features .split {align-items: flex-start;}
#features img {
	border-radius: 100%;
	width: 142.321%;
	margin-left: -42.662%;
	max-width: none;
}
.logos {
	max-width: 77.5em;
	margin: 4.25em auto;
	padding: 0 6.944%;
	text-align: center;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 1em;
}
.logos img {margin-bottom: 2em;}

.contact .split h2 {font-size: 2.5em;}


#certifications {
	background-color: #124559;
	color: white;
	padding: 3.524em 0 8em;
}
.iconlist {
	display: flex;
	flex-wrap: wrap;
	padding-left: 0;
}
.iconlist > * {
	flex: 0 1 18.458%;
	margin-left: 1.815%;
	margin-bottom: 1.815%;
	background-color: white;
	color: black;
	padding: .968%;
	box-sizing: border-box;
	line-height: 1.25;
	font-family: Montserrat, Arial, Helvetica, Sans-serif;
}
.iconlist > :before {content: none;}
.iconlist > :nth-child(5n+1) {margin-left: 0;}
.iconlist--icon {
	min-height: 7.813em;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 1em;
}
.iconlist--icon img {
	max-height: 7.813em;
	width: auto;
}
.iconlist--text {
	font-weight: 500;
	font-size: .571em;
	display: block;
	text-align: center;
}
.iconlist--text ul {
	padding-left: 0;
	margin: 0;
}
.iconlist--text li {margin-bottom: 0;}
.iconlist--text li:before {content: none;}

.process #intro .inner {max-width: 51.524em;}
#process {
	background-color: rgb(208 228 231 / .51);
	counter-reset: list-item;
}
#process .inner {
	padding-top: 2.524em;
	padding-bottom: 2.524em;
}
#process .sub {
	display: grid;
	grid-template-columns: 17em auto;
	column-gap: 3.145%;
	margin-bottom: 1em;
	align-items: center;
}
#process .sub:first-of-type {
	align-items: start;
	margin-top: 3.476em;
}
#process .sub:first-of-type h3 {margin-top: 2em;}
#process .sub:nth-of-type(even) {
	grid-template-columns: auto 17em;
	grid-auto-flow: column;
}
#process .sub:nth-of-type(even) > picture {order: 1;}
#process .sub picture img {
	border-radius: 100%;
	display: block;
}
#process h3 {
	font: normal 1.524em/1.313 Montserrat, Arial, Helvetica, Sans-serif;
	margin-bottom: .5em;
}
#process ol {
	padding-left: 4em;
	list-style: none;
	font-family: Montserrat, Arial, Helvetica, Sans-serif;
	margin-top: 2.5em;
}
#process ol li {
	margin: 0 0 2em;
	position: relative;
	font-size: 1.143em;
}
#process ol li:before {
	content: counter(list-item) '.';
	color: #94C5CC;
	font-size: 3.333em;
	line-height: 1;
	position: absolute;
	left: -1em;
	bottom: 0;
}

.facilities .hero .inner {min-height: 4.476em;}
.facilities .split {
	align-items: flex-start;
	padding-top: .571em;
}
.facilities h3, .facilities h4 {font: 1.524em/1.313 Montserrat, Arial, Helvetica, Sans-serif;}
.facilities h3 {margin-bottom: .313em;}
.facilities h4 {
	font-size: 1em;
	line-height: 1.714;
	margin-bottom: 0;
}

.gallery .inner {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.gallery picture {
	flex: 0 1 32.258%;
	margin-bottom: 1.613%;
}

.contact .hero img {
	bottom: auto;
	top: 0;
	height: 100%;
	max-width: 100%;
	object-position: 35% 50%;
}
.contact #intro {
	text-align: center;
	padding-bottom: 0;
}
.contact .split {align-items: flex-start;}
#visit {}
#visit .contact > * {font: 1.524em/1.313 Montserrat, Arial, Helvetica, Sans-serif;}
#visit address {
	display: block;
	margin-bottom: 1.5em;
}
#visit a {text-decoration: none;}
#visit a:hover {text-decoration: underline;}
#visit ul {padding-left: 0;}
#visit ul li {margin-bottom: 0;}
#visit ul li:before {content: none;}
#team .split {align-items: center;}
#team img {
	border-radius: 100%;
	width: 104.778%;
	margin-left: -4.778%;
	max-width: none;
}

@media screen and (min-width: 68.75em) {
	.home #access ul li:first-child img {width: 26.409%;}
	.home #access ul li:nth-child(2) img {width: 32.527%;}
	.home #access ul li:nth-child(3) img {width: 33.065%;}
	.home #access ul li:nth-child(4) img {width: 27.419%;}
	.home #access ul li:nth-child(5) img {width: 36.29%;}
	.home #access ul li:nth-child(6) img {width: 36.29%;}
}
@media screen and (max-width: 68.688em) {
	main {font-size: 1em;}
	.home #access ul li {
		font-size: 1em;
		padding-top: 10em;
	}
	.home #access ul li:first-child img {width: 4.688em;}
	.home #access ul li:nth-child(2) img {width: 5.75em;}
	.home #access ul li:nth-child(3) img {width: 5.875em;}
	.home #access ul li:nth-child(4) img {width: 4.875em;}
	.home #access ul li:nth-child(5) img {width: 6.438em;}
	.home #access ul li:nth-child(6) img {width: 6.438em;}
}
@media screen and (min-width: 68.75em) {
	footer .contacts {
		display: flex;
		flex-wrap: wrap;
		align-content: flex-start;
	}
	footer .contact:first-of-type {
		padding-right: 1em;
		box-sizing: border-box;
	}
	.split-list {
		display: flex;
		justify-content: space-between;
	}
	.split-list > * {
		flex-basis: 50%;
		box-sizing: border-box;
	}
}
@media screen and (min-width: 90em) {
	body > header > div {
		padding-left: 16.25em;
		padding-right: 3.438em;
	}
	body > header nav li {margin-left: 2.5em;}
	body > footer > nav {margin-right: 5.625em;}
	main {font-size: 1.313em;}
	main > section > header > div {
		padding-left: 6.25em;
		padding-right: 6.25em;
	}
	.home #access ul li {padding-top: 10em;}
	#certifications {
		padding-left: calc((100vw - 77.5em) / 2);
		padding-right: calc((100vw - 77.5em) / 2);
	}
}
@media screen and (max-width: 68.75em) {
	.iconlist > *,
	.iconlist > :nth-child(5n+1) {
		flex-basis: 23%;
		margin-left: 2.667%;
	}
	.iconlist > :nth-child(4n+1) {margin-left: 0;}
}
@media screen and (max-width: 61em) {
	/* medium viewport styles */
	body > header > div {
		padding-top: 5.123vw;
		padding-bottom: 5.123vw;
	}
	.logo img {width: 10.246vw;}
	.nav_active, .nav_active body {overflow: hidden;}
	#nav_toggle + label {
		left: auto;
		right: .5em;
		top: 50%;
		transform: translateY(-50%);
		color: black;
		z-index: 1;
		cursor: pointer;
		width: 3em;
		height: 3em;
		text-indent: -9999em;
	}
	#nav_toggle + label:before,
	#nav_toggle + label:after
	{
		content: '';
		position: absolute;
		width: 1.875em;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
		border-style: solid;
	}
	#nav_toggle + label:before {
		border-width: 3px 0;
		height: .813em;
	}
	#nav_toggle + label:after {border-width: 3px 0 0;}
	#nav_toggle:checked + label {
		color: white;
		right: 1.375em;
		top: 1.563em;
		transform: none;
	}
	#nav_toggle:checked + label:before,
	#nav_toggle:checked + label:after
	{
		border-color: white;
		border-width: 4px 0 0;
		height: 0;
		width: 2.375em;
	}
	#nav_toggle:checked + label:before {transform: translate(-50%, -50%) rotate(45deg);}
	#nav_toggle:checked + label:after {transform: translate(-50%, -50%) rotate(-45deg);}
	body > header nav > ul {
		position: fixed;
		left: -9999em;
		top: -9999em;
		right: 9999em;
		height: 100%;
		overflow: auto;
		flex-direction: column;
		background-color: #124659;
		color: white;
		padding-top: 5.5em;
		padding-bottom: 3em;
		opacity: .01;
		transition-property: opacity, left, top, right, height;
		transition-duration: .25s, 0s, 0s, 0s, 0s;
		transition-delay: 0s, .25s, .25s, .25s, .5s;
		box-sizing: border-box;
	}
	body > header #nav_toggle:checked ~ ul {
		left: 0;
		top: 0;
		right: 0;
		height: 100vh;
		opacity: 1;
		transition-delay: 0s;
	}
	body > header nav li {margin: 0 0 1.75em;}
	body > header nav .home {position: static;}
	body > header nav a {
		color: white;
		display: block;
		padding: 0 14%;
		font-size: 1.625em;
		font-weight: 300;
	}
	body > header nav ul ul {
		position: static;
	}
	body > header nav li li {margin: 1em 0 0;}
	body > header nav ul ul a {
		font-size: 1em;
		padding-left: calc(14% + 2em);
	}
	.hero {padding-top: 13.115vw;}
	.home #access ul {
		flex-wrap: wrap;
		justify-content: space-around;
		justify-content: space-evenly;
	}
	.home #access ul li {
		flex-basis: 45%;
		margin-bottom: 2em;
	}
	#services h2 {font-size: 4.918vw;}
	.iconlist > *,
	.iconlist > :nth-child(5n+1),
	.iconlist > :nth-child(4n+1)
	{
		flex-basis: 30%;
		margin-left: 5%;
	}
	.iconlist > :nth-child(3n+1) {margin-left: 0;}
}
@media screen and (max-width: 51em) {
	.hero h1 br {display: none;}
	.hero .inner {font-size: 1.961vw;}
}
@media screen and (max-width: 40em) {
	/* small viewport styles */
	h1, h2 {
		font-size: 2.5em;
		line-height: 1.2;
	}
	.btn {
		display: table;
		margin: auto;
	}
	body > header > div {
		padding: 0;
		min-height: 4.625em;
		position: static;
	}
	body > header .logo {
		left: 1.125em;
		bottom: -1.75em;
	}
	body > header .logo img {width: 5.75em;}
	body > footer {
		padding: 3em 10.145%;
		display: block;
	}
	body > footer h2,
	footer .contact
		{font-size: 1.25em;}
	footer .social li {margin: 0 .625em;}
	.btngroup {flex-direction: column;}
	main h2 {font-size: 2em;}
	.section section {margin-bottom: 2em;}
	.section section:last-child {margin-bottom: 0;}
	.split, main .inner {
		display: block;
		padding-left: 4.831%;
		padding-right: 4.831%;
	}
	.split {
		padding-top: 1.5em;
		padding-bottom: 3.75em;
	}
	.split > :first-child:not(h2) {margin: 0 0 3em;}
	main > .section:first-child {margin-top: 6em;}
	
	#intro h2, .split > h2 {
		text-align: left;
		margin-bottom: 1em;
	}

	.hero {
		color: inherit;
		max-height: none;
		height: auto;
		text-align: left;
		padding: 0;
		margin: 0;
	}
	.hero .inner {
		position: relative;
		display: flex;
		flex-direction: column;
		min-height: 0;
		font-size: 1em;
	}
	.hero .inner > :not(picture) {
		margin-left: 4.831%;
		margin-right: 4.831%;
	}
	.hero h1 {
		font-size: 2em;
		line-height: 1.2;
		order: 1;
	}
	.hero h1 br {display: none;}
	.hero img {
		position: static;
		transform: none;
		margin-bottom: 2em;
		min-height: 0;
		max-width: 100%;
		height: auto;
	}
	#intro {
		padding-top: 5em;
		text-align: left;
	}

	.home .hero {
		border-radius: 0;
		height: auto;
		max-height: none;
		min-height: 0;
		padding: 0;
		margin: 0;
	}
	.home .hero + .more {display: none;}
	.home #intro {text-align: left;}
	.home #partner picture {
		margin: 0 0 3em;
		display: block;
	}
	.home #access {
		margin-bottom: 6.25em;
		padding: 3.438em 0 1px;
		text-align: left;
	}
	.home #access ul {
		display: block;
		margin-top: 4em;
		text-align: center;
		padding-left: 9.662%;
		padding-right: 9.662%;
	}
	.home #access ul li {
		margin-bottom: 3em;
		padding-top: 0;
	}
	.home #access img {
		position: static;
		display: block;
		margin: 0 auto 1em;
		transform: none !important;
		width: auto !important;
	}
	header .subtitle {font-size: 2.5em;}
	header .subtitle br {display: none;}
	#features img {
		width: auto;
		max-width: 100%;
		margin: 0;
	}
	.slider .nav {top: 50vw;}
	.slider .nav > :before, .slider .nav > :after {
		left: 0;
		border-width: 4px;
	}
	.slider .nav > .next:before, .slider .nav > .next:after {
		left: auto;
		right: 0;
	}
	.slider .nav .prev {left: 0;}
	.slider .nav .next {right: 0;}
	.slider_pagination {
		justify-content: center;
		margin: 3em 0 1em;
	}
	.slider_pagination li {
		flex-basis: 1em;
		height: 1em;
		margin: 0 1em;
	}
	.slider_pagination li a {
		background: currentcolor -9999em -9999em no-repeat;
		font-size: 1px;
		text-indent: -9999em;
		color: #DDD;
		border: 8em solid #DDD;
		height: auto;
	}
	.slider_pagination li:hover a {animation: none;}
	.slider_pagination .current a {border: none;}
	#certifications {display: block;}
	#certifications p {
		font-size: 1.125em;
		line-height: 1.667;
	}
	.iconlist {justify-content: space-between;}
	.iconlist > *,
	.iconlist > :nth-child(5n+1),
	.iconlist > :nth-child(4n+1),
	.iconlist > :nth-child(3n+1)
	{
		flex-basis: 47%;
		margin-left: 0;
		margin-bottom: 1.5em;
		padding-bottom: 1em;
	}
	.logos {flex-direction: column;}
	.logos img {max-width: 5.625em;}
	.iconlist--text {font-size: .75em;}
	main > section > .intro {
		padding-left: 4.831%;
		padding-right: 4.831%;
	}
	main > section >  .intro {margin: 0 0 10.625em;}
	main > section >  .intro p {
		font-size: 1.313em;
		line-height: 1.523;
	}
	#process .sub {
		display: block;
		margin-top: 5em;
		text-align: justify;
		-moz-hyphens: auto;
		-webkit-hyphens: auto;
		-ms-hyphens: auto;
		hyphens: auto;
	}
	#process .sub picture img {margin: 0 auto 2em;}
	#process .sub h3 {text-align: center;}
	#process .sub:first-of-type h3 {margin-top: 0;}
	#process ol {text-align: left;}
	#services > div:first-of-type {margin-bottom: 1.5em;}
	#services header > :not(h2), #services h3 {
		font-size: 1.125em;
		line-height: 1.667;
	}
	#services h2 {
		font-size: 2.5em;
		text-transform: none;
	}
	.facilities .hero {margin-bottom: 5em;}
	.gallery picture {
		flex-basis: 48.27%;
		margin-bottom: 3.46%;
	}
	.contact #intro {text-align: left;}
	.submit {text-align: center;}
	#visit address {margin-bottom: 1em;}
	#team img {
		width: auto;
		max-width: 100%;
		margin-left: 0;
		margin-bottom: 2em;
	}
}
@media screen and (max-width: 31.25em) {
	.iconlist {display: block;}
	.iconlist > *,
	.iconlist > :nth-child(5n+1),
	.iconlist > :nth-child(4n+1),
	.iconlist > :nth-child(3n+1)
	{
		max-width: 14.375em;
		margin-left: auto;
		margin-right: auto;
	}
}