@charset "utf-8";

/*
==================================================================
Style-Sheet Mitten(im)Walde - Walderleben in Berlin und Brandenburg
Copyrights:  Daniela und Tobias Brockmann - Mittenwalde OT Töpchin - Deutschland
Webdesign: Werbemanufaktur Potsdam - Dominik R. F. Wolff (Dipl.-Kfm./Uni)
Stand: Februar 2026
Inhalt:

1. Kalibrierung
2. Allgemeine Styles
3. Layout-Styles
4. Formular
==================================================================
*/

/*
==================================================================
1. Kalibrierung
==================================================================
*/

* {
	margin: 0;
  	padding: 0;
	border: 0;
}

html { height: 101%; } /* Kein Sprung bei Mozilla, wenn die Seite sehr kurz ist (Erscheinen und Verschwinden der Scrollbalken). */

main { display: block; } /* main - Element nicht im IE unterstüzt. */

/*
==================================================================
2. Allgemeine Styles
==================================================================
*/

/*
Text
*/

@font-face {
    font-family: 'futura-book';
    src: url('../fonts/FuturaStdBook.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'futura-medium';
    src: url('../fonts/FuturaStdMedium.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'futura-bold';
    src: url('../fonts/FuturaStdBold.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

body {
	font-family: 'futura-book', sans-serif;
    letter-spacing: 0.01em;
	color: #6e902f;
}

p {	
	font-size: 16px;
    line-height: 1.6;
	padding-bottom: 20px;
	text-align: justify;
}

@media only screen and (max-width : 900px) {
	p {	
		font-size: 14px;
		line-height: 1.8;
	}
}

.footerSpalte {	
	font-family: 'futura-bold', sans-serif;
	font-size: 16px;
	font-style: normal;
	line-height: 1.6;
}

.fett { font-family: 'futura-bold', sans-serif; }

.klein { font-size: 12px; }

.gross { font-size: 22px; }

.keinBottom { padding: 0px !important; }

/*
Überschriften
*/

h1, h2, h3, h4 {
	font-family: 'futura-bold', sans-serif;
	font-weight: normal;
	letter-spacing: 0.01em;
	line-height: 1.6;
    text-align: center;
    color: #a1bf35;
}

h1 {
	font-size: 50px;
	padding: 20px 0px 80px 0px;
    line-height: 1.0;
}
.zweiteZeile { 
    font-size: 30px;
    color: #dc9015;
}

h2 { 
	font-size: 40px;
	padding: 0px 0px 60px 0px;
}

h3 { 
	font-size: 18px;
	padding: 0px 0px 20px 0px;
    text-align: left;
}

h4 { 
	font-size: 24px;
    color: #dc9015;
    text-align: left;
	padding: 0px 0px 20px 0px;
}

@media only screen and (max-width : 1000px) {
	
	h1 { 
        font-size: 30px;
        padding-bottom: 40px;
    }
	.zweiteZeile { font-size: 18px; }
	
	h2 { 
        font-size: 28px;
        padding-bottom: 40px;
    }
	
	h3 { 
        font-size: 22px;
        text-align: center;
    }
	
	h4 { 
        font-size: 26px;
        text-align: center;
    }
}

@media only screen and (max-width : 700px) {
	
	h1 { font-size: 22px; }
	
	.zweiteZeile { font-size: 14px; }
	
	h2 { font-size: 20px; }
	
	h3 { font-size: 18px; }
	
	h4 { font-size: 20px; }
}

/*
Hyperlinks
*/

html { scroll-behavior: smooth; } /* sanftes Gleiten zum Anker */

a {
	outline: none;
	text-decoration: none;
}

a:link, a:visited {
	color: #dc9015;
	-webkit-transition: color 0.5s ease-in-out;
	transition: color 0.5s ease-in-out;
}

a:hover, a:focus { 
	color: #6e902f;
	border-bottom: 1px dotted;
}

main a:link,
main a:visited { border-bottom: 1px dotted; }

.nodot,
#scrollNavigation a,
#rezensionen a { border-bottom: none !important; }

.footerSpalte a:link,
.footerSpalte a:visited {
	color: #855e3a;
	text-decoration: none;
	border-bottom: none;
}

.footerSpalte a:hover,
.footerSpalte a:focus {
	color: #dc9015;
    text-decoration: none;
	border-bottom: none;
}

.dotted { border-bottom: 1px dotted; }

/*
==================================================================
3. Layout-Styles
==================================================================
*/

body { background-color: #FFFFFF; }

#hinweisOben {
    background-color: crimson;
    padding: 8px;
    text-align: center;
    color: white;
}

@media only screen and (max-width : 900px) {
	#hinweisOben {	
		font-size: 14px;
		line-height: 1.4;
	}
}

#bildcollageOben {
    width: 100%;
    height: auto;
}

/* 
Navigation 
*/

#obenNavigation { 
    padding: 40px 2% 0px 2%;
    text-align: center;
}

@media only screen and (max-width : 900px) { #obenNavigation { padding: 20px 2% 0px 2%; } }

#obenNavigation a:link, 
#obenNavigation a:visited { 
	font-family: 'futura-bold', sans-serif;
	font-size: 22px;   
	line-height: 1.8;
    color: #855e3a;
}

#obenNavigation a:hover,
#obenNavigation a:focus {
	color: #dc9015;
	text-decoration: none;
	border-bottom: none;
}

#obenNavigation a { padding-right: 24px; }

#tiktokOben, #instagramOben {
	vertical-align: middle;
	height: 22px;
	width: auto;
    margin-top: -6px;
	-webkit-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
	text-decoration: none;
}

#tiktokOben:hover, #instagramOben:hover { 
	transform: scale(0.8);
	text-decoration: none;
}

@media only screen and (max-width : 1200px) { 
	#obenNavigation a:link, 
	#obenNavigation a:visited { 
		font-size: 14px;
		line-height: 2.0;
	}
    
    #tiktokOben, #instagramOben { height: 14px; }
}

#scrollNavigation {
    position: fixed;
    top: 0;
    left: 0;
    padding: 0px;
    opacity: 0;
    pointer-events: none;
    z-index: 10;
    transition: opacity 0.5s ease;
}

#scrollNavigation.visible {
    opacity: 1;
    pointer-events: auto;
}

#scrollNavigation img {
    height: 80px;
    width: auto;
    transition: all 0.5s ease-in-out;
	text-decoration: none;
}

#scrollNavigation img:hover { 
	transform: scale(0.8);
	text-decoration: none;
}

/* 
Ende Navigation 
*/

section { padding: 40px 2%; }

@media only screen and (max-width : 900px) { 
    
	section { padding: 20px 4% 20px 4%; }
}

#headerBild {
	width: 100%;
	height: auto;
	margin-bottom: 60px;
    border-radius: 30px;
}

@media only screen and (max-width : 900px) { 
    #headerBild { 
        margin-bottom: 30px;
        border-radius: 15px;
    }
}

.linksInhalt {
	width: 47%;
	padding-right: 3%;
	float: left;
}

.rechtsInhalt {
	width: 47%;
	padding-left: 3%;
	float: left;
}

.linksInhalt img, 
.rechtsInhalt img {
	width: 100%;
	height: auto;
}

@media only screen and (max-width : 900px){ 
	.linksInhalt, .rechtsInhalt { 
		width: 100%;
		padding: 0;
	}
}

.zweiSpaltenInhalt {
	column-count: 2;
	column-gap: 4%;
}

@media only screen and (max-width : 900px) { .zweiSpaltenInhalt { column-count: 1; } }

.aufzaehlung {
    list-style-type: none;
    padding: 0px 0px 20px 0px;
}

.aufzaehlung  li {
    position: relative;
    padding-left: 30px;
    padding-bottom: 10px;
}

.aufzaehlung li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 30%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-left: 14px solid #dc9015;
}

@media only screen and (max-width : 800px) { .aufzaehlung li:last-of-type { padding-bottom: 0px; } }

@media only screen and (max-width : 700px) {
	.aufzaehlung  li {	
		font-size: 14px;
		line-height: 1.4;
	}
}

.bildcollageTrenner {
    width: 96%;
    height: auto;
    padding: 0px 2%;
}

@media only screen and (max-width : 900px) { 
    .bildcollageTrenner {
        width: 92%;
        padding: 0px 4%;
    }
}

#hinweisButtons { 
    width: 96%; 
    padding: 40px 2% 0px 2%;
}

.hinweisButton {
    width: 24%;
    padding: 15px 0px;
    margin: 0% 1% 40px 0%;
    border-radius: 10px;
    background-color: #6e902f;
	color: #FFFFFF !important;
    font-family: 'futura-bold', sans-serif;
    font-weight: normal;
    font-size: 18px;
    letter-spacing: 0.03em;
    line-height: 1.4;
	cursor: pointer;
	-webkit-transition: all 0.5s ease-in-out !important;
	transition: all 0.5s ease-in-out !important;
}

.hinweisButton:hover, 
.hinweisButton:focus { 
	background-color: #dc9015;
	color: #FFFFFF !important;
}

#hinweisKontakt {
    background-color: #dc9015;
	color: #FFFFFF !important;
}

#hinweisKontakt:hover, 
#hinweisKontakt:focus { 
	background-color: #6e902f;
	color: #FFFFFF !important;
}

@media only screen and (max-width : 900px) {
    
	#hinweisButtons { 
        width: 96%; 
        padding: 20px 2% 0% 2%;
    }

    .hinweisButton {
        width: 48%;
        margin: 0px 1% 2% 1%;
        font-size: 14px;
        letter-spacing: 0.05em;
    }
}

@media only screen and (max-width : 450px) {
    .hinweisButton {
        width: 96%;
        margin: 0px 2% 2% 2%;
    }
}

/* 
Startseite 
*/

.walderlebnisKasten,
.terminKasten {
	float: left;
	width: 400px;
    height: 400px;
    margin: 0px 25px 50px 25px;
    border-radius: 20px;
    text-align: justify;
}

.walderlebnisKasten {
    background-color: #a1bf35;
	color: #FFFFFF;
}

.terminKasten {
    background-color: #ffed00;
	color: #6e902f;
}

.walderlebnisKasten img,
.terminKasten img {
	width: 100%;
	height: auto;
    border-radius: 20px 20px 0px 0px;
}

.walderlebnisKastenFeld,
.terminKastenFeld { padding: 10px 20px 20px 20px; }

.walderlebnisKasten h3, 
.terminKasten h3 {
	font-size: 24px;
    text-align: left;
    padding: 0px 0px 10px 0px;
}

.walderlebnisKasten h3 { color: #ffed00; }

.terminKasten h3 { 
    font-size: 30px;
    color: #dc9015;
    padding: 0px;
} 
.terminKasten h3 span { 
    font-size: 20px;
    color: #a1bf35;
    padding-left: 20px;
}

.terminKasten h4 { 
    font-size: 20px;
    text-align: left;
    color: #6e902f;
    padding: 0px 0px 0px 0px;
}

.walderlebnisKasten a:link,
.walderlebnisKasten a:visited {
	color: #FFF;
	-webkit-transition: color 1s ease-in-out;
	transition: color 1s ease-in-out;
	border-bottom: none;
}

.walderlebnisKasten a:hover,
.walderlebnisKasten a:focus { color: #ffed00; }

.terminKastenFeld p a:link,
.terminKastenFeld p a:visited { border-bottom: 1px dotted; }

.terminKasten p a:hover,
.terminKasten p a:focus { color: #dc9015; }

.terminKasten a:link,
.terminKasten a:visited {
	color: #6e902f;
	-webkit-transition: color 1s ease-in-out;
	transition: color 1s ease-in-out;
	border-bottom: none;
}

.terminKasten a:hover,
.terminKasten a:focus { color: #a1bf35; }

.walderlebnisKasten button, 
.terminKasten button {
    width: 100%;
    padding: 10px 0px;
    margin-top: 10px;
    border-radius: 10px;
    font-family: 'futura-bold', sans-serif;
    font-size: 20px;
	cursor: pointer;
	-webkit-transition: all 0.5s ease-in-out !important;
	transition: all 0.5s ease-in-out !important;
}

.walderlebnisKasten button {
    background-color: #ffed00;
	color: #6e902f !important;
}

.terminKasten button {
    background-color: #dc9015;
	color: #FFFFFF !important;
}

.walderlebnisKasten button:hover, 
.walderlebnisKasten button:focus,
.terminKasten button:hover, 
.terminKasten button:focus { 
	background-color: #6e902f;
	color: #FFFFFF !important;
}

#walderlebnisse, 
#termine { 
     margin-left: auto;
     margin-right: auto;
}

@media only screen and (min-width : 4150px) { #walderlebnisse, #termine { width: 3600px; } }

@media only screen and (max-width : 3700px) { #walderlebnisse, #termine { width: 3150px; } }

@media only screen and (max-width : 3250px) { #walderlebnisse, #termine { width: 2700px; } }

@media only screen and (max-width : 2800px) { #walderlebnisse, #termine { width: 2250px; } } /* 5x450px */

@media only screen and (max-width : 2350px) { #walderlebnisse, #termine { width: 1800px; } }

@media only screen and (max-width : 1900px) { #walderlebnisse, #termine { width: 1350px; } }

@media only screen and (max-width : 1450px) { #walderlebnisse, #termine { width: 900px; } }

@media only screen and (max-width : 1000px) { #walderlebnisse, #termine { width: 450px; } }

@media only screen and (max-width : 1000px) { 
    
    #walderlebnisse, #termine {  width: 92%; }
    
    .walderlebnisKasten,
    .terminKasten {
        float: none;
        width: 100%;
        height: auto;
        margin: 0px 0px 30px 0px;
    }
}


.rezensionenKasten {
    width: 21%;
    padding: 0% 2% 2% 2%;
    float: left;
}

.rezensionenName {
    font-family: 'futura-bold', sans-serif;
    font-size: 22px;
    text-align: center;
}

.rezensionenKasten img {
    width: 50%;
    padding: 0px 25% 25px 25%;
}

#rezensionen button {
    width: 50%;
    padding: 15px 0px;
    margin: 20px 25% 40px 25%;
    border-radius: 15px;
    background-color: #6e902f;
	color: #FFFFFF !important;
    font-family: 'futura-bold', sans-serif;
    font-weight: normal;
    font-size: 18px;
    letter-spacing: 0.03em;
    line-height: 1.4;
	cursor: pointer;
	-webkit-transition: all 0.5s ease-in-out !important;
	transition: all 0.5s ease-in-out !important;
}

#rezensionen button:hover, 
#rezensionen button:focus { 
	background-color: #dc9015;
	color: #FFFFFF !important;
}

@media only screen and (max-width : 1200px) { 
    .rezensionenKasten { width: 46%; }
    
    .rezensionenName { font-size: 18px; }

    .rezensionenKasten img {
        width: 30%;
        padding: 0px 35% 20px 35%;
    }
}

@media only screen and (max-width : 800px) { 
    
    .rezensionenKasten {
        width: 100%;
        float: none;
        padding: 0% 0% 20px 0%;
    }
    
    .rezensionenKasten img {
        width: 20%;
        padding: 0px 40% 20px 40%;
    }
    
    #rezensionen button { width: 100%; margin: 20px 0% 20px 0%; } 
}

#bildTeam {
    float: left;
    width: 30%;
    height: auto;
    margin: 0px 20px 20px 0px;
    border-radius: 15px;
}

/* Ende Startseite */

/* 
Slider
*/

.slider {
    position: relative;
    overflow: hidden;
    width: 100%;
    max-width: 900px;
    border-radius: 20px;
    background: #FFFFFF;
    margin-bottom: 40px;
}

@media only screen and (max-width : 1000px) { .slider {margin-bottom: 30px; } }

.slider ul {
  position: relative;
  margin: 0;
  padding: 0;
  list-style: none;
}

.slider ul li {
  position: absolute;
  width: 100%;
  left: 100%;
  top: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #6e902f;
  color: #FFFFFF;
  font-size: 18px;
  transition: left 0.5s ease;
}

.slider ul li.active {
  left: 0;
}

.slider ul li img {
  width: 100%;
  height: auto;
  display: block;
}

.slider2 { background: #6e902f; }
.slider3 { background: #6e902f; }
.slider4 { background: #6e902f; }
.slider5 { background: #6e902f; }
.slider6 { background: #6e902f; }
.slider7 { background: #6e902f; }

.controls {
  opacity: 0;
  transition: opacity 0.3s ease;
}

.slider:hover .controls { opacity: 1; }

.control {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  padding: 14px 18px;
  background: rgba(57,85,36,0.7);
  color: #ffed00;
  font-size: 20px;
  cursor: pointer;
  user-select: none;
}

.control_prev {
  left: 0;
  border-radius: 0 6px 6px 0;
}

.control_next {
  right: 0;
  border-radius: 6px 0 0 6px;
}

/* Ende Slider */

/* 
Linkempfehlungen
*/

.linkRahmen {
	border: 1px solid rgba(57,85,36,0.5);
    border-radius: 15px;
    padding: 20px 20px 10px 20px;
	margin: 0px 0px 30px 0px;
	
}

.linkRahmen p { text-align: center; }

/* 
Ende Linkempfehlungen
*/

/* 
Footer 
*/

footer { 
    padding: 80px 2%;
    background-color: #ffed00;
    border-top: 2px solid #dc9015;
}

@media only screen and (max-width : 900px) {
    
	footer { padding: 40px 4%; }
}

.footerSpalte {
	width: 23.5%; /* 23,5% x 4 = 94 + 3 x 2% = 100% */
	float: left;
}

.footerSpalte { padding-right: 2%; }
.footerSpalte:nth-of-type(4) { padding-right: 0%; }

@media only screen and (max-width : 1200px) {
    .footerSpalte { 
        width: 48%;
        padding-right: 4%;
    }
    
    .footerSpalte:nth-of-type(2), 
    .footerSpalte:nth-of-type(4) { padding-right: 0%; }
    
    .footerSpalte:nth-of-type(1), 
    .footerSpalte:nth-of-type(2) { margin-bottom: 60px; }
}

@media only screen and (max-width : 600px) {
	.footerSpalte {
		float: none;
		width: 100%;
		padding: 0px 0px 20px 0px;
	}
    
    .footerSpalte:nth-of-type(1), 
    .footerSpalte:nth-of-type(2) { margin-bottom: 0px; }
}

.footerUeberschrift {
    font-size: 24px;
    color: #a37d4d;
    display: block;
    margin-bottom: 20px;
}

.footerSpalte a {
	display: block;
	line-height: 1.8;
}

.footerSpalte address { font-style: normal; }

@media only screen and (max-width : 800px) {
	.footerSpalte,
	.footerSpalte a,
    .footerSpalte address {	
		font-size: 12px;
		line-height: 1.6;
	}
}

#instagramUnten { margin: 0px 10px 0px 0px; }

#instagramUnten, #tiktokUnten {
	-webkit-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
	text-decoration: none;
}

#instagramUnten:hover, #tiktokUnten:hover
 { transform: scale(0.8); }

.werbemanufakturLink { display: inline !important; }

#bildcollageUnten {
    width: 100%;
    height: auto;
    background-color: #ffed00;
}

.clear {
	clear: both;
	width: 0px;
	height: 0px;
}

/*
==================================================================
4. Formular
==================================================================
*/

/* 
Kontaktseite
*/

#kontaktLinks {
	width: 37%;
	padding-right: 3%;
	float: left;
}

#kontaktLinks p { text-align: center; }

#kontaktRechts {
	width: 57%;
	padding-left: 3%;
	float: left;
}

@media only screen and (max-width : 800px) {
    
	#kontaktLinks, #kontaktRechts { 
        width: 100%;
        padding: 0;
    }
    
    #kontaktLinks { 
        padding-bottom: 20px;
        text-align: center;
        border-bottom: 1px solid #e7b040;
    }
    
    #kontaktRechts { padding-top: 40px; }
}

#logo {
    width: 50%;
    height: auto;
    margin: 10px 25% 30px 25%;
}

/* Ende Kontaktseite */

/* Google Map */

#anfahrtKarte { padding-bottom: 40px; }

@media only screen and (max-width : 900px) { 
    
	#anfahrtKarte { padding-bottom: 30px; }
}

#zustimmungGoogleMap {
	width: 100%; 
	height: 600px;
}

#zustimmungGoogleMap img { 
	object-fit: cover; 
	width: 100%; 
	height: 100%;
     border-radius: 20px;
	cursor: pointer;
}

#ladenGoogleMap { 
	opacity: 0; 
	transition: opacity 3s;
}

#ladenGoogleMap.fadeJavascript { opacity: 1; }

/* Ende Google Map */

label {
	display: block;
	font-family: 'futura-book', sans-serif;
	font-style: normal;
    letter-spacing: 0.01em;
	font-size: 16px;
	text-align: left;
	line-height: 1.6;
}

input {
	width: 98%;
	height: 30px;
    border-radius: 10px;
	margin: 5px 0 25px 0;
	background-color: #FFFFFF;
	border: 1px solid #a1bf35;
	font-family: 'futura-book', sans-serif;
	font-style: normal;
    letter-spacing: 0.01em;
	font-size: 16px;
	line-height: 1.6;
	color:#6e902f;
	padding: 5px;
}

textarea {
	height: 200px;
	width: 98%;
    border-radius: 10px;
	padding: 5px;
	margin: 5px auto 20px auto;
	background-color: #FFFFFF;
	border: 1px solid #a1bf35;
	font-family: 'futura-book', sans-serif;
	font-style: normal;
	font-size: 18px;
	line-height: 1.6;
	color: #6e902f;
}

input:focus, 
textarea:focus { border: 1px solid #dc9015; }

#testfeld { 
	visibility: hidden; 
	display: none; 
}

#sendenButton {	
	width: 100%;
	height: 50px;
    border-radius: 10px;
	cursor: pointer;
	background-color: #dc9015;
	margin: 0px;
	font-family: 'futura-book', sans-serif;
	font-style: normal;
	font-size: 16px;
	color: #FFF;
	-webkit-transition: all 1s ease-in-out;
	transition: all 1s ease-in-out;
}

#sendenButton:hover, 
#sendenButton:active { 
	background-color: #a1bf35;
	color: #FFFFFF;
}

@media only screen and (max-width : 900px) {
    
	label {
        font-size: 14px;
        text-align: center;
    }
}

/*
==================================================================
Ende Stylesheet
==================================================================
*/