@import url(fonts.css);
@import url(registrierung.css);
body {
    font-family: univers-light, sans-serif;
    font-size: 16px;
    line-height: 30px;
    color: #444;
    margin: 0;
}

body:not(.ready){
    opacity: 0;
}
a {
    color: #78b928;
    text-decoration: none;
}

#divLogout{
display: none !important;
}

a:hover {
    color: #5f9621;
}

img {
    display: block;
    max-width: 100%;
}

h1 {
    margin: 0;
    font-family: univers-light, sans-serif;
    color: #444;
    font-size: 26px;
    line-height: 48px;
    font-weight: 300;
}

h2 {
    margin: 0;
    font-family: univers-light, sans-serif;
    color: #444;
    font-size: 22px;
    line-height: 40px;
    font-weight: 300;
}

strong {
    font-family: univers-bold, sans-serif;
    font-weight: inherit;
}

ol,
ul {
    list-style-type: none;
    margin: 0;
    padding: 10px 0;
}

li:before {
    font-family: SchuecoIcon;
    display: inline-block;
    vertical-align: middle;
    line-height: normal;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    font-size: 15px;
    text-decoration: none;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin: -2px 6px 2px 2px;
}

#logoutButton {
    display: none !important;
}

.hide {
    display: none !important;
}

.button-wrapper {
    margin: 20px 0;
}

    .button-wrapper .btn-primary:nth-child(2) {
        margin-left: 20px;
    }


.btn-primary {
    margin: 20px auto;
    padding: 10px 20px;
    position: relative;
    background: #78b928;
    color: #f2f2f2;
    display: inline;
    cursor: pointer;
    font-size: 14px;
    border: 0;
    font-family: univers, sans-serif;
    outline: none;
}

.btn-primary:hover {
    background: #5f9621;
    color: #f2f2f2;
}

.btn-primary.anmelden-button {
    position: relative;
    padding-left: 42px;
}

.btn-primary.anmelden-button:before {
    content: "\EA07";
    font-family: 'SchuecoIcon';
    position: absolute;
    left: 18px;
    top: 4px;
    font-size: 12px;
}


/* *** HEADER *** */

#divLogotext {
    margin: 0 20px 0 20px;
    padding: 15px 0 10px 0;
    border-bottom: 1px solid #DDD;
}

#divLogotext:after {
    content: '';
    display: table;
    clear: both;
}


/* --- HEADER --> Subnavigation --- */

#subnavigation {
    font-size: 12px;
    padding: 5px 20px;
    background-color: #F2F2F2;
}

#subnavigation:not(.inc-back) {
    text-align: right;
}

#subnavigation a {
    color: #444;
}

#subnavigation a.back {
    text-transform: uppercase;
}

#subnavigation a.back:before {
    content: "\EA06";
    font-family: 'SchuecoIcon';
    margin-right: 5px;
}

#subnavigation>a:not(:last-child) {
    margin-right: 20px;
}

#subnavigation #language {
    display: inline;
}

#subnavigation #timeout {
    display: inline;
    margin-right: 20px;
}

#subnavigation #language a {
    padding: 3px 5px;
}

#subnavigation #language a.lang_active {
    font-family: univers-bold, sans-serif;
}

#subnavigation #language a:first-child:after {
    content: '';
    margin: 0 -5px 0 5px;
    border-right: 1px solid #DDD;
}


/* --- HEADER --> Logo --- */

#logo img {
    float: left;
    padding: 10px 0;
    width: 128px;
}


/* --- HEADER --> Navigation --- */

.navbar-header .navbar-toggle {
    float: right;
    padding: 10px;
    background-color: transparent;
    border: 0 none;
    outline: none;
}

.navbar-header .navbar-toggle:before {
    content: '\EA0B';
    font-family: SchuecoIcon;
    font-size: 22px;
}

.navbar-header .navbar-toggle span {
    display: none;
}

#navbar-collapse {
    position: fixed;
    top: 0;
    right: -100vw;
    width: 100%;
    height: 100vh !important;
    z-index: 99;
    background-color: #FFF;
    -moz-transition: right 0.26s ease;
    -webkit-transition: right 0.26s ease;
    -o-transition: right 0.26s ease;
    transition: right 0.26s ease;
}

#navbar-collapse.in {
    right: 0;
    width: 100%;
}

#navbar-collapse .navbar-toggle {
    position: absolute;
    top: 20px;
    right: 20px;
}

#navbar-collapse .navbar-toggle:after {
    content: '\EA0F';
    font-family: SchuecoIcon;
    font-size: 20px;
}

#top-menu {
    list-style-type: none;
    margin: 0;
    padding: 70px 20px 20px 20px;
}

#top-menu li a {
    font-family: univers, sans-serif;
    color: #666;
    position: relative;
    display: block;
    padding: 12px 20px 9px 10px;
    border-bottom: 1px solid #DDD;
}

#top-menu li:first-child a {
    border-top: 1px solid #DDD;
}

#top-menu li a:after {
    content: '\EA07';
    font-family: SchuecoIcon;
    font-size: 16px;
    position: absolute;
    right: 0;
}

#top-menu li#naviLanguage {
    display: none;
}


/* --- HEADER --> Keyvisual --- */

#keyvisual {
    margin-top: 0px;
    width: 100%;
    position: relative;
}

#keyvisual img.keyvisual {
    width: 100%;
}

#keyvisual-banner {
    position: absolute;
    color: #000;
    font-size: 40px;
    z-index: 20;
    top: 10%;
    left: 40px;
    font-weight: bold;
    padding: 20px;
}

#keyvisual-banner.dark {
    color: #fff;
}

#keyvisual-banner>span {
    font-size: 18px;
    font-family: 'univers-bold';
    text-transform: uppercase;
    display: block;
    margin-bottom: 10px
}


/* --- HEADER --> Top Navigation --- */

.top-navigation {
    display: flex;
    flex-wrap: wrap;
}

.top-navigation .nav-item:not(:last-child):after {
    content: '\EA07';
    font-family: 'SchuecoIcon';
    margin: 0 10px;
    font-size: 12px;
    font-weight: bold;
}

.top-navigation .nav-item {
    font-family: 'univers-bold';
    font-size: 14px;
}

.top-navigation .nav-item a {
    color: #444;
}


/* *** CONTENT *** */

#divContent {
    margin: 0 auto;
    padding: 40px 20px;
    max-width: 1430px;
}


/* *** KONTAKT *** */

.contact-wrapper .contact {
    font-size: 16px;
    line-height: 24px;
    font-family: 'univers-light';
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    flex-shrink: 0;
}

.contact {
    padding: 20px 0;
}

.contact-wrapper .contact .contact-img {
    width: 30%;
}

.contact-wrapper .contact .contact-img img {
    width: 118px;
    border-radius: 50%;
}

.contact-wrapper .contact .contact-content {
    min-width: calc(70% - 20px);
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    margin-left: 20px;
}

.contact-content span {
    padding-bottom: 10px;
}

.contact-wrapper:not(.contact-item) .contact .name {
    font-size: 15px;
    line-height: 24px;
    font-family: univers-bold, sans-serif;
    padding-bottom: 10px;
}

.contact-wrapper .contact .telefon,
.contact-wrapper .contact .email {
    display: block;
    font-family: univers, sans-serif;
    font-size: 15px;
    font-weight: 400;
    color: #78b928;
}

.contact-wrapper .contact .telefon {
    margin: 10px 0;
}

.contact-wrapper .contact .telefon:before {
    content: "\EA35";
    font-family: 'SchuecoIcon';
    font-size: 14px;
    margin-right: 5px;
}

.contact-wrapper .contact .email {
    margin-bottom: 10px;
}

.contact-wrapper .contact .email:before {
    content: "\EA2B";
    font-family: 'SchuecoIcon';
    color: #84bd50;
    margin-right: 5px;
}


/* custom 1809: sidebar + contact item */

.contact-wrapper.contact-item {
    padding: 15px 20px;
    background-color: #F2F2F2;
    margin-bottom: 15px;
    margin-top: 40px;
}

.contact-wrapper.contact-item .contact {
    padding: 0;
}

.contact-wrapper.contact-item .contact .contact-img {
    width: calc(30% - 20px);
    margin-right: 20px;
}

.contact-wrapper.contact-item .contact .contact-content {
    margin-left: 0;
}

.contact-wrapper.contact-item .contact .intro {
    font-size: 15px;
    line-height: 24px;
    font-family: univers-bold, sans-serif;
    padding-bottom: 10px;
}


/* *** SIDEBAR *** */

#sidebar .sidebar-header {
    margin-bottom: 20px;
}

#sidebar {
    margin-top: 70px;
}

#sidebar>div {
    padding: 15px 20px;
    background-color: #F2F2F2;
}

#sidebar>div:not(:last-child) {
    margin-bottom: 15px;
}

#sidebar .headline:not(.small) {
    font-size: 15px;
    text-transform: uppercase;
    font-family: 'univers-bold';
}

#sidebar ol {
    padding: 20px 0;
}

#sidebar .download-wrapper li:before {
    content: '\EA14';
    font-family: 'SchuecoIcon';
}

#sidebar .link-wrapper li:before {
    content: '\EA15';
    font-family: 'SchuecoIcon';
}

/* *** SIDEBAR GK *** */
body.gruppenportal #sidebar.gk-sidebar {
    height: fit-content;
    max-width: 100vw;
}

body.gruppenportal #sidebar.gk-sidebar > div {
    width: 100%;
}



/* *** FOOTER *** */

#divFooter {
    background-color: #F2F2F2;
    border-top: 1px solid #DDD;
}

#divFooter a {
    font-size: 14px;
    color: #fff;
    display: block;
    padding: 7px 0 5px 0;
}

#divFooter a:last-child {}

#divFooter #upper-footer,
#divFooter #lower-footer .inner-footer {
    margin: 0 auto;
    padding: 20px;
    max-width: 1430px;
}

#divFooter #upper-footer .social-media-title {
    color: #444;
    font-size: 14px;
    font-family: univers-bold, sans-serif;
}

#divFooter #upper-footer .social-media-list {
    list-style: none;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    padding: 0;
}

#divFooter #upper-footer .social-media-list li {
    margin: 0 15px 10px 0;
}

#divFooter #upper-footer .social-media-list li a {
    color: #444;
}

#divFooter #upper-footer .social-media-list li a:after {
    font-size: 20px;
    content: '';
    font-family: 'SchuecoIcon';
}

#divFooter #upper-footer .social-media-list li a.icon-facebook:after {
    content: '\EA1C';
}

#divFooter #upper-footer .social-media-list li a.icon-xing:after {
    content: '\EA4A';
}

#divFooter #upper-footer .social-media-list li a.icon-youtube:after {
    content: '\EA4B';
}

#divFooter #upper-footer .social-media-list li a.icon-twitter:after {
    content: '\f099';
    font-family: 'fontAwesome';
}

#divFooter #upper-footer .social-media-list li a.icon-linkedin:after {
    content: '\EA27';
}

#divFooter #upper-footer .social-media-list li a.icon-instagram:after {
    content: '\EA26';
}

#divFooter #lower-footer {
    font-family: univers, sans-serif;
    font-size: 14px;
    color: #FFF;
    background-color: #78b928;
}


/* ** Welcome ** */

.signature {
    display: flex;
    justify-content: space-between;
    margin: 40px 0 40px 0;
    max-width: 400px;
}

.signature-img-wrapper {
    height: 120px;
    display: flex;
    align-items: flex-end;
    margin-bottom: 12px;
}

.contact-info {
    display: block;
    font-family: univers, sans-serif;
    font-size: 15px;
    font-weight: 400;
    color: #78b928;
}

.fa-phone:before {
    content: "\EA35";
    font-family: 'SchuecoIcon';
    font-size: 14px;
    margin-right: 5px;
}

.fa-envelope:before {
    content: "\EA2B";
    font-family: 'SchuecoIcon';
    color: #78b928;
    font-size: 16px;
    margin-right: 5px;
}

.headline.events {
    font-size: 26px;
    font-family: 'univers-light';
    margin: 40px 0 20px;
}

#site-home .event-wrapper-headline>div,
#site-home .event-wrapper>div {
    width: 20%;
}

.legend {
    margin: 40px 0 70px;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}

.legend>div {
    margin-left: 0px;
    margin-bottom: 10px;
    margin-right: 30px;
    display: flex;
}

.legend>div img {
    margin-right: 20px;
    margin-top: 5px;
    width: 20px;
    height: 20px;
}

#site-home ul {
    list-style-type: disc;
    margin: 0;
    padding: 0 20px 20px 20px;
}

#site-home ul li {
    padding-left: 5px;
}

#site-home .detail-header {
    padding-bottom: 16px;
}


/* ** Agenda ** */

.agenda-pdf {
    margin: 20px 0;
}

.download {
    cursor: pointer;
}

.download:before {
    content: '\EA14';
    font-family: 'SchuecoIcon';
    margin-right: 5px;
}


/* Timeline */

#site-agenda .list-wrapper {
    margin-top: 20px
}

#site-agenda .day-select {
    width: 100%;
    display: flex;
    border-bottom: 1px solid #ddd;
}


/* Day Select */

.day-select {
    margin-bottom: 15px;
}

.day-select>span {
    display: inline-block;
    text-align: center;
    background: #f2f2f2;
    color: #444;
    padding: 8px 24px;
    line-height: 20px;
    margin-right: 8px;
    cursor: pointer;
    font-size: 14px;
    font-family: 'univers-bold';
    transition-duration: 0.5s;
}

.day-select>span:hover {
    color: #78b928;
}

.day-select>span.active {
    background-color: #666;
    color: #fff;
}

.day {
    display: none;
}

.day.active {
    display: block;
}


/* Programm */

#site-agenda .list-wrapper .list-body>div {
    position: relative;
    padding: 20px;
}

#site-agenda .list-wrapper .list-body>div:nth-child(odd) {
    background: #f2f2f2;
}

#site-agenda .list-wrapper .list-body>div .time {
    min-width: 110px;
    width: 30%;
}

#site-agenda .list-wrapper .list-body>div .info-wrapper {
    width: 100%;
}

#site-agenda .list-wrapper .list-body>div .bemerkung {}

#site-agenda .list-wrapper .list-body>div .info.room:before {
    content: '\EA2E';
    font-family: 'SchuecoIcon';
}

#site-agenda .list-wrapper .list-body>div .speaker-wrapper {
    text-align: end;
}

#site-agenda .list-wrapper .list-body>div .info.speaker:after {
    content: '\EA3A';
    font-family: 'SchuecoIcon';
    margin-left: 10px;
}

#site-agenda .list-wrapper .list-body>div .name {
    line-height: 32px;
    font-size: 20px;
}

#site-agenda .list-wrapper .list-body>div .speaker+.name,
#site-agenda .list-wrapper .list-body>div .room+.name {}


/* ** Veranstaltungsort ** */
#location .list-wrapper-detail {
    display: flex;
    flex-wrap: wrap;
}

.location-wrapper {
    position: relative;
    margin: 60px 0;
    width: 100%;
}

.location-wrapper>img {
    width: 100%;
}

.location-wrapper .location-overlay {
    background: #f2f2f2;
    position: relative;
    margin-top: 0px;
    padding: 20px 40px;
    width: 100%;
    color: #444;
    line-height: 23px;
    box-sizing: border-box;
}

.location-img-wrapper {
    display: flex;
    flex-direction: column-reverse;
    justify-content: flex-start;
    align-items: flex-start;
}
.location-img-wrapper img {
    width:100%;
}
.location-wrapper .column-1 .location-overlay {
    position: relative;
}

.location-wrapper .location-overlay span {
    font-size: 14px;
    display: block;
}
.location-wrapper .location-overlay span a {
    max-width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: block;
}
div.location-img-wrapper a.telefon:before {
    content: "\EA35";
    font-family: 'SchuecoIcon';
    font-size: 14px;
    margin-right: 5px;
}

div.location-img-wrapper a.email:before {
    content: "\EA2B";
    font-family: 'SchuecoIcon';
    color: #84bd50;
    margin-right: 5px;
}

.location-wrapper .location-overlay .location-name {
    color: #78b928;
    font-size: 15px;
    font-family: univers-bold, sans-serif;
    text-transform: uppercase;
    display: block;
    margin-bottom: 10px;
}

.location-wrapper .location-desc {
    margin: 20px 0;
}

.location-wrapper .map-content {
    position: relative;
    overflow: hidden;
    height: 400px;
    width: 100%;
    margin: 20px 0 60px auto;
}


/* ** Hotel ** */

#site-hotel .list-wrapper-detail {
    display: flex;
    flex-wrap: wrap;
}

.hotel-wrapper {
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
    margin-right: 20px;
    width: 100%;
    align-content: space-between;
    justify-content: flex-start;
}

.hotel-wrapper img {
    width: 100%;
}

.hotel-wrapper .teaser {
    width: 100%;
    padding: 20px 40px;
}

.hotel-wrapper .text {
    background-color: #f2f2f2;
    color: #444;
    line-height: 1.75;
    font-size: 14px;
    padding: 20px;
    transition-duration: 0.5s;
    padding: 20px 40px;
    width: 100%;
    height: 250px;
    box-sizing: border-box;
}

.hotel-wrapper .text .buchungslink a:before,
.hotel-wrapper .text .website a:before {
    content: '\EA09';
    font-family: 'SchuecoIcon';
    margin-right: 5px;
    color: #78b928;
}

.hotel-wrapper .headline {
    color: #78b928;
    font-size: 15px;
    font-family: univers-bold, sans-serif;
    text-transform: uppercase;
    display: block;
    margin-bottom: 10px;
}

.hotel-wrapper .teaser {
    padding: 20px 0;
}


/* *** FAQ *** */

.accordions {
    margin: 20px 0 10px;
}

.accordions .element {
    padding: 5px 10px 0px 10px;
    border: 1px solid #fff;
    border-radius: 0px;
}

.accordions .element:not(:last-child) {
    margin-bottom: 20px;
}

.accordions .element .head {
    font-family: 'univers-bold';
    font-size: 15px;
    text-transform: uppercase;
    cursor: pointer;
    margin: -5px -10px 0px -10px;
    padding: 10px 20px;
    background-color: #f2f2f2;
    color: #444;
    transition-duration: 0.5s;
}

.accordions .element.open .head {
    background-color: #666;
    color: #fff;
    margin-bottom: 20px;
}

.accordions .element .head:hover {
    background-color: #d9d9d9;
    color: #78b928;
}

.accordions .element .head:after {
    font-family: SchuecoIcon;
    content: '\EA05';
    float: right;
}

.accordions .element.open .head:after {
    content: '\EA08';
}

.accordions .element .content {
    display: none;
    padding: 10px 0;
    font-size: 16px;
    margin-bottom: 30px;
}


/* *** KATALOG *** */


/* KATALOG Loading Canvas */

#bodyMicrosite.catalog-loading #catalog {
    position: relative;
}

#bodyMicrosite.catalog-loading .catalog-loading-canvas {
    display: block;
    background: #fff;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 999;
    opacity: 1;
    top: 0;
    left: 0;
}

#bodyMicrosite.catalog-loading .catalog-loading-canvas:before {
    content: '';
    border: 6px solid #f2f2f2;
    border-top: 6px solid #78b928;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    animation: spin 2s linear infinite;
    margin: 0 auto;
    position: absolute;
    left: calc(50% - 20px);
    top: 20px;
    transform: translate(-50%, -50%);
}

#bodyMicrosite.catalog .catalog-loading-canvas {
    transition: opacity 2s linear;
    opacity: 0;
    display: none;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

#bodyMicrosite.catalog #divLogotext {
    display: none;
}

#bodyMicrosite.catalog #keyvisual {
    margin-top: 0px;
    /*height: calc(100vh - 40px);*/
}

#bodyMicrosite #divLogotext #logo {
    /*display: none;*/
}

#bodyMicrosite.catalog #logo {
    display: block;
    position: absolute;
    top: 40px;
    left: 20px;
    z-index: 999;
}

#bodyMicrosite.catalog #logo img {
    width: 100px;
    height: unset;
}

#bodyMicrosite.catalog #divContent .text-content {
    text-align: justify;
}


/* ** Filter ** */

#catalog-filter {
    margin-top: 30px;
    margin-bottom: 60px;
}

#catalog-filter select {
    display: none;
}

#catalog-filter .input,
#catalog-filter .select,
#catalog-filter input[type="text"] {
    position: relative;
    margin: 0;
    color: #444;
    font-size: 16px;
    padding: 15px 0px;
    border: none;
}

#catalog-filter input[name="name"] {
    background-color: #f0f0f0;
    padding: 15px 20px;
    width: calc(100% - 60px);
    margin: 0;
}

#catalog-filter input[name="name"]:focus {
    outline: none;
}

#catalog-filter .input-header {
    border-radius: 2px;
    font-family: 'univers-bold';
    text-transform: uppercase;
    padding: 10px 20px;
}

#catalog-filter .filter-wrapper {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}

#catalog-filter .filter-wrapper .select {
    width: calc(20% - 15px);
    min-width: 240px;
    position: relative;
    display: inline-block;
}

#catalog-filter .filter-wrapper .select:not(:last-child) {
    margin-right: 15px;
}

#catalog-filter .select .options {
    display: none;
    width: 100%;
    min-width: 271px;
    position: absolute;
    z-index: 10;
    background-color: #FFFFFF;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
    box-sizing: border-box;
}

#catalog-filter .select .options>div {
    background: #fff;
    padding-left: 30px;
    cursor: pointer;
    position: relative;
    padding: 10px 25px 10px 45px;
    margin-bottom: 10px;
    margin-right: 0px;
    box-sizing: border-box;
}

#catalog-filter .select .select-toggler {
    border-radius: 2px;
    padding: 10px 20px;
    background-color: #f0f0f0;
    cursor: pointer;
    font-family: 'univers-light';
    text-transform: none;
}

#catalog-filter .select .select-toggler:after {
    font-family: 'SchuecoIcon';
    content: "\EA05";
    float: right;
    margin-left: 15px;
}

#catalog-filter .select.active .select-toggler:after {
    content: "\EA08";
}

#catalog-filter .select.active .options {
    display: block;
}


/* Checkboxes */

#catalog-filter .select .options>div:hover .checkbox {
    border: 2px solid #78b928;
}

.checkbox {
    position: absolute;
    top: 16px;
    left: 15px;
    height: 15px;
    min-height: 15px;
    width: 16px;
    border: 2px solid #ddd;
    background-color: #fff;
}

#catalog-filter .select.location .checkbox {
    left: 0px;
}

#catalog-filter .select .options>div.active .checkbox:after {
    display: block;
}

#catalog-filter .select .options>div.active .checkbox:after {
    left: 5px;
    top: 1px;
    width: 5px;
    height: 9px;
    border: solid #444;
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.checkbox:after {
    content: "";
    position: absolute;
    display: none;
}


/* Reset */

#catalog-filter #reset,
#catalog-filter #print {
    padding: 10px 20px;
    position: relative;
    background: #444;
    color: #f2f2f2;
    display: inline-block;
    cursor: pointer;
    font-size: 14px;
    border: 0;
    font-family: univers, sans-serif;
    outline: none;
    float: right;
    margin: 10px 15px 10px;
    width: 165px;
    text-align: center;
}

#catalog-filter #print {
    background: #78b928;
}

#catalog-filter #reset:hover,
#catalog-filter #print:hover {
    background: #5f9621;
}

#catalog-filter #print.ready i.fa-spinner {
    display: none;
}

.tooltip {
    position: relative;
    display: inline-block;
}

.tooltip .tooltiptext {
    visibility: hidden;
    width: 180px;
    background-color: #444;
    color: #FFF;
    text-align: center;
    padding: 5px;
    border-radius: 6px;
    /* Position the tooltip text - see examples below! */
    position: absolute;
    z-index: 1;
    bottom: 125%;
    left: 50%;
    margin-left: -60px;
}

.tooltiptext:after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: #444 transparent transparent transparent;
}

.tooltip:hover .tooltiptext {
    visibility: visible;
}

div.frontendContingentInfo{
    padding-left: 15px;
}

.checkboxContainer.disable{
    color: lightgrey;
    pointer-events: none !important;
}
    .checkboxContainer.disable .input-checkbox{
        background: #DDD !important;
    }



/* ** Catalog Content ** */

.catalog-content h1 {
    margin-bottom: 30px;
}

.catalog-content .event-wrapper-headline,
.catalog-content .event-wrapper {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: flex-start;
    padding: 10px 10px;
    width: 100%;
    box-sizing: border-box;
}

#bodyMicrosite.catalog .catalog-content .event-wrapper-headline,
#bodyMicrosite.catalog .catalog-content .event-wrapper {
    width: calc(100% - 40px);
}

.catalog-content .event-wrapper.even,
.catalog-content .event-wrapper:not(.even):not(.odd):nth-child(even) {
    background-color: #f2f2f2;
}

.event-wrapper-headline {
    visibility: hidden;
    height: 0;
    font-family: 'univers-bold';
    font-size: 15px;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}

.event-wrapper-headline>div,
.event-wrapper>div {
    width: 100%;
}

.event-wrapper-headline .event-name {
    width: 100%;
}

.event-wrapper>div {
    padding-left: 27px;
}

.event-wrapper .event-dates>div {
    line-height: 24px;
}

.event-wrapper .event-name {
    font-family: 'univers';
    width: 100%;
    padding-left: 27px;
}

.event-wrapper-headline .event-product,
.event-wrapper .product {
    width: 100%;
}

.event-wrapper .event-name:before {
    content: "\EA07";
    font-family: SchuecoIcon;
    color: #78b928;
    font-size: 15px;
    margin-right: 7px;
    margin-left: -27px;
}

.event-wrapper-headline .event-location,
.event-wrapper .location {
    display: none;
}

/** BOOTH TOURS **/
#divContent.boothTours{
    max-width: 86%;
}
#boothTours{
    margin:  0px 0px 40px 0px
}

    #boothTours .image{
        width: 100%;
        display: flex;
        justify-content: flex-end;
    }

        #boothTours .image img{
               position: absolute;
                z-index: -1;
                width: 285px;
                margin-top: 45px;
                margin-right: -18px;
                float: right;
            /*-webkit-box-shadow: 0px 9px 10px -4px rgb(17 28 32 / 58%);
            -moz-box-shadow: 0px 9px 10px -4px rgb(17 28 32 / 58%);
            box-shadow: 0px 9px 10px -4px rgb(17 28 32 / 58%);*/
        }

#boothTours .mainHeadline{
    padding-top: 70px;
    font-size: 55px;
    font-weight: bold;
    color: #78b928;
}
#boothTours .today{
    display: flex;
    gap: 10px;
    font-size: 45px;
    color: #78b928;
    width: fit-content;
    background: white;
    padding-top: 35px;
    padding-bottom: 30px;
}

#modEinladerFrontendListe td{
    background: red;
}

#boothTours iframe{
    width: 100%;
    overflow: hidden;
    outline: none;
    border: none;
    height: 70vh;
}

body.boothTours{
    overflow: hidden;
}

.tour-details{
    width: 500vw;
    display: flex;
    flex-direction: row;
    gap: 20px;
}
.swiper-container-initialized > .tour-details{
    gap: 0px;
}

.tour-details .time{
    font-size: 34px;
    font-weight: bold;
    background: #78b928;
    color: white;
    padding: 14px 30px;
    width: fit-content;
    margin-bottom: 20px;
    position: relative;
}

    .tour-details .time .live{
        position: absolute;
        right: 0px;
        color: #E44F05;
        font-size: 19px;
        right: -72px;
        top: 16px;
    }

        .tour-details .time .live:before{
            content: '';
            width: 10px;
            height: 10px;
            display: block;
            position: absolute;
            background: #E44F05;
            left: -20px;
            top: 10px;
            border-radius: 50%;
            animation: animate 3s linear infinite;
        }

        @keyframes animate {
            0% {
                box-shadow: 0 0 0 0 rgba(228, 79, 5, 0.7), 0 0 0 0 rgba(228, 79, 5, 0.7);
            }
            40% {
                box-shadow: 0 0 0 10px rgba(228, 79, 5, 0), 0 0 0 0 rgba(228, 79, 5, 0.7);
            }
            80% {
                box-shadow: 0 0 0 10px rgba(228, 79, 5, 0), 0 0 0 10px rgba(228, 79, 5, 0);
            }
            100% {
                box-shadow: 0 0 0 0 rgba(228, 79, 5, 0), 0 0 0 10px rgba(228, 79, 5, 0);
            }
        }


.tour-details .wrapper{
    display: flex;
    gap: 20px;
    flex-direction: row;
    height: fit-content;
    height: 50px;
}
    .tour-details .wrapper .headline-wrapper{
        width: 100%;
        display: flex;
        gap: 17px;
        padding: 10px 20px 10px 206px;
        font-size: 19px;
        align-items: center;
        font-weight: bold;
        color: black;
        height: fit-content;
    }

.tour-details .meetingPoint{
/*    width: 200px;*/
}

.swiper{
    overflow: hidden;
    margin-top: 50px;
}

.swiper-slide{
    margin-top: 25px;
    height: 100vh;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    overflow: hidden;
    align-content: flex-start;
    width: 100%;
    max-width: 42.5vw;
}
    .swiper-slide[timestate="past"]{
        opacity: 0.45;
    }
    .swiper-slide[timestate="live"] .time{
        background: #E44F05;
    }
        .swiper-slide .time-wrapper{
            display: -ms-flexbox;
            display: -webkit-flex;
            display: flex;
            -webkit-flex-direction: column;
            -ms-flex-direction: column;
            flex-direction: column;
            -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
            flex-wrap: wrap;
            -webkit-justify-content: flex-start;
            -ms-flex-pack: start;
            justify-content: flex-start;
            -webkit-align-content: flex-start;
            -ms-flex-line-pack: start;
            align-content: flex-start;
            -webkit-align-items: flex-start;
            -ms-flex-align: start;
            align-items: flex-start;
            height: calc(100vh - 430px);
            gap: 12px;
            width: 100%;
        }

    /*.tour-wrapper:after{
        content: '';
        width: 100%;
        width: 100%;
        height: 20px;
        border-bottom: 12px white dotted;
        display: block;
        position: absolute;
        bottom: -5px;
        z-index: 999;
    }*/
    .swiper-slide .tour{
        font-weight: bold;
        color: black;
        padding: 7px 20px 7px 20px;
        font-size: 20px;
        background: #eeeeeeeb;
        -webkit-order: 0;
        -ms-flex-order: 0;
        order: 0;
        -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
        flex: 0 1 auto;
        -webkit-align-self: auto;
        -ms-flex-item-align: auto;
        align-self: auto;
        width: calc(100% - 25px);
    }
        .swiper-slide .tour > div{
            display: flex;
            gap: 20px;
        }
        .swiper-slide .tour:not(.hide):nth-child(even){
            background: #eeeeeeeb;
        }

        .swiper-slide .tour .start{
            margin-right: 10px;
            font-weight: bold;
            color: black;
            padding: 8px 30px 8px 30px;
            background: #78b928;
            color: white;
            display: none;
        }

        .swiper-slide .tour .name{
            font-weight: bold;
            font-size: 22px;
            color: black;
            min-width: 175px;
        }

        .wrapper .meetingPoint:not(:empty):before{
            content: '\f041';
            font-family: 'fontAwesome';
            margin-right: 5px;
        }
        .swiper-slide .tour .meetingPoint{
            margin-left: 15px;
        }
        .swiper-slide{
            margin-top: 0px !important;
        }

        .swiper-slide .tour .guide{
            /*padding-left: 25px;*/
        }

        .wrapper .guide:not(:empty):before{
            content: '\f007';
            font-family: 'fontAwesome';
            margin-right: 5px;
        }

@media only screen and (min-width: 576px) {
    /* ***HOTEL*** */
    .hotel-wrapper {
        width: 48.5%;
    }
}

@media only screen and (min-width: 768px) {
    h1 {
        font-size: 30px;
    }
    h2 {
        font-size: 24px;
    }
    /* *** LOCATION *** */
   .location-content.column-2 .location-img-wrapper {
        width: 50%;
        margin-top: 10px;
    }
    /* *** PROGRAMM *** */
    #site-agenda .list-wrapper .list-body>div {
        display: flex;
        font-size: 17px;
    }
    #site-agenda .list-wrapper .list-body>div .time {
        margin: 0 30px;
    }
    #site-agenda .list-wrapper .list-body>div .name {
        width: 75%;
        float: left;
    }
    #site-agenda .list-wrapper .list-body>div .bemerkung {
        width: 75%;
        float: left;
        font-size: 16px;
    }
    #site-agenda .list-wrapper .list-body>div .info.room {
        width: 75%;
        float: left;
    }
    #site-agenda .list-wrapper .list-body>div .speaker-wrapper {
        float: right;
        width: 40%;
    }
    /* *** KATALOG *** */
    #bodyMicrosite.catalog #logo img {
        width: 140px;
    }
    #catalog-filter .select .options {
        padding: 10px 15px;
    }
}

@media only screen and (min-width: 1024px) {
    h1 {
        font-size: 36px;
        margin: 20px 0;
    }
    h2 {
        font-size: 30px;
        margin: 10px 0 20px;
    }
    /* *** HEADER *** */
    #divLogotext {
        margin: 0 50px 0 50px;
        padding: 30px 0 0 0;
        border-bottom: 1px solid #ddd;
    }
    /* --- HEADER --> Subnavigation --- */
    #subnavigation {
        padding: 5px 50px;
    }
    /* --- HEADER --> Logo --- */
    #logo img {
        float: none;
        width: 160px;
    }
    /* --- HEADER --> Navigation --- */
    .navbar-header {
        display: none;
    }
    #navbar-collapse {
        position: relative;
        top: auto;
        right: auto;
        width: auto;
        height: auto !important;
        background-color: transparent;
    }
    #navbar-collapse .navbar-toggle {
        display: none;
    }
    #top-menu {
        text-align: center;
        padding: 0;
    }
    #top-menu li {
        display: inline-block;
    }
    #top-menu li a {
        font-size: 16px;
        color: #444;
        margin: 0 15px;
        padding: 5px 0;
        border-bottom: 0 none;
    }
    #top-menu li:first-child a {
        border-top: 0 none;
    }
    #top-menu li a:after {
        display: none;
    }
    #top-menu li a:hover {
        border-bottom: 2px solid #444;
    }
    #top-menu li.active a {
        font-family: univers-bold, sans-serif;
        font-weight: 700;
        border-bottom: 2px solid #444;
    }
    /* *** CONTENT *** */
    #divContent {
        padding: 40px 50px;
    }
    /* *** CONTENT FLEX CONTENT *** */
    .content-wrapper.flex-content {
        display: flex;
    }
    .content-wrapper.flex-content .content.with-sidebar {
        width: 75%;
        padding-right: 75px;
        box-sizing: border-box;
    }
    .content-wrapper.flex-content #sidebar {
        width: 25%;
        display: block;
        margin-top: 0
    }
    .content-wrapper.flex-content #sidebar>div {
        width: calc(100% - 15px);
    }
    /* *** KONTAKT *** */
    /* custom 1809: sidebar + contact item */
    .contact-item {
        padding: 15px 20px;
        background-color: #F2F2F2;
        margin-bottom: 15px;
        width: 450px;
    }
    /* *** SIDEBAR (=LOWERBAR) *** */
    #sidebar {
        display: flex;
        justify-content: flex-start;
    }
    #sidebar>div {
        margin-right: 32px;
        margin-bottom: 15px;
        width: calc(100% / 3 - 50px);
    }
    #sidebar>div:nth-child(3n+3) {
        margin-right: 0;
    }
    /* *** FOOTER *** */
    #divFooter a {
        padding: 0;
        border: 0 none !important;
    }
    #divFooter a:nth-child(4n+4) {
        margin-right: 0;
    }
    #divFooter #upper-footer {
        padding: 10px 50px;
    }
    #divFooter #upper-footer:after {
        content: '';
        display: table;
        clear: both;
    }
    /* *** SIDEBAR GK *** */
    body.gruppenportal .content-wrapper.with-sidebar {
        display: flex;
        justify-content: space-between;
    }

    body.gruppenportal #sidebar.gk-sidebar {
        width: 400px;
    }

    body.gruppenportal .content.with-sidebar {
        width: calc(100% - 300px);
    }

    body.gruppenportal #sidebar.gk-sidebar > div {
        width: 100%;
    }

    /* ** Welcome ** */
    .legend {
        justify-content: flex-end;
    }
    .legend>div {
        margin-left: 60px;
        margin-bottom: 0px;
        margin-right: 0px;
    }
    /* *** Agenda *** */
    #site-agenda .list-wrapper .list-head {}
    #site-agenda .list-wrapper .list-head>div>div:nth-child(3),
    #site-agenda .list-wrapper .list-body:not(.accordion)>div>div:nth-child(3) {}
    /* *** VA-Ort *** */
    .location-content.column-1,
    .location-content.column-2 {
        display: flex;
        flex-direction: row;
    }
    .location-content.column-2 .location-img-wrapper {
        width: 33%;
        margin-top: 10px;
    }
    .location-content.column-1 .location-desc {
        margin: 0px 20px 10px;
    }
    .location-content.column-2 .location-desc {
        width: 50%;
        padding: 10px 20px;
    }
    /* *** TRAINING *** */
    #bodyMicrosite:not(.catalog) .event-wrapper-headline>div,
    #bodyMicrosite:not(.catalog) .event-wrapper>div {
        width: 20%;
    }
    #bodyMicrosite:not(.catalog) .event-wrapper-headline>div.event-shortname,
    #bodyMicrosite:not(.catalog) .event-wrapper-headline>div.event-status,
    #bodyMicrosite:not(.catalog) .event-wrapper>div.event-shortname,
    #bodyMicrosite:not(.catalog) .event-wrapper>div.event-status {
        width: 15%;
    }
    #bodyMicrosite:not(.catalog) .event-wrapper-headline>div.event-status,
    #bodyMicrosite:not(.catalog) .event-wrapper>div.event-status {
        display: flex;
        margin-right: 12px;
        align-items: start;
    }
    #bodyMicrosite:not(.catalog) .event-wrapper>div.event-status img {
        margin-right: 15px;
        margin-left: 15px;
        margin-top: 5px;
        width: 20px;
        height: 20px;
    }
    #bodyMicrosite:not(.catalog) .event-wrapper>div.event-status .contingent-info {
        font-size: 14px;
    }
    #bodyMicrosite:not(.catalog) .event-dates {
        padding: 0 20px;
    }

    /* ***HOTEL*** */
    .hotel-wrapper {
        width: calc(33% - 20px);
    }
    /* *** KATALOG *** */
    #catalog-filter .select,
    #catalog-filter input[type="text"] {
        padding: 15px 0px;
        margin: 0;
    }
    #catalog-filter input[name="name"] {
        width: calc(33.3333333333% - 60px);
        padding: 15px 20px;
        margin-top: 10px;
    }
    #catalog-filter .select {
        width: 100%;
    }
    #catalog-filter .select .select-toggler {
        /*		padding: 10px 15px;
		margin-left: 0px;
		box-sizing: border-box;*/
    }
    #catalog-filter #reset,
    #catalog-filter #print {
        margin: 10px 15px 40px;
    }
    #bodyMicrosite.catalog .event-wrapper-headline>div,
    #bodyMicrosite.catalog .event-wrapper>div {
        width: 22%;
    }
    #bodyMicrosite.catalog .catalog-content .event-wrapper-headline {
        visibility: visible;
        height: unset;
    }
    #bodyMicrosite.catalog .event-wrapper>div:not(.event-name) {
        padding-left: 0px;
    }
    .event-wrapper-headline .event-name,
    .event-wrapper .event-name {
        width: 34% !important;
        padding-right: 20px;
        box-sizing: border-box;
    }
    .event-wrapper-headline .event-product,
    .event-wrapper .product {
        width: 22%;
    }
}

@media only screen and (min-width: 1280px) {
    /* *** HEADER *** */
    #divLogotext {
        margin: 0 70px 0 70px;
    }
    /*	#keyvisual img.keyvisual {
    	height: calc(100vh - 140px);
	}*/
    /* --- HEADER --> Subnavigation --- */
    #subnavigation {
        padding: 5px 70px;
    }
    /* --- HEADER --> Logo --- */
    #bodyMicrosite.catalog #logo {
        top: 100px;
        left: 83px;
    }
    #bodyMicrosite.catalog #logo img {
        width: 176px;
    }
    #logo img {
        width: 176px;
        padding: 10px 0 0 0;
        float: left;
    }
    #top-menu li a {
        font-size: 20px;
        margin-bottom: -1px;
        padding: 18px 0 25px 0;
    }
    /* *** CONTENT *** */
    #divContent {
        padding: 40px 70px;
    }
    .content-wrapper.flex-content .content.with-sidebar {
        padding-right: 100px;
    }
    #sidebar {
        margin-top: 100px;
    }
    /* *** FOOTER *** */
    #divFooter #upper-footer {
        padding: 30px 70px 40px;
        display: flex;
        justify-content: flex-end;
    }
    #divFooter #lower-footer .inner-footer {
        padding: 10px 70px;
        display: flex;
        justify-content: flex-start;
    }
    #divFooter #lower-footer .inner-footer .inner-footer-text {
        width: 40%;
    }
    #divFooter #lower-footer .inner-footer .inner-footer-wrapper {
        width: 60%;
        text-align: end;
        display: flex;
        justify-content: flex-end;
    }
    #divFooter #lower-footer .inner-footer .inner-footer-wrapper a {
        margin: 0 10px;
    }
    /* CONTENT */
    .event-wrapper-headline {
        visibility: visible;
        height: unset;
    }
    .event-wrapper>div {
        padding-left: 0px;
    }
}

@media only screen and (min-width: 1580px) {
    /* *** HEADER *** */
    #divLogotext {
        margin: 0 80px 0 80px;
    }
    /* --- HEADER --> Subnavigation --- */
    #subnavigation {
        padding: 5px 80px;
    }
    /* *** CONTENT *** */
    #divContent {
        padding: 40px 80px;
        min-height: 550px;
    }
    /* *** VA-Ort *** */
    .location-content.column-2 {
        display: flex;
        flex-direction: row;
    }
    .location-content.column-2 .location-img-wrapper {
        width: 33%;
        margin-top: -20px;
    }
    .location-content.column-1 .location-desc {
        margin: 10px 20px;
    }
    .location-content.column-2 .location-desc {
        width: calc(100% - 33%);
        padding: 10px 20px;
    }
}

@media only screen and (min-width: 1647px) {
    /* *** HEADER *** */
    /* --- HEADER --> Logo --- */
    #logo img {
        float: left;
    }
    /* --- HEADER --> Navigation --- */
    #navbar-collapse {
        float: right;
        width: calc(100% - 200px);
    }
    #top-menu li a {
        font-size: 20px;
        margin-bottom: -1px;
        padding: 18px 0 25px 0;
    }
}
