* {
	box-sizing: border-box;
}

a {
	text-decoration: none;
}

a:visited {
	color: #2362a9;
}

b,
strong {
	font-family: "GTE-medium";
	font-weight: lighter;
}

hr {
	width: 100%;
	border: 0.5px solid #d5dae0;
}

::-moz-selection {
	color: #3a3d41;
	background: #b4d6ff;
}

::selection {
	color: #3a3d41;
	background: #b4d6ff;
}

::placeholder {
	/* Chrome, Firefox, Opera, Safari 10.1+ */
	color: #838d90;
	opacity: 1;
	/* Firefox */
	font-family: "GTE-light";
}

:-ms-input-placeholder {
	/* Internet Explorer 10-11 */
	color: #838d90;
	font-family: "GTE-light";
}

::-ms-input-placeholder {
	/* Microsoft Edge */
	color: #838d90;
	font-family: "GTE-light";
}

/* For IE10 */
.select::-ms-expand {
	display: none;
}

textarea,
input[type=text],
input[type=button],
input[type=submit],
.input-checkbox {
	-webkit-appearance: none;
	appearance: none;
	border-radius: 0;
}

@font-face {
	font-family: "GTE-thin";
	src: url("../font/GTEestiProDisplay-Thin.woff");
	font-weight: lighter;
	font-display: swap;
}
@font-face {
	font-family: "GTE-light";
	src: url("../font/GTEestiProDisplay-Light.woff");
	font-weight: lighter;
	font-display: swap;
}
@font-face {
	font-family: "GTE-regular";
	src: url("../font/GTEestiProDisplay-Regular.woff");
	font-weight: normal;
	font-display: swap;
}
@font-face {
	font-family: "GTE-medium";
	src: url("../font/GTEestiProDisplay-Medium.woff");
	font-weight: normal;
	font-display: swap;
}
@font-face {
	font-family: "GTE-bold";
	src: url("../font/GTEestiProDisplay-Bold.woff");
	font-weight: bold;
	font-display: swap;
}
@font-face {
	font-family: "GTE-ubold";
	src: url("../font/GTEestiProDisplay-UltraBold.woff");
	font-weight: bold;
	font-display: swap;
}
@font-face {
	font-family: RobotoMono-regular;
	src: url("../font/RobotoMono-Regular.ttf");
}
h1,
.h1 {
	font-family: "GTE-medium";
	font-weight: lighter;
	font-size: 2.25rem;
	line-height: 125%;
	margin: 0 0 1.25rem 0;
	color: #3a3d41;
	width: 100%;
}

h2,
.h2 {
	font-family: "GTE-medium";
	font-weight: lighter;
	font-size: 2rem;
	line-height: 125%;
	margin: 0 0 1.25rem 0;
	color: #3a3d41;
	width: 100%;
}

h3,
.h3 {
	font-family: "GTE-regular";
	font-weight: lighter;
	font-size: 1.75rem;
	line-height: 150%;
	margin: 0 0 1.25rem 0;
	color: #3a3d41;
	width: 100%;
}

h4,
.h4 {
	font-family: "GTE-regular";
	font-weight: normal;
	font-size: 1.5rem;
	line-height: 150%;
	margin: 0 0 1.25rem 0;
	color: #3a3d41;
	width: 100%;
}

h5,
.h5 {
	font-family: "GTE-light";
	font-weight: normal;
	font-size: 1.25rem;
	line-height: 175%;
	margin: 0 0 1.25rem 0;
	color: #3a3d41;
	width: 100%;
}

h6,
.h6 {
	font-family: "GTE-light";
	font-weight: normal;
	font-size: 1.15rem;
	line-height: 175%;
	margin: 0 0 1.25rem 0;
	color: #3a3d41;
	width: 100%;
}

p,
.p {
	font-family: "GTE-light";
	font-size: 1rem;
	line-height: 175%;
	margin: 0 0 2.5rem 0;
}

html {
	height: 100%;
	scroll-behavior: smooth;
	font: 16px/28px "GTE-light", sans-serif;
	letter-spacing: 0.5px;
	color: #3a3d41;
	word-break: break-word;
	/*scroll-margin-top: 80px;*/
}
@media (max-width: 800px) {
	html {
		font: 15px/23px "GTE-light", sans-serif;
	}
}

body {
	min-height: 100%;
	margin: 0;
}

.body-content {
	position: relative;
}
.body-content_bg-grey {
	background-color: #FAFAFA;
}
.body-content_bg-lgrey2 {
	background-color: #F4F4F4;
}

.main {
	flex-wrap: wrap;
	min-height: 320px;
	padding-bottom: 36px;
}

.link {
	display: inline-flex;
	align-items: center;
	text-decoration: none;
	color: #2362a9;
	cursor: pointer;
	transition: 0.1s;
	position: relative;
}
.link.link_arrow::after {
	content: "";
	display: inline-flex;
	width: 22px;
	height: 22px;
	min-width: 22px;
	margin: 3px;
	background-image: url("../images/n-arrow-b.svg");
	transform: rotate(270deg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 18px;
}
.link.link_arrow_w::after {
	background-image: url("../images/n-arrow-w.svg");
}
/*
.link.link_arrow_gr::after {
	background-image: url("../images/n-arrow-ng.svg");
}
*/
.link.link_return::before {
	content: "";
	display: inline-flex;
	width: 22px;
	height: 22px;
	min-width: 22px;
	margin: 3px;
	background-image: url("../images/n-arrow-b.svg");
	transform: rotate(90deg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 18px;
}
.link.link_blank::after {
	content: "";
	display: inline-flex;
	width: 22px;
	height: 22px;
	min-width: 22px;
	margin: 3px;
	background-image: url("../images/link-b.svg");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 18px;
}

.data-block {
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	max-width: unset;
	margin: unset;
}
.data-block_hero {
	padding: 2.5rem;
	border-radius: 1.25rem;
}
@media (max-width: 600px) {
	.data-block_hero {
		padding: 1.25rem;
	}
}
.data-block_nopic {
	justify-content: unset;
}
.data-block_nopic .data-block__text {
	width: 100%;
	margin: 0;
}
.data-block__text {
	display: inline-flex;
	flex-wrap: wrap;
	width: 48%;
	margin: 0 2% 0 0;
}
.data-block__details {
	width: 100%;
	font-family: "GTE-light";
	font-size: 18px;
	line-height: 28px;
	color: #484d51;
}
.data-block__image {
	display: inline-flex;
	max-width: 50%;
	width: 100%;
	height: 320px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}
.data-block__image_shadow {
	filter: drop-shadow(10px 10px 16px #b2b2b2);
}

@media (max-width: 800px) {
	.data-block_hero {
		padding: 16px 10px;
	}
	.data-block__text {
		width: 100% !important;
		text-align: center;
		order: 2;
		margin: 0;
	}
	.data-block__image {
		width: 100%;
		height: 240px;
		max-width: unset;
		margin: 0 0 24px 0;
	}
	.data-block__image_shadow {
		filter: drop-shadow(0 0 6px #b2b2b2);
	}
}
.d-none {
	display: none !important;
}

.d-flex {
	display: flex !important;
}

.d-iflex {
	display: inline-flex !important;
}

@media (max-width: 800px) {
	.mob-d-none {
		display: none !important;
	}
	.mob-d-flex {
		display: flex !important;
	}
	.mob-d-iflex {
		display: inline-flex !important;
	}
}
.monospace {
	font-family: "RobotoMono-regular";
}

.width-limiter {
	max-width: 980px;
	margin: auto;
}

.text-padding {
	padding: 0 40px;
}
@media (max-width: 800px) {
	.text-padding {
		padding: 0 12px;
	}
}

.fluid-block-flat {
	width: 100%;
	padding: 0 20px;
}
@media (max-width: 800px) {
	.fluid-block-flat {
		padding: 0 12px;
	}
}

.fluid-block-sm {
	width: 100%;
	padding: 12px 20px;
}
@media (max-width: 800px) {
	.fluid-block-sm {
		padding: 12px 12px;
	}
}

.fluid-block {
	width: 100%;
	padding: 24px 20px;
}
@media (max-width: 800px) {
	.fluid-block {
		padding: 24px 12px;
	}
}

.fluid-block-lg {
	width: 100%;
	padding: 48px 20px;
}
@media (max-width: 800px) {
	.fluid-block-lg {
		padding: 48px 12px;
	}
}

.fluid-block-xl {
	width: 100%;
	padding: 64px 20px;
}
@media (max-width: 800px) {
	.fluid-block-xl {
		padding: 64px 12px;
	}
}

.indent-down-sm {
	margin-bottom: 40px;
}

.indent-down {
	margin-bottom: 80px;
}

.text-hl {
	padding: 36px 20px;
	border-radius: 12px;
}
.text-hl_border {
	border: 2px solid #f0f0f0;
	background-color: #fff;
}

.max-w-320 {
	max-width: 320px !important;
	margin: auto;
}

.max-w-360 {
	max-width: 360px !important;
	margin: auto;
}

.max-w-420 {
	max-width: 420px !important;
	margin: auto;
}

.max-w-720 {
	max-width: 720px !important;
	margin: auto;
}

.max-w-980 {
	max-width: 980px !important;
	margin: auto;
}

.max-w-1200 {
	max-width: 1200px !important;
	margin: auto;
}

.max-w-1400 {
	max-width: 1400px !important;
	margin: auto;
}

@media (max-width: 800px) {
	.mob-max-w-320 {
		max-width: 320px !important;
		margin: auto;
	}
	.mob-max-w-360 {
		max-width: 360px !important;
		margin: auto;
	}
	.mob-max-w-420 {
		max-width: 420px !important;
		margin: auto;
	}
}
.fluid-block-mg {
	width: 100%;
	padding: 0 20px;
	margin: 30px 0;
}

.fluid-block-mgb {
	width: 100%;
	padding: 30px 20px;
	margin: 0 0 32px 0;
}

.extra-padding {
	padding: 60px 20px;
}
@media (max-width: 800px) {
	.extra-padding {
		padding: 30px 20px;
	}
}
