*, *::after, *::before {
  margin: 0;
  padding: 0;
  border: none;
  outline: none;
  box-sizing: border-box;
  overflow: hidden;
}

body {
    margin: 0;
}

@font-face {
  font-family: 'icomoon';
  src:  url('fonts/icomoon.eot?5sgeey');
  src:  url('fonts/icomoon.eot?5sgeey#iefix') format('embedded-opentype'),
    url('fonts/icomoon.ttf?5sgeey') format('truetype'),
    url('fonts/icomoon.woff?5sgeey') format('woff'),
    url('fonts/icomoon.svg?5sgeey#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 2;
font-size:2em;
pointer:cursor;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-tiktok:before {
  content: "\e900";
}
.icon-home:before {
  content: "\e902";
}
.icon-camera:before {
  content: "\e90f";
}
.icon-envelop:before {
  content: "\e945";
}
.icon-pushpin:before {
  content: "\e946";
}
.icon-location:before {
  content: "\e947";
}
.icon-mobile:before {
  content: "\e958";
}
.icon-earth:before {
  content: "\e9ca";
}
.icon-facebook:before {
  content: "\ea90";
}
.icon-instagram:before {
  content: "\ea92";
}

.center {
 position:static;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
html { 
  background: url(background.png) no-repeat center center fixed; 
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}


body {
  margin: 0 auto;
  padding: 4rem 1rem;
 }

header {
  position: fixed;
  top: 0;
  left: 0;
  right:0;
  text-align: right;
  width: 100%;
  height:5em;
}

main { position: fixed;
  top: 5em;
  left: 0;
  right:0;
  bottom:11em;
  width: 100%;

}

footer { 
position: fixed;
    bottom:0;
    left:0;
    right:0;
    height:11em;
}

.footer {
          margin-top: auto;
          width:100%;
          height: 5em;
}
.footer span.right { 
         float:right;
         padding:20px; 
        }
.footer span.left { 
         float:left;
         padding:20px; 
        }

h1, h2, h3 { padding-bottom:1em; color:#0d9fcd; }
h4, h5, h6 { font-size: 1em; display: inline; color:#0d9fcd; c_olor:#bae498; padding-bottom:1em;}
h3 {
  scroll-margin-top: 5rem;
}

#header_text { 
 display:none;
padding-left: 1em; 
 float:left;
 font-size:3em;
 font-weight:bold;
 color: #0d9fcd;
}

.normal { 
  font-size: 1em; 
  line-height:1; 
} 

p { padding-bottom:1em;
    margin-bottom:1em;
} 

.spalte { float:left;
          text-align:center;
          padding:1em;
          width:33%;
          }

ol {
    counter-reset: table-of-content;
    list-style-type: none;
}


ol>li, ol>li::after, ol>li::before { 
 
  margin-left: 1em;
  pa_dding: 1em;
  overflow: initial;
  dis_play: list-item;
  li_st-style-type: decimal;
}
ol>li::before { 
counter-increment: table-of-content;
    content: counters(table-of-content,".", decimal) " ";
    color:#0d9fcd;
}

ol>li>p {  margin-left: 2em;
padding-bottom: 0;
     margin-bottom: 0; }

ul>li, ul>li::after, ul>li::before { 
  margin-left: 1em;
  overflow: initial;
  display: list-item;
  list-style-type: circle;
 }

img { cursor: pointer; }


.circle {display: inline-block;
  cursor: pointer;
  backdrop-filter: saturate(180%) blur(25px);
  border: 0.1875em solid rgba(0,0,0,0.5);
  border-radius: 50%;
  height: 4em;
  width: 4em;
}
.active { color:#0d9fcd!important;}

a {
  outline-color: transparent;
  text-align: center;
}
a:link, a:visited, a:focus, a:hover, a:active {
  text-decoration: none;
  color: #EFEFEF;
}

.container {
  display: flex;
  height: 100%;
  width: 100%;
}

#impressum_text { display:none; }

.scrollbox {
	position:fixed;
	top: 8rem ;
 left: 0;
        transform: translate(calc(50vw - 50%));
background: rgba(0,0,0,0.8);
        back_drop-filter: saturate(180%) blur(25px);
    border-radius: 8px;
            padding: 15px;
            width: 90%;
	height:auto;
            max-height: 60%;
            overflow-y: auto;
            box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
text-overflow: ellipsis;
color:#EFEFEF;
    
        }

.scrollbox::-webkit-scrollbar {
  display: none;
}

.scrollbox {
  -ms-overflow-style: none;  /* IE and Edge */
  scrollbar-width: none;  /* Firefox */
}

.scroll-container {
position: fixed;
    
    b_ottom: 0;
    right:0;
    left: 0;
    width: 100%;
    height: 100%;
}

.carousel-primary,
.carousel-secondary {
  t_op: 75%;
  left: 100%;
h_eight:100%;
  width: 100%;
  padding:bottom:5px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
}

.carousel-primary img {
  width: 100%;
  margin-left: 20px;
  border-radius: 14px;
}

.carousel-primary {
  display: flex;
  justify-content: space-around;
  animation: scroll-horizontal 20s linear infinite;
}

.carousel-secondary {
  animation: scroll-horizontal 20s linear infinite;
  animation-delay: 10s;
}

@keyframes scroll-horizontal {
  0% {
    left: 100%;
  }

  100% {
    left: -100%;
  }
}

.carousel-primary:hover,
.carousel-primary:hover~.carousel-secondary {
  -webkit-animation-play-state: paused;
  -moz-animation-play-state: paused;
  -o-animation-play-state: paused;
  animation-play-state: paused;
}

.carousel-secondary:hover {
  -webkit-animation-play-state: paused;
  -moz-animation-play-state: paused;
  -o-animation-play-state: paused;
  animation-play-state: paused;
}


.scroll-container:hover>.carousel-primary:not(:hover) {
  -webkit-animation-play-state: paused;
  -moz-animation-play-state: paused;
  -o-animation-play-state: paused;
  animation-play-state: paused;
} 

@media screen and (max-width: 600px) {
            .scroll-container { height: 30%;  }
            .scrollbox {     max-height: 70%; }
            #header_text { padding:0; float:none; display:inline-block;
 font-size:2em;
 }
header { 
 text-align: center; 
 height:7em;
}
main { 
  top: 7em;
  bottom:3em;
}

footer { 
    height:3em;
}


.spalte {
    width: 100%;
    he_ight: 6em;
    text-align: center;
    padding: 0; 
}


        }

