/* cmsms stylesheet: JD 2023 modified: Mittwoch, 21. Oktober 2026 18:09:06 */
@font-face { font-display: swap; font-family: 'Lato'; font-style: normal; font-weight: 300;   src: url('/fonts/lato-v24-latin-300.woff2') format('woff2') }
@font-face { font-display: swap; font-family: 'Lato'; font-style: normal; font-weight: 400;   src: url('/fonts/lato-v24-latin-regular.woff2') format('woff2') }
@font-face { font-display: swap; font-family: 'Lato'; font-style: normal; font-weight: 700;   src: url('/fonts/lato-v24-latin-700.woff2') format('woff2') }
@font-face { font-display: swap; font-family: 'Lato'; font-style: normal; font-weight: 900;   src: url('/fonts/lato-v24-latin-900.woff2') format('woff2') }



html { background: #ebebeb }
.gradient { background: #e43187; background: linear-gradient(90deg, rgb(228, 49, 135) 0%, rgb(118, 118, 118) 100%); height: 7px }

body, table { font-family: 'Lato', sans-serif; font-size: 18px; line-height: 150%; color: #38373A }
.content a, .content a:hover { color: #e43187; text-decoration: none }
a:hover { text-decoration: none }

.logo { display: inline-block }
.logo img { width: 198px; height: auto }

header { padding: 40px 0 20px 0 }
h1, h2, h3, h4, h5, h6 { font-family: 'Lato', sans-serif }
h1 { font-size: 2em; font-weight: normal; color: #ebebeb; margin-left: calc( 50% - 460px ); margin-bottom:50px; line-height: 150%; }
.titel { background: #e43187; display:inline; padding: 5px 10px; box-decoration-break: clone; -webkit-box-decoration-break: clone }
h2 { font-size: 1.7em; line-height: 130% }

.toplinks { display: inline-block; color: #38373A; }
.toplinks a:hover { color: #38373A }
.topicon { padding: 0 10px }
#burger { display: inline-block; color: #e43187; cursor: pointer; }

#menu { font-size: 1.7em; line-height: 180%; padding-bottom: 20vh }
#menu ul { list-style: none; margin: 0; padding: 0 }
#menu a, .menu a:hover { color: #38373A; text-decoration: none }
#menu a.currentpage { color: #e43187 }

.newsbutton { font-weight: 400; font-size:1.2em; line-height:140%; width:120px; height: 120px; color: #e43187 !important; background: white; border-radius:50%; text-align: center; top: 100px; right: 0; z-index:10;
rotate: 15deg; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1), 0 6px 20px 0 rgba(0, 0, 0, 0.15) }
.buttontext { padding-top: 15px; line-height: 120% }

#bildbereich { position: relative }
.bild { height: 60vh; max-height: 600px; max-width:1600px;margin:auto; }
#content { padding: 40px 0 0 0 }
#content a { color: #e43187; border: none; }
#content p { margin: 0 0 1em 0 }



.accordion { padding: 20px 0 }
.uk-accordion-title { font-size: 1.5em; line-height: 120%; color: #38373A !important; padding-left: 27px; }
.uk-accordion-title h3 { padding-left: 0; margin:0; font-size: 1em; line-height: 120% }
.uk-accordion-title:hover { color: #38373A }
.uk-open .uk-accordion-title, .uk-open h3 { color: #38373A }
.uk-accordion-title::before { width: 15px; height: 15px; background-size: contain;float:left; margin: 11px 0 0 -27px; background-image: url("/images/plus.svg") }
.uk-open>.uk-accordion-title::before { background-image: url("/images/minus.svg")}
.uk-accordion-content { color: ; font-size: 1em; line-height: 140%; margin: 15px 0 15px 27px; max-width:700px }
.uk-accordion-content strong { color:  }
.uk-accordion-content ul { list-style:none; padding: 0.5em 0; margin: 0; }
.uk-accordion-content ul li { margin: 0.1em 0; padding: 0 0 0 1em }
.uk-accordion-content ul li:before { margin: 0 0 0 -1em; padding: 0 0.5em 0 0; content: "–" }
.uk-accordion-content a { color: ; border-bottom: 2px solid  }
.uk-accordion-content strong a { color: ; border-bottom: 2px solid  }
.uk-accordion-content h2 { color: ; font-weight: normal }
.uk-accordion-content p { margin: 0 0 0.75em 0 }


.stundenplan { background: white; padding: 0 20px; max-width:560px; }
.stundenplan-tabelle { width: 520px }
.preisliste { background: white; padding: 0 20px; max-width: 660px }
.preisliste-tabelle { width: 620px }
.preisliste-einzel { background: white; padding: 0 20px; max-width: 900px; }
.preisliste-einzel-tabelle { width: 860px }

.button { font-size: 1.3em; background: #e43187; color:white!important; padding: 5px 7px; border-radius: 4px; }

.kaesten { padding: 20px 0 }
.kasten { color: #38373A; background: white; padding: 10px 15px; font-size: 0.85em; line-height:140%;  }
.kasten h3 { color: #38373A; font-size: 1.3em; line-height: 130%; font-weight:700;margin: 1em 0 0.5em 0; }
.kasten h3:first-child { margin-top:0.25em }
.kasten p { margin: 0 0 0.5em 0 }
.kasten ul { margin: 0 0 0.5em 0 }



footer { background: #38373A; color: #ebebeb; line-height: 150%; padding: 20px 0; font-size: 0.9em; }
footer h2 { color: #ebebeb; font-size: 1.5em; line-height: 150%; margin: 0 0 10px 0; }
footer p { margin: 0 0 10px 0; font-size:0.9em; line-height:140%; }
footer a, footer a:hover { color: #e43187; text-decoration: none }

.links p { margin-bottom: 4px }

table p { margin: 0 0 0.5em 0 }
table strong { color: #e43187 }
.pink { color: #e43187 }








/* Responsive */

.mobile { display: none }
.desktop { display: block }


@media screen and (max-height:799px) {
#menu { padding-bottom: 0; padding-top:20px; }
}


@media screen and (max-height:499px) {
#menu { font-size: 1.4em; line-height: 140% }
}


@media screen and (min-width:961px) {
.newsbutton { margin-right: calc(50% - 200px); top: 50px; }
}


@media screen and (max-width:960px) {
h1 { margin: 0 0 40px 0 }
.newsbutton { margin-right:170px }
}

@media screen and (max-width:479px) {
.desktop { display: none }
.mobile { display: block }
.newsbutton { top: 60px; right: 60px; width: 90px; height: 90px; margin-right: 0; font-size:1em; line-height:130%; }
.buttontext { padding-top:12px }
h1 { margin: 0 0 20px 0; font-size: 1.7em }
.bild { height: 40vh }
.toplinks { width: 100%; text-align: center; margin: 0 0 10px 0; }
#menu { padding: 10vh 0 0 0 }
#content { padding: 20px 0 }
}
