/*==================================================
LAYOUT
==================================================*/
html {
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
html, body{
	font-family:'pragmatica';
	font-weight: 400;
	color:#433635;
}
:focus {
    outline: none;
}
img{
	max-width: 100%;
}
.relative{
	position: relative;
}
a {
    color: #cf152d;
    text-decoration: none;
}
a:hover,a:focus{
	color:#cf152d;
}
h1,.h1{
	font-weight: 200;
	color:#433635;
	text-transform: uppercase;
	font-size:25px;
	margin: 0;
	display: block;
}
h1 span,
.h1 span{
	font-weight: 500;
}
h3,.h3{
	color:#fff;
	font-size: 18px;
	padding:5px;
	font-family:'pragmatica-extended';
	font-weight: 400;
	background:#cf152d;
	text-transform: uppercase;
	display: inline-block;
	margin:10px 0;
}
p{
	font-size: 14px;
	font-weight: 400;
	color:#433635;
	line-height: 1.8;
}
li{
	font-size: 14px;
}
.greybox{
	background:#2f2625;
	padding:5px;
	color:#fff;
}
.btn{
	border-radius:0;
	text-transform: uppercase;
	font-family: 'pragmatica-extended';
	font-weight: 500;
	font-size: 14px;
	padding:10px;
	-webkit-transition: all .35s;
	-moz-transition: all .35s;
	transition: all .35s;
}
.btn.btn-default{
	background:#fff;
	border:1px solid black;
	color:#433635;
}
.btn.btn-default:active{
	box-shadow: none;
}
.btn-default:hover,
.btn-default:focus,
.btn-default:active:hover{
	background:#433635;
	color:#fff;
}
.btn-primary{
	background:#cf152d;
	color:#fff;
	border:none;
	border-radius: 5px;
	-webkit-transition:all .35s;
	-moz-transition:all .35s;
	transition:all .35s;
}
.btn-primary:hover,
.btn-primary:focus{
	background:#fff;
	color:#2f2625;
}
.btn-inverse{
	background:transparent;
	border:1px solid #fff;
	color:#fff;
}
.btn-inverse:hover,
.btn-inverse:focus{
	background-color:#fff;
	color:#433635 !important;
}
.big-btn{
	background:#cf152d;
	border:1px solid #cf152d;
	display: block;
	color:#fff;
}
.big-btn:hover,
.big-btn:focus{
	background:transparent;
}
.contentSection{
	padding:70px 0; 
}
.smallPadding{
	padding: 30px 0 !important;
}
.bg-red-translucent{
	background-color: rgba(228,37,35,.5);
}
.bg-red-translucent *{
	color:#fff;
}
.bg-grey{
	background: #2f2625;
}
.bg-grey *{
	color:#fff !important;
}
.bg-lightgrey{
	background:#463d3c;
}
.bg-lightgrey *{
	color:#fff;
}
.magnify-icon{
	display: block;
	font-size: 70px;
	margin:30px 0;
	color:#e4e4e4;
	text-align: center;
}
.noPaddingBottom{
	padding-bottom: 0 !important;
}
.noPaddingBottom{
	padding-bottom: 0 !important;
}
.noPadding{
	padding:0 !important;
}
.leitbild p{
	/*font-size: 18px;*/
	text-transform: uppercase;
}
.leitbild .bold{
	color:#cf152d !important;
}
#searchFull h1,
#searchFull label{
	margin-bottom: 30px;
}
#searchFull input[type="text"]{
	width: 75%;
	padding:5px;
	color:#000;
	border:none;
	background:rgba(0,0,0,.1);
}
#searchFull input[type="submit"]{
	width: 24%;
	background:#cf152d;
	color:#fff;
	font-weight: bold;
	padding:5px 0;
	border:none;
	box-shadow: none;
}
div.searchResult{
	margin-bottom: 30px;
}
a.searchResult{
	display: inline-block;
	background:#cf152d;
	color:#fff;
	padding:5px;
	margin-bottom: 5px;
}
span.search{
	background:#cf152d;
	color:#fff;
}
.slick-slider {
  -webkit-user-select: text;
  -khtml-user-select: text;
  -moz-user-select: text;
  -ms-user-select: text;
  user-select: text;
}
.slick-list.draggable {
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.efreBar{
	background:rgba(255,255,255,.60);
	padding:15px 0;
	position: absolute;
	bottom: 20px;
	z-index: 300;
	left:0;
	right: 0;
}
.efreBar *{
	font-size: 10px !important;
}
.efreBar .btn{
	padding:5px;
	margin-top: 5px;
}
.efreBar a{
	text-decoration: underline;
}
/*==================================================
CTA
==================================================*/
.ctaContainer{
	position: fixed;
	top:25%;
	right:20px;
	z-index: 310;
}
.cta{
	width:60px;
	height:60px;
	background:rgba(207,21,45,.5) no-repeat center center;
	background-size: 45px;
	display: block;
	margin-bottom: 15px;
	-webkit-transition:background .35s;
	-moz-transition:background .35s;
	position: relative;
	transition:background .35s;
	z-index: 410;
}
.cta:hover,
.cta:focus{
	background-color: rgba(207,21,45,1);
}
.cta span{
	position: absolute;
	top:0;
	right:0;
	bottom: 0;
	z-index: 0;
	display: block;
	max-width: 300px;
	background:rgba(207,21,45,1);
	padding:0;
	font-size: 16px;
	color:#fff;
	-webkit-transition: width .35s, opacity .75s;
	-moz-transition: width .35s, opacity .75s;
	transition: width .35s, opacity .75s;
	width: 0;
	overflow: hidden;
	opacity: 0;
	padding:18px 15px 10px 10px;
}
.cta.efre{
	background:#0e4194 no-repeat center center;
}
.ctaEfre{
	background-size: 60px;
	background-color: #0e4194;
}
.cta.efre span{
	/*width: 340px;*/
	/*opacity: 1;*/
	max-width: 360px;
	min-height: 450px;
	background:#0e4194;
	font-size: 14px;
	padding:5px 15px 10px 10px;
}
/*.cta.efre:hover span{
	width:340px;
}*/
.cta.efre span img{
	display: block;
	margin-bottom:15px;
}
.cta.efre span b{
	font-weight: normal;
	text-transform: uppercase;
}
.cta:hover span{
	width:300px;
	opacity: 1;
}
.cta.ctaContact{
	background-image: url('/assets/layout/cta_ansprechpartner.png');
}
.cta.ctaAnfrage{
	background-image: url('/assets/layout/kontakt_cta.png');
}
.cta.ctaJobs{
	background-image: url('/assets/layout/cta_jobs.png');
}
.cta.ctaEfre{
	background-image: url('/assets/layout/cta_efre.png');
}
.cta.ctaEfre:hover,
.cta.ctaEfre:focus{
	background-image: url('/assets/layout/cta_efre_hover.png');
}

.embed-responsive-21by9{
	position: relative;
	overflow: hidden;
	width: 100%;
	padding-top:42.857143%;
}
.embed-responsive-21by9 .embed-responsive-item{
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
  }
/*==================================================
NAVIGATION
==================================================*/
header{
	background:transparent url('/assets/layout/header_dots_bg.png') no-repeat right -7px;
	background-size: contain;
}
.navbar-default{
	box-shadow: none;
	background:transparent;
	border:none;
}
.navbar-brand{
	height:auto;
	width:150px;
	padding:15px;
	margin-bottom: -21px;
}
.navbar-default .navbar-toggle{
	margin-top:15px;
	border-color:#433635;
}
.navbar-default .navbar-toggle .icon-bar{
	background-color: #433635;
}
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus{
	background-color:#433635;
}
.navbar-default .navbar-toggle:hover .icon-bar, .navbar-default .navbar-toggle:focus .icon-bar{
	background-color:#fff;
}
.navbar-default .navbar-collapse{
	padding: 20px 15px;
}

.topfunctions {
	padding-left: 0;
}
.navbar-default .navbar-nav>li>a,
.topfunctions li a{
	font-family: 'pragmatica-extended';
	font-weight: 200;
	text-transform: uppercase;
	color:#433635;
}
.topfunctions li{
	border:1px solid transparent;
	-webkit-transition: border .35s;
	-moz-transition: border .35s;
	transition: border .35s;
	padding:5px;
	list-style: none;
	margin:5px 0;
}
.topfunctions li a{
	font-size: 12px;
}
.topfunctions .active,
.topfunctions li:hover,
.topfunctions li:focus{
	border:1px solid #433635;
}
.topfunctions li a:hover,
.topfunctions li a:focus{
	text-decoration: none;
}
.navbar-default .navbar-nav>li>a{
	font-size:16px;
	padding:10px;
	border: 1px solid rgba(0,0,0,0);
	-webkit-transition:border .35s;
	-moz-transition:border .35s;
	transition:border .35s;
}
.navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav>.active>a:focus,
.navbar-default .navbar-nav>.active>a, .navbar-default .navbar-nav>.open>a,
.navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav>li>a:focus{
	color:#433635;
	box-shadow: none;
	background:transparent;
	border:1px solid #433635;
}
/*==================================================
SUJET
==================================================*/
.slider.sujet{
	visibility: hidden;
}
.slider.sujet.slick-initialized{
	visibility: visible;
}
.sujetItem{
	width:100%; 
	background-size:cover;
	background-repeat: no-repeat;
	background-position: center;
	margin-top: -10px;
}
.sujetItem .container {
	position: relative;
	height:100%;
	z-index: 200;
}
.sujetItem .container > div {
	width:100%;
	position: absolute;
	top:40%;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	transform: translateY(-50%);
}
.sujetItem .container img{
	width: 45px;
	float:left;
	margin-right: 15px;
	padding-top:10px;
}
.sujetItemsmall{
	height:450px;
}
.dotOverlay{
	background:transparent url('/assets/layout/dotOverlay.png') top right no-repeat;
	background-size: contain;
	position: absolute;
	z-index: 150;
	top:0;
	right:0; 
	left:0;
	bottom:0;
}
.darkOverlay{
	background:rgba(0,0,0,.2);
	background-size: contain;
	position: absolute;
	z-index: 160;
	top:0;
	right:0; 
	left:0;
	bottom:0;
}
.line{
	margin-left:65px;
	color:#fff;
	font-size: 22px;
	font-weight:200;
	text-transform: uppercase;
	line-height: 1;
	/*overflow: hidden;*/
}
.line-3{
	font-weight: 400;
	margin-bottom: 0;
}
.sujetAnchorWrap{
	position: absolute;
	bottom: -32px;
	z-index: 99;
	left: 0;
	right: 0;
}
.sujetAnchorWrap a{
	display: block;
	background:#fff;
}
.sectionImg{
	background:transparent center center;
	background-size: cover;
	height: 200vh;
}
.sectionImg .container{
	height:100%;
}
.sectionImg .container > div{
	position: absolute;
	top:20%;
	left:0;
	padding:20px;
}
.sectionImg .container .header{
	font-weight: 700;
	margin-bottom: 15px;
	font-style: 20px;
	text-transform:  uppercase;
	display: block;
}
.homeSujet .slick-dots{
	bottom:200px !important;
}
.sujet .slick-dots{
	bottom:30px;
}
.sujet .slick-dots li button:before{
	content:'';
	opacity: 1;
	height:12px;
	width: 12px;
	/*border:2px solid black;*/
	background:#fff;
	border-radius: 3px;
	-webkit-transition: background .35s;
	-moz-transition: background .35s;
	transition: background .35s;
}
.sujet .slick-dots li{
	margin:0 5px;
}
.sujet .slick-dots li,
.sujet .slick-dots li button{
	height:12px;
	width: 12px;
}

.sujet .slick-dots li:hover button:before,
.sujet .slick-dots li:focus button:before,
.sujet .slick-dots .slick-active button:before{
	/*background:#fff url('/assets/layout/redArrow.png') no-repeat center;*/
	background:#cf152d;
	background-size: cover;
}
/*==================================================
TIMELINE
==================================================*/
.timeline .title{
	color:#cf152d;
	font-size: 20px;
	font-weight: 700;
	position: relative;
	display: block;
}
.timeline .timeline-item .title:after{
	content: '';
	height:1px;
	/*width: 100%;*/
	background:#cf152d;
	position: absolute;
	right: -17%;
	left:0;
	bottom: 0;
}
.timeline  .timeline-item.inverted .title:after{
	left:-16%;
	right: 0;
}
.timeline .title span{
	color:#433635;
	display: inline-block;
}
.timeline .timeline-items .timeline-item{
	background-color: #fff !important;
	position: relative;
	text-align: justify;
	width: 100%; 
}
.timeline .timeline-items .timeline-item.inverted{
	left:-10px;
}
.timeline .timeline-items .timeline-item::after,
.timeline .timeline-items .timeline-item.inverted::after
{
	background:#fff;
	padding:5px;
	border:2px solid red !important;
	height:40px;
	width: 40px;
	left:calc(100% + 9.4%) !important;
	top:35px !important;
	display: none !important; 
}
.timeline .timeline-items .timeline-item.inverted::after{
	left: calc(-9.88% - 13px) !important;

}
.timeline .timeline-items .timeline-item::before,
.timeline .timeline-items .timeline-item.inverted::before{
	content: '';
	width: 0;
	height: 0;
	position: absolute;
	border-top: 0 !important;
	right:-1em;
	left: calc(50% - 3px);
	border-left: 1em solid transparent !important;
	border-right: 1em solid transparent !important;
	border-bottom: 1em solid #cf152d !important;
	top: -12px;
}
.tlYear{
	background:#cf152d;
	margin: 0 auto;
    width: 130px;
    color: white;
	text-align: center;
	font-size: 30px;
	position: relative;
	z-index: 2;
}
.timeline::before{
	background-color: #cf152d;
}




/*==================================================
THEMESLIDER -> Name TBD
==================================================*/
.contentSection,
.themeSliderWrap{
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}
.themeSliderWrap{
	height:900px;
}
.themeSliderWrap .container{
	height: 100%;
	position: relative;
} 
.themeSliderWrap .row{
	position: absolute;
	top:50%;
	-webkit-transform:translateY(-50%);
	-moz-transform:translateY(-50%);
	transform:translateY(-50%);
	right: 15px;
	left:15px;
}
.themeItem .h1,
.themeItem p{
	color:#fff;
}
.themeItem .h1{
	margin-bottom: 25px;
	margin-top: 0;
}
.themeItem p{
	line-height: 2;
	margin-bottom: 30px;
}
.slider.theme .slick-prev, .slider.theme  .slick-next{
	top:0;
	-webkit-transform:none;
	-moz-transform:none;
	transform:none;
}
.slider.theme .slick-prev{
	left:0;
}
.slider.theme .slick-next{
	right: 0;
}
.slider.theme .slick-prev:before,
.slider.theme .slick-next:before{
	font-size: 40px;
}
.slider.theme .slick-next:before{
	content:'>';
}
.slider.theme .slick-prev:before{
	content:'<';
}

/*==================================================
= DIASHOW SLIDER						           =
==================================================*/
.slider.dia{
	margin-bottom: 0;
}
.dia .slide{
	height: 400px;
	background-position: top center;
	background-size: cover;
}
.news .dia .slide{
	height:300px;
}
.dia .slide .container{
	height: 100%;
	z-index: 99;
}
.dia .slide .container > div{
	max-width: 600px;
	padding:30px 15px;
	position: absolute;
	top:15px;
	left:15px;
	right:15px;
}
.dia .slide .headline{
	font-size: 25px;
	font-weight: 400;
	text-transform: uppercase;
	line-height: 1.2;
	margin-bottom: 20px;
}
.diaNav{
	display: none;
	margin-top: 20px;
}
.diaNav .slide{
	position: relative;
	background-size: cover;
	background-position: center;
	cursor: pointer;
}
.diaNav .slide:after{
	content: '';
	padding-bottom: 100%;
	display: block;
}
/*==================================================
NEWS / NEWS SLIDER
==================================================*/
.newsItem [class*=' col-']{
	margin-bottom: 30px;
}
.slider.news .slick-dots{
	top:-65px;
	bottom: auto;
}
.slick-dots li button:before{
	font-size: 11px;
}
.slick-dots li{
	margin:0 2px;
}
.slick-dots li button:hover:before, .slick-dots li button:focus:before,
.slick-dots li.slick-active button:before{
	color:#cf152d;
	opacity:1;
}
.newsItem{
	margin-bottom: 50px;
}
.news .dia .slide{
	background-position: center;
}
/*==================================================
FOOTER
==================================================*/
footer{
	background:#2f2625;
	padding:50px 0;
	margin-top: 100px;
}
footer *{
	color:#fff;
	font-size: 14px !important;
}
footer span{
	font-weight: 700;
	display: block;
	margin-bottom: 30px;
}
footer a{
	display: inline-block;
	color:#fff;
}
footer a:hover,
footer a:focus{
	color:#fff;
	text-decoration: underline;
}
footer img{
	display: inline-block !important;
}
/*==================================================
Item Box
==================================================*/
.itemBox{
	background: #fff;
	box-shadow: 0 0 13px 5px #ececec;
	padding-bottom: 20px;
	margin-bottom: 30px;
	-webkit-transition: box-shadow .35s;
	-moz-transition: box-shadow .35s;
	transition: box-shadow .35s;
}
.itemBox:hover,
.itemBox:focus{
	box-shadow: 0 0 13px 5px #ccc;
}
.itemBox .pic{
	position: relative;
	background:transparent no-repeat center;
	background-size: cover;
}
.itemBox .pic:after{
	display: block;
	content: '';
	padding-bottom: 100%;
}
.itemHeader{
	padding:15px 15px 30px;
}
.itemHeader span{
	font-size: 17px;
	font-weight: 700;
	text-transform: uppercase;
	color: #433635;
    word-wrap: break-word;
}
.itemBox .table>tbody>tr>td,
.itemBox table tr,
.itemBox table td{
	border:none;
	word-wrap: break-word;
}
.itemBox table tr:nth-child(odd){
	background:#eaeaea;
}
.itemBox table{
	margin:20px 0 0;
}

.filterItems .flexContainer{
	display: flex;
	flex-direction:  row;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: stretch;
	align-content: flex-start;
}
.flexContainer [class*=' col-']{
	float: none;
	width:100%;
}
.filter .btn{
	width: 100%;
	margin-bottom: 15px;
}
/*==================================================
= FORMULAR								           =
==================================================*/
.form-horizontal .form-group{
	margin:0;
}
.form-control{
	border-radius: 5px;
	background:rgba(255,255,255,.5);
	border:none;
	padding:10px 15px;
	height:45px;
	margin-top:10px;
	margin-bottom: 10px;
}
.form-horizontal .control-label{
	margin:5px 0;
	border-bottom: 1px solid #cf152d;
	padding-bottom: 3px;
	font-weight: 400;
	display: block;
	text-align: left;
}
.bg-pink .form-control,
.bg-pink .form-horizontal .control-label{
	color:#fff;
}
.help-block{
	margin:0;
}
.list-unstyled{
	margin-bottom: 0;
}
.list-unstyled li{
	font-size: 12px;
	color:red !important;
}
::-webkit-input-placeholder { /* Chrome/Opera/Safari */
	color: rgba(255,255,255,.75) !important;
}
::-moz-placeholder { /* Firefox 19+ */
	color: rgba(255,255,255,.75) !important;
}
:-ms-input-placeholder { /* IE 10+ */
	color: rgba(255,255,255,.75) !important;
}
:-moz-placeholder { /* Firefox 18- */
	color: rgba(255,255,255,.75) !important;
}
/*==================================================
== KASTEN
==================================================*/
.kasten{
	margin-bottom: 30px;
}
.kasten a{
	color:#fff;
	background:#cf152d;
	display: inline-block;
	padding: 2px 5px;
	margin-left: 5px;
}
.kastenheader{
	font-size: 18px;
}
/*==================================================
== SECTIONKASTEN
==================================================*/
.sectionKasten *{
	color:#fff;
}
.sectionKasten .content.right {
	float:right;
}
.sectionKasten .wrapper{
	float:left;
	max-width: 570px;
	padding:75px 15px 75px 15px;
}

.sectionKasten .content{
	position: relative;
	/*font-size: 13px;*/
}
.sectionKasten .content,
.sectionKasten .image{
	min-height:500px;
}
.sectionKasten .image {
	background-size:cover;
	background-position: center center;
}
.sectionKasten a{
	color:#cf152d !important;
	/*font-weight: 700;*/
	text-decoration: underline;
}
/*==================================================
== COOKIE CONSENT
==================================================*/

.cc_logo {
	opacity: 0.2 !important;
}
.cc_container{
	border-radius: 0 !important;
	border:none !important;
	padding-bottom: 15px !important;
	color:#fff !important;
	width:100% !important;
	left:0 !important;
	right:0 !important;
	bottom:0 !important;
	background:#261e1e !important;
}
.cc_container * {
	line-height: 1.2em !important;
	font-size: 80% !important;
}
.cc_container a, .cc_container a:visited {
	color: #cf152d !important;
	text-decoration: underline;
	display: inline-block;
	margin-top: 10px;
}
.cc_container .cc_btn, .cc_container .cc_btn:visited {
	background-color: transparent !important;
	border-radius: 0 !important;
	color: #cf152d !important;
}
.cc_container .cc_btn{
	position: static !important;
	float:none;
	display: block;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	padding:8px 50px !important;
	margin-bottom: 10px !important;
	margin-top: 10px !important;
}
.cookieMsg{
	float:left;
	font-weight: 300 !important;
	font-size: 12px !important;
	margin-right: 5px !important;
}
.cc_more_info{
	float:left !important;
	font-weight: 400 !important;
	font-size: 12px !important;
}
.cc_container .cc_logo{
	display: none !important;
}
/*==================================================
LINE CLAMP
==================================================*/

.line-clamp {
	display: block;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	position: relative;
	line-height: 1.5;
	overflow: hidden;
	text-overflow: ellipsis;
	padding: 0 !important;
}
.line-clamp-2 {
	-webkit-line-clamp: 2;
	height: calc(1em * 1.5 * 2);
}
.line-clamp-3 {
	-webkit-line-clamp: 3;
	height: calc(1em * 1.5 * 3);
}
.line-clamp-4 {
	-webkit-line-clamp: 4;
	height: calc(1em * 1.5 * 4);
}
.line-clamp-5 {
	-webkit-line-clamp: 5;
	height: calc(1em * 1.2 * 5);
}
.line-clamp-6 {
	-webkit-line-clamp: 5;
	height: calc(1em * 1.2 * 5);
}
.line-clamp-7 {
	-webkit-line-clamp: 5;
	height: calc(1em * 1.2 * 5);
}
.line-clamp-8 {
	-webkit-line-clamp: 8;
	height: calc(1em * 1.2 * 8);
}
.line-clamp-9 {
	-webkit-line-clamp: 8;
	height: calc(1em * 1.2 * 8);
}
.line-clamp-10 {
	-webkit-line-clamp: 10;
	height: calc(1em * 1.2 * 10);
}



















/*==================================================
=            Bootstrap 3 Media Queries             =
=               Mobile First Method                =
==================================================*/

/* Custom, iPhone Retina */ 
@media only screen and (min-width : 320px) {

}

/* Extra Small Devices, Phones */ 
@media only screen and (min-width : 480px) {

}

/* Small Devices, Tablets */
@media only screen and (min-width : 768px) {

}

/* Medium Devices, Desktops */
@media only screen and (min-width : 992px) {

}

/* Large Devices, Wide Screens */
@media only screen and (min-width : 1200px) {

}
