body {
    height: 100%;
    width: 100%;
    margin: 0;
    font-family: arial;
    color: #efeae9;
    text-shadow: 0px 0px 2px black;
    font-size: 2vw;
}

button {
color: white;
text-shadow: 0px 0px 2px blue;
}


a:link, a:visited { 
    color: inherit;
    text-decoration: none;
}

ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    margin-bottom: 1.5rem;
}


.menu a:link, .menu a:visited {
    text-decoration: none;
    color: inherit;
    text-shadow: 0px 0px 2px black;
}
 
li a {
    text-shadow: 0px 0px 2px blue;
}

li p {
    margin: 0;
    padding: 0;
}

h4 {
    margin: 0;
    padding: 0;
}

* {box-sizing:border-box}

/* Hide scrollbar for Chrome, Safari and Opera */
body::-webkit-scrollbar {
    display: none;
  }
  
  /* Hide scrollbar for IE, Edge add Firefox */
  body {
    -ms-overflow-style: none;
    scrollbar-width: none; /* Firefox */
  }


  .text-container::-webkit-scrollbar {
    display: none;
  }
  
  /* Hide scrollbar for IE, Edge add Firefox */
.text-container {
    -ms-overflow-style: none;
    scrollbar-width: none; /* Firefox */
  }


  .logo {
    position: fixed;
    z-index: 800;
    top: 19px;
    right: 20px;
    transition: all 0.3s ease;
}

.logo:hover {
    cursor: pointer;
    text-shadow: 0px 0px 2px blue;
}

a.link{
    text-shadow: 0px 0px 2px blue;
}



#fullpage img {
    z-index: 10;
    max-height: 100vh;
    display:block;
    max-width: 100vw;
    top: 0;
}

img { 
    margin: auto;
}

.menu {
    position: fixed;
    z-index: 5;
    cursor: pointer;
    bottom: 15px;
    left: 20px;
    background-color: none;
    transition: all 0.3s ease;
}


.menu ul  {
    margin: 0;
    position: fixed;
    z-index: 5;
    background-color: none;
    bottom: 15px;
    left: 20px;
    transition: all 0.3s ease;
}

.menu li {
    padding-top: 5px;
    transition: all 0.3s ease;
}

.menu li a:hover {
text-shadow: 0px 0px 2px blue;
}

.menu-content {
    display: none;
}

.menu:hover .menu-content {
    display: block;
}

.menu:hover .menu-label {
    display: none;
}

.about {
  transition: opacity .3s ease;
}

.menu:hover ~ #fullpage .about {
  opacity: .43
}
.arrL {
    position: absolute;
    z-index: 130;
    top: 50%;
    transform: translateY(-50%);
    left: 20px;
    font-size: 2.8vw;
    transition: all;
    pointer-events: none;
}

.arrR {
    position: absolute;
    z-index: 130;
    top: 50%;
    transform: translateY(-50%);
    right: 20px;
    font-size: 2.8vw;
    transition: all 0.3s ease;
    pointer-events: none;
}

.arrL-swiper {
    position: absolute;
    z-index: 1030;
    top: 50%;
    transform: translateY(-50%);
    left: 20px;
    font-size: 2.8vw;
    transition: all;
    background-color: red;
    cursor: pointer;
    height: 80px;
}

.arrR-swiper {
    position: absolute;
    z-index: 130;
    top: 50%;
    transform: translateY(-50%);
    right: 20px;
    font-size: 2.8vw;
    transition: all 0.3s ease;
}
.swiper {
position: relative;
}

.swiper-slide {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center; 
  align-items: center; 
  overflow: hidden;
  border-radius: 1rem;
}

.swiper-btn { position: absolute; top: 50%; transform: translateY(-50%); pointer-events: auto; background: transparent; border: 0; font: inherit; line-height: 1; padding: .25rem .5rem; z-index: 1000; }
.swiper-btn-prev { left: .5rem; }
.swiper-btn-next { right: .5rem; }
.swiper-btn:hover { text-shadow: 0 0 4px red; cursor: pointer; }



.fp-next:hover {
    cursor: pointer;
}

.fp-prev:hover {
    cursor: pointer;
}

.t, .y {
    text-shadow: 0px 0px 2px blue;
}


.texts-reader { position: relative; scroll-behavior: smooth; }
.text-container {
  position: relative;
  margin: 0 8rem 3rem 8rem;
  color: black;
  font-size: 1.5vw;
  overflow: visible;
  touch-action: pan-y;
  text-shadow: none;
    scroll-margin-top: 2rem; /* space above when scrolling or linked via hash */
}

.text-container img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 1rem auto;
}

.texts-header {
  font-size: 3vw;
  margin: 20px 0;
  text-shadow: 0 0 2px blue;
  color: white;
}
.texts-nav {
  position: fixed;
  z-index: 1000;
  top: 50%;
  width: 100%;
  transform: translateY(-50%);
  pointer-events: none; /* so only buttons themselves catch clicks */
}

.texts-prev,
.texts-next {
  position: absolute;
  background: transparent;
  border: 0;
  font-size: 2rem;
  line-height: 1;
  color: white;
  text-shadow: 0 0 2px blue;
  padding: .25rem .5rem;
  cursor: pointer;
  user-select: none;
  pointer-events: auto;
}

.texts-prev { left: 1rem; }   /* ← left side */
.texts-next { right: 1rem; }  /* → right side */

.texts-prev:disabled,
.texts-next:disabled {
  opacity: .35;
  cursor: default;
}

@media (max-width: 480px) {
  .texts-prev { left: .5rem; font-size: 6vw; }
  .texts-next { right: .5rem; font-size: 6vw; }
}



.menu-texts {
    position: fixed;
    z-index: 5;
    cursor: pointer;
    top: 20px;
    right: 20px;
    background-color: none;
}


.bild-info {
    position: absolute;
    display: none;
    top: 15px;
    margin-left: 20px;
    z-index: 500;
    word-break: normal;
    white-space: wrap;
    width: 40vw;
    text-align: left;
    background: none;
}






.fp-tableCell:hover .bild-info {
    -webkit-animation: fade-in ease-in-out 1s both;
  -moz-animation: fade-in ease-in-out 1s both;
  -ms-animation: fade-in ease-in-out 1s both;
  -o-animation: fade-in ease-in-out 1s both;
  animation: fade-in ease-in-out 1s both;
display: block;
    -webkit-backface-visibility: hidden;
}
    
    

.about {
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  padding: 20px;
  overflow: auto;

  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;

  gap: 2rem;
  justify-content: flex-start; 
  
  text-align: left;
  font-size: 1.2rem;

}

.about-phone-show {
  z-index: 120;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  padding: 20px;
  overflow: auto;
  display: none;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  text-align: left;
}

.about-col {
  flex: 1 1 45%; 
  margin-bottom: 2rem;
  min-width: 250px; 
  opacity: 0;
  animation: FadeIn-about 4s forwards;

  
}

@keyframes FadeIn-about {
  0% {
    opacity: 0;
  }
  80% {
    opacity: 0;
  }
  100% {
    opacity: 1;   
}
}




.trans{
    opacity: 0.2;
} 

/* Add animation (fade in the popup) */
@-webkit-keyframes fadeIn {
    from {opacity: 0;} 
    to {opacity: 1;}
}

@keyframes fadeIn {
    from {opacity: 0;}
    to {opacity:1 ;}
}

.fade-in {
  -webkit-animation: fade-in 0.7s ease;
  -moz-animation: fade-in ease-in-out 0.7s both;
  -ms-animation: fade-in ease-in-out 0.7s both;
  -o-animation: fade-in ease-in-out 0.7s both;
  animation: fade-in 0.7s ease;
  visibility: visible;
  -webkit-backface-visibility: hidden;
}

@-webkit-keyframes fade-in{0%{opacity:0;} 100%{opacity:1;}}
@-moz-keyframes fade-in{0%{opacity:0} 100%{opacity:1}}
@-o-keyframes fade-in{0%{opacity:0} 100%{opacity:1}}
@keyframes fade-in{0%{opacity:0} 100%{opacity:1}}



@media screen and (max-width: 480px) {

    .arrL {
        font-size: 6vw;
        left: 10px;
    }
    .arrR {
        font-size: 6vw;
        right: 10px;
    }

    .arrL-swiper {
        font-size: 6vw;
        left: 10px;
    }
    .arrR-swiper {
        font-size: 6vw;
        right: 10px;
    }

.text-container {
  position: relative;
  margin: 0 2rem 3rem 1rem;
  color: black;
  font-size: 3vw;
  overflow: visible;
  touch-action: pan-y;
  text-shadow: none;
    scroll-margin-top: 2rem; /* space above when scrolling or linked via hash */
}

.texts-nav {
  display: none;
}


    .logo {
display: none;
    }

    .texts-header {
        font-size: 6vw;
    }
    .bild-info {
        width: 80vw;
        margin-left: 10px;
        display: block;
    }

.menu.is-open .menu-content { display: block; }
.menu.is-open .menu-label { display: none; }

body {
    font-size: 20px;
}

.about {
  z-index: 120;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  padding: 20px;
  overflow: scroll;
  display: none;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  text-align: left;
}

.about-col {
  animation: FadeIn-about 1s forwards;
}


}







.menu-item-about--phone { display: none; }

@media (max-width: 480px) {
  .menu-item-about--numeric { display: none; }
  .menu-item-about--phone { display: list-item; }
}

.about-phone-show {
  z-index: 120;
  position: fixed;
  top: 0; left: 0;
  width: 100vw; height: 100vh;
  padding: 20px 20px 60px 20px;
  overflow: auto;
  display: none;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  text-align: left;
  background-color: white;
}

.about-phone-show.is-visible { display: flex; }

.about-phone-close {
  position: fixed;
  top: 12px;
  right: 16px;
  font-size: 28px;
  line-height: 1;
  background: transparent;
  border: 0;
  color: white;
  z-index: 130;
}

.body-lock { overflow: hidden; height: 100vh; }
