/*
||----------------------css-style-----------------------||
||                                                      ||
||               css style: Standarts                   ||
||                                                      ||
||----------------------css-style-----------------------||
*/

/*------------------Schritfarten local einbinden------------------*/
@font-face {
  font-display: swap;
  font-family: "Birthstone-Regular";
  font-style: normal;
  font-weight: 400;
  src: url("/schriftarten/Birthstone/Birthstone-Regular.ttf") format("woff2");
}

@font-face {
  font-display: swap;
  font-family: "Roboto";
  font-style: normal;
  font-weight: 700;
  src: url("/roboto-v48-latin/roboto-v48-latin-700.woff2") format("woff2");
}

/*------------------classes------------------*/

body {
  font-family: "Roboto", sans-serif;
  margin: 0;
  color: #ffffff;
}

h2 {
  font-size: 1.4em;
  font-family: "Roboto", sans-serif;
  text-decoration: underline;
}

p {
  font-size: 1em;
  font-family: "Roboto", sans-serif;
}

.top_green {
  position: absolute;
  /* background-color: #2c4c40;*/
  /*background-color: #29675b;*/
  /*background-color: #7f8cab;*/
  /*background-color: #485727;*/
  /*background-color: #6b7031;*/
  background-color: #485727;
  width: 100%;
  height: 200px;
  top: 0px;
  z-index: -2;
}

/*------------------------Logo*/
.logo-image {
  position: absolute;
  left: 0px;
  top: -16px;
  height: 200px;
  width: 200px;
  z-index: 4;
}

/*-------------------------other*/
.pointer-on {
  pointer-events: all;
}

/*------------------------links*/
.links {
  pointer-events: all;
  position: absolute;
  left: 64px;
}

hr {
  border-top: 2px solid #ffffff;
  width: 100%;
  margin: 0px;
}

/*---------------------- top menü */

.top-menu {
  position: relative;
  top: 180px;
  left: 0;
  width: 100%;
  background: #45522d; /*#5b6f31 #2c4324*/ /*#0f9ea5 gut für MHL^Z*/
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.5s ease;
  color: white;
  z-index: 30;
}

.top-menu a {
  display: block;
  font-size: 2.5em;
  padding: 10px;
  text-decoration: none;
  color: white;
  width: 100%;
  font-family: "Birthstone-Regular", sans-serif;
}

.top-menu a:hover {
  background-color: #70883d;
  color: #dfbf7e;
}

.top-menu.active {
  max-height: 700px;
}

/*---------------------- menü button */
.menu-btn {
  position: absolute;
  right: 32px;
  top: 50px;
  width: 80px;
  height: 80px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  cursor: pointer;
  z-index: 1001;
}

.menu-btn span {
  height: 20px;
  background: #ffffff;
  border-radius: 10px;
  display: block;
}

button {
  pointer-events: all;
  position: absolute;
  right: 0px;
  top: -10px;
}

/* --------------------- info text */
.info_text {
  color: black;
  background: white;
  padding: 20px;
  position: relative;
}

.info_text img {
  width: 80%;
  border-radius: 20px;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.5);
}

.info_text h1 {
  margin-top: -30px;
  font-family: "Birthstone-Regular", sans-serif;
  font-size: 4em;
  color: #144d01;
}

.info_text h2 {
  font-family: "Birthstone-Regular", sans-serif;
  font-size: 2em;
  color: #144d01;
}

.info_text h3 {
  margin-top: -30px;
  font-family: "Birthstone-Regular", sans-serif;
  font-size: 1.5em;
  color: #144d01;
}

.info_text h4 {
  margin-top: 10px;
  margin-bottom: 10px;
  font-family: "Birthstone-Regular", sans-serif;
  font-size: 2.1em;
  color: #144d01;
}

.info_text p {
  margin-top: -10px;
}

.content {
  position: relative;
  top: 240px;
}

/*---------------------- wave */
.wave {
  margin-top: -20px;
  width: 100%;
  display: block;
  position: relative;
}

/*---------------------- header */
/* header images*/
.header img {
  margin-top: -70px;
  display: block;
  width: 100%;
  height: auto;
}

.header {
  position: relative;
}

.header_img.fade {
  animation: crossfade 0.2s ease-in-out; /*Animations Zeit*/
}

@keyframes crossfade {
  /*Animation Start bis Ende*/
  0% {
    opacity: 0.8;
    transform: scale(1.02);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

/* Überschrift*/
.header h1 {
  position: absolute;
  top: 32px;
  left: 10%;
  font-family: "Birthstone-Regular", sans-serif;
  font-size: 9vw;
  color: #e2ba6c;
  text-shadow: 0 0 40px rgba(0, 0, 0, 0.762);
  text-decoration: underline;
  margin-top: -32px;
}

/* Punkte-Container */
.dots {
  position: absolute;
  bottom: 32px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 8px;
  z-index: 10;
}

/* Jeder Punkt */
.dot {
  width: 12px;
  height: 12px;
  background-color: #cfcfcf;
  border-radius: 50%;
  display: inline-block;
  cursor: pointer;
  opacity: 0.5;
  transition: opacity 0.3s ease, background-color 0.3s ease;
}

/*Punkt aktiv*/
.dot.active {
  opacity: 1;
  background-color: rgba(255, 255, 255, 0.7); /* aktiver Punkt hebt sich ab */
}

/*---------------------- other */

.unsichtbar {
  border-top: 2px solid #485727;
  width: 0px;
  margin-top: 6px;
}
/*------------------responsive Bedingungen------------------*/
@media (min-width: 900px) {
  .logo-image {
    position: absolute;
    right: 16px;
    top: 16px;
    height: 130px;
    width: 130px;
  }

  .wave-unten-div {
    position: absolute;
    display: flex;
    top: 720px;
    height: 1000px;
  }

  .header-image {
    top: 200px;
    height: 800px;
  }

  .header-image-r {
    height: auto;
  }

  .header-image-r-2 {
    display: none;
  }

  .über-uns-h1 {
    top: 800px;
    left: 40%;
    font-size: 3em;
  }

  a {
    margin-right: 20px;
    font-size: 2em;
  }
}
