
/* -------------------------------------------------- */
/*    GLOBAL STUFF                                    */
/* -------------------------------------------------- */

* {
	margin: 0px;
	padding: 0px;
	border: 0px none;
	outline: 0px none;
}

body {
	font-family: 'Merlo-RoundRegular', Arial, sans-serif;
	text-align: left;
	font-size: 62.5%;  /* 1em = 10px , 1.4em = 14px */
	color: #333;

	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

b, strong,
h1,h2,
#mainnav, #metanav, #subnav,
.txtoverimg p,
#teaser p,
#teaser li,
footer li a,
input[type="submit"],
th,
button,
#mobnav{
	font-family:'Merlo-RoundBold', Arial, sans-serif;
	font-weight: normal;
}
h3 {
	font-family: 'Merlo-RoundRegular', Arial, sans-serif;
	font-weight: normal;
}


textarea,
input,
select, option,
button,
label {
	font-family: inherit;
	font-size: inherit;
}

a {
	text-decoration: none;
	color: #e30614;
}

p a:hover {
	border-bottom: 1px dotted #e30614;
}

article,
nav,
aside {
	display: block;
}



/* -------------------------------------------------- */
/*    POSITIONING                                     */
/* -------------------------------------------------- */

.row {
	text-align:center;
}

.rowmax {
	text-align:left;
	margin-left:auto;
	margin-right:auto;
	max-width:900px;

	overflow: hidden;
	position: relative;
	
	padding: 0 5em;
}

#head {

}
#main {

}
#cont {
	padding-top: 4em;
	padding-bottom: 6em;
}
#aside {
	padding-bottom: 6em;
}
#footer {
	background: #f5f5f5;
	padding: 1em 0;
}






/*  #####  HEAD ELEMENTS  #####  */

#head {
	padding-top: 2em;
}
#metanav {	
	float: right;
}
#metanav ul {	
	display: inline-block;
}

#logo {

}

#mainnav {
	clear: right;
	padding: 4em 0 2em 0;
}

.navtoggle {
	float:right;
	cursor: pointer;
	margin-left: 2em;

	display: none;
}

#mobnav {
	display: none;
	position: absolute;
	top:0;
	left: 0;
	width: 100%;
	background: #FFF;
	padding: 5em 0 10em 0;
	border-bottom: 1px solid #CCC;
	z-index: 10001;
}

#subnav {
	padding-bottom: 2em;
}



/* --- AddThis --- */

#head .rowmax{
	overflow: visible;
}
#addthis {
	width: 36px;
	position: absolute;
	right: 9.1em;
	top: 4em;
	z-index: 10;
	display: none;
}

#addthis .at300b span{
	background: #000 !important;
}

#addthis .at300m span{
	background: #e30614 !important;
	border-radius: 16px;
}

/*  #####  PAGE ELEMENTS  #####  */


.fsc,
.fsc.margintoplarge:first-child  {
	padding-top: 3em;
}
.fsc:first-child,
.fsc.html {
	padding-top: 0;
}
.fsc.margintoplarge {
	margin-top: 9em;
}



#headimg .fsc:last-child {
	margin-bottom: 2.5em;
}


/*  #####  FOOTER ELEMENTS  #####  */

footer > ul * {
	display: inline;
	padding: 0;
}

footer > ul {
	-moz-columns: 5;
	columns: 5;
	float: left;
	width: 770px;
}

#footer a {
	width: 150px;
	display: inline-block;
	padding: 0;
}
#footer p a {
	display: inline;
}
#footer .textmedia {
	width: 130px;
	float: right;
}


#footer li,
#footer p {
	line-height: 18px;
}
#footer li ul {
	-webkit-column-break-inside: avoid;
	page-break-inside: avoid;
	break-inside: avoid;
}

#footer p,
#footer a {
	font-size: 1.2em;
}

#footer p a {
	font-size: inherit;
}
/*
#footer li li:last-child a {
	padding-bottom: 16px;
}
#footer li:after{
	content: ' ';
}
*/

#footer footer li a,
#footer footer p {
	display: inline-block;
}
#footer footer li a {
	text-transform: uppercase;
	color: #e30614;
}
#footer li a.act {
	color: #e30614;
	border: 0px none;
}
#footer footer li a.lvl2 {
	text-transform: none;
	font-family: 'Merlo-RoundRegular', Arial, sans-serif;
	color: #333;
}




/* -------------------------------------------------- */
/*    NAVIGATION                                      */
/* -------------------------------------------------- */

ul.nav {
	list-style:none;
}
ul.nav li{

}
.nav a {
	display: inline-block;
	font-size: 1.2em;
	text-decoration: none;
	padding: 0.2em 0;
	color: #000;
}

.nav a:hover, .langnav .act,
#subnav a {
	color: #e30614;
}

a.act, #subnav a:hover {
	color: #e30614;
	border-bottom: 1px dotted #e30614;
}

#metanav li, #mainnav li, #subnav li, footer * {
	display: inline-block;
}




/* ---- Metanav -----*/

#metanav ul {
	margin-left: 2em;
	position: relative;
	top: -2px;
}
#metanav ul.icons {
	top: 2px;
}

#metanav .nav li {
 	font-size: 1.2em;
	margin-left: 2em;
}
#metanav .nav a {
 	font-size: 1em;
}
#metanav .langnav li {
	margin: 0;
}
#metanav .langnav li:before {
	content: '|';
	display: inline-block;
	padding: 0 0.3em;
}

#metanav .langnav li:first-child:before {
	content: '';
}

.icons li {
	width: 2em;
	height: 2em;
	display: inline-block;
	background: no-repeat center transparent;
	cursor: pointer;
}
#share {
	background-image: url('/fileadmin/Resources/Public/img/icon-share.svg');
}
#print {
	background-image: url('/fileadmin/Resources/Public/img/icon-print.svg');
}

#share:hover {
	background-image: url('/fileadmin/Resources/Public/img/icon-share-red.svg');
}
#print:hover {
	background-image: url('/fileadmin/Resources/Public/img/icon-print-red.svg');
}

/* ---- Mainnav -----*/

#mainnav a, #subnav a {
	padding: 0;
	margin: 0;
	text-transform: uppercase;
}

#mainnav li:last-child {
	width: 100%;
}

#mainnav ul {
	text-align: justify;
}
#mainnav li ul {
	display: none;
}

#subnav li {
	padding-right: 4em;
}


/* ---- footer ----- */
#footer a {
	
}

/* ---- mobnav ----- */

.mainn a,
.metan a,
.langn {
	font-size: 2.4em;
}
.mainn a {
	text-transform: uppercase;
}
#mobnav a.act {
	border-bottom: 0 none;
}

.langn ul {
	overflow: hidden;
	padding-bottom: 35px;
}
.langn li {
	display: block;
	float: left;
	width: 36px;
	height: 36px;
	border-radius: 20px;
	text-align: center;
	border: 2px solid #e30614;
	margin-right: 15px;
	color: #e30614;
	line-height: 40px;
}
.langn li a {
	padding: 0;
	font-size: inherit;
	color: inherit; 
}

.langn li.act,
.langn li.act a {
	color: #FFF;
	background: #e30614;
}
.red {
	color: #e30614;
}
.mainn,
.metan {
	padding-bottom: 2em;
}
p.small {
	font-size: 1.2em;
}
p.big {
	font-size: 2.4em;
}

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

h1,h2,
.news h3 {
	font-size:2.4em;
	line-height: 1.1em;
	padding-bottom: 0.8em;
}

h3,
.txtoverimg h2,
.txtoverimg p {
	font-size:2em;
}
h3 {
	line-height: 1.4em;
	padding-bottom: 0.4em;
}
h3.acc-tit,
.page-navigation li {
	font-size: 1.6em;
	line-height: 1.2em;
/* more styles below in the accordion section */
}

h4 {
	font-weight: normal;
}
header h1, header h2 {
	padding-bottom: 0.4em;
	text-transform: uppercase;
}
header {
	
}

.twocol .ce-intext h1,
.twocol .ce-intext h2,
.listitem p {
	font-size: 1.6em;
}


#teaser p,
#teaser li,
p, td, th, h4, 
.ce-bodytext li,
.news-backlink-wrap,
.csc-mailform,
.crArchive {
	font-size: 1.6em;
	line-height: 1.4em;
	padding-bottom: 0.8em;
}

.ce-bodytext li {
	padding-bottom: 0.4em;
}
.csc-mailform {
	line-height: 1.1em;
}

#teaser .ce-bodytext p:last-child,
.ce-bodytext p:last-child,
.txtoverimg p:last-child {
	padding-bottom: 0;
}


.ce-bodytext ul{
	list-style: none;
}
.ce-bodytext li{
	margin-left: 1em;
	position: relative;
}
.ce-bodytext ul li:before{
	content: '';
	display: block;
	width: 4px;
	height: 4px;
	border-radius: 2px;
	background: #e30614;
	position: absolute;
	left: -1em;
	top: 0.5em;
}

small {
	font-size: 0.8em;
}

td small {
	font-size: 11px;
}

.news .news-latest h3 {
	font-size: 1.4em;
	line-height: 1.3em;
	padding-bottom: 0;
}

.twocol .ce-intext .ce-bodytext p,
.twocol .ce-intext  .ce-bodytext li,
header h3 {
	font-size: 1.2em;
}


.fsc.table,
.fsc.html {
	overflow: auto;
}
table {
    border-spacing: 0;
}
/*
.table tbody tr:first-child td {
	border-top: 1px solid #999;
}
.table tbody tr:last-child td {
	border-bottom: 1px solid #999;
}
*/

.table td, .table th {
	border-bottom: 1px solid #EEE;
}

table caption {
	caption-side: bottom;
	font-size: 1.2em;
	padding-top: 0.5em;
	text-align: left;
	padding-left: 0.5em;
}
td,
th {
	padding: 0.4em 2em 0.4em 0.5em;
	margin: 0;
	line-height: 1.2em;
	white-space: normal;
}
.fsc.html td{
	padding: 0.1em 0.3em;
	border-bottom: 0.3em solid #FFF;

}
.fsc.html td:first-child{
	padding-left: 0;
}
.fsc.html td:last-child{
	padding-right: 0;
}
.lgbg,
tbody tr:hover {
	background: #EEE;
}

.lgbg td {
	border-top: 1.2em solid #FFF;
}

input[type="text"],
input[type="password"],
textarea,
select {
	border: 1px solid transparent;
	box-shadow: inset 0 1px 3px 0 #666;	
	padding: 0.5em 1em;
	margin-bottom: 1em;
	background: #FFF;
}


input[type="checkbox"],
input[type="radio"] {
	display: block;
	float: left;
	margin-bottom: 0.8em;
	margin-right: 1em;
	vertical-align: middle;
}
.csc-mailform input[type="text"],
.csc-mailform input[type="password"],
.csc-mailform textarea,
.csc-mailform select {
	width: 75%;
	box-sizing: border-box;
	float: right;
}

.csc-mailform label {
	box-sizing: border-box;
	width: 20%;
	margin-right: 0;
}


div.csc-mailform li input + label, div.csc-mailform li textarea + label, div.csc-mailform li select + label  {
	margin-left: 0;
}

.csc-mailform p {
	font-size: inherit;
}

#all .csc-form-element-submit,
#all .csc-form-element-checkbox,
#all .csc-form-element-radio {
	margin-left: 25%;
}

#all .csc-form-element-checkbox label,
#all .csc-form-element-radio label{
	box-sizing: border-box;
	float: none;
	margin-right: 0;
	padding-left: 2.5em;
	padding-top: 0;
	width: 100%;
	display: block;
}
#all .csc-form-element-checkbox input,
#all .csc-form-element-radio input{
	position: absolute;
	top: 0;
	left: 0;
}
#all .csc-form-element-checkbox,
#all .csc-form-element-radio {
	overflow: hidden;
	padding-bottom: 1em;
	position: relative;
}

textarea {
	resize: none;
}
input[type="text"]:focus,
input[type="password"]:focus,
textarea:focus {
	border-color: #e30614;
}

input[type="submit"],
button {
	padding: 0.5em 1.5em;
	background: #e30614;
	color: #FFF; 
	cursor: pointer;
}

.csc-mailform {
	padding-top: 0.8em;
}

.csc-mailform ol {
	list-style: none;
}
.csc-form-element label {
	padding-top: 0.8em;
}




#cont .ce-bodytext {
	max-width: 67em;
}



.ce-below .ce-gallery {
	margin-top: 3em;
}
.ce-gallery {
	
}
.ce-intext .ce-gallery,
.news-single .article .news-img-wrap {
	max-width: 50%;
}
.news-single .article .news-img-wrap {
	width: auto;
	margin-left: 50px;
}
.ce-gallery img,
.news-single .article .news-img-wrap img {
	max-width: 100%;
	height: auto;
}
.ce-column {
	max-width: 100%;
}


.ce-row,
.news-img-wrap .outer{
    margin-bottom: 0;
	padding-bottom: 2em;
}

.ce-row:last-child {
	padding-bottom:0;
}



/* ### HEADER IMG ELEMENT */

.txtoverimg {
	position: relative;
	max-width: 100%;
	box-shadow: 0 2px 6px rgba(0,0,0, 0.5);
	overflow: hidden;
}
.txtoverimg img {
	display: block;
	position: relative;
	left: 50%;
	transform: translateX(-50%);
}
.txtoverlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 205px;
	background: url('/fileadmin/Resources/Public/img/bggradient.svg') left center repeat-y transparent;
	text-shadow: 0 0 8px #000;
}

.txtwrap {
	width: 410px;
	padding: 25px 30px;
	color: #FFF;
}
.txtwrap h1,
.txtwrap h2  {
	color: inherit;
}

.txtoverimg h2{
	display: none;
}
.txtoverimg p {
	display: block;
}

/* ### ACCORDION ### */

.accordion {
	border-top: 2px dotted #2e2f30;
	border-bottom: 2px dotted #2e2f30;
	margin-top: 3em;
}

.accordion + .accordion  {
	border-top: 0 none;
	margin-top: 0;
}

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

.acc-cont {
	padding-bottom: 3em;
}

.acc-tit {
	padding: 1.2em 0 1.2em 2em;
	cursor: pointer;
	position: relative;
}

.acc-tit .icon {
	position: absolute;
	left: 0;

	-webkit-transition: -webkit-transform 0.2s;
    -moz-transition: -moz-transform 0.2s;
    transition: transform 0.2s;
    -webkit-transform: rotate(0);
    -moz-transform: rotate(0);
    transform: rotate(0);
}

.open .acc-tit .icon {
	-webkit-transform: rotate(180deg);
	-moz-transform: rotate(180deg);
	transform: rotate(180deg);
}




/* ### twocol ### */

.twocol {
	overflow: hidden;
	clear: left;
	margin-top: 6em;
}
#aside .twocol {
	margin-top: 0em;
}
/*
.twocol + .twocol {
	margin-top: 0;
}
*/
.twocol:first-child {
	margin-top: 0;
}

.twocol .col {
	width: 48.3%;
	float: left;
}
.twocol .col:first-child {
	padding-right:3.3%;
}

/*
.twocol  .fsc {
	padding-top: 3em;
}
.twocol  .fsc:first-child {
	padding-top: 0;
}
*/

.twocol .ce-intext.ce-left .ce-gallery {
    margin-right: 30px;
}
.twocol .ce-intext.ce-right .ce-gallery {
    margin-left: 30px;
}

.twocol  .ce-intext.ce-right .ce-gallery, .twocol  .ce-intext.ce-left .ce-gallery, .twocol  .ce-above .ce-gallery {
    margin-bottom: 30px;
}

.twocol .ce-intext .ce-gallery {
    max-width: 46%;
}






/* ### SLIDER ### */

.imgslider .ce-below .ce-gallery {
	margin-top:0;
}

.imgslider .ce-row {
	padding-bottom: 0;
}

.bx-wrapper {
	margin-top: 50px !important;
	margin-bottom: 0;
	border: 0px none;
	left: 0;
	box-shadow: none;
}

.ce-above .bx-wrapper{
	margin-top: 15px !important;
	margin-bottom: 35px;
}



/* ### imageversions for desktop and mobile ###  */

.imageversions .ce-row:nth-child(even) {
	display: none;
}


@media screen AND (max-width: 590px){
	.imageversions .ce-row:nth-child(odd) {
		display: none;
	}
	.imageversions .ce-row:nth-child(even) {
		display: block;
	}
}



/* ### STARTSEITE ### */


.layout-start #cont,
.layout-start #aside {
	position: absolute;
}

.layout-start #headimg {
	padding-top: 3em;
}
.layout-start #cont {
	top: 5em;
	left: 9em;
	width: 34em;

	transition: left 0.2s, width 0.2s;
}
.layout-start #aside {
	top: 0;
	right: 3em;
	width: 21em;
	height: 22em;
	padding: 3.5em;
	padding-top: 2.5em;
	text-align: center;
	background: #e30614;
	box-shadow: 2px 2px 2px 0 rgba(0, 0, 0, 0.5);
	border-radius: 14em;

	transition: top 0.2s, padding 0.2s;
	overflow: hidden;
}

.layout-start #aside h1,
.layout-start #aside h2,
.layout-start #aside a   {
	color: #FFF;
}
.layout-start #aside a {
	display: block;
	background: url('/fileadmin/Resources/Public/img/arrow-right_white.svg') right center no-repeat transparent;
	padding: 0 25px 0 0;
}

#aside .linkbox {
	padding-top: 2em;
}

.layout-start #aside .linkbox a {
	margin-right: 25px;
	padding-left: 45px;
}

.layout-start #cont .header {
	background: #FFF;
	padding: 1.5em;
	margin-bottom: 1.5em;
	box-shadow: 2px 2px 2px 0 rgba(0, 0, 0, 0.5);
}

.linkbox h3 {
	padding-right: 2em;
}
.linkbox {
	cursor: pointer;
}
.linkbox a{
	color: inherit;
}
.linkbox header{
	background: url('/fileadmin/Resources/Public/img/arrow-right.svg') right center no-repeat transparent;
}
.linkbox:hover,
.linkbox:hover a {
	color: #e30614;
}

.linkbox:hover header {
	background-image: url('/fileadmin/Resources/Public/img/arrow-right_red.svg');
}






/* ### teaser popup ### */


#teaser {
	position: fixed;
	bottom: 3em;
	right: 3em;
	width: 29em;
	background: #e30614;
	box-shadow: 2px 2px 2px 0 rgba(0, 0, 0, 0.5);
	box-sizing: border-box;
	padding: 3em;
	animation: slide-from-bottom 0.5s ease-out 7s 1  both;
	z-index: 9999;
}
#cont #teaser .ce-bodytext {
	max-width: 100%;
}
#teaser > *,
#teaser a {
	color: #fff;
}
#teaser a {
	border-bottom: 1px solid #fff;
}
#teaser a:hover {
	border-bottom: 1px dotted #fff;
}

@keyframes slide-from-bottom {
	from {
	  transform: translateY(100%) translateY(3em);
	}
  
	to {
		transform: translateY(0);
	}
  }

#closeteaser {
	cursor: pointer;
	position: absolute;
	top:0;
	right: 0;
}


/* ### news ### */

.news-latest .article {
	margin-bottom: 0;
	padding-bottom: 2em;
	text-align: left;
}
.news-list .article:last-child{
	padding-bottom: 2em;
}


.news-list .article {
	padding-bottom: 2em;
	border-bottom: 2px dotted #2e2f30;
	margin-bottom: 2em;
}

.news-list .article .teaser-text {
	max-width: 67em;
	margin: 0;
}
.teaser-text a span p {
	display: inline;
}

/*
.news-backlink-wrap {
	display: none;
}
*/

.news-list .listitem a {
	color: #000;
}

.news-list .listitem a:hover {
	color: #e30614;

}
.news-list-date {
	color: rgb(126, 131, 137);
}
 .news-list  .news-list-date {
	float: right;
	padding-left: 2em;
}
.more {
	display: inline-block;
	background: url('/fileadmin/Resources/Public/img/arrow-right.svg') right center no-repeat transparent;
	width: 16px;
	height: 16px;
	background-size: contain;
	position: relative;
	top: 2px;
}

a:hover .more {
	background-image: url('/fileadmin/Resources/Public/img/arrow-right_red.svg');
}

.news-img-wrap img {
	box-shadow: 0 2px 6px rgba(0,0,0, 0.5);
}

.page-navigation:first-child {
	margin-bottom: 2em;
	padding-bottom: 0.5em;
	overflow: hidden;
	border-bottom: 2px dotted #2e2f30;
}
.news .page-navigation p{
	display: none;
}

.news .page-navigation ul li {
	padding: 0 0 0 0.5em;
	display: inline-block;
}
.news .page-navigation ul li:before {
	content: '|';
	display: inline-block;
	padding-right: 0.5em;
}
.news .page-navigation ul li:first-child:before {
	content: '';
	display: none;
}
.news .page-navigation ul li a {
	display: inline-block;
}


.news-single .newsheader {
	overflow: hidden;
}

.news-single h2 {
	float: left;
}
.news-single h4 {
	float: right;
}
#all .news .article .news-img-wrap a {
	padding: 0;
	border: 0 none;
	float: none;
}
.news-list .article .news-img-wrap {
	margin-right: 2em;
}


/* ### OVERLAY ### */

#overlay {
	position: fixed;
	top:0;
	left:0;
	width: 100vw;
	height: 100vh;
	display: none;
    z-index: 10000;
}
#veil {
	background: rgba(255,255,255, 0.8);
	width: 100vw;
	height: 100vh;
	cursor: pointer;
}
#closebutt {
	position: absolute;
	top: 5vh;
	right: 4em;
}

#overbox {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 45em;
	height: 26em;
	margin: -13em 0 0 -22.5em;
	background: #FFF;
	box-shadow: 0 4px 8px rgba(0,0,0, 0.3);
	overflow: auto;
}
#overcont {
	padding: 3em;
}

#bigimg {
	background: center no-repeat transparent;
	background-size: contain;
	position: absolute;
	width: 80vw;
	height: 90vh;
	top: 5vh;
	left: 10vw;
}


/* cleverreach forms */

#recaptcha_image,
#recaptcha_widget input {
	margin-left: 25%;
}

#recaptcha_widget {
	position: relative;
}
#recaptcha_widget input{
	float: none;
	width: 37.5%;
}

#recaptcha_widget label {
	display: block;	
	width: 20%;
	position: absolute;
	top: 1em;
}

.cr_form div {
    clear: both;
    overflow: hidden;
}

.submit_container {
	margin-left: 25%;
}

