:root {
  --header_color: rgb(255, 255, 255);
  --hamburger_visibility: 1;
  --section_thema: #5b5c73;
  --section_thema_schrift: #5b5c73;
}


a { 
  text-decoration: none; 
}




html, body {
  margin:0;
  padding:0;
  display: inline-block;
  width: 100vw;
  transform: none;
  scroll-behavior: smooth;
  overflow-x: hidden;
  overflow-y: scroll;
}


* {
  box-sizing: border-box;
  margin: 0;
  padding:0;
  cursor: none;
}



img {border-style: none;}

.mobile-elemente {
  display: initial;
}

.desktop-elemente {
  visibility: hidden;
}






#menue_main {
  position:fixed;      
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex ;
  justify-content:  flex-end;
  justify-items: flex-end;

  font: normal Helvetica, sans-serif;   
  font-family: Helvetica, sans-serif;
  color:white;
  top: 0;
  left: 0;
  width: 100%;
  height: 10vw;
  overflow: hidden;
  z-index: 100;
  transition: all 0.3s ease-in-out;
  cursor: none;
}






  section {
    width: 100%;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 10%; 
    overflow: hidden;
    position: relative;
    flex-direction: column;
    flex-wrap: wrap;
    scroll-snap-align: start;
    transition: all 0.7s ease-in-out;
  }

  .section_text_oben {
    width: 80%;
    text-align: right;
    color: black;
    font-size: xx-large;
  } 

  .section_text_unten {
    width: 80%;
    text-align: left;
    color: black;
    font-size: large;
  } 
  
  
  #hintergrundfarbe {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-color: var(--section_thema);
    z-index: 2;
    transition: all 1s ease-in-out;
    visibility: visible;
  }
  
  
  #overlay_schrift {
    font-size: 15vw;
    font-family: basier_circlemedium; 
    text-align: center;
    position: fixed; 
    left: 50%; 
    bottom: 50vh;
    transform:translate(-50%,+50%);
    z-index: 80;
    color: var(--section_thema);
    transition: color 0.8s ease-in-out ; 
    visibility: hidden;
  }


  #overlay_schrift_mobil {
    font-size: 25vw;
    font-family: Arial, Helvetica, sans-serif; 
    font-weight: bold; 
    text-align: center;
    position: fixed; 
    left: 50%; 
    transform:translate(-50%,+50%);
    z-index: 81;
    color: var(--section_thema);
    transition: color 0.8s ease-in-out;
  }

 

  .first_arrow {
    position: absolute; 
    right: 50%; 
    bottom: 3%; 
    transform: translate(+50%,0) rotate(135deg); 
    height: 50px; 
    width: 50px; 
    z-index: 90; 
    opacity: 0.2;
    transition: all 0.5s;
  }




  .first_arrow_div {
  
    display: inherit;
    position: absolute;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 70%;
    opacity: 1;
    transition: all 1s;
    z-index: 70;
  }




  .element_nur_desktop {
    display: none;
  }



  .first_arrow_schrift {
    font-family: Helvetica, sans-serif; 
    color:rgb(255, 255, 255); 
    font-size: 8vw;  
    font-weight: bold;  
    position: absolute; 
    bottom:7.5%; 
    left:50%; 
    transform: translateX(-50%);
    opacity: 1;
  }


  
  
  
.section_grid_container_horizontal {
  display: grid;
  grid-template-columns: auto auto auto;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  align-content: center;
  align-items: center;
  justify-content: center;
  justify-items: center;
}

.section_grid_item_horizontal {
  padding: 0px;

}

.section_grid_container_vertikal {
  display: grid;
  grid-template-rows: auto auto auto;
  align-content: center;
  align-items: center;
  height: 100%;
  
}

.section_grid_item_vertikal {
  padding: 0px;

}





.move_down {
  -webkit-animation: move_down 5s linear infinite;
  -moz-animation: move_down 5s linear infinite;
  animation: move_down 5s linear infinite;
}


.auftauchen {
  -webkit-animation: auftauchen 3s linear;
  -moz-animation: auftauchen 3s linear;
  animation: auftauchen 3s linear;
}


@keyframes auftauchen {

  0%   {opacity: 0;}
  100% {opacity: 1;}
  }




@keyframes move_down {

  0%      {bottom: 4%;opacity: 0.8;}
  12.5%   {bottom: 2.5%;opacity: 0.8;}
  25%     {bottom: 4%;opacity: 0.8;}
  37.5%   {bottom: 2.5%;opacity: 0.8;}
  50%     {bottom: 4%;opacity: 0.8;}
  62.5%   {bottom: 2.5%;opacity: 0.8;}
  75%     {bottom: 4%;opacity: 0.8;}
  87.5%   {bottom: 2.5%;opacity: 0.8;}
  100%    {bottom: 4%;opacity: 0.8;}
  }
  
  
  
  
  
#intro_bild_img {
  background-image: url(start/intro_05_m_v3.jpg);
  background-size:cover; 
  background-position: center;
}





#pfeil_rechts {
  z-index:22;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 40vh;
  z-index: 60;
  display: inline;
  transition: all 0.8s ease-in-out;
  opacity: 0;
}

#pfeil_unten {
  z-index:23;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 40vh;
  z-index: 60;
  display: inline;
  transition: all 0.8s ease-in-out;
  opacity: 0;
}





#pfeil_re_polygon {
  fill: var(--section_thema);
  transition: all 0.8s ease-in-out;
}

#pfeil_un_polygon {
  transition: all 0.8s ease-in-out;
}





#changer {
  position: fixed; 
  top: 0px; 
  left: 0px; 
  width: 100%; 
  height: 100%; 
  z-index: 20; 
  display: grid; 
  grid-template-rows: auto auto;
}


#forward {
  cursor: none;
  width: 100%;
}

#back {
  cursor: none;
  width: 100%;
}


.bild_platzhalter_div {
  position: absolute; 
  top: 50%; 
  left: 50%; 
  width: 30%; 
  height: 30%; 
  transform: translate(-50%,-50%);
}

.section_textzumbild {
  visibility: hidden;
  display: none;

}


#textzumbild {
  font-family: nowaybold; 
  font-size: x-large;
  color: var(--section_thema_schrift);
  opacity: 0; 
  transition: all 0.8s ease-in-out ; 
  position: fixed; 
  top:38%; 
  left:2%; 
  right: 10%;
  transform: translateY(-50%); 
  text-align: left; 
  z-index: 30; 
  padding-left: 20px;
  margin-left: 20px;
  border-style: none none none dotted;
}





.serie_text_nummer {
  text-align: right; 
  font-size: calc(46px + 6 * ((100vw - 320px) / 680)); 
  font-family: nowaybold; 
  width: 100%;
  color: var(--section_thema_schrift);
  transition: all 0.6s ease-in-out ; 
}

.serie_text_jahr {
  text-align: left; 
  font-size: calc(46px + 6 * ((100vw - 320px) / 680)); 
  font-family: nowaybold; 
  width: 100%;
  color: var(--section_thema_schrift);
  transition: all 0.6s ease-in-out ; 
}

.section_grid {
  display:grid; 
  grid-template-areas: '1fr 1fr 1fr' '1fr 1fr 1fr' '1fr 1fr 1fr'  ; 
  z-index: 35; 
  justify-content: center;
}





#navigation {
  position: fixed;
  left: 0;
  bottom: 130%;
  height: 100%;
  right: 0;
  z-index: 90;
  background-color: var(--section_thema);
  transition: all .4s ease-in-out;
}

#navigation_serie {
  position: absolute; 
  right: 55%;
  bottom: 30%;
  width: 40%;
  height: 70%;
  display: flex;
  
  flex-direction: column;
  justify-content: flex-end;
  justify-items: flex-end;
  align-items: flex-end;

  padding-right: 15px;

}

#navigation_infos_buttons {
  position: absolute; 
  left: 45%;
  top: 70%;
  width: 60%;
  height: 30%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  justify-items: center;
  
  padding-left: 15px;
  padding-bottom: 5vh;


}


.navigation_serie_schrift {
  font-family: basier_circlemedium;
  color: var(--section_thema_schrift);
  font-size: calc(20px + (46 - 20) / 2200 * (100vw - 400px) );
}

.navigation_serie_schrift:hover {
  color:#f0583a;
}

.navigation_infos_schrift{
  font-family: nowaybold; 
  font-size: calc(20px + (36 - 20) / 2200 * (100vw - 400px) );
  color: var(--section_thema_schrift);
  opacity: 0.8;
}

.navigation_infos_schrift:hover {
  color:black;
}


.navigation_name{
  font-family: nowaybold; 
  font-size: calc(35px + 6 * ((100vw - 320px) / 680)); 
  color: var(--section_thema_schrift);
  opacity: 0.8;
  margin-top: 5vh;
  margin-bottom: 7vh;
}

.navigation_name:hover{
  color:white;
}






.ende_div {
  position: absolute; 
  bottom: 0; 
  left: 0; 
  width: 100%; 
  height: 30%; 
  margin:0; 
  display: flex; 
  flex-wrap: wrap;
  justify-content: space-evenly; 
  align-content: flex-end; 
  align-items: flex-end; 
  z-index: 40; 
  padding-bottom: 4%;
}



.ende_button{
  font-family: nowaybold; 
  font-size: calc(25px + (50 - 25) / 2200 * (100vw - 400px) );
  color: #ffddcc; 
  z-index: 40;
  transition: all 0.4s ease-in-out 
}

.ende_button:hover {
  color: white;
}


#ende_impr_text{
  position:absolute; 
  top: 45%; 
  left: 10%;
  right: 10%;
  transform: translate(0%,-50%); 
}



.impr_text {

  font-family: basier_circlemedium; 
  font-size: calc(11px + (19 - 11) / 2200 * (100vw - 400px) );
  color: var(--section_thema_schrift); 
  z-index: 40; 
  transition: all 0.8s ease-in-out; 
  opacity: 0;
}




.navigation_infos {
  position: fixed;
  top:0;
  right: 100%;
  width: 45%;
  height: 100%;
  z-index: 95;
  margin:0; 
  display: flex; 
  align-content: flex-end; 
  align-items: flex-end; 
  background-color: var(--section_thema);
  transition: all .4s ease-in-out;
}


#navigation_infos_impr_text{
  position:absolute; 
  top: 50%; 
  right: 10%;
  transform: translate(0,-50%); 
  font-family: basier_circlemedium; 
  font-size: calc(9px + (15 - 9) / 2200 * (100vw - 400px) );
  color: var(--section_thema_schrift); 
  z-index: 40; 
  transition: all 0.8s ease-in-out; 
  opacity: 0;
}



.home_namenschild{
  position: absolute; 
  top: 50%; 
  left: 50%; 
  transform: translate(-50%,-50%);  
  color: white; 
  z-index: 105;
  font-family: basier_circlemedium; 
  text-align: center;
  font-size: 12vw; 
}



/* --------------------------------------- Menü Drehelement/Hamburger ------------------------------------------------------------------------  */ 


.menue_mobile {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 10vw;
  height: 10vw;
  transition: all .5s ease-in-out;
  visibility: visible;
  background-color: var(--section_thema);
  transition: all 1s ease-in-out;
  }

.menue_mobile_hamburger {
  width: 6vw;
  height: 3px;
  background: var(--header_color);
  border-radius: 4vw;
  transition: all .1s ease-in-out;
  }

.menue_mobile_hamburger::before,
.menue_mobile_hamburger::after {
  content: '';
  position: absolute;
  width: 6vw;
  height: 3px;
  background: var(--header_color);
  border-radius: 4vw;
  transition: all .5s ease-in-out;
  
  }
.menue_mobile_hamburger::before {
    transform: translateY(-7px);

  }
.menue_mobile_hamburger::after {
  transform: translateY(+7px);
  }


  /* ------------ Bewegung -------------------------*/

  .menue_mobile.open .menue_mobile_hamburger {
    background: transparent;
    box-shadow: none;
  }
  .menue_mobile.open .menue_mobile_hamburger::before {
    transform: rotate(45deg);
    background: var(--header_color);    
  }
  .menue_mobile.open .menue_mobile_hamburger::after {
    transform: rotate(-45deg);
    background: var(--header_color); 
  }











/* --------------------------------------- Varianten : INTRO-BILD  -   mobil(Standard) , Tablet , Desktop ---------------------------------------------------- */





/* --------------------------------------- Varianten : mobil(Standard) , Tablet , Desktop ---------------------------------------------------- */


@media only screen and (orientation: landscape) {


  :root {
    --hamburger_visibility: 0;
  }

  #menue_main {
    height: 80px;
    justify-content: flex-start;
    padding-left: 4vw;
  }


  .menue_mobile {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 80px;
    height: 80px;
    transition: all .5s ease-in-out;
    visibility: visible;
    background-color: transparent;
    cursor: none;
  
  }
  
  .menue_mobile_hamburger {
    width: 40px;
    height: 3px;
    background: var(--header_color);
    border-radius: 4vw;
    transition: all .5s ease-in-out;
  }


  .menue_mobile_hamburger::before,
  .menue_mobile_hamburger::after {
    content: '';
    position: absolute;
    width: 40px;
    height: 3px;
    background: var(--header_color);
    border-radius: 4vw;
    transition: all .5s ease-in-out;
  }

  .menue_mobile_hamburger::before {
      transform: translateY(-7px);
  
  }

  .menue_mobile_hamburger::after {
    transform: translateY(+7px);
  }


  #overlay_schrift {
    font-size: 4vw;
    visibility: visible;
  }

  #overlay_schrift_mobil {
    visibility: hidden;
  }

  .element_nur_desktop {
    display: inline;
  }

  .first_arrow {
    position: absolute; 
    right: 50%; 
    bottom: 4vh; 
    transform: translate(+50%,0) rotate(135deg); 
    height: 5vh; 
    width: 5vh; 
    z-index: 90; 
    opacity: 0.8;
  }

  .first_arrow:hover {
    opacity: 1;
  }



  .first_arrow_div {
    display: inherit;
    position: absolute;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 70%;
    opacity: 0.9;
    transition: all 1s;
    z-index: 70;
  }

  .first_arrow_div:hover {
    opacity: 0.9;
  }



  #intro_bild_img {
    background-image: url(start/intro_05_v1.jpg);
    background-size:cover; 
    background-position: center;
  }

  .first_arrow_schrift {
    font-family: Helvetica, sans-serif; 
    color:rgb(255, 255, 255); 
    font-size: 2vw;  
    font-weight: bold;  
    position: absolute; 
    bottom:7.5%; 
    left:50%; 
    transform: translateX(-50%);
    opacity: 1;
  }


  .home_namenschild{
    font-size: 5vw; 
  }

  .impr_text {
    font-size: calc(10px + (17 - 10) / 2200 * (100vw - 400px) );
  }

  .ende_button{
    font-size: calc(38px + (66 - 38) / 2200 * (100vw - 400px) );
  }

  .ende_div {
    padding-bottom: 2%;
  }


  .mobile-elemente {
    display: none;
  }
  
  .desktop-elemente {
    visibility: visible;
  }
  
  #ende_impr_text{
    position:absolute; 
    top: 45%; 
    left: 60%;
    transform: translate(-50%,-50%); 
  }


  


  .nav_cursor {
    cursor: none;
  }

  .link_cursor {
    cursor: none;
  }




  .cursor_flaeche {
    position: fixed;
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 100%; 
    z-index: 140; 
    pointer-events: none;
  }


  .cursor {
    position: absolute;
    pointer-events: none;
    z-index: 120;
    color: white;
    mix-blend-mode: difference;
    transition: all 0.2s ease-out;
    transition-property: clip-path, -webkit-clip-path, height, width, background-color, border, color;
    

}



.cursor_runter {
  width: 50px;
  height: 50px;
  background-color: var(--section_thema_schrift);
  -webkit-clip-path: polygon(50% 100%, 0 40%, 100% 40%); 
  clip-path: polygon(50% 100%, 0 40%, 100% 40%);
  transform: translate(-50%, -75%);
}

.cursor_hoch {
  width: 40px;
  height: 40px;
  background-color: var(--section_thema_schrift);
  -webkit-clip-path: polygon(50% 0%, 0 60%, 100% 60%); 
  clip-path: polygon(50% 0%, 0 60%, 100% 60%);
  transform: translate(-50%, -25%);
}




.cursor_normal {
  width: 30px;
  height: 30px;
  background-color: var(--section_thema_schrift);
  -webkit-clip-path: polygon(4% 10%, 11% 3%, 90% 26%, 86% 40%, 23% 21%, 46% 82%, 31% 88%); 
  clip-path: polygon(4% 10%, 11% 3%, 90% 26%, 86% 40%, 23% 21%, 46% 82%, 31% 88%);
  transform: translate(0%, 0%);
  mix-blend-mode: normal;
}

.cursor_hover {
  width: 50px;
  height: 50px;
  background-color: var(--section_thema_schrift);
  -webkit-clip-path: circle(50% at 50% 50%); 
  clip-path: circle(50% at 50% 50%);
  transition: width 0s, height 0.3s, clip-path 0.6s, -webkit-clip-path 0.6s, translate 0.0s;
  transform: translate(-50%, -50%);
  mix-blend-mode: difference;
  opacity: 0.7;
}

/*
.cursor_zurueck {
  width: 50px;
  height: 50px;
  background-color: white;
  -webkit-clip-path: polygon(100% 0%, 75% 50%, 100% 100%, 25% 100%, 0% 50%, 25% 0%); 
  clip-path: polygon(100% 0%, 75% 50%, 100% 100%, 25% 100%, 0% 50%, 25% 0%);
  transition: width 0s, height 0.3s, clip-path 0.6s, -webkit-clip-path 0.6s, translate 0.0s;
  transform: translate(-50%, -50%);
}
*/

.cursor_zurueck {
  width: 60px;
  height: 60px;
  background-color: white;
  -webkit-clip-path: polygon(100% 0, 100% 100%, 40% 50%); 
  clip-path: polygon(100% 0, 100% 100%, 40% 50%);
  transition: width 0s, height 0.3s, clip-path 0.6s, -webkit-clip-path 0.6s, translate 0.0s;
  transform: translate(-75%, -50%);
}

























}

