/* cmsms stylesheet: EW2023 modified: Dienstag, 1. April 2025 11:55:27 */
@font-face { font-family: 'BauPro'; src: url('/fonts/myfonts/FFBauWebProRegular/font.woff2') format('woff2'), url('/fonts/myfonts/FFBauWebProRegular/font.woff') format('woff');
  font-weight: 400; ; font-display:swap }
@font-face { font-family: 'BauPro'; src: url('/fonts/myfonts/FFBauWebProMedium/font.woff2') format('woff2'), url('/fonts/myfonts/FFBauWebProMedium/font.woff') format('woff');
  font-weight: 500; font-display:swap }
@font-face { font-family: 'BauPro'; src: url('/fonts/myfonts/FFBauWebProBold/font.woff2') format('woff2'), url('/fonts/myfonts/FFBauWebProBold/font.woff') format('woff');
  font-weight: 700; font-display:swap }


html, body {min-height:100vh; padding:0; margin:0;}

html {background-color:#f5f5f5}

body {
font-size:15px;
line-height:150%;
font-family:'BauPro', sans-serif;
font-weight: 500;
background-color:transparent;
color: #222;
-webkit-font-smoothing: antialiased;
-moz-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
-o-font-smoothing: antialiased;
font-smoothing: antialiased;
text-rendering: optimizeLegibility;
}

#wrap {padding:50px;}
#header {height:55px; overflow:hidden;}
#content {background-color:#fff; padding:15px;}

#logo {display:inline-block; padding:7px 18px; background-color:#fff;}
#logo img {display:block; height:41px}


/* Content Styles */

iframe {width:100%;}

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

h1 {
font-size:17px;
line-height:120%;
text-transform:uppercase;
letter-spacing:0.02em;
margin: 0 0 1em 0;
}

h2 {
font-size:17px;
line-height:120%;
}

h2, h3, h4 {
margin: 0 1em 0 0;
font-size:16px;
line-height:18px;
letter-spacing:0;
}

p {margin: 0 0 1em 0}

a { color: #222; text-decoraton: none }
em { color: #222; font-style: normal }

.uk-icon { background-image: none !important }


/* Content */
#content {font-size:15px; line-height:150%; font-weight:500;}

#content h1 { font-size:19px;letter-spacing:0.02em}
#content img { width: 100%; height: auto }
#content img.logo { width: 180px; height: auto}
#content img.foto-klein { width: 320px; height: auto}

#content ul {margin: 0.5em 0 1em 0}
#content a, #content a:hover { color:#222; text-decoration: none; background-image: linear-gradient(to right, #222 100%, transparent 0%);
background-position: 0em 1.3em; background-repeat: repeat-x; background-size: 3px 2px; display:inline-block; }


#content a.button, #switch a.button { 
font-size:16px;
line-height:18px;
font-weight:500;
text-transform:none;
letter-spacing:0.05em;
text-decoration:none;
margin:2px 0;
padding:8px 6px 6px 8px;
display:inline-block;
background:#222;
color:#fff;
}

#content .back a {
margin:20px 0 5px -15px;
padding:3px 6px 5px 16px;
background: #222;
color: #fff;
display:inline-block;
text-transform: uppercase;
text-decoration:none;
letter-spacing: 0.05em;
font-weight: 700;
}

#content table.gewerbetabelle img { max-width:240px; min-width: 180px; max-height:130px }

#content table.gewerbetabelle td:first-child a, #content table td:first-child a:hover { background: none; background-position:auto; display: block }
#content table.gewerbetabelle td:first-child { text-align: left !important }

#content a#cropper {background-image:none;}
#cropper img {width:20px}
.cropped, #content.cropped h1 {height:20px; overflow:hidden;}
.icon-cropped {display:none}
#content.cropped .icon-cropped {display:block;}
#content.cropped .icon-open {display:none;}

.bar-icon { display: inline-block; width: 36px; height: 36px; padding: 4px; margin-right: 5px; background: #222 }

.submenu ul { list-style: none; margin: 0 0 1em 0 !important; padding: 0; }
.submenu ul li { display: inline-block; font-size:19px; line-height:120%; text-transform:uppercase; letter-spacing:0.02em; margin: 0 1em 0.4em 0; font-weight:700 }
.submenu ul li a { background-image: none !important; padding-bottom: 5px }
.submenu ul li a.currentpage { background-image: linear-gradient(to right, #222 100%, transparent 0%) !important; background-position: 0em 1.3em; background-repeat: repeat-x; background-size: 3px 2px }

/* 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:#222;
color:#fff;
border:none;
}


/* Akkordeon Nav */

#toggle {cursor:pointer; background-color:#222; color:#fff; position:absolute; padding-top:12px; box-sizing:border-box; top:50px; right:50px; height:55px; width:55px; text-align:center;}
#mobile {background-color:#222; padding:5px 10px 5px 15px; font-weight:500; position:relative; z-index:1000;}

.uk-open>.uk-accordion-title::before {background-image:url('/img/chevron-down-white.svg'); background-size:18px}
.uk-accordion-title::before {background-image:url('/img/chevron-right-white.svg'); background-size:18px}
.navi-noshow::before { display: none }

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

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

.social-bar {display:inline-block;color: #fff;margin:2px 0 0 0;padding:0}
.social-icon {height:28px;width:22px;margin:4px 4px 0 0;padding:8px 0 0 0; background:#222;text-align:left;overflow:hidden}
.social-icon:hover {color:#fff}

.yt { width: 30px; padding:4px 0 4px 4px; margin-bottom: -2px}



/* Programm */

.cal-upcominglist a, #news a { text-decoration:none; color:#222 }

.cal-upcominglist .calendar-event {
font-weight: 500; letter-spacing: 0;
padding: 0; margin: 0 0 5px 0; min-height: 50px;
background: #fff; border-left: 50px solid #222;
}

.cal-upcominglist .four {
text-align: center; width: 50px; color: #fff; float: left;
font-size: 22px; line-height: 22px; text-transform: uppercase; letter-spacing: 1px;
margin-left: -50px; padding: 7px 0 0 0;
}

.cal-upcominglist .wochentag { font-weight: 500; font-size: 12px; line-height: 12px; letter-spacing: 2px }
.cal-upcominglist .monatstag { font-size: 22px; line-height: 22px; font-weight: 700 }
.cal-upcominglist .monat { font-size: 12px; line-height: 12px; letter-spacing: 2px; padding: 1px 0 0 0; font-weight: 500 }

.cal-upcominglist h2 {
font-family: 'BauPro'; font-weight: 700; margin: 0;
font-size: 17px; line-height: 19px; text-transform: uppercase;
padding: 5px 5px 0 7px; white-space: nowrap; overflow: hidden;
}

.calendar-date { padding: 1px 5px 5px 0;
line-height: 13px; font-size: 12px; text-transform: uppercase; letter-spacing: 2px; text-align: left;
}

.calendar-summary { padding: 0 5px 0 7px; line-height: 18px; overflow: hidden}
.calendar-info  {
padding: 1px 5px 5px 7px;
line-height: 13px; font-size: 12px; text-transform: uppercase; letter-spacing: 2px;
text-align: left; white-space: nowrap; overflow: hidden;
}
.calendar-date-from {
background: #222; color: #fff; display: inline-block; padding: 7px 4px 4px 4px; margin-left: -15px;
font-size: 20px; line-height: 21px; text-transform: uppercase; letter-spacing: 2px;
}


/* Event only */

#content .calendar-date { margin: 0 0 5px 0 }
#content .calendar-event h2 {font-size:19px; line-height:120%; text-transform:uppercase; letter-spacing:0.02em; margin:0;}
#content .calendar-info {padding-left:0; margin: 8px 0 1.5em 0 }
#content .calendar-summary { padding-left: 0 }
#content .besetzung { margin: 0.5em 20px 1.5em 3px; padding: 0 0 0 15px; border-left: 3px solid #222; }
#content .calendar-details { padding-bottom: 0.75em }
#content .calendar-details p { margin: 0 0 0.5em 0 }


/* Programm-Filter */

#filter {background-color:#222; padding:10px 10px 10px 20px}
#filter h1 { font-size:19px; line-height:120%; text-transform:uppercase; letter-spacing:0.02em;
margin: 0 0 1em 0;color:#fff; margin:0; padding:10px 0;}
#filter ul {clear:both; margin: 0; padding: 0}
#filter a {background:none; text-decoration:none;}
#filter ul li a {color:#aaa; display:block; font-weight:500; padding:5px 0}
#filter ul li a.currentpage {color:#fff}

#springer {color:#fff; height: 32px; float:left; margin-left: -5px}
#springer a {color:#fff}
#springer .calendar-month {margin-top:5px; width:25px; text-align: center}
#springer .calendar-year {margin-top:5px; width:43px; text-align: left}

#springer .calendar-prev, #springer .calendar-next {margin-top:4px;}
#springer .calendar-prev, #springer .calendar-month, #springer .calendar-year, #springer .calendar-next {float:left;}


/* News & Events Home */

.news {
display:block; 
font-weight:500;
padding:5px;
margin:0 0 -5px 0;
min-height:55px;
background-color:#fff;
max-width:390px;
}

#switch {width:100%; max-width:450px;}
#switch span {padding:10px 0 0 9px;}
.switch-tabs {list-style:none; padding:0; margin:0; width:50px;}
.switch-tabs li a {background-color:#222; color:#fff !important; width:50px; height:50px; display:block; margin:0 0 5px; overflow:hidden;}
.switch-tabs li.uk-active a {background-color:#fff; color:#222 !important;}
.switch-item {background-color:#fff; height:160px; padding:10px;}

.switch-tabs li a div.menu { background: url(/img/40y-weiss.svg) no-repeat center center; width:100%; height: 100%; background-size: 40px }
.switch-tabs li.uk-active a .menu { background: url(/img/40y-schwarz.svg) no-repeat center center; background-size: 40px }




/* Infoscreen */

.infoscreen-eventliste { hyphens: auto }
.infoscreen-legende { margin-bottom:10vh }
.infoscreen-titel { font-size:3.5vw; font-weight:700; text-transform:uppercase; letter-spacing:0.02em; line-height:110%; color: black !important; margin: 0 }
.infoscreen-titel-text { background-color: white; display:inline; padding: 1vw 0.8vw 0.3vw 0.8vw; box-decoration-break: clone; -webkit-box-decoration-break: clone }
.infoscreen-untertitel { margin-left:3.2vw }
.infoscreen-untertitel p { font-weight:500; font-size:2.2vw; line-height:150%; background:white; padding:0 0.8vw; color: black; display:table }


















/* Media Queries */

@media screen and (min-width:960px) {
#content, #programm, #filter {margin-top:55px;}
#mobile, #filter {display:block !important; max-width:238px}
/* #mobile {display:none !important;} */
#events {position:absolute; bottom:50px; right:50px;}
#news {position:absolute; top:50px; right:50px;}
#events .calendar-event {min-width:400px}
#filter .uk-float-left {float:none !important;}
}

@media screen and (max-width:959px) {
#events {padding:45px 50px 50px 50px;}
.news {margin:0 50px;max-width:100%}
#mobile {position:absolute; top:100px; right:50px;}

#filter ul li {display:inline-block;  margin-right:20px;}
#switch {padding:0 50px; box-sizing:border-box; max-width:100%;}
}

@media screen and (min-width:640px) and (max-width:959px) {
#mobile { width: 257px; float: right;}
}

@media screen and (max-width:639px) {
#events {padding:25px 15px 15px 15px;}
.news {margin:0 15px;}
#wrap {padding:15px 15px 30px 15px;}
#header {background-color:#fff;}
#content {margin-top:15px;}
#toggle {top:15px; right:15px;}
* {white-space:normal !important;}
#main {margin:0 !important}
.legende { font-size: 13px }
#mobile {top:70px; right:15px; left:15px}
#filter { padding: 10px 5px 10px 15px; margin-bottom:-25px; }
#filter h1 { letter-spacing: 0.05em }
#switch { padding: 0 15px; margin-bottom: 10vh; }
#switch h1, #switch p { margin-bottom: 0.5em }
}

@media screen and (max-width:320px) {
#logo img { height: 36px; margin-top: 3px; }
#springer .calendar-month {margin-top:5px; width:26px; text-align: center}
#springer .calendar-year {margin-top:5px; width:42px; text-align: center}
}
/* cmsms stylesheet: fonts modified: Dienstag, 12. September 2023 13:48:20 */
/**
 * @license
 * MyFonts Webfont Build ID 3993139, 2021-01-05T02:00:32-0500
 * 
 * The fonts listed in this notice are subject to the End User License
 * Agreement(s) entered into by the website owner. All other parties are 
 * explicitly restricted from using the Licensed Webfonts(s).
 * 
 * You may obtain a valid license at the URLs below.
 * 
 * Webfont: FF Bau Web Pro Medium by FontFont
 * URL: https://www.myfonts.com/fonts/fontfont/bau-pro/medium/
 * 
 * Webfont: FF Bau Web Pro Bold by FontFont
 * URL: https://www.myfonts.com/fonts/fontfont/bau-pro/bold/
 * 
 * 
 * Webfonts copyright: 2010 published by FontShop International GmbH
 * 
 * © 2021 MyFonts Inc
*/


/* @import must be at top of file, otherwise CSS will not work */
@import url("//hello.myfonts.net/count/3cee33");
  
@font-face {
  font-family: 'BauPro';
  src: url('/fonts/myfonts/FFBauWebProMedium/font.woff2') format('woff2'), url('/fonts/myfonts/FFBauWebProMedium/font.woff') format('woff');
  font-weight: 500;
}
@font-face {
  font-family: 'BauPro';
  src: url('/fonts/myfonts/FFBauWebProBold/font.woff2') format('woff2'), url('/fonts/myfonts/FFBauWebProBold/font.woff') format('woff');
  font-weight: 700;
}



/**
 * @license
 * MyFonts Webfont Build ID 3993138, 2021-01-05T02:00:19-0500
 * 
 * The fonts listed in this notice are subject to the End User License
 * Agreement(s) entered into by the website owner. All other parties are 
 * explicitly restricted from using the Licensed Webfonts(s).
 * 
 * You may obtain a valid license at the URLs below.
 * 
 * Webfont: FF Bau Web Pro Regular by FontFont
 * URL: https://www.myfonts.com/fonts/fontfont/bau-pro/regular/
 * Copyright: 2010 published by FontShop International GmbH
 * 
 * 
 * 
 * © 2021 MyFonts Inc
*/


/* @import must be at top of file, otherwise CSS will not work */
@import url("//hello.myfonts.net/count/3cee32");
  
@font-face {
  font-family: 'BauPro';
  src: url('/fonts/myfonts/FFBauWebProRegular/font.woff2') format('woff2'), url('/fonts/myfonts/FFBauWebProRegular/font.woff') format('woff');
  font-weight: 400;
}
/* cmsms stylesheet: forms modified: Dienstag, 12. September 2023 13:45:25 */
form {
    margin:0;
    padding:0;
    display:block;
}

input {
    font-family:'Helvetica W01 Roman', sans-serif;
    font-size:1em;
}

input[type="text"] {
    display:block;
    line-height:100%;
    padding:9px 10px;
    margin:0 0 10px;
    border:1px solid #ccc;
    width: 100%;
    box-sizing: border-box;
    border-radius: 0;
}

.radio {
    padding:0 0 5px;
}

.radio div {
    padding:0 0 5px;
}

input.fbsubmit {
    display:block;
    line-height:100%;
    padding:10px 0;
    margin:0;
    background:#222;
    color:#fff;
    font-weight:bold;
    border:none;
    cursor:pointer;
    width:50%;
    box-sizing: border-box;
    -webkit-appearance:none;
    border-radius: 0;
}

.form-section {
    padding:0 0 20px;
}

.error_message {
    color:#c00;
}
