/*
Theme Name: Livestream on demand
Theme URI: http://89tasten.de
Description: 
Version: 1.0
Author: Philip Wilson
Author URI: 
Tags: 
*/ 

html, body {
	margin: 0px;
	padding: 0px;
}

body {
	text-align: left;
	background-color: #fff;
	font-family: 'Source Sans Pro', sans-serif;
	font-size: 16px;
	line-height: 160%;
	color: #080808;	
}

.clear {
	clear: both;
}

b, strong {
	font-family: 'Source Sans Pro', sans-serif;
	font-weight: 700;
}

a {
	text-decoration: none;
}

a:link, a:active, a:visited {
	color: #333;
	text-decoration: none;
}
a:hover {
	text-decoration: none;
	color: #DE2821;
}

a.non:link, a.non:active, a.non:visited {
	color: #000;
	text-decoration: none;
}

a.non:hover {
	text-decoration: none;
	color: #000;
}

h1 {
	font-size: 46px;
	font-family: 'Source Sans Pro', sans-serif;
	font-weight: 800;
    margin: 1.6em 0;
    margin-bottom: 0.4em;		
    color: #139997;
    line-height: 120%;
}

h2 {
	font-size: 40px;
	font-family: 'Source Sans Pro', sans-serif;
	font-weight: 300;	
}

h3 {
	font-size: 30px;
    font-family: 'Source Sans Pro', sans-serif;
    font-weight: 700;
    line-height: 120%;
}

.newsletter_post_text h3 {
    color: #D60150;	
    font-size: 40px; 
    font-weight: 400;   
}

/* Page structure  */

.navigation_head_bg {
	width: 100%;
    height: 60px;
    position: fixed;
    background-color: #D60150;
    z-index: 103;
    top:-70px;
}

.navigation_head {
    width: 100%;
    height: 100%;
}

.navigation_head {
	position: relative;
	overflow: hidden;
}

.navigation_head:after {
    background-image: linear-gradient(0deg, rgba(0,0,0,0) 50%, rgba(0,0,0,0.9) 100%);
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 102;
    height: 100%;	
    width: 100%;
}

#header {
    position: fixed;
    height: 0;
    z-index: 103;
    width: 100%;
	height: auto;
    top: 50px;	
}

.logo {	
	width: 250px;
	padding-left: 4vw;
    position: relative;
    z-index: 89;
}

.logo_block {
    position: absolute;
    top:-100px;	
	width: 42px;
	padding-left: 9vw;
	z-index: 104;
}

.logo img, .logo_block img {
	width: 100%;
	height: 100%;
}

.logo a {
    color: #fff;	
}

.navigation {
	width: 40vw;
	padding-right: 10vw;
}

.content, #footer, #footer_borduere {
	padding: 0 10vw;
    padding-bottom: 10vw;	
	margin: auto;
}


#footer {
    background-color: #139997;
    color: #fff !important;
    height: auto;
    padding: 50px 10vw;
}

#footer_borduere {
	background-color: #0e6b69;
	padding: 2% 10vw;	
	color: #fff !important;
}

.flex_container_half {
	width: 50%;
}

.flex_container_half.footer_right {
	text-align: right;	
}

#menu-footer {
	margin: 0;
	padding: 0;
    list-style: none;
    columns: 1;
}

#menu-footer li:before {
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
	font-family: "Font Awesome 5 Pro"; 
	content: "\f054";
    margin-right: 8px;
    font-size: 11px;		
}

#footer a, #footer_borduere a {
	color: #fff;
}

.flex, #header, .post_container, .newsletter_posts {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

/* Slogans */

.slogans {
	font-family: 'Source Sans Pro', sans-serif;	
	position: absolute;
    width: 100%;
    bottom: 30px;
    padding: 0 10vw;
    z-index: 102;
}

.slogans a {
	color: #FFF;
}

.slogan_stadt, .slogan_land, .slogan_bach {
    display: flex;
    width: 300px;
    height: auto;
    color: #FFF;
    font-size: 35px;
    margin-bottom: 15px;
    justify-content: start;  
    font-weight: bold;
    letter-spacing: 2.5px;    
}

.slogan_text {
    width: auto;
    padding: 3%;
    padding-top: 3.5%;
    margin-left: 10px;	
}

.slogan_stadt .slogan_text {
	background-color: #E0001A;
	width: 110px;;
}

.slogan_land .slogan_text {
	background-color: #F79237;
	width: 130px;;
}

.slogan_bach .slogan_text {
	background-color: #139997;
	width: 150px;;
}


/* Navigation */

.hamburger_button {
	display: none;
}

ul#menu-hauptmenu.menu {
	display: flex;
	justify-content: space-between;
	list-style: none;
	margin: 0;
	padding: 0;
}

#menu-hauptmenu li {
	list-style: none;
}

#menu-hauptmenu li a {
    padding: 5px 0px;
    font-size: 22px;
    color: #fff;
}

#menu-hauptmenu li.current-menu-item a, #menu-hauptmenu li a:hover {
 	-webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;	
}


/* End Navigation */

/* Startseite */

.text_content {
	font-size: 22px;
	width: auto;
	line-height: 200%;
	margin-top: 80px;
}

.main_post_title {
	font-size: 46px;	
    background-color: #F2F2F2;
    padding: 12px;  
    padding-top: 20px;      
	margin-bottom: 20px;    
}

.main_post_title h1 {
	font-size: 49px;
	margin: 0px;
	position: relative;
	top: -5px;
	left: 8px;
	color: #fff;
	letter-spacing: 2.5px;
}

.main_post_title img {
	position: relative;
	top: 5px;
}

.post_container {
	margin-top: 80px;
	flex-wrap: nowrap;
}

.main_container {
	width: 30%;
	margin-bottom: 50px;	
}

.toggle {
	display: none;	
}

.trigger_bau .trigger_a {
	font-size: 22px;
	line-height: 200%;
	font-weight: bold;
}

.trigger_bau .trigger_a:after {
	font-size: 17px;	
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
	font-family: "Font Awesome 5 Pro"; 
	content: "\f054";
}

.trigger_a.active:after {
	content: "\f078";	
}



/* Startseite -> Newsletter */

.newsletter_section {
	width: 100%;
	background-color: #DFE9EB;
	height: auto;
}

.content.newsletter {
	padding: 2vw 10vw;
}

.newsletter_post {
	width: 45%;
}

.newsletter_post_image img {
	max-width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.newsletter_post_image {
    height: auto;
    position: relative;	
}

a.pdf_download {
	border: 1px solid #E0001A;
    color: #E0001A;
    padding: 5px 11px;
    position: absolute;
    display: inline-block;
    background-color: rgba(255, 255, 255, 0.5);
    bottom: 15px;
    right: 15px;	
}

a.pdf_download:hover {
	background-color: #FFF;
}

.mehr_button {
    text-align: center;
    margin: 70px auto;	
}

.mehr_button a {
	width: auto;
	height: auto;
	border: 1px solid #139997;
	padding: 15px;
	margin: auto;
	color: #139997 !important;
}

.mehr_button a:hover {
	border-width: 2px;
	 	-webkit-transition: all 0.5s ease-in-out;
	    -moz-transition: all 0.5s ease-in-out;
	    -o-transition: all 0.5s ease-in-out;	
}

/* Startseite > Video  */

.video_container span, .video_container iframe {
    width: 100% !important;
    height: 37vh !important;	
}

/* PAGE */


.post_thumbnail_page img {
    width: 100%;
    height: 70vh;
    object-fit: cover;	
    object-position:center center;
}

.entry {
	word-break: break-word;
}



@media only screen and (max-width: 1050px){	
	
	.menu-hauptmenu-container {
	    -moz-animation: translate(100%, 0px);
	    -webkit-transform: translate(100%, 0px);
	    -o-transform: translate(100%, 0px);
	    transform: translate(100%, 0px);
	    	    		
		background-color: #139997;
		top:0px;
		right: 0px;
		width: 40%;
		height: 100%;
		z-index: 10;
		position: fixed;
		opacity: 0;
	}
	
	.menu-hauptmenu-container.active {
		opacity: 1;
	    -ms-transform: translate(0%, 0px);
	    -webkit-transform: translate(0%, 0px);
	    transform: translate(0%, 0px);
	 	-webkit-transition: all 0.5s ease-in-out;
	    -moz-transition: all 0.5s ease-in-out;
	    -o-transition: all 0.5s ease-in-out;
		visibility: visible;
	}
	
	.hamburger_button {
		display: block;
	}
	
	.hamburger {
		padding: 0px !important;
		transform: scale(0.7);
		position: relative;
		left: 0px;
		top: 0px;
		float: right;
		outline: none;
		z-index: 11;
	}
	
	ul#menu-hauptmenu.menu {
		display: block;
		margin-top: 185px;
		margin-right: 10vw;
		text-align: right;		
	}
	
	#menu-hauptmenu li {
	    margin-top: 11px;
	}
	
	.post_container {
		flex-wrap: wrap;
	}
	
	.main_container {
		width: 48%;		
	}
	
}

@media only screen and (max-width: 750px){	
	
	.post_thumbnail_page img {   
    	height: 60vw;
    }
	
	.main_container, .newsletter_post {
		width: 100%;
	}	
	
	.logo {
		width: 65vw;		
	}
	
	.navigation {
		width: 15vw;
	}
	
	.text_content {
	    font-size: 16px;
	    width: auto;	
 	}
 	
 	.newsletter_post {
	 	margin-bottom: 90px;
 	}	
 	
 	#footer_bg_top {
	 	height: 150px;
 	}
 	
 	.text_content {
	 	margin-top: 50px;
 	}	
}

@media only screen and (max-height: 780px){	


	.slogans img {
		height: 32px;
		width: 32px;
	}

	.slogan_stadt, .slogan_land, .slogan_bach {
	    font-size: 28px;
	    margin-bottom: 8px;		
	}
	
	.slogan_text {
		padding-top: 2.8%;
	}
	
}

	
	