@font-face {
  font-display: swap;
  font-family: 'Noto Sans';
  font-style: normal;
  font-weight: 200;
  src: url('../fonts/NotoSans-VariableFont_wdth%2Cwght.ttf') format('ttf');
}
@font-face {
  font-display: swap;
  font-family: 'Noto Sans';
  font-style: italic;
  font-weight: 200;
  src: url('../fonts/NotoSans-Italic-VariableFont_wdth%2Cwght.ttf') format('ttf');
}

:root{
    --box-shadow: 0 20px 60px 0 rgba(6,10,20,.08);
    --bs-body-font-size: 18px;
}

body {
font-family: 'Noto Sans','Arial', sans-serif;
font-size: var(--bs-body-font-size);
line-height: 1.6;
font-weight: normal;
}

.sp-megamenu-parent {
font-family: 'Noto Sans','Arial', sans-serif;
font-size: var(--bs-body-font-size);
font-weight: normal;
}
.sp-megamenu-parent > li > a, .sp-megamenu-parent > li > span, .sp-megamenu-parent .sp-dropdown li.sp-menu-item > a {
    font-family: 'Noto Sans','Arial', sans-serif;
    text-decoration: none;
    font-size: inherit;
}

.h1, .h2, .h3, .h4, .h5, .h6,
h1, h2, h3, h4, h5, h6 {
font-family: 'Noto Sans','Arial', sans-serif !important;
}
h1, .h1 {
font-size: 55px;
font-weight: 700;
}
h2, .h2 {
    font-weight: 700;
    font-size: 45px;
    line-height: 1.2;
    margin-bottom: 30px;
}

}
h3, .h3 {
font-size: 28px;
font-weight: 300;
}
h4, .h4 {
font-size: 28px;
font-weight: 300;
}
h5, .h5 {
font-size: 25px;
font-weight: normal;
}
h6, .h6 {
font-size: 18px;
font-weight: 300;
}

p {
    margin-top: 0;
    margin-bottom: 1px;
}

b, strong {
    font-weight: 600;
}

#sp-header {
    background: #ff0000;
}
#sp-menu .sp-megamenu-wrapper{
    border-right: 1px solid #fff;
}
#sp-header a,
#sp-menu ul.social-icons a,
.sp-megamenu-parent>li>a {
    color: #fff;
}
/*
#sp-header a:hover, 
.sp-megamenu-parent>li:hover>a{
    color: #f1f1f1;
}
    */
#sp-header .sp-megamenu-parent>li:hover>a{
    color: #ff0000;
    background: #fff;

}
.sp-megamenu-parent > li > a, .sp-megamenu-parent > li > span, .sp-megamenu-parent .sp-dropdown li.sp-menu-item > a {
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 20px;
    font-weight: 600;
    text-decoration: none;
    color: #fff;
}
#sp-menu ul.social-icons a:hover, #sp-menu ul.social-icons a:focus,
#sp-header a.sp-sign-in:hover {
    color: #000000;
}
#sp-header a.sp-sign-in .signin-text {
    display: none !important;
}
#sp-menu .social-wrap {
    position: relative;
    padding-left: 20px;
}

.sp-megamenu-parent>li:last-child>a {
    padding: 0px 15px;
}
#sp-logo {
    position: absolute;
    top: 0;
}
#sp-header .logo {
    align-items: center;
    transition: all 0.8s;
    height: 100%;
    width: 100%;
    max-width: 160px;
    max-height: 90px;
    background: #fff;
    border-radius: 0px 0px 25px 25px;
    border: 1px solid rgba(0, 0, 0, 0.31);
    border-top: 0;
    -webkit-box-shadow: 2px 14px 14px 4px rgba(0, 0, 0, 0.31);
    -moz-box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.31)!important;
    box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.31) !important;
    padding: 15px 0 0;
    margin-top: 0;
}

.sp-menu-item a:before {
    content: '';
    position: absolute;
    bottom: 0px;
    left: 0;
    width: 0;
    height: 2px;
    background: #ff0000;
    -moz-transition: 0.4s ease all;
    -o-transition: 0.4s ease all;
    -webkit-transition: 0.4s ease all;
    transition: 0.4s ease all;
}

/*
.sp-dropdown-main .sp-menu-item a:before {
    height: 2px;
}
*/
.sp-menu-item > a:hover:before {
    width: 100%;
}
#sb-search{
   border: 1px solid #ff0000;
    -webkit-transition: 0.4s ease all;
    transition: 0.4s ease all;
    padding-right: 25px;
}
#sb-search .sb-icon-search {
    color: #ffffff;
    background: #ff0000;
    z-index: 90;
    font-size: 20px;
    transition: 0.4s ease all;
}
#sb-search .sb-icon-search:hover {
       color: #000000;
}
#sb-search .sb-icon-search:before {
    content:unset !important;
}

#sb-search.sb-search-open, .no-js .sb-search {
    width: 100%;
    min-width: 200px;
    border-radius: 0.25rem;
    border-color: #fff;
}

#sp-bottom .sppb-addon-title {
    font-size: 18px;
    font-weight: 300;
    padding-left: 15px;
}

#sp-bottom .sp-module {
    margin-bottom: 0;
}
#sp-bottom .sp-module .footer-menu{
    margin-top: 30px;
    font-size: 16px;
}
#sp-bottom .sp-module .footer-menu ul>li {
    display: block;
    margin-bottom: 0;
}
#sp-footer {
    background: #5c5c5c;
    color: #ffffff;
}
#sp-footer a {
    color: #ffffff;
}
#sp-footer a:hover {
    color: #ff9300;
}


.hero-section .hero-overlay {
  inset: 0;
  z-index: 1;
}

.hero-textbox {
    max-width: 600px;
    background: rgba(255, 255, 255, 0.95);
    padding: 25px 40px;
    border-top: 5px solid #FF0200;
    margin: 1%;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    z-index: 5;
    color: #111;
    border-radius: 5px;
}

/* Responsive Anpassung */
@media (max-width: 900px) {
  .hero-section { height: 52vh; min-height: 360px; }
  .hero-textbox {
    left: 20px;
    right: 20px;
    max-width: none;
    bottom: 20px;
    padding: 16px;
  }
  .hero-textbox h1 { font-size: 1.4rem; }
}


.box-shadow{
    background-color: #ffffff;
    box-shadow: var(--box-shadow);
    border-radius: 10px;
    padding: 30px 50px;
}
.eb-event-item-grid-default-layout {
    min-height: 475px;
}

.eb-event-item-grid-default-layout>div:last-child {
    padding-bottom: 15px;
}

.eb-event-item-grid-default-layout>div:not(.eb-event-thumb-container) {
    margin: 0 20px 8px;
}
.eb-event-item-grid-default-layout> .eb-event-title-container {
    max-width: 75%;
}

.eb-event-item-grid-default-layout .eb-event-short-description {
     max-width: 100%;
     min-height: 75px;
}

.eb-event-item-grid-default-layout .eb-event-main-location {
    position: absolute;
    right: 10px;
    left: auto;
    top: 50px;
    z-index: 1;
    padding: 6px 10px;
    color: #000000;
    font-size: .8125rem;
    text-transform: uppercase;
    font-weight: 600;
    border-radius: 5px;
    background:#FFC500;
    transition: all 400ms;
}

.eb-event-item-grid-default-layout .eb-event-main-location.ksesa {
    background:#ff4000;
}
.eb-event-item-grid-default-layout .eb-event-main-location a {
    color: #000000;
}

.eb-event-item-grid-default-layout .eb-event-main-location:hover {
        filter: brightness(0.95);
}

.eb-event-item-grid-default-layout .eb-event-main-category {
    position: absolute;
    right: 10px;
    left: auto;
    top: 10px;
}

.eb-event-item-grid-default-layout>div.eb-event-age {
    position: absolute;
    right: -20px;
    margin-top: 0px;
    background: #00BCD4;
    color: #fff;
    padding: 6px 8px;
    border-bottom-left-radius: 8px;
    font-size: 14px;
}

.eb-event-item-grid-default-layout .eb-event-title-container {
    line-height: 1.25;
    min-height: 60px;
}

.eb-event-age {
    color: #ff0000;
}

.eb-event-rhythmus {
    color: #1f79fd;
    padding-top: 2px;
    padding-bottom: 5px;
}
.eb-event-item-grid-default-layout .btn-buy:before{
content: "Preis: ";
}
.eb-event-item-grid-default-layout .btn-buy {
    position: absolute;
    right: 0;
    border: unset;
    background: unset;
    color: var(--eb-grid-default-main-category-color);
    font-size: 1rem;
    font-weight: 600;
    margin: 10px 0px !important ;
}

.eb-event-short-description {
    font-weight: 600;
    max-width: 240px;
}

.view-event .table-borderless .eb-event-property-value {
    padding: 3px !important;
}
.table-borderless td.eb-event-property-label {
    font-weight: 300;
    width: 150px !important;
}
#colorbox #cboxContent h1 {
    background: none;
    line-height: normal;
    margin: 0;
    padding: 10px;
    font-size: 1.5rem;
}

.view-event .eb-notice-message {
    color: #1f79fd !important;
    font-size: 1rem;
    line-height: 1.5;
    font-weight: 600;
    margin: 0 0 15px;
}
.eb-events-grid-items .eb-notice-message {
    display: none;
}

.eb-cart-content table tr td {
    padding: 10px 20px;
}
#cboxContent .table-striped>tbody>tr:nth-of-type(odd)>*,
.table-striped>tbody>tr:nth-of-type(odd)>* {
    --bs-table-accent-bg: none;
}

.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating)
{
    border-radius: .375rem;
}

#cboxContent .input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
    border: none;
    background: none;
    color: #c3c3c3;
}

.eb-container .form-group.form-row {
    font-size: 16px;
}

.eb-cart-content,
#adminForm.form.row {
    border-radius: 15px;
    box-shadow: var(--box-shadow);
    padding: 30px 30px 50px;
    margin: 50px;
}


#eb-cart-registration-page .form-check-input,
#eb-cart-registration-page input[type="checkbox"]
 {
    margin-right: 12px;
}

.eb-cart-content th {
    font-weight: 300;
}
.eb-cart-content .col_event .cboxElement {
    color: #252525;
    font-weight: 600;
    display: flex;
    justify-content: space-between;
}

.eb-cart-content .col_event .location {
    color: #267dfd;
    font-weight: 400;
}
.eb-cart-content .col_event .location i {
    margin-right: 5px;
}




.eb-container .form-group.payment_information {
    border-bottom: 1px solid #ced4da;
    padding-bottom: 20px;
}
.eb-container .form-group.eb-subscribe-to-newsletter-container {
    border-bottom: 1px solid #ced4da;
    padding-bottom: 20px;
}

.tooltip {
    --bs-tooltip-max-width: 350px;
    --bs-tooltip-font-size: 12px;
    --bs-tooltip-bg: rgb(244 67 54 / 95%)
}

.fc-h-event {
    border: 1px solid #ff5722;
    border: 1px solid var(--fc-event-border-color, #ff5722);
    background-color: #ff5722;
    background-color: var(--fc-event-bg-color, #ff5722);
}

.fc .fc-button-primary {
    color: #fff;
    color: var(--fc-button-text-color, #fff);
    background-color: #ff0000;
    background-color: var(--fc-button-hover-bg-color, #ff0000);
    border-color: #ffffff; 
}

.fc .fc-button-primary:disabled {
    --fc-button-border-color: #2C3E50;
    --fc-button-bg-color: transparent;
    color:var(--fc-button-border-color);
}
.eb-event-large-image {
    width: 100%;
}
.fc .fc-daygrid-day.fc-day-today {
    background-color: #edf9ff;
    background-color: rgb(3 169 244 / 10%);
}


/* Events Booking - Customs */


#eb-event-page .eb-description,
#eb-event-info {
    border-radius: 15px !important;
    box-shadow: var(--box-shadow);
    padding: 40px 50px;
}
.eb-container img {
    border-radius: 5px;
}

#eb-event-info {
    padding: 20px 35px 10px;
    margin: 0 0 30px;
}

#sp-bottom {
    padding: 0;
}
#sp-bottom:before {
    content: "";
    position: relative;
    background: url(/images/assets/triangleAsymmetricalNegative.svg);
    background-color: orange;
    border-top: 10px solid orange;
    display: block;
    width: 100%;
    height: 100px;
    margin-bottom: 20px;
}

#eb-event-page .btn-primary {

    --bs-btn-color: #fff;
    --bs-btn-bg: #ffa500;
    --bs-btn-border-color: #ffa500;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #dc8f00;
    --bs-btn-hover-border-color: #dc8f00;
    --bs-btn-focus-shadow-rgb: 130,138,145;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #ffa500;
    --bs-btn-active-border-color: #ffa500;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: rgb(255, 208, 120);
    --bs-btn-disabled-border-color: rgb(255, 208, 120);
    border-color: var(--bs-btn-border-color);
    background-color: var(--bs-btn-bg);
}
#eb-event-page .btn-primary:hover {
    border-color: var(--bs-btn-hover-border-color);
    background-color: var(--bs-btn-hover-bg);
    color: var(--bs-btn-hover-color);
}

.eb-taskbar li {
    padding: 0 15px 0 0;
}
/* Kurstermine Liste */
.eb-course-dates {
    margin: 15px 0;
    padding: 15px 20px;
    background: #f8f9fa;
}

.eb-course-dates h3 {
    margin: 0 0 12px 0;
    font-size: 1.1em;
    color: #333;
}

.eb-course-dates-grid {
    display: flex;
    flex-wrap: wrap;
    row-gap: 8px;
}

.eb-course-date-item {
    flex: 33% 0 0;
    padding: 4px 0;
    color: #555;
    font-size: 1em;
    white-space: nowrap;
}

.eb-course-date-item i {
    margin-right: 6px;
    color: #e74c3c;
    font-size: 1em;
}

/* Vergangene Termine ausgrauen */
.eb-course-date-past {
    opacity: 0.4;
    text-decoration: line-through;
}

#eb-event-page .gallery {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 10px;
}
#eb-event-page .gallery a img {
    transform: scale(1);
    transition: all 0.4s ease-in-out;
}
#eb-event-page .gallery a:hover img {
    transform: scale(1.05);
}

#eb-event-page .gallery a {
    overflow: hidden;

}

h3.eb-plugin-gallery {
    display: none;
}


.eb-register-buttons-bottom {
    margin-bottom: 20px;
}


#eb-event-page .eb-event-title-column,
#eb-event-page td[data-content="Veranstaltungen"] {
    display: none;
}

#eb-event-page .date_col {
    width: 30%;
}
#eb-event-page .table-sm>:not(caption)>*>* {
    padding: 10px 5px;
}

#eb-event-page .table {
    --bs-table-border-color: #fff;
/*    margin: 10px 15px; */
}
.eb-event-middle  .table  {
    margin-bottom: 0;
}

.eb-event-middle + .eb-event-bottom .eb-register-buttons-bottom {
    margin-top: -65px;
    max-width: 100px;
}

#parent-event-information{
    --bs-table-border-color: #fff; 
}


#eb-event-page .table-bordered>:not(caption)>*>* {
    border-width: 1px 0;
}

#eb-event-page .table-bordered .eb-taskbar {
    padding-top: 4px;
}

#eb-event-page input[type="checkbox"] {
   appearance: none;
   width: 20px; 
   height: 20px; 
   background: orange; 
   border-radius: 6px;
}
#eb-event-page input[type=checkbox]:checked {
   background: red;
   background-image: url(../../../images/assets/haekchen.svg);
    background-size: 95%;
    background-repeat: no-repeat;

}

.view-event .eb-event-property {
 /*   margin: 10px;
 */
}

.view-event .eb-event-property-label {
    font-size: 1rem;
    padding: 3px;
}


.view-event .eb-event-property-value {
/*    padding: 3px;*/
}

#eb-cart-registration-page a {
    color: #252525;
}
h3.eb-heading {
    display: inline-block;
    margin: 35px 0;
    border-top: 1px solid #ced4da;
    padding-top: 20px;
}

#eb-amount-container input,
#eb-tax-amount-container input,
#eb-gross-amount-container input {
    border-radius: 0;
    border-width: 0 0 1px;
}

#eb-amount-container .input-group-text,
#eb-tax-amount-container .input-group-text,
#eb-gross-amount-container .input-group-text {
    background-color: unset;
    border-radius: 0;
    border-width: 0 0 1px;
}
.eb-cart-content, #adminForm.form.row {
    justify-content: space-evenly;
}

#eb-event-properties-heading {
    display: none;
}

.home-tile .sppb-addon-content {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    align-items: center;
    -ms-flex-align: center!important;
    align-items: center !important;
    max-width: 1550px;
    margin: auto !important;
    column-gap: 10px;
}

.home-tile .sppb-addon-content .sppb-btn {
    padding: 25px;
  /*  width: 440px; */
    height: 280px;
    display: flex;
    flex:20%;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-size: 36px;
    line-height: 40px;
    box-shadow: 5px 5px 15px #0000006b;
}

.home-tile .sppb-addon-content .sppb-btn .sub-headline{
    font-size: 18px;
    color: #000000;
    margin-top: 20px;
    line-height: 20px;
}

.home-tile .sppb-addon-content .sppb-btn:hover .sub-headline{
    color: white;
}

@media only screen and (max-width: 1499px) {
    .home-tile .sppb-addon-content .sppb-btn {
        font-size: 28px;
    }
    .home-tile .sppb-addon-content .sppb-btn .h4 {
        font-size: 25px;
    }
}
@media only screen and (max-width: 1399px) {
    .home-tile .sppb-addon-content .sppb-btn .h4 {
        font-size: 20px;
    }
}
@media only screen and (max-width: 1199px) {
    .home-tile .sppb-addon-content .sppb-btn {
        flex: 40%;
    }
}

@media only screen and (max-width: 991px) {
    .home-tile .sppb-addon-content .sppb-btn {
        padding: 25px;
     /*   width: 175px; */
        height: 205px;
        font-size: 25px;
        margin: 5px !important;
        line-height: normal;
    }
}

@media only screen and (max-width: 576px) {
    .home-tile .sppb-addon-content .sppb-btn
 {
        flex: 100%;
    }
}





.sp-megamenu-parent .sp-dropdown li.sp-menu-item>a {
    color: #252525 !important;
}

.sp-megamenu-parent .sp-mega-group>li>a {
    color: #252525 !important;
}

.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a {
    font-size: 16px !important;
    font-weight: 400 !important;
}

#sp-menu.menu-center .sp-megamenu-wrapper {
    justify-content: end;
    padding-right: 30px;
}

.sppb-col-lg-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 50%;
    max-width: 50%;
}

.box-shadow .eb-event-item-grid-default-layout {
    box-shadow: none;
    padding: 0;
    position: relative;
    border-radius: 12px;
    margin-bottom: 30px;
    transition: all .4s ease;
}

.bottom-unten .sppb-media-content {
    padding: 20px 30px;
}

.bottom-unten {
    background-color: #ffffff;
    box-shadow: var(--box-shadow);
    border-radius: 10px;
    padding: unset;
}

/*.eb-event-item-grid-default-layout>div.eb-event-age {
    position: absolute;
    right: -10px;
    margin-top: -40px;
    background: white;
    padding: 6px 10px;
    border-radius: 5px;
}*/

#Fotoerlaubnis-lbl {
    position: relative;
    cursor: pointer;
}

#Fotoerlaubnis-lbl:hover::after {
    content: "„Bilder sagen mehr als Worte …“";
    position: absolute;
    bottom: 125%;
    left: 50%;
    transform: translateX(-50%);
    background: #333;
    color: #fff;
    padding: 8px 12px;
    border-radius: 6px;
    font-size: 14px;
    white-space: nowrap;
    z-index: 1000;
}

/*#subscribe_to_newsletter {
    font-size: 0;
    position: relative;
}

#subscribe_to_newsletter::after {
    content: "Ich möchte den monatlichen Newsletter erhalten – aktuelle Kurse, Rabatte & Veranstaltungsinfos.";
    font-size: 16px;
    display: block;
}*/

