/* Fontello Icons */
@import '/_intern/fonts/fontello/css/fontello_mg.css'; 
 
/* prata-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Prata';
  font-style: normal;
  font-weight: 400;
  src: url('/_intern/fonts/prata/prata-v20-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* barlow-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 300;
  src: url('/_intern/fonts/barlow/barlow-v12-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* barlow-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 400;
  src: url('/_intern/fonts/barlow/barlow-v12-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* barlow-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow';
  font-style: italic;
  font-weight: 400;
  src: url('/_intern/fonts/barlow/barlow-v12-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* barlow-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 600;
  src: url('/_intern/fonts/barlow/barlow-v12-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* barlow-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 700;
  src: url('/_intern/fonts/barlow/barlow-v12-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* === LESS variables === */ 
@color_font: #707070;
@color_1: #2ea6db;

@color_bg: #e1e1e1;
@color_bg_2: #ded9db;
@color_bg_footer: #ded9db;
@color_border: #707070;

@px_fontsize_standard: 18px;
@px_fontsize_small: 15px;
@px_fontsize_bigger: 28px;

@px_padding: 25px;

@px_width_mobilenav: 300px;

:root {
	--color_font: #707070;
	--color_1: #2ea6db;
	
	--color_bg: #e1e1e1;
	--color_bg_2: #ded9db;
	--color_bg_footer: #ded9db;
	--color_border: #707070;
	
	--px_padding: 25px;
	
	--px_fontsize_standard: 18px;
	--px_fontsize_small: 15px;
	--px_fontsize_bigger: 28px;
}

/* === CSS mixins === */
.transition {
	-webkit-transition: all 0.25s;
	-moz-transition: all 0.25s;
	transition: all 0.25s;
}

.transition_slow {
	-webkit-transition: all 0.75s;
	-moz-transition: all 0.75s;
	transition: all 0.75s;
}

/* CALC example
	width: ~"calc(100% - 2px)";
	width: calc(~"50%" - @px_padding*2);
*/

/* === === */

html {
	overflow-x: hidden;
	overflow-y: auto;
}

body {
	font-family: Barlow, Arial;
	font-size: var(--px_fontsize_standard);
	color: var(--color_font);
	position: relative;
	background-color: var(--color_bg);
}

.icon-mg_logo:before { font-size: 85%; position: relative; top: 2px; }

h1,
.h1,
h2,
.h2 {
	display: block;
  font-size: 70px;
	font-weight: 400;
	font-family: Prata, Barlow, Arial;
	margin: 0px 0px 10px 0px;
	line-height: 1.0;
	/* transform: scale(1.3); */
	.transition_slow
}

h2,
.h2 {
	font-size: 60px;
}

h3,
.h3 {
	display: block;
	font-weight: 400;
	font-size: 35px;
	margin: 0px 0px 5px 0px;
}

h4,
.h4 {
	display: block;
	font-weight: 400;
	font-size: 24px;
	margin: 0px 0px 5px 0px;
}

a {
	color: var(--color_font);
	text-decoration: none;
	
	&:hover {
		text-decoration: underline;
	}
}

.grid2 {
	float: left;
	width: 50%;
	box-sizing: border-box;
}

.grid3 {
	float: left;
	width: 33.33%;
	box-sizing: border-box;
}

.clear:after {
	content: "";
	display: block;
	visibility: hidden;
	clear: both;
}

img {
	max-width: 100%;
	height: auto;
}

.text {
	line-height: 1.2;
	
	p {
		margin: 0px 0px 15px 0px;
		&:last-Child { margin: 0px; }
	}
	
	a {
		color: var(--color_1);
		
		&:hover {
			text-decoration: underline;
		}
	}
}

strong, b {
	font-weight: 600;
}

button,
.button,
a.button,
input[type="submit"] {
	display: inline-block;
	border: 0px;
	background-color: transparent;
	padding: 0px 40px;
	line-height: 34px;
	font-weight: 700;
	color: var(--color_font);
	border: 1px solid var(--color_font);
	text-transform: uppercase;
	border-radius: 17px;
	.transition;
	margin-bottom: 5px;
	
	&:hover {
		background-color: white;
		color: var(--color_font);
	}
}

.form {
	margin: 0px;
	padding: 0px;
	
	li {
		display: block;
		padding-bottom: 10px;
		max-width: 500px;
		
		.label {
			display: block;
			margin-bottom: 3px;
		}
		
		input[type="text"],
		input[type="email"],
		input[type="url"],
		input[type="date"],
		input[type="password"],
		input[type="web"],
		textarea{
			height: 25px;
			width: 96%;
			padding: 0px 2%;
		}
		
		textarea {
			height: auto;
			padding: 2%;
		}
		
		input[type="radio"],
		input[type="checkbox"] {
			position: absolute;
		}
		
		&.radio,
		&.checkbox {
			.field > div {
				position: relative;
				padding: 2px 0px;
			}
			
			label {
				margin-left: 22px;
				display: block;
			}
		}
	}
	
	.req {
		display: inline-block;
		margin: 0px 5px;
		color: var(--color_1);
	}
	
	.hidden {
		display: none;
	}
	
	.g-recaptcha {
		margin: 10px 0px;
	}
	
	li .pflichtfeld_text {
		margin-top: 10px;
		margin-bottom: 10px;
		font-style: italic;
	}
}

#wrapper {
	
}

.inner {
	max-width: 95%;
	width: 1200px;
	margin: auto;
	position: relative;
}

.outer {
	max-width: 95%;
	width: 1600px;
	margin: auto;
	position: relative;
}

#header {
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	z-index: 10;
	text-align: center;
	.transition;
	
	.container {
		height: 160px;
		.transition;
		position: relative;
	}
	
	.headerlinks {
		position: absolute;
		right: 0px;
		top: 50px;
		display: flex;
		flex-wrap: nowrap;
		color: white;
		.transition;
		
		a {
			color: inherit;
			font-weight: 600;
		}
		
		.item {
			position: relative;
			margin-left: 70px;
			display: flex;
			align-items: top;
			text-align: left;
			line-height: 1.3;
			transform: scale(1);
			opacity: 1;
			.transition;
			
			div {
				.transition;
			}
			
			img {
				position: relative;
				margin-right: 15px;
				transform: translateY(-20%);
				filter: invert(0);
				.transition;
			}
		}
	}
}

#headerlinks_mobile {
	display: none;
}

#logo {
	position: absolute;
	bottom: 0px;
	left: 50%;
	transform: translateX(-50%);
	display: inline-block;
	max-width: 60%;
	width: 150px;
	
	img {
		display: block;
		height: 140px;
		margin-bottom: 0px;
		filter: invert(1);
		.transition;
	}
	
	.logo_standard {
		opacity: 1;
	}
	.logo_compact {
		opacity: 0;
		position: absolute;
		top: 0px;
		left: 0px;
	}
}

.scrolldown #header {
	background-color: rgba(255,255,255, 0.8);
	
	.container {
		height: 70px;
	}
	
	#logo {
		img {
			margin-bottom: 5px;
			height: 60px;
			filter: invert(0);
		}
		.logo_standard { opacity: 0; }
		.logo_compact { opacity: 1; }
	}
	
	.headerlinks {
		top: 10px;
		color: var(--color_font);
		
		.item {
			align-items: center;
			transform: scale(0.9);
			opacity: 0.8;
		}
		
		div {
			
			
		}
		
		img {
			filter: invert(1);
			transform: translateY(-5%) scale(0.9);
		}
	}
}

#nav {
	margin: 0px;
	padding: 0px;
	text-align: center;
	
	li.lvl1 {
		list-style-type: none;
		display: inline-block;
		margin: 0px 18px; 
		
		a {
			display: inline-block;
			line-height: 35px;
			text-transform: uppercase;
		}
		
		a.active {
			color: var(--color_1);
		}
		
		&:hover a,
		&.hover a {
			text-decoration: underline;
		}
	}
	
	.submenu {
		padding: 0px;
		margin: 0px;
		display: none;
		position: absolute;
		z-index: 5;
		text-align: left;
		padding: 0px;
		background-color: red;
		min-width: 250px;
		border: 1px solid black;
		opacity: 0;
		
		li.lvl2 {
			margin: 0px;
			display: block;
			list-style-type: none;
			
			a {
				padding: 0px 10px;
				display: block;
			}
		}
	}
	
	/* gets handled via javascript */
	/*
	li.lvl1:hover > .submenu {
		display: block;
	}
	*/
}

#mobilemenu {
	display: none;
}

#mobilmenu_trigger {
	position: absolute;
	right: 2%;
	top: 10px;
  width: 50px;
  z-index: 20;
	
	span {
	  position: relative;
		height: 6px;
		display: block;
		margin: 5px 0px;
		background-color: white;
		transform: rotate(0deg);
		opacity: 1;
		.transition;
	}
}
.mobilenav #mobilmenu_trigger {
  .line1 { transform: translateY(11px) rotate(45deg); }
	.line2 { opacity: 0; }
	.line3 { transform: translateY(-11px) rotate(-45deg); }
}

#mobilemenu_container {
	display: none;
	position: absolute;
	top: 0px;
	right: -@px_width_mobilenav;
  width: @px_width_mobilenav; 
	height: 100vh;
	z-index: 19;
  overflow: auto;
  background-color: #bebebe;
	.transition_slow;
	
	#mobilenav_logo {
		display: block;
		margin: 10px auto;
	}
}
.mobilenav #mobilemenu_container {
	right: 0px;
}

#nav_mobile {
	margin: 0px;
	padding: 0px;
	
	li {
		display: block;
		list-style-type: none;
		position: relative;
		
		a {
		  display: block;
			color: #000000;
			padding: 0px 15px;
			line-height: 35px;
			text-decoration: none;
		}
	}
}

#cookiehint {
	display: none;
	position: fixed;
	z-index: 1;
	left: 10px;
	bottom: 10px;
	width: 550px;
	max-width: calc(100% - 20px);
	background-color: #bebebe;
	padding: 20px;
	box-sizing: border-box;
	
	.text {
		font-size: 90%;
	}
	
	a.readmore {
		color: var(--color_1);
		text-decoration: underline;
	} 
	
	.button {
		margin: 10px 10px 0px 0px;
		color: inherit;
	}
	
	.cookie_deny { 
		background-color: transparent;
		border: 1px solid grey;
		color: grey;
	}
	
	.cookie_save { 
		background-color: white;
		border: 1px solid grey;
		color: grey;
	}
	.cookie_acceptAll {
		color: white;
	}
	
}

#page {
	
}

#footer {
	position: relative;
	padding: var(--px_padding) 0px 10px 0px;
	color: white;
	background-color: var(--color_bg_footer);
	
	&:after {
		content: "";
		display: block;
		position: absolute;
		height: 15px;
		bottom: -15px;
		left: 0px;
		width: 100%;
		background-color: var(--color_bg_footer);
	}
	
	.flexcontainer {
		display: flex;
		flex-wrap: nowrap;
		align-items: center;
		justify-content: space-between;
	}
	
	.links {
		font-size: var(--px_fontsize_small);
		line-height: 1.3;
	}
	
	#logo_footer {
		display: block;
		
		img {
			width: 160px;
		}
	}
}

.section {
	display: flex;
	min-height: 100vh;
	position: relative;
	box-sizing: border-box;
	align-items: center;
	padding: 100px 0px;
	
	&:after {
		content: "";
		display: block;
		position: absolute;
		top: 0px;
		left: 0px;
		width: 100%;
		height: 100%;
		backdrop-filter: blur(5px);
		z-index: 1;
		pointer-events: none;
		transition: 1.6s all;
	}
	
	&.animated {
		&:after {
			backdrop-filter: blur(0px);
		}
		
		h1, h2 {
			transform: scale(1);
		}
	}
}

.section.text {
}

.accordeon {
	margin-bottom: 8px;
	position: relative;
	background-color: transparent;
	border-bottom: 1px solid var(--color_border);

	&:first-Child {
		border-top: 1px solid var(--color_border);
	}
	
	.title {
		padding: 15px 20px;
		padding-right: 50px;
		position: relative;
		font-size: var(--px_fontsize_bigger);
		font-weight: 600;

		.ic {
			position: absolute;
			top: 50%;
			transform: translateY(-50%);
			right: 15px;
			display: inline-block;
			height: 28px;
			width: 28px;
			line-height: 28px;
			text-align: center;
			font-size: 20px;
			cursor: default;

			&.opened { display: none; }
			&.closed { display: inline-block; }
		}
		
		&:hover {
			cursor: pointer;
		}
	}

	.content {
		display: block;
		max-height: 0px;
		overflow: hidden;
		font-size: var(--px_fontsize_small);
		.transition_slow;
	}

	.contentbox {
		padding: 5px var(--px_padding); 40px var(--px_padding);
	}
}



.accordeon.opened {
	.content {
		max-height: 500px;
		overflow: auto;
	}

	.title {
		.ic.opened { display: inline-block; }
		.ic.closed { display: none; }
	}
}

.background {
		position: absolute;
		display: block;
		top: 0px;
		left: 0px;
		width: 100%;
		height: 100%;
		object-fit: cover;
}

#intro {
	color: white;
	padding: 0px;
	
	&:after {
		display: none;
	}
	
	h1, h2 {
		transform: scale(1);
	}
	
	#introslider {
		width: 100%;
		height: 100vh;
		
		.item {
			display: flex;
			height: 100vh;
			position: relative;
		}
	}
	
	.textbox {
		z-index: 1;
	}
}

#about {
	padding: 0px;
	color: white;
	
	#aboutslider {
		width: 100%;
		height: 100vh;
		background-color: #707070;
		
		.item {
			display: block;
			height: 100vh;
			position: relative;
		}
	}
	
	.textbox {
		z-index: 1;
		width: 55%;
		margin-left: 45%;
		position: relative;
		top: 15%;
		
		.text {
			margin-top: 25px;
			padding-left: 35%;
			width: 50%;
			max-width: 450px;
			
			a {
				color: inherit;
				font-weight: 600;
			}
		}
	}
	
	.teaminfo {
		color: white;
		position: absolute;
		top: 3%;
		left: 45%;
	}
}

#glasses {
	background-color: var(--color_bg_2)
	
	.background {
		object-fit: contain;
		object-position: center right;
		mix-blend-mode: multiply;
		left: auto;
		right: 0px;
		width: 60%;
	}
	
	h2 {
		color: white;
		margin-left: 35%;
		margin-bottom: 40px;
	}
	.textcontainer {
		width: 50%;
	}
	.introtext  {
		text-align: right;
		max-width: 450px;
		margin-left: auto;
		margin-bottom: 60px;
	}
	
	.accordeon .title,
	.accordeon .content {
		text-align: right;
	}
}

#glasses2 {
	background-color: var(--color_bg_2);
	display: block;
	
	.textcontainer {
		text-align: right;
		padding-right: 35%;
		width: 60%;
		margin-bottom: 40px;
	}
	
	h2 {
		color: white;
		margin-left: 35%;
		margin-bottom: 70px;
	}
}

#glasses_tiles {
	position: relative;
	flex-wrap: wrap;
	display: flex;
	width: 100%;
	gap: 5px;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	
	.tile {
		width: calc(33.33% - 5px);
		height: 40vh;
		position: relative;
		
		.container {
			position: absolute;
			width: 100%;
			height: 100%;
			display: block;
			overflow: hidden;
		}
		
		.background {
			position: absolute;
			top: 0px;
			left: 0px;
			display: block;
			width: 100%;
			height: 100%;
			object-fit: cover;
			transform: scale(1);
			filter: blur(6px);
			transition: 0.3s all;
		}
	}
	#tile_1,
	#tile_2 {
		width: calc(50% - 5px);
	}
	
	.title {
		color: white;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translateX(-50%);
		font-weight: 400;
		font-family: Prata, Barlow, Arial;
		font-size: var(--px_fontsize_bigger);
		
		&:before {
			content: "";
			display: block;
			max-width: 120%;
			width: 180px;
			height: 1px;
			background-color: white;
			position: absolute;
			top: -20px;
			text-align: center;
			left: 50%;
			transform: translateX(-50%);
			opacity: 0.7;
			transition: 0.3s all;
		}
	}
	
	.tile:hover {
		.background {
			transform: scale(1.04);
			filter: blur(0px);
		}
			
		
		.title:before {
			width: 200px;
			max-width: 135%;
			opacity: 1;
		}
	}
	
	.popup {
		display: block;
		background-color: white;
		transition: 0.3s all;
		position: fixed;
		top: 5%;
		height: 90%;
		width: 90%;
		left: 5%;
		box-sizing: border-box;
		pointer-events: none;
		padding: 5vh 5vw;
		opacity: 0;
		
		&.opened {
			top: 5%;
			opacity: 1;
			z-index: 11;
			pointer-events: all;
		}
		
		.background {
			z-index: -1;
		}
		
		.text {
			color: white;
			max-width: 800px;
		}
		
		.close {
			position: absolute;
			top: 20px;
			right: 20px;
			display: block;
			color: white;
			font-size: 30px;
		}
	}
}

.popup_overlay {
	display: none;
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100vh;
	background-color: rgba(0,0,0,0.7);
	z-index: 10;
}
body.popup_open {
	.popup_overlay {
		display: block;
	}
}

#lenses {
	background-color: white;
	
	.background {
		width: 70%;
	}
	
	h2 {
		color: var(--color_1);
		text-align: right;
		margin-right: 35%;
		margin-bottom: 40px;
	}
	.introtext {
		position: relative;
		margin-left: 70%;
		width: 30%;
		margin-top: -100px;
	}
	.textcontainer {
		width: 50%;
		margin-left: 50%;
		padding-top: 100px;
	}
	
	.accordeon {
		border-color: var(--color_1);
		
		.title {
			padding-left: 50px;
			padding-right: 20px;
			
			.ic {
				right: auto;
				left: 15px;
			}
		}
	}
	.accordeon .title,
	.accordeon .content {
		color: var(--color_1);
	}
}

#lenses2 {
	background-color: white;
	background-image: url('/MEDIEN/layout/background_lenses.svg');
	background-repeat: no-repeat;
	background-size: cover;
	
	.background {
		width: 70%;
	}
	
	h2 {
		color: var(--color_1);
		margin-left: 33%;
		margin-bottom: 20px;
	}
	.introtext {
		position: relative;
		margin-left: 33%;
		max-width: 50%;
	}
}

#icon_tiles_container {
	margin-top: 50px;
	display: flex;
	width: 100%;
	gap: 25px;
	
	.item {
		width: 25%;
		background-color: rgba(255,255,255,0.6);
		border-radius: 10px;
		position: relative;
		overflow: hidden;
		height: 400px;
		text-align: center;
		backdrop-filter: blur(6px);
		
		.content {
			position: absolute;
			top: 0px;
			left: 0px;
			width: 100%;
			height: 200%;
			transform: translateY(-0%);
			transition: 0.75s all;
		}
		
		.icon {
			display: flex;
			text-align: center;
			height: 25%;
			align-content: center;
			justify-content: center;
			
			img {
				width: 70px;
			}
		}
		
		.title {
			height: 25%;
			transition: 0.3s all;
			box-sizing: border-box;
			padding: 20px 20px 20px 20px;
			color: var(--color_1);
			font-weight: 400;
			font-family: Prata, Barlow, Arial;
			font-size: var(--px_fontsize_bigger);
			position: relative;
			
			&:before {
				content: "";
				display: block;
				width: 80%;
				background-color: var(--color_1);
				height: 1px;
				position: relative;
				top: -20px;
				left: 50%;
				transform: translateX(-50%);
			}
		}
		
		.textbox {
			top: 0px;
			box-sizing: border-box;
			padding: 10px;
			font-size: var(--px_fontsize_small);
			transition: 0.75s all;
		}
	}
	
	.item:hover {
		.content {
			transform: translateY(-20%);
			
			.title {
				height: 100px;
			}
		}
	}
}

#highlight {
	color: white;
	
	.textcontainer {
		margin-left: 45%;
		max-width: 50%;
	}
}

#brands_container {
	background-color: white;
	padding: 25px 0px 50px 0px;
}
#brandsslider {
	position: relative;
	
	.item {
		padding: 0px 30px;
		position: relative;
		display: flex;
		height: 60px;
		align-items: center;
		align-content: center;
		justify-content: center;
		
		img {
			display: block;
			max-width: 100%;
			height: auto;
		}
	}
}

#service {
	background-color: var(--color_bg);
	
	& > div {
		max-width: 100%;
	}
	
	.textcontainer {
		margin-top: 100px;
		max-width: 900px;
	}
	
	.accordeon {
		.title {
			padding-left: 50px;
			padding-right: 20px;
			
			.ic {
				right: auto;
				left: 15px;
			}
		}
	}
	.accordeon .title {
	}
}

#standard {
	padding: 200px 0px;
}

#contact {
	background-color: white;
	
	.flexcontainer {
		display: flex;
		flex-wrap: nowrap;
		gap: 20px;
		
		& > * {
			width: 50%;
		}
	}
	
	h2 {
		font-size: 50px;
		line-height: 1.3;
		margin-bottom: 60px;
	}
}

.slick-dots {
	position: absolute;
	bottom: 0px;
	left: 50%;
	transform: translateX(-50%);
	width: 400px;
	text-align: center;
	
	li {
		list-style-type: none;
		display: inline-block;
		margin: 0px 5px;
		
		button {
			width: 12px;
			height: 12px;
			border-radius: 50%;
			color: transparent;
			overflow: hidden;
			border: 0px;
			background-color: white;
			padding: 0px;
			opacity: 0.5;
			transition: 0.3s all;
			
			&:hover {
				opacity: 0.8;
			}
		}
		
		&.slick-active {
			button {
				background-color: black;
			}
		}
	}
}

.slick-prev,
.slick-next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0px;
	background-color: transparent;
	border: 0px;
	padding: 0px;
	color: white;
	font-size: 70px;
	z-index: 1;
	opacity: 0.8;
	
	&.slick-next {
		left: auto;
		right: 0px;
	}
	
	&:hover {
		opacity: 1;
		color: white;
		background-color: transparent;
	}
}

#banner_top_bar {
	position: absolute;
	display: block;
	bottom: 0px;
	left: 0px;
	width: 100%;
	
	&.layout_pink {
		background-color: rgba(219, 70, 116, 0.6);
	}
	&.layout_blue, &.layout_blau {
		background-color: rgba(99, 185, 224, 0.7);
	}
	&.layout_yellow, &.layout_gelb {
		background-color: rgba(222, 184, 57, 0.7)
	}
	
	.content {
		padding: 25px 0px;
	}
	
	.h2 {
		font-size: 32px;
		line-height: 1.4;
	}
}

#team_contact {
	background-color: var(--color_border);
	color: white;
	padding-top: 200px;
	
	.flexcontainer {
		display: flex;
		flex-wrap: nowrap;
		gap: 40px;
		
		& > * {
			width: 50%;
		}
		
		& > .left {
			text-align: right;
		}
		& > .right {
			padding-top: 30px;
		}
		
		.image1 {}
		
		.image2 {
			margin-top: 25px;
			max-width: 50%;
			margin-left: auto;
		}
	}
	
	.text {
		a {
			color: inherit;
		}
	}
	
	h1 {
		margin-bottom: 25px;
	}
	
	h2 {
		font-size: 50px;
		line-height: 1.3;
		margin-bottom: 60px;
	}
}

#team_list {
	background-color: var(--color_bg_footer);
	
	.container {
		color: white;
		margin-bottom: 50px;
		
		.text {
			max-width: 700px;
		}
	}
	
	.teamlist_container {
		margin: 0px -10px;
		
		.item {
			float: left;
			width: calc(25% - 20px);
			position: relative;
			margin: 0px 10px 40px 10px;
			box-sizing: border-box;
		}
		
		.image {
			margin-bottom: 10px;
			position: relative;
			padding-bottom: 140%;
			
			img {
				position: absolute;
				top: 0px;
				left: 0px;
				width: 100%;
				height: 100%;
				object-fit: cover;
			}
		}
		
		.text {
			min-height: 60px;
			font-size: var(--px_fontsize_small);
		}
	}
}