:root {	
    /*Bootstrap CSS Variablen*/    
    --bs-primary: #93C021;
    --bs-primary-rgb: 147, 192, 33;
    
    --bs-primary-darker: #4C6812;
    --bs-primary-darker-rgb: 76, 104, 18;
    
    --bs-primary-lighter: #CFE298;
    --bs-primary-lighter-rgb: 207, 226, 152;
	
    --bs-secondary: #F29102;
    --bs-secondary-rgb: 242, 145, 2;
    
    --bs-secondary-darker: #A66601;
    --bs-secondary-darker-rgb: 166, 102, 1;
    
    --bs-secondary-lighter: #FFD399;
    --bs-secondary-lighter-rgb: 255, 211, 153;

    --bs-link-color-rgb: var(--bs-primary-rgb);
    --bs-link-hover-color-rgb: var(--bs-primary-darker-rgb);
    --bs-link-opacity: 1;
	
	--bs-light: var(--bs-primary-lighter);
    --bs-light-rgb: var(--bs-primary-lighter-rgb);
	--bs-dark: var(--bs-primary-darker);
    --bs-dark-rgb: var(--bs-primary-darker-rgb);

}

.btn-primary {
	--bs-btn-color: #fff;
	--bs-btn-bg: var(--bs-primary-darker);
	--bs-btn-border-color: var(--bs-primary-darker);
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: var(--bs-primary);
	--bs-btn-hover-border-color: var(--bs-primary);
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: var(--bs-primary);
	--bs-btn-active-border-color: var(--bs-primary);
	--bs-btn-disabled-color: #fff;
	--bs-btn-disabled-bg: var(--bs-primary-lighter);
	--bs-btn-disabled-border-color: var(--bs-primary-lighter);
}

.btn-secondary {
	--bs-btn-color: #fff;
	--bs-btn-bg: var(--bs-secondary);
	--bs-btn-border-color: var(--bs-secondary);
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: var(--bs-secondary-darker);
	--bs-btn-hover-border-color: var(--bs-secondary-darker);
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: var(--bs-secondary-darker);
	--bs-btn-active-border-color: var(--bs-secondary-darker);
	--bs-btn-disabled-color: #fff;
	--bs-btn-disabled-bg: var(--bs-secondary-lighter);
	--bs-btn-disabled-border-color: var(--bs-secondary-lighter);
}

.btn.notactive {
	color: var(--bs-btn-color);
	background-color: var(--bs-btn-bg);
	border-color: var(--bs-btn-border-color);
}

.navbar {
  --bs-navbar-padding-x: 0;
  --bs-navbar-padding-y: 0.5rem;
  --bs-navbar-color: var(--bs-primary-darker);
  --bs-navbar-hover-color: var(--bs-primary-lighter);
  --bs-navbar-active-color: var(--bs-secondary);
}

.navbar-nav {
  --bs-nav-link-font-weight: bold;
}

.cookie-warnung {
	position: fixed;
	left: 0px;
	right: 0px;
	bottom: 0px;
	padding-top: 1rem;
	padding-bottom: 1rem;
	color: #FFF;
	background-color: rgba(0,0,0,.8);
	z-index: 50000;
}

.menu-ebene .menu-ebene li a {
	padding-left: 1.5em;
	font-size: .9em;
}

.menu-ebene .menu-ebene .menu-ebene li a {
	padding-left: 2em;
	font-size: .8em;
}


.video {
	width: 100%;
	height: auto;
}

.galerie-einblendung {
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	z-index: 2000;
}

.galerie-hg {
	position: fixed;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	background-color: rgba(0,0,0,0.8);
	overflow: visible;
	z-index: 2030;
}

#galerie {
	position: absolute;
	top: 40px;
	left: 40px;
	right: 40px;
	bottom: 40px;
	z-index: 2060;
}

#galerie .carousel-inner {
	height: 100%;
}

.galerie-motiv {
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
}

#galerie .carousel-control {
	background-image: none;
	width: 30px;
}

a.galerie-x {
	position: absolute;
	top: 10px;
	right: 40px;
	color: #fff;
	font-size: 2rem;
	z-index: 2090;
}

a.galerie-x:hover {
	color: #fff;
}

.form-check-input {
    margin-top: .4rem;
}

.fuss a {
    color: #fff;
	text-decoration: none;
}

.fuss a:hover, .fuss a:focus {
	text-decoration: underline;
}

.ankerbox {
	position: relative;
	height: 0px;
}

.anker {
	position:absolute;
	margin-top: -50px;
}

.mapbox {
	position: relative;
	background-image: url(../pic/map-platzhalter.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.ytbox {
	position: relative;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.ratio img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50%;
}

a.card {
    color: var(--bs-body-color);
    text-decoration: none;
}

a.card:hover, a.card:focus {
    background-color: var(--bs-light);
    text-decoration: none;
}

.card-button {
    margin-top: -2rem;
}

.block {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    background-attachment: fixed;
}

.dunkler {
    background-color: rgba(0,0,0,0.5);
    color: #fff;
}

.dunkler h1, .dunkler h2, .dunkler h3, .dunkler h4, .dunkler h5, .dunkler table {
    color: #fff;
}

.freiraum {
    text-align: center;
    padding-top: 12%;
    padding-bottom: 12%;
}

.mosaik-container {
	position: relative;
}

.mosaik-title {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 106, 167, .85);
    color: #fff;
    opacity: 0;
    transition: opacity 0.5s;
}

.card:hover .mosaik-title, .card:focus .mosaik-title {
    opacity: 1;
}

.carousel-caption {
    top: 30%;
    left: 5%;
    right: 5%;
    text-shadow: 3px 3px 6px var(--bs-primary-darker);
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: "Lobster", "serif";
    color: var(--bs-primary);
    margin-bottom: 1.5rem;
}

.display-1, .display-2, .display-3, .display-4, .display-5, .display-6 {
    font-family: "Lobster", "serif";
}

.navbar-brand {
    height: 50px;
	transition: height 0.5s ease;}

.logo {
    height: 115px;
    width: auto;
	transition: height 0.5s ease;
}

.navbar-brand.scrolled {
	height: 50px;
}

.logo.scrolled {
	height: 115px;
}

#bildsatz {
    padding-top: 68px;
}

.abstand {
    padding-top: 100px;
}

@media(min-width: 768px){
        
    .mosaik {
		position: absolute;
		top: 0;
		left: 0;
		width: 50%;
		transition: height 0.5s, top 1s, left 1s;
	}
}

@media(min-width: 992px){
    
    .navbar-brand {
        height: 100px;
    }

    .logo {
        height: 215px;
    }
    
    .abstand {
        padding-top: 200px;
    }

    .parallax {
        position: absolute;
        top: 0px;
        left: 0px;
        right: 0px;
        bottom: 0px;
        overflow-x: hidden;
        overflow-y: auto;
        perspective: 2px;
    }
    
    #bildsatz {
        padding-top: 118px;
        transform: translateZ(-1px) scale(1.5);
    }
    
    #bildsatz .carousel-inner {
        position: relative;
        height: 80%;
    }
    
    #bildsatz .carousel-inner.halb {
        height: 50%;
    }
    
    #bildsatz .carousel-inner .carousel-item img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: 50%;
    }

    .seite {
        position: absolute;
        top: 80%;
        left: 0px;
        right: 0px;
        background: #fff;
    }

    .seite.halb {
        top: 50%;
    }
	
	.mosaik {
		width: 33.333%;
	}
}


@media(min-width: 1400px){

    .navbar-brand {
        height: 120px;
    }

    .logo {
        height: 256px;
    }

    #bildsatz {
        padding-top: 138px;
    }
	
	.abstand {
		padding-top: 250px;
	}

    .mosaik {
		width: 25%;
	}
}


/*CMS Buttons*/
.cmslink {
	position: relative;
	height: 0px;
	display: block;
	overflow: visible;
	z-index: 50;
}

.cmsbtn {
	position: absolute;
	top: 0px;
	left: 0px;
}

#qcore-btn-show {
	display: none;
}

/*Anti Spam Honeypot*/
.mb-3.hp {
	height: 0;
	overflow: hidden;
}
