/**
 * Theme Name: Twenty Fifteen Child
 * Theme URI: https://wordpress.org/themes/twentyfifteen-child/
 * Template: twentyfifteen
 * Version: 1.0
 * Author: MK
 * Author URI: http://knoth.com/
 * Description:  
 * Text Domain: twenty-fifteen-child
 *  
 */

/* # > debug
	.wrap, .entry-content, .second-menu-wrapper.small-site-title-wrapper, .owl-dots, .site-title a, .navigation-top, body.twentyfifteen-front-page .site-branding{
		border:1px solid red !important;
	}
*/
/* # > generell
*/
html {
	font-size:14px;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
}

html, body {
	height:100vh -65px;
	margin:0;
	padding:0;
}
body {
	font-family: Roboto, helvetica, arial, sans-serif;
	color:rgba(0,0,0,1);
	font-size: 1em;
	font-weight: 300;
	background:#fff;
}

body.admin-bar {
    height: calc(100% - 70px);
}

/* css reset */
body:before, .widecolumn, .post-navigation, .site-footer, .secondary, 
.site .skip-link, .hentry, .page-header, .page-content {
	box-shadow: none;
}
.page-links a, .page-links > span, .site-header, .post-navigation, 
.secondary-toggle, .secondary-toggle:focus, .main-navigation ul, .main-navigation li {
	border:0;
}

hr {
    margin-top: -1rem !important;
    margin-bottom: 0.6rem !important;
}
/* # > logo
*/
#logo {
	width: 20%;
	margin:0 0 0 auto;
}
#homeClick {
    position:relative;
	z-index:9999;
	display:block;
	width: 100%;
}

h1, h2, h3, h4, h5, h6 {
    font-size: 100%;
}

/* # > startseite 
*/
html.no-js #stoerer {
    display:none;
}
html.js #stoerer {
    position: fixed;
    left:0;
    top:0;
    z-index:1000;
    width:100%;
    height:100vh;
    display: flex;
	justify-content: center;
	align-items: center;
	background: #1B255E;
	color: #fff;
	text-align: center;
}

html.js #stoerer h1 {
    width: 90vw;
    font-size: 2.2rem;
    font-weight: 500;
}

body.page-template-default, body.page-template-default .pageHead, body.page-template-default .flex {
    background: #1B255E;
}

body.page-template-default .footerInfo {
    background: #1B428A;
}

body.page-template-default .color {
    color: #1B428A;
}

hr.color {
    padding: 0;
    background: transparent;
    border-bottom: 1px solid;
}

span.info {
    opacity: 0.5;
    cursor: pointer;
}

.ui-accordion-header-active span.info {
    display: none;
}

body.page-template-default hr.color {
    border-color: #1B428A;
}

body.page-template-emergency, body.page-template-emergency .pageHead, body.page-template-emergency .flex {
    background: #B72F2F;
}

body.page-template-emergency .footerInfo {
    background: #8A2F30;
}

body.page-template-emergency .color {
    color: #B72F2F;
}

body.page-template-emergency hr.color {
    border-color: #B72F2F;
}

.imageRow {
    width: 100vw;
    padding: 1rem 0 0 2rem;
    margin: 0;    
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    height: calc(80vw / 3 + 1rem);
}

.imageRow div {
    height: calc(80vw / 3);
    width: calc(80vw / 3);
	background-size: cover;
	margin-right: 1rem;
}

.pageHead {
    left: 0;
    position: fixed;
    width: 100vw;
    z-index: 100;
    padding-top: 0.6rem;
}

.nav-menu {
    margin-top: 4rem;
    padding-left: 1.3rem;
}

.nav-menu li a{
    color: #fff;
    opacity: 1;
    margin: 0;
}

.site-branding {
	color: rgba(255,255,255,0.6);
	border-bottom: 1px solid #fff;
	padding: 0;
	padding-left: 5.5rem;
	height: 3.4rem;
}

.site-branding h1 a {
    font-size: 1rem;
    line-height: 2.6rem;
    font-weight: 500;
    margin: 0;
    color: #fff;
}

.site-content {
    z-index: 10;
    margin: 38vw 0 0 0;
    width: 100vw;
    min-height: calc(100dvh - 18.2rem);
    background: #fff;
    display: flex;
    justify-content: left;
    padding-left: 2rem;
    padding-top: 1rem;
    padding-bottom: 0;
}

body.admin-bar .site-content {
    min-height: calc(100dvh - 18.2rem - 32px);
}

.site-content .content-area {
    width: calc(100vw - 4rem);
}

.entry-content {
    margin-top: 2rem;
}

.footerInfo{
    position: relative;
    height: 7.5rem;
    display: flex;
    justify-content: left;
    padding: 1rem 0 0 2rem;
    font-size: 0.9em;
}

.footerInfo div{
    color: #fff;
    font-weight: 500;
}
.footerInfo div.adress{
    font-size: 0.9em;
}
.footerInfo div a {
    color: #fff;
}
.footerInfo div a:hover {
    opacity: 0.8;
}

.hentry, .page-header, .page-content {
	box-shadow: none;
	margin: 0;
}

.site-main {
	padding-top: 0;
	padding-bottom: 2rem;
}

header.projekt {
	margin-top: 10px;
	margin-left:3em;
}

.entry-content, .entry-summary {
	padding: 0;
}

li.menu-item a {
	font-family: Roboto, helvetica, arial, sans-serif;
	font-weight: 500;
	font-size: 0.8em;
	line-height:0.8em;
}

li.menu-item.current-menu-item a {
	opacity: 0.8;
}
li button.dropdown-toggle {
	display:none;
}
.fix {
	background-size:0;
	background-repeat:no-repeat;
	background-position:0 0;
}
.main-navigation .menu-item-has-children > a{
	padding-right: 0;
}
.main-navigation .current-menu-item.menu-item-has-children ul.sub-menu,
.main-navigation .current-menu-parent.menu-item-has-children ul.sub-menu {
	display: block;
	visibility:visible;
}
.main-navigation ul.sub-menu a{
	font-weight:300 !important;
	font-size:0.6em;
	line-height:0.6em;
}

.site-header {
	padding: 0;
	margin: 0;
}

span.number, .entry-title {
	position:relative;
	display:inline-block;
	z-index:1;
	font-size: 1em;
	margin-bottom: 0;
}
span.number {
	font-size: 2em;
	font-weight: bold;
	padding-right:0.2em;
	margin-top:0.05em;
}
.owl-carousel {
	position:absolute;
	top:0;
	left:0;
	width:100vw;
	height:80vh;
	overflow: hidden;
}

.owl-carousel a {
	display:block;
}

.slider-intro {
	position:absolute;
	top:0;
	left:0;
	width:100vw;
	height:80vh;
	display: flex;
	display:-ms-flexbox;
	justify-content: center;
	-ms-flex-pack: center;
	align-items: center;
	-ms-flex-align: center;
}
.slider-intro div {
	width:50%;
}

button,
input,
select,
textarea {
	font-family: Roboto, helvetica, arial, sans-serif;
	color:rgba(0,0,0,1);
	font-weight:300;
	font-size:1em;
}
.noborder {
	border:0 !important;
}
#rwd {
	position:absolute;
	z-index:0;
}
a{
	box-shadow:none !important;
	outline: 0 !important;
}
ul.outer, ol.outer {
	margin-bottom:1em;
}

ul.outer li, ol.outer li {
	margin-left: -3.4rem;
}

ol.ol {
	display:block;
	margin-left:1.6em;
}
ol.outer, ul ol.ol.small, ol.ol.medium, ul ol.ol.big {
	padding-left:1.4em;
}
ol.ol.medium {
	margin-left:1.7em;
}
ol.ol.big {
	margin-left:2.2em;
}
ul.ul {
	display:block;
	margin-left:0.6em !important;
}
ul.ul > li, ul.projects > li {
	list-style: none;
}
ul.ul > li:before, ul.projects > li:before {
	content:"-";
	position:absolute;
	margin-left:-0.6em;
}
ol.projects {
	margin-left: 3em;
}
ol.projects li {
	margin-bottom: 1em;
}
ol.projects > li a {
	border-bottom: 0;
}
ul.projects > li a span {
	font-weight: bold;
}
dl.dl dd {
	margin-left:0;
	margin-bottom:0;
}
dl.dl dt {
	font-weight:300;
}
.secondary {
	padding-right:0 !important;
	padding-top:0.3em;
}

.small-site-title-wrapper {
	position:absolute;
	z-index:5;
	width:100%;
	bottom:2em;
}
table.projektdaten {
	border:0;
}
table.projektdaten td {
	padding:0;
	vertical-align:top;
	border:0;
	border-bottom:1px solid #ccc;
	border-collapse:collapse;
}
table.projektdaten span.tablehead {
	font-weight:700;
}
table.projektdaten span.tablehead.first {
	display:block;
	margin-bottom:1.5em;
}
table.projektdaten span.tablehead.inside {
	display:block;
	margin-top:1em;
}
div.bilder {
	padding:0;
	margin:0;
}
div.bilder div{
	margin-bottom: 1.4em;
}

.preload {
	position:absolute;
	width:1px;
	height:1px;
	overflow:hidden;
	visibility:hidden;
}
#project-container {
	width:100%;
	padding:0;
	margin:0;
	margin-bottom:-2.7em;
}
#project-container a {
	position:relative;
}
#project-container div.row {
	width:100%;
	position:relative;
	margin-bottom:2.2em;
	background-color:#ccc;
}
#project-container div.quer:before {
	content: "";
	display:block;
	padding:0;
	margin:0;
	padding-top:69%;
}
#project-container span.maptxt {
	display: flex;           
	display:-ms-flexbox;
	justify-content: center;
	-ms-flex-pack: center;
	align-items: center;
	-ms-flex-align: center;
    flex-direction: column;  
    -ms-flex-direction: column;
    position:absolute;
	top:0;
	left:0;
	bottom:0;
	right:0;
	color:#fff;
	background:rgba(73,157,159,0.7);
}
#project-container span.maptxt span {
	font-family: Roboto, helvetica, arial, sans-serif;
	font-weight:800;
	width:90%;
	cursor:pointer;
	font-size:2.2em;
	color:#fff;
}
#project-container span.maptxt span.big {
	font-size:4em;
	color:#fff;
}
#project-container div.quer.notouch span.maptxt {
	visibility:hidden;
}
#project-container div.quer.notouch:hover span.maptxt {
	visibility:visible;
}
.projects .sub-menu {
	display:none !important;
}

body.admin-bar span.number {
	margin-top:0;
}

/* # > mobile-menu
*/
html.js .secondary-toggle:before {
	color: #fff;
}

html.js .secondary-toggle:before {
    content: "\f419";
    line-height: 40px;
    width: 40px;
    font-size: 2rem;
    padding-left: 1rem;
}


html.js button.secondary-toggle {
	position:fixed !important;
	z-index:1000;
	top:2.5em;
	left:1em;
	right:0;
	width:4rem;
	background-color:transparent;
	text-align:left;
}

html.js body.admin-bar button.secondary-toggle {
	top:5.8em;
}

button.secondary-toggle:hover {
	border:0;
}

.secondary.toggled-on .menu-top-menue-container {
    padding-top: 2rem;
}
.secondary.toggled-on .main-navigation {
	position:fixed;
	top:0;
	left:0;
	z-index:200;
	height: 100vh;
	width:100vw;
	background:rgba(0,0,0,0.8);
}
.secondary.toggled-on li.menu-item a{
	padding-left:0.3em;
	font-size:1.8em;
	text-align: left;
	color:#fff;
}
.secondary.toggled-on ul.sub-menu {
	display:none !important;
}

html.js body.admin-bar .secondary.toggled-on .main-navigation{
    top: 32px;
}

body:not(.single-post) li.projects .sub-menu {
	display: none !important;
}

/**
 * # > 16.2 Tablet Small 740px - 46
 */
@media screen and (min-width: 46.25em) {
    html {
        font-size:14px;
	}
	#rwd {
		z-index:46
	}	
	
	.nav-menu {
        padding-left: 0;
    }
	
	ul.outer li, ol.outer li {
        margin-left: -2.8rem;
    }

	.imageRow {
        padding-left: 2rem;  
        padding-top: 1rem;
        height:calc(46rem / 3 + 1rem);  
    }
    
    .imageRow div {
        height:calc(46rem / 3);   
        width:calc(46rem / 3);
    }
    
	.footerInfo {
        height: 6rem;
        font-size: 1.1em;
    }
    
    .site-content {
        margin-top: 18rem;
		min-height: calc(100dvh - 24rem);
    }  
    
    body.admin-bar .site-content {
        min-height: calc(100dvh - 24rem - 32px);
    }
    
    .site-content .content-area {
        width: 46rem;
    }
    
	.hentry,
	.page-header,
	.page-content {
		box-shadow: none;
	}	
	header.projekt {
		margin-left:6em;
	}
	.imgnav div {
		display: none;
	}
	.secondary.toggled-on li.menu-item a{
		font-size:1.2em;
		padding-left:1.2em
	}

	/* # > admin-bar
	*/
	body.admin-bar .imgnav #close {
		top: 3.5em;
	}
}

/**
 * # > 16.3 Tablet Large 880px - 55 
 */
@media screen and (min-width: 55em) {
	#rwd {
		z-index:55;
	}
	
	html.js button.secondary-toggle {
        top:3.4em;
    }
	
	.pageHead {
        padding-top: 1.5rem;
    }
    
	#project-container {
		width:calc(90% + 1.4em);
		padding:0;
		margin:0;
		margin-right: -1.4em;
		margin-top:1em;
	}
	#project-container div.row {
		width:calc(33.3% - 1.4em);
		float:left;
		position:relative;
		margin-right:1.4em;
		margin-bottom:1.4em;
	}
	#project-container div.quer:before {
		content: "";
		display:block;
		padding:0;
		margin:0;
		padding-bottom:70%;
	}
	#project-container span.maptxt span {
		font-size:0.8em;
		line-height:1.2em;
	}
	#project-container span.maptxt span {
		font-size:1em;
	}
	#project-container span.maptxt span.big {
		font-size:2em;
	}
	div.bilder {
		clear: both;
	}
	div.bilder div.links {
		float:left;
	}
	div.bilder div.rechts {
		float:right;
	}
	div.bilder .img10 {
		width:10%;
	}
	div.bilder .img20 {
		width:20%;
	}
	div.bilder .img30 {
		width:30%;
	}
	div.bilder .img40 {
		width:40%;
	}
	div.bilder .img50 {
		width:50%;
	}
	div.bilder .img60 {
		width:60%;
	}
	div.bilder .img70 {
		width:70%;
	}
	div.bilder .img80 {
		width:80%;
	}
	div.bilder .img90 {
		width:90%;
	}
	div.bilder .abstandRechts {
		padding-right:1.4em;
	}
	div.bilder .abstandLinks {
		padding-left:1.4em;
	}
}

/**
 * # > 16.4 Desktop Small 955px - 59
 */
@media screen and (min-width: 59.6875em) {
    html {
        font-size:16px;
    }
    
	#rwd {
		z-index:59;
	}
	
    .nav-menu {
        margin: 0;
        margin-bottom: 1rem;
        display: flex;
        justify-content: left;
    }
	
	ul.outer li, ol.outer li {
        margin-left: -2.5rem;
    }
    
	.site-branding, .nav-menu, .site-content, .footerInfo, .imageRow {
        padding-left: 10%;
    }
    
  	.site-content .content-area {
        width: 48rem;
    }

    .footerInfo{
        font-size: 1em;
    }
    
    .imageRow, .imageRow div {
        padding-top: 0;
        height:calc(42rem / 3);   
    }
    
    .imageRow div {
        width:calc(42rem / 3);
    }
    
    .site-branding h1 a {
        font-size: 2.2rem;
    }
    
	.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4 {
		margin-top: 0;
		margin-bottom: 0.5em;
		position:relative;
		z-index:3;
	}

	header.projekt {
		margin-top: 60px;
		margin-left: 0;
		margin-right: 5em;
		padding-bottom:1em;
	}

	.secondary{
		padding-right: 0 !important;
		width: 100%;
	}
	
	.entry-content h1:first-child, .entry-content h2:first-child, .entry-content h3:first-child, .entry-content h4:first-child {
		top: -0.05em;
	}
	
	span.anchor {
		position: absolute;
		margin-top: -4.7em;
	}
	.small-site-title-wrapper {
		bottom: 1em;
	}	
	div.topspace {
		height: 0.4em;
	}
	header.projekt {
		padding-left: 0;
		position: fixed;
		top: 0;
		padding-top: 1em;
		z-index: 2;
		display:block;
		width:100%;
		background:#fff;
	}

	#project-container {
		margin-top:100px;
	}
	
	#logo {
		width: 84px;
		height: 84px;
		margin-right: 20px;
	}
	
	/* # > menu
	*/
	
	.main-navigation .current-menu-item a {
		opacity: 1;
	}
	
	.main-navigation{
		margin: 0;
	}
	
	.main-navigation li, .main-navigation li a {
		display: inline !important;
	}
	html.js body.single-post .main-navigation ul.nav-menu > li {
		display:none !important;
	}
	html.js body.single-post .main-navigation ul.nav-menu li.projects {
		display:inline !important;
	}
	html.js body.single-post .main-navigation ul.nav-menu li.projects ul.sub-menu {
		display:inline !important;
	}
	html.js body.single-post .content-area {
		margin-top:60px;
	}
	.main-navigation li:before {
		font-family: Roboto, helvetica, arial, sans-serif;
		font-weight:800;
		font-size: 0.9em;
		content: " ";
		padding: 0 0.5em;
	}
	.main-navigation li:first-child:before, 
	html.js body.single-post .main-navigation ul.nav-menu li.projects:before {
		content: "";
		padding: 0;
	}
	html.js body.single-post .main-navigation ul.nav-menu li.projects ul.sub-menu li:before {
		content: "";
		padding-right: 1em;
	}
		
	
	/* # > admin-bar
	*/
	body.admin-bar .mainmenu {
		top:68px;
	}
	
	body.admin-bar #project-container {
		margin-top:8em;
	}
	body.admin-bar header.projekt {
		padding-top:3.3em;
	}
	body.admin-bar span.anchor {
		margin-top:-7em;
	}
	body.admin-bar .small-site-title-wrapper {
		bottom:2.7em;
	}
	body.admin-bar .entry-content h1:first-child, 
	body.admin-bar .entry-content h2:first-child, 
	body.admin-bar .entry-content h3:first-child, 
	body.admin-bar .entry-content h4:first-child {
		top: -0.1em;
	}
	.imgnav #prev.small {
		display: none !important;
	}
}

/**
 * # > 16.5 Desktop Medium 1100px - 68
 */
@media screen and (min-width: 68.75em) {
	#rwd {
		z-index:68;
	}
	
	html.js #stoerer h1 {
        font-size: 3rem;
    }

	.secondary {
		padding-top:0.4em;
	}
	
	.site-branding, .nav-menu, .site-content, .footerInfo, .imageRow {
        padding-left: 21%;
    }
    
	.imageRow, .imageRow div {
        height:calc(43rem / 3);   
    }
    
    .imageRow div {
        width:calc(43rem / 3);
    }	
    
    .small-site-title-wrapper {
		bottom:1em;
	}	
	span.anchor {
		margin-top:-5.2em;
	}
	div.topspace {
		height:0.7em;
	}
	header.projekt {
		padding-top:1.2em;
	}
	

	
	/* # > admin-bar
	*/
	body.admin-bar .mainmenu {
		top:65px;
	}
	body.admin-bar header.projekt {
		padding-top:3.5em;
	}
	body.admin-bar span.anchor {
		margin-top:-7.5em;
	}
	body.admin-bar .small-site-title-wrapper {
		bottom:2.7em;
	}
}

/**
 * # > 16.6 Desktop Large 1240px - 77
 */
@media screen and (min-width: 77.5em) {
	#rwd {
		z-index:77;
	}
	span.number {
		margin-top: 0;
	}
	
	.site-main {
        padding-top: 1rem;
        padding-bottom: 1rem;
    }
    
	span.anchor {
		margin-top:-5.8em;
	}

	span.anchor {
		margin-top:-5.8em;
	}
	div.topspace {
		height:1em;
	}
	header.projekt {
		padding-top:1.4em;
	}

	#project-container {
		width:90%;
		margin-top:8em;
	}
	#project-container div.row {
		width:calc(25% - 1.4em);
	}
	#project-container span.maptxt span {
		font-size:0.7em;
	}
	#project-container span.maptxt span.big {
		font-size:1.2em;
	}
	
	/* # > admin-bar
	*/
	body.admin-bar .mainmenu {
		top:61px;
	}
	body.admin-bar #project-container {
		margin-top:9em;
	}
	body.admin-bar header.projekt {
		padding-top:3.8em;
	}
	body.admin-bar span.anchor {
		margin-top:-8.1em;
	}
	body.admin-bar .small-site-title-wrapper {
		bottom:2.7em;
	}
}

/**
 * # > 16.7 Desktop X-Large 1403px - 87
 */

@media screen and (min-width: 87.6875em) {
	#rwd {
		z-index:87;
	}
}

/* # > @media (min-width: 100em)
*/
@media screen and (min-width: 100em) {
	html {
		font-size:17px;
	}
	span.number {
		margin-top: 0em;
	}
	div.topspace {
		height:1.05em;
	}
	.entry-content h1:first-child, .entry-content h2:first-child, .entry-content h3:first-child, .entry-content h4:first-child {
		top: 0.01em;
	}
	#rwd {
		z-index:100;
	}
	.secondary {
		padding-top:0.5em;
	}
	
	body.admin-bar .entry-content h1:first-child, 
	body.admin-bar .entry-content h2:first-child, 
	body.admin-bar .entry-content h3:first-child, 
	body.admin-bar .entry-content h4:first-child {
		top: 0.01em;
	}
}

/* # > @media (min-width: 110em)
*/
@media screen and (min-width: 110em) {
	#rwd {
		z-index:110;
	}
}

/* # > @media (min-width: 120em)
*/
@media screen and (min-width: 120em) {
	html {
		font-size:19px;
	}
	#rwd {
		z-index:120;
	}
}

/* # > @media (min-width: 130em)
*/
@media screen and (min-width: 130em) {
	#rwd {
		z-index:130;
	}
}

/* # > @media (min-width: 140em)
*/
@media screen and (min-width: 140em) {
	html {
		font-size:20px;
	}
	#rwd {
		z-index:140;
	}
}

/* # > @media (min-width: 160em)
*/
@media screen and (min-width: 160em) {
	#rwd {
		z-index:160;
	}
}

/* # > @media (min-width: 166em)
*/
@media screen and (min-width: 166em) {
	html {
		font-size:24px;
	}
	#rwd {
		z-index:166;
	}
}

/* # > @media (min-width: 213em)
*/
@media screen and (min-width: 213em) {
	#rwd {
		z-index:213;
	}
}

/* # > @media (min-width: 426em)
*/
@media screen and (min-width: 426em) {
	#rwd {
		z-index:426;
	}
}
