/*
Theme Name: Fieldsets
Version: 2.4 2023
*/

@font-face{
	font-family:"TT Hoves Pro Expanded";
	src:url("assets/fonts/8672076/cebd286f-580b-4554-8dbf-64a233f038e4.woff2") format("woff2"),url("assets/fonts/8672076/9f73fc11-8931-4501-b818-d6a7e2868cb3.woff") format("woff");
	font-weight: normal;
}
@font-face{
	font-family:"TT Hoves Pro Expanded";
	src:url("assets/fonts/8672072/be9f34de-23c5-48ea-9789-8832c6294142.woff2") format("woff2"),url("assets/fonts/8672072/b86c4393-0cd6-4422-8060-0271a23ff620.woff") format("woff");
	font-weight: 300;
}
@font-face{
	font-family:"TT Hoves Pro Expanded";
	src:url("assets/fonts/8672080/f8d331b9-253e-4b11-b3d9-6194eb16b199.woff2") format("woff2"),url("assets/fonts/8672080/6308e9af-3d39-413f-bbbe-ec234be4da9b.woff") format("woff");
	font-weight: 500;
}
@font-face{
	font-family:"TT Hoves Pro Expanded";
	src:url("assets/fonts/8672099/d17cb7ca-0aef-4d3d-ab69-3d18064a188c.woff2") format("woff2"),url("assets/fonts/8672099/5a7e56d5-296a-40b5-aa65-cf3b8505fdc9.woff") format("woff");
	font-weight: bold;
}


/* basics / resets */

html {
	position: relative;
	margin: 0;
	padding: 0;
	height: 100%;
	font-size: 18px;
	
	--dark: #002646;
	--active: #AAE682;
	--gray: #dcdcdc;
	--light-gray: #F0F0F0;
}
@media (max-width: 1399px) {
	html { font-size: 17px; }
}
@media (max-width: 1299px) {
	html { font-size: 1.3vw; }
}
@media (max-width: 999px) {
	html { font-size: 18px; }
}
@media (max-width: 719px) {
	html { font-size: 17px; }
}
@media (max-width: 511px) {
	html { font-size: 3.5vw; }
}


body {
	margin: 0;
	padding: 0;
	min-height: 100%;
	font-family: "TT Hoves Pro Expanded", sans-serif;
	font-size: 1em;
	font-weight: 500;
	background-color: white;
	color: var(--dark);
	-webkit-text-size-adjust: none;
	text-size-adjust: none;
}

* {
	-webkit-tap-highlight-color: transparent;
}


::-moz-selection {
	background: #333;
	color: #fff;
	text-shadow: none;
}
::selection {
	background: #333;
	color: #fff;
	text-shadow: none;
}

form {
	margin: 0;
	padding: 0;
}

table, td, input, textarea, select {
	font-family: inherit;
	font-size: 1em;
}

img, iframe {
	border: 0;
}

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

.arrow-link,
a {
	color: inherit;
	text-decoration: none;
	transition: color 0.3s ease;
}


#one-em {
	position: absolute;
	top: 0;
	left: 0;
	width: 1px;
	height: 1em;
}


/* page */

#page {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: stretch;
    align-items: stretch;
	
	min-height: 100vh;
}

main {
	-webkit-flex: 1 0 auto;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
	padding-bottom: 6em;
	width: 100%;
	overflow: hidden;
}
main > section:first-child {
	padding-top: 10em;
}

@media (max-width: 999px) {
	main {
		padding-bottom: 3.5em;
	}
	main > section:first-child {
		padding-top: 9.5em;
	}
}


.gray-box,
.gray-bg {
	background-color: #F0F0F0;
}
.dark-box,
.dark-bg {
	background-color: var(--dark);
	color: white;
}

.border-box {
	border: 1px #E6E6E6 solid;
}

.border-box,
.gray-box,
.dark-box {
	padding: 1.66em;
	border-radius: 0.83em;
}

.content-image.border-box {
	padding: 0;
	overflow: hidden;
}



/* header */

header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	box-sizing: border-box;
	padding: 2.4em 4em 0 4em;
	pointer-events: none;
	z-index: 1020;
}
header > .wrap {
	background-color: var(--dark);
	color: white;
	pointer-events: all;
	border-radius: 0.83em;
	max-width: 75.3em;
	padding: 1em 2em 1.15em 1.5em;
	box-sizing: border-box;
	margin: 0 auto;
	
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
}

@media (max-width: 999px) {
	header {
		padding: 1em 1em 0 1em;
	}
	header > .wrap {
		padding: 0.7em 1em 0.85em 1em;
	}
}


#logo {
	display: block;
	width: 11em;
	height: auto;
	flex: 0 0 auto;
	margin-right: 4em;
}
#logo img {
	width: 100%;
}

@media (max-width: 999px) {
	#logo {
		width: 12em;
	}
}


#cta-contact {
	position: fixed;
	left: 100%;
	top: calc(85% - 14em);
	z-index: 900;
}
#cta-contact a::before {
	content: "";
	position: absolute;
	left: 1.05rem;
	top: 0;
	bottom: 0;
	width: 1.3rem;
	background: url(assets/images/button-logo.svg) center center no-repeat;
	background-size: contain;
	transition: opacity 0.3s ease;
	opacity: 0;
}
#cta-contact a {
	position: absolute;
	right: 0;
	bottom: 0;
	display: block;
	white-space: nowrap;
	background-color: var(--active);
	font-size: 0.78em;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	border-radius: 0.83rem 0.83rem 0px 0px;
	padding: 0.83rem 1.1rem;
	transition: color 0.3s ease, background-color 0.3s ease, padding-left 0.3s ease;
	
	transform: rotate(-90deg);
	transform-origin: bottom right;
}

#cta-contact a:hover {
	background-color: var(--dark);
	color: white;
	padding-left: 3rem;
}
#cta-contact a:hover::before {
	opacity: 1;
}


.rounded img,
.rounded:not(.content-image),
.rounded.content-image > .image-wrap {
	overflow: hidden;
	border-radius: 0.83rem;
}
.rounded img {
	border-radius: 0.88rem;
}


.mask-header {
	position: relative;
	margin-bottom: 9.11em;
}


@media (max-width: 999px) {
	.mask-header {
		margin-bottom: 0em;
	}
	.mask-header .columns > .column:first-child {
			padding-top: 3em;
	}
}


.mask-header .column > .content-text {
	position: relative;
	z-index: 1;
}

.masked,
.mask-header .columns {
	position: relative;
}
.masked > .image-wrap,
.masked > video {
	-webkit-mask: url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJFYmVuZV8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB3aWR0aD0iOTE4cHgiIGhlaWdodD0iODkzcHgiIHZpZXdCb3g9IjAgMCA5MTggODkzIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA5MTggODkzOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuc3Qwe2ZpbGw6I0VEMjAyNDt9Cjwvc3R5bGU+CjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik02Mi44MywwTDAsNjIuNDNsMCwyMTAuNzlMMzcxLjQsODkzaDE3NS4yTDkxOCwyNzMuMjJWNjIuNDNMODU1LjE1LDBMNjIuODMsMHoiLz4KPC9zdmc+) center center no-repeat;
	-webkit-mask-size: 100% 100%;
}
.masked::after {
	content: "";
	background: url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJFYmVuZV8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB3aWR0aD0iODMyLjZweCIgaGVpZ2h0PSI4MTAuMDJweCIgdmlld0JveD0iMCAwIDgzMi42IDgxMC4wMiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgODMyLjYgODEwLjAyOyIKCSB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7ZmlsbDpub25lO3N0cm9rZTojQUFFNjgyO30KPC9zdHlsZT4KPHBhdGggY2xhc3M9InN0MCIgZD0iTTAuNSw1Ni44M0w1Ny4xOSwwLjVsNzE4LjIxLDBsNTYuNzEsNTYuMzN2MTkwLjg2TDQ5NS40Nyw4MDkuNTJIMzM3LjEzTDAuNSwyNDcuNjlMMC41LDU2LjgzeiIvPgo8L3N2Zz4) center center no-repeat;
	background-size: 97% 97%;
	position: absolute;
	left: 8%;
	width: 99%;
	top: 5%;
	bottom: 5%;
}

.mask-header .masked {
	position: absolute;
	left: 50%;
	top: 0;
	width: 64%;
	margin-top: -5em !important;
}
.mask-header .mask-style-2 {
	width: 50%;
}

.mask-style-2 > .image-wrap,
.mask-style-2 > video {
	-webkit-mask-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzI2IiBoZWlnaHQ9Ijc0NSIgdmlld0JveD0iMCAwIDcyNiA3NDUiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgo8cGF0aCBkPSJNMC4wMDAxMjI3OTYgNjkzLjY5OEw1MC43NTI4IDc0NC42MDhMMjIyLjEyMSA3NDQuNjA4TDcyNiA0NDMuNjYzTDcyNiAzMDEuNjk4TDIyMi4xMjIgMC43NTI3MjRMNTAuNzUyOSAwLjc1MjY5NEwwLjAwMDIzNTIyMyA1MS42Nzg2TDAuMDAwMTIyNzk2IDY5My42OThaIiBmaWxsPSJyZWQiLz4KPC9zdmc+);
}
.mask-style-2::after {
	top: 0;
	bottom: 0;
	left: 35%;
	width: 100%;
	background-image: url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJFYmVuZV8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB3aWR0aD0iNzI2cHgiIGhlaWdodD0iNzQzLjlweCIgdmlld0JveD0iMCAwIDcyNiA3NDMuOSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNzI2IDc0My45OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuc3Qwe2ZpbGw6bm9uZTtzdHJva2U6I0FBRTY4Mjt9Cjwvc3R5bGU+CjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik01MSw3NDMuNEwwLjUsNjkyLjdsMC02NDEuNkw1MSwwLjVsMTcxLDBsNTAzLjUsMzAwLjd2MTQxLjRMMjIyLDc0My40SDUxeiIvPgo8L3N2Zz4);
}



.stretch-to-left-edge {
	margin-left: calc( var(--content-offset) * -1 );
}
.stretch-to-right-edge {
	margin-right: calc( var(--content-offset) * -1 );
}


.teaser-arrows {
	display: block;
	width: 7.3em;
	height: 4.25em;
	background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTMyIiBoZWlnaHQ9IjMzIiB2aWV3Qm94PSIwIDAgMTMyIDMzIiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8cGF0aCBkPSJNMTExLjM1NiAwLjVMMTMxLjUgMTMuMzY3OUwxMzEuNSAxOS4wMDk5TDExMS4zNTYgMzEuODc3OEwxMDQuNzUzIDMxLjg3NzhMMTAyLjk2IDI5Ljk1NDNMMTAyLjk2IDIuNDIzNUwxMDQuNzUzIDAuNUwxMTEuMzU2IDAuNVoiIHN0cm9rZT0iIzE5MjgzMiIvPgo8cGF0aCBkPSJNNjAuMTE5OSAwLjVMODAuMjYzNSAxMy4zNjc5TDgwLjI2MzUgMTkuMDA5OUw2MC4xMTk5IDMxLjg3NzhMNTMuNTE2MiAzMS44Nzc4TDUxLjcyNDEgMjkuOTU0M0w1MS43MjQxIDIuNDIzNUw1My41MTYyIDAuNUw2MC4xMTk5IDAuNVoiIHN0cm9rZT0iIzE5MjgzMiIvPgo8cGF0aCBkPSJNMjkuNTI3NCAxMy4wOTRMOS4wMjk4MSAtNS43ODgzMWUtMDhMMi4wNjI0NyAtMS4zMjE2MWUtMDhMMC4wMDA5NzY1NDkgMi4yMjY2OEwwLjAwMDk3NjM4MiAzMC4xNTEyTDIuMDYyNDcgMzIuMzc3OEw5LjAyOTgxIDMyLjM3NzhMMjkuNTI3NCAxOS4yODM5TDI5LjUyNzQgMTMuMDk0WiIgZmlsbD0iI0FBRTY4MiIvPgo8L3N2Zz4) left bottom no-repeat;
	background-size: contain;
	margin-bottom: -0.6em;
}


.icon-mail {
	display: inline-block;
	width: 1.5em;
	height: 1.6em;
	background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjciIGhlaWdodD0iMTkiIHZpZXdCb3g9IjAgMCAyNyAxOSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTQuMDMyNTEgNS42NjEwNkMzLjc3MDg3IDUuNDg5MzkgMy42OTU4MyA1LjEzNjMzIDMuODY2MiA0Ljg3MjE3QzQuMDM2NTYgNC42MDg1MiA0LjM4NjkzIDQuNTMyOSA0LjY0OTA3IDQuNzA0NThMMTMuNDk5NSAxMC40NzIxTDIyLjM0OTkgNC43MDQ1OEMyMi42MTE1IDQuNTMyOSAyMi45NjI0IDQuNjA4NTIgMjMuMTMyOCA0Ljg3MjE3QzIzLjMwMzIgNS4xMzU4MiAyMy4yMjgxIDUuNDg5MzkgMjIuOTY2NSA1LjY2MTA2TDE2LjgzMTMgOS42NTkxOUwyMi45NjY1IDEzLjY1NjhDMjMuMjI4MSAxMy44Mjg1IDIzLjMwMzIgMTQuMTgxNSAyMy4xMzI4IDE0LjQ0NTdDMjIuOTYyNCAxNC43MDkzIDIyLjYxMjEgMTQuNzg1IDIyLjM0OTkgMTQuNjEzM0wxNS43ODkzIDEwLjMzNzdMMTMuODE0OSAxMS42MjQzQzEzLjYzMjggMTEuNzQ2OSAxMy4zODc0IDExLjc1NjYgMTMuMTkyMiAxMS42Mjg5TDExLjIxMDcgMTAuMzM2N0w0LjY1MDA4IDE0LjYxMjNDNC4zODg0NSAxNC43ODM5IDQuMDM3NTggMTQuNzA4MyAzLjg2NzIxIDE0LjQ0NDdDMy42OTY4NCAxNC4xODEgMy43NzE4OSAxMy44Mjc1IDQuMDMzNTIgMTMuNjU1OEwxMC4xNjg3IDkuNjU3NjZMNC4wMzM1MiA1LjY2MDA0TDQuMDMyNTEgNS42NjEwNlpNMi43Mzg1NCAwLjY1ODkzNkgyNC4yNjA1QzI1LjAxMDkgMC42NTg5MzYgMjUuNjk1OSAwLjk2OTA3OCAyNi4xOTMzIDEuNDY5MjlMMjYuMTk2OCAxLjQ3Mjg3QzI2LjY5MjcgMS45NzMwOCAyNyAyLjY2Mjg1IDI3IDMuNDE5MDVWMTUuODk4M0MyNyAxNi42NTQ1IDI2LjY5MjIgMTcuMzQ0OCAyNi4xOTU4IDE3Ljg0NkwyNi4xOTIzIDE3Ljg0OTZDMjUuNjk1OSAxOC4zNDkzIDI1LjAxMDkgMTguNjU4OSAyNC4yNjEgMTguNjU4OUgyLjczOTU1QzEuOTg4MTEgMTguNjU4OSAxLjMwNDExIDE4LjM0ODggMC44MDY3MDQgMTcuODQ4NkwwLjgwMzE1NSAxNy44NDVDMC4zMDcyNjggMTcuMzQ0OCAwIDE2LjY1NDUgMCAxNS44OTg4VjMuNDE5NTZDMCAyLjY2Mjg1IDAuMzA3Nzc1IDEuOTczMDggMC44MDQxNjkgMS40NzE4NUwwLjgwNzcxOCAxLjQ2ODI3QzEuMzA0MTEgMC45NjkwNzggMS45ODgxMSAwLjY1ODkzNiAyLjczODU0IDAuNjU4OTM2Wk0yNC4yNjA1IDEuODAzNDVIMi43Mzg1NEMyLjI5NjM5IDEuODAzNDUgMS44OTU4MyAxLjk4NDMyIDEuNjA2MzEgMi4yNzY1OEMxLjMxNDI1IDIuNTcwMzcgMS4xMzQyNSAyLjk3NDUzIDEuMTM0MjUgMy40MTkwNVYxNS44OTgzQzEuMTM0MjUgMTYuMzQzOSAxLjMxMzc1IDE2Ljc0NzUgMS42MDM3NyAxNy4wMzkyQzEuODk1MzIgMTcuMzMzNiAyLjI5NjM5IDE3LjUxNDkgMi43Mzc1MiAxNy41MTQ5SDI0LjI1OTRDMjQuNzAxNiAxNy41MTQ5IDI1LjEwMjEgMTcuMzM0MSAyNS4zOTE3IDE3LjA0MThDMjUuNjgzNyAxNi43NDggMjUuODYzNyAxNi4zNDM5IDI1Ljg2MzcgMTUuODk5M1YzLjQxOTU2QzI1Ljg2MzcgMi45NzQwMiAyNS42ODQyIDIuNTcwMzcgMjUuMzk0MiAyLjI3ODYyQzI1LjEwMjYgMS45ODQzMiAyNC43MDE2IDEuODAzNDUgMjQuMjYwNSAxLjgwMzQ1WiIgZmlsbD0iIzE5MjgzMiIvPgo8L3N2Zz4) center center no-repeat;
	background-size: contain;
	margin-right: 1em;
	border: 0;
	text-decoration: none;
}
.icon-phone {
	display: inline-block;
	width: 1.47em;
	height: 1.6em;
	background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjciIGhlaWdodD0iMjMiIHZpZXdCb3g9IjAgMCAyNyAyMyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xLjQxNDUzIDQuODY5MzhDMS4zMDQ1NyA0LjMwNjIxIDIuMzA5NzggMi44ODAzOCAzLjU2MzM1IDEuODI2MzdMNC42OTQzNyAxLjAxODExQzUuMzEzODYgMC42NjE1ODcgNi4xMDUxNiAwLjUxMzc3MyA2LjMzNTQ4IDAuODIyOTUyTDEwLjEyOTkgNS45MTg5MkMxMS4xNjkgNy4zMTQxMSA3LjExNzIxIDguMzg5NjQgNy42MTMgOC45MDE5M0MxMC41ODQ1IDExLjk2NDEgMTQuMDY5NCAxNC41NjQ0IDE3Ljg1MDYgMTYuNTQwMkMxOC40ODI1IDE2Ljg3MDMgMTguMzU5NiAxMi42Nzk4IDE5Ljk5MzIgMTMuMjc4NkwyNS45NTg3IDE1LjQ2NDZDMjYuMzIxNyAxNS41OTcgMjYuNDA0NyAxNi4zOTgxIDI2LjIzOTcgMTcuMDkzOEwyNS43ODYxIDE4LjQwODJDMjUuMTMzMiAxOS45MTAzIDI0LjA1MjIgMjEuMjc5MyAyMy40ODEgMjEuMzM0NEMxNC43ODk3IDIyLjE3OTggMy4wNzkwNCAxMy40NDI3IDEuNDE0NTMgNC44NjkzOFoiIHN0cm9rZT0iIzE5MjgzMiIgc3Ryb2tlLXdpZHRoPSIxLjI1Ii8+Cjwvc3ZnPg) center center no-repeat;
	background-size: contain;
	margin-right: 1em;
	border: 0;
	text-decoration: none;
}
.icon-linkedin {
	display: inline-block;
	width: 1.2em;
	height: 1.6em;
	background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSIjMTkyODMyIiBkPSJNMTkgMGgtMTRjLTIuNzYxIDAtNSAyLjIzOS01IDV2MTRjMCAyLjc2MSAyLjIzOSA1IDUgNWgxNGMyLjc2MiAwIDUtMi4yMzkgNS01di0xNGMwLTIuNzYxLTIuMjM4LTUtNS01em0tMTEgMTloLTN2LTExaDN2MTF6bS0xLjUtMTIuMjY4Yy0uOTY2IDAtMS43NS0uNzktMS43NS0xLjc2NHMuNzg0LTEuNzY0IDEuNzUtMS43NjQgMS43NS43OSAxLjc1IDEuNzY0LS43ODMgMS43NjQtMS43NSAxLjc2NHptMTMuNSAxMi4yNjhoLTN2LTUuNjA0YzAtMy4zNjgtNC0zLjExMy00IDB2NS42MDRoLTN2LTExaDN2MS43NjVjMS4zOTYtMi41ODYgNy0yLjc3NyA3IDIuNDc2djYuNzU5eiIvPjwvc3ZnPg) center center no-repeat;
	background-size: contain;
	margin-right: 1em;
	border: 0;
	text-decoration: none;
}


.no-text-decoration a {
	border-bottom: 0 !important;
}

.single-post {
	background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzI0IiBoZWlnaHQ9Ijk2OSIgdmlld0JveD0iMCAwIDcyNCA5NjkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0wLjk3MDgxNCAyMjUuNTc5TDUzLjA4MjMgMTczLjgwMUw3MTMuNTM5IDE3My44MDFMNzY1LjY2NiAyMjUuNTc5TDc2NS42NjYgNDAxLjA1TDQ1Ni4xMDEgOTE3LjY0OEwzMTAuNTM1IDkxNy42NDhMMC45NzA3NzUgNDAxLjA1TDAuOTcwODE0IDIyNS41NzlaIiBzdHJva2U9IiNBQUU2ODIiLz4KPHBhdGggZD0iTTEzMS4wNTIgMjgzLjI5OEwxNzguMjg5IDIzNi4zNThMNzc3LjI2OSAyMzYuMzU4TDgyNC41MiAyODMuMjk4TDgyNC41MiA0NDIuNDMyTDU0My43NzIgOTEwLjk5NUw0MTEuOCA5MTAuOTk1TDEzMS4wNTIgNDQyLjQzMkwxMzEuMDUyIDI4My4yOThaIiBzdHJva2U9IiNBQUU2ODIiLz4KPC9zdmc+);
	background-repeat: no-repeat;
	background-position: 100% 10%;
	background-size: 34em auto;
}

.single-referenz {
	background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjEwIiBoZWlnaHQ9Ijc0NSIgdmlld0JveD0iMCAwIDYxMCA3NDUiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0tMjE0LjUgNTIuMjc4NEwtMTYyLjM4OCAwLjUwMDA4OEw0OTguMDY4IDAuNTAwMjMzTDU1MC4xOTUgNTIuMjc4Nkw1NTAuMTk1IDIyNy43NDlMMjQwLjYzMSA3NDQuMzQ3TDk1LjA2NDUgNzQ0LjM0N0wtMjE0LjUgMjI3Ljc0OUwtMjE0LjUgNTIuMjc4NFoiIHN0cm9rZT0iI0FBRTY4MiIvPgo8cGF0aCBkPSJNLTg0LjQxODUgMTA5Ljk5N0wtMzcuMTgxOSA2My4wNTcxTDU2MS43OTggNjMuMDU3Mkw2MDkuMDQ5IDEwOS45OTdMNjA5LjA0OSAyNjkuMTMyTDMyOC4zMDIgNzM3LjY5NEwxOTYuMzI5IDczNy42OTRMLTg0LjQxODYgMjY5LjEzMUwtODQuNDE4NSAxMDkuOTk3WiIgc3Ryb2tlPSIjQUFFNjgyIi8+Cjwvc3ZnPg);
	background-repeat: no-repeat;
	background-position: 0 60%;
	background-size: 34em auto;
}

@media (max-width: 999px) {
	.single-post,
	.single-referenz {
		background-size: 20em auto;
	}
}



/* footer */




footer {
	position: relative;
	background-color: var(--light-gray);
	padding: 4.3em 0 5em 0;
	overflow: hidden;
}
footer > .wrap {
	position: relative;
	max-width: 77.3em;
	padding: 0 2em;
	box-sizing: border-box;
	margin: 0 auto;
}

footer p {
	font-weight: 500;
}
footer a {
	border-bottom: 0 !important;
}

#to-top {
	position: absolute;
	right: 0;
	bottom: 1em;
	height: 3em;
	width: 1.78em;
	background: url(assets/images/scroll-up.svg) center center no-repeat;
	background-size: contain;
}

@media (max-width: 999px) {
	#to-top {
		right: 2em;
		bottom: 0;
	}
}

#footer-cols {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: flex-start;
	padding: 3.6em 0;
}

#footer-cols > .content-text {
	width: 30%;
}

#footer-cols > .content-text a {
	color: inherit;
	text-decoration: none;
}


#footer-cols > .content-text:first-child > :first-child {
	margin-top: 0 !important;
}

#footer-menu {
	line-height: 160%;
	width: 60%;
	margin-right: 5%;
}

#footer-menu ul {
	display: block;
	margin: 0;
	padding: 0;
	list-style-type: none;
}
#footer-menu nav > ul {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: flex-start;
	width: 100%;
}
#footer-menu li {
	display: block;
}

.menu-title > a {
	pointer-events: none;
	font-weight: bold;
}

#footer-logo img {
	width: 100%;
}
#footer-logo {
	display: block;
	width: 17.2em;
	height: auto;
	margin-left: -1.95em;
}

@media (max-width: 999px) {
	#footer-logo {
		width: 12em;
		margin-left: 0;
	}
	
	#footer-cols > .content-text {
		display: none;
	}
	#footer-menu {
		font-size: 0.88em;
		width: 100%;
		margin-right: 0;
		margin-top: -0.75em;
	}
}


/* breakpoints */

.mobile-only {
	display: none;
}

@media (max-width: 999px) {
	#cta-contact,
	.desktop-only {
		display: none;
	}
	.mobile-only {
		display: block;
	}
}
/* === Fix: volle Mask-Fläche klickbar machen === */

/* 1) Pseudo-Maske nicht mehr Klicks blocken */
.mask-header .masked::before,
.mask-header .masked::after {
  pointer-events: none;
}

/* 2) Anchor füllt jetzt die ganze Mask-Box */
.mask-header .mask-style-2 .video-trigger.masked {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  position: relative !important;
}

/* 3) Bild-Container ebenfalls 100% */
.mask-header .mask-style-2 .video-trigger.masked .image-wrap,
.mask-header .mask-style-2 .video-trigger.masked .image-wrap img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
}
html {
  scroll-behavior: smooth;
	
/* --------------  LPS-Vorteils-Tabelle -------------- */
.lps-table {
  width: 100%;
  border-collapse: separate;   /* = Abstände pro Zelle möglich */
  border-spacing: 0 0.75rem;   /* vertikaler Abstand: 12 px zwischen Zeilen */
  font-size: 1.05em;
  line-height: 1.55;
}

/* Kopfzeile */
.lps-table thead th {
  padding: 0 0 0.4rem 0;
  text-align: left;
  font-weight: 700;
  font-size: 1.1em;
}

/* Datenzellen */
.lps-table tbody td {
  padding: 0.25rem 1.4rem 0.25rem 0;   /* rechts mehr Luft */
  vertical-align: top;
}

/* Vorteil-Spalte etwas breiter & bold */
.lps-table tbody td:first-child {
  width: 36%;
  font-weight: 600;
  white-space: nowrap;
}

/* Nutzen-Spalte flexibler */
.lps-table tbody td:last-child {
  width: 64%;
}

/* Auf kleineren Screens leicht komprimieren */
@media (max-width: 700px) {
  .lps-table {
    font-size: 1em;
    border-spacing: 0 0.6rem;
  }
  .lps-table tbody td:first-child { width: 40%; }
}
/* ===== RESET: nichts am TP-Layout kaputtmachen ===== */
#trp_ald_modal_popup.trp_ald_modal{
  /* KEIN position/flex/inset/background-overlay hier! */
}

/* Abstand zwischen Select und Button */
.trp_ald_select_and_button{
  display: flex !important;
  flex-direction: column !important; /* damit Button unter dem Select sitzt */
  gap: 14px !important;              /* sauberer Abstand */
  align-items: flex-start !important;
}

/* BUTTON: sehr spezifisch -> gewinnt gegen Theme */
#trp_ald_modal_popup.trp_ald_modal
.trp_ald_select_and_button
button,
#trp_ald_modal_popup.trp_ald_modal
.trp_ald_select_and_button
input[type="submit"],
#trp_ald_modal_popup.trp_ald_modal
.trp_ald_select_and_button
a.trp_ald_btn,
#trp_ald_modal_popup.trp_ald_modal
.trp_ald_select_and_button
.trp_ald_btn{
  background-color: #002646 !important; /* Dark Blue */
  color: #FFFFFF !important;            /* Text weiß */
  opacity: 1 !important;                /* falls Theme opacity setzt */
  border: none !important;
  border-radius: 10px !important;
  padding: 14px 22px !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;     /* Unterstreichung weg */
  box-shadow: none !important;          /* falls Theme Schatten drauflegt */
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 220px;                     /* optisch wie im Design */
}

/* Hover sauber */
#trp_ald_modal_popup.trp_ald_modal
.trp_ald_select_and_button
button:hover,
#trp_ald_modal_popup.trp_ald_modal
.trp_ald_select_and_button
input[type="submit"]:hover,
#trp_ald_modal_popup.trp_ald_modal
.trp_ald_select_and_button
a.trp_ald_btn:hover,
#trp_ald_modal_popup.trp_ald_modal
.trp_ald_select_and_button
.trp_ald_btn:hover{
  opacity: .95 !important;
  transform: translateY(-1px);
}

/* Falls Theme Link-Farbe auf Kinder im Button setzt */
#trp_ald_modal_popup.trp_ald_modal
.trp_ald_select_and_button
.trp_ald_btn *,
#trp_ald_modal_popup.trp_ald_modal
.trp_ald_select_and_button
button *{
  color: #FFFFFF !important;
  text-decoration: none !important;
}
