/*CSS*/


/*=========================
RESETS 
==========================*/
* {
    -moz-box-sizing:border-box;
    -webkit-box-sizing:border-box;
    box-sizing: border-box;
}


html,
body {
	height: 100.01%; 
	/* -webkit-overflow-scrolling: auto; */
	background-color: #fff;
}

* {
	margin: 0;
	padding: 0;
}

h1, h2, h3, h4, h5, h6 {
	margin-top: 1rem;
}

h1, h2, h3, h4, h5, h6, p, pre, blockquote, table, ol, ul, form {
	margin-bottom: .75rem;
}

figcaption p {
	margin-bottom: 0rem;
	padding: 0;
}

.image_container img {
	width: 100%;

}

/*#################
COLORS
#header: border-bottom: 5px solid rgba(255, 141, 31, 0.63);

###################*/

/*===============================
BREAKDOWN PAGES ALLGEMEIN
=================================*/
#wrapper {
	position: relative;
	min-height: 100%;
	height: auto;
	height: 100%;
}

#header {
	height: 3rem;
	width: 100%;
	position: absolute;
	margin-right: 0;
	margin-left: 0;
	background-color: rgba(255,255,255,.8);
	border-bottom: 2px solid rgba(255, 141, 31, 0.63);
	z-index: 30;
	opacity: 1;
}

#container {
	height: calc(100vh - 4rem);
	/* height: 100vh; */
	width: 100%;
	background-color: white;
	position: absolute;
	top: 3rem;
	bottom: 2rem;
}

#container #main {
	position: absolute;
	top: 0;
	bottom: 0;
	overflow: scroll;
	overflow-x: hidden;
	/* padding-bottom: 60px; */
	height: 100%;
}	

#footer  {
	width: 100%;
	height: 2rem;
	bottom: 0rem;
	position: fixed;
	/*top: 99vh;*/
	background-color: #999;
	border-top: 1px solid #f28c33;
	opacity: 0.87;
	z-index: 20;
	
	/* display: none; */
}

.homeportal #footer,
.ladies #footer,
.men #footer,
.young #footer,
.autoren #footer,
.news #footer,
.kontakt #footer,
.impressum #footer,
.sitemap #footer      {
	/* display: block; */
}


/*==================================
TYPO EXTRA & FONTAWESOME 
====================================*/

.fa {
	display: inline-block;
	font: normal normal normal 1rem/1.2 FontAwesome;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
 	-moz-osx-font-smoothing: grayscale;
	vertical-align: 0;
}


.fa.fa-video-camera {
	font: normal normal normal 1.11rem/1.2 FontAwesome;
	/* vertical-align: -1%; */
}


/*===========================
FOOTER STUFF
============================*/

#footer .inside {
	display: flex;
	justify-content: center;
}

#footer .inside ul {
	display: flex;
	padding-top: 0.5rem;
}

#footer .inside ul li a {
	padding: .5rem 1rem;
	/*flex: 0 1 100%;*/
} 

#footer .inside ul li a:hover {
	text-decoration: underline;
}


/*======================
NEWS KONTAKT & ELSE
========================*/

.impressum .inside,
.kontakt .inside  {
	display: flex;
	justify-content: flex-start;
	flex-flow: row;
	flex-wrap: wrap;

}



.kontakt.feedback .inside  {
	/*width: 60rem;*/
	margin: auto;
	/*display: flex;*/
	/*justify-content: flex-start;*/

}

.spalte 	 {
	max-width: 40vw; 
	margin: 6rem 0rem 3rem 0rem;
	flex: 0 0 40vw;
}

.einspaltig {
	width: auto; 
	margin: 3.25rem 8rem 3rem 8rem;
	padding: 0 1.5rem;
}

.spalte.links {
	margin-left: 8rem;
	padding-left: 1.2rem;
	padding-right: 3rem;
	border-right: 1px solid #d9d9d9;
}

.spalte.rechts  {
	padding-left: 3rem;
}

/*.impressum .spalte.links,*/
.feedback .spalte.links {
	border: 0;
}

#infotexte {
	display:none;
}

#aboutcopyright {
	margin-top: 6.5rem;
}

.sitemap .submenu {
	/*display: flex;*/
	width: auto;
}
.sitemap .mod_sitemap ul li {
	/*padding: 0rem 2rem 0.333rem 0rem; */
	width: auto;
	width: 9rem;
}

.mod_sitemap ul.level_1 li a {
	padding-bottom: 0.333rem;
}

.mod_sitemap ul.level_2 {
    margin-left:0.666rem;
    margin-top: 0.7rem;
    
}

.mod_sitemap ul.level_2 li {
	/*padding: 0rem 1rem 0rem 0rem; */
}

.mod_sitemap ul li a:hover {
    text-decoration:underline;
}

.pagetitel {
	display: none;
}

li.profillink a[href*="#"]{
	display: none;
	
}

.portal_text h2 {
	font: 0.925rem "Fira Sans", sans-serif;
}

.portal_text h3 {
	font: 0.85rem "Fira Sans", sans-serif;
}

.portal_text h4 {
	font: 0.75rem/1.333 "Fira Sans", sans-serif;
	margin-bottom: 0rem;
}

@media (max-width:812px) {


	#container {
	/* height: calc(100vh - 3rem); */
	height: 100vh;
	width: 100%;
	background-color: white;
	position: absolute;
	top: 0rem;
	bottom: 2rem;
}

	#container #main {
		position: absolute;
		width: 90vw;
		height: 100%;
		top: 3.8rem;
		padding-bottom: 4rem;
		margin: 0 5vw;
		overflow: visible;
		/* -webkit-overflow-scrolling: touch; */
	}	

	.spalte {
	    max-width: fit-content;
	    max-width: 100%;
	    margin: 2rem 0 2rem 0;
		flex: 0 1 auto;
	}

   .spalte.links {
   		margin-left: 0;
        padding-left: 0;
        padding-right: 0;
        border-right: 0px solid #d9d9d9;
    }

	.spalte.rechts {
    	padding-left: 0;
	}

	#footer {
		display: none;
	}

}