/* 1753876337.94 */
@charset "utf-8";


* {
	--color-red-rgb: 203,92,43;
	--color-red: #cb5c2b;
	--color-darkgrey-rgb: 101,101,101;
	--color-darkgrey: #656565;
	--color-grey-rgb: 169,169,169;
	--color-grey: #a9a9a9;
	--color-middlegrey-rgb: 186,186,186;
	--color-middlegrey: #c2c2c2;
	--color-map-grey-rgb: 206,206,206;
	--color-map-grey: #cecece;
	--color-lightgrey-rgb: 220,220,220;
	--color-lightgrey: #dcdcdc;
	--color-lightestgrey-rgb: 225,225,225;
	--color-lightestgrey: #e1e1e1;
	
	--picbox-width: 215px;
	--picbox-pano-width: 330px;
	--picbox-project-width: 332px;
	--picbox-bigger-width: 332px;
	
	--picbox-grid-width: 312px;
	
	--picbox-grid-picheight-min: 217px;
	
	--gallery-thumb-width: 332px;
	
}


/* dosis-regular - latin */
@font-face {
  font-family: 'Dosis';
  font-style: normal;
  font-weight: 400;
  src: url('/includes/fonts/dosis-v19-latin-ext_latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('/includes/fonts/dosis-v19-latin-ext_latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/includes/fonts/dosis-v19-latin-ext_latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('/includes/fonts/dosis-v19-latin-ext_latin-regular.woff') format('woff'), /* Modern Browsers */
       url('/includes/fonts/dosis-v19-latin-ext_latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/includes/fonts/dosis-v19-latin-ext_latin-regular.svg#Dosis') format('svg'); /* Legacy iOS */
	font-display: swap;
}

/* dosis-300 - latin */
@font-face {
  font-family: 'Dosis';
  font-style: normal;
  font-weight: 300;
  src: url('/includes/fonts/dosis-v19-latin-ext_latin-300.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('/includes/fonts/dosis-v19-latin-ext_latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/includes/fonts/dosis-v19-latin-ext_latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('/includes/fonts/dosis-v19-latin-ext_latin-300.woff') format('woff'), /* Modern Browsers */
       url('/includes/fonts/dosis-v19-latin-ext_latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/includes/fonts/dosis-v19-latin-ext_latin-300.svg#Dosis') format('svg'); /* Legacy iOS */
	font-display: swap;
}

/* dosis-600 - latin */
@font-face {
  font-family: 'Dosis';
  font-style: normal;
  font-weight: 600;
  src: url('/includes/fonts/dosis-v19-latin-ext_latin-600.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('/includes/fonts/dosis-v19-latin-ext_latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/includes/fonts/dosis-v19-latin-ext_latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('/includes/fonts/dosis-v19-latin-ext_latin-600.woff') format('woff'), /* Modern Browsers */
       url('/includes/fonts/dosis-v19-latin-ext_latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/includes/fonts/dosis-v19-latin-ext_latin-600.svg#Dosis') format('svg'); /* Legacy iOS */
	font-display: swap;
}

/* dosis-500 - latin */
@font-face {
  font-family: 'Dosis';
  font-style: normal;
  font-weight: 500;
  src: url('/includes/fonts/dosis-v19-latin-ext_latin-500.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('/includes/fonts/dosis-v19-latin-ext_latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/includes/fonts/dosis-v19-latin-ext_latin-500.woff2') format('woff2'), /* Super Modern Browsers */
       url('/includes/fonts/dosis-v19-latin-ext_latin-500.woff') format('woff'), /* Modern Browsers */
       url('/includes/fonts/dosis-v19-latin-ext_latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/includes/fonts/dosis-v19-latin-ext_latin-500.svg#Dosis') format('svg'); /* Legacy iOS */
	font-display: swap;
}

/* dosis-700 - latin */
@font-face {
  font-family: 'Dosis';
  font-style: normal;
  font-weight: 700;
  src: url('/includes/fonts/dosis-v19-latin-ext_latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('/includes/fonts/dosis-v19-latin-ext_latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/includes/fonts/dosis-v19-latin-ext_latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('/includes/fonts/dosis-v19-latin-ext_latin-700.woff') format('woff'), /* Modern Browsers */
       url('/includes/fonts/dosis-v19-latin-ext_latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/includes/fonts/dosis-v19-latin-ext_latin-700.svg#Dosis') format('svg'); /* Legacy iOS */
	font-display: swap;
}

/* dosis-800 - latin */
@font-face {
  font-family: 'Dosis';
  font-style: normal;
  font-weight: 800;
  src: url('/includes/fonts/dosis-v19-latin-ext_latin-800.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('/includes/fonts/dosis-v19-latin-ext_latin-800.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/includes/fonts/dosis-v19-latin-ext_latin-800.woff2') format('woff2'), /* Super Modern Browsers */
       url('/includes/fonts/dosis-v19-latin-ext_latin-800.woff') format('woff'), /* Modern Browsers */
       url('/includes/fonts/dosis-v19-latin-ext_latin-800.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/includes/fonts/dosis-v19-latin-ext_latin-800.svg#Dosis') format('svg'); /* Legacy iOS */
	font-display: swap;
}


* {
	font-family:'Dosis', Verdana, Helvetica, Arial, san serif;
	font-weight:300;	
	margin:0;
	padding:0;
}

html {
	overflow: -moz-scrollbars-vertical;
    overflow-y: scroll; 
}

body {
	margin: 0;
	padding: 0;
	font-size:62.5%;
	text-align: center;	
	background-color:var(--color-lightestgrey);
	background-repeat: no-repeat;
	background-attachment: fixed !important;
	background-position: center; 		
}



/*### ALLGEMEIN START ###*/

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family:'Dosis', Verdana, Helvetica, Arial, san serif;
	font-weight:500 !important;
}

a:link,
a:visited,
a:active,
a:hover { 
	text-decoration:none; 
	color:var(--color-darkgrey);
}
a:hover { 
	color:var(--color-red); 
}

span.rot {
	color: var(--color-red);
	font-weight: bold;
}

.nur_mobil,
.hidden { 
	display:none !important;
}

.nur_desktop {
	display:inline-block !important;
}

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

* html .clearfix { 
	height:1px;
}

.clearfix { 
	display:block;
}

/*### ALLGEMEIN ENDE ###*/




/* ##### HEADER START ###### */

header {
	width: 100%;
	margin: 0;
	padding:0;
	font-size:100%;
	line-height:100%;
	color: #fff;
	background-color: var(--color-darkgrey);
	border-bottom: 1px solid var(--color-red);
	-moz-box-shadow: 0 0 5px var(--color-darkgrey);
	-webkit-box-shadow: 0 0 5px var(--color-darkgrey);
	box-shadow: 0 0 5px var(--color-darkgrey);	
}

header #logo { 
	display:inline-block;
	float:left; 
	margin:5px 10px; 
	text-align:left;	
	text-transform:lowercase;
}

header #logo svg,
header #logo img {
	float:left;
	margin-right:8px;
}

header #logo svg,
header #logo svg path {
	fill:#ffffff !important;
}

header #logo a {
	display:inline-block;	
}

header #logo a span {
	color:#fff;
	display:inline-block;
	clear:none;
	width:100px;	
}

header #logo a span.bold { 	
	margin:24px 0 6px 0;	
	font-size:140%; 
	letter-spacing:3px;
}

header #logo a span.normal {
	font-size:110%;
	letter-spacing:1px;
	font-weight:normal !important; 
	margin:0;
	display:inline;
}

header #lang { 
	position:absolute;
	right:10px;
	top:8px;
	z-index:9999;
}

header #lang a {
	display:inline-block;
	padding:4px;
	margin-left:6px;
	color:#fff !important;
}	

header #lang a img.lang_bt_round {
	border-radius: 50% !important;
}



@media (max-width: 959px) {
	header #lang { 
		position:absolute;
		right:60px;
		top:28px;
		z-index:9999;
	}
	
	header #lang a img.lang_bt_round {
		width:16px;
		height:16px;
	}	
}

/* ##### HEADER END ##### */



/* ##### NAVIGATION START ##### */


/* Mobile first layout SmartMenus Core CSS (it's not recommended editing these rules)
You need this once per page no matter how many menu trees or different themes you use.
-------------------------------------------------------------------------------------------*/

.sm{box-sizing:border-box;position:relative;z-index:9999;-webkit-tap-highlight-color:rgba(0,0,0,0);}
.sm,.sm ul,.sm li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;}
.sm-rtl,.sm-rtl ul,.sm-rtl li{direction:rtl;text-align:right;}
.sm>li>h1,.sm>li>h2,.sm>li>h3,.sm>li>h4,.sm>li>h5,.sm>li>h6{margin:0;padding:0;}
.sm ul{display:none;}
.sm li,.sm a{position:relative;}
.sm a{display:block;}
.sm a.disabled{cursor:default;}
.sm::after{content:"";display:block;height:0;font:0px/0 serif;clear:both;overflow:hidden;}
.sm *,.sm *::before,.sm *::after{box-sizing:inherit;}


/* sm-clean START */

.sm-clean {	
	background:#fff;	
	border-radius: 0px;
}

.sm-clean li a, .sm-clean li a:hover, .sm-clean li a:focus, .sm-clean li a:active, .sm-clean li a.highlighted {
	padding: 13px 20px;
	/* make room for the toggle button (sub indicator) */
	padding-right: 58px;
	color:#999;
	font-size:150%;
	line-height:110%;
	letter-spacing:1px;	
	font-weight: normal;
	text-decoration: none !important;
	border-radius: 0px;
	text-transform:lowercase;	
}

.sm-clean li li a, 
.sm-clean li li a:hover, 
.sm-clean li li a:focus, 
.sm-clean li li a:active,
.sm-clean li li a.highlighted {
	font-size:140%;
	line-height:130%;
	text-transform:none !important;
} 

.sm-clean li a.current {}
.sm-clean li a.disabled {}
.sm-clean li a .sub-arrow {
	position: absolute;
	top: 50%;
	margin-top: -17px;
	left: auto;
	right: 4px;
	width: 34px;
	height: 34px;
	overflow: hidden;
	font: bold 16px/34px monospace !important;
	text-align: center;
	text-shadow: none;
}
.sm-clean li a .sub-arrow::before {
	content: '+';
}
.sm-clean li a.highlighted .sub-arrow::before {
	content: '-';
}

.sm-clean > li:last-child > a.highlighted, .sm-clean > li:last-child > *:not(ul) a.highlighted, .sm-clean > li:last-child > ul > li:last-child > a.highlighted, .sm-clean > li:last-child > ul > li:last-child > *:not(ul) a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted {
	border-radius: 0;
}
.sm-clean li {
	border-top: 1px solid rgba(0, 0, 0, 0.05);
}
.sm-clean > li:first-child {
	border-top: 0;
}
.sm-clean ul a, .sm-clean ul a:hover, .sm-clean ul a:focus, .sm-clean ul a:active {
	text-transform:none;
	border-left: 8px solid transparent;
}
.sm-clean ul ul a,
.sm-clean ul ul a:hover,
.sm-clean ul ul a:focus,
.sm-clean ul ul a:active {
	border-left: 16px solid transparent;
}
.sm-clean ul ul ul a,
.sm-clean ul ul ul a:hover,
.sm-clean ul ul ul a:focus,
.sm-clean ul ul ul a:active {
	border-left: 24px solid transparent;
}
.sm-clean ul ul ul ul a,
.sm-clean ul ul ul ul a:hover,
.sm-clean ul ul ul ul a:focus,
.sm-clean ul ul ul ul a:active {
	border-left: 32px solid transparent;
}
.sm-clean ul ul ul ul ul a,
.sm-clean ul ul ul ul ul a:hover,
.sm-clean ul ul ul ul ul a:focus,
.sm-clean ul ul ul ul ul a:active {
	border-left: 40px solid transparent;
}

.sm-clean {
	clear:both;
	display:block;
}

@media (min-width: 960px) {
	/* Switch to desktop layout
	-----------------------------------------------
		 These transform the menu tree from
		 collapsible to desktop (navbar + dropdowns)
	-----------------------------------------------*/
	/* start... (it's not recommended editing these rules) */
		
	.sm-clean ul {
		position: absolute;
		width: 12em;
	}

	.sm-clean li {
		float: left;
	}

	.sm-clean.sm-rtl li {
		float: right;
	}

	.sm-clean ul li, .sm-clean.sm-rtl ul li, .sm-clean.sm-vertical li {
		float: none;
	}

	.sm-clean li a {
		white-space: nowrap;
	}

	.sm-clean ul a, .sm-clean.sm-vertical a {
		white-space: normal;
	}

	.sm-clean .sm-nowrap > li > a, .sm-clean .sm-nowrap > li > :not(ul) a {
		white-space: nowrap;
	}

	/* ...end */
	
	
	.sm-clean {
		background:none;
		background-color:transparent;
	}
	.sm-clean li a, .sm-clean li a:hover, .sm-clean li a:focus, .sm-clean li a:active, .sm-clean li a.highlighted {		
		padding:6px 6px 8px 6px;
		line-height:100%;		
		margin:0;
		color:#fff;
		border-radius: 0 !important;
	}
	.sm-clean li a:hover, .sm-clean li a:focus, .sm-clean li a:active, .sm-clean li a.highlighted {
		text-decoration:underline;		
		color:#fff;
		background:var(--color-red);
	}	
	
	.sm-clean li a, .sm-clean li a:hover, .sm-clean li a:focus, .sm-clean li a:active, .sm-clean li a.highlighted {		
		font-size:140%;
		line-height:110%;
	}

	.sm-clean li li a, 
	.sm-clean li li a:hover, 
	.sm-clean li li a:focus, 
	.sm-clean li li a:active,
	.sm-clean li li a.highlighted {
		font-size:140%;
		line-height:110%;
	} 
	
	.sm-clean li li a:hover, 
	.sm-clean li li a:focus, 
	.sm-clean li li a:active,
	.sm-clean li li a.highlighted {
		background-color:var(--color-red);
		color:#fff;		
	} 	
	
	.sm-clean li a.current {
		text-decoration:underline;
		font-weight:600;
	}
	.sm-clean li.aktiv a {
		text-decoration:underline;		
		font-weight:600;
	}
	.sm-clean li.aktiv a li a {
		text-decoration:none !important;
	}
	.sm-clean li a.disabled {
		color: #bbbbbb;
	}
	.sm-clean li a.has-submenu {
		padding-right: 24px;
	}
	.sm-clean li a .sub-arrow {
		top: 50%;
		margin-top: -2px;
		right: 12px;
		width: 0;
		height: 0;
		border-width: 4px;
		border-style: solid dashed dashed dashed;
		border-color: #fff transparent transparent transparent;
		background: transparent;
		border-radius: 0;
	}
	.sm-clean li a .sub-arrow::before {
		display: none;
	}
	.sm-clean li {
		border-top: 0;
	}
	.sm-clean > li > ul::before,
	.sm-clean > li > ul::after {}
	.sm-clean > li > ul::after {}
	.sm-clean ul {		
		padding:0;				
		background-color:var(--color-darkgrey);
		color:#fff;		
		border-radius: 0px !important;
		text-transform:none !important;		
		box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.2);		
	}
		
	.sm-clean > ul {
		margin-top:0 !important;
	}
	
	.sm-clean ul.subnavi {	
		margin-top:0 !important;
	}
	
	.sm-clean li.aktiv ul a {
		font-weight:normal;
		color: #fff;
		text-decoration:none !important;
		text-transform:none !important;
	}
	.sm-clean ul a, .sm-clean ul a:hover, .sm-clean ul a:focus, .sm-clean ul a:active, .sm-clean ul a.highlighted {
		border: 0 !important;
		padding:8px;
		color: #fff;
		text-transform:none !important;
	}
	.sm-clean ul a:hover, .sm-clean ul a:focus, .sm-clean ul a:active, .sm-clean ul a.highlighted, .sm-clean li.aktiv ul a:hover, .sm-clean li.aktiv ul a:focus, .sm-clean li.aktiv ul a:active, .sm-clean li.aktiv ul a.highlighted {
		background: #333;
		text-decoration:underline;
		text-transform:none !important;
	}
	.sm-clean ul a.current {
		text-decoration:underline;
		text-transform:none !important;
	}
	.sm-clean ul a.disabled {
		background: #fff;
		color: #cccccc;
	}
	.sm-clean ul a.has-submenu {
		padding-right: 20px;
	}
	.sm-clean ul a .sub-arrow {
		right: 8px;
		top: 50%;
		margin-top: -5px;
		border-width: 5px;
		border-style: dashed dashed dashed solid;
		border-color: transparent transparent transparent #fff;
		text-transform:none !important;
	}
	.sm-clean .scroll-up,
	.sm-clean .scroll-down {
		position: absolute;
		display: none;
		visibility: hidden;
		overflow: hidden;
		background: #fff;
		height: 20px;
	}
	.sm-clean .scroll-up:hover,
	.sm-clean .scroll-down:hover {
		background: #eeeeee;
	}
	.sm-clean .scroll-up:hover .scroll-up-arrow {
		border-color: transparent transparent rgba(0,6,130,1) transparent;
	}
	.sm-clean .scroll-down:hover .scroll-down-arrow {
		border-color: rgba(0,6,130,1) transparent transparent transparent;
	}
	.sm-clean .scroll-up-arrow,
	.sm-clean .scroll-down-arrow {
		position: absolute;
		top: 0;
		left: 50%;
		margin-left: -6px;
		width: 0;
		height: 0;
		overflow: hidden;
		border-width: 6px;
		border-style: dashed dashed solid dashed;
		border-color: transparent transparent #555555 transparent;
	}
	.sm-clean .scroll-down-arrow {
		top: 8px;
		border-style: solid dashed dashed dashed;
		border-color: #555555 transparent transparent transparent;
	}
	.sm-clean.sm-rtl a.has-submenu {
		padding-right: 12px;
		padding-left: 24px;
	}
	.sm-clean.sm-rtl a .sub-arrow {
		right: auto;
		left: 12px;
	}
	.sm-clean.sm-rtl.sm-vertical a.has-submenu {
		padding: 10px 20px;
	}
	.sm-clean.sm-rtl.sm-vertical a .sub-arrow {
		right: auto;
		left: 8px;
		border-style: dashed solid dashed dashed;
		border-color: transparent #555555 transparent transparent;
	}
	.sm-clean.sm-rtl > li > ul::before {
		left: auto;
		right: 30px;
	}
	.sm-clean.sm-rtl > li > ul::after {
		left: auto;
		right: 31px;
	}
	.sm-clean.sm-rtl ul a.has-submenu {
		padding: 10px 20px !important;
	}
	.sm-clean.sm-rtl ul a .sub-arrow {
		right: auto;
		left: 8px;
		border-style: dashed solid dashed dashed;
		border-color: transparent #555555 transparent transparent;
	}
	.sm-clean.sm-vertical {
		padding: 10px 0;
		border-radius: 5px;
	}
	.sm-clean.sm-vertical a {
		padding: 10px 20px;
	}
	.sm-clean.sm-vertical a:hover, .sm-clean.sm-vertical a:focus, .sm-clean.sm-vertical a:active, .sm-clean.sm-vertical a.highlighted {
		background: #fff;
	}
	.sm-clean.sm-vertical a.disabled {
		background: #eeeeee;
	}
	.sm-clean.sm-vertical a .sub-arrow {
		right: 8px;
		top: 50%;
		margin-top: -5px;
		border-width: 5px;
		border-style: dashed dashed dashed solid;
		border-color: transparent transparent transparent #555555;
	}
	.sm-clean.sm-vertical > li > ul::before,
	.sm-clean.sm-vertical > li > ul::after {
		display: none;
	}
	.sm-clean.sm-vertical ul a {
		padding: 10px 20px;
	}
	.sm-clean.sm-vertical ul a:hover, .sm-clean.sm-vertical ul a:focus, .sm-clean.sm-vertical ul a:active, .sm-clean.sm-vertical ul a.highlighted {
		background: #eeeeee;
	}
	.sm-clean.sm-vertical ul a.disabled {
		background: #fff;
	}

}


/* sm-clean ENDE */

#main-menu {
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	-ms-border-radius: 0px;
	-o-border-radius: 0px;
	border-radius: 0px;
}

#menu {
	position:relative;
	display:inline-block;
	margin:0;
	padding:0;
	text-align:left;
}

#menu:after,
.main-nav:after {
	clear: both;
	content: "\00a0";
	display: block;
	height: 0;
	font: 0px/0 serif;
	overflow: hidden;
}



@media (min-width: 960px) {
		
	header {
		text-align:left;
	}
	
	nav#menu {
		float:right;
	}
	
	#main-menu {
		float:right;
		margin:31px 0 0 0;		
		clear: none;
	}	
	
}


@media (max-width: 959px) {
	
	#main-menu {
		clear: both;
	}
	
	nav#menu { 
		position:relative;
		display:block;
		width:100%;
		max-width:100%;	
		margin:0;
		padding:0;
	}

	#logo { 
		position:relative;
		z-index:999;
	}

}

/* Mobile menu toggle button */

.main-menu-btn {
	float: right;
	position: relative;
	display: inline-block;
	
	margin: 20px 10px 6px 10px;
	width: 36px;
	height: 36px;
	text-indent: 36px;

	white-space: nowrap;
	overflow: hidden;
	cursor: pointer;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/* hamburger icon */

.main-menu-btn-icon,
.main-menu-btn-icon:before,
.main-menu-btn-icon:after {
	position: absolute;
	top: 50%;
	left: 2px;
	height: 2px;
	width: 24px;
	background: #fff;
	-webkit-transition: all 0.25s;
	transition: all 0.25s;
}

.main-menu-btn-icon:before {
	content: '';
	top: -7px;
	left: 0;
}

.main-menu-btn-icon:after {
	content: '';
	top: 7px;
	left: 0;
}

/* x icon */

#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon {
	height: 0;
	background: transparent;
}

#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:before {
	top: 0;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:after {
	top: 0;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
	
/* hide menu state checkbox (keep it visible to screen readers) */

#main-menu-state {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	border: 0;
	padding: 0;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
}

/* hide the menu in mobile view */

#main-menu-state:not(:checked) ~ #main-menu {
	display: none;
}

#main-menu-state:checked ~ #main-menu {
	display: block;
}

@media (min-width: 960px) {
	/* hide the button in desktop view */
	.main-menu-btn {
		position: absolute;
		top: -99999px;
	}
	/* always show the menu in desktop view */
	#main-menu-state:not(:checked) ~ #main-menu {
		display: block;
	}
}

/* ##### NAVIGATION ENDE ##### */




/* ##### CONTAINER START ##### */

#container {
	width:100%;	
	max-width:1328px;	
	margin:0 auto;
	padding:0;
	font-weight:300;
}

.panorama#container {
	width:100%;
	max-width:100%;
}	

.text#container {
	width:100%;
	max-width:960px !important;
	text-align:left;
}

/* ##### CONTAINER ENDE ##### */





/* ### BREADCRUMB START ### */

p#breadcrumb {
	width:calc(100% - 20px);	
	max-width:1308px;
	display:block;
	clear:both;	
	margin:8px auto 24px auto;
	padding:0 10px;
	font-size:110%;
	line-height:120%;
	text-transform:lowercase;
	text-align:left;
}

p#breadcrumb a, p#breadcrumb a:hover {
	font-weight:normal;
}

#container .pano#content p#breadcrumb,
.panorama#container .pano#content p#breadcrumb,
.panorama#container .norm#content p#breadcrumb {
	margin:8px auto 0 auto !important;
}

/* ### BREADCRUMB ENDE ### */





/* ##### CONTAINER CONTENT START ##### */

#content {	
	margin:0 auto;
	padding:0;
	font-size:100%;	
}

.home #content,
.home .norm#content {
	padding-top:24px;
}

/* ##### CONTAINER CONTENT ENDE ##### */




/* ##### CONTAINER SECTION START ##### */

#container section {
	font-size:100% !important;
}

/* ##### CONTAINER SECTION ENDE ##### */





#content section .textcontainer {
	text-align:left;
	margin:0 10px 20px 10px;
	padding:10px;
	background-color:rgba(255,255,255,1);
	border-radius:2px;	
	font-size:100% !important;
}

#content section .textcontainer h1 {
	margin-top:0 !important;
	margin-bottom:0 !important;
}

#content section .textcontainer h1 + p {
	margin-bottom:12px !important;
}

#content section .textcontainer h2,
#content section .textcontainer h3,
#content section .textcontainer h4 {
	font-size:190% !important;
	/*
	font-size:160% !important;
	*/
	line-height:100% !important;
	margin:2px 0 4px 0 !important;
}

#content section .textcontainer h2 + p {
	margin-bottom:8px !important;
}

#content section .textcontainer p,
#content section .textcontainer li,
#content section .textcontainer td {
	/*
	font-size:140% !important;
	*/
	font-size:170% !important;
	line-height:150% !important;
	color: var(--color-darkgrey);
}

#content section .textcontainer p {
	margin:2px 0 14px 0;
}

#content section .textcontainer ul,
#content section .textcontainer ol {
	margin:2px 0 14px 20px;
}

#content section .textcontainer p:last-child {
	margin:2px 0 0 0;
}



#content section .textcontainer strong {
	font-weight:500;
}

#content section .textcontainer p.readmore {
	margin:0;
	line-height:100% !important;
}


#content section a.overview svg {
	stroke: var(--color-red);
}

#content section h1.title-overview a.overview svg,
#content section .title-overview a.overview svg {
	width:28px;
	height:28px;
}





.text#container #content article {
	padding:0 20px;	
}

.text#container #content article h2,
.text#container #content article h3,
.text#container #content article h4 {
	font-size:160% !important;
	line-height:100% !important;
	margin:2px 0 4px 0 !important;
}

.text#container #content article p,
.text#container #content article li,
.text#container #content article td {
	font-size:140% !important;
	line-height:150% !important;
}

.text#container #content article p {
	margin:2px 0 14px 0;
}

.text#container #content article ul,
.text#container #content article ol {
	margin: 0;
	padding:0 1.25em 1.5em 1.25em; /* Set the distance from the list edge to 1x the font size */
	list-style-type: disc;
	list-style-position: outside;
	list-style-image: none;	
}

.text#container #content article hr.space {
	clear:both;
	display:block;
	width:100%;
	margin:18px auto 36px auto !important;	
	height:1px;
	border:none;
	background:none;
	border-top:1px dotted var(--color-red);	
}

.text#container #content article figure.about {
	float:right !important;
	margin:0 0 24px 36px;
	width:auto;
	display:inline-block;
}

.text#container #content article figure.about figcaption {
	display:block;
	margin:2px 0;
	font-size:120%;
	line-height:130%;
}


#content section .textcontainer .h4 {
	font-size:170% !important;
	line-height:120% !important;
	margin:12px 0 6px 0 !important;
	color: var(--color-darkgrey);
}

.text#container #content article .h4 {
	font-size:160% !important;
	line-height:120% !important;
	margin:12px 0 6px 0 !important;
	color: var(--color-darkgrey);
}





#container #content section .textcontainer h1.title-overview, 
#container #content section .textcontainer h2.title-overview, 
#container #content section .textcontainer h2.title-overview.h1 {	
	width:auto;
	max-width:100%;
	text-align:left;	
	margin:30px auto 20px auto;	
	font-size:220% !important;
	line-height:140% !important;
	font-weight:500;
}

div.bochumtotal#container h1.title-overview, 
div.bochumtotal#container h2.title-overview {
	margin-top:20px;
}

#container #content section .textcontainer h1.title-overview a, 
#container #content section .textcontainer h2.title-overview a, 
#container #content section .textcontainer h2.title-overview.title_anker {
	display:block;
	border-bottom:1px solid var(--color-red);	
	font-weight:500;
}

#container #content section .textcontainer h1.title-overview a.overview, 
#container #content section .textcontainer h2.title-overview a.overview {
	display:inline;
	border:none;
	float:right;	
	font-size:60% !important;
	font-weight:500;
}

#container #content section .textcontainer h1.title-overview span, 
#container #content section .textcontainer h2.title-overview span {	
	font-size:70% !important;
	font-weight:300;
	color:var(--color-darkgrey);
}

#container #content section .textcontainer h1.bochumtotal, 
#container #content section .textcontainer h2.bochumtotal{
	margin-top:20px;
	margin-bottom:10px;
}

#container #content section .textcontainer h2.title-overview.title_anker {
	color:var(--color-darkgrey);
}

/* ### CONTAINER END ### */




/* ### CONTENTPIC START ### */

#contentpic {
	position:relative;
	display:inline-block;
	width:auto;
	max-width:calc(100% - 60px);
	padding:10px;
	margin:30px auto;

	text-align:center;
	background-color:#fff;
	
	box-shadow:
      0 1px 1px hsl(0deg 0% 0% / 0.075),
      0 2px 2px hsl(0deg 0% 0% / 0.075),
      0 4px 4px hsl(0deg 0% 0% / 0.075),
      0 8px 8px hsl(0deg 0% 0% / 0.075),
      0 16px 16px hsl(0deg 0% 0% / 0.075)
    ;
		
}

@media (max-width: 767px) {
	#contentpic {
		margin:20px auto;
	}
}

div.bochumtotal#contentpic {
	margin-top:20px;
}

div.about#contentpic {
	margin-top:20px;
	width:280px;
	float:right;
}

div.error#contentpic {
	width:400px;
	text-align:left;
}

div.error#contentpic #bildinfo h1 {
	color: var(--color-red);
	font-size:120%;
	margin-bottom:4px;
}

div.error#contentpic #bildinfo p {
	margin:4px 0 0 0;
}

#bototal-logo {
	margin:45px auto 10px auto;
}

#contentpic #bigpicture {
	position:relative; 
}

#contentpic #bigpicture a.link {
	position:absolute;
	top:0;
	z-index:777;
	width:54px;
	height:100%;
	display:block;
}

#contentpic #bigpicture a.back {
	left:0 !important;
}

#contentpic #bigpicture a.next {
	right:-1px !important;
}

#contentpic #bigpicture a:hover.back {
	background:rgba(255,255,255,0.5) url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAABhUlEQVRoge3YP4jPcRzH8Yc7rnNFV0Iptyi3GHSLxU0mJhubjbpFWaxXtyiZZEEpZWBSBpO6uluUsijdIhnEIErKf4aPT+/580m9+9XnUd/9+fp9l/f3xzAMwzAMXS7hGrZlh/RYw59/z+3klibbcVfEf8HJ1KIGs3go4j9hObWowS48EfHvsZRa1GAPnor4N1hMLWpwAC9E/BYWUosaHMIrEf8c+1OLGhzBWxG/ifnUogbH8EHEP8ZcalGDE/gs4h9gJrWowWl8FfG3MJ1a1OAcfoj4qyboxrmI3yL+cm5Om1UR/gsrqTUdVsWAnzifWtPpgvLr1yFXcnP6nMV3MeIGplKLOpxS7vs64h52pBZ1WFbu/DriEXamFnVYUu79OmIduzODeiwqd38d8Qx7U4s6LCj3fx3xEgdTizrsU74D6ojXOJwZ1GMeG2LEOxxNLeowp3wX1BEfcTy1qMMM7pvQ/4SqadwUI77hTGpRhylcFyPu5Ob0W1PexsTdTMMwDMPw3/wFm69txQF/BHgAAAAASUVORK5CYII=) no-repeat left 50%;
}

#contentpic #bigpicture a:hover.next {
	background:rgba(255,255,255,0.5) url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAABf0lEQVRoge3YL2jVURjH4WfzDzpEBVFh4IJBDZZZLJpMM9lmMjpYMxkFk0EsYlGDBoMmQRCLQWYRZBZhMxhcGCgIAxmIotdwvLys+Tvl5eB54PbP93K5nHPouq7ruv/YBG7hSnZIrfsY/f1cT26pch6bYsRDbE8tqnAWG2LEU+xKLapwCl/EiJfYk1pU4QTWxIg3OJBaVGEGH8SI95hOLapwGO/EiI84mlpUYT9eixHrOJlaVGEKL8SIrzidWlRhJ56IEd9wLrWowjbcEyO+40JqUYUJ3BQjfmA+tajSVTHiFy7n5tRZVOJH+K2MasqCGDDCtdycYW6I8J+4lJvz7yZxR6P/RDvwSMRvYi61aIDdeCbiN5T7QxP24pWI/4zZ1KIBDuKtiP+E46lFAxzBiohfVe4JTTimfNvj+GUcSi0aYFb5nY/jl7AvtWiAM7a+TDxX7gNNmLP1beixcg9owkXlaDyOv6uc/5vxQMTfVo4MTZlUbltNvot2Xdd1Xbo/p2ptlfOQbcYAAAAASUVORK5CYII=) no-repeat right 50%;
}






#contentpic div.pano#bigpicture {
	overflow-x:auto;
	overflow-y:hidden;
}

#contentpic #bigpicture img.pic {
	clear:both;
	
	width:100%;
	height:auto;
	
	border:1px solid #e1e1e1;
}

#contentpic #bildinfo {
	text-align:left;
	
	margin:2px 0 0 0;
	padding:0;
	clear:both;
}



#contentpic #bildinfo h1.detail {
	margin:0;
	font-size:160% !important;
	line-height:130%;
	color:var(--color-darkgrey);	
	float:left;	
	width:calc(100% - 100px);	
}

#contentpic #bildinfo h1.detail span.info {
	display:inline-block;
	margin:0;
	font-weight:normal;
	font-size:90% !important;
	color:var(--color-grey);
}

#contentpic #bildinfo h1.detail span.info span {
	font-size:100%;
	color:var(--color-grey);
}

#contentpic #bildinfo h1.detail span.info span.date {
	white-space: nowrap;
}

#contentpic #bildinfo h1.detail span.info span.small {
	font-size:90%;
	color:var(--color-grey);
}


@media screen and (max-width:767px) {
	
	#contentpic #bildinfo h1.detail {
		font-size:130%;	
		line-height:130%;
	}
	
	#contentpic #bildinfo h1.detail span.info {	
		font-size:90%;
		line-height:110%;
		color:var(--color-grey);
	}

	#contentpic #bildinfo h1.detail span.info span {
		font-size:100%;
		color:var(--color-grey);
	}

	#contentpic #bildinfo h1.detail span.info span.date {
		white-space: nowrap;
	}

	#contentpic #bildinfo h1.detail span.info span.small {
		font-size:90%;
		color:var(--color-grey);
	}



}

#bildinfo span.r {
	width:100px;
	float:right;
	text-align:right;
	margin:0;
	padding:0;
	word-wrap: break-word;	
}

#bildinfo span.r a {
	display:inline-block;
	margin:0;
	padding:0 2px;
}


#contentpic #bildinfo svg.icon-tabler {	
	margin:0;
	padding:0;
}


#contentpic #bildinfo h1.boto {
	width:946px;
	clear:both;
	margin:6px auto 24px auto;
	padding:0;
	text-align:center;
	font-size:120%;
	font-weight:600;
	color:var(--color-darkgrey);
}

#contentpic #bildinfo h1.boto span.klein {
	font-size:100%;
	color:var(--color-darkgrey);
}



span.copyright {
	float:right;
	color:var(--color-grey);
	font-size:100%;
}


#contentpic img.flag,
#contentpic img.pano_flag,
#content img.flag,
#content img.pano_flag {
	vertical-align:-3px
}

#contentpic figcaption img.flag,
#contentpic figcaption img.pano_flag,
figure a.piclink img.pano_flag,
figure.picbox a.piclink img.pano_flag {
	-webkit-filter: grayscale(100%);
	filter: grayscale(100%);
	opacity:0.33;
	transition: all 0.5s ease-out;	
}

#contentpic figcaption:hover img.flag,
#contentpic figcaption:hover img.pano_flag,
figure a.piclink:hover img.pano_flag,
figure.picbox a.piclink:hover img.pano_flag {
	-webkit-filter: grayscale(0%);
	filter: grayscale(0%);
	opacity:1;
}







div#box {
	margin-top:60px;
	margin-left:auto;
	margin-right:auto;
}

div.archiv#box {
	width:884px;
	margin:40px auto 40px auto;
	padding:20px;
	text-align:center;
	background-color:#EFEFEF;
	-moz-box-shadow: 0 0 5px #888;
	-webkit-box-shadow: 0 0 5px #888;
	box-shadow: 0 0 5px #888;
	overflow:hidden;
}


#content section .textcontainer .small {
	font-size: 130% !important;
	line-height: 120% !important;
}




/* ##### CONTENTPIC ENDE ##### */



/* ### ACCORDION START ### */

.accordion-toggle {cursor: pointer;}
.accordion-content {display: none; }
.accordion-content.default {display: block; }


.accordion-toggle {
	padding:2px 0 2px 24px !important;
	background: rgba(255,255,255,.25) !important;	
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-arrow-down' width='20' height='20' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23656565' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'/%3E%3Cline x1='12' y1='5' x2='12' y2='19' /%3E%3Cline x1='18' y1='13' x2='12' y2='19' /%3E%3Cline x1='6' y1='13' x2='12' y2='19' /%3E%3C/svg%3E") !important;	
	background-repeat: no-repeat no-repeat !important;
	background-position: 0 1px !important;
	background-size: cover;	
}

.accordion-toggle.active {
	background: rgba(255,255,255,1) !important;	
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-arrow-up' width='20' height='20' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23656565' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'/%3E%3Cline x1='12' y1='5' x2='12' y2='19' /%3E%3Cline x1='18' y1='11' x2='12' y2='5' /%3E%3Cline x1='6' y1='11' x2='12' y2='5' /%3E%3C/svg%3E") !important;	
	background-repeat: no-repeat no-repeat !important;	
	background-position: 0 1px !important;
	background-size: cover;
}

.accordion-toggle span.text {
	float:none;
}

  
/* ### ACCORDION ENDE ### */


.accordion.aerial .accordion-toggle {
	padding:2px 0 2px 24px !important;
	border:2px solid brown;
	background: white !important;
	
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-arrow-down' width='20' height='20' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23656565' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'/%3E%3Cline x1='12' y1='5' x2='12' y2='19' /%3E%3Cline x1='18' y1='13' x2='12' y2='19' /%3E%3Cline x1='6' y1='13' x2='12' y2='19' /%3E%3C/svg%3E") !important;
	
	background-repeat: no-repeat no-repeat !important;
	background-position: 0 1px !important;
	background-size: cover;
	
}

.accordion.aerial .accordion-toggle.active {
	border:2px solid red;
	background: lime !important;
	
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-arrow-up' width='20' height='20' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23656565' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'/%3E%3Cline x1='12' y1='5' x2='12' y2='19' /%3E%3Cline x1='18' y1='11' x2='12' y2='5' /%3E%3Cline x1='6' y1='11' x2='12' y2='5' /%3E%3C/svg%3E") !important;
	
	background-repeat: no-repeat no-repeat !important;	
	background-position: 0 1px !important;
	background-size: cover;

}

.accordion.aerial .accordion-toggle span.text {
	float:none;
}





span.left { float:left; padding: 0; margin-left: 0; }
span.right { float:right; padding: 0; margin-right: 0; }




.responsive_pic,
.grid_pic {
	width:auto;
	max-width:100%;
	height:auto;
}


.pano#content .is-hidden,
.flex-container .is-hidden {
	display: none;
}

.grid_filter,
.filters {
	margin: 0 auto 12px auto;
	padding: 0;
	display:block;
}

.grid_filter-item,
.filters__item {
	display: inline-block;
}

.grid_filter_btn,
.filters__btn {
	background-color:#fff;
	color: var(--color-red);
	display: inline-block;
    padding: 4px 6px;
	border: 1px solid #fff;
	font-size:120% !important;
}




div.overviewcontainer ,
div#overviewcontainer {
	width:100%;
	text-align:center;
}


div.overviewcontainer h3.years,
div#overviewcontainer h3.years {
	display:block;
	clear:both;
	margin:20px auto 10px auto;
	padding:2px;
	color:var(--color-darkgrey);
	text-align:left;
	font-size:130%;
	line-height:130%;
	border-bottom:1px dotted var(--color-red);
}

div.overviewcontainer.archive h3.years,
div#overviewcontainer.archive h3.years {
	
	width:calc(100% - 46px) !important;
	
	margin:20px auto 10px auto !important;
	
	margin: 0 10px 20px 10px;
	padding: 10px;
	
}







.filter-field-radiobuttons {
	margin: 0 auto 12px auto;
	padding: 0;
	display:block;
}

.filter-field-radiobuttons label {
	display: inline-block;
}

.filter-field-radiobuttons label span {	
	display: inline-block;
	background-color:#fff;
	color: var(--color-red);
	display: inline-block;
    padding: 4px 6px;
	border: 1px solid #fff;
	font-size:120% !important;
}



/* HIDE RADIO */
[type=radio] { 
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

/* IMAGE STYLES */
[type=radio] + span,
[type=radio] + img {
  cursor: pointer;
}

/* CHECKED STYLES */
[type=radio]:checked + img {
  outline: 2px solid #f00;
}

[type=radio]:checked + span {
  background-color:#f3f3f3;
}









/*### MUURI GRID LAYOUT START ###*/

.grid {
	position: relative;
	padding:0 !important;
	margin:0 auto !important;
	text-align:center !important;
}

.item {
	display: block;
	position: absolute; 
	z-index: 1;
  	width:312px;
	height:auto;
	min-height:auto;
  	margin: 0 10px 20px 10px;
	padding:0 !important;
}

.item.muuri-item-dragging {
	z-index: 3;
}

.item.muuri-item-releasing {
	z-index: 2;
}

.item.muuri-item-hidden {
	z-index: 0;
}

.item-content {
	position: relative;
	width: 100%;
	height: 100%;
}

.grid .item .picbox {
	margin:0 !important;
}




@media only screen and (max-width: 720px) and (orientation: landscape) {
	
	.item.pano,
	.item.project,
	.item.aerial,
	.item.bototal {
		width:302px;
	}

}


/*### MUURI GRID LAYOUT ENDE ###*/






@media screen and (min-width:calc(1344px)) {
	.gridbox.grid.muuri {
		max-width:calc(var(--gallery-thumb-width) * 4);
	}
}

@media screen and (max-width:1343px) {
	.gridbox.grid.muuri {
		max-width:calc(var(--gallery-thumb-width) * 3);
	}
}

@media screen and (max-width:1015px) {
	.gridbox.grid.muuri {
		max-width:calc(var(--gallery-thumb-width) * 2);
	}
}

@media screen and (max-width:681px) {
	.gridbox.grid.muuri {
		max-width:calc(var(--gallery-thumb-width) * 1);
	}
}







/* clearfix */
.overviewcontainer::after,
#overviewcontainer::after {
  content: '';
  display: block;
  clear: both;
}

div.gridbox::after,
div.box_masonry::after {
  content: '';
  display: block;
  clear: both;
}








/*### FIGURE PICBOXEN START ###*/

#content figure.picbox {
	position: relative;
	display: inline-block;
	float: none !important;
	width: auto;
	margin: 0 10px 20px 10px;
	padding: 9px;
	border: none;
	line-height: 100%;
	background: #fff;
}



#content figure.picbox p.pic_thumb {
	display:block;
	margin:0;
	padding:0;
	border:none;
	line-height:100%;
	text-align: center; 
	color:#999;
}

#content figure.picbox a.piclink {
	display:block;
	width:auto;
	margin:0;
	padding:0;
	line-height:100%;
	text-align:center;	
	background-color:rgba(var(--color-darkgrey-rgb).25) !important;	
}

#content figure.picbox a.piclink_txt {
	display:block;
	width:auto;
	margin:0;
	padding:0;
}


#content figure.picbox a.piclink img.pic {
	display:block;
	margin:0;
	padding:0;	
	border: 1px solid #f2f2f2;
	line-height:100%;
	text-align:center;	
	width:100%;
	max-width:292px !important;
}




#content figure.picbox figcaption {
	display:block;
	margin:0;
	padding:0;	
	color:#999;
	cursor:pointer;
	text-align:left !important;
	font-size:100%;	
}

#content figure.picbox figcaption.home_pic_title {
	text-align:left !important;
}


#content figure.picbox.pic_thumb figcaption a {	
	margin: 0;
	padding:0;	
	word-wrap: break-word;      /* IE 5.5-7 */
	white-space: pre-wrap;      /* Modern browsers */
	color: var(--color-darkgrey);	
	text-align:left !important;
}

#content figure.picbox.pic_thumb figcaption a strong {
	font-weight:600;
}

#content figure.picbox.pic_thumb figcaption a span.info {
	display: inline-block;
	margin: 0px;
	color: var(--color-grey);
}

#content figure.picbox.pic_thumb figcaption a span.info span.date {
	white-space: nowrap !important;
	font-weight: normal !important;
}




#content figure.picbox.pic_thumb figcaption p {
	font-size: 140%;
	line-height: 130%;	
}

#content figure.picbox.pic_thumb figcaption p span.date,
#content figure.picbox.pic_thumb figcaption p span.bands {
	display:inline-block; 
	margin-bottom:2px;	
}


#content figure.picbox.pic_thumb figcaption p span.date {
	font-weight:600;
	margin-top:2px;
}


#content figure.picbox.pic_thumb figcaption p span.iconlink {
	vertical-align:-4px;
}

/*### FIGURE PICBOXEN ENDE ###*/










/*  Normal */
.gridbox#overviewcontainer {
	height:auto;
}




/*### BLOGPICS BOX START ###*/

/*  Normal */
.blogpics#overviewcontainer {
	height:auto;
	min-height:calc(5*(217px + 20px));
}


/* Dreispaltig */
@media (max-width: 1326px) {
	.blogpics#overviewcontainer {
		min-height:calc(7*(217px + 20px));
	}
}

/* Zweispaltig */
@media (max-width: 1112px) {
	.blogpics#overviewcontainer {
		min-height:calc(11*(217px + 20px));
	}
}

/* Einspaltig */
@media (max-width: 680px) {
	.blogpics#overviewcontainer {
		min-height:calc(20*(217px + 20px));
	}
} 

/*### BLOGPICS BOX ENDE ###*/




/*### PROJEKTE BOX START ###*/


/*  Normal */
.projects#overviewcontainer {
	height:auto;
	min-height:calc(25*(271px + 20px));
}


/* Dreispaltig */
@media (max-width: 1326px) {
	.projects#overviewcontainer {
		min-height:calc(33.25*(271px + 20px));
	}
}

/* Zweispaltig */
@media (max-width: 1112px) {
	.projects#overviewcontainer {
		min-height:calc(50*(271px + 20px));
	}
}

/* Einspaltig */
@media (max-width: 680px) {
	.projects#overviewcontainer {
		min-height:calc(100*(271px + 20px));
	}
} 

/*### PROJEKTE BOX ENDE ###*/




/*### BOTOTAL GRIDBOX  START ###*/


/*  Normal */
.overviewcontainer.gridbox {
	height:auto;
	min-height:calc(1*(437px + 140px));
}


/* Dreispaltig */
@media (max-width: 1326px) {
	.overviewcontainer.gridbox {
		min-height:calc(2*(437px + 140px));
	}
}

/* Zweispaltig */
@media (max-width: 1112px) {
	.overviewcontainer.gridbox {
		min-height:calc(2*(437px + 140px));
	}
}

/* Einspaltig */
@media (max-width: 680px) {
	.overviewcontainer.gridbox {
		min-height:calc(4*(437px + 140px));
	}
} 

/*### BOTOTAL GRIDBOX ENDE ###*/










/* ### STARTSEITE LAYOUT START ### */


/*### STARTSEITE BILDER START ###*/

#content .picbox_home { 
	position:relative;
	border:none;
	z-index:9 !important;
}

#content .picbox_home .info_bt_box {
	position:relative;
	z-index:199 !important;
	padding:0;
	text-align:center;
	margin:0 auto;	
	
	display:none;	
}


#content .picbox_home .info_bt_box.hover {
	background:rgba(255,255,255,0);
}

#content .picbox_home .info_bt_box svg {	
	padding:0px 12px 12px 12px;
	width:24px;
	height:24px;
}

#content .picbox_home .info_bt {
	display:none;
}

#content .picbox_home .info_bt_close {
	display:none;
}

/*### STARTSEITE BILDER ENDE ###*/



/*### STARTSEITE LADEBUTTON UND LOADER START ###*/

#content .load_btn.hide {
	display:none !important;
}

#content .load_btn.show {
	display:block !important;
}

#content div.loading_box {
	padding:10px;
	display:block;
	margin-bottom:36px;
}

#content div.loading_box.hide {
	display:none !important;
}
#content div.loading_box.show {
	display:block !important;
}


#content div.loading_box button#load_more {
	border:2px solid rgba(203,92,43,1);
	background-color:#fff;
	color:rgba(203,92,43,1);
	padding:12px;
	margin-bottom:54px;
	cursor:pointer;
	font-size:160%;
	font-weight:500;
	text-transform:uppercase;
}

#content .spinner {	
	-webkit-animation: rotate 2s linear infinite;
	animation: rotate 2s linear infinite;	
	margin:20px auto;
	width: 50px;
	height: 50px;
}

#content .spinner.hide {
	display:none !important;
}

#content .spinner.show {
	display:block !important;
}

#content .spinner .path {
	stroke: var(--color-red);
	stroke-linecap: round;
	-webkit-animation: dash 1.5s ease-in-out infinite;
	animation: dash 1.5s ease-in-out infinite;
}

@-webkit-keyframes rotate {
  100% {
    transform: rotate(360deg);
  }
}

@keyframes rotate {
  100% {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes dash {
  0% {
    stroke-dasharray: 1, 150;
    stroke-dashoffset: 0;
  }
  50% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -35;
  }
  100% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -124;
  }
}
@keyframes dash {
  0% {
    stroke-dasharray: 1, 150;
    stroke-dashoffset: 0;
  }
  50% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -35;
  }
  100% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -124;
  }
}



/*### STARTSEITE LADEBUTTON UND LOADER ENDE ###*/


/* ##### STARTSEITE LAYOUT ENDE ##### */








body.home #content figure.picbox figcaption.home_pic_title {	
	position:absolute;
	top:0;
	left:0;
	z-index:99;
	width:100%;
	height:100%;
	opacity: 0;	
	transition: 0.3s;	
	text-align:center;
}

body.home #content figure.picbox.hover figcaption.home_pic_title {
	opacity: 1;			
	background-color:rgba(203,92,43,.75);
}

body.home #content figure.picbox figcaption.home_pic_title p.pic_text,
body.home #content figure.picbox figcaption.home_pic_title p.home_pic {
	width:100%;
	height:100%;
	display:table;	
	text-align:center;
}

body.home #content figure.picbox figcaption.home_pic_title p.home_pic a {
	width:100%;
	height:100%;
	display:table;	
}

body.home #content figure.picbox figcaption.home_pic_title p.home_pic a span.pic_text {
	position:relative !important;
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	z-index:109 !important;
	max-width:96%;
	line-height:150%;
	color:#fff !important;
}

body.home #content figure.picbox figcaption.home_pic_title a {
	color:#fff !important;
}


body.home #content figure.picbox figcaption.home_pic_title p.pic_text span.pic_title, 
body.home #content figure.picbox figcaption.home_pic_title p.pic_text span.pic_info,
body.home #content figure.picbox figcaption.home_pic_title p.home_pic .pic_text span.pic_title, 
body.home #content figure.picbox figcaption.home_pic_title p.home_pic .pic_text span.pic_info {
	display:inline-block;
	
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: transform;
	transition-property: transform;
	-webkit-transition-timing-function: ease-out;
	transition-timing-function: ease-out;	
}

body.home #content figure.picbox figcaption.home_pic_title p.pic_text span.pic_title,
body.home #content figure.picbox figcaption.home_pic_title p.home_pic .pic_text span.pic_title {
	font-size:200% !important; 
	font-weight:600;	
	margin-bottom:12px;	
	
	line-height:110% !important;
	width:calc(100% - 36px) !important;
	
}


body.home #content figure.picbox figcaption.home_pic_title p.pic_text span.pic_info,
body.home #content figure.picbox figcaption.home_pic_title p.home_pic .pic_text span.pic_info {
	font-size:140% !important;
	font-weight:400;
}


body.home #content figure.picbox.hover figcaption.home_pic_title p.pic_text span.pic_title,
body.home #content figure.picbox.hover figcaption.home_pic_title p.home_pic .pic_text span.pic_title {
	-webkit-transform: translateY(3px);
	transform: translateY(3px);
}


body.home #content figure.picbox.hover figcaption.home_pic_title p.pic_text span.pic_info,
body.home #content figure.picbox.hover figcaption.home_pic_title p.home_pic .pic_text span.pic_info {
	-webkit-transform: translateY(-3px);
	transform: translateY(-3px);
}



body.home #content .gridbox .picbox.pic_thumb span.iconlink {
	position:absolute;
	right:8px;
	bottom:2px;
	vertical-align:-4px;
}






@media screen and (min-width:681px) {
	
}


	body {	
		display: flex;
		flex-direction: column;
		height: 100vh;
	}

	#wrapper { 	
		flex: 1 0 auto;
		min-height: calc(100vh - 50px);
	}

	footer {   
		flex-shrink: 0;
	}



footer {   
	padding:20px 20px 32px 20px;
}

footer #footer_content {
	
	display:block !important;
	width:100%;
	max-width:1328px;
	padding:0;
	margin:0 auto !important;
	text-align:left;
	
	text-transform:lowercase;

}

footer #footer_content p {
	margin:0;
	padding:0;
	font-size:130%;
	line-height:110%;
}

footer #footer_content p,
footer #footer_content p a {
	color:rgba(var(--color-darkgrey-rgb),1);
}

footer #footer_content p a {
	display:inline-block;
	padding:5px 0;
}

footer #footer_content p span.spacer {
	display:inline-block;
	margin:0 4px;
}

footer #footer_content p span.sm {
	display:inline-block;
	float:right;
}

footer #footer_content p span.sm svg {
	stroke:var(--color-darkgrey);
	width:20px;
	height:20px;
	vertical-align:-5px;
}

@media (max-width: 680px) {
	
	footer #footer_content p {
		display:block;
		text-align:center;
	}
	
	footer #footer_content p span.sm {
		float:none;
	}
	
	footer #footer_content p span.block {
		display:block;
		text-align:center;
		margin:10px auto;
	}
	
	footer #footer_content p span.spacer {
		display:none;
	}
	
}


footer #go_top {
	position: fixed;
	bottom: 1.25em;
	right: 1em;
	text-decoration: none;
	padding: 0em;
	display: none;
	z-index:10000;
	cursor:pointer;
}
