/* cmsms stylesheet: EW2025 modified: Freitag, 12. Dezember 2025 20:28:57 */
/* Fonts */
@font-face { font-family: 'BauEW'; src: url('/fonts/BauEW/BauEW-Regular.woff2') format('woff2'); font-weight: 400; ; font-display:fallback }
@font-face { font-family: 'BauEW'; src: url('/fonts/BauEW/BauEW-Medium.woff2') format('woff2'); font-weight: 500; font-display:fallback }
@font-face { font-family: 'BauEW'; src: url('/fonts/BauEW/BauEW-Bold.woff2') format('woff2'); font-weight: 700; font-display:fallback }

/* Farben */





/* Global */
html { scroll-behavior:smooth; -webkit-font-smoothing: antialiased;
-moz-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
-o-font-smoothing: antialiased;
font-smoothing: antialiased;w
text-rendering: optimizeLegibility;
}
body { color: black; font-size:16px; line-height:150%; font-family:'BauEW', sans-serif; font-weight: 500 }
header { background:white; padding: 15px 20px 10px 25px; position: fixed; top: 0; right: 0; z-index: 10 }
.cutout { background: url(/img/header-bg.svg) no-repeat; height: 60px; }
.logo { height:40px; margin-right: 20px }
.fancylogo { padding: 0 0 0 13px; z-index:10; margin-top: -2px }
.fancylogo img { width: 200px }


a { color: black }
a:hover { text-decoration: none }

em { color: black }

.target-offset { scroll-margin-top: 70px }
p a, p a:hover { color: black; text-decoration: none; border-bottom: 2px solid black }
footer a, footer a:hover { color: white; text-decoration: none; border-bottom: 2px solid white }
footer .social-bar a:hover { border:none }

h1, h2, h3, h4 {font-family: 'BauEW', sans-serif; font-weight:700; color: black}


/* Navi */
.uk-navbar-toggle { min-height: auto }
.uk-navbar-toggle svg { color:black }
.uk-navbar-container { background: none !important }

/* .uk-navbar-dropdown { box-shadow: none; padding: 15px 25px; left: -25px!important; top: 45px!important; width: 330px; } */

.uk-navbar-dropdown a:hover { color: black }
.uk-navbar-dropdown ul {}
.uk-navbar-dropdown ul li { font-weight: 500; font-size: 25px; line-height:160%; letter-spacing: 0; margin: 0; padding: 0; }



.fancynav { right: 120px !important; top: 7px !important; left: auto!important; background: none !important; box-shadow:none }
.fancynav ul { margin: 0; padding: 0; text-align: right; }
.fancynav ul li { width: 300px; margin: -1px 0 0 0 !important; line-height: 40px; padding: 0!important; }
.fancynav ul li a { background: white; padding: 4px 5px 5px 10px; height: 40px; }

.fancynav ul li { opacity: 0; animation: fadeIn 0.9s 1; animation-fill-mode: forwards }
.fancynav ul li:nth-child(n+1) { animation-delay: 0s }

.fancynav ul li:nth-child(5n+1) {
  animation-delay: 0s;
}

.fancynav ul li:nth-child(5n+2) {
  animation-delay: 0.05s;
}

.fancynav ul li:nth-child(5n+3) {
  animation-delay: 0.1s;
}
.fancynav ul li:nth-child(5n+4) {
  animation-delay: 0.15s;
}

.fancynav ul li:nth-child(5n+5) {
  animation-delay: 0.2s;
}
.fancynav ul li:nth-child(5n+6) {
  animation-delay: 0.25s;
}

@keyframes fadeIn {
  0% {
    opacity: 0.0;
  }
  100% {
    opacity: 1.0;
  }
}




nav ul {list-style:none; margin:0; padding:0;}
nav ul li {padding:10px 0 10px; margin:0 !important;font-weight:700;letter-spacing:0.1em;font-size:17px}
nav ul ul li {padding:0 0 10px 15px;font-weight:500;letter-spacing:0.02em;font-size:15px}
nav ul ul ul { margin-top: -10px }

nav ul li a { color: black }
nav ul li a:hover {text-decoration:none}
nav ul ul .menuactive {font-weight:700; letter-spacing: 0.05em} 


/* Start */
.frame { flex-basis: 50%; max-height: 100dvh; overflow-y: scroll; scroll-snap-type: y mandatory; scroll-behavior: smooth }
.start-container { height: calc(100dvh - 30px);scroll-snap-align: start;scroll-snap-stop: always; padding: 15px; overflow: hidden }
footer.start-container { padding-bottom: 15px }
footer.start-container .content a { border: none }

.start-container.realfooter { padding-top: 0; height: auto }

.start-container-start { padding: 15px 15px 15px 15px }

.uk-slideshow-items { height:calc(100dvh - 30px) }
.slidertext { position:absolute; top: 50vh; left:-1px; padding: 0; max-width:67%; }
.slidertext a:hover { text-decoration: none }
.slidertext h1 { color: black; font-size:40px; text-transform:uppercase; letter-spacing:0.01em; line-height:115%; margin: 0; padding: 0; }
.slidertext h1 span { margin: 0 0 0 -3px; padding: 2px 10px 2px 4px; background: white; -webkit-box-decoration-break: clone; box-decoration-break: clone }
.slidertext h2 { color: black; font-size: 28px; line-height: 125%; font-weight:500; margin: 3px 0 0 0; padding: 0 }
.slidertext h2 span { margin: 0 0 0 -5px; padding:1px 7px 3px 7px; background:white; -webkit-box-decoration-break: clone; box-decoration-break: clone }
.slidertext h3 { font-size: 15px; line-height: 120%; font-weight:500; font-style:normal; text-transform: uppercase; letter-spacing: 0.2em; margin: 4px 0 0 0; padding: 0}
.slidertext h3 span { color: black; margin: 0 0 0 0; padding:4px 4px 4px 4px; background:white; -webkit-box-decoration-break: clone; box-decoration-break: clone }


.button-programm-home { position:relative; top:-120px; left: calc(100% - 120px); width: 120px; height: 120px; background: white; padding: 8px; border-radius:50%; z-index: 3; background: none; }
.button-programm-home { position:absolute; top: calc(100dvh - 200px); left: auto; right: 40px; width: 120px; height: 120px; z-index: 3 }

.egge { position: relative; top: -170px; left: calc(100% - 35px); width: 50px; height: 50px; background: white; z-index: 2 }

@-webkit-keyframes rotor {
    from {
        -webkit-transform: rotate(0deg);
    }
    to {
        -webkit-transform: rotate(360deg);
    }
}
@-moz-keyframes rotor {
    from {
        -moz-transform: rotate(0deg);
    }
    to {
        -moz-transform: rotate(360deg);
    }
}

#rotor { -webkit-animation: rotor 8s linear infinite; -moz-animation: rotor 8s linear infinite; filter: drop-shadow(0 0 2px rgba(0,0,0,0.4)); }



.runter-start { top: calc(100dvh - 60px)!important }


.runter { height: 30px; position:relative; top: -30px; padding: 0 10px 0 30px; display:inline-block; left: 0; background: white; background-image: url(/img/doppelpfeil-runter-statisch.svg); background-repeat: repeat-y; animation: imageMovement 3s linear infinite; animation:none; }
@keyframes imageMovement {
    100% {
        background-position-y: 30px; /* width of the image */
    }        
}
.runter h2, .rauf h2 { font-weight: 500; font-size: 20px; line-height:160%; letter-spacing: 0; margin: 0; padding: 0 }

.rauf { height: 30px; position:relative; padding: 0 10px 0 30px; display:inline-block; left: 0; background: white; background-image: url(/img/doppelpfeil-rauf-statisch.svg); background-repeat: repeat-y; animation: scrollup 3s linear infinite; animation:none }
@keyframes scrollup {
    0% {
        background-position-y: 30px; /* width of the image */
    }        
}

#wasdas a { border-bottom:3px solid black }


/* Inhalt */

.container { height: calc(100dvh - 30px); height: auto; padding: 15px 15px 0 15px }
.container h2 {  }
.content { background:pink; background: #ECDCB9; background:Wheat; padding: 15px }
.content-programm { background: #A8D3AF }
.content-angebote { background: #F9AA8F }
.content-raeume-mieten { background: #94D5EA }
.content-mitwirken { background: #F6ADCD }
.content-ueber-uns {  }
.content-kontakt { background: #9B95C9 }


.content p { margin: 0 0 10px 0 }
.content h1 { padding-top: 40px }
.content h3 { font-size: 1em; text-transform: auto; margin: 0 0 0.5em 0; padding: 0 }

.content a.button, .switch a.button, .event a.button { 
font-size:0.9em; line-height:120%; font-weight:500; text-transform:none; letter-spacing:0; text-decoration:none;
margin: 0 5px 8px 0; padding: 7px 7px 6px 7px; display:inline-block; background: black; color:white; border-radius:6px; border-radius: 0;
}

.bildersammlung {  }
.bildersammlung, .bildersammlung a, .bildersammlung a:hover, .bildersammlung h1, .bildersammlung .gallerycomment { color: white }
.bildersammlung .gallerycomment a { color: white; text-decoration: none; border-bottom: 1px solid white }
.bildersammlung a:hover { color: white }

.bildersammlung h1 { text-transform:uppercase }
.bildersammlung h2 { color: white }

.teamgalerie a:hover .legende { color: white }
.galleryclose { background: black; padding: 10px }
.galleryclose svg { color: white; width: 30px; height: 30px }

/* Programm */

/* .content-programm { line-height: 200% } */

.programmtitel { margin-left:-4px }
#filter { line-height: 150% }
#filter ul { line-height: 150%; list-style: none; margin:0 12px 14px 0; padding:0; display: inline-block; }
#filter ul li { display:inline-block; color: black; border: 1px solid black; margin:0 0 0 -1px;  }
#filter ul li a { color: black; padding: 3px 4px }
#filter ul li.aktiv a { background: black; color: white }
#filter ul.sparten li a { padding: 3px 3.5px }

#filter .programm-prev { width: 25px; text-align: center }
#filter .programm-prev a img { width: 15px; height: auto; margin-top:-2px }
#filter .programm-next { width: 25px; text-align: center }
#filter .programm-next a img { width: 15px; height: auto; margin-top:-2px }

#filter .programm-monat { width: 46.5px; text-align: center }
#filter .programm-jahr { width: 55.5px; text-align: center }

.content-programm a { color: black; text-decoration: none }

.content-programm a:hover { text-decoration: none }
.content-programmx .aktiv { background: black; color: white }

.programmbild { aspect-ratio: 3 / 2 }
/* .event:nth-of-type(6n) .programmbild { aspect-ratio: 1 / 5 !important} */
.programmbild-1 { aspect-ratio: 4 / 3 !important }
.programmbild-2 { aspect-ratio: 7 / 6 !important }
.programmbild-3 { aspect-ratio: 1 / 1 !important }


.programm a, .programm a:hover { text-decoration:none }
.programm .event-text { max-width: auto }
.programm .datum { font-size: 11px; line-height: 120%; font-weight:500; font-style:normal; text-transform: uppercase; letter-spacing: 0.15em; margin: 4px 0 0 0; padding: 0}
.programm .datum span { color: black; margin: 0; padding:2px 3px 3px 0; background:white; -webkit-box-decoration-break: clone; box-decoration-break: clone }
.programm h1 { color: black; font-size:18px; text-transform:uppercase; letter-spacing:0.01em; line-height:115%; margin: 3px 0 0 0; padding: 0 !important; }
.programm h1 span { margin: 0 0 0 -5px; padding: 1px 5px 2px 4px; background: white; -webkit-box-decoration-break: clone; box-decoration-break: clone }
.programm h2 { color: black; font-size: 15px; line-height: 130%; font-weight:500; margin: 1px 0 0 0; padding: 0 }
.programm h2 span { margin: 0; padding:0 5px 3px 0; background:white; -webkit-box-decoration-break: clone; box-decoration-break: clone }
.programm h3 { font-size: 11px; line-height: 120%; font-weight:500; font-style:normal; text-transform: uppercase; letter-spacing: 0.15em; margin: 4px 0 25px 0; padding: 0}
.programm h3 span { color: black; margin: 0; padding:2px 3px 3px 0; background:white; -webkit-box-decoration-break: clone; box-decoration-break: clone }

.programmliste .datum span, .programmliste h1 span, .programmliste h2 span, .programmliste h3 span { background: none }

.calendar-month { margin: 0 -4px; width: 40px; }
.calendar-month span { width: 60px; border-top: 1px solid black; border-bottom: 1px solid black; padding:2px 4px }
a.calendar-nav { width: 40px }

.event-datum, .event-art-ort-zeit { font-size: 0.9em; line-height: 120%; font-weight:500; font-style:normal; text-transform: uppercase; letter-spacing: 0.15em; margin: 4px 0 25px 0; padding: 0 }
.event-datum { margin-top: 60px; margin-bottom: 0 }
h1.event-titel { margin: 10px 0; padding: 0; line-height: 110%; }

.besetzung p { margin: 0 0 0.5em 0 }
.besetzung p:last-of-type { margin-bottom: 0 }
.event-back { margin-top: 30px }

.event iframe { max-width: 100% }


.kacheltext { margin-bottom:25px }
.kachel h1 { color: black; font-size:18px; text-transform:uppercase; letter-spacing:0.01em; line-height:115%; margin: 3px 0 0 0; padding: 0 !important; }
.kachel h1 span { margin: 0 0 0 -5px; padding: 1px 5px 2px 4px; background: white; -webkit-box-decoration-break: clone; box-decoration-break: clone }
.kachel h2 { color: black; font-size: 15px; line-height: 130%; font-weight:500; margin: 1px 0 0 0; padding: 0 }
.kachel h2 span { margin: 0; padding:0 5px 3px 0; background:white; -webkit-box-decoration-break: clone; box-decoration-break: clone }
.kachel h3 { font-size: 11px; line-height: 120%; font-weight:500; font-style:normal; text-transform: uppercase; letter-spacing: 0.15em; margin: 4px 0 25px 0; padding: 0}
.kachel h3 span { color: black; margin: 0; padding:2px 3px 3px 0; background:white; -webkit-box-decoration-break: clone; box-decoration-break: clone }

.uk-accordion, .klappaufundzu { margin: 25px 0 }
.uk-accordion-title { color: black; font-size: 28px; line-height: 125%; font-weight:500; margin: 2px 0 0 0; padding: 0; text-indent: 22px hanging }
.uk-accordion-title:hover { color: black }
/*
.uk-accordion-title::before { float: left; margin: 0; background: url(/img/plus.svg) 0 11px no-repeat; width: 16px; height:30px; margin: 0 6px 0 0 }
.uk-open .uk-accordion-title::before { background: url(/img/minus.svg) 0 11px no-repeat}
*/
.uk-accordion-content { padding-bottom: 25px; padding-left:22px }
.uk-accordion-content h1 { display: none }

.klappaufundzu>:nth-child(n+2) { margin-top: 20px }
.klappaufundzu .klappaufundzu-icon { display: inline-block; background: url(/img/plus.svg) 0 8px no-repeat; width: 16px; height:25px; margin: 0 }
.klappaufundzu .uk-open .klappaufundzu-icon { background-image: url(/img/minus.svg) }
.klappaufundzu .uk-accordion-content { padding-bottom: 25px; padding-left:22px; margin-top: 20px }

/* Forms */

form {display:block; margin:0; padding:0;}
input[type=text], input[type=email], input[type=tel], textarea {
    -webkit-appearance:none;
    width:100%;
    display:block;
    box-sizing:border-box;
    font:inherit;
    font-size:inherit;
    border:1px solid #D9D9D9;
    background-color:#F8F8F8;
    padding:10px;
    border-radius:0;
    line-height:120%;
    margin:0 0 15px;
}
input[type=checkbox] {
display: inline-block;
height: 18px;
width: 18px;
}

::placeholder {color:#8C8C8C;}

.fbsubmit {
-webkit-appearance:none;
border-radius:0;
font-family:inherit;
font-size:16px;
line-height:18px;
font-weight:500;
text-transform:none;
letter-spacing:0.05em;
text-decoration:none;
margin:15px 0;
padding:10px 12px 8px 14px;
display:inline-block;
background:;
color:;
border:none;
}

.realfooter { position:relative; padding: 15px }
.realfooter a, .realfooter a:hover { border: none }
.realfooter-rauf { position:absolute; bottom:13px; left:15px }





















/* Media Queries */


@media screen and (min-width:767px) {
.wasdas { font-size:1.5em; line-height: 150% }
.wasdas a { border-bottom: 2px solid black }
}

@media screen and (max-width:639px) {
.frame { max-height: calc(100dvh) }
#home { padding: 10px }

header { padding-top:10px; padding-left: 15px; padding-right: 10px }
.logo { height:32px; margin-right: 10px }

.fancylogo { padding-left: 9px }
.fancylogo img { width: 200px }

.uk-navbar-dropdown-bu { padding: 15px 15px; left: -15px!important; top: 40px!important; width: 250px; }


.start-container { height: calc(100dvh - 20px); padding: 10px 10px 0 10px }
.start-container-start { height: calc(100dvh - 30px); padding: 10px }
footer.start-container { padding-bottom: 10px }

.start-container.realfooter { padding:10px; }
.start-container.realfooter .content { height: calc(100dvh - 55px) }


.uk-slideshow-items { height: calc(100vh - 20px); }
.slidertext { max-width: 100% }
.slidertext h1 { font-size: 26px }
.slidertext h1 span { margin-left: -3px; padding-right: 5px }
.slidertext h2 { font-size: 18px; line-height: 135%; margin-left: 0 }
.slidertext h2 span { padding: 2px 5px 2px 0; margin-left: 0; }
.slidertext h3 { font-size: 12px; line-height:140%;margin: 0 0 0 0; padding: 0; padding-top:3px;}
.slidertext h3 span { margin-left: 1px; padding-left: 0}
.button-programm-home { position:relative; top: calc(80px - 100dvh); left: 20px; width: 90px; height: 90px }

h1 { font-size: 27px }
.content h1 { padding-top: 70px }

.runter { top: auto; bottom: 100dvh }
.runter-start { top: calc(100dvh - 50px) !important }

.container { height: calc(100dvh - 20px); height: auto; padding: 10px 10px 0 10px }
.content { padding: 10px }

.klappaufundzu .uk-accordion-content { padding-bottom: 15px; padding-left:0 }
.klappaufundzu .uk-accordion-title { font-size: 22px; line-height: 125%; margin: 2px 0 0 0; padding: 0; text-indent:18px hanging }
.klappaufundzu .klappaufundzu-icon { display: inline-block; background: url(/img/plus.svg) 0 5px no-repeat; width: 14px; height:20px; margin: 0 }

/* .content-programm { padding: 0 } */
.content-monatsprogramm { padding: 5px 10px 40px 10px !important; margin-bottom: 10px !important }

.eventbild { margin: 0 -10px }

.uk-grid-small>.uk-grid-margin { margin-top: 10px }

.footer-home .content div { margin-top: 40px }
.footer-home .footerlogo { display: none }
.realfooter { padding: 10px }
.realfooter-rauf { bottom:10px; left:10px }

.programmbild { aspect-ratio: 4 / 3 !important }
}
