
  /* inter-light - 300 */
@font-face {
    font-display: swap; 
    font-family: 'Inter';
    font-style: normal;
    font-weight: 300;
    src: url('../fonts/inter-300.woff2') format('woff2'); 
    
  }
  /* inter-regular - 400 */
  @font-face {
    font-display: swap; 
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/inter-regular.woff2') format('woff2'); 
  }
  /* inter medium - 500  */
  @font-face {
    font-display: swap; 
    font-family: 'Inter';
    font-style: normal;
    font-weight: 500;
    src: url('../fonts/inter-500.woff2') format('woff2'); 
  }

  /* Reset rule */
  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }

body {
    margin: 0;
    padding: 0;
    font-family: "Inter", sans-serif;
    background-color: #F3F86B;
}

.mobileonly {display: none;}
.desktoponly {display: block;}

.sonne {

  width: 60vh;
  height: 60vh;
  border-radius: 50%;
  position: fixed;
  top: 15vh;
  background-color: #fff;
  left: -30vh;
  z-index: -100;

  
  transition: left 100ms, width 100ms, height 100ms;
}



.topleft {

    padding: 30px 20px 20px 20px;
}

.bottomright {
  bottom: 140px;
    position: absolute;
    right: 0;       
   padding-right: 20px;
   text-align: right;
}
   
/*
.blackbar {
  position: fixed;
  width: 100%;
  top: calc(100vh - 110px);
  height: 110px;
  background-color: black;
  color: #fff;
  font-size: clamp(1.4rem, 2.5vw, 2rem);
  text-align: center;
  padding-top: 40px;
}
*/

.blackbar {
  position: fixed;
  width: 100%;
 bottom: 0;
  height: 110px;
  background-color: black;
  color: #fff;
  font-size: clamp(1.4rem, 2.5vw, 2rem);
  text-align: center;
  padding-top: 40px;
  z-index: 1000;
}

.save {
  color: #F3F86B;
}

.datum {
  font-size: clamp(2rem, 3vw, 7rem);
  line-height: clamp(2.2rem, 3.2vw, 7rem);
  font-style: normal;
  font-weight: 400;  
  margin-left: 8px;
}

p {
  font-size: 25px;
  line-height: 32px;
  display: inline-block;
}

h1 {
  font-size: clamp(5rem, 9vw, 12rem);
  line-height: clamp(5rem, 9vw, 12rem);
  font-style: normal;
  font-weight: 300;  
 margin: 0;
 padding: 0;
}

h2 {
  font-size: clamp(2rem, 3vw, 7rem);
  line-height: clamp(2.2rem, 3.2vw, 7rem);
  font-style: normal;
  font-weight: 400; 
  margin: 0;
  padding: 0; 
}

h3 {
  font-size: clamp(3rem, 4vw, 7rem);
  line-height: clamp(3rem, 4vw, 7rem);
  font-style: normal;
  font-weight: 400; 
  margin: 0;
  padding: 0; 
}

a:link, a:visited, a:hover, a:active {  
  color: #000;  
  text-decoration: underline;  
  text-decoration-color: #000;
  text-underline-offset: 8px !important;
}

a.anmeldung:link, a.anmeldung:visited, a.anmeldung:hover, a.anmeldung:active {  
  color: #fff;  
  text-decoration: none;  
}

.abstand1 {
  margin-bottom: 30px;
}

.abstand2 {
  margin-bottom: 80px;
}

.abstand3 {
  margin-bottom: 20px;
}

.content {
  
  padding:  70vh 30px 130px 30px;
}

.liste_sonne li {
  list-style-type: none;
  padding-bottom: 80px;
  margin-left: 20px;
  font-size: 40px;
  line-height: 50px;
}


.liste_sonne li:before {
  
  content: "";
  color: black;
  border-radius: 50%;
  height: 30px;
  width: 30px;
  margin-right: 20px;
  background-color: #000;
  margin-left: -50px;
  display: inline-block; 
}

.liste-sub {
  font-size: 25px;
  line-height: 32px;
  display: inline-block;
}

.liste-klein-abstand {
  margin-top: -40px;  
}


.liste-klein-bullet-abstand {
  transform: translateY(-5px);  
}

.liste-flexbox {
  display: inline-flex;
}

.uhrzeit {
  min-width:130px;
}


ul.liste_strich {padding: 0;}

.liste_strich li {
  list-style-type: none;
  padding-bottom: 7px;
  margin-left: 22px;
  font-size: 25px;
  line-height: 32px;
}


.liste_strich li:before {  
  content: "";
  color: black;
  height: 2px;
  width: 12px;
  background-color: #000;
  margin-right: 10px;
  margin-bottom: 8px;
  margin-left: -22px;
  display: inline-block; 
}

.firmen, .firmengal {
  display: flex;
  justify-content: space-between;
  max-width: 1000px;
  padding-top: 30px;  
}

.firmengal a {
  cursor: pointer;  
}

.firmen div img  {
  max-width: 80%;
}

.firmengalpic  {
  position: relative;  
}

a div.firmengalpic {
  display: inline-block;
}

.firmengalpic img {
  max-width: 80%;
  filter: brightness(50%);
  transition: .5s ease;
  backface-visibility: hidden;
}

.firmengalpic:hover img, .galpic:hover img  { 
  filter: brightness(100%);
}

.galpic  {
  position: relative;  
  max-width: 600px;
  display: inline-block;
}

.galpic img {  
  filter: brightness(50%);
  transition: .5s ease;
  backface-visibility: hidden;
}

.textonpic {
  position: absolute;
  top: 50%;
  left: 40%;
  transform: translate(-50%, -50%);
  font-size: clamp(1rem, 3vw, 2rem);
  color: #fff;
	text-shadow: 1px 1px 10px #000;
  text-align: center;
}

.textonpic_gal {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: clamp(2rem, 3vw, 2rem);
  color: #fff;
	text-shadow: 1px 1px 10px #000;
  text-align: center;
  line-height: 8vw;
}


.eventtext {
  display: block;
  max-width: 1400px;
  padding-right: 40px;
  }


.contentblock {
  max-width: 1200px;
  padding: 0px 60px 30px 60px;
}

.pixscal {
  max-width: 100%;
  height: auto;
}

.figcap {
  font-size: 18px;
  margin-top: 26px;
}



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

  .desktoponly {display: none;}
  .mobileonly {display: block;}

  .bottomright {
    bottom: 120px;
      position: absolute;
      right: 0;       
     padding: 0 20px;
     text-align: right;
  }
  
  .liste_sonne li {
    list-style-type: none;
    padding-bottom: 50px;
    margin-left: 0px;
    font-size: 30px;
    line-height: 40px;
  }
    
  .liste_sonne li:before {
    
    content: "";
    color: black;
    border-radius: 50%;
    height: 25px;
    width: 25px;
    margin-right: 15px;
    background-color: #000;
    margin-left: -40px;
    display: inline-block; 
  }

  h3 {
    font-size: clamp(2rem, 4vw, 7rem);
    line-height: clamp(2.2rem, 4vw, 7rem);
    font-style: normal;
    font-weight: 400;  
  }

  .firmen, .firmengal {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    max-width: 1000px;
    padding-top: 30px;
  }
  
  .firmen div img {
    max-width: 80%;
    padding: 30px 0;
  }

  .firmengal div img {
    max-width: 100%;
    padding: 10px 0;
  }

  .galpic  {
    max-width: 100%;
    padding: 10px 0;
  }


  .textonpic, .textonpic_gal {
    left: 50%;
    font-size: 8vw;
  }

  .blackbar {
    position: fixed;
    width: 100%;
    /* top: calc(100dvh - 90px); */
    bottom: 0;
    height:90px;
    background-color: black;
    color: #fff;
    font-size: clamp(1.2rem, 2.5vw, 2rem);
    line-height: 1.5rem;
    text-align: center;
    padding-top: 30px;
    padding-left: 0px;
  }

  .eventtext {
    padding-right: 0px;
    }

  .contentblock {    
    padding: 0px 0px 0px 0px;
  }

  .uhrzeit {
    min-width:100px;
  }

  .liste-klein-abstand {
    margin-top: -37px;  
  }
  
  
  .liste-klein-bullet-abstand {
    transform: translateY(-2px);  
  }

}

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

  .content {
  
    padding:  70vh 30px 110px 30px;
  }

  .figcap {
    font-size: 14px;
    margin-top: 14px;
  }

  .uhrzeit {
    min-width:80px;
  }

  .liste_sonne li {
    list-style-type: none;
    padding-bottom: 40px;
    margin-left: 0px;
    font-size: 25px;
    line-height: 32px;
  }
    
  .liste_sonne li:before {
    
    content: "";
    color: black;
    border-radius: 50%;
    height: 18px;
    width: 18px;
    margin-right: 15px;
    background-color: #000;
    margin-left: -35px;
    display: inline-block; 
  }

  .datum {
    font-size:25px;
    line-height: 32px;
    
  }

  p {
    font-size: 18px;
    line-height: 24px;
    display: inline-block;
  }

  h1 {
    font-size: 60px;
    line-height: 70px;
    font-style: normal;
    font-weight: 300;  
   margin: 0;
   padding: 0;
  }

  h2 {
    font-size: 25px;
    line-height: 32px;

  }
  
  h3 {
    font-size: 25px;
    line-height: 30px;
   
  }

  .abstand1 {
    margin-bottom: 10px;
  }

 
  .abstand2 {
    margin-bottom: 40px;
  }

  .liste-sub {
    font-size: 18px;
    line-height: 24px;
    display: inline-block;
  }
  
  .liste-klein-abstand {
    margin-top: -27px;  
  }
  
  
  ul.liste_strich {padding: 0;}
  
  .liste_strich li {
    list-style-type: none;
    padding-bottom: 5px;
    margin-left: 22px;
    font-size: 18px;
    line-height: 24px;
  }
  
  
  .liste_strich li:before {  
    content: "";
    color: black;
    height: 2px;
    width: 12px;
    background-color: #000;
    margin-right: 10px;
    margin-bottom: 5px;
    margin-left: -22px;
    display: inline-block; 
  }

}


/*   fancybox   */

.fancybox__content {
  margin-top: 50px!important;
  margin-left: 50px!important;
  margin-right: 50px!important;
  margin-bottom: 30px!important;
}


.fancybox__caption {
  
  padding-top: 10px!important;
  padding-bottom: 50px!important;
  max-width: 90%!important;
  text-align: center;
 
}

.fancybox__container {
  --fancybox-color: #fff!important;
}

