/*
Theme Name: Wootstrap BS4
Theme URI: http://mehne.biz
Description: Deutsch: Dieses Template war eine Idee von Götz Müller-Dürholt und Kai Meinhardt. Es wird von Kai Meinhardt umgesetzt. Es darf nicht von anderen genutzt werden. Danke.
English: Copyright (C) Kai Meinhardt (mehne.biz) - All Rights Reserved	
Author: Kai Meinhardt
Author URI: http://mehne.biz
Version: 0.4.1 beta
*/

/*
 * Copyright (C) Kai Meinhardt (mehne.biz) - All Rights Reserved
 * Unauthorized copying of this file, via any medium is strictly prohibited
 * Proprietary and confidential
 * Written by Kai Meinhardt <info@mehne.biz>, 2016 - 2018
 */


/* kleiner reset */
*:focus,
.btn.active.focus, 
.btn.active:focus, 
.btn.focus, 
.btn:active.focus, 
.btn:active:focus, 
.btn:focus {
    outline: none;   
}

html, body {
    margin: 0;
    padding: 0;
    font-family: 'Roboto', Arial, sans-serif;
	font-weight: 400;
	color: #000;
    font-size: 10px;
    line-height: 1.333em;
	
	background-color: #fffff;
}

body {
    font-size: 18px;
}

@media(min-width:768px) {
	body {
		line-height: 1.667em;	
	}
}

.container-fluid {
	max-width: 1170px;
}

.flexbox {
    display: flex;
    flex-wrap: wrap;
}
.flexbox > div {
	display: inline-flex;
    flex: 0 0 auto;
}
.flexbox:before,
.flexbox:after {
	content: normal; /* safari fix */
}
/* für safari das falsche Runden nicht vergessen */


img { max-width: 100%; height: auto; }
img.img-responsive { width: 100%; height: auto; }

p { margin-bottom: 2rem; }


/* wordpress klassen */
.alignright {
	float: right;
	margin-left: 15px;
	margin-bottom: 15px;
}

.alignleft {
	float: left;
	margin-right: 15px;
	margin-bottom: 15px;
}

.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/* bootstrap heading-reset */
h1, h2, h3, h4, h5, h6 { margin: 0; font-weight: 400; }
@media(max-width:370px) {
	h1, h2, h3, h4, h5, h6 { word-break: break-all; }
}

h1, h1 a, 
h2, h2 a { 
    font-size: 3rem;
	line-height: 1.067em;
	text-transform: uppercase;
	font-weight: 500;
    margin-bottom: .3em;
}
@media (min-width: 768px) {
	h1, h1 a,
	h2, h2 a {
		font-size: 3.4rem;
		line-height: 1.111em;
	}
}

h2, h2 a { 
	color: #000;
	font-weight: 400;
}

h3, h3 a { 
    font-size: 2rem;
	line-height: 1.2em;
    font-weight: 500;
    color: #000; 
    margin-bottom: .7em;
	text-transform: uppercase;
}

h3.widgettitle {}

h4, h4 a { 
    font-size: 1.083em;
    font-weight: 500;
    color: #000;
    margin-bottom: .9em;
}

h5, h5 a { 
    font-size: 1.083em;
    font-weight: 500;
    color: #000;
    margin-bottom: .9em;
}

h6, h6 a { 
	font-size: 1.167em;
	font-weight: 900;
	color: #000; 
}

.whitebg {
	background-color: #fff;
}

p + h1, 
p + h2, 
p + h3, 
p + h4, 
p + ul, 
ul + h1,
ul + h2,
ul + h3,
ul + h4,
p + ol,
ol + h1,
ol + h2,
ol + h3,
ol + h4,
p + blockquote,
blockquote + h1,
blockquote + h2,
blockquote + h3,
blockquote + h4 {
	margin-top: 4rem;
}

/* Nur wenn Bootstrap-Slider verwendet wird: */

.page-template-z-landing-2017 .carousel {
	margin-right: -15px;
	margin-left: -15px;
}

.carousel-inner > .carousel-item > img,
.carousel-inner > .carousel-item > a > img {
    width: 100%;
    margin: auto;
}

.carousel-caption {
	width: 100%;
	right: 0;
    left: 0;
	bottom: 0;
    
    background-color: rgba(0,0,0,.8);
    color: #fff;
}

.carousel-control-prev,
.carousel-control-next {
	text-decoration: none!important;
}

#content-carousel .carousel-control-prev,
#content-carousel .carousel-control-next {
	color: #000!important;
}

/* Ende Bootstrap Slider */


/* Anpassungen individuell für diese Seite */
.page-header {
    border: 0;
	padding-bottom: 0;
    margin: 0px; /* BS reset */
	width: 100%; /* for position-fixed cases */
	z-index: 9999; /* for position-fixed cases */
	/* individuell */
	background-color: #fff;
}

.navbar {
	/* individuell */
	padding-top: 58px;
}

/* BS4 reset */
/*.navbar>.container, .navbar>.container-fluid {padding:0;}*/

/* mobiler Button */
.navbar-toggler {
	background-color: transparent;
	border: 0px;
	border-radius: 0px;
	margin: 0;
	padding: 0;
	
	/* individuell */
	float: right;
	margin: 11px 15px 11px 15px;
}

.navbar-toggler:focus, 
.navbar-toggler:hover {
    background-color: transparent;
}

.navbar-toggler .navbar-toggler-icon {
	background: url(images/burger.svg);
	background-size: contain;
    width: 24px;
	height: 21px;
}
/* Ende mobiler Button */


.navbar-brand {
	/* bootstrap resets */
    line-height: 100%;
	height: auto;
	/* individuell */
	width: 230px; /* FF benötigt original-breite hier */

}



.logo {
    display: block;
    padding: 0;
    margin: 0;
	padding: 0;
    background: url(images/logo.svg) no-repeat;
	background-size: contain;
	background-position: center left;
	text-indent: -9999px;
}

.logo img {
	/* since BS4 real size here */
	width: 230px;
	/*height: 124px;*/
}

.logo:after {
    border: 0 !important;   
}





	
/* Menü - Ebene 1 und Tiefer */
.nav>li a,
a:not([href]):not([tabindex]),
a:not([href]):not([tabindex]):focus, a:not([href]):not([tabindex]):hover {
	color: #474747;
}

.nav {
	margin: 0 15px;
}

/* Menü - Ebene 1 */
.nav>li {
	
}

@media(min-width:768px) {
	.nav>li {
		padding-left: 15px;
		padding-right: 15px;
	}
}

.nav>li>a {
	white-space: nowrap;
	text-transform: uppercase;
	font-weight: 400;
}

.nav>li.current-menu-item>a,
.nav>li>a:focus, 
.nav>li>a:hover,
.nav .open>a, .nav .open>a:focus, .nav .open>a:hover {
	/*reset*/
	background-color: inherit;
	border-color: inherit;
	text-decoration: none;
	/*individuell*/

}

.nav>li.current-menu-item>a  {
	font-weight: 500;
	color: #000;
}

.menu-item-has-children {
    cursor: pointer;
	position: relative; /*for position of menu level 3*/
	background: transparent; /*mobile*/
}

.dropdown-toggle::after {
	/* BS4 reset*/
	display: none;
}

/* Untermenüs */
.dropdown-menu {
	/*resets*/
	list-style: none;
    padding: 0;
	margin: 0;
	border: 0;
	border-radius: 0;
	font-size: 100%;
	
	/*mobile*/
	width: 100%;
	
	/* individuell */
	background: #fff;
	margin: 12px 0 0 0;
	
	/* shadows */
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
}
@media(min-width:768px) {
	.dropdown-menu {
		margin: 0 0 0 15px;
		
		-webkit-box-shadow: 0px 0px 20px 0px rgba(0,0,0,.4);
		-moz-box-shadow: 0px 0px 20px 0px rgba(0,0,0,.4);
		box-shadow: 0px 0px 20px 0px rgba(0,0,0,.4);
	}
}

.dropdown-menu li {
    padding: 8px 15px 7px 15px;
    border-bottom: 2px solid #f2f2f2;
}

.dropdown-menu > li > a {
	text-align: left; /* mobil */
	color: #333333;
}

.dropdown-menu > li.current-menu-item,
.dropdown-menu > li:hover {
	background-color: #DCE3E6;
}

.dropdown-menu > li.current-menu-item > a,
.dropdown-menu > li > a:hover {
	background-image: none; /*reset important*/
    color: #333333;
    text-decoration: none;
}


/* MAIN */
main  {
	/* fürs fixed menu */
	padding-top: 120px;
	
	/* Hintergrund */
	background-color: #f1f1f1;
}

main a, main a:active, main a:focus, main a:visited, main a:hover {
	color: #365770;
	text-decoration: underline;
}


main p a:not(.btn), main p a:not(.btn):active, main p a:not(.btn):focus, main p a:not(.btn):visited, main p a:not(.btn):hover {
	color: #262626;
	text-decoration: none;
	border-bottom: 4px double #000;
}

main ul:not(.slick-dots), main ol:not(.carousel-indicators) {
    list-style: none;  
    padding: 0;
    display: table;
}

main ul:not(.slick-dots) li {
    display: table-row;
}

main ul:not(.slick-dots) li:before {
	content: url(images/bulletpoint.svg);
    width: 11px;
    height: 11px;
    vertical-align: top;
    display: table-cell;
    text-align: left;
    padding-top: 2px;
    padding-right: 1.2rem;
    box-sizing: content-box;
}
main ul li:after {
	content: ' ';
	display: block; 
	margin-bottom: .5rem;
}

main ol:not(.carousel-indicators) { counter-reset: item; }
main ol:not(.carousel-indicators) li {display: table-row;}
main ol:not(.carousel-indicators) li:before {
    content: counter(item) ".";
    counter-increment: item;
    
    color: #014866;
	font-size: 1.8rem;
    font-weight: 500;
    
    display: table-cell;

    padding-right: 1.5rem;
}

main img {
    border-width: 0px;
    border-color: #fff;
    border-style: solid;
    max-width: 100%;
    height: auto;
}

@media (min-width: 768px) {
	.standardcontent {
		font-size: 2rem;
		line-height: 1.5em;
	}
}

figure {
    max-width: 100%;
}

main .wp-caption-text {
    background: #fff;
    color: rgb(70,70,70);
    padding-bottom: 24px;
    padding-left: 28px;
    padding-right: 27px;
    font-size: 0.833em;
}

.btn-primary {
    border: 0;
    background-color: #A3A21C!important;
    color: #fff;
    padding: 8px 15px;
    border-radius: 0px;
	white-space: normal;
	text-decoration: none;
	font-weight: 500;
	font-size: 1.5rem;
	text-transform: uppercase;
	
	-moz-box-shadow: 5px 5px 0 0 rgba(0,0,0,.11);
	-webkit-box-shadow: 5px 5px 0 0 rgba(0,0,0,.11);
	box-shadow: 5px 5px 0 0 rgba(0,0,0,.11);
}
.slick-dots li button {
	background-color: transparent!important;
	color: transparent;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}

button.slick-prev,
button.slick-next {
	background-color: #fff!important;
	color: transparent;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
	width: 39px;
    height: 70px;
	top: 28%;
	z-index:2;
	right:-19px;
}

.slick-prev:before, .slick-next:before {
	color:#A3A21C;
	font-size: 40px;
	
	font-family: 'FontAwesome';
}

.slick-next:before { content: '\f105'; }
.slick-prev { display: none!important; }



.btn-primary:hover {
	-moz-box-shadow: 0 0 0 0 rgba(0,0,0,.11);
	-webkit-box-shadow: 0 0 0 0 rgba(0,0,0,.11);
	box-shadow: 0 0 0 0 rgba(0,0,0,.11);
}


.btn-primary:active,
.btn-primary:focus,
.btn-primary:active:focus {	
	-moz-box-shadow: 0 0 0 0 rgba(0,0,0,.11);
	-webkit-box-shadow: 0 0 0 0 rgba(0,0,0,.11);
	box-shadow: 0 0 0 0 rgba(0,0,0,.11);
}

input[type=number],
input[type=date],
input[type=text] {
    display: block;
    width: 100%;
    padding: 7px 15px;
	margin-bottom: 8px;
}




blockquote {
	background: #1B3E5A;
	color: #fff;
	line-height: 24px;
	padding: 25px 25px 5px 25px;
	position: relative;
	margin-top: 50px;
}
@media(min-width:768px) { 
	blockquote { 
		font-size: 1.6rem;
		padding: 30px 30px 10px 30px;
	}
}

blockquote:before {
	display: block;
	content: 'GUT ZU WISSEN';
	color: #9e9e9e;
	font-size: 3rem;
	text-transform: uppercase;
	font-style: italic;
    position: absolute;
    top: -25px;
    left: 0;
}


.teasericon {
	width: auto;
	height: 35px;
	margin-bottom: 1em;
}

/* sidebar z-landing stuff */
.glow {
	-webkit-box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, .1); 
	-moz-box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, .1); 
	box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, .1);
}

.third-menu {
	background-color: #fff;
    border: solid 0px lightgrey;
    padding: 15px 15px 25px 15px;
    line-height: 1.7em;
	
	font-size: 12px;
	line-height: 1.7em;
}

.produkt {
	height: 100%; /* wegen flexbox optik */
	padding-top: 15px;
}

.produkt-details {
	padding: 15px 15px 25px 15px;
}

.produkt_uberschrift {
	color: #333;
}
.produkt_preis {
	font-weight: 600;
	color: #ff6600;
	line-height: 2em;
}

.produkt_preis_2 {
	font-weight: 600;
	color: #ff6600;
	line-height: 2em;
}





/* Kontakt-Overlay-Buttons */
.fixed-contact {
	position: fixed;
	top: 45%;
	right: 0;
}

.fixed-contact a {
	display: block;
    margin-bottom: 10px;
}




/* Veröffentlichungen */


.dropdown.filters-select {
	display: inline-block;
}

.filters-select .dropdown-menu {
	margin: 0;
	background: transparent;
    width: auto;
	min-width: 240px;
}

.filters-select .dropdown-toggle, .optionselect { display: block; }
.filters-select .dropdown-toggle:after, .optionselect:after { display: none!important; }

.filters-select .dropdown-toggle {
	outline: none;
	min-width: 180px;
	height: 40px;
	background-color: #fff!important;
	color: #303030;
	text-align: left;
	
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}

.filters-select .dropdown-toggle:hover {
	cursor: pointer;
	background-color: #A3A21C!important;
	color: #fff;
}

.optionselect { 
    width: 100%;
    text-align: left;
}

.optionselect:hover {
	cursor: pointer;
}

.cover-container {
	/*background-size: inherit;
    background-position: bottom left;
    background-repeat: no-repeat;*/
	height: 278px;
	position: relative;
}

.cover {
    -moz-box-shadow: 0px 0px 30px 0px rgba(0,0,0,.28);	
    -webkit-box-shadow: 0px 0px 30px 0px rgba(0,0,0,.28);	
    box-shadow: 0px 0px 30px 0px rgba(0,0,0,.28);
	
	position: absolute;
    bottom: 0;
    left: 0;
	
	max-height:100%;
}

.description {
    line-height: 1.3em;
    padding-top: 2rem;
}

/* 
 * Wordpress Gallery 
 */
.gallery {
	display: flex;
	flex-wrap: wrap;
}

.gallery:after {
	content: ' ';
	display: block;
	clear: both;
}

.gallery-item {
	float:left;
	margin-right: 3%;
	margin-bottom: 1rem;
}

.gallery-item img {
	width: 100%;
	height: auto;
}


/* the different columns */
.gallery-columns-2 .gallery-item {
	width: 47%;
}

.gallery-columns-2 .gallery-item:nth-child(2n) {
	margin-right: 0;
}

.gallery-columns-3 .gallery-item {
	width: 30.33%;
}

.gallery-columns-3 .gallery-item:nth-child(3n) {
	margin-right: 0;
}

.gallery-columns-4 .gallery-item {
	width: 22%;
}

.gallery-columns-4 .gallery-item:nth-child(4n) {
	margin-right: 0;
}

.gallery-columns-5 .gallery-item {
	width: 17%;
}

.gallery-columns-5 .gallery-item:nth-child(5n) {
	margin-right: 0;
}


aside {

}

aside li.widget {
	list-style: none;
}

/* 
 * PAGINATION 
 */
.pagination li:before {
	content: "";
	display: none;
}

/* standard-status */
.pagination li a,
.pagination>li.inactive>a:focus, .pagination>li.inactive>a:hover, .pagination>li.inactive>span:focus, .pagination>li.inactive>span:hover {
	color: #33c660;
	font-weight: 600;
	background-color: #f2f9f4;
	border-color: #f2f9f4;
	margin-right: 3px;
	
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	
	padding-left: 2.9rem;
}

.pagination li.inactive a,
.pagination>li.inactive>a:focus, .pagination>li.inactive>a:hover, .pagination>li.inactive>span:focus, .pagination>li.inactive>span:hover {
	cursor: default;
	color: #c6c6c6;
}

/* hover-status */
.pagination>li>a:focus, .pagination>li>a:hover, .pagination>li>span:focus, .pagination>li>span:hover {
	background-color: #4fd076;
	border-color: #4fd076;
	color: #fff;
	
	-webkit-box-shadow: 0 0 29px 5px rgba(0,255,77,.51);
	-moz-box-shadow: 0 0 29px 5px rgba(0,255,77,.51);
	box-shadow: 0 0 29px 5px rgba(0,255,77,.51);
}

/* active-status */
.pagination>.active>a, .pagination>.active>a:focus, .pagination>.active>a:hover, .pagination>.active>span, .pagination>.active>span:focus, .pagination>.active>span:hover {
	background-color: #4fd076;
	border-color: #4fd076;
	cursor: pointer;
}

/* inactive-status */
.pagination .inactive a {
	pointer-events: none;
}

/* erstes und letztes element (bootstrap reset) */
.pagination>li:first-child>a, .pagination>li:first-child>span,
.pagination>li:last-child>a, .pagination>li:last-child>span {
	
}

/* FOOTER */
.page-footer {
	background-position: center top;
    background-size: cover;
	color: #f1f11f;
}

.page-footer a {
	color: #515151;
    font-size: 1.4rem;
	text-decoration: underline;
}

.page-footer .nav  {
	display: inline-block;
}

.page-footer .nav li {
	float: left;
}

.page-footer .nav li a {
	font-size: 1.6rem;
	padding: 1em;
}


/* eigene Abstände */
.mb5{margin-bottom:5px;}.mb10{margin-bottom:10px;}.mb15{margin-bottom:15px;}.mb20{margin-bottom:20px;}.mb25{margin-bottom:25px;}.mb30{margin-bottom:30px;}.mb35{margin-bottom:35px;}.mb40{margin-bottom:40px;}.mb45{margin-bottom:45px;}.mb50{margin-bottom:50px;}.mb55{margin-bottom:55px;}.mb60{margin-bottom:60px;}.mb65{margin-bottom:65px;}.mb70{margin-bottom:70px;}.mb75{margin-bottom:75px;}.mb80{margin-bottom:80px;}.mb85{margin-bottom:85px;}.mb90{margin-bottom:90px;}.mb95{margin-bottom:95px;}.mb100{margin-bottom:100px;}.mb110{margin-bottom:110px;}.mb120{margin-bottom:120px;}.mb165{margin-bottom:165px;}

/* seit BS 4 gibt es von Bootstrap Klassen für margin: */
/* https://getbootstrap.com/docs/4.1/utilities/spacing/ */

/**/
.pt5{padding-top:5px;}.pt10{padding-top:10px;}.pt15{padding-top:15px;}.pt20{padding-top:20px;}.pt25{padding-top:25px;}.pt30{padding-top:30px;}.pt35{padding-top:35px;}.pt40{padding-top:40px;}.pt45{padding-top:45px;}.pt50{padding-top:50px;}.pt55{padding-top:55px;}.pt60{padding-top:60px;}.pt65{padding-top:65px;}.pt70{padding-top:70px;}




/*
 *
 * MOBILE ANPASSUNGEN
 *
 */

/*==========  Mobile First Method  ==========*/

/* Extra Small Devices, Phones (XS size) */ 
@media (min-width : 576px) {

}

/* Small Devices, Tablets (SM size) */
@media (min-width : 768px) {

}

/* Medium Devices, Desktops (MD size) */
@media (min-width : 992px) {  
	/* touch problem larger then 992 */
	ul.nav li:hover > ul.dropdown-menu {
		display: block;
	}	
	ul.nav li.open > ul.dropdown-menu {
		display: block!important;
	}	
	.dropdown-backdrop {display: none;}
	/* touch problem larger then 992 END */
}

