/*
* 130917 edit konstantin - enable multi-level filter menu
* 130919 edit jannis - filter menu tuning
* 130920 edit jannis - optimize footer and menus for mobile
* 130923 edit konstantin - import Buenard font as substitute for missing Arapey bold
* 131213 edit konstantin - disable filter menu icons
*/

/*@import url(https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700|Arapey:200,400,400italic|Buenard:700);*/

/* === ICONS === */
@font-face {
	font-family: 'E2Aicons';
	src:url('../fonts/E2Aicons/E2Aicons.eot');
	src:url('../fonts/E2Aicons/E2Aicons.eot?#iefix') format('embedded-opentype'),
		url('../fonts/E2Aicons/E2Aicons.woff') format('woff'),
		url('../fonts/E2Aicons/E2Aicons.ttf') format('truetype'),
		url('../fonts/E2Aicons/E2Aicons.svg#E2Aicons') format('svg');
	font-weight: normal;
	font-style: normal;
}

/*.block-views-exposed-form h2:after,
#block-menu-menu-filter-menu h2:before,*/
.e2a-search-submit-button:before,
.e2a-icon-filter-all-2, .e2a-icon-filter-tr-2, .e2a-icon-filter-tl-2, .e2a-icon-filter-bl-2, .e2a-icon-filter-br-2,
.e2a-icon-paginator, .e2a-icon-up, .e2a-icon-down, .e2a-icon-filter-tr, .e2a-icon-filter-tl, .e2a-icon-filter-br,
.e2a-icon-filter-bl, .e2a-icon-filter-all, .e2a-menu-icon, .e2a-search-icon, .e2a-filter-icon, .e2a-icon-marker {
	font-family: 'E2Aicons';
	font-size: 22px;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
}
.e2a-search-icon:before {
	content: "\73";
	font-size: 28px;
	vertical-align: -3px;
}
header.show-search .e2a-search-icon:before {
	content: "\e906";
	font-size: 28px;
	vertical-align: -3px;
}
.e2a-menu-icon:before {
	content: "\e907";
	color: #fff;
	font-size: 32px;
}
header.show-menu .e2a-menu-icon:before {
	content: "\e906";
}
.e2a-icon-paginator:before {
	content: "\2e";
}
.e2a-icon-up:before {
	content: "\75";
	font-size: 30px;
}
.e2a-icon-down:before {
	content: "\64";
	font-size: 30px;
}
.e2a-icon-filter-all:before {
	content: "\30";
}
.e2a-icon-filter-tr:before {
	content: "\31";
}
.e2a-icon-filter-br:before {
	content: "\32";
}
.e2a-icon-filter-bl:before {
	content: "\33";
}
.e2a-icon-filter-tl:before {
	content: "\34";
}
.e2a-icon-filter-all-2:before {
	content: "\35";
}
.e2a-icon-filter-tr-2:before {
	content: "\36";
}
.e2a-icon-filter-br-2:before {
	content: "\37";
}
.e2a-icon-filter-bl-2:before {
	content: "\38";
}
.e2a-icon-filter-tl-2:before {
	content: "\39";
}
.e2a-icon-marker {
	font-size: 36px;
	color: #333;
	/* text-shadow: 1px 4px 8px rgba(1,1,1,0.33); */
}
.e2a-icon-marker.large {
	font-size: 42px;
	color: rgb(75, 171, 210);
}
.e2a-icon-marker:before {
	content: ' ';
	background: #fff;
	width: .444em;
	height: .444em;
	border-radius: 100%;
	position: absolute;
	left: .056em;
	top: .111em;
	z-index: -1;
}
.e2a-icon-marker.large:before {
	background: #fff;
}

.views-exposed-form .e2a-search-submit-button:before {
	font-size: clamp(2.4rem, 6vw, 4.8rem);
	content: "\73";
	display: block;
}
.views-exposed-form .e2a-search-submit-button {
	color: #888;
}
.views-exposed-form .form-actions:hover .e2a-search-submit-button,
.views-exposed-form .form-actions:focus .e2a-search-submit-button {
	color: #FFF;
}

/* === FONT STYLES === */

html { font-size: 125%;  }
@media (min-width:  520px) { html { font-size: 100%; letter-spacing:0.015rem; } }
@media (min-width:  800px) { html { font-size: 106.25%; } }
@media (min-width: 1200px) { html { font-size: 112.5%;  } }
@media (min-width: 1500px) { html { font-size: 125%;    } }
@media (min-width: 1800px) { html { font-size: 137.5%;  } }

body{ font-family: 'Arapey', serif; font-weight:400; font-style: normal; color: #000; }
h1,h2,h3,h4,h5,h6{ font-family: 'Open Sans', sans-serif; -webkit-column-span: all; -moz-column-span: all; -ms-column-span: all; -o-column-span: all; column-span: all;  }

html, body { height:100%; min-height:100%; width: 100%; margin: 0; }

/* Layout for generic pages (neither views nor node based pages like user, error etc.) */
body.generic-page, .generic-page #page, .generic-page .region-content, .generic-page .region-content .block-system  {
	height: auto;
	min-height: 0;
	margin: 0;
}
.generic-page #page {
	padding: 5rem;
}
.generic-page h1.title {
	display: block;
}


.link-tel{ color:inherit; text-decoration:none; }

/* === BASIC === */

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

main {
	filter: blur(0);
	transition: filter 250ms linear;
}
body.blurred main {
	filter: blur(4px);
}


/* === LOGO === */
.logo{
	font-family: 'Open Sans', sans-serif;
	font-weight: 700;
	letter-spacing: 0.1em;
}

/* === NAVIGATION === */

header[role="banner"] {
	z-index: 8000;
	position: fixed;
	left: 0;
	right: 0;
	top: calc(100vh - 57px);
	top: calc(100dvh - 57px);
	height: 100vh;
	overflow: hidden;
	box-sizing: border-box;
	background: rgba(0,0,0,0.85);
	/* transform: translate3d(0,-57px,0); */
	-webkit-transition: top 300ms ease-in-out, background-color 250ms linear;
	-moz-transition: top 300ms ease-in-out, background-color 250ms linear;
	-ms-transition: top 300ms ease-in-out, background-color 250ms linear;
	-o-transition: top 300ms ease-in-out, background-color 250ms linear;
	transition: top 300ms ease-in-out, background-color 250ms linear;
}
.maintenance-page header[role="banner"] {
	display: none;
}
header[role="banner"].open {
	top: 0;
	background: rgba(0,0,0,0.95);
	/* transform: translate3d(0,0,0); */
}
header[role="banner"] .region-header-top {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 57px;
	overflow: hidden;
	text-align: center;
	padding-left: 18px;
	padding-right: 18px;
	color: #FFFFFF;
    box-sizing: border-box;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	/* transform: translate3d(0,0,0); */
	-webkit-transition: top 300ms ease-in-out, bottom 300ms ease-in-out, height 250ms linear;
	-moz-transition: top 300ms ease-in-out, bottom 300ms ease-in-out, height 250ms linear;
	-ms-transition: top 300ms ease-in-out, bottom 300ms ease-in-out, height 250ms linear;
	-o-transition: top 300ms ease-in-out, bottom 300ms ease-in-out, height 250ms linear;
	transition: top 300ms ease-in-out, bottom 300ms ease-in-out, height 250ms linear;
}
header[role="banner"].open .region-header-top {
	/* height: 64px; */
	/* transform: translate3d(0,calc(-100vh + 57px),0); */
}
header[role="banner"] .region-header-top #block-logotype {
	color: #FFF;
	font-size: 32px;
	line-height: 1;
}
header[role="banner"] .region-header-top a:hover {
	color: #FFF;
}
header[role="banner"] .region-header-top h2 {
	font-size:1.35rem;
	text-transform:uppercase;
	font-weight:300;
}
header[role="banner"] span.label {
	font-size: 1rem;
    font-family: 'Open Sans', Arial, Helvetica, sans-serif;
    font-weight: 300;
	letter-spacing: .05em;
	text-transform: uppercase;
    font-size: .888rem;
	padding: 0 .5em;
	opacity: 0;
	-webkit-transition: opacity 250ms ease-in-out;
	-moz-transition: opacity 250ms ease-in-out;
	-ms-transition: opacity 250ms ease-in-out;
	-o-transition: opacity 250ms ease-in-out;
	transition: opacity 250ms ease-in-out;
}
header[role="banner"] .region-header-top [class*="toggle"] {
    display: flex;
    flex-direction: row;
    align-items: center;
}
header[role="banner"] .region-header-top .menu-toggle {
    flex-direction: row-reverse;
}
/* header[role="banner"] .region-header-top [class*="toggle"]:hover span.label {
	opacity: 1;
} */

header[role="banner"] .region-header {
	position: fixed;
	top: 100vh;
	left: 0;
	right: 0;
	padding: 3rem 5% 0 5%;
	height: calc(100vh - 57px);
	height: calc(100dvh - 57px);
	overflow: auto;
	box-sizing: border-box;
	opacity: 0;
	-webkit-transition: opacity 300ms ease-in-out, top 300ms ease-in-out;
	-moz-transition: opacity 300ms ease-in-out, top 300ms ease-in-out;
	-ms-transition: opacity 300ms ease-in-out, top 300ms ease-in-out;
	-o-transition: opacity 300ms ease-in-out, top 300ms ease-in-out;
	transition: opacity 300ms ease-in-out, top 300ms ease-in-out;
}
header[role="banner"].show-menu .region-header {
	opacity: 1;
	top: 57px;
}
header[role="banner"] #block-logotype {}
header[role="banner"] ul.menu,
header[role="banner"] ul.menu li {
	display: inline;
	float: none;
	margin: 0;
	padding: 0;
	font-size: 0;
}
header[role="banner"] ul.menu li li {
	margin: 1px;
}
header[role="banner"] ul.menu a,
header[role="banner"] ul.menu span{
	font-family: 'Open Sans', sans-serif;
	font-weight: 300;
	text-transform: uppercase;
	font-size: 3.333rem;
	line-height: .8833;
    display: inline-block;
    padding: .222rem .888rem;
	margin-bottom: 2px;
	text-decoration: none;
	cursor: pointer;
	-webkit-transition: color 400ms ease-out, text-shadow 350ms ease-out;
	-moz-transition: color 400ms ease-out, text-shadow 350ms ease-out;
	-ms-transition: color 400ms ease-out, text-shadow 350ms ease-out;
	-o-transition: color 400ms ease-out, text-shadow 350ms ease-out;
	transition: color 400ms ease-out, text-shadow 350ms ease-out;
}
header[role="banner"] ul.menu a:hover {
	color: inherit;
	-webkit-transition: color 100ms linear, text-shadow 120ms linear;
	-moz-transition: color 100ms linear, text-shadow 120ms linear;
	-ms-transition: color 100ms linear, text-shadow 120ms linear;
	-o-transition: color 100ms linear, text-shadow 120ms linear;
	transition: color 100ms linear, text-shadow 120ms linear;
}

/* Main menu */
header[role="banner"] #block-system-main-menu {
	color: #CCC;
}
header[role="banner"] #block-system-main-menu .block-title {
	text-transform: uppercase;
    font-size: .888rem;
	padding: 0 1em;
	margin-bottom: .2em;
}
header[role="banner"] #block-system-main-menu .block-title,
header[role="banner"] #block-system-main-menu ul.menu a,
header[role="banner"] #block-system-main-menu ul.menu span {
	color: inherit;
}
header[role="banner"] #block-system-main-menu ul.menu a,
header[role="banner"] #block-system-main-menu ul.menu span{
	font-size: 2.222rem;
}
header[role="banner"] #block-system-main-menu ul.menu a:hover,
header[role="banner"] #block-system-main-menu ul.menu a.is-active {
	color: #FFF;
}

/* Filter menu (2024) */
.region-header #block-menu-menu-filter-menu > ul.menu {
	color: #FFF;
}
.region-header #block-menu-menu-filter-menu > ul.menu > li {
	display: block;
}
.region-header #block-menu-menu-filter-menu > ul.menu > li + li {
	margin-top: 1.4rem;
}
.region-header #block-menu-menu-filter-menu > ul.menu a.is-active {
	color: inherit;
}
.region-header #block-menu-menu-filter-menu > ul.menu > li > a {
	font-weight: 600;
}
.region-header #block-menu-menu-filter-menu li:hover a {
	background-color: #262626;
}
.region-header #block-menu-menu-filter-menu li:hover a:hover {
	background-color: #4d4d4d;
}

/* Filter menu (old) */
/*
.region-header-top #block-menu-menu-filter-menu { position:absolute; width: 25%; left:0; top:0; bottom: 0; text-decoration:none; color:#FFFFFF; text-align: left;}
.region-header-top #block-menu-menu-filter-menu h2 { padding-left:34px; left:30px; }
header[role="banner"].open .region-header-top #block-menu-menu-filter-menu{ color:#000000; text-shadow: 0 0 2px rgba(255,255,255,0.5); }
.region-header-top #block-menu-menu-filter-menu > ul.menu {
	display: block;
	position: fixed;
	left: 0;
	right: 0;
	top: 100%;
	bottom: 57px;
	overflow: auto;
	background:rgba(255,255,255,0.93);
	-webkit-transition: top 300ms ease-in-out;
	-moz-transition: top 300ms ease-in-out;
	-ms-transition: top 300ms ease-in-out;
	-o-transition: top 300ms ease-in-out;
	transition: top 300ms ease-in-out;
}
.region-header-top #block-menu-menu-filter-menu > ul.menu {
	padding: 3rem 2rem 0;
}
.region-header-top #block-menu-menu-filter-menu > ul.menu.open {
	top: 0;
}
.region-header-top #block-menu-menu-filter-menu ul.menu a,
.region-header-top #block-menu-menu-filter-menu ul.menu span{
	color: #000;
}
.region-header-top #block-menu-menu-filter-menu ul.menu a:hover {
	color: #888;
}
.region-header-top #block-menu-menu-filter-menu > ul.menu > li {
	display: inline;
	float: none;
}
.region-header-top #block-menu-menu-filter-menu > ul.menu > li:first-child {
	display: block;
}
.region-header-top #block-menu-menu-filter-menu > ul.menu > li a {
	margin:0;
	padding:15px;
	padding: 0.5rem 0.75rem;
	display:inline-block;
	background-color:rgba(0,0,0,0);

	margin-bottom:6px;
	margin-bottom:0.25rem;

	-webkit-transition: color 300ms linear, background-color 300ms linear;
	-moz-transition: color 300ms linear, background-color 300ms linear;
	-ms-transition: color 300ms linear, background-color 300ms linear;
	-o-transition: color 300ms linear, background-color 300ms linear;
	transition: color 300ms linear, background-color 300ms linear;
}
.region-header-top #block-menu-menu-filter-menu > ul.menu > li > a {
	font-weight:400;
	margin-right:0.25rem;
}
.region-header-top #block-menu-menu-filter-menu > ul.menu > li:hover a {
	background-color:rgba(0,0,0,0.4);
}
.region-header-top #block-menu-menu-filter-menu > ul.menu > li a:hover,
.region-header-top #block-menu-menu-filter-menu > ul.menu > li a.is-active {
	background-color:rgba(0,0,0,1);
	color:#FFF;
}
.region-header-top #block-menu-menu-filter-menu > ul.menu > li:hover a.is-active {
	opacity:0.8;
}
.region-header-top #block-menu-menu-filter-menu > ul.menu > li a.is-active:hover {
	opacity:1;
}
*/

.menu-toggle,
.e2a-search-icon {
	cursor: pointer;
}

.region-header-bottom {
	position: fixed;
	top: 100vh;
	left: 0;
	right: 0;
	height: calc(100vh - 57px);
	height: calc(100dvh - 57px);
	overflow: hidden;
	opacity: 0;
	-webkit-transition: opacity 250ms ease-in-out, top 300ms ease-in-out;
	-moz-transition: opacity 250ms ease-in-out, top 300ms ease-in-out;
	-ms-transition: opacity 250ms ease-in-out, top 300ms ease-in-out;
	-o-transition: opacity 250ms ease-in-out, top 300ms ease-in-out;
	transition: opacity 250ms ease-in-out, top 300ms ease-in-out;
}
header.show-search .region-header-bottom {
	opacity: 1;
	top: 57px;
}
.region-header-bottom > div,
.region-header-bottom form {
	height: 100%;
}
.views-exposed-form form > .form--inline {
	margin: 0 auto;
	max-width: 800px;
	height: 100%;
	padding-left: 2rem;
	padding-right: 1.5rem;
	box-sizing: border-box;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.views-exposed-form form > div > .form-item,
.views-exposed-form form > div > .form-actions {
	position: relative;
	margin-top: 0;
	margin-bottom: 0;
	margin-right: 0;
}
.views-exposed-form form > div > .form-item:first-child {
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex: 1;
	display: flex;
	flex-direction: row;
}
.views-exposed-form form > div .select2-container {
	flex: 1;
	padding-right: 5px;
}
.views-exposed-form form > div > div > label {
	display: none;
}
.views-exposed-form input.form-autocomplete {
	border: 0;
	outline: 0;
	padding: 0 1rem 1rem 0;
	background: transparent;
	color: white;
	font-family: "Open Sans";
	font-size: 200%;
	font-weight: 300;
	text-transform: uppercase;
	letter-spacing: .1rem;
}
.views-exposed-form .form-item,
.views-exposed-form .form-submit {
	outline: 0;
}
.views-exposed-form .form-submit {
	position: absolute;
	left: 0;
	top: 0;
	height: 84px;
	opacity: 0;
	margin: 0;
}
.views-exposed-form .form-actions {
	margin-top: .33rem;
	text-align: right;
	cursor: pointer;
}
.views-exposed-form #autocomplete {
	border: 0;
	outline: 0;
}
.views-exposed-form #autocomplete ul {
	padding-left: .2rem;
}
.views-exposed-form #autocomplete ul li {
	padding: 0;
	background: transparent;
	font-family: "Open Sans";
	font-size: 100%;
	font-weight: 300;
	text-transform: uppercase;
	text-align: left;
	letter-spacing: .1rem;
	display: block;
	float: none;
	height: 1.5rem;
	cursor: pointer;
	color: #888 !important;
}
.views-exposed-form #autocomplete .selected,
.views-exposed-form #autocomplete li:hover {
	color: #FFF !important;
}
header[role="banner"] .info h6{
	font-size:1rem;
	color:#343434;
	margin:2em 0 1em;
}
header[role="banner"] .info p{
	font-size:1rem;
	color:#343434;
}
header[role="banner"] #block-locale-language {
	clear: both;
	text-align: center;
}
header[role="banner"] #block-locale-language ul {
	display: inline-block;
}
header[role="banner"] #block-locale-language li {
	display: block;
	float: left;
	text-align: center;
	margin: 0 1px;
}
header[role="banner"] #block-locale-language li a {
	background: #323232;
	color: #4D4D4D;
	font-family: 'Open Sans', sans-serif;
	font-weight: 300;
	font-size: 1.625rem;
	text-transform: uppercase;
	letter-spacing: .05em;
	padding: .25rem .75rem;
	-webkit-transition: background-color 150ms linear, color 150ms linear;
	-moz-transition: background-color 150ms linear, color 150ms linear;
	-ms-transition: background-color 150ms linear, color 150ms linear;
	-o-transition: background-color 150ms linear, color 150ms linear;
	transition: background-color 150ms linear, color 150ms linear;
}
header[role="banner"] #block-locale-language li a.is-active, header[role="banner"] #block-locale-language li a:hover {
	color: #FFF;
}
header[role="banner"] #block-locale-language li a:hover {
	background: #4D4D4D;
}
header[role="banner"] #block-system-main-menu {
	margin-top: 2rem;
	margin-bottom: 1rem;
	clear: both;
	float: left;
}
header[role="banner"] #block-views-contact-block {
	margin-bottom: 3rem;
	padding: 0 .444rem;
}
header[role="banner"] #block-views-contact-block * {
	color: #CCC;
	font-family: 'Open Sans', sans-serif;
	font-weight: 300;
	font-size: .727rem !important;
	line-height: 125%;
	text-transform: uppercase;
}
header[role="banner"] #block-views-contact-block .views-row div {
	display: inline-block;
    padding: 0 .3rem;
}

/* === SHARING BUTTONS === */
.social-share {
	display: inline-block;
	width: 9em;
	overflow: hidden;
}
.social-share > a,
.social-share > span {
	display: block;
	float: left;
	width: 16px;
	height: 16px;
	padding: 7px;
	overflow: hidden;
	background:rgba(255,255,255,0.85);
	text-align: center;
	white-space: nowrap;
	position: relative;
}
.social-share > a:hover {
	background: rgba(0, 0, 0, 1);
	color: #FFF !important;
}
.social-share > a.disabled {
	color: #9c9c9c !important;
	cursor: default !important;
	background: rgba(255, 255, 255, 0.85) !important;
}
.social-share .share-label {
	margin-right: 2px;
	z-index: 2;
	cursor: pointer;
}
.social-share .share-label:hover {
	background: #FFF;
}
.social-share > a:before,
.social-share > span:before {
	font-family: 'E2Aicons' !important;
	font-size: 16px;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	padding-right: 1.385em;

	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.social-share .share-label:before {
	content: "\e903";
}
.social-share-twitter:before {
	content: "\e900";
}
.social-share-x:before {
	content: "\e905";
	font-size: 1.1em !important;
}
.social-share-facebook:before {
	content: "\f09a";
}
.social-share-linkedin:before {
	content: "\e901";
}
.social-share-pinterest:before {
	content: "\e902";
}
.social-share span.name {
	display: none;
}

@media all and (min-width: 721px) {
	.social-share a {
		-webkit-transform: translate3d(-18em,0,0);
		-moz-transform: translate3d(-18em,0,0);
		-ms-transform: translate3d(-18em,0,0);
		-o-transform: translate3d(-18em,0,0);
		transform: translate3d(-18em,0,0);
		-webkit-transition: -webkit-transform 800ms ease-in-out, background 260ms linear, color 260ms linear;
		-moz-transition: -moz-transform 800ms ease-in-out, background 260ms linear, color 260ms linear;
		-ms-transition: -ms-transform 800ms ease-in-out, background 260ms linear, color 260ms linear;
		-o-transition: -o-transform 800ms ease-in-out, background 260ms linear, color 260ms linear;
		transition: transform 800ms ease-in-out, background 260ms linear, color 260ms linear;
		z-index: 1;
	}
	.share-expanded .social-share a {
		-webkit-transform: translate3d(0,0,0);
		-moz-transform: translate3d(0,0,0);
		-ms-transform: translate3d(0,0,0);
		-o-transform: translate3d(0,0,0);
		transform: translate3d(0,0,0);
	}
}


/* === MOBILE === */

@media all and (max-width: 720px) {

	.social-share {
		width: 100%;
		margin-top: .75rem;
		margin-bottom: .75rem;
	}
	.social-share .share-label { display: none; }
	.social-share > a {
		background: #EEE;
		text-align: center;
		box-sizing: border-box;
		min-width: 36px;
		height: 36px;
		padding: 10px;
	}
	.social-share.length-4 > a {
		width: 25%;
		padding-left: 8%;
	}
	.social-share.length-5 > a {
		width: 20%;
		padding-left: 8%;
	}

}

@media all and (max-width: 480px) {
	header[role="banner"] {
	}
	header[role="banner"] .views-exposed-form h2 span.block-title,
	.region-header-top #block-menu-menu-filter-menu h2 span.block-title { display:none; }
	header[role="banner"] #block-system-main-menu .block-title {
		font-size: .75rem;
		padding: .222rem .444rem;
	}
	header[role="banner"] .views-exposed-form h2 .icon,
	.region-header-top #block-menu-menu-filter-menu h2 .icon {
		height:22px; display:inline-block;
	}
	header[role="banner"] .region-header {
		padding: 1rem 0.5rem 0;
	}
	header[role="banner"].show-menu .region-header,
	header[role="banner"].show-search .region-header-bottom {
		top: 0;
	}
	header[role="banner"] .region-header-top {
		flex-direction: row-reverse;
		position: fixed;
		/* top: calc(100vh - 57px);
		top: calc(100dvh - 57px); */
		top: auto;
		bottom: 0;
		bottom: env(safe-area-inset-bottom);
	}
	header[role="banner"] .region-header-top .menu-toggle {
		flex-direction: row;
	}
	header[role="banner"] .region-header-top .search-toggle {
		flex-direction: row-reverse;
	}
	/* header[role="banner"].open {
		top: 100%;
    	margin-top: -57px;
	}
	header[role="banner"].open .region-header {
		transform: translate3d(0,-100vh,0);
		margin-top: 0;
	}
	header[role="banner"].open .region-header-top {
		height: 57px;
		transform: translate3d(0,0,0);
	} */
	header[role="banner"] ul.menu li {
		margin: 0 0 0.25rem;
	}
	header[role="banner"] ul.menu ul.menu {
		display: block;
	}
	header[role="banner"] ul.menu a,
	header[role="banner"] ul.menu span {
		font-size: 1.2rem;
		line-height: 1.042;
		padding: .175rem .425rem;
		margin-right: 0;
	}
	header[role="banner"] #block-system-main-menu {
		margin-top: 1rem;
	}
	header[role="banner"] #block-system-main-menu ul.menu a,
	header[role="banner"] #block-system-main-menu ul.menu span {
		font-size: 1rem;
	}
	header[role="banner"] #block-views-contact-block .views-row div {
		padding: 0;
	}
	.region-header #block-menu-menu-filter-menu > ul.menu > li + li {
		margin-top: 1rem;
	}
	/* old filter menu */
	/*
	.region-header-top #block-menu-menu-filter-menu > ul.menu {
		padding: 2rem 0.25rem 0;
	}
	.region-header-top #block-menu-menu-filter-menu > ul.menu > li > a {
		margin-right:0;
	}
	.region-header-top #block-menu-menu-filter-menu > ul.menu > li a {
		display:block;
	}
	.region-header-top #block-menu-menu-filter-menu > ul.menu > li > a:before {
		font-size:2rem;
	}
	*/
}


/* === BLOCKS, MENUS, FORMS ETC. === */

/* close button */
#block-home {
	position: absolute;
	right: 0; top: 0;
	z-index: 5000;
}
.views-page--view-projects #block-home {
	display: none;
}
#block-home ul.menu {
	margin: 0;
}
#block-home ul.menu li a, .block-close-button span {
	font-family: 'E2Aicons';
	font-size: 1.125rem;
	display: block;
	padding: 1rem;
}
#block-home .block-close-button {
	position: fixed;
	right: 0;
	top: 0;
	opacity: 0;
	display: none;
	-webkit-transition: opacity 300ms linear;
	-moz-transition: opacity 300ms linear;
	-ms-transition: opacity 300ms linear;
	-o-transition: opacity 300ms linear;
	transition: opacity 300ms linear;
}
.region-header-top .block-close-button {
	position: fixed;
	right: 0;
	top: 0;
	opacity: 1;
}

@media all and (max-width:720px) {
	#block-home {
		position: fixed;
		right: auto;
		left:50%;
		margin-left:-15px;
		z-index: 7000;
	}
	#block-home ul.menu li {
		margin:1px 0 0;
		padding:3px 0 0;
	}
	#block-home ul.menu li a {
		padding: 0;
		font-size: 20px;
		line-height: 1.2;
	}
	/*.block-close-button {
	position:relative;
}*/
}

body.path-user,
body.path-user .block-system-main-block {
	display: flex;
    flex-direction: column;
	align-items: center;
	justify-content: center;
}
body.path-user .dialog-off-canvas-main-canvas {
	flex: 1;
}
body.path-user main,
body.path-user .region-content,
body.path-user .block-system-main-block {
	height: 100%;
}
body.path-user form[id^="user"] {
	padding: 0 20px;
}
body.path-user form[id^="user"] .form-item input {
	max-width: 25em;
	max-width: calc(100vw - 50px);
}
.profile h4.label {
	display: block;
	clear: both;
}
@media screen and (min-width: 481px) {
	body.path-user form[id^="user"] > div {
		display: flex;
		flex-direction: row;
		justify-content: flex-end;
	}
}

/* === DRUPAL OVERRIDES === */

h1.title {
	display: none;
}
/*
.node-type-page h1.title {
display: block;
}
*/

ul.menu li.expanded, ul.menu li.collapsed, ul.menu li.leaf {
	list-style: none;
	padding: 0;
	margin: 0;
}

.kint {
	position: relative;
	z-index: 9999;
}

.messages--status[role="contentinfo"] {
	display: none;
}
