/* @override
	https://wogeno.net/wp/wp-content/themes/wogeno/style.css?*
	https://wogeno.net/wp/wp-content/themes/wogeno_v2/style.css */


/*
Theme Name: WOGENO eG - ohne Polylang
Description:
Version: 2.00
Author: ZH2
*/




/*	IMPORTS
-------------------------------------------------------------------------------*/


@import url("css/icons.css");
@import url("css/columns.css");
@import url("css/swiper.min.css");



/* @group WEBFONTS */

/*	WEBFONTS
-------------------------------------------------------------------------------*/


/* bitter-regular - latin */
@font-face {
  font-family: 'Bitter';
  font-style: normal;
  font-weight: 400;
  src: local(''),
       url('webfonts/bitter-v19-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('webfonts/bitter-v19-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* bitter-700 - latin */
@font-face {
  font-family: 'Bitter';
  font-style: normal;
  font-weight: 700;
  src: local(''),
       url('webfonts/bitter-v19-latin-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('webfonts/bitter-v19-latin-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* bitter-italic - latin */
@font-face {
  font-family: 'Bitter';
  font-style: italic;
  font-weight: 400;
  src: local(''),
       url('webfonts/bitter-v19-latin-italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('webfonts/bitter-v19-latin-italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* bitter-700italic - latin */
@font-face {
  font-family: 'Bitter';
  font-style: italic;
  font-weight: 700;
  src: local(''),
       url('webfonts/bitter-v19-latin-700italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('webfonts/bitter-v19-latin-700italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}



/* @end */

/* @group RESET */

/*	RESET
-------------------------------------------------------------------------------*/


/* more-intuitive box-sizing model */
*, *::before, *::after {
  box-sizing: border-box;
}

/* Remove default margin */
* {  margin: 0; }

/* Allow percentage-based heights in the application */
html, body { height: 100%; }

/* Improve media defaults */
img, picture, video, canvas, svg, iframe, object {
  display: block;
  max-width: 100%;
  height:auto;
}

/* Remove built-in form typography styles */
input, button, textarea, select {
  font: inherit;
 	AUS_outline: none;
}

/* Avoid text overflows */
p, h1, h2, h3, h4, h5, h6 {
	overflow-wrap: break-word;
}

/* tables still need cellspacing="0" in the markup */
table { border-collapse: collapse; border-spacing: 0;}


input { /* remove top input shadow */
-webkit-appearance: none;
-moz-appearance: none;
}

/* standardize any monospaced elements */
pre, code, kbd, samp { font-family: monospace, sans-serif;}

/* hand cursor on clickable elements */
label,
input[type=button],
input[type=submit],
button {cursor: pointer;}

/* clear floats */
.clearfix:before, .clearfix:after { content: "\0020"; display: table; height: 0; }
.clearfix:after { clear: both; }

/* prevent flickering on touch */
* {	-webkit-tap-highlight-color:transparent; }

 /* subscript and superscript */
sub { vertical-align: sub; font-size: 70%; line-height: 0; }
sup { vertical-align: super; font-size: 70%; line-height: 0; }

/* clear floats */
.clear { clear: both; }



/* @end */


/* @group VARS */

/*	VARS
-------------------------------------------------------------------------------*/


/* Color Info


WOG red			#B7005C		rgba(183, 0, 92, 1)
WOG yellow		#DEDC00		rgba(222, 220, 0, 1)
WOG text		#434B4F

WOG red dark 1	#94004B
WOG red dark 2	#7A003B

*/


 :root {
	--base-font-size: 17px;
	--base-line-height: 1.7;



	--text-color: #434B4F;
	--link-color: #B7005C;
	--link-color-hover: #7A003B;

	--border-color: #C7C9CB;

	--primary-color: #B7005C;
	--primary-bg: #F5F6F6;

	--secondary-color: #DEDC00;
	--secondary-bg: #DEDC00;

	--text-gray: #757575; 

	--font-sans: 'Bitter', sans-serif;
	--font-script: 'ganache', sans-serif;

	--text-small: 0.9rem;

	--container-width: 1200px;
	--aligndefault-width: 820px;
	--alignsemiwide-width: 980px;

	--container-padding: 30px;

	--main-padding-top: 4.5rem;
	--main-padding-bottom: 7rem;

	--vspace: 1.5rem; /* the space */
	--vspace-l: calc(var(--vspace) * 1.5);
	--vspace-xl: calc(var(--vspace) * 3.0);
	--vspace-xxl: calc(var(--vspace) * 4.0);

	--block-vspace: 3rem;

	--box-padding: 2rem;
	
	--header-height: 250px;
 }

 @media screen and (max-width: 980px) {
 	:root {
 			--header-height: 140px;
 	}
 }


 @media screen and (max-width: 600px) {
	:root {
		--base-font-size: 17px;

		--container-padding: 20px;
		--main-padding-top: 3rem;
		--main-padding-bottom: 5rem;

		--box-padding: 1.5rem;

		--vspace-xl: calc(var(--vspace) * 2.0);
		--header-height: 100px;

	}
}

 @media screen and (max-width: 360px) {
	:root {
		--base-font-size: 16px;
	}
}




/* @end */


/* @group GENERAL */

/* GENERAL
---------------------------------------------------------------------------------*/


html {
	height: 100%;
	scroll-behavior: smooth;

	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;

	font-family: var(--font-sans);
	font-size: var(--base-font-size);
	line-height: var(--base-line-height);
	color: var(--text-color);
}

body {
	background: #FFF;
}


a {
	position: relative;
	color: var(--link-color);
	text-decoration: none;
}

a, input {
	transition: all 200ms ease;
}

a:visited {
}

a:active {
}

a:hover {
	color: var(--link-color-hover);
	
	AUS_text-underline-offset: .1em;
	AUS_text-decoration: underline;
}

img {
    transition: all 300ms ease;
}

a:hover img {
	transition: all 300ms ease;
}

.main > *:first-child,
.stack > *:first-child {
	margin-top: 0;
}


/* TYPOGRAPHY
---------------------------------------------------------------------------------*/


h1 {
	font-size: 40px;
	font-size: 2.5rem;
	font-weight: normal;
	line-height: 1.2;
	color: var(--primary-color);
	margin-top: var(--vspace);
	margin-bottom: calc(var(--vspace) + 2.5rem);

}

h2 {
	font-size: 36px;
	font-size: 2.1rem;
	font-weight: normal;
	line-height: 1.3;
	margin-top: calc(var(--vspace) + 1.5rem);
}

main h2:first-child {
	margin-bottom: calc(var(--vspace) + 2.0rem);
}

h3 {
	font-size: 22px;
	font-size: 1.3rem;
	line-height: 1.5;
	margin-top: calc(var(--vspace) + 0.7rem);
	margin-bottom: -0.2rem;
}

h4 {
	line-height: 1.4;
	font-size: 1.0rem;
	color: var(--text-gray);
	text-transform: uppercase;
	letter-spacing: .5px;
	margin-top: calc(var(--vspace) + 1.0rem);
}


p {
	margin-top: var(--vspace);
}


hr {
	position: relative;
	display: block;
	height: 1px;
	border: 0;
	background: transparent;
	border-bottom: 1px solid var(--border-color);
	margin: 3rem 0;
}



@media screen and (max-width: 980px) {

}


@media screen and (max-width: 768px) {

}


@media screen and (max-width: 600px) {
	h1 {
		font-size: 36px;
		margin-bottom: calc(var(--vspace) + 1.0rem);
	}

	h2 {
		font-size: 28px;
	}
	
	main h2:first-child {
	margin-bottom: calc(var(--vspace) + 1rem);
	}

	h3 {
		font-size: 22px;
	}

}


@media screen and (max-width: 360px) {

}


/* LAYOUT
----------------------------------------------------------------------------------*/


/* # Container */

.page-wrap {
	position: relative;
	min-height: 100%;
	height: auto !important;
	height: 100%;
	overflow: hidden;
	/*sticky footer*/
	display: flex;
	flex-direction: column;
}


.container,
.container-wide,
.container-fluid {
	position: relative;
	max-width: var(--container-width);
	margin: 0 auto;
	padding: 0 var(--container-padding);
}

.container-wide {
	max-width: 100%;
	padding: 0 50px;
}

.container-fluid {
	max-width: none;
	width: 100%;
	padding: 0;
}


@media screen and (max-width: 980px) {
	.container-wide {
		padding: 0 var(--container-padding);
	}
}


@media screen and (max-width: 360px) {
html, body {
	--container-padding: 15px;
}

}

/* @end */



/* @group ANNOUNCEMENT BAR */

/* ANNOUNCEMENT BAR
--------------------------------------------------------------------------------- */

.announcement-bar {
	position: relative;
	z-index: 100;
	padding: 20px 0;
	background: var(--primary-color);
	color: #FFF;
	box-shadow: 0px 0px 30px -10px rgba(0,0,0, .2);
}

.announcement-bar.is-hidden {
	display: none;
}

.announcement-bar a {
	color: #FFF;
	text-decoration: underline;
}

.announcement-bar a:hover {
	opacity: .7;
}

.announcement-bar__content {
	padding: 0 80px;
	text-align: center;
	font-size: var(--text-small);
}

.announcement-bar__content *{
	margin-top: 0;
}

.announcement-bar__close {
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	border: none;
	background: none;
	width: 35px;
	height: 35px;
	outline: none;
	overflow: hidden;
	AUS_background: rgba(0,0,0, .1);
	border-radius: 100%;
	border: 0px solid #333;
}

.announcement-bar__close svg {
	margin: 0 auto;
	width: 15px;
    height: 15px;
}

.announcement-bar__close svg path {
	fill: none;
    stroke: #FFF;
	stroke-width: 1.3;
}


@media screen and (max-width: 980px) {
	.announcement-bar__content {
		padding: 0 60px;
	}
	
	.announcement-bar__close {
		right: 10px;
	}	
}

/* @end */


/* @group HEADER */

/* HEADER
--------------------------------------------------------------------------------- */


#header {
	position: relative;
	height: var(--header-height);
	border-bottom: 1px solid #F5F6F6;
	background: #FFF url(images/header-bg.svg) repeat-x left center;
	background-size: cover;
}

#header > .container {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.header-top {
	position: absolute;
	top: 0;
	left: 0;
	height: 60px;
	width: 100%;
	padding: 0 var(--container-padding);
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

.lang-menu {
	display: flex;
	height: 100%;
	align-items: center;
}

.lang-menu li {
	height: 100%;
}

.lang-menu a {
	position: relative;
	display: flex;
	padding: 10px 15px;
	height: 100%;
	align-items: center;
	text-transform: uppercase;
	font-weight: bold;
	color: #A1A5A7;
	border: 0px solid #333;
}

.lang-menu a:hover {
	color: var(--primary-color);
}

.lang-menu a::after { /*triangle*/
	content: "";
	position: absolute;
	top: -1px;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 9px 9px 0 9px;
	border-color: var(--primary-color) transparent transparent transparent;
	display: none;
}

.lang-menu .current-lang a {
	color: var(--primary-color);
}

.lang-menu .current-lang a::after {
	display: block;
}

.flag-menu {
	display: flex;
	gap: 30px;
}

.flag-menu a {
	display: block;
	width: 30px;
	height: 20px;
	background: transparent url(images/flag-cs.svg) no-repeat left top;
	background-size: contain;
	border-radius: 1px;
	overflow: hidden;
	box-shadow: 0px 0px 20px -3px rgba(0,0,0, .25);
	outline-offset: 4px;
}


/* Logo */


.logo {
	position: relative;
	margin-top: 62px;
	margin-left: -85px;
	flex: 0 0 auto;
	width: 310px;
    transition: all 0.3s ease;
}

.logo a {
	display: block;
	AUS_background: transparent url(images/logo-wogeno.svg) no-repeat left top;
}

.logo img {
	display: block;
	width: 100%;
	height: auto;
}


.logo svg {
	display: block;
	width: 100%;
	height: 100%;
	
	animation-fill-mode: forwards;
	animation-timing-function: ease-out;
	animation-delay: 0ms;
}


/* Logo Ani  */


.w-top,
.w-bottom,
.w-type {
   transition: all 250ms ease;
}

.logo a:hover .w-top {
   AUS_transform: translateY(9%);
}

.logo a:hover .w-bottom {
   AUS_transform: translateY(-9%);
}

.start .w-top {
  animation: wogtop 1800ms;	
  transform-origin: center;
}

.start .w-bottom {
  animation: wogbottom 1800ms;	
  transform-origin: center;
}


@keyframes wogtop {
  0%  {
    opacity: 0;
    transform: translateY(30%) skewX(0deg) rotateX(100deg);
  }
  100% {
     opacity: 1;
     transform: translateY(0) skewX(0) rotateX(0);
 }
}

@keyframes wogbottom {
  0%   {
     opacity: 0;
     transform: translateY(-30%) skewX(0deg) rotateX(100deg);
  }
  100% {
     opacity: 1;
     transform: translateY(0) skewX(0) rotateX(0);
 }
}




@media screen and (max-width: 1350px) {
	.logo {
		margin-left: 0;
	}
}

@media screen and (max-width: 980px) {
	.header-top {
		display: none;
	}

	#header > .container {
		justify-content: center;
	}

	.logo {
		width: 260px;
		margin: 0;
	}
}

@media screen and (max-width: 600px) {
	.logo {
		width: 175px;
	}

}




/* Google Translate iframe */

iframe#gt-nvframe {
	margin: 0;
}


/* hide lang menu when Google Translate is active */

html:lang(en) {
}

html[class*="translated"] .lang-menu {
	display: none;
}




/* @end */



/* @group SEARCH */

/* Search */

.search-wrap {
	position: relative;
	overflow: visible;
}


button.search-trigger {
	border: none;
	overflow: hidden;
	padding: 10px 5px;
	font-size: 28px;
	line-height: 100%;
	margin: 0 -5px 0 20px;
	color: var(--primary-color);
	background: transparent;
}

button.search-trigger:hover {
	color: var(--link-color-hover);
}

button.search-trigger.open {
}

.site-search  {
	position: absolute;
	top: 100%;
	right: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	min-width: 28ch;
	opacity: 0;
	margin-top: -10px;
	visibility: hidden;
	transition: all 250ms ease-in-out;
}

.search-open .site-search, 
AUS_.search-wrap:focus-within .site-search {
	visibility: visible;
	opacity: 1;
	margin-top: 0;
}


.searchform {
	position: relative;
	width: 100%;
	max-width: 600px;
}

.searchform input.s {
	width: 100%;
	height: 3.3rem;
	padding: 20px;
	padding-right: 3rem;
	background: #FFF;
	font-size: 1.1rem;
	line-height: 100%;
	color: var(--text-color);
	border-radius: 10px;
	border: 1px solid var(--border-color);
	box-shadow: 0px 5px 25px -5px rgba(0,0,0,.2);
}

.searchform input.s:focus {
	box-shadow: inset 0px 3px 15px -8px rgba(0,0,0, .2);
}

.searchform i {
	position: absolute;
	top: 0;
	right: 0;
	width: 3rem;
	text-align: center;
	font-size: 1.4rem;
	color: var(--primary-color);
}




/* @end */




/* @group FAVORITES */

/* FAVORITES (Merkzettel)
--------------------------------------------------------------------------------- */

/* via my-favorites plugin*/

/* == favorites menu */

.favorites-menu {
	height: 100%;
}

.favorites-menu .ccc-favorite-post-count {
	margin: 0 0 0 30px;
}

.favorites-menu .ccc-favorite-post-count a {
	display: flex;
	align-items: center;
	padding: 16px 30px;
	border-radius: 50px;
	border-radius: 0 0 10px 10px;
	background: var(--primary-bg);
	transition: none;
	box-shadow: 0px 3px 20px 0px rgba(255,255,255, 1);
}

.favorites-menu .ccc-favorite-post-count a:hover {
}

.favorites-menu .ccc-favorite-post-count a::before { /*icon overwrite */
	content: "\e81e";
	font-family: 'icons'!important;
	font-size: 1.3rem;
	margin: -4px 5px 0 10px;
}

.favorites-menu .ccc-favorite-post-count .num {
	font-size: 1rem;
}

.favorites-menu .ccc-favorite-post-count .text {
	display: block;
	font-size: 1rem;
	letter-spacing: .2px;
	font-weight: bold;
	color: var(--text-gray);
	order: -1;
}


.mob-favorites-menu {
	display: flex;
	align-items: flex-end;
	padding-top: 20px;
}

.mob-favorites-menu .ccc-favorite-post-count {
}

.mob-favorites-menu .ccc-favorite-post-count a {
	display: flex;
	align-items: center;
	padding: 15px 20px;
	border-radius: 50px;
	margin-bottom: -10px;
	background: var(--primary-bg);
	font-size: 22px;
	line-height: 1;
}

.mob-favorites-menu .ccc-favorite-post-count a::before { /*icon overwrite */
	content: "\e81e";
	font-family: 'icons'!important;
	font-size: 1.3rem;
	margin: -0.15rem 5px 0 0;
}


/* == favorites button */

.ccc-favorite-post-toggle {
}

.ccc-favorite-post-toggle a.ccc-favorite-post-toggle-button {
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	color: inherit;
	height: 100%;
	width: 100%;
	border-radius: 100%;
}

.ccc-favorite-post-toggle a.ccc-favorite-post-toggle-button.save {
	color: var(--link-color);
	transition: none;
}


.ccc-favorite-post-toggle a.ccc-favorite-post-toggle-button::before { /*icon overwrite*/
	content: "\e81e"!important;
	font-family: 'icons'!important;
	font-size: 24px;
	margin-top: -2px;
}

.ccc-favorite-post-toggle a.ccc-favorite-post-toggle-button.save::before { /*ani effect*/
	box-shadow: 0 0 0 0 rgba(0, 0, 0, 1);
	transform: scale(1);
	animation: star-pulse 400ms;
}

@keyframes star-pulse {
	0% {
		transform: scale(1);
	}
	50% {
		transform: scale(2.5);
	}
	100% {
		transform: scale(1);
	}
}

.ccc-favorite-post-toggle a.ccc-favorite-post-toggle-button::after { /*icon for move-up ani */
	content: "\e81e";
	font-family: 'icons';
	font-size: 24px;
	margin-top: -1px;
	position: absolute;
	color: var(--link-color);
	opacity: 0;
}


.ccc-favorite-post-toggle a.ccc-favorite-post-toggle-button.save::after { /*ani effect*/
	animation: star-move-up 2000ms;
}

.ccc-favorite-post-toggle a.ccc-favorite-post-toggle-button.active {
}

.ccc-favorite-post-toggle a.ccc-favorite-post-toggle-button.no-ani::after { 
	animation: none;
}

#ccc-my_favorite-list .ccc-favorite-post-toggle a.ccc-favorite-post-toggle-button.save::after {
	animation: none; /*no ani on merkzettel page*/
}

@keyframes star-move-up {
	0% {
		transform: translate(0,0) scale(1);
		opacity: 1;
	}
	100% {
		transform: translate(10vw,-100vh) scale(2);
	}
}





.ccc-favorite-post-toggle-button .text {
	margin: 0 0 0 8px;
}



/* == favorites button in property card */

.property-card__footer .ccc-favorite-post-toggle {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.property-card__footer .ccc-favorite-post-toggle-button {
	display: contents;
}

.property-card__footer .ccc-favorite-post-toggle-button .text {
	display: none;
}


/* == favorites list (merkzettel seite) */

#ccc-my_favorite-list {
}

.favorites-header {
	display: flex;
	justify-content: space-between;
	margin-bottom: var(--vspace-l);
}

.favorites-header  #ccc-favorite-count { 
}

.favorites-header .ccc-delete-all {
}

.favorites-header .ccc-delete-all a {
}

.favorites-list {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 30px;
	margin-bottom: 30px;
}

@media screen and (max-width: 980px) {
	.favorites-list {
		grid-template-columns: 1fr 1fr;
	}
}

@media screen and (max-width: 600px) {
	.favorites-list {
		grid-template-columns: 1fr;
	}
}

/* @end */


/* @group MENU */

/* MENU
--------------------------------------------------------------------------------- */


#nav {
	position: absolute;
	top: 175px;
	left: 0;
	width: 100%;
	padding: 0 var(--container-padding);
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	transition: all 300ms ease;
}


#nav ul {
	display: flex;
	flex-wrap: nowrap;
}

#nav ul li {
	position: relative;
	margin: 0 40px 0 0;
	border-bottom: none;
}

#nav > ul li:last-child {
	margin-right: 0;
	padding-right: 0;
}


#nav ul li a {
	position: relative;
	margin: 0;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: .2px;
	display: block;
	padding: 0rem 0rem;
	text-transform: uppercase;
}

#nav ul li:hover > a {
}

#nav ul li a::after {
	content: "";
	position: absolute;
	bottom: -1px;
	left: 50%;
	transform: translateX(-50%);
	width: 70%;
	height: 2px;
	background: var(--primary-color);
	opacity: 0;
	transition: all 300ms ease;
}

#nav ul li a:hover::after,
#nav ul li.active > a::after {
	opacity: 1;
	width: 100%;
}


#nav ul li.current-menu-item > a {
}

#nav ul li a:hover {
	color: var(--link-color-hover);
	text-decoration: none;
}

#nav ul li.menu-item-has-children.active > a {
}

#nav ul li.current_page_parent a:hover,
#nav ul li.current_page_parent:hover a,
#nav ul li.current_page_item:hover a {
}

/* 2nd level */


.sub-menu-wrap {
	display: block;
	position: absolute;
	min-width: 500px;
	top: 75px;
	margin-top: -5px;
	padding: 40px 0 50px 0;
	z-index: 20;
	color: #FFF;
	background: var(--primary-color);
	opacity: 0;
	visibility: hidden;
}

.sub-menu-wrap::before { /* submenu BG*/
	content: "";
	position: absolute;
	top: 0;
	left: -100vw;
	height: 100%;
	width: 200vw;
	background: var(--primary-color);
	z-index: -1;
	box-shadow: 0px 10px 20px -10px rgba(0,0,0, .5);
}

.sub-menu-wrap::after { /* triangle */
	content: "";
	position: absolute;
	top: -1px;
	left: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 11px 11px 0 11px;
	border-color: #FFF transparent transparent transparent;
}

#nav ul .active > .sub-menu-wrap {  /*js class toggle*/
	opacity: 1;
	visibility: visible;
	margin-top: 0;
	transition: all 400ms ease;
}

#nav ul ul {
	display: block;
	margin: 0 0 0 0;
	padding: 0;
	transition: all 300ms ease;
}


/* align last menu item to the right to avoid off screen position*/

#nav ul li:last-child ul {
	left: auto;
	right: 0;
}

#nav ul ul li {
}


#nav ul ul li a {
	display: block;
	color: #FFF;
	text-transform: none;
	font-size: 17px;
	line-height: 1.5;
	padding: 6px 0;
}

#nav ul ul li a:hover {
	color: rgba(255,255,255, .5);
}

#nav ul ul li a:after {
	display: none;
}


#nav ul ul li.menu-item-has-children > a {
}

#nav ul ul li.menu-item-has-children > a:hover {
}

/* 3rd level */

.sub-menu-wrap .sub-menu-wrap {
	display: contents;
}

#nav ul ul ul {
	visibility: visible;
	padding-left: 20px;
	opacity: .6;
}




.featured-menu {
	position: absolute;
	top: 50%;
	top: 0;
	right: var(--container-padding);
	transform: translateY(-53%);
}

.featured-menu a {
	display: block;
	font-size: 18px;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: .3px;
	padding: 13px 40px;
	color: var(--primary-color);
	background: var(--secondary-color);
	border-radius: 60px;
	outline-offset: 2px;
}

.featured-menu a:hover {
	background: rgba(222, 220, 0, .6);
}

@media screen and (max-width: 1350px) {
	#nav {
		padding-left: 115px;
	}

	#nav ul li a,
	.featured-menu a {
		font-size: 17px;
	}
}


@media screen and (max-width: 980px) {
	#nav {
		display: none;
	}
}




/* Mobile Menu
--------------------------------------------------------------------------------- */


.mob-menu {
	display: none; /*js trigger*/
	position: absolute;
   	top: 0;
   	left: 0;
	width: 100%;
	z-index: 10;
	opacity: 0;
	background: #FFF;
	animation: navfadeIn 400ms ease-in-out 1 forwards;
	box-shadow: 0px -10px 50px 0px rgba(0,0,0, .7);
	padding-bottom: 0;
}

@media screen and (max-width: 980px) {
	.mob-menu-open .mob-menu {
		display: flex;
		flex-direction: column;
		justify-content: center;
		text-align: center;
	}
}



.mob-menu .container {
	position: relative;
	width: 100%;
	max-width: 600px;
	margin: 0 auto;
}


.mob-menu-header {
	display: flex;
	gap: 20px;
	margin-bottom: -50px;
}

ul.mob-lang-menu {
	display: flex;
	margin-right: 10px;
}

.mob-lang-menu li {
}

.mob-lang-menu li a {
	position: relative;
	display: block;
	margin-left: -30px;
	padding: 35px 30px 0 30px;
	font-weight: bold;
	color: var(--text-gray);
	text-transform: uppercase;
}

.mob-lang-menu li.current-lang a {
	color: var(--link-color);
}

.mob-lang-menu a::after { /*triangle*/
	content: "";
	position: absolute;
	top: -1px;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 9px 9px 0 9px;
	border-color: var(--primary-color) transparent transparent transparent;
	display: none;
}

.mob-lang-menu .current-lang a::after {
	display: block;
}


.mob-flag-menu {
	display: flex;
	gap: 30px;
	margin-top: 35px;
	margin-bottom: -30px;
}

.mob-flag-menu a {
	display: block;
	width: 30px;
	height: 20px;
	background: transparent url(images/flag-cs.svg) no-repeat left top;
	background-size: contain;
	border-radius: 1px;
	overflow: hidden;
	box-shadow: 0px 0px 20px -3px rgba(0,0,0, .25);
}




.mob-menu nav {
	margin: 100px 0 0 0;
}

.mob-menu nav li a {
	display: flex;
	justify-content: space-between;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.3;
	letter-spacing: .5px;
	text-transform: uppercase;
	padding: 20px 0;
	text-align: left;
	color: var(--link-color);
	border-top: 1px solid #EDEDED;
}

.mob-menu nav li a br {
	display: none;
}

.mob-menu nav li:first-child a {
	border-top: 0;
}

.mob-menu nav li a:hover {
}

.mob-menu nav li.current-menu-item > a {
	color: var(--link-color);
}

.mob-menu nav li.menu-item-has-children.active > a {
}

.mob-menu nav li.menu-item-has-children > a::after {
	content: "\e809";
	display: flex;
	margin-bottom: auto; /*!*/
	align-items: flex-start;
	color: rgba(0,0,0, .2);
	font-family: 'icons';
	font-weight: normal;
	font-size: 1.3rem;
	line-height: 1;
	transition: all 300ms ease;
}

.mob-menu nav li.menu-item-has-children.active > a::after {
	transform: rotate(180deg);
}

.mob-menu nav li.active > a {
}

.mob-menu li.page-ancestor a { /* page-ancestor … add CSS class to WP menu item*/
	display: flex;
	justify-content: space-between;
	font-family: var(--font-serif);
	font-style: italic;
	font-weight: bold;
	font-size: 22px;
	font-size: 1.15rem;
}

.mob-menu li.page-ancestor.current-menu-item a {
	color: var(--text-color);
}

.mob-menu li.page-ancestor a::after {
	content: "\e808";
	font-family: 'icons';
	font-weight: normal;
	font-style: normal;
}


.mob-menu nav li ul {
	position: relative;
	padding: 0px 0 0 25px;
	margin: 0;
	margin-bottom: 20px;
}

.mob-menu nav li li {
	opacity: 1;
	animation: none;
}

.mob-menu nav li li a {
	text-transform: none;
	letter-spacing: 0;
	font-weight: normal;
	color: var(--text-color);
	border: none;
	padding: 12px 0;
	font-size: 17px;
}

.mob-menu nav li li a:hover {
	color: var(--link-color);
}

/* Mobile Menu Animation */

@keyframes navfadeIn {
0% {
	opacity: 0.0;
	transform: translate(0px,-50px);
}

100% {
	opacity: 1.0;
	transform: translate(0,0);
	}
}

@keyframes navfadeOut {
0% {
	opacity: 1.0;
	transform: translate(0px,0);
}

100% {
	opacity: 0.0;
	transform: translate(0px,-50px);
	}
}


@keyframes fadeLiIn {
0% {
	opacity: 0.0;
	transform: translate(0px,-10px);
}

100% {
	opacity: 1.0;
	transform: translate(0,0);
	}
}

/* Mobile Menu Featured  */


.mob-featured-menu {
	margin: 2rem 0 2.5rem 0;
	display: block;
	text-align: left;
}

.mob-featured-menu a {
	display: inline-block;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	text-transform: uppercase;
	letter-spacing: .3px;
	padding: 13px 40px;
	color: var(--primary-color);
	background: var(--secondary-color);
	border-radius: 60px;
}

.mob-featured-menu a:hover {
	background: rgba(222, 220, 0, .6);
}


@media screen and (max-width: 600px) {
	.mob-featured-menu a {
		display: block;
	}
}



/* Mobile Menu Search */


.mob-search {
	position: relative;
	margin: 20px 0 0 0;
}

.mob-search .searchform {
	border: 1px solid rgba(0,0,0, .2);
	box-shadow: none;

}

.mob-search input.s {
	font-size: 1rem;
	padding: 15px;
	height: 3.3rem;
	border-radius: 0;
}

.mob-search .searchform button {

}

.mob-search input::placeholder {

}
.mob-search input:focus {
}

.mob-search button {
	position: absolute;
	top: 0;
	right: 0;
	height: 100%;
	border: none;
	line-height: 1;
	overflow: hidden;
	padding: 0;
	background: transparent;
	width: 2.5rem;
	font-size: 24px;
	color: var(--link-color);
}


/* Mobile Menu Contact */

.mob-menu-contact {
	margin: 2.5rem 0 0 0;
	padding-top: 5px;
	padding-bottom: 7px;
	background: var(--primary-bg);
}

.mob-menu-contact a {
	display: flex;
	align-items: center;
	font-weight: bold;
	padding: 20px;
	letter-spacing: .2px;
	border-top: 1px solid #FFF;
}

.mob-menu-contact a:first-child {
	border: none;
}

.mob-menu-contact a i {
	line-height: 1;
	font-size: 26px;
	margin: -2px 8px 0 -20px;
}


/* Mobile Menu Trigger */

.mob-menu-trigger {
	display: none;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);

	border: none;
	width: 50px;
	height: 49px;
	margin: 0 0 0 0;
	z-index: 999;
	text-transform: uppercase;
	background: transparent;
}

.mob-menu-trigger.open {
}


@media screen and (max-width: 980px) {

	.mob-menu-trigger {
		display: block;
	}

	.mob-menu-open .mob-menu {
		display: flex;
		flex-direction: column;
		justify-content: center;
		text-align: center;
	}


}


/* Hamburger Icon ani*/


.mob-menu-trigger span {
	margin: 0 auto;
	position: relative;
}
.mob-menu-trigger span:before,
.mob-menu-trigger span:after {
	position: absolute;
	content: '';
}
.mob-menu-trigger span,
.mob-menu-trigger span:before,
.mob-menu-trigger span:after {
	width: 32px;
	height: 2px;
	background-color: var(--primary-color);
	display: block;
}
.mob-menu-trigger span:before {
	margin-top: -8px;
}
.mob-menu-trigger span:after {
	margin-top: 8px;
}

.mob-menu-trigger span {
	transition-duration: 0s;
	transition-delay: 0.15s;
}
.mob-menu-trigger.open span {
	background-color: rgba(0,0,0,0.0);
	transition-delay: 0.15s;
}
.mob-menu-trigger span:before {
	transition-property: margin, transform;
	transition-duration: 0.15s;
	transition-delay: 0.15s, 0s;
}
.mob-menu-trigger.open span:before {
	margin-top: 0;
	transform: rotate(45deg);
	transition-delay: 0s, 0.15s;
}
.mob-menu-trigger span:after {
	transition-property: margin, transform;
	transition-duration: 0.15s;
	transition-delay: 0.15s, 0s;
}
.mob-menu-trigger.open span:after {
	margin-top: 0;
	transform: rotate(-45deg);
	transition-delay: 0s, 0.15s;
}

/* end Hambuger Icon ani*/

/* Menu Animation */

.mob-menu li {
 opacity: 0;
 animation: fadeLiIn 400ms ease-in-out 1 forwards;
 }

.mob-menu li:nth-child(1) {
  animation-delay: 100ms;
}

.mob-menu li:nth-child(2) {
  animation-delay: 200ms;
}

.mob-menu li:nth-child(3) {
  animation-delay: 300ms;
}

.mob-menu li:nth-child(4) {
  animation-delay: 400ms;
}

.mob-menu li:nth-child(5) {
  animation-delay: 500ms;
}

.mob-menu li:nth-child(6) {
  animation-delay: 600ms;
}

.mob-menu li:nth-child(7) {
  animation-delay: 700ms;
}

.mob-menu li:nth-child(8) {
  animation-delay: 750ms;
}

/* @end */


/* @group CONTENT */

/* CONTENT
--------------------------------------------------------------------------------- */

#content {
	position: relative;
	flex: 1 0 auto; /*sticky footer*/
	background: #FFF;
}


main {
	padding-top: 0;
	AUS_padding-top: var(--main-padding-top);
	padding-bottom: var(--main-padding-bottom);
}


.aligndefault {
	max-width: var(--aligndefault-width);
	margin-left: auto;
	margin-right: auto;
}

.alignsemiwide {
	max-width: var(--alignsemiwide-width);
	margin-left: auto;
	margin-right: auto;
}

.alignwide {
	max-width: 100%;
}

.alignfull {
    margin-left  : calc( -100vw / 2 + 100% / 2 );
    margin-right : calc( -100vw / 2 + 100% / 2 );
    max-width    : 100vw;
}



/* @end */

/* @group EDITOR STYLES */


/* WP core styles
--------------------------------------------------------------------------------- */


/* Alignment */

.aligncenter,div.aligncenter {
	display: block;
	margin: 5px auto 5px auto;
}

.alignright {
	float: right;
	margin: 5px 0 20px 20px;
}

.alignleft {
	float: left;
	margin: 5px 20px 20px 0;
	margin: 5px 1.4rem 1.4rem 0;
}

.aligncenter {
	display: block;
	margin: 5px auto 5px auto;
}

a img.alignright {
	float: right;
	margin: 5px 0 1.4rem 1.4rem;
}

img.alignnone,
a img.alignnone {
	margin: 0;
	padding: 0;
}

a img.alignleft {
	float: left;
	margin: 5px 1.4rem 1.4rem 0;
}

a img.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}


@media screen and (max-width: 600px) {
.alignleft,
.alignright,
a img.alignleft,
a img.alignright {
	float: none;
	margin-left: 0;
	margin-right: 0;
}

}

/* Caption */

.wp-caption-text {
	font-size: 0.85rem;
	line-height: 140%;
	color: var(--text-gray);
	color: #888;
	padding: 10px 0 10px 0;
}

figure.wp-caption  {
	display: table;
	max-width: 100%;
	margin-top: 2rem;
}

figure.wp-caption figcaption {
	display: table-caption;
	caption-side: bottom ;
}

figure.wp-caption img {
	display: block;
}


@media screen and (max-width: 600px) {

	.wp-caption-text {
		padding-bottom: 0;
	}

}


/* Edit Link */

a.post-edit-link {
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 10;
	font-size: 11px;
	padding: 8px 12px;
	text-transform: uppercase;
	text-decoration: none;
	background: #0073AA;
	color: #FFF;
}


/* editor elements */


/* === Lists */

ul,
ol {
	margin-top: var(--vspace);

}

ul {
	padding-left: 2.0rem;
	list-style-type: none;
}


li {
	position: relative;
	margin: 0 0 8px 0;
}

:where(ul, ol) ul {
	margin-top: 5px;
}


ul li::before {
	position: absolute;
	content: "•";
	margin: 0.0rem 0 0 -1.0rem;
	font-weight: 700;
}

ol {
	padding-left: 2.0rem;
}

ol li::marker {
	font-weight: bold;
}


.list-unstyled,
.list-unstyled li {
	padding: 0;
	margin: 0;
	list-style: none;
}

.list-unstyled li:before {
	display: none;
}

/* list style: check */


.list-style.check ul {
	padding-left: 2rem;
}

.list-style.check ul li {
	margin: 0 0 10px 0;
}

.list-style.check ul li:before {
	content: "\e80e";
	font-family: 'icons';
	color: var(--primary-color);
	font-size: 1.4rem;
	line-height: 1.1;
	margin-left: -2rem;
}



/* === Icons */


i { /* IE */
	font-family: 'icons';
    -webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

[class^="icon-"]::before {
	AUS_margin: 0;
}



/* === Embeds, iFrames  */


iframe {
  margin-top: 2rem;
}

iframe.googlemap {
	width: 100%!important;
	height: 400px;
}


iframe.googlemap.size-1 { height: 300px;}
iframe.googlemap.size-2 { height: 400px;}
iframe.googlemap.size-3 { height: 600px;}


.embed-responsive {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  height: 0;
  margin-top: 2rem;
}

.embed-responsive iframe,
.embed-responsive object,
.embed-responsive embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
}


/* === Shortcodes / Quicktags  */

.text-large {
	font-size: 125%;
	line-height: 1.6;
}

.text-small {
	font-size: 11px;
	font-size: 0.8em;
	margin-bottom: 2rem;
}

.text-quote {
	position: relative;
	margin: 3rem auto;
	max-width: 550px;
	font-style: normal;
	font-size: 140%;
	font-weight: bold;
	color: var(--primary-color);
}


.text-quote strong {
	font-weight: normal;
}

.text-quote p:last-of-type {
	margin-bottom: 0;
}

.text-quote .cite {
	font-size: 0.8rem;
	font-style: normal;
	font-weight: bold;
	display: block;
	margin: 0.5rem 0 0 0;
	font-family: var(--font-sans);
	font-weight: 700;
	color: var(--text-gray);
}


.box {
	font-size: 0.95rem;
	padding: var(--box-padding);
	margin: var(--vspace) 0;
	border-radius: 0;
	background: var(--primary-bg);

}

.box > * {
	--vspace: 1.0rem;
}

.box > *:first-child {
	margin-top: 0;
}

.box p:empty {
	display: none;
}

.box-important {
	background: transparent;
	border: 1px solid RED;
}

i.icon {
	font-weight: normal!important;
}

.icon.download {
	font-size: 1.9rem;
	color: var(--link-color);
	margin: 0 5px 5px 0;
	vertical-align: middle;
	display: inline-block;
}

.icon.download:before {
	margin: 0;
}

.icon.bullet {
	font-size: 85%;
}


.button-p {
	padding-bottom: 5px;
}

/* === Columns */

.sc-row {
	margin-top: var(--vspace);
}

.sc-column > *:first-child {
	margin-top: 0;
}


/* === Tables */

.table-container {
	margin-top: var(--vspace);
	position: relative;
	width: 100%;
	overflow: auto;
	scrollbar-width: none; /* Firefox */
	width: calc(100% + 30px); /*enable overflow on right side */
	padding-right: 30px;
}

AUS__.table-container::after { /*overflow fade*/
	content: "";
	position: absolute;
	top: 0;
	right: -30px;
	width: 30px;
	height: 100%;
	background: BLUE;
	background: linear-gradient(to right, rgba(252, 249, 242, 0) 0%, rgba(252, 249, 242, 1) 70%);
}


table {
	width: 100% !important; /*override inline td width*/
	max-width: 100%;
}

table thead {
	border-bottom: 3px solid var(--border-color);
}

table thead td {
	font-weight: bold;
}

table tr {
	background: transparent;
	border-bottom: 1px solid var(--border-color);
}

table tr:last-child {
	border-bottom: none;
}

table tr th {
}

table tr td {
	padding: 0.45rem 0.0rem 0.45rem 0.0rem;
	padding-right: 2rem;
	vertical-align: top;
}


table td:last-child { /*stretch last column to make columns kind of left aligned/ min sized*/
	width: 90%;
}

table tr td:last-child {
	padding-right: 0;
}


table p {
	margin: 0;
}


/* === Buttons */


.btn {
	text-transform: uppercase;
	padding: 0.98rem 2.2rem;
	font-weight: bold;
	font-size: 16px;
	font-size: .95rem;
	line-height: 1.4;
	display: inline-flex;
	align-items: center;
	text-align: center;
	color: #FFF;
	letter-spacing: .3px;
	background: var(--primary-color);
	border: none;
	border-radius: 100px;
    outline-offset: 3px;
}

.btn:hover,
.btn:focus-visible {
	color: #FFF;
	background: var(--link-color-hover);
}


.btn.btn-submit {
	color: #FFF;
	background: var(--text-color);
}

.btn.btn-submit:hover,
.btn.btn-submit:focus-visible {
	background: var(--link-color);
}

.btn-text {
	text-transform: uppercase;
	display: inline-flex;
	align-items: center;
	font-weight: bold;
	line-height: 1.4;
	white-space: nowrap;
	letter-spacing: .3px;
}

.btn-text:after {
	content: "\e803";
	font-family: 'icons';
	font-size: 1.2rem;
	line-height: 1;
	margin: -2px 0 0 5px;
}


.btn-text-back {
	text-transform: uppercase;
	display: inline-flex;
	align-items: center;
	font-weight: bold;
	letter-spacing: .3px;
}

.btn-text-back:hover {
	text-decoration: none;
}

.btn-text-back:before {
	content: "\e804";
	font-family: 'icons';
	font-size: 1.2rem;
	line-height: 1;
	margin: -2px 5px 0 0;
}




/* @end */



/* @group PAGE-HEADER */

/* Page-Header
--------------------------------------------------------------------------------- */


.page-header {
	margin-bottom: 80px;
}


.page-template-template-wohnungen .page-header,
.page-template-template-garagen-stellplaetze .page-header,
.page-template-template-search-filter-test .page-header {
	margin-bottom: 0!important; /*search form follows*/
}


.page-header.has-pagebanner {
}


.page-submenu {
	padding: 20px 0;
	background: var(--primary-bg);
}

.page-submenu ul {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	list-style: none;
	padding: 0;
}

.page-submenu ul li {
	list-style: none;
	padding: 0;
	margin: 0 40px 0 0;
}

.page-submenu ul li:before {
	display: none;
}

.page-submenu li a {
	position: relative;
	display: inline-block;
	font-weight: bold;
}

.page-submenu li.current_page_item a::after {
	content: "";
	position: absolute;
	bottom: 2px;
	left: 0;
	width: 100%;
	height: 2px;
	background: var(--link-color);
}

.page-submenu li a.current {
}



@media screen and (max-width: 980px) {
	.page-header.has-pagebanner {
		margin-bottom: 100px;
	}
}

@media screen and (max-width: 600px) {
	.page-header {
		margin-bottom: 50px;
	}

	.page-header.has-pagebanner {
		margin-bottom: 80px;
	}

}



/* @end */



/* @group PAGEBANNER */

/* Pagebanner
--------------------------------------------------------------------------------- */


.pagebanner {
	display: flex;
	align-items: flex-end;
	position: relative;
	z-index: 1;
	margin-left: auto;
	margin-right: auto;
	height: 540px; /*the height*/
	AUS_max-width: 1800px; /*there's a limit*/
}

.pagebanner__content {
	width: 100%;
}

.pagebanner__title {
	display: inline-flex;
	margin: 0 0 80px 0;
	padding: 40px 50px;
	max-width: 650px;
	font-size: 34px;
	color: #FFF;
	background: var(--primary-color);
}

.pagebanner__image-wrap {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.pagebanner img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	margin: 0 auto;
	opacity: 1;
}

.pagebanner__overlay {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #000;
	opacity: 0.05;
}


@media screen and (max-width: 980px) {
	.pagebanner {
		height: 430px; /*the height*/
	}

	.pagebanner__content {
		margin-bottom: -35px;
	}

	.pagebanner__content .container {
		padding: 0;
	}

	.pagebanner__title {
		max-width: 70vw;
		margin: 0;
		padding: 40px 50px;
		font-size: 30px;
	}

}

@media screen and (max-width: 600px) {

	.page-header.has-pagebanner {
		margin-bottom: 80px;
	}

	.pagebanner {
		height: 300px; /*the height*/
	}

	.pagebanner__title {
		max-width: 80vw;
		line-height: 1.3;
		padding: 20px 40px;
		font-size: 24px;
	}

}


/* @end */



/* @group SIDEBAR */

/* Sidebar
--------------------------------------------------------------------------------- */


.sidebar {
	position: fixed;
	top: 50%;
	transform: translate(0,-50%);
	right: 0;
	z-index: 2;
	opacity: 0;
}

.sidebar.active {
	animation: sidebarFadeIn 500ms normal forwards ease-in-out;
}


@keyframes sidebarFadeIn {
   0% {
      opacity: 0;
	  transform: translate(100%,-50%);
   }
   100% {
      opacity: 1;
	 transform: translate(0,-50%);
   }
}


.sidebar ul {
	display: flex;
	flex-direction: column;
}

.sidebar ul li {
	margin-left: auto;
	margin-top: 1px;
	box-shadow: 0px 3px 20px -10px rgba(0,0,0, .0);
}

.sidebar a {
	display: flex;
	align-items: center;
	margin-left: auto;
	color: var(--link-color);
	transition: all 350ms ease;
}

.sidebar i {
	display: block;
	width: 50px;
	height: 50px;
	line-height: 50px;
	font-size: 28px;
	text-align: center;
	background: #FFF;
	color: var(--link-color);
	transition: all 200ms ease;
}

.sidebar i:hover,
.sidebar a:hover i {
	color: var(--link-color-hover);
}

.sidebar a:focus-visible {
	z-index: 1;
}

.sidebar__item-toggle {
	display: flex;
	cursor: pointer;
	background: var(--secondary-color);
}

.sidebar__item-toggle i {
	background: transparent;
}

.sidebar__item-toggle.active i {
	margin-right: -10px;
}

.sidebar__item-toggle a {
	--width: 160px;
	display: flex;
	font-weight: bold;
	padding: 0 10px;
	background: var(--secondary-color);
	width: var(--width);
	color: var(--link-color);
	margin-right: calc(var(--width) * -1);
}

.sidebar__item-toggle--email a {
	width: 180px;
	margin-right: -180px;
}

.sidebar__item-toggle.active a,
.sidebar__item-toggle:focus-within a {
	margin: 0;
	color: var(--link-color);
}



@media screen and (max-width: 980px) {
	.sidebar {
		display: none;
	}

}





/* @end */








/* @group CONTENTBLOCKS */

/* CONTENTBLOCKS - FLEX CONTENT
--------------------------------------------------------------------------------- */


/* General */

main .contentblock:first-child {
	margin-top: 0;
}

.contentblock > *:first-child {
	margin-top: 0;
}

.contentblock > *:last-child {
	margin-bottom: 0;
}

.contentblock {
	margin-top: var(--block-vspace);

	max-width: var(--aligndefault-width); /*default width*/
	margin-left: auto;
	margin-right: auto;

	border: 0px dashed #ddd; /*helper*/
}

.contentblock-text + .contentblock {
}

:where(.contentblock) a:hover {

}


.contentblock.alignsemiwide {
	max-width: var(--alignsemiwide-width);
}

.contentblock.alignwide {
	max-width: 100%;
}

.contentblock.alignfull {
    margin-left  : calc( -100vw / 2 + 100% / 2 );
    margin-right : calc( -100vw / 2 + 100% / 2 );
    max-width    : 100vw;
}


.pagebanner + .contentblock {
	margin-top: 0;
}


/* ACFE Preview */

.-preview {
	padding: 10px;
}

.-preview .contentblock:first-child {
  margin-top: 0;
}



/* Text
--------------------------------------------------------------------------------- */


.contentblock-text {
}



/* Text-2-Columns
--------------------------------------------------------------------------------- */


.contentblock-text-2-columns {
}

@media screen and (max-width: 768px) {

	.contentblock-text-2-columns [class*="col-"]:last-child  {
		margin-top: var(--vspace);
	}
}



/* Image
--------------------------------------------------------------------------------- */


.contentblock-image {
}

.contentblock-image + .contentblock-image {
}

.contentblock-image img.size-large {
	display: block;
	width: 100%;
}


.contentblock-image figure.alignright {
	float: right;
	text-align: right;
}

.contentblock-image figure.alignright img {
	display: block;
	float: right;
}

.contentblock-image figure.alignright a {
	float: right;
}

.contentblock-image figure.alignright figcaption {
	clear: both;
}

.contentblock-image figure.aligncenter {
	text-align: center;
}

.contentblock-image figure.aligncenter img {
	display: inline-block;
}



/* Image-Text
--------------------------------------------------------------------------------- */


.contentblock-imagetext {
}

.imagetext {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 30px;
}


.imagetext.image-w33 {
	grid-template-columns: 1fr 2fr;
}

.imagetext.image-w25 {
	grid-template-columns: 1fr 3fr;
}

.imagetext.image-w10 {
	grid-template-columns: 1fr 9fr;
}


.imagetext__image {
	width: 100%;
}

.imagetext__image img {
	display: block;
	width: 100%;
}

.imagetext__text {
}

.imagetext__text > *:first-child {
	margin-top: 0;
}

.imagetext.image-alignright {
}

.imagetext.image-alignright .imagetext__image {
	order: 2;
}

/* image widths */
.imagetext.image-w100 {
	grid-template-columns: 1fr;
}

.imagetext.image-w50 .imagetext__image {

}

.imagetext.image-w33 .imagetext__image {
}

.imagetext.image-w25 .imagetext__image {
}


/* has custom aspect ratio */
.imagetext__image.has-ratio figure {
	position: relative;
}

.imagetext__image .ratio-wrap {
	position: relative;
}

.imagetext__image.ratio-1-1 .ratio-wrap { padding-top: 100%; }
.imagetext__image.ratio-4-3 .ratio-wrap { padding-top: 75%; }
.imagetext__image.ratio-3-2 .ratio-wrap { padding-top: 66.66%; }
.imagetext__image.ratio-16-9 .ratio-wrap { padding-top: 56.25%; }

.imagetext__image.has-ratio .image-wrap {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}

.imagetext__image.has-ratio img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	margin: 0 auto;
}


@media screen and (max-width: 980px) {

}


@media screen and (max-width: 768px) {
	/*alignwide image that stacks*/
	.alignwide .imagetext.image-w50 {
		grid-template-columns: 1fr;
		gap: var(--vspace);
	}
	
	.imagetext.image-alignright.stacked-on-mobile:not(.image-valignbottom) .imagetext__image {
		order: 0;
	}

}


@media screen and (max-width: 600px) {
	.imagetext {
		gap: 20px;
	}

	.imagetext.stacked-on-mobile {
		gap: var(--vspace) 0;
	}

	/* image goes full width*/
	.imagetext.stacked-on-mobile.image-w50 {
		grid-template-columns: 1fr;
	}

	/* image stacks */
	.imagetext.stacked-on-mobile.image-w33,
	.imagetext.stacked-on-mobile.image-w25  {
		grid-template-columns: 1fr;
	}

	.imagetext.stacked-on-mobile.image-w33 .imagetext__image {
		max-width: 50%;
	}

	.imagetext.stacked-on-mobile.image-w25 .imagetext__image {
		max-width: 40%;
	}

	.imagetext.stacked-on-mobile.image-w10 .imagetext__image {
    	max-width: 30%;
	}

	/* image bottom */
	.imagetext.stacked-on-mobile.image-valignbottom .imagetext__image {
		order: 2;
	}

}




/* Gallery
--------------------------------------------------------------------------------- */

.contentblock-gallery {
}

.gallery {
	--gallery-gap: 30px;
	display: flex;
	flex-wrap: wrap;
	margin-left: -30px; /*offset gap*/
	margin-left: calc(var(--gallery-gap) * -1); /*  offset gap */
	margin-bottom: calc(var(--gallery-gap) * -1)!important; /*  minus the gap */;
}

.gallery__item {
	position: relative;
	flex: 0 0 auto;
	width: calc(100% / 3); /*default 3 colums*/
	display: flex;
	flex-direction: column;
	padding: 0px 0 var(--gallery-gap) var(--gallery-gap); /*gap*/
}

.gallery.columns-1 .gallery__item { width: calc(100% / 1); }
.gallery.columns-2 .gallery__item { width: calc(100% / 2); }
.gallery.columns-3 .gallery__item { width: calc(100% / 3); }
.gallery.columns-4 .gallery__item { width: calc(100% / 4); }
.gallery.columns-5 .gallery__item { width: calc(100% / 5); }
.gallery.columns-6 .gallery__item { width: calc(100% / 6); }


@media screen and (max-width: 1024px) {

.gallery.columns-2 .gallery__item { width: calc(100% / 2); }
.gallery.columns-3 .gallery__item { width: calc(100% / 3); }
.gallery.columns-4 .gallery__item { width: calc(100% / 3); }
.gallery.columns-5 .gallery__item { width: calc(100% / 3); }
.gallery.columns-6 .gallery__item { width: calc(100% / 3); }

}

@media screen and (max-width: 600px) {

.gallery.columns-3 .gallery__item { width: calc(100% / 2); }
.gallery.columns-4 .gallery__item { width: calc(100% / 2); }
.gallery.columns-5 .gallery__item { width: calc(100% / 2); }
.gallery.columns-6 .gallery__item { width: calc(100% / 2); }

}


.gallery.gap-zero {
	--gallery-gap: 0;
}

.gallery__item .ratio-wrap {
	flex: 0; /*1*/
	display: flex;
}

.gallery__item .image-wrap {
	flex: 1;
}

.gallery__item a {
	display: block;
	height: 100%;
    outline-offset: 3px;
}

.gallery__item  img {
	display: block;
	margin: 0;
	width: 100%;
}


/* gallery cropped */
.gallery__item.is-cropped  {
	flex: 1 0 auto; /* images in last row take remaining space*/
}

.gallery__item.is-cropped  img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	margin: 0 auto;
}

/* gallery has custom aspect ratio */
.gallery__item.has-ratio .ratio-wrap {
	position: relative;
}

.gallery__item.ratio-1-1 .ratio-wrap { padding-top: 100%; }
.gallery__item.ratio-4-3 .ratio-wrap { padding-top: 75%; }
.gallery__item.ratio-3-2 .ratio-wrap { padding-top: 66.66%; }
.gallery__item.ratio-16-9 .ratio-wrap { padding-top: 56.25%; }


.gallery__item.has-ratio .image-wrap {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}

.gallery__item.has-ratio img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	margin: 0 auto;
}

.gallery__item figcaption {
}

@media screen and (max-width: 1024px) {

	.gallery {
		--gallery-gap: 16px;
	}
}


/* -- Gallery Masonry (JS) */


.gallery-masonry {
	display: block;
	background: lightblue;
}

.gallery-masonry:after {
	content: '';
	display: block;
	clear: both;
}

.gallery-masonry__item {
	display: block;
	float: left;
}

.gallery-masonry__item a {
	display: block;
}





/* Video
--------------------------------------------------------------------------------- */


.contentblock-video {
}


/* Google-Map
--------------------------------------------------------------------------------- */

.contentblock-google-map {
}



/* Accordion
--------------------------------------------------------------------------------- */


.contentblock-accordion {
}

.accordion {
	border-bottom: 1px solid var(--border-color);
}

.accordion-item {
	position: relative;
	border: none;
}

.accordion-item:last-child {
	margin-bottom: 0;
}

.accordion-item:first-of-type {
	margin-top: 0;
}

.accordion-heading {
	margin: 0;
	padding: 0;
	border: none;
	text-transform: none;
}

.accordion-trigger {
	display: block;
	position: relative;
	border: none;
	text-align: left;
	width: 100%;
	padding: 1.3rem 0;
	padding-right: 3.0rem;
	font-size: 1.0rem;
	line-height: 140%;
	color: var(--text-color);
	background: transparent;
	border-top: 1px solid var(--border-color);
	font-weight: bold;
	transition: all 300ms ease;
}

.accordion-trigger:hover {
	text-decoration: none;
}

.accordion-trigger.active,
.accordion-trigger:focus-visible {
	color: var(--link-color);
}

.accordion-trigger:hover,
.accordion-trigger:hover i,
.accordion-trigger:focus-visible i {
	color: var(--link-color);
}

.accordion-trigger:hover i {
	text-decoration: none;
}

.accordion-trigger i:after {
	position: absolute;
	top: 1rem;
	right: 0;
	margin: 0;
	content: "\e809";
	display: block;
	line-height: 1;
	border-radius:0;
	font-family: 'icons';
	font-size: 1.9rem;
	font-weight: normal;
	font-style: normal;
	text-decoration: none;
	transition: all 250ms ease-in-out;
}

 .accordion-trigger.active i:after {
	transform: translate(0,-5%) rotate(180deg);
}

.accordion-content {
	position: relative;
	padding: 0 0 2rem 0;
	display: none; /*js*/
}

.accordion-content > *:first-child {
	margin-top: 0;
}


.contentblock-accordion.style-large .accordion-trigger  { /* style large */
	font-size: 22px;
	padding: 1.55rem 0;
	padding-right: 3rem;
}

.contentblock-accordion.style-large .accordion-trigger i:after {
	top: 1.5rem;
}



/* Downloads
--------------------------------------------------------------------------------- */



.contentblock-downloads {
}

.downloads__title {

}

.downloads__list {
	margin-top: var(--vspace);
}

.downloads__list li {
	padding: 0.3rem 0;
	padding-left: 2rem;
	border-bottom: 1px solid var(--border-color);
}

.downloads__list li:last-child {
	border-bottom: none;
}

.downloads__list li i {
	display: inline-block;
	margin-left: -2rem;
	width: 2rem;
	font-size: 1.5rem;
}

.downloads__list li i:before {
	margin: 0;
}

.downloads__list li a {
	font-weight: bold;
}

.downloads__item-caption {
	font-size: var(--text-small);
}



/* Image-Slider
--------------------------------------------------------------------------------- */


.contentblock-image-slider {
	position: relative;
}

.contentblock-image-slider .swiper {
}

.contentblock-image-slider .swiper-wrapper {
     height:auto!important;
}

.contentblock-image-slider .swiper-slide {
	position: relative;
	display: flex;
	justify-content: center;
	width: auto;
	background: var(--primary-bg);
	
	height: 800px; /*the height*/
	height:  clamp(300px, 60vw, 750px);
	min-height: 50vh;
}

 
.contentblock-image-slider img {
	display: block;
	width: auto;
	height: 100%;	
}


.contentblock-image-slider.image-fit-contain  .swiper-slide {
	width: 100%;
}

.contentblock-image-slider.image-fit-contain img {
	/*prevent image from fitting - show original ratio and fit into slide*/
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.contentblock-image-slider .swiper .swiper-pagination {
}

.contentblock-image-slider .swiper-pagination-bullet {
}


.contentblock-image-slider .lightbox-link {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}


/*has caption*/
.contentblock-image-slider.has-caption .swiper {
	padding-bottom: 40px;
}

.contentblock-image-slider.has-caption .swiper-pagination {
}

.contentblock-image-slider .caption {
	position: absolute;
	bottom: 0;
	left: 0;
	padding: 10px 15px;
	color: #FFF;
	font-size: var(--text-small);
	text-shadow: 0 0 5px rgba(0,0,0, .3);
	background: rgba(0,0,0, .9);
	background: var(--text-color);
}

@media screen and (max-width: 600px) {

	.contentblock-image-slider.alignwide { /* make alignwide full width on mobile*/
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		width: auto;
		max-width: 1000%;
	}
	
	
	.contentblock-image-slider .caption {
		font-size: 13px;
	}
	
}





/* Form
--------------------------------------------------------------------------------- */



.contentblock-form {
	margin-top: calc(var(--block-vspace) + 5px); 
}




/* Section
--------------------------------------------------------------------------------- */


.contentblock-section {
	padding: var(--vspace-xl) 0;
	background: var(--primary-bg);
}

.container .contentblock-section:first-child {
	margin-top: calc(var(--main-padding-top) * -1); /*overcome main top padding*/
}


/* Nilsbox
--------------------------------------------------------------------------------- */

.contentblock-nilsbox {

}

.nilsbox {
	position: relative;
	background: var(--secondary-color);
	padding: 50px;
	border-radius: 5px;
}

.nilsbox.has-image {
	padding-right: 25%;
}

.nilsbox__title {
	margin: 0 0 -5px 0;
	font-family: var(--font-script);
	font-weight: normal;
	font-size: 42px;
	line-height: 1.2;
	margin: 0!important;
	color: var(--primary-color);
}

.nilsbox__text {
	position: relative;
	z-index: 1;
	text-shadow: 0 0 5px var(--secondary-color);
	--vspace: 1.0rem;
}

.nilsbox__button-wrap {
}

.nilsbox__image {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 25%;
	max-height: 110%;
	height: 105%;
	border: 0px solid #333;
	overflow: hidden;
	display: flex;
	z-index: 1;
	
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: contain;
	
	filter: drop-shadow(5px 5px 7px rgba(0,0,0, .14));
}

@media screen and (max-width: 600px) {
	.nilsbox {
		padding: 30px;
	}

	.nilsbox.has-image {
		padding: 30px;
	}

	.nilsbox__title {
		font-size: 36px;
		line-height: 1.1;
	}

	.nilsbox.has-image .nilsbox__text {
		padding-right: 20%;
	}
		
	.nilsbox__image {
		align-items: center;
		right: -10px;
		transform: translate(0%, 0);
		margin: 0;
		width: 30%;
		height: 90%;
		max-height: 100%;
		background-size: contain;
		background-position: center bottom;
		border: 0px solid #333;
	}

}


/* Teaser
--------------------------------------------------------------------------------- */

.contentblock-teaser {
}




.teaser {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0;
	background: var(--primary-bg);
}

.teaser.no-image {
	display: block;
}

.teaser__image {
	min-height: 395px; /*the height*/
}

.teaser__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.teaser__content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 70px;
}

.teaser__title {
	color: var(--primary-color);
}

.teaser__subtitle {
}

.teaser__btn {
}


@media screen and (max-width: 768px) {
	.teaser {
		grid-template-columns: 1fr;
	}
	
	.teaser__image {
		min-height: auto;
		height: 320px; /*the height*/
	}
	
	.teaser__content {
		padding: 30px;
	}
	
}





/* Link Cards 
--------------------------------------------------------------------------------- */

.contentblock-link-cards {
}

.link-cards__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 30px;
}

.link-cards__grid.columns-1 {
	grid-template-columns: 1fr;
}



.link-card {
	position: relative;
}

.link-card__image {
	width: 100%;
	transition: all 350ms ease;
	background: var(--text-color);
	height: 395px; /*the height*/
}

.link-card__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.link-card__title {
	position: absolute;
	bottom: 50px;
	left: 0;
	color: #FFF;
	font-size: 1.2rem;
	font-weight: bold;
	line-height: 1.3;
	background: var(--primary-color);
	padding: 20px 30px;
	max-width: 80%;
	display: flex;
	align-items: center;
	transition: all 200ms ease;
}

.link-card__title:hover {
	color: rgba(255,255,255, .7);
}

.link-card__title:hover i {
}

.link-card__title i {
	margin-left: 5px;
	margin-right: -15px;
	font-size: 1.6rem;
}


@media screen and (max-width: 980px) {
	.link-cards__grid {
		grid-template-columns: 1fr;
	}

}



@media screen and (max-width: 600px) {
	.link-cards__grid {
		gap: 20px
	}
	
	.link-card__image {
		height: 280px; /*the height*/
	}
	
	.link-card__title {
		bottom: 30px;
		padding: 20px 30px;
		font-size: 1.0rem;
	}
}



/* Contact Person 
--------------------------------------------------------------------------------- */

.contentblock-contact-person {
}

.contact-person__section-title {

}

.contact-person {
	margin-top: var(--vspace-l);
	display: flex;
	overflow: hidden;
	background: var(--primary-bg);
}


.contact-person + .contact-person {
	margin-top: 1.5rem;
}


.contact-person__image {
	position: relative;
	width: 230px;
	height: 230px;
}

.contact-person__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.contact-person__content {
	flex: 1;
	padding: var(--box-padding);
	background: var(--primary-bg);
}

.contact-person__head {
	margin-bottom: 1rem;
}


.contact-person__phone a,
.contact-person__mobile a {
	color: var(--text-color);
}


@media screen and (max-width: 600px) {
	.contact-person {
		display: block;
	}
	
	.contact-person__image {
		display: flex;
		position: relative;
		margin-bottom: -5px;
		width: 140px;
		height: 140px;
	}
		
}




/* Magazines
--------------------------------------------------------------------------------- */


.contentblock-magazines {
}

.magazines-grid {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 30px;
}


.magazines-item__image {
	margin: 0 0 1rem 0;
	box-shadow: 2px 2px 30px -10px rgba(0,0,0, .4);
}

.magazines-item__image img {
	width: 100%;
	display: block;
	object-fit: cover;
	aspect-ratio: 210/297; /*A4 size*/
}

.magazines-item__image a {
	display: block;
	transition: all 250ms ease-in-out;
}

.magazines-item__image a:hover {
	opacity: .8;
}

.magazines-item__content {
	padding-bottom: 1rem;
}

.magazines-item__meta-title {
	font-weight: bold;
	text-transform: uppercase;
	font-size: var(--text-small);
	letter-spacing: .3px;
	margin: 0 0 10px 0;
}

.magazines-item__title {
	margin: 0 0 0 0;
	font-size: 1rem;
}

.magazines-item .btn {
	display: none;
}

/* -- section title */

.magazines-section-title {
	margin: 0;
	grid-column: 1/-1; /*span across all columns*/
}


.feature-first-entry .magazines-section-title:first-child {
}


/* -- featured first entry*/

.magazines-grid.feature-first-entry {

}

.feature-first-entry .magazines-item:first-of-type {
	grid-column: span 3;
	display: grid;
	grid-template-columns: 1fr 1fr;
	background: var(--secondary-color);
	overflow: hidden;
	margin-bottom: var(--vspace-l);
}


.feature-first-entry .magazines-item:first-of-type .magazines-item__image {
	margin: 0;
	padding: 0 30px;
	box-shadow: none;
	height: 580px; /*the height*/
}

.feature-first-entry .magazines-item:first-of-type .magazines-item__image a {
	width: 95%;
	max-width: 400px;
	margin: 0 auto;
	transform: translate(0, 8%) rotate(-5deg);
	transform-origin: 50% 50%;
	border: 0px solid RED;
}

.feature-first-entry .magazines-item:first-of-type .magazines-item__image img {
	box-shadow: 10px 10px 35px -10px rgba(0,0,0, .5), 0px 2px 35px -10px rgba(0,0,0, .2);
}

.feature-first-entry .magazines-item:first-of-type .magazines-item__image a:hover {
	opacity: 1;
	transition: all 300ms ease-in-out;
}

.feature-first-entry .magazines-item:first-of-type .magazines-item__content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 30px;
	position: relative;
	border: 0px solid #333;
}

.feature-first-entry .magazines-item:first-of-type .magazines-item__title {
	font-size: 22px;
}

.feature-first-entry .magazines-item:first-of-type .btn {
	display: inline-flex;
	margin-right: auto;
	margin-top: var(--vspace);
}

@media screen and (max-width: 980px) {
	.magazines-grid {
		grid-template-columns: 1fr 1fr;
	}
	
	.feature-first-entry .magazines-item:first-of-type {
		grid-column: span 2;
		grid-template-columns: 4fr 3fr;
	}
	
	.feature-first-entry .magazines-item:first-of-type .magazines-item__image {
		height: 500px; /*the height*/
	}

	.feature-first-entry .magazines-item:first-of-type .magazines-item__image a:hover {
		transform: translate(0, 8%) rotate(-5deg);
	}
	
}

@media screen and (max-width: 600px) {
	.magazines-grid {
		grid-template-columns: 1fr;
	}

	.feature-first-entry .magazines-item:first-of-type {
		display: block;
		grid-column: span 1;
		box-shadow: 2px 2px 35px -10px rgba(0,0,0, .3);
	}

	.feature-first-entry .magazines-item:first-of-type .magazines-item__image {
		padding: 0;
		height: auto; /*the height*/
	}
	
	
	.feature-first-entry .magazines-item:first-of-type .magazines-item__image a {
		transform: none;
		width: 100%;
		max-width: 100%;
	}
		
	.feature-first-entry .magazines-item:first-of-type .magazines-item__image img {
		box-shadow: none;
	}

}


/* Timeline
--------------------------------------------------------------------------------- */


.contentblock-timeline {
}


.timeline {
	position: relative;
	overflow: hidden;
	border: 0px solid #333;
}


.timeline::after { /*time line*/
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	width: 2px;
	height: 100%;
	background: var(--primary-color);
}

.timeline-entry {
	display: block;
	width: 50%;
	margin: 0 0 1.5rem 0;
	padding-right: 60px;
	float: left;
	clear: left;
}

.timeline-entry:nth-child(2) {
	margin-top: 6rem; /*initital offset*/
}


.timeline-entry.right {
  float: right;
  clear: right;
  padding: 0;
  padding-left: 60px;
}

.timeline-entry .inner {
	position: relative;
	background: var(--primary-bg);
}


.timeline-entry__title  {
	position: relative;
	margin: 0;
	padding: 20px var(--box-padding);
	color: #FFF;
	font-size: 22px;
	text-align: right;
	background: var(--primary-color);
}

.right .timeline-entry__title {
	text-align: left;
}


.timeline-entry__title::after { /*triangle*/
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: -14px;
	background: transparent;
	/*triangle*/
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 20px 0 20px 20px;
	border-color: transparent transparent transparent var(--primary-color);
}

.right .timeline-entry__title::after {
	right: auto;
	left: -14px;
	border-width: 20px 20px 20px 0;
	border-color: transparent var(--primary-color) transparent transparent ;
}


.timeline-entry__point { /*point*/
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: -73px;
	width: 25px;
	height: 25px;
	border: 2px solid var(--primary-color);
	border-radius: 50%;
	background: #FFF;
	z-index: 2;
	transition: all 300ms ease;
}

.timeline-entry:hover .timeline-entry__point {
	background: var(--primary-color);
}


.right .timeline-entry__point {
	right: auto;
	left: -72px;
}

.timeline-entry__gallery {
	background: rgba(0,0,0, .05);
}

.timeline-entry__gallery .swiper-wrapper {
}

.timeline-entry__gallery .swiper-slide {
	height: 350px; /*the height*/
}


.timeline-entry__gallery img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}


.timeline-entry__gallery .lightbox-link {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}


.timeline-entry__text {
	font-size: .95rem;
	padding: var(--box-padding);
}

.timeline-entry__text p:last-child {
	margin-bottom: 0;
}


.timeline-entry:first-child .timeline-entry__title::before { /*cover time line on top*/
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-100%);
	right:  -72px;
	width: 20px;
	height: 100px;
	background: #FFF;
	z-index: 1;
}

.timeline-entry:last-child .timeline-entry__title::before { /*cover time line on bottom*/
	content: "";
	position: absolute;
	top: 50%;
	right: -70px;
	width: 20px;
	height: 1000px;
	background: #FFF;
	z-index: 1;
}

.right .timeline-entry:last-child .timeline-entry__title::before {
	right: auto;
	left: -70px;
}


@media screen and (max-width: 980px) {
	.timeline {
		float: none;
	}
	
	.timeline::after { /*time line*/
		left: 10px;
	}

	.timeline-entry,
	.timeline-entry.right {
		clear: both;
		width: 100%;
		margin: 0 0 30px 0;
		padding: 0;
		padding-left: 40px;
	}

	
	.timeline-entry:nth-child(2) {
		margin-top: 0;
	}

	.timeline-entry__title,
	.right .timeline-entry__title {
		text-align: left;
	}

	.timeline-entry__title::after,
	.right .timeline-entry__title::after {
		right: auto;
		left: -10px;
		border-width: 20px 20px 20px 0;
		border-color: transparent var(--primary-color) transparent transparent ;
	}

	.timeline-entry__point,
	.right .timeline-entry__point {
		width: 21px;
		height: 21px;
		right: auto;
		left: -40px;
	}
	

	.timeline-entry__text {
		font-size: .9rem;
	}

	.timeline-entry:first-child .timeline-entry__title::before {
		right:  auto;
		left: -40px;
	}

	.timeline-entry:last-child .timeline-entry__title::before {
		left: -40px;
	}
		
}


@media screen and (max-width: 600px) { 
	.timeline-entry__gallery .swiper-slide {
		height: 240px; /*the height*/
	}
}




/* Link Cards 
--------------------------------------------------------------------------------- */

.contentblock-logo-cards {
		margin-top: calc(var(--block-vspace) + 10px);
		margin-bottom: calc(var(--block-vspace) + 15px); 

}

.logo-cards__grid {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 30px;
}

.logo-cards__grid.columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.logo-cards__grid.columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.logo-cards__grid.columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.logo-cards__grid.columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.logo-card {
	position: relative;
	background: #FFF;
	box-shadow: 0px 3px 35px -10px rgba(0,0,0, .15), 0px 2px 10px -5px rgba(0,0,0, .15);
}

.logo-card__image {
}

.logo-card__image img {
	display: block;
}

.logo-card a {
	display: block;
	background: #FFF;
}

.logo-card a:hover {
	transform: scale(1.05);
	box-shadow: 0px 3px 35px -10px rgba(0,0,0, .15), 0px 2px 10px -5px rgba(0,0,0, .15);
}



@media screen and (max-width: 980px) {
	.logo-cards__grid {
		gap: 20px;
	}
	
	.logo-cards__grid.columns-6 {
		grid-template-columns: repeat(5, 1fr);
	}

}


@media screen and (max-width: 600px) {
	.logo-cards__grid {
		grid-template-columns: repeat(3, 1fr)!important;
		gap: 10px;
	}

}




/* Related Pages
--------------------------------------------------------------------------------- */

.contentblock-related-pages {
}

.related-pages {
	border-top: 1px solid var(--border-color);
}

.related-pages__title {
	margin: 3rem 0 0 0;
}

.related-pages__list {
	margin: var(--vspace) 0 0 0;
	padding-left: 1.2rem;
}

.related-pages__list li {
	padding-left: 0;
}


.related-pages__list li::before {
	position: absolute;
	content: "\e803";
	font-family: 'icons';
	font-size: 1.4rem;
	color: var(--link-color);
	margin: -0.35rem 0 0 -1.6rem;
}

.related-pages__list a {
	display: block;
	font-weight: bold;
}

/* @end */



/* @group SEARCHANDFILTER */

/* SEARCHANDFILTER
--------------------------------------------------------------------------------- */


.searchandfilter-wrap {
	position: relative;
	padding: 50px 0 0 0;
	background: var(--secondary-color);
}


.searchandfilter-wrap::before { /*BG*/
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: var(--secondary-color) url(images/keyvisual-white.svg) no-repeat left top;
	background-size: 120%;
	opacity: .13;
}

.searchandfilter-header {
	display: flex;
	align-items: center;
	margin: 0 0 20px 0;
}

.searchandfilter-header__title {
	margin: 0;
	margin-right: auto;
	padding-right: 20px;
}

.searchandfilter-header__link {
	display: flex;
	align-items: center;
	font-weight: bold;
	font-size: 14px;
	line-height: 1.3;
	color: var(--text-color);
}

.searchandfilter-header__link:hover {
	color: var(--link-color);
}

.searchandfilter-header__link i {
	font-size: 18px;
}

.searchandfilter-header__link i:before {
	margin: 0;
}

.searchandfilter {
	position: relative;
}

.searchandfilter ul,
.searchandfilter li {
	list-style: none;
	margin: 0;
	padding: 0;
}

.searchandfilter-wrap .searchandfilter li {
	AUS_padding: 0;
}

.searchandfilter li:before {
	display: none;
}

.searchandfilter-wrap .searchandfilter > ul {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 15px 30px;
	border: 0px solid #333;
}


.searchandfilter ul ul {
	flex-wrap: wrap;
}

.searchandfilter-wrap .searchandfilter li {
	line-height: 1.2;
	padding: 0;
	border: 0px solid TAN;
}

.searchandfilter li:last-child {
	padding-right: 0;
}


.searchandfilter ul li li {
	padding: 2px 0!important;
}

.searchandfilter li .sf-count {
	color: #999;
}

.searchandfilter li h4 {
	text-transform: none;
	margin: 0 0 5px 0;
	padding: 0;
	font-size: 1rem;
	font-size: 15px;
	letter-spacing: 0;
	font-weight: normal;
	color: var(--text-color);
}


.searchandfilter input[type="checkbox"] {
	-webkit-appearance: checkbox;
	-moz-appearance: checkbox;
	
	display: block;
	height: 0.01em;
	overflow: hidden;
	clip: rect(0,0,0,0);
	
}

.searchandfilter .sf-label-checkbox {
	display: flex;
}

.searchandfilter li .sf-label-checkbox {
	padding: 0 15px 0 0!important;
}


.searchandfilter li:has(>.sf-input-checkbox):focus-within .sf-label-checkbox { /*focus style*/
	outline: 2px solid var(--primary-color);
	color: var(--primary-color);
}

.searchandfilter .sf-label-checkbox:before {
	content: "\e810"; /*unchecked icon*/
	font-family: 'icons';
	font-size: 1.4rem;
	margin: 0 7px 0px 0;
}

.searchandfilter input[type="checkbox"]:checked + .sf-label-checkbox:before {
	content: "\e80f"; /*checked icon*/
	color: var(--primary-color);
}

.searchandfilter label {
	display: flex;
	align-items: center;
	width: 100%;
	line-height: 1.4;
	font-size: 15px;
}

.searchandfilter label:hover {
	color: var(--primary-color);
}


.searchandfilter .sf-meta-range label {
	width: auto;
}


.searchandfilter .sf-field-reset a {
	color: var(--text-color);
	font-size: 0.8rem;
}

.searchandfilter .sf-field-reset a:hover {
	color: var(--primary-color);
	text-decoration: none;
}


.searchandfilter input[type="text"],
.searchandfilter input[type="number"],
.searchandfilter select {
	padding: 12px;
	font-size: 1.0rem;
	line-height: 1.3;
	color: var(--text-color);
	background-color: #FFF;
	width: 100%;
	box-sizing: border-box;
	border: none;
	-webkit-appearance: none;
	font-family: var(--sans);
	font-weight: normal;
	border-radius: 3px;
	border: none;
	border: 1px solid #FFF;
	transition: all 300ms ease;
}

.searchandfilter input:focus,
.searchandfilter select:focus {
	border-color: rgba(0,0,0, .5);

}

.searchandfilter select[multiple] {
}


/*range number*/

.searchandfilter .sf-meta-range-number .sf-range-values-seperator {
	display: flex;
	align-items: center;
	justify-content: center;	
}

.searchandfilter .sf-meta-range-number {
	display: grid;
	grid-template-columns: auto 20px auto;
}

.searchandfilter .sf-meta-range-number .sf-input-range-number {
	max-width: 100%;
}


/* range slider*/

.searchandfilter .sf-meta-range {

}

.searchandfilter .sf-meta-range .meta-slider {
	max-width: 95%;
}

.searchandfilter .sf-meta-range-slider {
	text-align: center;
		background: #FFF;
	border-radius: 5px;
	padding: 10px;
	padding-bottom: 8px;
}

.searchandfilter .sf-meta-range .sf-text-number {
}

.searchandfilter .sf-meta-range .noUi-connect {
	background: var(--primary-color);
}


/*my post meta fields - hide range min or max fields for single input*/

.searchandfilter li.sf-field-post-meta-property_total-rent {
}

.searchandfilter li.sf-field-post-meta-property_total-rent label:first-child {
	AUS_display: none;
}

.searchandfilter li.sf-field-post-meta-property_total-rent .sf-range-values-seperator {
	AUS_display: none;
}

/*floor checkboxes (Etage)*/

.searchandfilter li.sf-field-post-meta-property_floor {
	AUS_grid-column: 2 / span 2;
}

.searchandfilter li.sf-field-post-meta-property_floor ul {
	display: flex;
	padding: 5px 10px;
	background: #FFF;
	border-radius: 5px;
}


/*attributes checkboxes*/

.searchandfilter li.sf-field-post-meta-property_attributes {
	grid-column: 1 / -1; /*span all columns*/
}

.searchandfilter li.sf-field-post-meta-property_attributes ul {
	display: flex; /*checkboxes horizontal*/
}

.searchandfilter li.sf-field-submit {
	grid-column: 1 / -1;
	display: flex;
	justify-content: center;
	padding: 0;
	margin: -30px 0 0 0;
	transform: translateY(48%);
}

.searchandfilter li.sf-field-submit input {
	text-transform: uppercase;
	padding: 0.98rem 2.2rem;
	padding: 10px 60px;
	height: 60px;
	font-weight: bold;
	font-size: 16px;
	font-size: .95rem;
	line-height: 1.4;
	display: inline-flex;
	align-items: center;
	text-align: center;
	color: #FFF;
	letter-spacing: .3px;
	background: var(--primary-color);
	border: none;
	border-radius: 100px;
	margin: 0;
}

.searchandfilter li.sf-field-submit input:hover {
	AUS_background: var(--link-color-hover);
}


.searchandfilter .sf-field-reset {
	grid-column: 1 / -1;
	display: flex;
	justify-content: flex-end;
	padding: 0 0;
	margin: 0 0 10px 0;
}

.searchandfilter .sf-field-reset a {
	font-size: 14px;
	letter-spacing: .1px;
	color: var(--text-color);
}

.searchandfilter .sf-field-reset a:hover {
	color: var(--link-color);
}


/*sort order field*/

.sf-field-sort_order { /*hide but keep - necessary for PD custom sort field outside*/
	opacity: 0;
	visibility: hidden;
	position: absolute;
	left: -150vw;
}


/*custom collapse build … arghh! */

.sf-collapse {
	position: relative;
	display: flex;
	width: 15%;
	grid-column: 1 / -1;
	z-index: 1;
}


.sf-collapse-btn {
	border: none;
	padding: 5px 0;
	margin: 0;
	font-size: 14px;
	display: flex;
	align-items: center;
	line-height: 1;
	color: var(--text-color);
	background: transparent;
}

.sf-collapse-btn:hover {
	color: var(--link-color);
}

.sf-collapse-btn.active {
}

.sf-collapse-btn i {
	font-size: 16px;
}

.sf-collapse-btn.active i {
	transform: rotate(180deg);
}

@media screen and (max-width: 980px) { 
	.searchandfilter-wrap {
		padding-top: 70px;
	}
}

@media screen and (max-width: 600px) { 
	.searchandfilter-wrap {
		padding-top: 60px;
	}

	.start .searchandfilter-wrap {
		padding-top: 40px;
	}

	.searchandfilter-wrap::before { /*BG*/
		background-size: 300%;
	}

	.searchandfilter-header {
		flex-direction: column;
		align-items: flex-start;
	}
	
	.searchandfilter-header__link {
		margin: 10px 0 5px -5px;
		opacity: .6;
	}

	.searchandfilter-wrap .searchandfilter > ul {
		grid-template-columns: 1fr;
		gap: 10px 20px;
	}
	
	.searchandfilter li.sf-field-post-meta-property_attributes ul {
		display: block; /*checkboxes vertical*/
	}	
}

/* SF Results*/


.search-filter-results {
	margin: 60px 0 0 0;
}


.search-filter-results .no-results {
	margin-top: 100px;
}

.results-view-mode {
	display: flex;
	margin: 0 0 30px 0;
}


.view-mode-btn {
	position: relative;
	margin: 0;
	font-weight: bold;
	font-size: 15px;
	color: var(--text-color);
	padding: 10px 20px;
	border: none;
	background: rgba(0,0,0, .03);
	background: transparent;
	border: 1px solid var(--border-color);
	border-radius: 5px 0 0 5px;	
}

.view-mode-btn:hover {
	color: var(--primary-color);
}


.view-mode-btn:nth-child(2) {
	margin-left: -1px;
	border-radius: 0 5px 5px 0;	
}


.view-mode-btn--list {
	z-index: 1;
}

.results-view-mode-map .view-mode-btn--list {
	z-index: 0;	
}

.results-view-mode-map .view-mode-btn--map {
	z-index: 1;
	background: #FFF;
}

.results-header {
	display: flex;
	align-items: center;
	margin: 0;
}

.results-count {
	padding: 11px 0;
	font-size: 15px;
}

.results-found-1 .results-sort { /*hide sort if only 1 result*/
	display: none;
}

.results-sort {
	margin-left: auto;
	max-width: 40vw;
}

.results-view-mode-map .results-sort {
	display: none; /*hide on map view*/
}

.results-sort select {
	font-size: 15px;
	padding: 10px 20px;
	padding-right: 35px;
	color: var(--text-color);
	border-radius: 5px;
	border: 1px solid var(--border-color);
	cursor: pointer;
}


@media screen and (max-width: 600px) { 
	.view-mode-btn {
		flex: 1;
	}

	.results-sort select {
		font-size: 13px;
		padding: 10px 15px;
		padding-right: 25px;
	}
}



/* show CF7 only when SearchFilter has no results */

main:has(.search-filter-results) .wpcf7 {
	display: none;
}

main:has(.search-filter-results .no-results) .wpcf7 {
	display: block;
}


/* @end */


/* @group RESULTS VIEW MODE  */

/* RESULTS VIEW MODE
--------------------------------------------------------------------------------- */



.results-list {
	display: block;
}

.results-map {
	display: none;
}


/* map active on click */
.results-view-mode-map .results-map {
	display: block;
}

.results-view-mode-map .results-list {
	display: none;
}



/* @end */



/* @group RESULTS MAP */

/* RESULTS MAP
--------------------------------------------------------------------------------- */

.results-map {
	margin-top: var(--vspace);
}

.results-map .acf-map {
	height: 750px;
	border: 1px solid rgba(0,0,0, .1);
	box-shadow: 0px 5px 35px -10px rgba(0,0,0, .2);
}

.map-infowindow__content {
	padding: 10px;
	max-width: 240px;
	color: var(--text-color);
	font-family: var(--font-sans);
	line-height: 1.4;
}

.map-infowindow__title a {
	font-weight: bold;
	color: var(--text-color);
	font-size: 18px;
	word-wrap: break-word;
	overflow-wrap: break-word;
}

.map-infowindow__title a:hover {
	color: var(--link-color-hover);
}

.map-infowindow__location-title {
	font-weight: bold;
	font-size: 13px;
	margin-top: 15px;

}

.map-infowindow__location-title:before {
	content: "\e807";
	font-family: 'icons';
	font-size: 16px;
	line-height: 1;
	margin: 0 3px 0 -3px;
}


.map-infowindow__footer {
	margin-top: 15px;
	display: flex;
	font-size: 13px;
	color: var(--text-gray);
}

.map-infowindow__footer .divider {
	margin: 0 10px;
}


.cluster div {
	color: #FFF!important;
}



@media screen and (max-width: 600px) {

.results-map .acf-map {
	height: 520px;
	min-height: 85vh;
	}

.map-infowindow__title a {
	font-size: 16px;
}


}


/* @end */





/* @group PROPERTY CARD */

/* PROPERTY CARD
--------------------------------------------------------------------------------- */


.property-cards {
	margin-top: var(--vspace-l);
	display: grid;
	grid-template-columns: 1fr;
	gap: 30px;
	border: 0px solid #333;
}

.property-card {
	container-type: inline-size;
	width: 100%;
	position: relative;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0;
	background: #FFF;
	box-shadow: 0 9px 30px -5px rgba(0,0,0,0.21);
}

.property-card:focus-within {
	outline: 2px solid var(--primary-color);
	outline-offset: 3px;
}

.property-card__image {
	position: relative;
	min-height: 220px; /*prevent 3:2 becoming to small on mobile*/
}

.property-card__image a {
	display: block;
	height: 100%;
	overflow: hidden;
}

.property-card__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	margin: 0 auto;
	aspect-ratio: 3/2;
	transition: all 600ms ease!important;
}

.property-card__image a:hover img {
	transform: scale(1.05);
}

.property-card__content {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 40px;
	font-size: 16px; /*!*/
}
.property-card__title {
	margin: 0;
	font-family: var(--font-script);
	font-weight: normal;
	font-size: 40px;
	line-height: 1.0;
	color: var(--primary-color);
}

.property-card__title a {
	display: block;
}

.property-card__address {
	margin: 20px 0 0 0;
	font-weight: bold;
}

.property-card .table-container {
	display: contents;
}

.property-card__table  {
	margin: 20px 0 0 0;
	display: flex;
}

.property-card__table tr,
.property-card__table td {
	padding: 0;
	border: none;
}

.property-card__table td:first-child {
	 padding-right: 20px;
}

.property-card__footer {
	margin-top: auto;
	display: flex;
	flex-wrap: wrap;
	gap: 10px 0;
	align-items: center;
	padding-top: 30px;
}

.property-card__btn-icons-wrap {
	display: flex;
	position: relative;
	z-index: 1;
}

.property-card__footer .btn-icon {
	position: relative;
	width: 48px;
	height: 48px;
	margin: 0 5px 0 0;
	padding: 0;
	font-size: 24px;
	color: var(--text-gray);
	border-radius: 100%;
	border: none;
	background: #ECEDED;
	transition: all 200ms ease;
}

.property-card__footer .btn-icon,
.property-card__footer .btn-icon a {
	outline-offset: 3px;
}

.property-card__footer .btn-icon:hover {
	background: rgba(0,0,0, .1);
}


.property-card__footer .btn {
	margin-left: auto;
	height: 48px;
	padding: 0 2rem;
}


.property-card a.post-edit-link {
	position: absolute;
	top: 0;
	left: 0;
	right: auto;
	bottom: auto;
}


@media screen and (max-width: 768px) { 
	.property-card__content {
		padding: 30px;
		font-size: 15px;
	}
	.property-card__title {
		font-size: 36px;
	}
	.property-card__address {
		margin-top: 10px;
	}
	.property-card__table {
		margin-top: 10px;
	}
	
	
}


@media screen and (max-width: 600px) { 
	.property-card {
		grid-template-columns: 1fr;
	}	
		
}


/* ** property card style: vertical */

.property-card.property-card--vr {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.property-card.property-card--vr .property-card__content {
	flex: 1;
	font-size: 15px;
	line-height: 1.6;
}



/* ** property card style: cta */

.property-card.property-card--cta {
	display: flex;
	width: 100%;
	background: var(--secondary-bg);
}


.property-card.property-card--cta .property-card__content {
	display: flex;
	width: 100%;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
}


.property-card.property-card--cta .property-card__button {
	margin-top: var(--vspace);
}




/* ** property card style: map */


.gm-style .gm-style-iw-c { /*google infowindow*/
	padding: 0;
	border-radius: 0;
	min-width: 260px!important;
}

.gm-style-iw-chr {
	position: absolute;
	width: 100%;
	top: 0;
	z-index: 1;
}

.gm-style .gm-ui-hover-effect > span {
	}

.gm-style .gm-style-iw-d {
	 overflow: hidden!important;
}


.gm-style .gm-ui-hover-effect {
	opacity: 0; /*hide close button*/
}


.map-infowindow {
	position: relative;
	border-radius: 3px;
	overflow: hidden;
}

.map-infowindow:after { /*fake close button*/
	content: "\e811";
	position: absolute;
	top: 5px;
	right: 5px;
	text-align: center;
	font-size: 24px;
	color: #FFF;
	text-shadow: 0 0 5px rgba(0,0,0, .5), 0 0 20px rgba(0,0,0, .8);
	font-family: 'icons';
	pointer-events: none;
}

.property-card.property-card--map {
	display: flex;
	flex-direction: column;
	height: 100%;
	max-width: 260px;
	font-family:  var(--font-sans);
	font-weight: normal;
}

.property-card.property-card--map .property-card__image {
	position: relative;
	height: 180px;
	min-height: auto;
}

.property-card.property-card--map .property-card__image a {
	position: absolute;
	display: block;
}

.property-card.property-card--map .property-card__content {
	flex: 1;
	font-size: 14px;
	line-height: 1.6;
	padding: 20px;
}

.property-card.property-card--map .property-card__title {
	font-size: 30px;
	margin-top: -5px;
}

.property-card.property-card--map .property-card__address {
	margin-top: 10px;
	line-height: 1.5;
}
	
.property-card.property-card--map .property-card__table {
	margin-top: 10px;
	line-height: 1.5;
}

.property-card.property-card--map .property-card__footer {
	padding-top: 20px;
}

.property-card.property-card--map .property-card__footer .btn-icon {
	width: 40px;
	height: 40px;
	font-size: 20px;
}

.property-card.property-card--map .show-map-modal {
	display: none;
}

.property-card.property-card--map .property-card__footer .btn {
	height: 40px;
	padding: 0 30px;
	font-size: 14px;
}

@media screen and (max-width: 600px) { 
	.property-card.property-card--map .property-card__image {
		height: 140px;
	}

	.property-card.property-card--map .property-card__content {
		font-size: 13px;
		padding: 5px 15px 15px 15px;
	}

	.property-card.property-card--map .property-card__title {
		font-size: 26px;
		display: none; /*wird zu enge*/ 
	}
	
}





/* @end */



/* @group PROPERTY */

/* PROPERTY 
--------------------------------------------------------------------------------- */


.property-header {
	background: var(--primary-bg);
}

.property-header__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0;
	margin: 0 auto;
	max-width: 1740px; /*wide*/
}

.property-header__content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	justify-self: end;
	padding: 50px;
	padding-left: var(--container-padding);
	width: 100%;
	max-width: calc(var(--container-width) / 2);
}

.property-header__title-wrap {
	margin-top: auto;
}

.property-header__title {
	margin: 0;
	font-family: var(--font-script);
	font-size: 48px;
	line-height: 1.1;
}

.property-header__address {
	display: flex;
	align-items: center;
	margin-top: 10px;
	font-weight: bold;
	line-height: 1.4;
}

.property-header__address i {
	margin: 0 2px 0 -.5rem;
	font-size: 1.5rem;
}

.property-header__button {
	margin-top: var(--vspace);
}

.property-tools {
	margin-top: auto;
	padding-top: 40px;
	display: flex;
	gap: 30px;
}

.property-tool-btn {
	position: relative;
	color: var(--text-colo);
	font-weight: bold;
	text-transform: uppercase;
	font-size: 15px;
	line-height: 1;
	padding: 0;
	border: 0;
	background: transparent;
	display: flex;
	align-items: center;
	margin: 0 0 0 0;
	cursor: pointer;
	transition: all 300ms ease;
	border-radius: 0;
}

.property-tool-btn:hover {
	color: var(--link-color);
}

.property-tool-btn.active {
	color: var(--link-color);
}

.property-tool-btn button,
.property-tool-btn a {
	display: flex;
	align-items: center;
	color: inherit;
	border: none;
	text-transform: uppercase;
	background: transparent;
	border-radius: 0!important;
}

.property-tool-btn i {
	font-size: 24px;
	margin: 0 5px 0 -5px;
}

.tooltip {
	position: absolute;
	top: -10px;
	left: -20px;
	transform: translateY(-100%);
	padding: 12px 20px;
	box-shadow: 0 9px 32px -9px rgba(0,0,0,0.17);
	border-radius: 7px;
	background: #FFF;
	opacity: 0; /*js toggle*/
	visibility: hidden;
	transition: all 200ms ease;
}

.tooltip.active {
	top: -20px;
	opacity: 1;
	visibility: 1;
}

.tooltip::after { /*triangle*/
	content: "";
	position: absolute;
	bottom: -10px;
	left: 20px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 12px 12px 0 12px;
	border-color: #FFF transparent transparent transparent;
}

.tooltip a {
	display: flex;
	align-items: center;
	color: var(--text-color);
	font-size: 14px;
	line-height: 1.5;
}

.tooltip a:hover {
	color: var(--link-color);
}

.tooltip a i {
	font-size: 22px;
}



.property-header__gallery {
	position: relative;
	overflow: hidden;
	height: 600px; /*the height*/
}


.property-label {
	position: absolute;
	top: 30px;
	left: 0;
	max-width: 90%;
	padding: 8px 16px;
	font-weight: bold;
	AUS_font-size: var(--text-small);
	color: var(--primary-color);
	background: #FFF;
	box-shadow: 0px 5px 15px -5px rgba(0,0,0, .1);
	z-index: 1;
	pointer-events: none;
}

@container (width < 980px) { 
	.property-label {
		top: 20px;
		font-size: var(--text-small);
	}
}

.property-header__gallery img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	margin: 0 auto;
}


.property-gallery__featured-image-link {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	z-index: 1;
}


.property-gallery__buttons {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	margin: 30px;
	display: flex;
}

.property-gallery__buttons a {
	height: 60px;
	margin: 0 15px 0 0;
	padding: 0 2.2rem;
	font-size: var(--text-small);
	font-weight: bold;
	border-radius: 100px;
	z-index: 1;
	display: flex;
	align-items: center;
	color: var(--link-color);
	background: #FFF;
	box-shadow: 0px 3px 30px -10px rgba(0,0,0, .25);
	transition: all 250ms ease;
}

.property-gallery__buttons a:hover {
	color: var(--link-color-hover);
}

.property-gallery__buttons a i {
	margin: 0 8px 0 -.5rem;
	font-size: 26px;
}

.property-gallery__gallery-btn  {
}

.property-gallery__gallery-btn:focus-visible  {
	outline: 2px solid royalblue;
	outline-offset: -4px;
}

.property-gallery__gallery-btn span {
	padding-left: 3px;
}

.property-gallery__gallery-btn::after  { /*expand link area across image*/
	content: "";
	position: absolute;
	top: -1000px;
	left: -100px;
	width: 2000px;
	height: 2000px;
	opacity: .5;
	z-index: -1;
}

.property-gallery__gallery-btn:focus-within::before { /*fix for focus outline*/
	display: none;
}

.property-gallery__floor-plan-btn {
}


.property-gallery-btn:hover {
	color: var(--link-color-hover);
}

.property-gallery__image-links {
	position: absolute;
	top: 0;
	margin: 0;
	background: beige;
	display: none;
}

.property-content {

}

.property-content-2-columns {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 50px;
	max-width: var(--aligndefault-width);
	margin-left: auto;
	margin-right: auto;
	
	border: 1px solid TAN;
}


.property-content section {
}


.property-nilsbox {
	margin-top: var(--vspace-l);
	margin-bottom: var(--vspace-l);
}

.property-map {
	margin-top: var(--vspace);
}


.property-map .acf-map {
	  width: 100%;
	  height: 400px;
}


.property-content .back-to-page {
	margin-top: var(--vspace-xl);
}



@media screen and (max-width: 980px) { 
	.property-header__grid {
		grid-template-columns: 1fr;
	}
	
	.property-header__content {
		order: 2;
		max-width: 100%;
		padding: 50px;
	}
	
	.property-header__gallery {
		height: 500px; /*the height*/
	}
}


@media screen and (max-width: 600px) { 
	.property-header__content {
		padding: 40px;
	}
		
	.property-header__title {
		font-size: 38px;
	}

	.property-tools {
		justify-content: space-between;
		gap: 5px;
	}

	.property-tool-btn {
		flex-direction: column;
		margin: 0;
	}
	
	.property-tool-btn i {
		margin: 0 0 10px 0;
	}
	
	
	/* == favorites button in property header */
		
	.property-header .ccc-favorite-post-toggle {
		height: 100%;
	}
	
	.property-header .ccc-favorite-post-toggle a.ccc-favorite-post-toggle-button {
		display: flex;
		flex-direction: column;
	}

	.property-header .ccc-favorite-post-toggle a.ccc-favorite-post-toggle-button .text {
		margin: 0;
	}

	.property-header .ccc-favorite-post-toggle a.ccc-favorite-post-toggle-button::before {
		position: relative;
		margin-bottom: auto;
}


	.property-header__gallery {
		height: 280px; /*the height*/
	}
	
	.property-gallery__buttons {
		margin: 20px 20px;
	}
	
	.property-gallery__buttons a {
		height: 50px;
		padding: 10px 25px;
		font-size: 15px;
	}
	
	.property-gallery__gallery-btn span {
		display: none;
	}

}


.property-content {
	margin-top: var(--vspace-xl);
}

/* @end */



/* @group MAP MODAL */

/* MAP MODAL
--------------------------------------------------------------------------------- */



#map-modal.active {
	visibility: visible;
	opacity: 1;
}


#map-modal { /*dialog element*/

    border: none;
    padding: 0;
	margin: 0 auto;
    width: 100%;
	height: 100%;
    max-width: 100%;
	background: transparent;
}

#map-modal[open] {
	display: flex;
	justify-content: center;
	align-items: center;
}

#map-modal::backdrop {
    background: rgba(0, 0, 0, 0.4);
}

.map-modal-content {
	position: relative;
	width: 1000px;
	height: 700px;
	max-width: 90vw;
	max-height: 80vh;
	min-height: 350px;
	padding: 20px;
	background: #FFF;
	background: #FFFFFF;
	box-shadow: 0 30px 90px -5px rgba(0,0,0,0.33);
	transition: all 300ms ease;
}


button.map-modal-close {
	position: absolute;
	top: 0;
	right: 0;
	width: 50px;
	height: 50px;
	color: #FFF;
	border: none;
	padding: 0;
	font-size: 25px;
	text-align: center;
	background: var(--primary-color);
	z-index: 1;
}

#map-modal-canvas {
  height: 100%;
  width: 100%;
  background: var(--primary-bg);
}


@media screen and (max-width: 600px) { 
	.map-modal-content {
		padding: 10px;
	}
}


/* @end */




/* @group BLOG */

/* BLOG
--------------------------------------------------------------------------------- */



.blog-entry-grid {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 30px;
	margin-top: 80px;
}


.blog-entry-featured {
	position: relative;
	display: grid;
	grid-template-columns: 1fr 1fr;
  	grid-column: span 3;
	background: var(--secondary-color);
	margin-bottom: 60px;
	box-shadow: 0px 20px 50px -10px rgba(0,0,0, .2);
	/*
	margin-left  : calc(10% - 10vw );
    margin-right : calc( 10% - 10vw );
    max-width    : 100vw;
	*/

}

.blog-entry-featured__image {
  	position: relative;
  	height: 500px; /*the height*/
}

.blog-entry-featured__image a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: block;
	overflow: hidden;
}

.blog-entry-featured__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	margin: 0 auto;
	transition: all 600ms ease!important;
}

.blog-entry-featured__image a:hover img {
	transform: scale(1.1);
}

.blog-entry-featured__content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 70px;
}

.blog-entry-featured__title {
	margin: 0!important;
	font-size: 22px;
	font-weight: bold;
	color: var(--primary-color);
}

.blog-entry-featured__title a {
	display: block;
}

.blog-entry-featured__date {
	margin-top: 10px;
	font-size: var(--text-small);
}

.blog-entry-featured__btn {
	position: inherit;
	margin-top: var(--vspace);
	margin-right: auto;
}

AUS_.blog-entry-featured__btn::after { /*link area*/
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: transparent;
}

.blog-entry {
	display: flex;
	flex-direction: column;
}

.blog-entry > a {
	display: block;
	overflow: hidden;
	outline-offset: 3px;
}

.blog-entry header {
}

.blog-entry__image {

}

.blog-entry__image {
	overflow: hidden;
	aspect-ratio: 3/2;
}

.blog-entry__image img {
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
	object-fit: cover;
	object-position: center;
	margin: 0 auto;
	transition: all 600ms ease!important;
}

.blog-entry:hover img {
	transform: scale(1.1);
}

.blog-entry__content {
	padding: 20px 5px;
	height: 100%;
}

.blog-entry__cats {
	display: none;
}

.blog-entry__cats span {
	display: inline-block;
	color: rgba(72, 88, 106, .3);
	letter-spacing: -1px;
}


.blog-entry__title {
	margin: 0!important;
	padding: 0;
	font-size: 38px;
	font-size: 1.0rem;
	font-weight: bold;
	line-height: 1.5;
}

.blog-entry__title a {
	display: block;
}

.blog-entry__title a:hover  {
}

.blog-entry__date {
	font-size: var(--text-small);
	color: var(--text-gray);
}


@media screen and (max-width: 1200px) {

}



@media screen and (max-width: 980px) {
	.blog-entry-grid {
		grid-template-columns: 1fr 1fr;
		gap: 30px;
	}

	.blog-entry-featured {
		margin-left: 0;
		margin-right: 0;
		grid-template-columns: 1fr;
		grid-column: span 2;
		min-height: auto; /*the height*/
	}

	.blog-entry-featured__image {
		height: auto; /*the height*/
		padding-top: 66.66%; /* 3:2 Aspect Ratio */
	}

	.blog-entry-featured__content {
		padding: 40px;
	}
}


@media screen and (max-width: 600px) {
	.blog-entry-grid {
		grid-template-columns: 1fr;
		gap: 30px;
		margin-top: 60px;
	}

	.blog-entry-featured {
		grid-column: span 1;
		margin-bottom: 30px;
	}
	
	.blog-entry-featured__image {
	}

	.blog-entry-featured__content {
		padding: 30px;
	}

	.blog-entry-featured__title {
		font-size: 1.1rem;
	}

}






/* single post */

.blog-post__header {
}

.blog-post__title {
	margin: 0 0 0 0;
}

.blog-post__meta {
	margin: 1rem 0 0 0;
	color: var(--text-gray);
	font-size: var(--text-small);
	letter-spacing: .3px;
}

.blog-post__meta a {
	color: var(--text-gray);
}

.blog-post__meta a:hover {
	color: var(--link-color);
}

.blog-post__meta div {
	display: inline;
}

.blog-post__meta-divider {
	padding: 0 5px;
}

.blog-post__date {
}

.blog-post__cats {
}

.blog-post__image {
	position: relative;
	width: 100%;
	max-width: 900px;
	padding: 0;
	margin-left: auto;
	margin-right: auto;
	margin-top: var(--vspace-xl);
	display: block;
	overflow: hidden;
}

.blog-post__image img {
	width: 100%;
}

.blog-post__image p.wp-caption-text {
	margin: 0.6rem 0 0 0;
	font-size: 0.8rem;
}

.blog-post__content {
	width: 100%;
	display: block;
	padding: 0;
	margin: var(--vspace-l) 0 0 0;
}

.blog-post__tags {
	font-size: var(--text-small);
	margin: var(--vspace-l) 0 0 0;
}

.blog-post__tags a {
	color: var(--text-gray);
}

.blog-post__tags a:hover {
	color: var(--link-color);
}

.blog-post__tags span {
	display: inline-block;
}

.back-to-blog {
	margin-top: var(--vspace-xl);
}

.back-to-blog a {
}

.back-to-blog a:hover {
}



/* Archive */


.show-tax {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	position: relative;
	font-size: 1.0rem;
	padding: 30px;
	background: var(--primary-bg);
}

.show-tax__tax {
	flex: 1;
}

.show-tax__title {
	font-weight: bold;
	color: var(--text-color);
}

.show-tax__all {
	margin: 0 0 0 auto;
	line-height: 1;
	font-size: 1.5rem;
	color: var(--text-gray);
}




/* post-pagination */

.post-pagination {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	text-align: center;
	margin: 90px 0 0 0;
	margin-left: -10px;
	margin-right: -10px;
	text-transform: uppercase;
}

.post-pagination a.page-numbers,
.post-pagination .page-numbers {
	flex: 0 0 auto;
	width: 60px;
	height: 60px;
	border-radius: 100%;
	line-height: 60px;
	text-align: center;
	font-weight: bold;
	font-size: 18px;
	margin: 10px 10px;
	color: var(--text-color);
	background: var(--primary-bg);
}

.post-pagination .page-numbers.current {
	background: #FFF;
	border: 1px solid var(--border-color);
	box-shadow: 0px 3px 20px -5px rgba(0,0,0, .1);
}

.post-pagination .page-numbers.dots {
	background: transparent;
	width: auto;
	color: var(--text-gray);
}

.post-pagination a:hover {
	background: var(--text-color);
	color: #FFF;
}

.post-pagination a.page-numbers.prev,
.post-pagination a.page-numbers.next {
	font-size: 28px;
	display: block;
}

a.prev span,
a.next span {

}

.post-pagination a.page-numbers b {
	display: none;
}

body:not(.paged) .post-pagination a.next,
body:not(.paged) .post-pagination a.next {
}


@media screen and (max-width: 600px) {
	.post-pagination a.page-numbers:not(.next):not(.prev),
	.page-numbers.current,
	.page-numbers.dots {
		display: none;
	}

	.post-pagination a.page-numbers.next,
	.post-pagination a.page-numbers.prev  {
		flex: 1 0 auto;
		display: flex;
		flex-wrap: nowrap;
		align-items: center;
		justify-content: center;
		line-height: 1;
		width: auto;
		height: auto;
		border-radius: 0;
		background: transparent;
		border: 0px solid #333;
	}

	.post-pagination a.page-numbers i {
		background: var(--primary-bg);
		width: 56px;
		height: 56px;
		display: block;
		line-height: 56px;
		border-radius: 100%;
	}

	.post-pagination a.page-numbers:hover i {
		color: var(--text-color);
	}

	.post-pagination a.page-numbers b {
		display: block;
		font-size: var(--text-small);
		letter-spacing: .3px;
		color: var(--text-gray);
		margin: 0 20px;
	}

}


/* Post Taxonomies  */

.post-tax-section {
	margin: 0 0 0 0;
	padding: 0 0 var(--main-padding-bottom) 0;
}

.post-tax {
}

.post-tax__title {
	margin: 0 3rem 1rem 0;
}


.post-tax__list {
	margin-top: var(--vspace);
	AUS_columns: 3;
    AUS_column-gap: 30px;
}

.post-tax__list li a {
	display: block;
	margin: 0 0 0.5rem 0;
	text-decoration: none;
	font-weight: bold;
}

.post-tax__list li a:hover {
	color: #48586A;
}



/* @end */


/* @group TEMPLATE: START */

/* Template: Start
--------------------------------------------------------------------------------- */


.hero {
	position: relative;
	height: 800px; /*the height*/
	overflow: hidden;
	background: var(--primary-color);
}

.hero__image {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

.hero__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	margin: 0 auto;
	opacity: 1;
}

.hero__image.focal-align-left img {
	object-position: left;
}

.hero__image.focal-align-right img {
	object-position: right;
}


.hero__overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: #000;
	opacity: .2; /*custom field*/
}

.hero__content {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;	
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 0 var(--container-padding);
	max-width: 1600px;
	margin: 0 auto;
}

.hero__title {
	margin: 0;
	line-height: 0.8;
	font-size: 170px; /*170*/
	font-family: var(--font-script);
	font-weight: normal;
	text-align: center;
	color: #FFF;
	max-width: 1200px;
	transform: rotate(-5deg);
	text-shadow: 5px 5px 0 var(--primary-color), 0 2px 24px rgba(0,0,0, 0.3);
	border: 0px solid CYAN;
}

.hero__title.small {
	font-size: 120px; 
}

.hero__btn {
	position: absolute;
	bottom: 50px;
	right: 0;
	color: #FFF;
	display: flex;
	align-items: center;
	font-weight: bold;
	line-height: 1.4;
	padding: 30px 40px;
	background: var(--primary-color);
}

.hero__btn:hover {
	color: rgba(255,255,255, .7);
}

.hero__btn i {
	font-size: 1.8rem;
	margin: 0 -10px 0 10px;
}



@media screen and (max-width: 1136px) {
	.hero {
		height: 600px; /*the height*/
	}
	
	.hero__title {
		line-height: 0.8;
		font-size: 120px;
	}
	
	.hero__title.small {
		font-size: 100px; 
	}

	.hero__btn {
		bottom: 30px;
		padding: 20px 30px;
	}

}


@media screen and (max-width: 768px) {
	.hero {
		height: 500px; /*the height*/
	}
	
	.hero__title {
		font-size: 100px;	
	}
		
	.hero__title.small {
		font-size: 80px; 
	}
	
	.hero__title br {
		display: none;
	}
}



@media screen and (max-width: 600px) {
	.hero {
		height: 70vh; /*the height*/
		min-height: 400px;
		max-height: 500px;
	}
	
	.hero__title {
		line-height: 0.8;
		font-size: 70px;
		text-shadow: 3px 3px 0 var(--primary-color), 0 2px 15px rgba(0,0,0, 0.3);
	}
	
	.hero__title.small {
		font-size: 55px;
		line-height: 0.9;
	}
	
	.hero__btn {
		font-size: 15px;
		padding: 15px 15px 15px 25px;
	}
	
	.hero__btn i {
		font-size: 1.5rem;
	}

}


.section-service {
	padding: 100px 0;
}

.service-cards {
	position: relative;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: 30px;
	justify-content: center;
}

.service-cards.has-3 {
	grid-template-columns: 1fr 1fr 1fr;
}

.service-card {
	min-width: 40%;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 40px 20px;
	text-align: center;
	background: #FFF;
	border: 1px solid #ECEDED;
	box-shadow: 0 2px 34px -5px rgba(0,0,0,0.05), 0 9px 30px -5px rgba(0,0,0,0.11);
}

.service-card__icon {
	width: 80px;
	height: 80px;
	transition: all 300ms ease;
}

.service-card__icon img {
	
}

.service-card:hover .service-card__icon {
	transform: scale(1.2);
}

.service-card__title {
	margin-top: 15px;
	line-height: 1.3;
	font-weight: bold;	
}

.service-card i {
	position: absolute;
	top: 50%;
	right: 3px;
	transform: translateY(-50%);
	font-size: 1.5rem;
}

@media screen and (max-width: 980px) {
	.service-cards {
		display: grid;
		grid-template-columns: 1fr 1fr!important;
		gap: 20px;
	}
}

@media screen and (max-width: 600px) {
	.section-service {
		padding: 80px 0;
	}
	
	.service-card {
		padding: 30px 20px;
	}
	
	.service-card__title {
		font-size: var(--text-small);
	}
}


.section-featured-properties {
	position: relative;
	padding: 80px 0;
	background: var(--primary-bg);
}


.section-featured-properties::before { /*BG*/
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: transparent url(images/keyvisual-half-gray.svg) no-repeat left center;
	background-size: contain;
	opacity: .15;
}


main h2.section-title {
	margin: 0 0 65px 0;
	font-size: 30px;
}

.section-bg {
	
}

.featured-properties {
	
}

.featured-properties-slider {
	border: 0px solid #333;
}

.featured-properties-slider .swiper {
	max-width: var(--container-width);
	padding: 0 var(--container-padding); /*space for card shadow*/
	overflow: visible; /*allow prev-next btn outside*/
}

.featured-properties-slider .swiper-wrapper {
	margin-bottom: 30px;
}

.featured-properties-slider .swiper-slide {
	display: flex;
	height: auto; /*make same height*/
}

.featured-properties-slider .property-card {
	transition: all 200ms ease;
}

.featured-properties-slider .swiper-pagination {
	position: relative;
	bottom: 0;
}

.featured-properties-slider .swiper-button {
}

.featured-properties-slider .swiper-button-prev {
	left: -60px;
}

.featured-properties-slider .swiper-button-next {
	right: -60px;
}


@media screen and (max-width: 1200px) {
	.featured-properties-slider .swiper-button-prev {
		left: 20px;
	}
	
	.featured-properties-slider .swiper-button-next {
		right: 20px;
	}
}

@media screen and (max-width: 980px) {
	.featured-properties-slider .swiper-button {
		display: none;
	}
}


/*primary teaser*/

.section-primary-teaser {
	padding: 100px 0 0 0;
}


.section-service + .section-primary-teaser {
	padding-top: 0;
}


.primary-teaser {
	margin-top: 50px;
	display: grid;
	grid-template-columns: 6.5fr 5fr;
	background: var(--secondary-color);
}

.primary-teaser:nth-child(even) {
	grid-template-columns:  5fr 6.5fr;
	order: 2;
}

.primary-teaser:nth-child(even) .primary-teaser__image {
	order: 2;
}


.primary-teaser__image {
	height: 520px; /*the height*/
	
}

.primary-teaser__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	margin: 0 auto;
	opacity: 1;
}


.primary-teaser__content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 50px 30px;
}

.primary-teaser__content .inner {
	max-width: 350px;
	margin: 0 auto;
}


.primary-teaser__title {
	margin: -5px 0 -10px 0;
	font-family: var(--font-script);
	font-size: 50px;
	line-height: 1.0;
	font-weight: normal;
	color: var(--primary-color);
}

.primary-teaser__subtitle {
	font-size: 16px;
}

.primary-teaser__btn {
	margin-top: var(--vspace);
	margin-right: auto;
}


@media screen and (max-width: 768px) {
	.primary-teaser,
	.primary-teaser:nth-child(even) {
		grid-template-columns: 1fr;
	}

	.primary-teaser__image {
		height: 360px; /*the height*/
	}	

	.primary-teaser:nth-child(even) .primary-teaser__image {
		order: 0;
	}

	.primary-teaser__content .inner {
		max-width: 500px;
	}
}

@media screen and (max-width: 600px) {
	.primary-teaser__image {
		height: 280px; /*the height*/
	}	
	.primary-teaser__title {
		font-size: 44px;
	}
}


/*recents posts*/

.section-recent-posts {
	padding: 80px 0;
}

.recent-posts {
	
}

.recent-posts-grid {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 30px;
}


.recent-posts-card {
	display: flex;
	flex-direction: column;
}

.recent-posts-card > a {
	display: block;
	overflow: hidden;
	outline-offset: 3px;
}

.recent-posts-card__image {
	overflow: hidden;
	aspect-ratio: 3/2;
}

.recent-posts-card__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	overflow: hidden;
	margin: 0 auto;
	transition: all 600ms ease!important;
}

.recent-posts-card:hover img {
	transform: scale(1.1);
}

.recent-posts-card__content {
	padding: 20px 5px;
	height: 100%;
}

.recent-posts-card__title {
	margin: 0!important;
	padding: 0;
	font-size: 38px;
	font-size: 1.0rem;
	font-weight: bold;
	line-height: 1.5;
}

.recent-posts-card__date {
	font-size: var(--text-small);
	color: var(--text-gray);
}

.recent-posts-button-wrap {
	margin-top: var(--vspace-l);
	text-align: center;
}


@media screen and (max-width: 600px) {
	.section-recent-posts {
		padding: 70px 0 60px 0;
	}
	
	.recent-posts-grid {
		grid-template-columns: 1fr;
	}

}



/*numbers*/


.section-numbers {
	position: relative;
	padding: 100px 0 120px 0;
	background: var(--primary-bg);
}

.section-numbers::before { /*BG*/
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: transparent url(images/keyvisual-half-gray.svg) no-repeat left center;
	background-size: contain;
	opacity: .15;
}


.numbers-grid {
	display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px
}


.numbers-grid.has-3,
.numbers-grid.has-5,
.numbers-grid.has-6 {
    grid-template-columns: repeat(3, 1fr);
}


.numbers-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 40px 20px;
	background: #FFF;
	text-align: center;
	border: 0px solid #333;
}

.numbers-card__icon {
}

.numbers-card__icon img{
}

.numbers-card__number {
	position: relative;
	font-weight: bold;
	font-size: 38px;
	line-height: 1.6;
	color: var(--primary-color);
}

.numbers-card__title {
	font-size: var(--text-small);
	line-height: 1.4;
}


.numbers-button-wrap {
	margin-top: var(--vspace-xl);
	text-align: center;
}

@media screen and (max-width: 980px) {
	.numbers-grid {
	    gap: 10px;
	}
	
	.numbers-card__number {
		font-size: 32px;
	}
	
}


@media screen and (max-width: 768px) {
	.section-numbers {
		padding: 80px 0 100px 0;
	}
	
	.numbers-grid,
	.numbers-grid.has-3,
	.numbers-grid.has-5,
	.numbers-grid.has-6  {
	    grid-template-columns: repeat(2, 1fr);
	}
		
}



/* @end */


/* @group SEARCH */

/* Search
--------------------------------------------------------------------------------- */



.search-result {
}

.search-result__title {

}

.search-result.no-result .searchform {

}

.searchform-wrap {
	position: relative;
	max-width: 100%;
	margin-top: var(--vspace);
	border: 0px solid #333;
}

.searchform {
	position: relative;
	box-shadow: 0px 5px 30px -10px rgba(0,0,0, .15);
}

.searchform input[type="text"] {
	border: none;
	padding: 20px;
	width: 100%;
	height: 3.3rem;
	font-size: 1.1rem;
	line-height: 1;
	color: var(--text-color);
}

.searchform input::placeholder {
	font-family: var(--font-serif);
	font-style: italic;
	font-weight: normal;
}

.searchform .searchsubmit {
	position: absolute;
	top: 0;
	right: 0;
	border: none;
	padding: 0;
	font-weight: 700;
	font-size: 13px;
	text-transform: uppercase;
	width: 3rem;
	height: 100%;
	z-index: 1;
	background: transparent;
	border-radius: 5px;
	outline-offset: -2px;
}

.searchform i {
	position: relative;
	text-align: center;
	font-size: 1.4rem;
	color: var(--primary-color);
	background: transparent;
}


.search-result .searchform input.s {
	border: 1px solid var(--border-color);
	border-radius: 5px;
	box-shadow: none;
}



.search-result__list {
	margin-top: var(--vspace);
}

.search-result span {
	color: var(--orange);
	font-weight: bold;
}

.search .hentry {
	border: 0;
	border-bottom: 1px solid var(--border-color);
	margin: 0;
}

.search-result__entry a {
	display: block;
	font-weight: bold;
	padding: 0.6rem 0;
}

.search-result__entry .type-page .entry-details {
	display: none;
}

.search .post-pagination {
	margin-top: 30px;
}


.search-results .entry-details span {
	display: none;
}

/* @end */


/* @group PW protected */

/* PW Protected
--------------------------------------------------------------------------------- */


.post-password-form {
	text-align: center;
	padding: 30px;
	background: var(--primary-bg);
}

.post-password-form p {
	display: none;
}

.post-password-form p + p {
	display: block;
	margin: 0;
}

.post-password-form input {
	font-size: 1rem;
	padding: 10px;
	max-width: 100%;
	border: 1px solid var(--border-color);
}

.post-password-form input[type="submit"] {
	display: none;
}

/* @end */


/* @group FORMS */

/* FORMS (contact form 7)
--------------------------------------------------------------------------------- */


.wpcf7 {
	position: relative;
}

.wpcf7-form {
	position: relative;
	margin: 0 auto;	
	margin-top: 60px;
	overflow: visible;
	display: flex;
	justify-content: center;
	max-width: 1000px;
	background: #FFF;
	box-shadow: 0 2px 22px -6px rgba(0,0,0,0.11), 0 2px 74px -10px rgba(0,0,0,0.08);
}

.wpcf7-form .form-wrap {
	position: relative;
	margin: 0 auto;
	overflow: hidden;
	border: 0px solid #333;
	padding: 60px 30px;
	max-width: calc(var(--aligndefault-width) + 60px);
}

.wpcf7-form .form-wrap:after { /*triangle*/
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	transform: translateX(50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 20px 20px 0 20px;
	border-color: var(--secondary-color) transparent transparent transparent;
}



@media screen and (max-width: 600px) {
	.wpcf7-form .form-wrap {
		padding: 50px 20px;
	}

	.wpcf7-form .form-wrap:after {
		top: -5px;
		left: -10px;
	}

	
}



.wpcf7-form .form-wrap > *:first-child,
.wpcf7-form .fieldset > *:first-child {
	margin-top: 0;
}


.wpcf7 .form-title {
	margin: var(--vspace-l) 0;
}

.wpcf7 hr {
	margin: 1.0rem 0 1.5rem 0;
	border-color: rgba(0,0,0, .2);
}

.wpcf7 h4 {
	border-bottom: 1px solid var(--primary-color);
	padding-bottom: 10px;
	margin: 0 0 1.5rem 0;
	font-size: 1.0rem;
	letter-spacing: 0;
	text-transform: none;
	color: var(--primary-color);
}

.wpcf7 br {
	display: none;
}

.wpcf7 p {
	margin: 1rem 0 0.5rem 0;
}


.wpcf7 .fieldset {
	margin-top: var(--vspace);
}

.wpcf7 .form-field {
	margin-bottom: 0.8rem;
	z-index: 1;
}


.wpcf7 .form-field:focus-within label,
.wpcf7 .form-field.select-focus label {
}

.wpcf7 label {
	padding: 0 0;
	width: auto;
	text-transform: none;
	font-size: 0.9rem;
	padding-right: 10px;
	margin: 0 0 0.3rem 0;
	display: inline-block;
	text-align: left;
	line-height: 140%;
	cursor: default;
	transition: all 350ms ease;
	color: var(--text-color);
}

.wpcf7 .row {
	margin-left: -10px;
	margin-right: -10px;
}

.wpcf7 .row-pflichtangaben {
	margin-bottom: 0.5rem;
	font-size: 0.6rem;
	text-align: right;
	text-transform: uppercase;
	color: #999;
}

.wpcf7 .row-submit {
}

.wpcf7 .row.response {
	margin-bottom: 0;
}

.wpcf7 [class*=col-] {
	padding: 0 10px;
}


.wpcf7 input.wpcf7-text,
.wpcf7 input.wpcf7-quiz,
.wpcf7-text,
.wpcf7 textarea,
.wpcf7 select,
.wpcf7-date,
.wpcf7-number,
.wpcf7-captchar,
.wpcf7-file,
.wpcf7-email {
	padding: 1.0rem;
	font-size: 1.0rem;
	line-height: 1.3;
	color: var(--text-color);
	background-color: #FFF;
	width: 100%;
	box-sizing: border-box;
	border: none;
	-webkit-appearance: none;
	font-family: var(--sans);
	font-weight: normal;
	border-radius: 3px;
	border: none;
	border: 1px solid var(--border-color);
	transition: all 300ms ease;
}

.wpcf7 input:focus,
.wpcf7 textarea:focus,
.wpcf7 select:focus {
	border-color: rgba(0,0,0, .5);

}

input::-webkit-input-placeholder,
input::-moz-placeholder,
input::-ms-input-placeholder,
input::-moz-placeholder {
}


.wpcf7 textarea {
	max-height: 200px;
	line-height: 150%;
	width: 100%;
}


.wpcf7-recaptcha {
	 overflow: hidden;
	 margin-bottom: 0.5rem;
}


.wpcf7 .form-field--submit {
	margin: 0;
}

.wpcf7 .submit-btn-wrap {
	position: relative;
	display: flex;
	align-items: center;
}


.wpcf7 input.wpcf7-submit {
	
}

.wpcf7 input.wpcf7-submit:hover {
}

.wpcf7 input.wpcf7-submit:active {
}


.wpcf7 .wpcf7-spinner {
	flex: 0 0 24px;
	background: rgba(0,0,0, .3);
	AUS_visibility: visible!important;

}

.wpcf7 .response {
	position: relative;
}

.wpcf7 .invalid .wpcf7-response-output {
	display: block;
	font-size: 0.9rem;
	padding: 1rem;
	margin: 1rem 0 0 0;
	clear: both;
	position: relative;
	text-align: left;
	background: #FFF;
}

.wpcf7 .wpcf7-response-output.wpcf7-validation-errors {
	border-color: transparent;
	color: RED;
	text-align: center;
}

.wpcf7 .wpcf7-form.sent {
}


.wpcf7 .sent .wpcf7-response-output {
	margin: var(--vspace) 0 0 0;
	padding: 5.5rem 2rem 4rem 2rem;
	text-align: center;
	color: var(--primary-color);
	font-size: 1.0rem;
	font-weight: bold;
	border: none;
	background: #FFF;
}

.wpcf7 .sent .wpcf7-response-output:after { /*ok icon*/
	content: "";
	position: absolute;
	left: 50%;
	top: 2.5rem;
	width: 20px;
	height: 32px;
	border: solid var(--primary-color);
	border-width: 0 4px 4px 0;
	-webkit-transform: rotate(45deg) translateX(-50%);
	-ms-transform: rotate(45deg) translateX(-50%);
	transform: rotate(45deg) translateX(-50%);
}



.wpcf7 span.wpcf7-not-valid-tip {
	background: red;
	color: #FFF;
	display: none;
}


.not-valid label {
	color: RED;
}

.wpcf7 input.wpcf7-not-valid,
.wpcf7 textarea.wpcf7-not-valid,
.wpcf7 select.wpcf7-not-valid {
	border-color: RED;
}


.wpcf7 .field-note {
	font-size: 0.7rem;
}

.wpcf7 .form-field--pflichtfeld-hinweis {
	display: none;
}


.wpcf7 .pflichtfeld-hinweis {
	text-align: right;
	font-size: var(--text-small);
	color: var(--text-gray);
	display: block;
	margin-top: -10px;
}


/* Captcha */


.wpcf7 .form-field--captcha > div {
	display: flex;
}

.wpcf7-captchac {
	flex-basis: 190px;
	padding: 8px;
	background: var(--primary-color);
	background: var(--primary-bg);
	margin-right: 10px;
	border-radius: 3px;;
}

.wpcf7-captchar {
	
}

/* Checkbox & Radiobuttons */


.wpcf7 .wpcf7-checkbox {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 30px;
}


.wpcf7 .wpcf7-radio {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	gap: 30px;
}

.wpcf7 input[type="radio"] {
	-webkit-appearance: radio;
	-moz-appearance: radio;
}

.wpcf7 input[type="checkbox"] {
	-webkit-appearance: checkbox;
	-moz-appearance: checkbox;
}

.wpcf7-radio .wpcf7-list-item,
.wpcf7-checkbox .wpcf7-list-item,
.wpcf7-acceptance .wpcf7-list-item  {
  	margin: 0 0 0 0;
  	width: auto;
}

.wpcf7-radio input,
.wpcf7-checkbox input,
.wpcf7-acceptance input {
	position: absolute;
	width: .0625rem;
	height: .0625rem;
	padding: 0;
	overflow: hidden;
	clip: rect(0,0,0,0);
	border: 0;
}

.wpcf7-radio label,
.wpcf7-checkbox label,
.wpcf7-acceptance label {
	margin: 0;
	padding: 0;
	display: block;
	cursor: pointer;
}

.wpcf7 input:focus + .wpcf7-list-item-label {  /*focus*/
	outline: 2px solid;
	outline-offset: 3px;
	border-radius: 3px;
}

.wpcf7-acceptance label:has(input):focus-within .wpcf7-list-item-label:before {
	border-color: var(--primary-color);
}

.wpcf7-radio .wpcf7-list-item-label,
.wpcf7-checkbox .wpcf7-list-item-label,
.wpcf7-acceptance .wpcf7-list-item-label {
	position: relative;
	display: flex;
	align-items: center;
	flex: 1 0 auto;
	font-size: 1rem;
	text-transform: none;
	font-weight: normal;
	padding: 5px 0;
	color: var(--text-color);
	transition: all 300ms ease;
}

.wpcf7-radio .wpcf7-list-item-label:hover,
.wpcf7-checkbox .wpcf7-list-item-label:hover,
.wpcf7-acceptance .wpcf7-list-item-label:hover {
}

.wpcf7-radio .wpcf7-list-item-label:before,
.wpcf7-checkbox .wpcf7-list-item-label:before,
.wpcf7-acceptance .wpcf7-list-item-label:before {
	content: "";
	width: 26px;
	height: 26px;
	background: #FFF;
	border: 2px solid var(--border-color);
	border-radius: 3px;
	opacity: 1;
	position: relative;
	margin: 0 15px 0 0;
	flex: 0 0 auto;
}


.wpcf7-radio .wpcf7-list-item-label:before {
	border-radius: 50%;
}



.wpcf7-radio .wpcf7-list-item-label:after {  /*the dot*/
	content: "";
	position: absolute;
	top: 13px;
	left: 8px;
	width: 10px;
	height: 10px;
	background: #FFF;
	border-radius: 50%;
	opacity: 0;
}

.wpcf7-checkbox .wpcf7-list-item-label:after,
.wpcf7-acceptance .wpcf7-list-item-label:after  {  /*the checkmark*/
	content: "";
	position: absolute;
	left: 9px;
	top: 9px;
	width: 9px;
	height: 14px;
	border: solid #FFF;
	border-width: 0 3px 3px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	opacity: 0;
}


.wpcf7-radio input:checked + .wpcf7-list-item-label,
.wpcf7-checkbox input:checked + .wpcf7-list-item-label,
.wpcf7-acceptance input:checked + .wpcf7-list-item-label {
}

.wpcf7-radio input:checked + .wpcf7-list-item-label:before,
.wpcf7-checkbox input:checked + .wpcf7-list-item-label:before,
.wpcf7-acceptance input:checked + .wpcf7-list-item-label:before {
	border-color: var(--primary-color);
	background: var(--primary-color);
}

.wpcf7-radio input:checked + .wpcf7-list-item-label:after,
.wpcf7-checkbox input:checked + .wpcf7-list-item-label:after,
.wpcf7-acceptance input:checked + .wpcf7-list-item-label:after {
	opacity: 1;
}


.wpcf7-radio.wpcf7-not-valid .wpcf7-list-item-label:before,
.wpcf7-checkbox.wpcf7-not-valid .wpcf7-list-item-label:before,
.wpcf7-acceptance.wpcf7-not-valid .wpcf7-list-item-label:before {
	border-color: RED;
}


/* Checkbox Acceptance (Datenschutz) */


.wpcf7-acceptance .wpcf7-list-item-label {
	font-size: 0.8rem;
	line-height: 1.5;
	font-weight: normal;
	align-items: flex-start;
}

.wpcf7-acceptance .acceptance-text {
}

.wpcf7 .form-field--datenschutz {
	margin: 0 0 var(--vspace) 0;
}

.wpcf7 .form-field--datenschutz > label {
  display: none;
}

.wpcf7-acceptance span a {
	font-weight: bold;
}


/* Select */
/* https://codepen.io/chriscoyier/pen/zYYZaGP */

select {
	display: block;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	transition: all 200ms ease;
	background-color: #fff;

	/* https://websemantics.uk/tools/svg-to-background-image-conversion */
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg width='14' height='9' viewBox='0 0 14 9' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolygon points='718 26 725 35 732 26' transform='translate(-718 -26)' fill='%231C4E60' fill-rule='evenodd'/%3E%3C/svg%3E");
	background-repeat: no-repeat, repeat;
	/* arrow icon position (1em from the right, 50% vertical) , then gradient position*/
	background-position: right .7em top 50%, 0 0;
	/* icon size, then gradient */
	background-size: 0.65em auto, 100%;
}

select::-ms-expand {
	display: none;
}

.select-css:focus {
	/* It'd be nice to use -webkit-focus-ring-color here but it doesn't work on box-shadow */
	box-shadow: 0 0 0 3px -moz-mac-focusring;
	outline: none;
}

select option {
	font-weight: normal;
	font-size: 1rem;
}

select[multiple] { /*no arrow for multiple select*/
	background-image: none;
}

/* Disabled styles */
select:disabled, select[aria-disabled=true] {
	opacity: .5;
}




/* @end */


/* @group SWIPER JS Slider */

/* Swiper JS Slider
--------------------------------------------------------------------------------- */


.swiper-button {
	color: #FFF;
	width: 50px;
	height: 50px;
	margin: 0;
	transform: translate(0, -55%);
	background: rgba(0,0,0, .6);
	border-radius: 100%;
	transition: all 300ms ease;
}

.swiper-button:hover {
	background: rgba(0,0,0, .9);
}

.swiper-button-disabled {
	opacity: 0!important;
}

.swiper-button-prev {
	transform-origin: left;
	left: 15px;
}

.swiper-button-next {
	transform-origin: right;
	right: 15px;
}

.swiper-button::after {
	font-size: 30px;
	font-family: 'icons';
}

.swiper-button-prev::after {
	content: "\e804";
}

.swiper-button-next::after {
	content: "\e803";
}

.swiper-pagination {
	bottom: 15px;
}

.swiper-pagination-bullet {
	background: rgba(0,0,0, .4);
	opacity: 1;
	width: 14px;
	height: 14px;
	transition: all 250ms ease;
}

.swiper-pagination-bullet-active {
	background: var(--primary-color);
	transform: scale(1.3);
}




/* @end */




/* @group LIGHTBOX PHOTOSWIPE v4 */

/* Lightbox Photoswipe
--------------------------------------------------------------------------------- */


.pswp__caption__text {
	color: #FFF;
	font-size: var(--text-small);
}


/* @end */


/* @group FLIPBOOK */

/* Flipbook
--------------------------------------------------------------------------------- */

.flipbook-main-wrapper {
	margin-top: var(--vspace-l);
}


/* @end */


/* @group FOOTER */

/* FOOTER
--------------------------------------------------------------------------------- */


#footer {
	position: relative;
	width: 100%;
	padding: 110px 0 130px 0;
	background: #94004B;
	font-size: 16px;
}

.site-footer {
}

.site-footer a {
}

.footer-logo {
	opacity: .9;
}

.footer-logo img {
	width: 260px;
	height: auto;
}

.footer-menu-wrap {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 50px;
	max-width: 850px;
	margin-left: 68px;
	margin-top: 70px;
	border: 0px solid PINK;
}

.footer-menu {
	line-height: 2;
}

.footer-menu li a {
	display: block;
	color: #ECEDED;
}

.footer-menu li a:hover {
	opacity: .7;
}


.footer-social {
	display: flex;
	gap: 16px;
	margin-top: 60px;
	margin-left: 68px;
}

.footer-social a {
	display: flex;
	justify-content: center;
	align-items: center;
	color: #ECEDED;
	font-size: 35px;
	line-height: 1;
	aspect-ratio: 1;
	height: 100%;
}

.footer-social a:hover {
	opacity: .7;
}


#gototop {
	position: fixed;
	right: var(--container-padding);
	bottom: 30px;
	font-size: 28px;
	width: 55px;
	height: 54px;
	color: #fff;
	text-shadow: 0 0 10px rgba(0,0,0, .1);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 100%;
	background: rgba(0,0,0, .55);
	cursor: pointer;
	opacity: 0;
	visibility: hidden;
	z-index: 1000;
	border: none;
	transition: all 300ms ease;
}

#gototop.active {
	  opacity: 1;
	  visibility: visible;
}

#gototop:hover {
	transform: scale(1.1);
}



@media screen and (max-width: 980px) {
}


@media screen and (max-width: 600px) {
	#footer {
		padding: 90px 0 140px 0;
		background: #94004B;
		font-size: 16px;
	}

	#footer .container {
		padding: 0 50px;
	}

	.footer-logo img {
		width: 230px;
	}

	.footer-menu-wrap {
		margin-top: 60px;
		margin-left: 0;
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.footer-social {
		margin: 50px 0 0 0;
	}

	#gototop {
		width: 46px;
		height: 46px;
		
	}

}





/* @end */



/* @group BORLABS COOKIE */

/* Borlabs Cookie Banner
--------------------------------------------------------------------------------- */


#BorlabsCookieBox ._brlbs-box {
	box-shadow: 0px 3px 50px -10px rgba(0,0,0, .3)!important;
}


.brlbs-cmpnt-content-blocker {
	margin-top: 2rem;
}

.BorlabsCookie ._brlbs-content-blocker {
	display: flex;
	justify-content: center;
	padding: 0;
}

.BorlabsCookie ._brlbs-content-blocker ._brlbs-embed {
	width: 100%;
	margin: 0!important;
}


.BorlabsCookie ._brlbs-content-blocker img {
	width: 100%;
	display: block;
}

.video-embed-wrap .BorlabsCookie {
	margin-bottom: -56.5%; /*minus the ratio*/
}

.BorlabsCookie input[type=checkbox] {
	-webkit-appearance: checkbox;
	-moz-appearance: checkbox;
	appearance: checkbox;
}

.BorlabsCookie span#CookieBoxTextHeadline {
	font-family: var(--font-serif);
}

.BorlabsCookie #CookieBoxTextDescription {

}

.BorlabsCookie ._brlbs-btn  {
}

.BorlabsCookie ._brlbs-btn._brlbs-btn-accept-all {
}


#BorlabsCookieBox li::before {
	display: none;
}


/* @end */


/* @group ACCESSIBILITY */

/* ACCESSIBILITY */


.sr-only {
	position: absolute;
	width: .0625rem;
	height: .0625rem;
	padding: 0;
	overflow: hidden;
	clip: rect(0,0,0,0);
	white-space: nowrap;
	border: 0;
}

.sr-only-focusable {
	transition: all 0s ease;
}

.sr-only-focusable:focus {
	position: static;
	width: auto;
	height: auto;
	margin: 0;
	overflow: visible;
	clip: auto;
}

.skip-link:focus {
	position: absolute;
	top: 0;
	left: 0;
	width: auto;
	height: auto;
	padding: 5px;
	margin: 0;
	overflow: visible;
	clip: auto;
	z-index: 100;
	color: #FFF;
	background: var(--text-color);
	line-height: 1;
}

/* @end */


/* @group UTILITIES */

/* UTILITIES
--------------------------------------------------------------------------------- */


.mt-0  { 	margin-top: 0!important; }
.mt-5  { 	margin-top: 5px!important; }
.mt-10 {	margin-top: 10px!important; }
.mt-20  {	margin-top: 20px!important; }
.mt-30  {	margin-top: 30px!important; }
.mt-40  {	margin-top: 40px!important; }
.mt-50  {	margin-top: 50px!important; }
.mt-60  {	margin-top: 60px!important; }
.mt-70  {	margin-top: 70px!important; }
.mt-80  {	margin-top: 80px!important; }
.mt-90  {	margin-top: 90px!important; }
.mt-100  {	margin-top: 100px!important; }
.mt-110  {	margin-top: 110px!important; }
.mt-120  {	margin-top: 120px!important; }
.mt-130  {	margin-top: 130px!important; }
.mt-140  {	margin-top: 140px!important; }
.mt-150  {	margin-top: 150px!important; }


.mb-0  { 	margin-bottom: 0!important; }
.mb-5  { 	margin-bottom: 5px!important; }
.mb-10 {	margin-bottom: 10px!important; }
.mb-20  {	margin-bottom: 20px!important; }
.mb-30  {	margin-bottom: 30px!important; }
.mb-40  {	margin-bottom: 40px!important; }
.mb-50  {	margin-bottom: 50px!important; }
.mb-60  {	margin-bottom: 60px!important; }
.mb-70  {	margin-bottom: 70px!important; }
.mb-80  {	margin-bottom: 80px!important; }
.mb-90  {	margin-bottom: 90px!important; }
.mb-100  {	margin-bottom: 100px!important; }
.mb-110  {	margin-bottom: 110px!important; }
.mb-120  {	margin-bottom: 120px!important; }
.mb-130  {	margin-bottom: 130px!important; }
.mb-140  {	margin-bottom: 140px!important; }
.mb-150  {	margin-bottom: 150px!important; }


/* @end */


/* @group ANIMATIONS */

/* ANIMATIONS
---------------------------------------------------------------------------------*/


/*  https://github.com/daneden/animate.css */


.animated {
	animation-duration: 1s;
	animation-fill-mode: both;
	animation-timing-function: ease-in-out;
}

.animated.infinite {
	animation-iteration-count: infinite;
}


@-webkit-keyframes zoomIn {
  0% {
    opacity: 0;
    transform: scale3d(.3, .3, .3);
  }

  50% {
    opacity: 1;
  }
}


@-webkit-keyframes fadeIn {
  0% {opacity: 0;}
  100% {opacity: 1;}
}

@keyframes fadeIn {
  0% {opacity: 0;}
  100% {opacity: 1;}
}

.fadeIn {
  animation-name: fadeIn;
}

@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translate3d(0, -100%, 0);
  }

  100% {
    opacity: 1;
    transform: none;
  }
}



@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translate3d(0, -100%, 0);
  }

  100% {
    opacity: 1;
    transform: none;
  }
}

@keyframes fadeInDown {
  0% {
    opacity: 0;
   transform: translate3d(0, -100%, 0);
  }

  100% {
    opacity: 1;
    transform: none;
  }
}

.fadeInDown {
	animation-name: fadeInDown;
}


@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translate3d(0, 100%, 0);
  }

  100% {
    opacity: 1;
	transform: none;
  }
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translate3d(0, 100%, 0);
  }

  100% {
    opacity: 1;
    transform: none;
  }
}

.fadeInUp {
  animation-name: fadeInUp;
}

/* @end */



/* ------------------------------------------------------------------------------

MEDIA QUERIES

---------------------------------------------------------------------------------*/


@media screen and (max-width: 1136px) {
body:after {
	content: "<1136";
	position: fixed;
	top: 0;
	line-height: 1;
	padding: 5px;
	font-size: 11px;
	background: lawngreen;
	z-index: 1000;
	opacity: .8;

	display: none; /* AN/AUS*/
}

}


@media screen and (max-width: 980px) {
body:after {
	content: "<980";
	background: TAN;
}


}


@media screen and (max-width: 768px) {
body:after {
	content: "<768";
	background: PINK;
}

}


@media screen and (max-width: 600px) {
body:after {
	content: "<600";
	background: YELLOW;
}

}


@media screen and (max-width: 360px) {
body:after {
	content: "<360";
	background: MAGENTA;
}


}




/* END
---------------------------------------------------------------------------------*/
