/* raleway-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: 'Raleway';
	font-style: normal;
	font-weight: 300;
	src: url('../fonts/raleway-v29-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* raleway-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: 'Raleway';
	font-style: normal;
	font-weight: 400;
	src: url('../fonts/raleway-v29-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* raleway-500 - 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: 'Raleway';
	font-style: normal;
	font-weight: 500;
	src: url('../fonts/raleway-v29-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* raleway-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: 'Raleway';
	font-style: normal;
	font-weight: 700;
	src: url('../fonts/raleway-v29-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* raleway-900 - 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: 'Raleway';
	font-style: normal;
	font-weight: 900;
	src: url('../fonts/raleway-v29-latin-900.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* calligraffitti-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: 'Calligraffitti';
	font-style: normal;
	font-weight: 400;
	src: url('../fonts/calligraffitti-v19-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
	
:root {
	--white			:	#fff;
	--grey			:	#6d767c;
	--light			:	#f5f5f5;
	--primary		:	rgba( 31, 71, 61, 1 );
	--primaryDark	:	rgba( 12, 42, 34, 1 );
	--secondary		:	rgba( 143, 163, 158, 1 );
	--secondaryLight:	rgba( 186, 209, 203, .2 );
	
	--mainColor		:	#53c99b;
	--secondColor	:	#c9537d;
	
	--headline		:	#192026;
	--textColor		:	#373f46;
	--linkColor		:	#51a74f;
	--linkColorH	:	#1a6818;
	
	--error			:	#ff6e6c;
	--errorDark		:	#f11a6a;
	--errorLight	:	#ffebed;
	--success		:	#2ea753;
	--successLight	:	#ebfff0;
	--warning		:	#ffc107;
	--warningLight	:	#fff9e7;
	
	--boxShadow		:	0px 24px 40px rgba(25, 34, 64, 0.15);
	--borderRadius	:	4px;
	--borderRadiusB	:	10vw;
	--gradient		:	linear-gradient(45deg, #c61c71  0%, #f98d21 100%);
	--transition	:	all 0.2s ease-in-out;
	
	--maxWidth		:	1248px;
}
/* ------ */
/* GLOBAL */
/* ------ */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	background: transparent;
	border: 0;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}
body,
input,
select,
textarea {
	line-height: 24px;
	font-size: 16px;
	color: var(--textColor);
	font-family: 'Raleway';
	font-weight: 400;
	font-size: 16px;
	counter-reset: steps;
}
body,
html {
	width: 100%;
	height: 100%;
	background: var(--primary);
}
h1, h2, h3, h4, h5, h6 {
	font-weight: 500;
	padding: 0 0 24px 0;
	font-size: 24px;
	line-height: 32px;
	color: var(--primary);
}
h1, h2 {
	font-size: 40px;
	line-height: 48px;
}
@media( max-width: 589px ) {
	h1, h2 {
		font-size: 24px;
		line-height: 32px;
	}
}
p {
	padding: 0 0 24px 0;
	color: var(--textColor);
}
p.subheadline {
	text-transform: uppercase;
	color: var(--textColor);
	padding-bottom: 8px;
	letter-spacing: -0.01em;
}
b, strong {
	font-weight: 700;
}
a {
	color: var(--secondary);
	text-decoration: none;
	transition: all 0.2s ease-in-out;
}
a:hover {
	color: var(--primary);
}
a img {
	border: none;
}
*.clear {
	clear: both;
}
*.center {
	text-align: center;
}
*.highlight {
	position: relative;
}
*.highlight span {
	display: block;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%) scale(1.2);
	background-image: url('../images/ellipse.svg');
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	z-index: -1;
}
hr {
	width: 100%;
	height: 1px;
	background: var(--light);
	border: none;
	margin: 8px 0;
}
/*--------*/
/* ALIGN  */
/*--------*/
.alignright {
	padding: 0;
	margin: 0 0 0 24px;
	float: right;
}
.aligncenter {
	display: block;
	margin: 0 auto;
}
.alignleft {
	padding: 0;
	margin: 0 24px 0 0;
	float: left;
}
*.handwritten {
	font-family: 'Calligraffitti';
	font-size: 48px;
	line-height: 56px;
}
@media ( max-width: 1240px ) {
	
}
@media ( max-width: 998px ) {
	
}
@media ( max-width: 768px ) {
	*.handwritten {
		font-size: 32px;
		line-height: 40px;
	}	
}
@media ( max-width: 589px ) {
	
}
/*--------*/
/* INPUT  */
/*--------*/
form {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	margin: 0 -12px;
	align-content: stretch;
	align-items: stretch;
	justify-content: stretch;
	gap: 24px;
}
div.field {
	padding: 12px;
}
label {
	font-size: 14px;
	padding-bottom: 2px;
	text-align: left;
	width: 100%;
}
textarea {
	height: 260px;
}
input,
select,
textarea,
*.input {
	font-size: 16px;
	border: 1px solid var(--grey);
	background: var(--secondaryLight);
	border-radius: var(--borderRadius);
	padding: 8px 16px;
	width: 100%;
}
*.input a {
	color:  rgba( var(--primaryDark), 1);
}
input:focus,
select:focus,
textarea:focus {
	outline: none;
	border: 1px solid var(--secondary);
	background: var(--secondary);
	color: var(--white);
}
input[type="radio"]:focus,
input[type="checkbox"] {
	
}

input[type="radio"],
input[type="checkbox"] {
	width: auto;
}
div.field {
	display: flex;
	flex-direction: column;
	width: 100%;
}
div.field div.field_input {
	width: 100%;
	display: flex;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	gap: 8px;
}
div.field div.field_input.password {
	width: 100%;
	display: flex;
	align-content: stretch;
	align-items: stretch;
	flex-wrap: nowrap;
	gap: 0;
}
div.field div.field_input.password input {
	border-radius: var(--borderRadius) 0 0 var(--borderRadius);
}
div.field div.field_input.password div.togglePassword {
	border-radius: 0 var(--borderRadius) var(--borderRadius) 0;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	widows: 42px;
	min-width: 42px;
	height: 42px;
	background: var(--primary);
	color: var(--white);
	cursor: pointer;
}
div.field div.field_input.password div.togglePassword:hover {
	background: var(--secondary);
}
div.field.field-checkbox div.checkboxes {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	margin: 0 -12px;
}
div.field.field-checkbox div.checkboxes label {
	width: auto;
	padding: 2px 8px;
	cursor: pointer;
	border-radius: var(--borderRadius);
}
div.field.field-checkbox div.checkboxes label.checked {
	border-radius: var(--borderRadius);
}
div.field.field-checkbox div.checkboxes label:hover {
	background: var(--light);
}
div.field div.proposals {
	padding-top: 8px;
}
div.field div.proposals *.badge {
	cursor: pointer;
}
div.field div.proposals *.badge:hover {
	background: var(--primary);
}
@media ( max-width: 1240px ) {
	
}
@media ( max-width: 998px ) {
	
}
@media ( max-width: 768px ) {
	div.field {
		width: 100% !important;
	}	
}
@media ( max-width: 589px ) {
	
}
/*---------------*/
/* !MORE FILTERS */
/*---------------*/
div.overlay {
	position: fixed;
	width: 600px;
	max-width: 100%;
	height: 100vh;
	position: fixed;
	right: 0;
	top: 0;
	padding: 24px;
	overflow: auto;
	background: var(--white);
	box-shadow: var(--boxShadow);
	z-index: 998;
	transform: translateX(120%);
	transition: var(--transition);
	display: flex;
	flex-direction: column;
	gap: 24px;
	align-items: baseline;
}
div.overlay.active {
	transform: translateX(0%);
}
div.overlay *.filter-more-cross {
	margin-left: auto;
}
div.overlay div.filters {
	display: flex;
	flex-direction: column;
	gap: 24px;
}
div.overlay div.filters div.filter {
	padding-top: 12px;
}
div.overlay div.filters div.filter+div.filter {
	border-top: 1px solid var(--light);
}
div.overlay div.filters div.filter div.title {
	margin-bottom: 12px;
	font-weight: 900;
}
div.overlay *.btn {
	width: auto;
}
div.overlay div.input {
	position: relative;
	display: flex;
	align-content: stretch;
	align-items: stretch;
	flex-wrap: nowrap;
	padding: 0;
	border: none;
	background: none;
}
div.overlay div.input input {
	border-radius: var(--borderRadius) 0 0 var(--borderRadius);
}
div.overlay div.input div.clear_field {
	min-width: 42px;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	background: var(--grey);
	border-radius: 0 var(--borderRadius) var(--borderRadius) 0;
	color: var(--white);
	cursor: pointer;
}
div.overlay div.input div.clear_field:hover {
	background: var(--primaryDark)
}
/*----------*/
/* !SWIPER */
/*----------*/
.swiper-button-next,
.swiper-button-prev {
	background: var(--white);
	height: 32px;
	width: 32px;
	border-radius: var(--borderRadius);
	box-shadow: var(--boxShadow);
	color: var(--secondary);
	cursor: pointer;
}
.swiper-button-next:hover,
.swiper-button-prev:hover {
	background: var(--primary);
	color: var(--white);
}
.swiper-button-next:after,
.swiper-button-prev:after {
	font-size: 12px;
}
/*--------*/
/* !PAGER */
/*--------*/
div.pager {
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: center;
	align-content: center;
	align-items: center;
	width: 100%;
	gap: 16px;
	margin-top: 24px;
}
div.pager div.pages {
	display: flex;
	flex-wrap: nowrap;
	gap: 4px;
}
div.pager div.pages label {
	width: 32px;
	height: 32px;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	font-size: 14px;
	border: 1px solid var(--light);
	border-radius: var(--borderRadius);
	cursor: pointer;
}
div.pager div.pages label:hover {
	border: 1px solid var(--grey);
	background: var(--grey);
	color: var(--white);
}
div.pager div.pages label.checked {
	border: 1px solid var(--secondary);
	background: var(--secondary);
	color: var(--white);
}
div.pager div.pages label input {
	display: none;
}
/*--------*/
/* ALERTS */
/*--------*/
div.alert {
	z-index: 998;
	position: fixed;
	left: 50%;
	top: 0;
	transform: translateX(-50%) translateY(-200%);
	width: auto;
	max-width: calc(100% - 48px);
	border-radius: var(--borderRadius);
	padding: 8px 16px;
	color: var(--white);
	border: 1px solid var(--grey);
	margin-bottom: 24px;
	animation-name: alert;
	animation-fill-mode: forwards;
	animation-iteration-count: 1;
	animation-timing-function: ease-in-out;
	animation-duration: 20s;
	animation-delay: 1s;
}
@keyframes alert {
	0% {
		transform: translateX(-50%) translateY(-200%);
	} 25% {
		transform: translateX(-50%) translateY(80px);
	} 75% {
		transform: translateX(-50%) translateY(80px);
	} 100% {
		transform: translateX(-50%) translateY(-200%);
	}
}
div.alert.alert-fixed {
	position: relative;
	left: auto;
	top: auto;
	width: 100%;
	transform: none;
	animation: none;
}
div.alert.alert-success {
	color: var(--success);
	border-color: var(--success);
	background: var(--successLight);
}
div.alert.alert-error {
	color: var(--error);
	border-color: var(--error);
	background: var(--errorLight);
}
div.alert h3 {
	padding: 0 0 0 0;
	font-size: 16px;
	line-height: 24px;
}
div.alert.alert-success * {
	color: var(--success);
}
div.alert.alert-error * {
	color: var(--error);
}
div.alert p,
div.alert ul {
	padding: 0 0 0 0;
}
div.alert p+p {
	padding: 8px 0 0 0;
}
/*-------------*/
/* BORDER BOX  */
/*-------------*/
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
/*----------*/
/* ADDRESS  */
/*----------*/
address {
	font-style: italic;
	padding: 0 0 24px 0;
}
/*-------*/
/* MARK  */
/*-------*/
mark {
	background-color: var(--linkColor);
	padding: 0 2px;
}
/*-------------*/
/* WP CAPTION  */
/*-------------*/
div.wp-caption {
	display: inline-block;
	background: var(--white);
	padding: 5px;
	margin-bottom: 24px;
	border: 1px solid var(--grey);
}
div.wp-caption img {
	max-width: 100%;
	height: auto;
	margin: 0 0 5px 0;
}
div.wp-caption p {
	width: 100%;
	text-align: center;
	padding: 0;
}
/*--------*/
/* TABLE  */
/*--------*/
*.table {
	width: 100%;
	overflow: auto;
	border-radius: var(--borderRadius);
	box-shadow: var(--boxShadow);
	padding: 0;
}
table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}
table thead,
table tbody,
table tfoot,
table tr {
	width: 100%;
}
table th,
table td {
	text-align: left;
	padding: 8px;
}
table td *.badges {
	flex-wrap: nowrap;
}
table th {
	border-bottom: 2px solid var(--secondary);
	font-size: 12px;
	line-height: 14px;
	text-align: left;
	white-space: nowrap;
}
table td {
	font-size: 14px;
	line-height: 16px;
}
table tr:nth-child(even) td {
	background: var(--light);
}
table tr:hover td {
	background: var(--secondary);
	color: var(--white);
	cursor: pointer;
}
table tr+tr {
	border-top: 1px solid var(--light);
}
table td+td,
table th+th,
table th+td {
}
*.repeater {
	width: 100%;
}
*.repeater table {
	margin-bottom: 24px;
	width: 100%;
}
*.repeater table tr:hover td {
	background: var(--light);
}
*.repeater table tr.tr_clone {
	display: none;
}
*.repeater table tr input[type="number"] {
	min-width: 48px;
	padding: 8px 2px;
}
*.repeater table tr:hover *:not(.badge) {
	color: var(--textColor);
}
*.repeater table tr:hover div.remove_row:hover i {
	color: var(--error);
	cursor: pointer;
}
*.repeater table tr *.badge {
	margin-top: 4px;
}
*.repeater table tr:hover *.badge {
	background: var(--secondary);
}
*.repeater table tr:hover *.badge:hover {
	background: var(--primary);
}
*.repeater table tr div.remove_row:hover i {
	color: var(--error);
	cursor: pointer;
}
*.repeater div.blocks_wrapper {
	display: flex;
	flex-direction: column;
	gap: 24px;
}
*.repeater div.block_content {
	display: flex;
	flex-wrap: wrap;
	background: var(--light);
}
*.repeater div.block_clone {
	display: none;
}
/*---------------*/
/* !TABLE FILTER */
/*---------------*/
div#table_filter {
	display: flex;
	flex-wrap: nowrap;
	align-content: flex-end;
	align-items: flex-end;
	gap: 12px;
	padding-bottom: 12px;
}
div#table_filter div.filter {
	display: flex;
	flex-direction: column;
}
div#table_filter div.filter.btn {
	flex-direction: row;
}
div#table_filter div.filter.filter-customs {
	margin-left: auto;
	display: flex;
	flex-wrap: nowrap;
	flex-direction: row;
	gap: 16px;
}
div#table_filter div.filter input[type="search"] {
	width: 260px;
}
/*---------------*/
/* !ACTIVE FILTER */
/*---------------*/
div#active_filters {
	display: flex;
	flex-wrap: wrap;
	align-content: flex-start;
	align-items: center;
	gap: 12px;
	padding-bottom: 12px;
}
@media ( max-width: 1240px ) {
	
}
@media ( max-width: 998px ) {
	
}
@media ( max-width: 768px ) {
	div#table_filter {
		flex-wrap: wrap;
	}	
}
@media ( max-width: 589px ) {
	
}
/*----------------*/
/* !BOXING LAYOUT */
/*----------------*/
div.boxing {
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
}
div.boxing div.box {
	border: 1px solid var(--light);
	background: var(--white);
	border-radius: var(--borderRadius);
	flex: 1 0 calc(25% - 18px);
	max-width: calc(25% - 18px);
	min-width: calc(25% - 18px);
	cursor: pointer;
	transition: var(--transition);
	overflow: hidden;
}
div.boxing div.box:hover {
	box-shadow: var(--boxShadow);
	transform: scale(1.02);
}
div.boxing div.box div.slider {
	width: 100%;
	aspect-ratio: 1 / 0.4;
	background: var(--light);
}
div.boxing div.box div.slider.slider-empty {
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	font-size: 64px;
	color: var(--grey);
}
div.boxing div.box div.slider div.swiper-slide {
	width: 100%;
	height: 100%;
	position: relative;
}
div.boxing div.box div.slider div.swiper-slide img {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
div.boxing div.box div.box-content {
	padding: 8px 16px;
	display: flex;
	flex-direction: column;
	gap: 8px;
	height: 100%;
}
div.boxing div.box div.box-content div.title {
	font-weight: 700;
	font-size: 20px;
	line-height: 24px;
}
div.boxing div.box div.box-content div.address a {
	font-size: 14px;
	color: var(--textColor);
}
div.boxing div.box div.box-content div.address a:hover {
	text-decoration: underline;
}
@media ( max-width: 998px ) {
	
	div.boxing div.box {
		flex: 1 0 calc(33.3% - 24px);
		max-width: calc(33.3% - 24px);
		min-width: calc(33.3% - 24px);
	}
}
@media ( max-width: 768px ) {
	div.boxing div.box {
		flex: 1 0 calc(50% - 24px);
		max-width: calc(50% - 24px);
		min-width: calc(50% - 24px);
	}
}
@media ( max-width: 589px ) {
	div.boxing div.box {
		flex: 1 0 calc(100%);
		max-width: calc(100%);
		min-width: calc(100%);
	}
}
/*----------*/
/* !MAP ACTIVE */
/*----------*/
.hotelWrapper.active div.boxing div.box {
	flex: 1 0 calc(50% - 24px);
	max-width: calc(50% - 24px);
	min-width: calc(50% - 24px);
}
/*--------*/
/* !FACTS */
/*--------*/
ul.facts {
	padding: 0;
	display: flex;
	gap: 24px;
}
section.single-overview ul.facts {
	gap: 12px;
	flex-wrap: wrap;
}
ul.facts li {
	list-style: none;
	font-size: 14px;
	line-height: 20px;
}
section.single-overview ul.facts li {
	max-width: calc( 50% - 12px);
	width: 100%;
	position: relative;
	padding-left: 24px;
}
ul.facts li i {
	margin-right: 8px;
}
section.single-overview ul.facts li i  {
	position: absolute;
	left: 0;
	top: 2px;
	margin: 0;
}
@media ( max-width: 1240px ) {
	
}
@media ( max-width: 998px ) {
	
}
@media ( max-width: 768px ) {
	section.single-overview ul.facts {
		flex-wrap: wrap;
	}
	section.single-overview ul.facts li {
		width: 100%;
	}	
}
@media ( max-width: 589px ) {
	
}
/*----------------*/
/* !SECTION STARS */
/*----------------*/
 div.stars {
	display: flex;
	flex-wrap: nowrap;
	gap: 2px;
	color: var(--warning);
	font-size: 12px;
}
div.stars i.fa-star-grey {
	color: var(--light);
}
section.single-overview div.stars {
	font-size: 16px;
}
/*------*/
/* !MAP */
/*------*/
article.post-content div#map {
	width: 100%;
	aspect-ratio: 1 / 0.72;
	background: var(--light);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-content: center;
	align-items: center;
	gap: 12px;
}
article.post-content div#map i {
	font-size: 32px;
}
/*----------------*/
/* !HOTEL WRAPPER */
/*----------------*/
div#hotels-wrapper {
	width: 100%;
}
div.hotelWrapper {
	display: flex;
	align-content: stretch;
	align-items: stretch;
}
div.hotelWrapper div#hotels {
	width: 100%;
	transition: var(--transition);
	position: relative;
	z-index: 9;
	background: var(--white);
}
div.hotelWrapper.active div#hotels {
	width: calc( 50% - 24px );
}
/*------*/
/* !MAP */
/*------*/
div.hotelWrapper div.mapWrapper {
	width: 50%;
	background: var(--primary);
	max-height: 80vh;
	min-height: 80vh;
	height: 100%;
	right: -100%;
	display: block;
	position: absolute;
	z-index: 1;
}
div.hotelWrapper div.mapWrapper,
div.hotelWrapper.active div.mapWrapper {
	right: 24px;
}
.leaflet-map-pane {
	width: 100%;
	height: 100%;
}
/*--------*/
/* !BADGE */
/*--------*/
*.badges {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	gap: 6px;
}
*.badges+*.badges {
	margin-top: 4px;
}
*.badge {
	font-size: 12px;
	line-height: 14px;
	font-weight: 600;
	padding: 3px 6px;
	background: var(--light);
	border-radius: var(--borderRadius);
	display: inline-block;
	width: auto;
}
*.badge.badge-column {
	display: flex;
	flex-direction: column;
	align-content: center;
	align-items: center;
	justify-content: center;
	padding: 8px 24px;
}
*.badge.active {
	background: var(--secondary);
	color: var(--white);
}
*.badge i {
	font-size: 64px;
	line-height: 64px;
}
tr:hover *.badge {
	background: var(--primaryDark);
	color: var(--white);
}
*.badge span.removeFilter {
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: var(--white);
	display: inline-flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	font-size: 12px;
	cursor: pointer;
	margin-left: 4px;
}
*.badge span.removeFilter:hover {
	background: var(--error);
	color: var(--white);
}
*.badge span.removeFilter i {
	font-size: 12px;
	line-height: 12px;
	
}
/*-------*/
/* LIST  */
/*-------*/
ol,
ul {
	padding: 0 0 24px 40px;
}
ul li {
	list-style: disc;
}
ol li {
	list-style: decimal;
}
ul.check {
	padding: 0 0 24px 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
ul.check li {
	list-style: none;
	position: relative;
	padding: 6px 6px 6px 40px;
	margin: 8px 0;
	width: 48%;
	background: var(--light);
	border-radius: 20px;
	text-align: left;
}
ul.check li::before {
	content: '\f00c';
	font-family: "Font Awesome 5 Free"; 
	font-weight: 900;
	width: 24px;
	height: 24px;
	background: var(--secondary);
	color: var(--white);
	font-size: 12px;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	border-radius: 50%;
	position: absolute;
	left: 6px;
	top: 50%;
	transform: translateY(-50%);
}
@media ( max-width: 1240px ) {
	
}
@media ( max-width: 998px ) {
	
}
@media ( max-width: 768px ) {
	ul.check li {
		width: 100%;
	}	
}
@media ( max-width: 589px ) {
	
}
/*---------*/
/* !SOCIAL */
/*---------*/
ul.social {
	padding: 0;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	margin: 0 -8px;
}
ul.social li {
	list-style: none;
	padding: 0 8px;
}
ul.social li a {
	font-size: 24px;
	line-height: 24px;
	color: var(--white);
}
/*-----------------*/
/* !IFRAME / VIDEO */
/*-----------------*/
div.iframe,
div.video {
	position: relative;
	border-radius: var(--borderRadius);
	overflow: hidden;
}
div.iframe::after,
div.video::after {
	content: '';
	display: block;
	margin-top: 56.25%;
}
div.iframe iframe,
div.video video {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}
div.video picture,
div.video picture img{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 1;
}
div.video i {
	z-index: 9;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
	font-size: 124px;
	color: var(--white);
}
div.video video:hover i {
	color: var(--secondary);
}
/*-------------*/
/* BLOCKQUOTE  */
/*-------------*/
blockquote {
	position: relative;
	color: var(--textColor);
	text-shadow: var(--textShadow);
	max-width: 100%;
	margin: 0 auto;
	padding: 24px 0 0 64px;
	margin-bottom: 24px;
	border-left: 2px solid var(--secondary);
	font-style: italic;
}
@media ( max-width: 1240px ) {
	
}
@media ( max-width: 998px ) {
	
}
@media ( max-width: 768px ) {
	
}
@media ( max-width: 589px ) {
	blockquote {
		padding-left: 26px;
	}	
}
/*------------*/
/* SELECTION  */
/*------------*/
::selection {
	background: var(--primary);
	color: var(--secondary);
}
::-moz-selection {
	background: var(--primary);
	color: var(--secondary);
}
/*---------*/
/* BUTTON  */
/*---------*/
*.buttons {
	display: flex;
	flex-wrap: nowrap;
	gap: 12px;
}
*.buttons.buttons-center {
	justify-content: center;
	width: 100%;
}
*.buttons.buttons-right {
	justify-content: flex-end;
}
*.btn {
	text-align: center;
	padding: 8px 24px;
	border: none;
	display: inline-flex;
	align-content: center;
	align-items: center;
	text-transform: uppercase;
	font-size: 14px;
	font-weight: 700;
	position: relative;
	overflow: hidden;
	cursor: pointer;
	background: var(--secondary);
	color: var(--white);
	border-radius: 40px;
	border: 2px solid transparent;
	overflow: hidden;
	width: auto;
	min-height: 44px;
}
*.btn i {
	margin-right: 8px;
}
*.btn.btn-small {
	padding: 6px 12px;
}
*.btn:hover {
	background: var(--primary);
	color: var(--white);
}
*.btn.btn-blue {
	background: var(--primary);
}
*.btn.btn-blue:hover {
	background: var(--textColor);
}
*.btn.btn-outlined {
	background: transparent;
	color: var(--primary);
	border-color: var(--primary);
}
*.btn.btn-outlined:hover{
	background: var(--primary);
	color: var(--white);
	border-color: var(--primary);
}
*.btn.center,
*.btn.btn-center {
	margin: 0 auto;
	float: none;
	display: table;
}
*.btn.btn-error {
	background: var(--error);
}
*.btn.btn-error:hover {
	background: var(--errorDark);
}

*.btn.btn-icon {
	padding: 0;
	width: 48px;
	min-width: 48px;
	height: 48px;
	min-height: 48px;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	border-radius: 50%;
}
*.btn.btn-icon i {
	margin: 0;
}
*.btn.btn-link {
	background: none;
	color: var(--textColor);
	padding: 0;
	border-bottom: 2px solid var(--textColor);
	border-radius: 0;
}
*.btn.btn-link.btn-error {
	color: var(--error);
	border-bottom: 2px solid transparent;
	border-radius: 0;
}
*.btn.btn-link.btn-error:hover {
	border-bottom: 2px solid var(--error);
}
@media ( max-width: 1240px ) {
	
}
@media ( max-width: 998px ) {
	
}
@media ( max-width: 768px ) {
	*.buttons {
		justify-content: center;
	}	
}
@media ( max-width: 589px ) {
	
}
/*-------------*/
/* BREADCRUMB  */
/*-------------*/
div#breadcrumb {
	padding: 0 0 24px 0;
	display: flex;
	justify-content: flex-start;
	width: 100%;
	gap: 24px;
}
div#breadcrumb div.content {
	display: flex;
	flex-wrap: wrap;
	align-content: center;
	align-items: center;
	justify-content: flex-start;
}
div#breadcrumb div.content div,
div#breadcrumb div.content span {
	font-size: 14px;
	line-height: 16px;
	padding: 0 0 0 0;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-content: center;
	align-items: center;
	justify-content: flex-start;
}
div#breadcrumb div.content span[itemprop="itemListElement"]::after {
	content: '';
	width: 24px;
	height: 1px;
	background: var(--white);
	margin: 7px 16px;
	display: inline-block;
}
div#breadcrumb div.content a:hover,
div#breadcrumb div.content span:hover {
	text-decoration: underline;
}
/*-----------*/
/* OVERLAYER */
/*-----------*/
div.overlayer {
	z-index: 997;
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.6);
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	padding: 24px;
	display: none;
}
div.overlayer div.overlayerBg {
	position: absolute;
	z-index: 1;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
div.overlayer div.overlayerContent {
	position: relative;
	z-index: 9;
	background: var(--white);
	border-radius: var(--borderRadius);
	box-shadow: var(--boxShadow);
	padding: 24px;
	max-width: 600px;
	width: 100%;
}
div.overlayer div.overlayerContent h2 {
	padding-bottom: 16px;
}
div.overlayer div.overlayerContent div.overlayerCross {
	position: absolute;
	right: 8px;
	top: 8px;
}
/*----------*/
/* !WRAPPER */
/*----------*/
div#wrapper {
	padding: 64px 0 0 0;
	background: var(--white);
	overflow: hidden;
}
/*----------*/
/* CONTENT  */
/*----------*/
*.content {
	width: 100%;
	max-width: var(--maxWidth);
	padding: 0 24px;
	display: block;
	margin: 0 auto;
	position: relative;
	z-index: 9;
}
*.content.content-full {
	max-width: 100%;
}
*.post-content {
	width: 100%;
}
/*------*/
/* FLEX */
/*------*/
*.flex {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: justify;
	justify-content: space-between;
	flex-wrap: nowrap;
	align-content: stretch;
	-webkit-box-align: stretch;
	align-items: stretch;
	gap: 24px;
}
*.flex.flexColumn {
	flex-direction: column;
	align-content: stretch;
	align-items: stretch;
	justify-content: flex-start;
}
*.flex *.flexColumn {
	flex-direction: column;
	display: flex;
}
*.flex.alignCenter {
	align-items: center;
	align-content: center;
}
*.flex.flexStart {
	justify-content: flex-start;
	margin: 0;
}
*.flex.flexEnd,
*.flexbox.flexEnd {
	justify-content: flex-end;
	display: flex;
	flex-wrap: wrap;
	margin: 0;
}
*.flex.justifyCenter {
	justify-content: center;
}
*.flex.wrap,
*.flex.flexWrap {
	flex-wrap: wrap;
	justify-content: flex-start
}
*.flex *.flexbox {
	flex-basis: 0;
	flex-grow: 1;
}
*.flex *.flexbox.image img,
*.flex *.flexbox.image picture {
	display: table;
	margin: 0 auto;
	max-width: 100%;
	width: auto;
	height: auto;
}
*.flex *.flexbox.image.left {
	order: -1;
}
@media (max-width: 768px) {
	*.flex {
		flex-wrap: wrap;
	}
	*.flex *.flexbox {
		width: 100%;
		max-width: 100%;
		flex-basis: auto;
		flex-grow: initial;
		text-align: center;
	}
	article *.flex *.flexbox {
		text-align: left;
	}
	*.flex *.flexbox.assets {
		order: -1;
	}
	*.flex + *.flex {
		padding-top: 24px;
	}
	*.flex *.flexbox.image {
		order: -1;
		padding: 0 24px 24px 24px;
	}
}
/*------*/
/* MENU */
/*------*/
div#menu {
	display: none;
}
@media ( max-width: 998px ) {
	div#menu {
		display: block;
		width: 32px;
		height: 40px;
		position: absolute;
		right: 24px;
		top: 12px;
		z-index: 999;
	}
	div#menu.active {
		position: fixed;
		right: 24px;
		top: 24px;
	}
	div#menu::before,
	div#menu::after {
		content: '';
		width: 100%;
		height: 2px;
		background: var(--white);
		position: absolute;
		left: 0;
		top: 50%;
	}
	*.sticky div#menu::before,
	*.sticky div#menu::after {
		background: var(--primary);
	}
	div#menu.active::before,
	div#menu.active::after {
		background: var(--primary);
	}
	div#menu::before {
		margin-top: -4px;
	}
	div#menu::after {
		margin-top: 4px;
	}
	div#menu.active::before {
		animation-name: menuTop;
		animation-duration: 0.5s;
		animation-fill-mode: forwards;
		animation-iteration-count: 1;
		animation-timing-function: ease-in-out;
	}
	div#menu.active::after {
		animation-name: menuBottom;
		animation-duration: 0.5s;
		animation-fill-mode: forwards;
		animation-iteration-count: 1;
		animation-timing-function: ease-in-out;
	}
	div#menu.close::before {
		animation-name: closeMenuTop;
		animation-duration: 0.5s;
		animation-fill-mode: forwards;
		animation-iteration-count: 1;
		animation-timing-function: ease-in-out;
	}
	div#menu.close::after {
		animation-name: closeMenuBottom;
		animation-duration: 0.5s;
		animation-fill-mode: forwards;
		animation-iteration-count: 1;
		animation-timing-function: ease-in-out;
	}
}
/* OPEN */
@keyframes menuTop {
	0% {
		margin-top: -4px;
	} 50% {
		margin-top: -1px;
		transform: rotate(0deg);
	} 100% {
		transform: rotate(45deg);
		margin-top: 0;
	}
}
@keyframes menuBottom {
	0% {
		margin-top: 4px;
	} 50% {
		margin-top: -1px;
		transform: rotate(0deg);
	} 100% {
		transform: rotate(-45deg);
		margin-top: 0;
	}
}
/* CLOSE */
@keyframes closeMenuTop {
	0% {
		transform: rotate(45deg);
		margin-top: 0;
	} 50% {
		margin-top: -1px;
		transform: rotate(0deg);
	} 100% {
		margin-top: -4px;
	}
}
@keyframes closeMenuBottom {
	0% {
		transform: rotate(-45deg);
		margin-top: 0;
	} 50% {
		margin-top: -1px;
		transform: rotate(0deg);
	} 100% {
		margin-top: 4px;
	}
}
/*------------*/
/* !SUBHEADER */
/*------------*/
div.subheader {
	border-top: 1px solid var(--secondary);
	background: var(--primaryDark);
	height: 40px;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	z-index: 9;
	display: flex;
	justify-content: center;
	align-content: stretch;
	align-items: center;
}
div.subheader div.content {
	display: flex;
	align-content: stretch;
	align-items: center;
}
div.subheader ul.social {
	margin-left: 16px;
	padding-left: 16px;
	border-left: 1px solid rgba(255,255,255,0.3);
}
div.subheader ul.social li a {
	font-size: 18px;
}
div.subheader ul.social li a:hover {
	color: var(--secondary);
}
div.subheader div.contact {
	margin-left: auto;
}
div.subheader div.contact a {
	margin: 0 8px 0 16px;
	color: var(--white);
}
div.subheader div.contact a:hover {
	color: var(--secondary);
}
div.subheader div.contact a i {
	margin-right: 4px;
}
@media ( max-width: 1240px ) {
	
}
@media ( max-width: 998px ) {
	
}
@media ( max-width: 768px ) {
	
}
@media ( max-width: 589px ) {
	div.subheader div.contact a span {
		display: none;
	}	
}
/*----------*/
/* !SCROLLWIDTH */
/*----------*/
div#scrollWidth {
	position: fixed;
	left: 0;
	top: 0;
	height: 4px;
	width: 100%;
	z-index: 997;
}
div#scrollWidth div {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	background: var(--secondary);
}
/*---------*/
/* HEADER  */
/*---------*/
header#header {
	width: 100%;
	left: 0;
	z-index: 994;
	padding: 0;
	height: 64px;
	position: absolute;
	background: var(--primary);
}
header#header.sticky {
	top: 0;
	box-shadow: 0 4px 8px 0 rgba(46,43,56,0.16), 0 8px 16px 0 rgba(46,43,56,0.08), 0 16px 32px 0 rgba(46,43,56,0.04);
	position: fixed;
	background: var(--white);
	transform: translateY(-200%);
	animation-name: showMenu;
	animation-duration: 1s;
	animation-fill-mode: forwards;
	animation-iteration-count: 1;
}
@keyframes showMenu {
	0% {
		transform: translateY(-200%);
	} 100% {
		transform: translateY(0%);
	}
}
header#header div.content {
	display: flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
}
header#header div.content a.logo {
	display: inline-flex;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	height: 64px;
	width: auto;
	padding: 8px 0;
	position: relative;
}
header#header.sticky div.content a.logo {
	height: 64px;
	transform: none;
}
header#header div.content a.logo picture {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: flex-start;
}
header#header div.content a.logo picture img {
	width: auto;
	height: 100%;
	filter: brightness(0) invert(1);
}
header#header.sticky div.content a.logo picture img {
	filter: none;
}
@media ( max-width: 1240px ) {
	
}
@media ( max-width: 998px ) {
	header#header.openMenu div.content a.logo picture img {
		filter: none;
	}
	header#header div.content a.logo {
		transform: none;
		height: 64px;
	}
}
@media ( max-width: 768px ) {
	
}
@media ( max-width: 589px ) {
	
}
/*------------*/
/* NAVIGATION */
/*------------*/
nav#nav {
	margin: 0 0 0 auto;
	display: flex;
	justify-content: flex-start;
	align-content: stretch;
	align-items: stretch;
	flex-wrap: nowrap;
}
*.sticky nav#nav {
	margin-top: 0;
}
nav#nav ul {
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
	flex-wrap: nowrap;
	padding: 0;
	height: 100%;
}
nav#nav ul li {
	list-style: none;
	position: relative;
	display: flex;
	align-items: stretch;
}
nav#nav ul li a {
	padding: 8px 16px;
	color: var(--white);
	text-transform: uppercase;
	letter-spacing: 1px;
	font-size: 14px;
	display: flex;
	align-items: center;
}
nav#nav ul li a:hover,
nav#nav ul li.current-menu-item a {
	color: var(--secondary);
}
*.sticky nav#nav ul li a {
	color: var(--textColor);
}
*.sticky nav#nav ul li.current-menu-item a {
	color: var(--primary);
}
@media ( max-width: 998px ) {
	nav#nav {
		position: fixed;
		left: 0;
		top: 0;
		z-index: 990;
		background: var(--white);
		width: 100%;
		height: 100vh;
		display: none;
		justify-content: center;
		align-content: center;
		align-items: center;
		padding: 80px 24px 24px 24px;
	}
	nav#nav ul {
		height: 100%;
		display: flex;
		justify-content: center;
		align-content: center;
		align-items: center;
		flex-direction: column;
	}
	nav#nav ul li a,
	*.sticky nav#nav ul li a {
		color: var(--primary);
		font-size: 20px;
		line-height: 56px;
	}
	nav#nav ul li.current-menu-item a,
	*.sticky nav#nav ul li.current-menu-item a {
		color: var(--secondary);
	}
}
/*----------*/
/* SUB MENU */
/*----------*/
nav#nav ul li ul {
	position: absolute;
	left: 50%;
	top: 100%;
	padding: 0;
	height: auto;
	max-width: 100%;
	width: 300px;
	min-width: 300px;
	transform: translateX(-50%);
	background: var(--primaryDark);
	box-shadow: var(--borderRadius);
	border-radius: var(--borderRadius);
	overflow: hidden;
	display: none;
}
nav#nav ul li:hover ul {
	display: flex;
	flex-direction: column;
	align-content: stretch;
	align-items: stretch;
}
nav#nav ul li:hover ul li {
	display: flex;
	width: 100%;
	justify-content: center;
	align-content: stretch;
	align-items: stretch;
}
nav#nav ul li:hover ul li+li {
	border-top: 1px solid var(--grey);
}
nav#nav ul li:hover ul li a {
	padding: 8px 16px;
	width: 100%;
	display: flex;
	justify-content: center;
	color: var(--white);
}
nav#nav ul li:hover ul li a:hover {
	background: var(--secondary);
	
}
@media ( max-width: 1240px ) {
	
}
@media ( max-width: 998px ) {
	nav#nav ul li ul,
	nav#nav ul li:hover ul {
		position: relative;
		left: auto;
		top: auto;
		width: 100%;
		background: var(--white);
		display: block;
		box-shadow: none;
		transform: none;
		margin-bottom: 40px;
		border: none;
	}
	nav#nav ul li ul li,
	nav#nav ul li:hover ul li {
		padding: 0;
		background: var(--white);
		border: none;
		text-align: center;
		width: 100%;
		border: none;
	}
	nav#nav ul li ul li a,
	nav#nav ul li:hover ul li a,
	nav#nav ul li:hover ul li a:hover,
	nav#nav ul li ul li a:hover {
		padding: 0;
		background: var(--white);
		color: var(--primary);
		border: none;
		text-align: center;
		width: 100%;
		display: block;
		font-size: 16px;
		line-height: 24px;
		margin: 0 auto;
	}
}
@media ( max-width: 768px ) {
	
}
@media ( max-width: 589px ) {
	
}
/*-----------------*/
/* !HEADER CONTACT */
/*-----------------*/
header#header div.contact {
	margin-left: auto;
	display: flex;
	flex-wrap: nowrap;
	gap: 24px;
}
header#header div.contact a {
	color: var(--white);
}
header#header div.contact a:hover {
	color: var(--secondary);
}
/*-----------------*/
/* !HEADER SOCIAL */
/*-----------------*/
header#header ul.social {
	margin-left: 64px;
}
header#header ul.social a:hover {
	color: var(--secondary);
}
/*---------*/
/* SECTION */
/*---------*/
section {
	padding: 6vh 0;
	position: relative;
	z-index: 1;
}
section+section {
	z-index: 2;
}
section#section-1 {
	padding-top: calc(104px + 6vh);
}
section.section-bg {
	background: var(--secondaryLight);
}
/*---------*/
/* !TEASER */
/*---------*/
section.teaser {
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	overflow: hidden;
}
section.teaser div.flex {
	width: 100%;
}
/*
section.teaser::before {
	content: '';
	width: 200%;
	height: 200px;
	position: absolute;
	left: 50%;
	bottom: 0;
	z-index: 4;
	background: var(--white);
	transform: translateX(-50%) translateY(50%) rotate(-2deg);
}
*/
section.teaser::after {
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 3;
	background: rgba(4,105,133,0.72);
}
section.teaser.blank::after {
	display: none;
}
section.teaser div.flex {
	position: relative;
	z-index: 9;
	margin: 0;
}
section.teaser div.flex div.flexbox.assets {
	padding: 0;
	max-height: 80vh;
	display: flex;
	border-radius: var(--borderRadiusB) 0 0 var(--borderRadius);
	overflow: hidden;
}
section.teaser div.content {
	padding-top: 80px;
	padding-bottom: 80px;
}
section.teaser picture.bg,
section.teaser picture.bg img {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	object-fit: cover;
}
section.teaser * {
	color: var(--white);
}
section.teaser.blank * {
	color: var(--textColor);
}
section.teaser.blank h1,
section.teaser.blank h2 {
	color: var(--primary);
}
section.teaser h1 span,
section.teaser h2 span,
section.teaser.blank h1 span,
section.teaser.blank h2 span {
	display: inline-block;
	background: var(--secondary);
	border-radius: var(--borderRadius);
	color: var(--white);
	padding: 4px 8px;
}
section.teaser article p {
	font-size: 24px;
	line-height: 32px;
}
section.teaser.blank *.btn {
	color: var(--white);
}
@media ( max-width: 1240px ) {
	
}
@media ( max-width: 998px ) {
	
}
@media ( max-width: 768px ) {
	section.teaser div.content {
		padding-top: 40px;
		padding-bottom: 40px;
	}
}
@media ( max-width: 589px ) {
	
}
/*---------------*/
/* !SECTION TEXT */
/*---------------*/
section.text div.flex {
	margin: 0;
	align-content: stretch;
	align-items: stretch;
}
section.text div.text-left *.full{
	display: flex;
	justify-content: center;
}
section.text *.text-center div.content {
	margin: 0 auto;
	text-align: center;
	max-width: 900px;
}
section.text div.content {
	margin: 0;
	max-width: calc( var(--maxWidth ) / 2 );
}
section.text div.text-left div.content {
	padding-left: 36px;
	padding-right: 0;
}
section.text div.text-right div.content {
	padding-right: 36px;
	padding-left: 0;
}
section.text div.text-left *.full div.content {
	width: 100%;
	max-width: var(--maxWidth);
}
section.text div.text {
	display: flex;
	justify-content: flex-end;
	align-content: center;
	align-items: center;
}
section.text div.text-right div.text {
	justify-content: flex-start;
}
section.text div.assets {
	border-radius: var(--borderRadius);
	overflow: hidden;
	padding: 0;
	max-height: 100vh;
	min-height: 60vh;
	position: relative;
}
section.text div.text-right div.assets {
	order: -1;
}
section.text div.text-left div.assets {
	border-radius: var(--borderRadiusB) 0 0 var(--borderRadius);
}
section.text div.text-right div.assets {
	border-radius: 0 var(--borderRadiusB) var(--borderRadius) 0;
}
section.text div.assets::after {
	content: '';
	position: absolute;
	left: 50%;
	top: 50%;
	width: calc(100% - 32px);
	height: calc(100% - 32px);
	border: 1px solid var(--white);
	z-index: 6;
	transform: translateX(-50%) translateY(-50%);
	border-radius: calc(var(--borderRadiusB) - 1vw)  0 0 var(--borderRadius);
}
section.text div.text-right div.assets::after {
	border-radius: 0 calc(var(--borderRadiusB) - 1vw) var(--borderRadius) 0;
}
section.text div.assets picture {
	width: 100%;
	height: 100%;
	display: flex;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
}
section.text div.assets picture img {
	width: 100%;
	height: 100%;
	display: flex;
	position: absolute;
	left: 0;
	top: 0;
	object-fit: cover;
}
section.text div.text-left div.assets.videoWrapper {
	cursor: pointer;
}
section.text div.text-left div.assets.videoWrapper i {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
	font-size: 8vw;
	color: var(--white);
	z-index: 9;
}
section.text div.text-left div.assets.videoWrapper:hover i {
	color: var(--secondary);
}
section.text div.text-left div.assets.videoWrapper:hover::before {
	content: '';
	width: 100%;
	height: 100%;
	display: flex;
	position: absolute;
	left: 0;
	top: 0;
	background: var(--primary);
	opacity: 0.5;
	z-index: 4;
}
@media ( max-width: 1240px ) {
	
}
@media ( max-width: 998px ) {
	
}
@media ( max-width: 768px ) {
	section.text div.flex {
		align-content: center;
		align-items: center;
	}
	section.text div.assets {
		margin-bottom: 24px;
	}
	section.teaser div.flex div.flexbox.assets,
	section.text div.text-left div.assets,
	section.text div.text-right div.assets {
		max-width: calc(100% - 24px);
		margin-left: 24px;
		max-height: 40vh;
		min-height: 40vh;
	}
	section.text div.text-right div.assets {
		margin-left: 0;
	}
	section.text div.text-left div.content {
		padding-left: 0;
	}
	section.text div.text-right div.content {
		padding-right: 0;
	}
}
@media ( max-width: 589px ) {
	
}
/*--------*/
/* !STEPS */
/*--------*/
div.step {
	padding: 16px 0 16px 80px;
	position: relative;
}
div.step::before {
	counter-increment: steps;
	content: counter(steps);
	position: absolute;
	left: 0;
	top: 0;
	border: 2px solid var(--primary);
	width: 48px;
	height: 48px;
	border-radius: 50%;
	z-index: 3;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	color: var(--primary);
	background: var(--white);
	font-weight: 300;
	box-shadow: 0 4px 0 var(--white), 0px -4px 0 var(--white);
}
div.step::after {
	content: '';
	position: absolute;
	left: 28px;
	top: 0;
	transform: translateX(-50%);
	width: 2px;
	height: 100%;
	background: var(--primary);
	display: block;
	z-index: 1;
}
div.step h3 {
	color: var(--textColor);
	padding: 0 0 12px 0;
	transform: translateY(-4px);
	cursor: pointer;
}
div.step h3:hover {
	color: var(--secondary);
}
div.step.active h3:hover {
	color: var(--textColor);
}
div.step.open h3:hover {
	color: var(--primary);
	cursor: default;
}
div.step article {
	display: none;
}
div.step.active article,
div.step.open article {
	display: block;
}
div.step.active::before,
div.step.open::before {
	border-color: var(--secondary);
	color: var(--secondary);
}
div.step.active::after,
div.step.open::after {
	background: var(--secondary);
}
div.step+div.buttons {
	margin-top: 48px;
}
/*-------*/
/* !FAQS */
/*-------*/
div.faq {
	margin: 8px 0;
	border: 1px solid var(--light);
	border-radius: var(--borderRadius);
}
div.faq h3 {
	padding: 16px 40px 16px 24px;
	position: relative;
	color: var(--textColor);
	font-size: 16px;
	line-height: 24px;
	font-weight: 500;
	cursor: pointer;
}
div.faq h3:hover {
	color: var(--primary);
	background: var(--light);
}
div.faq h3::after {
	content: '\f0dd';
	font-family: "Font Awesome 5 Free"; 
	font-weight: 900; 
	position: absolute;
	right: 0;
	top: 0;
	height: 48px;
	width: 48px;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	color: var(--textColor);
}
div.faq.active h3::after {
	color: var(--secondary);
	transform: rotate(180deg);
}
div.faq article {
	padding: 24px 24px 0 24px;
	display: none;
}
/*--------*/
/* !ITEMS */
/*--------*/
section.boxen div.items {
	display: flex;
	flex-wrap: wrap;
	align-content: stretch;
	align-items: stretch;
	margin: 0 -24px;
	padding-top: 24px;
}
section.boxen div.items div.item {
	padding: 24px;
}
section.boxen div.items div.item div.item-content {
	height: 100%;
}
section.boxen div.items div.item div.item-content h3 {
	padding-bottom: 8px;
}
section.boxen div.items div.item div.item-content div.image {
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
}
section.boxen div.items div.item div.item-content div.image picture {
	display: block;
	margin: 0 auto 12px auto;
	position: relative;
}
section.boxen div.items div.item div.item-content div.image.yellow picture {
	background: var(--secondary);
}
section.boxen div.items div.item div.item-content div.image.blue picture {
	background: var(--primary);
}
section.boxen div.items div.item div.item-content div.image.round picture {
	border-radius: 50%;
}
section.boxen div.items div.item div.item-content div.image.round.corners picture {
	border-radius: var(--borderRadius);
}
section.boxen div.items div.item div.item-content div.image.icon picture {
	width: 80px;
	height: 80px;
}
section.boxen div.items div.item div.item-content div.image.photo picture {
	width: 100%;
	height: 200px;
}
section.boxen div.items div.item div.item-content div.image picture img {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	object-fit: contain;
	object-position: center;
}
section.boxen div.items div.item div.item-content div.image.icon picture img {
	width: 80%;
	height: 80%;
	left: 10%;
	top: 10%;
	filter: brightness(0) invert(1);
}
@media ( max-width: 1240px ) {
	
}
@media ( max-width: 998px ) {
	
}
@media ( max-width: 768px ) {
	section.boxen div.items {
		margin: 0;
	}
	section.boxen div.items div.item {
		max-width: 50% !important;
		min-width: 50% !important;
		width: 50% !important;
	}	
	
}
@media ( max-width: 589px ) {
	section.boxen div.items div.item {
		max-width: 100% !important;
		min-width: 100% !important;
		width: 100% !important;
	}	
}
/*-------------*/
/* !SINGLE BOX */
/*-------------*/
section.boxen div.singlebox div.item {
	padding: 12px;
}
section.boxen div.singlebox div.item div.item-content {
	padding: 24px 24px 0 24px;
	background: var(--white);
	border-radius: var(--borderRadius);
	box-shadow: var(--boxShadow);
}
section.boxen div.singlebox div.item div.item-content div.image.icon picture img {
	filter: none;
}
/*------------*/
/* !BOXEN BOX */
/*------------*/
section.boxen div.box {
	border-radius: var(--borderRadius);
	box-shadow: var(--boxShadow);
	padding: 48px 24px 24px 24px;
	background: var(--white);
	max-width: calc( var(--maxWidth) - 48px );
}
section.boxen.text-center {
	text-align: center;
}
section.boxen.text-right {
	text-align: right;
}
/*------------------*/
/* !BOXEN BOX CLEAN */
/*------------------*/
section.boxen div.box.clean {
	border-radius: 0;
	box-shadow: none;
	background: transparent;
	max-width: var(--maxWidth);
	padding: 0;
}
/*-------------*/
/* !BOXEN FULL */
/*-------------*/
section.boxen div.full {
	max-width: 100%;
	padding: 0;
	background: var(--white);
}
section.boxen div.full div.items {
	padding: 12px;
	margin: 0;
}
section.boxen div.full div.items div.item div.item-content {
	padding: 12px;
	border-radius: var(--borderRadius);
	box-shadow: var(--boxShadow);
	background: var(--white);
}
/*---------------*/
/* !BOXEN SWIPER */
/*---------------*/
section.boxen div.slider div.swiper {
	overflow: hidden;
	margin-top: 24px;
	padding-bottom: 80px;
}
section.boxen div.slider div.swiper div.swiper-wrapper {
	align-content: stretch;
	align-items: stretch;
}
section.boxen div.slider div.swiper div.swiper-slide {
	padding: 24px;
	height: auto;
}
section.boxen div.slider div.swiper div.swiper-slide div.item-content {
	padding: 12px;
	border-radius: var(--borderRadius);
	box-shadow: var(--boxShadow);
	background: var(--white);
	height: 100%;
}
/*------*/
/* !CTA */
/*------*/
section.call {
	background: var(--secondary);
	border-left: 24px solid var(--white);
	border-right: 24px solid var(--white);
}
section.call div.content {
	display: flex;
	flex-wrap: nowrap;
	align-content: center;
	align-items: center;
	justify-content: space-between;
}
section.call div.content * {
	color: var(--white);
}
section.call div.content p {
	font-size: 20px;
	line-height: 28px;
}
section.call div.content div.buttons {
	min-width: 300px;
	justify-content: flex-end;
}
@media ( max-width: 1240px ) {
	
}
@media ( max-width: 998px ) {
	
}
@media ( max-width: 768px ) {
	section.call div.content {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-content: center;
		align-items: center;
		text-align: center;
	}
	section.call div.content div.buttons {
		min-width: initial;
		justify-content: center;
	}
}
@media ( max-width: 589px ) {
	
}
/*---------*/
/* !SINGLE */
/*---------*/
section.single-overview {
	padding-top: 0;
}
section.single div.content {
	margin: 0 auto;
	max-width: 800px;
}
/*----------------*/
/* !FORM REQUESTS */
/*----------------*/
div#requestForm {
	display: flex;
	gap: 24px;
	flex-direction: column;
}
form#requestForm {
	margin-top: 24px;
	padding: 0 12px;
}
form#requestForm div.flex {
	width: 100%;
}
#requestForm *.box {
	border-radius: var(--borderRadius);
	overflow: hidden;
	width: 100%;
	border: 1px solid var(--grey);
	padding: 12px;
	display: flex;
	flex-wrap: wrap;
}
#requestForm *.box ul {
	width: 100%;
	padding: 24px;
}
#requestForm *.box h2 {
	background: var(--primary);
	color: var(--white);
	border-bottom: 2px solid var(--secondary);
	padding: 0;
}
#requestForm *.box *.contentBox input {
	padding: 8px 16px;
}
#requestForm *.box textarea.full {
	height: 200px;
}
#requestForm *.box div.line {
	width: 100%;
	display: block;
}
#requestForm *.box *.contentBox {
	justify-content: flex-start;
	
}
#requestForm *.box sup {
	margin: 0 8px;
	font-size: 24px;
}
#requestForm *.box div.line {
	padding-bottom: 24px;
}
#requestForm *.box div.line.hr {
	padding-bottom: 0;
}
#requestForm *.box p.desc {
	margin: 0;
	padding: 0 0 8px 0;
}
#requestForm *.box sup {
	color: var(--error);
}
#requestForm *.box h2 {
	max-width: inherit;
	margin: -12px -24px 12px -24px;
	padding: 12px 24px;
	font-size: 24px;
	line-height: 32px;
	width: calc(100% + 48px);
}
#requestForm *.box h2::before,
#requestForm *.box h2::after {
	display: none;
}
#requestForm *.box *.full {
	width: 100%;
	max-width: 400px;
}
#requestForm *.box textarea.full {
	max-width: 100%;
}
#requestForm *.box *.price.small {
	width: 100%;
	max-width: 96px;
}
#requestForm *.box hr {
	margin: 0 0 12px 0 !important;
	background-color: var(--grey) !important;
	height: 1px !important;
	width: 100% !important;
}
#requestForm *.box *.contentBox {
	display: flex;
	flex-wrap: nowrap;
	align-content: center;
	align-items: center;
}
#requestForm *.box *.contentBox *.beforeElement {
	padding-right: 8px;
}
#requestForm *.box *.contentBox *.afterElement {
	padding-left: 8px;
}
#requestForm *.box *.contentBox *.files {
	padding: 12px 24px;
	border: 2px dashed var(--grey);
	width: 100%;
}
#requestForm *.box *.contentBox.radio,
#requestForm *.box *.contentBox.checkbox {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -8px;
}
#requestForm *.box *.contentBox.radio label,
#requestForm *.box *.contentBox.checkbox label {
	margin: 4px 8px;
}
#requestForm *.box div.uploads {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	width: 100%;
	padding: 12px;
	gap: 12px;
}
#requestForm *.box div.uploads *.upload {
	display: flex;
	flex-direction: column;
	width: calc( 20% - 8px);
	min-width: calc( 20% - 8px);
	max-width: calc( 20% - 8px);
	gap: 8px;
	background: var(--light);
	border-radius: var(--borderRadius);
	padding: 8px;
	font-size: 12px;
	line-height: 16px;
	text-align: center;
	position: relative;
	overflow-wrap: break-word;
}
#requestForm *.box div.uploads *.upload img {
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	border-radius: var(--borderRadius);
	display: block;
}
#requestForm *.box div.uploads *.upload div.file {
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
}
#requestForm *.box div.uploads *.upload div.file i {
	font-size: 24px;
}
#requestForm *.box div.uploads *.upload div.delete {
	position: absolute;
	right: 0;
	top: 0;
	transform: translateX(50%) translateY(-50%);
	border-radius: 50%;
	background: var(--primaryDark);
	color: var(--white);
	box-shadow: var(--boxShadow);
	width: 24px;
	height: 24px;
	display: none;
	justify-content: center;
	align-content: center;
	align-items: center;
	cursor: pointer;
}
#requestForm *.box div.uploads *.upload:hover div.delete {
	display: flex;
}
#requestForm *.box div.uploads *.upload div.delete:hover {
	background: var(--error);
}
@media ( max-width: 1240px ) {
	
}
@media ( max-width: 998px ) {
	
	#requestForm *.box div.uploads *.upload {
		width: calc( 25% - 8px);
		min-width: calc( 25% - 8px);
		max-width: calc( 25% - 8px);
	}
	
}
@media ( max-width: 768px ) {
	
	#requestForm *.box div.uploads *.upload {
		width: calc( 33.3% - 8px);
		min-width: calc( 33.3% - 8px);
		max-width: calc( 33.3% - 8px);
	}
}
@media ( max-width: 589px ) {
	
	#requestForm *.box div.uploads *.upload {
		width: calc( 50% - 8px);
		min-width: calc( 50% - 8px);
		max-width: calc( 50% - 8px);
	}
	
}
/*----------*/
/* !BLUE BOX */
/*----------*/
div.bluBox {
	background: var(--secondaryLight);
	padding: 24px;
	text-align: center;
}
/*---------------*/
/* !HOTEL SWIPER */
/*---------------*/
div.hotel_swiper {
	width: 100%;
	position: relative;
	height: 48vh;
}
div.hotel_swiper div.swiper {
	width: 100vw;
	position: absolute;
	left: 50%;
	top: 0;
	padding: 24px 0;
	overflow: hidden;
	background: var(--light);
	height: 100%;
	transform: translateX(-50%);
}
div.hotel_swiper div.swiper div.swiper-slide {
	width: 60%;
	border-radius: var(--borderRadius);
	position: relative;
	overflow: hidden;
	opacity: 0.6;
}
div.hotel_swiper div.swiper div.swiper-slide.swiper-slide-active {
	opacity: 1
}
div.hotel_swiper div.swiper div.swiper-slide img {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	object-fit: cover;
	z-index: 1;
}
div.hotel_swiper div.swiper div.swiper-slide div.title {
	width: 100%;
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 4;
	padding: 64px 24px 16px 24px;
	background: linear-gradient(to bottom,  rgba(0,45,71,0) 0%,rgba(0,45,71,0.82) 72%,rgba(0,45,71,1) 100%);
	color: var(--white);
	font-size: 12px;
	font-weight: 600;
}
/*----------------*/
/* !HOTEL ACTIONS */
/*----------------*/
section.single-overview div.hotel_datas {
	display: flex;
	flex-direction: column;
	justify-content: stretch;
	align-content: stretch;
	gap: 24px;
	padding-top: 24px;
}
section.single-overview div.hotel_datas h1 {
	padding: 16px 0;
}
/*--------*/
/* FOOTER */
/*--------*/
footer {
	border-top: 24px solid var(--white);
	background: var(--primary);
	padding-top: 24px;
	max-width: 100%;
}
footer div.content {
	padding-bottom: 24px;
}
footer * {
	color: var(--white);
}
footer a,
footer a * {
	color: var(--white);
}
footer p {
	padding: 0 0 8px 0;
}
footer a:hover,
footer a:hover * {
	color: var(--secondary);
}
footer div.flex {
	align-content: center;
	align-items: center;
}
footer picture.logo img {
	filter: brightness(0) invert(1);
	height: 88px;
	width: auto;
}
footer div.contact {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}
footer div.contact a {
	margin: 0 0 8px 0;
	width: 100%;
}
footer div.contact a:hover {
	color: var(--secondary);
}
footer div.contact a i{
	margin-right: 4px;
}
footer ul.social {
	width: 100%;
	text-align: right;
	margin-bottom: 16px;
	justify-content: flex-end;
}
footer h4 {
	font-size: 16px;
	line-height: 24px;
}
footer ul#menu-footer {
	padding: 0;
	margin: 0 -16px;
	display: flex;
	justify-content: flex-start;
}
footer ul#menu-footer li {
	padding: 0 16px;
	list-style: none;
}
footer ul#menu-footer li a {
	font-size: 12px;
}
footer ul.social li a {
	background: var(--secondary);
	border-radius: var(--borderRadius);
	width: 40px;
	height: 40px;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	font-size: 20px;
}
footer ul.social li a:hover {
	background: var(--primaryDark);
	color: var(--secondary);
}
@media ( max-width: 1240px ) {
	
}
@media ( max-width: 998px ) {
	
}
@media ( max-width: 768px ) {
	footer ul.social,
	footer ul#menu-footer,
	footer *.flex.flexEnd, 
	footer *.flexbox.flexEnd  {
		justify-content: center;
	}
}
@media ( max-width: 589px ) {
	footer div.contact {
		text-align: center;
		justify-content: center;
	}
	footer p {
		text-align: center;
	}
	
}
/*------------*/
/* !SUBFOOTER */
/*------------*/
div.subfooter {
	background: var(--primaryDark);
	border-bottom: 2px solid var(--secondary);
	padding: 16px 0;
	overflow: hidden;
}
footer div.subfooter div.content {
	padding: 0;
}
div.subfooter p {
	padding: 0;
	color: var(--white);
	opacity: 0.8;
	font-size: 12px;
}
/*----------*/
/* !SECTION */
/*----------*/
.ti-footer {
	display: none;
}
/*-------------*/
/* !DATA HOVER */
/*-------------*/
div.data-hover-overlayer {
	position: fixed;
	z-index: 999;
	background: var(--primaryDark);
	color: var(--white);
	border-radius: var(--borderRadius);
	padding: 4px 8px;
	font-size: 10px;
	line-height: 14px;
	transform: translateX(-50%);
}