/*!   ######################## Fonts ##################################### */

@font-face {
  font-family: 'Share Tech';
  src: url('fonts/sharetech.ttf');
}
@font-face {
  font-family: 'PRS';
  src: url('fonts/prs.otf');
}

/*!   ######################## Allgemeines #################################### */

fieldset {
  border:none;
}

.desktop-logo > a {

	background-color:transparent!important;
}

.absage {
  position: absolute;
  background-color: red;
  top: 50vh;
  transform: translateY(-50%);
  margin: 2vw;
  padding: 5vw;
  color: white;
  z-index: 999;
  border-radius: 1vw;
}

.wp-block-button__link {
  color:inherit;
}

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

a:focus {
  outline: none;
}

.post, .page {
  margin:0!important;
}

h1, h2, h3 {
font-family: 'PRS';
}

h4, h5, h6 {
font-family: 'Share Tech';

}


h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-weight: 500;
  line-height: 1.2;
  color: var(--bs-heading-color);
}

h1, .h1 {
  font-size: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  h1, .h1 {
    font-size: 2.5rem;
  }
}

h2, .h2 {
  font-size: calc(2.3rem + 0.6vw);
}
@media (min-width: 1200px) {
  h2, .h2 {
    font-size: 2.75rem;
  }
}

h3, .h3 {
  font-size: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  h3, .h3 {
    font-size: 2rem;
  }
}

h4, .h4 {
  font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  h4, .h4 {
    font-size: 1.5rem;
  }
}

h5, .h5 {
  font-size: 1.25rem;
}

h6, .h6 {
  font-size: 1rem;
}

.table_groups > table > tbody > tr > td {
  border:none;
  align-content: baseline;
  padding:2.5px;
}

.table_groups {
  margin:0;
}
.table_groups > table > tbody > tr > td > h2 {
  margin-bottom:0!important;
}



.table_groups > table {
  table-layout: auto!important;
}




/*!   ######################## Both ##################################### */

#mainheadline {
  text-shadow: 0px 0px 15px #000000;
}

body {
  margin: 0;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  background-color:	#22211f;
  line-height: 1.2!important;
  min-height: 100vh;
}

#header, #vipheader, #firmenheader, #presseheader, #schlemmheader, #stayheader {
  height: 100vh;
}

#impressumheader {
  height: 35vh;
}

.headcontainer {
  color: #F8F9Fa;
  position: absolute;

}

.section {
  background-color: #252525;
  border-top: 5px solid #ffea00;
  color:white;
}



.smallheadline {
  color: #ffea00;
  text-align: center;
  padding: 0;
  margin: 0;
}

.bigheadline {
  color: #ebebeb;
  text-align: center;
}

.text {
  color: #ebebeb;
  text-align: center;
  font-family: 'Share Tech';
}

.textsmall {
  color: #ebebeb;
  text-align: center;
  font-family: 'Share Tech';
  font-size:0.8rem;
}



.emptybutton {
  background-color:inherit!important;
  border: none!important;
}


.imagegrid {
  margin-top: 5vw;
  margin-bottom: 5vw;
}

#schlemmkachel1 {
  background-image: url(../../../uploads/2024/05/schlemmkachel1.jpg);
  
}

#schlemmkachel2 {
  background-image: url(../../../uploads/2024/05/schlemmkachel2.jpg);

}

#schlemmkachel3 {
  background-image: url(../../../uploads/2024/05/schlemmkachel3.jpg);

}

#schlemmkachel4 {
  background-image: url(../../../uploads/2024/05/schlemmkachel4.jpg);

}

#schlemmkachel5 {
  background-image: url(../../../uploads/2024/05/schlemmkachel5.jpg);

}

.catering_logo {
  text-align: center;
  margin-bottom: 1.5rem;
}

.catering_logo > img {
  width:40%;
}


.button {
  color:#ffea00;
}

.pricetag {
    font-family: 'PRS';
    font-size: 6vw;
    text-align: left;
    color: #ffea00;
}




.topleft { 
  grid-area: topleft; 
  background-image: url('../../../uploads/2026/05/quadoben_26.jpg');
}

.bottomleft { 
  grid-area: bottomleft; 
  background-image: url('../../../uploads/2026/05/quadunten_26.jpg');
}

.right { 
  grid-area: right; 
  background-image: url('../../../uploads/2026/05/hoch_links26.jpg');
}

.bottomright { 
  grid-area: bottomright; 
}

.video { 
  grid-area: video;
  width: 100%;
  margin: 0 !important;
}

.right-right { grid-area: right-right; 
  background-image: url('../../../uploads/2026/05/hoch_rechts26.jpg')
}



.imagegrid > div > div {
  background-color:#22211f;
  border: 1px solid #454545;
  width: 100%;
  padding: 2vw;
  color: #ebebeb;
  font-size: 0.8rem;
  display: flex;
  justify-content: flex-end;
  flex-direction: column;
  background-size: cover;
  background-position: bottom center;
  -webkit-box-shadow: 0px 0px 5px 1px #000000; 
  box-shadow: 0px 0px 5px 1px #000000;
}

.youtube {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.video > div > iframe {
  width:100%;
  height:100%;
  background-color: #22211f;
  border: 1px solid #454545;
  aspect-ratio: 16 / 9;
}




.onesquare > div {
  background-color: #22211f;
  border: 1px solid #454545;
  color: #ebebeb;
  font-size: 0.8rem;
  display: flex;
  justify-content: flex-start;
  flex-direction: column;
  background-size: contain;
  text-align: center;
}






.map {
  padding:0!important;
}







.navbox {
  position: fixed;
  width: 100vw;
  z-index: 900;
  border-bottom: 1px solid #454545;
  background-color: #222;
  top: 0;
}

.headticketbutton {
  position: absolute;
  background-color: #ffea00;
  z-index: 900;
  border: 1px solid rgba(50, 50, 50, 1);
  font-family: 'Share Tech';
  font-weight: bold;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-transform: uppercase;
}

.headticketbutton > a {
  text-decoration: none;
  color: inherit;
}

#mega-menu-menu-3 > li :first-of-type, #mega-menu-menu-4 > li :first-of-type {
  border-top:none;
}

#mega-menu-menu-3 > li, #mega-menu-menu-4 > li {
  border-top:1px solid #ffea00;
}

.mega-logo {
  position: absolute !important;
  left: 0 !important;
}
.mega-logo a img {
  transform: translateY(-25%) !important;
}

.mega-menu-item {
font-family: "Share Tech" !important;
font-size: 1rem !important; 

}
.mega-menu-toggle {
  padding: 2rem 1rem;
  background-color:#22211f!important;
}

.mega-toggle-animated-inner, .mega-toggle-animated-inner::before, .mega-toggle-animated-inner::after {
background-color: #ffea00!important;	
}

#mega-menu-wrap-menu-3 .mega-menu-toggle.mega-menu-open:after, #mega-menu-wrap-menu-4 .mega-menu-toggle.mega-menu-open:after {
  z-index: 1000!important;
}

#mega-menu-menu-3, #mega-menu-menu-4 {
  z-index: 1500!important;
}

.mobile-logo {
  position: fixed;
  z-index: 2000!important;
  padding: 0.2rem;
  left: 5px;
  top: 5px;
  width: 126px;
  height: 59px;
  transition: all 300ms ease-in-out;
}

.mega-menu-open .mobile-logo {
  width:290px;
  height:135px;
}

.mega-menu-open > div > div > div {
  transition: all 200ms 200ms ease-in-out!important;
}




.faqbox {
  padding-top: 5vw;
}

.faqbox > div {
  background-color: #22211f;
    border: 1px solid #454545;
    padding: 4vw;
    color: #ebebeb;
    font-size: 0.8rem;
    display: flex;
    justify-content: flex-end;
    flex-direction: column;
    background-size: contain;
    text-align: center;
}


summary {
  font-weight: bold;
  margin-bottom: 1vh;
  font-family: 'Share Tech';
}

.contactline {
  justify-content: space-evenly !important;
}
.contactline > h4 {
  font-size:1rem;
}

.contactline > h4 > a {
  color:inherit;
  text-decoration: none;
}


.premium {
  color:#007527;
  font-size: 2rem;
}
.kat1 {
  color:#61e102;
  font-size: 2rem;
}
.kat2 {
  color:#fffc00;
  font-size: 2rem;
}
.kat3 {
  color:#d81715;
  font-size: 2rem;
}
.kat4 {
  color:#2395da;
  font-size: 2rem;
}

.extraholder > div {
  background-color: #22211f;
  color: #ebebeb;
  font-size: 0.8rem;
  text-align: center;
}



.extracolumns > summary {
  background-color: #444;
  font-size: 1.2rem;
  padding: 1vw;
  color: #ffea00;
}

.extrarows {
  background-color: #ffea00;
    font-size: 2.0rem;
    padding: 0.5vw;
    color: #22211f;
    font-family: 'PRS';
    margin-bottom: 0.5vw;
    justify-content: space-between;
}

.pricecolumn{
  display:flex;
  flex-direction: column;
}

.priceholder {
  flex-grow:1;
  justify-content:flex-end;
  display: flex;
  flex-direction: column;
  margin-bottom: 1vh;
}


.viphg {
  background-image: url('../../../uploads/2024/05/vip1.jpg');
  background-size: cover;
  background-position: center;
  min-height:75vh;
}




.extrabox {
  gap: 0;
  margin: 0;
}

.extraprice {
  color:#ffea00;
  margin: 0;
  line-height: 0.6;
}





.kontakt {
  background-image: none!important;
}

/*!   ######################## Kontaktformular ##################################### */

.grecaptcha-badge {
	visibility: hidden;
}

.wpforms-hidden {
	display:none;
}

.ffform > input, .ffform > textarea, .ffform > button, .wpforms-submit {
  display: block;
  margin: 10px 0 0;
  padding: 15px;
  border: 0;
  border-radius: 0.5vw;
  outline: 0;
  resize: none;
  font-size: 13px;
  line-height: 17px;
  background-color: #303030;
  color: #818181;
  font-weight: 400;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: none;
  width: 100%;
}


.wpforms-label-hide {
	display:none;
}

.contactagree > fieldset > ul {
	margin:0;
	padding:0;
}
.contactagree > fieldset > ul > li {
	display:flex;
}
.contactagree > fieldset > ul > li::marker {
	content: "";
}
.contactagree > fieldset > ul > li > label {
	padding:1vw 1vw 1vw;
}

#wpforms-39-field_5 {
  display: flex;
  justify-content: center;
  font-weight: bold;
}

#socialbanner {
  height: 65vh;
  background-image: url(../../../uploads/2024/05/socialhg.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.footercolumn {
  color: #777;
  text-transform: uppercase;
  text-align: center;
}

.footercolumn > aside > p > a {
  color:inherit;
  text-decoration:none;
}





/*!   ######################## Slider-Anpassungen ##################################### */


.n2-ow {
  padding:0!important;
}

.actslider {
  width:50vw;
  margin: 5vw auto;
}


#acts {
  padding:0;
}


/*!   ######################## Desktop ##################################### */



@media (min-width: 1001px) {

  #mega-menu-wrap-menu-3 #mega-menu-menu-3, #mega-menu-wrap-menu-4 #mega-menu-menu-4 {
    padding: 0px 30px 0px 0px;
  }


  .headticketbutton {
    height: 30px;
    top: 50vh;
    right: -20px;
    transform: translateY(-50%);
    font-size: 1.2rem;
    padding: 22px 3vw 18px 1vw;
    transition:all 0.2s ease-in-out;
    
  }
  .headticketbutton:hover {
    right:0px;
  }


  .desktophidden {
    display:none!important;
  }

  .mobile-logo {
    display: none; 
  }

  .desktop-logo {
    position: absolute!important;
    left: 0!important;

  }

  .desktop-logo > a:hover {
    background:inherit!important;
  }

  #mega-menu-menu-3, #mega-menu-menu-4 {
    display: flex!important;
    flex-direction: row;
    justify-content: flex-end;
    padding-right:1vw;

  }

  #header, #vipheader, #firmenheader, #presseheader, #schlemmheader, #stayheader {
    background-size: cover;
    background-position: bottom left;
    background-repeat: no-repeat;
    margin: 0 auto;
    max-height: 98vh;
  }

  #impressumheader {
    background-size: cover;
    background-position: bottom;
    background-repeat: no-repeat;
    margin: 0 auto;
    max-height: 35vh;
  }


  #header {
    background-image: url('../../../uploads/2026/05/main_header.jpg');
  }
  #vipheader {
    background-image: url('../../../uploads/2024/05/viphg_24_head_desktop.jpg');
  }
  #firmenheader {
    background-image: url('../../../uploads/2026/05/gruppenhg_24_head_desktop.jpg');
  }
  #presseheader {
    background-image: url('../../../uploads/2026/05/pressehg_24_head_desktop.jpg');
  }
  #impressumheader {
    background-image: url('../../../uploads/2026/05/smallhg.jpg');
  }
  #schlemmheader {
    background-image: url('../../../uploads/2025/04/schlemmhg_25_head_desktop.jpg');
  }

  #stayheader {
    background-image: url('../../../uploads/2024/05/stayhg_24_head_desktop.jpg');
  }

  .schlemmkachel {
    background-position: bottom;
    background-size: cover;
    background-repeat: no-repeat;
  }

  .headcontainer {
    text-align: right;
    right: 5vw;
    top: 75vh;
    transform: translateY(-50%);
  }

  #mainheadline {
    font-size: 6.5rem;
    line-height: 0.7;
    
  }

  .headlinesub {
    font-size: 1.2rem;
    text-shadow: 0px 0px 15px #000000;
    max-width: 50vw;
    font-family: 'Share Tech';
  }
	
	
 .headlogo {
    width: 15vw;
    position: absolute;
    right: 5vw;
    top: 10vh;
  }











  .specialcolumn {
    background-color: #22211f;
    border: 1px solid #454545;
    border-radius: 2vw;
    padding: 0;
    color: #ebebeb;
    font-size: 0.8rem;
    position:relative;
    transition:0.1s ease-in-out;
    margin-bottom: 3vh;
    flex-basis:15%;
  }
  .specialcolumn > div {
    display:flex;
    overflow:hidden;
    height:100%;
  }
  .specialcolumn > div > div {
    display:flex;
    flex-direction: column;
    justify-content: center;
  }


  .specialcolumn:hover {
    transform:scale(1.05)
  }

  .specialcolumn_head {
    border-top-left-radius: 1vw;
    border-bottom-left-radius: 1vw;
    background-color: #ffea00;
    text-align: center;
    color: #22211f;
    flex-basis: 40%;
  }

  .specialcolumn_head > div > h2 {
    margin:0!important;
    font-size:2.0rem!important;
  }

  .specialcolumn_text {
    font-family: 'Share Tech';
    padding: 1vw;
    text-align: center;
    flex-basis: 30%;
    outline: 5px dotted #22211f;
    outline-offset: -2px;
  }
  .specialcolumn_text > div > p {
    margin:0!important;
  }

  .specialcolumn_price {

    text-align: center;
    color: #ffea00;
    background-color: #22211f;
    flex-basis: 10%;
    outline: 5px dotted #22211f;
    outline-offset: -2px;
    z-index:900;
  }

  .specialcolumn_price > div > h2 {
    margin:0!important;
    font-size:2.5rem!important;
    text-align:left;
    z-index: 900;
    position: relative;
  }

  .price_hide {
    display:none;
  }
  .specialcolumn_button {

    border-top-right-radius: 1vw;
    border-bottom-right-radius: 1vw;
    background-color: #ffea00;
    text-align: center;
    padding: 0.8vw;
    font-family: 'Share Tech';
    color:#22211f;
    font-size: 1rem;
    font-weight: bold;
    flex-basis:20%
  }

  .specialcolumn_button > div > p { 
    margin:0!important;
  }

  
 
  

 

















  
  
  .extrabox_innner {
    border-right: 3px dotted #ffea00;
    padding: 0.5vw;
    display: flex;
    justify-content: center;
    flex-direction: column;
  }
  
  .extrabox_innner:last-of-type {
    border:none;
  }

  






  #about, #acts {
    background-image: url('../../../uploads/2026/05/mainhg_24_desktop.jpg');
    background-repeat: no-repeat;
    background-color: #22211F;
	min-height:95vh;
  }

#kontakt {
    background-image: url('../../../uploads/2026/05/mainhg_24_desktop.jpg');
    background-repeat: no-repeat;
    background-color: #22211F;
  }



  .section {
    background-image: url('../../../uploads/2026/05/mainhg2_24_desktop.jpg');
    background-size: cover;
    background-position: center center;
    background-color: #ffea00;
    border-top: 5px solid #ffea00;
    min-height:80vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  .impressumheadline {
    padding:2vw;
  }

  .impressum {
    background-color: #22211f;
    background-image: url(../../../uploads/2026/05/impressumhg_24_desktop.jpg);
    background-size: contain;
    background-position: bottom center;
    background-repeat: no-repeat;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 5vw 15vh 5vw;
    color:white;
    min-height:100vh;
  }

  .impressumcolumns > div {
    padding: 2vw;
  }

  .sectionbox {
    background-color: #22211f;
    border: 1px solid rgba(50, 50, 50, 1);
    width: 100%;
    padding: 2.5vw;
    margin: 1vw;
  }


  .ticketsinner {
    padding: 0 25vw;
  }


  #ticketsright {

    display: flex;
    flex-direction: column;
  }

  .specialholder {
    height:100%;
  }

  .specialholder > div {
    display: flex;
    flex-direction: column;
    height: 100%;
  }

  .squares > div > p {
    margin-bottom: 0;
  }


  .imagegrid > div {
    display: grid; 
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr; 
    grid-template-rows: 1fr 1fr; 
    gap: 1em 1em; 
    grid-template-areas: 
      "topleft right bottomright bottomright right-right"
      "bottomleft right video video right-right"; 
    grid-template-rows: min-content;
  }


  .onesquare > div {
    padding: 1vw;
  }



  .mapframe {
    border: 1px solid #454545;
    border-radius: 2vw;
  }

  footer {
    background-image: url(../../../uploads/2026/05/mainhg_24_desktop.jpg);
    background-size: cover;
    background-position: top center;
    padding-top: 30vh;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
  }

  .footercolumn {
    display: flex;
    justify-content: space-evenly;
  }

  .footerlogo {
    width: 15vw;
    height: auto;
    margin:0 auto;
  }

  #sponsors {
    margin-bottom: 10vh;
    display: flex;
    flex-direction: row;
    justify-content: center;
  }

  .sponsor_inner {
    display: flex;
    justify-content: center;
    text-align: center;
  }


  .sponsor_inner > figure {
    text-align: center;
    width: 15vw;
  }

  #block-35 {
    order:1;
  }
  #block-77 {
    order:2;
  }
  #block-78 {
    order:4;
  }
  #block-79 {
    order:5;
  }
  #block-80 {
    order:3;
  }
  .widget {
    justify-content: center;
    display: flex;
    flex-direction: column;
    color:white
  }

}


/*!   ######################## Mobile ##################################### */




@media (max-width: 1000px) {


  .headticketbutton {
    height: 29px;
    top: 32px;
    right: 40px;
    transform: translateY(-50%) translateX(-50%);
    padding: 0 2vw 0 2vw;
  }

  .bottomright, .right-right {
    display:none!important;
  }


  #mega-menu-menu-3, #mega-menu-menu-4 {
    display: flex!important;
    flex-direction: column;
    justify-content: center;
    border-right: 2px solid #454545!important;
  }
  

  #header {
    background-image: url('../../../uploads/2026/05/mainhg_25_mobil.jpg');
    background-size: cover;
    background-position: bottom center;
    background-repeat: no-repeat;
  }

  #vipheader {
    background-image: url('../../../uploads/2024/05/viphg_24_head.jpg');
    background-size: cover;
    background-position: bottom center;
    background-repeat: no-repeat;
  }

  #schlemmheader {
    background-image: url('../../../uploads/2025/04/schlemmhg_25_head.jpg');
    background-size: cover;
    background-position: bottom center;
    background-repeat: no-repeat;
  }

  #firmenheader {
    background-image: url('../../../uploads/2026/05/gruppenhg_24_head_mobil.jpg');
    background-size: cover;
    background-position: bottom center;
    background-repeat: no-repeat;
  }

  #presseheader {
    background-image: url('../../../uploads/2026/05/pressehg_24_head_mobil.jpg');
    background-size: cover;
    background-position: bottom center;
    background-repeat: no-repeat;
  }

  #stayheader {
    background-image: url('../../../uploads/2024/05/stayhg_24_head.jpg');
    background-size: cover;
    background-position: bottom center;
    background-repeat: no-repeat;
  }


  #impressumheader {
    background-image: url('../../../uploads/2026/05/impressumhg_24_head_mobil.jpg');
    background-size: cover;
    background-position: bottom center;
    background-repeat: no-repeat;
  }

  .schlemmkachel {
    background-position: bottom;
    background-size: cover;
    background-repeat: no-repeat;
    min-height:50vh;
  }

  .headcontainer {
    text-align: right;
    right: 10vw;
    top: 70vh;
    transform: translateY(-50%);
  }

  #mainheadline {
    font-size: 4.0rem;
    line-height: 0.8;
  }

  .headlinesub {
    font-size: 1.2rem;
    text-shadow: 0px 0px 15px #000000;
    padding-left: 2rem;
    font-family: 'Share Tech';
  }
	
	
.headlogo {
    display:none;
  }

  #ticketsinner, #anfahrtinner, #kontaktinner, #extrabox  {
    flex-wrap: wrap !important;
  }
  #ticketsquares > div{
    flex-basis: 30% !important;
    aspect-ratio: 1 / 1;
  }

  #extrabox > div {
    flex-basis:100%;
  }

  #pricesquares {
    margin-top: 2em;
    flex-wrap: wrap !important;
  }

  #pricesquares > div{
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    flex-basis: 100%;
  }

  #pricesquares > div > figure {
    width: 50%;
  }

  #pricesquares > div > * {
    margin:0!important;
  }

  #picturesquares > div {
    flex-basis: 30% !important;
    aspect-ratio: 1 / 1;
  }




  

  #about,  #acts, #kontakt {
    background-image: url('../../../uploads/2026/05/darkhg_25_mobil.jpg');
    background-color: #22211F;
    background-size: cover;
    background-position: center center;
  }


  .impressumheadline {
    padding:2vw;
  }
  
  .impressum {
    background-color: #22211f;
    background-image: url(../../../uploads/2026/05/darkhg_25_mobil.jpg);
    background-size: contain;
    background-position: bottom center;
    background-repeat: no-repeat;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 5vw 15vh 5vw;
    color:white;
    min-height:100vh;
  }

  .impressumcolumns > div {
    padding: 2vw;
  }


  .section {
    background-color: #ffea00;
    border-top: 5px solid #ffea00;
    padding: 5vw;
    background-image: url('../../../uploads/2026/05/yellowhg_25_mobil.jpg');
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    display: flex;
    flex-direction: column;
    justify-content: center;
    
  }

  .sectionbox {
    background-color: rgba(5,5,5,1);
    border: 1px solid rgba(50, 50, 50, 1);
    width: 100%;
    padding: 6vw;
    margin: 1vw;
    flex-basis:100%!important;
  }

















  .specialholder > div {
    display: flex;
    flex-wrap: wrap;
    gap: 7vw;
  }

  .specialcolumn {
    background-color: #22211f;
    border: 1px solid #454545;
    padding: 0;
    color: #ebebeb;
    font-size: 0.8rem;
    position:relative;
    transition:0.1s ease-in-out;
    margin-bottom: 1vh;
    flex-basis: 45%;
    width: 100%;
  }
  .specialcolumn > div {
    display:flex;
    overflow:hidden;
    flex-direction: column;
    height:100%;
  }
  .specialcolumn > div > div {
    display:flex;
    flex-direction: column;
    justify-content: center;
  }


  .specialcolumn:hover {
    transform:scale(1.05)
  }

  .specialcolumn_head {
    border-top-left-radius: 1vw;
    border-top-right-radius: 1vw;
    background-color: #ffea00;
    text-align: center;
    color: #22211f;
  }

  .specialcolumn_head > div > h2 {
    margin: 0 !important;
    font-size: 2rem !important;
    line-height: 0.8;
    text-align: center;
    padding: 2vw;
  }

  .specialcolumn_text {
    font-family: 'Share Tech';
    padding: 5vw;
    text-align: center;
    flex-basis: 100%;
    outline: 5px dotted #22211f;
    outline-offset: -2px;
    z-index: 900;
  }


  .specialcolumn_text > div > p {
    margin:0!important;
    font-size:1.2rem;
  }

  .specialcolumn_price {

    text-align: center;
    color: #ffea00;
    background-color: #22211f;
    outline: 5px dotted #22211f;
    outline-offset: -2px;
    z-index:999;
  }

  .specialcolumn_price > div > h2 {
    margin:0!important;
    font-size:2.5rem!important;
    text-align:center;
    z-index: 900;
    position: relative;
    padding:1vw;
  }

  .specialcolumn_button {

    border-bottom-left-radius: 1vw;
    border-bottom-right-radius: 1vw;
    background-color: #ffea00;
    text-align: center;
    padding: 0.8vw;
    font-family: 'Share Tech';
    color:#22211f;
    font-size: 1rem;
    font-weight: bold;
  }

  .specialcolumn_button > div > p { 
    margin:0!important;
    font-size:1.0rem;
    padding:2vw;
  }
  
  











  
  .extrabox_innner {
    border-bottom: 5px dotted #ffea00;
    padding: 5vw;
    display: flex;
    justify-content: center;
    flex-direction: column;
  }
  
  .extrabox_innner:last-of-type {
    border-bottom:none;
  }





  .squares > div {
    background-color:#22211f;
    border: 1px solid #454545;
    padding: 2vw;
    color: #ebebeb;
    font-size: 0.8rem;
    display: flex;
    justify-content: flex-end;
    flex-direction: column;
    background-size: contain;
  }

  .squares > div > p {
    margin-bottom: 0;
  }


  .imagegrid > div {
    display: grid; 
    grid-template-columns: 1fr 1fr; 
    grid-template-rows: 1fr 1fr 1fr; 
    gap: 1em 1em; 
    grid-template-areas: 
      "topleft right"
      "bottomleft right"
      "video video"; 
  }


  .onesquare > div {
    padding: 4vw;
  }


  .mapframe {
    border: 1px solid #454545;
    border-radius: 2vw;
    height: 20vh;
  }

  #acts {
    min-height:75vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    
  }

  .actslider {
    width: 80vw;
    margin: 0 auto;
  }
  footer {
    background-image: url(../../../uploads/2026/05/darkhg_25_mobil.jpg);
    background-size: cover;
    background-position: top center;
    padding-top: 30vh;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
     padding-bottom: 25vh;
  }
  

  .footerlogo {
    width: 50vw;
    height: auto;
    margin:0 auto;
  }


  #sponsors {
    margin-bottom: 5vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  .sponsor_inner {
    display: flex;
    justify-content: center;
    text-align: center;
  }


  .sponsor_inner > figure {
      text-align: center;
      width: 50vw;
  }

  
}





/*!   ######################## Kalender ##################################### */

#platzhalter {
  opacity:0;
}
.rowplatzhalter {
  opacity:0;
}

#calenderbox, #calendargroup {
  max-width: 620px;
  margin: 0 auto;
  padding: 1rem; }

.daterow {
  display: grid;
  grid-template-columns: repeat(7, 1fr); 
  color:#ebebeb;
}

.date {
  flex: 1 0 14%;
  height: auto;
  margin: 0.2rem;
  background-color: #222;
  border-radius: 0.2rem;
  position: relative;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  border: 1px solid #333; 
  display: flex;
  flex-direction: column;
  justify-content: center;

}

.date:hover {
  background-color: #333;
}


  .hatVeranstaltung {
    border-radius: 0.1rem;
    width: 0.5rem;
    height:0.5rem;
    background-color: #ffea00;
    transition: all 0.2s ease-in-out;
    margin: 1px 0;
  }
  
  .dotholder {
    position: absolute;
    top: 2px;
    bottom: 2px;
    right: 2px;
    width: 0.5rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

.date:before {
  content: '';
  display: block;
  padding-top: 50%; }

.monthnamewrapper {
  display: flex;
  margin-bottom: 1rem; }

.monthwrapper.hidden{
  display: none !important; }

.showlistwrapper {
  display: none; 
  margin-bottom: 3rem;
  flex-direction:column;
}

.monthname {
  background-color: #333;
  margin: 0.5rem;
  padding: 0.5rem;
  border-radius: 0.2rem;
  text-align: center;
  transition: all 0.2s ease-in-out;
  border: 1px solid #444;
  flex: 1;
  cursor: pointer; 
  color:#ebebeb;
}

.monthname:hover {
  border: 1px solid #ffea00;
  color: #ffea00; }

.monthname.font-tech.selected {
  background-color: #ffea00;
  color: #212529; }

.date.selected {
  background-color: #333;
}


.day {
  position: absolute;
  line-height: 1;
  left: 0.2rem; 
}

.daynames > div {
  border: 1px solid #333;
  margin: 0.2rem;
  padding: 0.2rem;
  border-radius: 0.2rem;
  text-align: center; }

@media (max-width: 575.98px) {
  .date, .monthname, .daynames > div {
    margin: 0.2rem !important;
    padding: 0.5rem 0;
  } 

}
.showlistrow.d-flex {
  padding: 0.2rem; }



.showlistrow.d-flex > div, .showlistrow.d-flex > a {
  flex: 1;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-left: 0.5rem; }

.tickets {
  padding: 0.5rem;
  border-radius: 0.5rem;
  text-decoration: none;
  text-align: center;
  font-family: 'Share Tech';
  color: #ffea00;
  border: 1px solid;
  border-color: transparent;
  transition: all 0.1s ease-in-out;
  border: 1px solid #ffea00;
  background-color:#222;
}

.tickets:hover {
  background-color: #ffea00;
  border-color: #ffea00;
  color: black; }



.time {
  background-color: #222;
  border-radius: 0.5rem;
  padding: 0.5rem;
  font-family: 'Share Tech';
  color:#ebebeb;
  border: 1px solid #333;
}

  .d-flex {
    display: flex !important;
  }


.ticketampel {
    display: flex;
    justify-content: space-between;
    margin-top: 2rem; 
    margin-bottom: 2rem; 
}



.ticketampel > div {
  width: 20%;
  display: block;
  border-radius: 0.1rem;
  margin: 5px;
  padding: 5px;
  text-align: center;
  font-size:2vw;
}




  @media  (min-width: 1001px) AND (max-width: 1200px) {
    .section {
      padding-left:5vw;
      padding-right:5vw;
    }
    .ticketampel > div {font-size:1vw;}
  }

  @media  (min-width: 1201px) AND (max-width: 1400px) {
    .section {
      padding-left:10vw;
      padding-right:10vw;
    }
    .ticketampel > div {font-size:1vw;}
  }
  @media  (min-width: 1401px) AND (max-width: 1600px) {
    .section {
      padding-left:12.5vw;
      padding-right:12.5vw;
    }
    .ticketampel > div {font-size:1vw;}
  }
  @media  (min-width: 1601px) AND (max-width: 1800px) {
    .section {
      padding-left:15vw;
      padding-right:15vw;
      padding-top:10vh;
      padding-bottom:10vh;
    }
    .ticketampel > div {font-size:1vw;}
  }
  @media (min-width: 1801px) AND (max-width: 1920px) {
    .section {
      padding-left:15vw;
      padding-right:15vw;
      padding-top:10vh;
      padding-bottom:10vh;
    }
    .ticketampel > div {font-size:1vw;}
  }
  @media (min-width: 1921px) {
    .section {
      padding-left: 384px;
      padding-right: 384px;
      padding-top:10vh;
      padding-bottom:10vh;
      max-width: 1920px;
      margin: 0 auto;
      box-shadow: -2px 0px 0px 0px #ffea00, 2px 0px 0px 0px #ffea00;
    }
    .ticketampel > div {font-size:inherit;}
    #header, footer, .header {
      max-width: 1920px;
      margin: 0 auto;
      box-shadow: -2px 0px 0px 0px #ffea00, 2px 0px 0px 0px #ffea00;
    }
    #headcontainer {
      right: calc(50vw - 900px);
    }
	  
	    .headlogo {
    	max-width:290px;
        right: calc(50vw - 900px);
    }
  }

  .freegreen {
    background-color: green;
  }

  .freered {
    background-color: red;
  }

  .freeyellow {
    background-color: #ffea00;
    color:black;
  }

  .yellow {
    color:#ffea00;
  }