.elementor-kit-7{--e-global-color-primary:#285385;--e-global-color-secondary:#E12000;--e-global-color-text:#262626;--e-global-color-accent:#FF3513;--e-global-color-388d037:#000000;--e-global-color-986afd7:#262626;--e-global-color-75e8db4:#F1F3F6;--e-global-color-b739361:#FFFFFF;--e-global-color-6906e8e:#E4E6E8;--e-global-color-313e851:#F6F7F8;--e-global-color-d3bc7aa:#FFFFFF00;--e-global-color-1c0541e:#155FB9;--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-weight:500;--e-global-typography-611d36a-font-size:1.2rem;--e-global-typography-611d36a-font-weight:700;--e-global-typography-611d36a-text-transform:uppercase;--e-global-typography-611d36a-letter-spacing:-0.02em;--e-global-typography-867d11c-font-size:1rem;--e-global-typography-867d11c-font-weight:600;--e-global-typography-867d11c-letter-spacing:-0.04em;--e-global-typography-afdaa0f-font-size:0.9rem;--e-global-typography-afdaa0f-letter-spacing:-0.02em;--e-global-typography-858dcdc-font-size:1em;--e-global-typography-858dcdc-font-weight:500;--e-global-typography-858dcdc-letter-spacing:0.01em;--e-global-typography-28a51c0-font-size:0.7rem;--e-global-typography-28a51c0-font-weight:500;--e-global-typography-28a51c0-letter-spacing:-0.01em;--e-global-typography-9a89ddb-font-size:0.9rem;--e-global-typography-9a89ddb-font-weight:500;--e-global-typography-9a89ddb-letter-spacing:-0.02em;--e-global-typography-5b1b88f-font-family:"Open Sans";--e-global-typography-5b1b88f-font-size:1rem;--e-global-typography-5b1b88f-font-weight:600;--e-global-typography-5b1b88f-letter-spacing:-0.02em;--e-global-typography-1f152f8-font-family:"Open Sans";--e-global-typography-1f152f8-font-size:1rem;--e-global-typography-1f152f8-letter-spacing:-0.02em;background-color:var( --e-global-color-313e851 );color:var( --e-global-color-text );font-family:"Open Sans", Sans-serif;font-size:18px;font-weight:400;}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{background-color:var( --e-global-color-secondary );font-size:var( --e-global-typography-858dcdc-font-size );font-weight:var( --e-global-typography-858dcdc-font-weight );letter-spacing:var( --e-global-typography-858dcdc-letter-spacing );color:var( --e-global-color-b739361 );border-radius:0px 0px 0px 0px;}.elementor-kit-7 button:hover,.elementor-kit-7 button:focus,.elementor-kit-7 input[type="button"]:hover,.elementor-kit-7 input[type="button"]:focus,.elementor-kit-7 input[type="submit"]:hover,.elementor-kit-7 input[type="submit"]:focus,.elementor-kit-7 .elementor-button:hover,.elementor-kit-7 .elementor-button:focus{background-color:var( --e-global-color-accent );color:var( --e-global-color-b739361 );box-shadow:0px 3px 10px 0px rgba(0, 0, 0, 0.1);}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7 p{margin-block-end:1.1em;}.elementor-kit-7 a{color:var( --e-global-color-1c0541e );}.elementor-kit-7 h1{color:var( --e-global-color-primary );font-size:1.476rem;font-weight:700;}.elementor-kit-7 h2{color:var( --e-global-color-primary );font-size:1.383rem;line-height:1.2em;}.elementor-kit-7 h3{font-size:1.296rem;line-height:1.2em;}.elementor-kit-7 h4{font-size:1.215rem;line-height:1.2em;}.elementor-kit-7 h5{font-size:1.138rem;line-height:1.2em;}.elementor-kit-7 h6{font-size:1.067rem;line-height:1.2em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}.elementor-lightbox{--lightbox-ui-color:var( --e-global-color-b739361 );--lightbox-text-color:var( --e-global-color-b739361 );--lightbox-header-icons-size:1.6rem;--lightbox-navigation-icons-size:1.6rem;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1366px){.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{font-size:var( --e-global-typography-858dcdc-font-size );letter-spacing:var( --e-global-typography-858dcdc-letter-spacing );}}@media(max-width:1024px){.elementor-kit-7{--e-global-typography-867d11c-font-size:1.3em;}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{font-size:var( --e-global-typography-858dcdc-font-size );letter-spacing:var( --e-global-typography-858dcdc-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:880px){.elementor-kit-7{--e-global-typography-611d36a-font-size:1rem;--e-global-typography-867d11c-font-size:1rem;--e-global-typography-867d11c-line-height:1rem;--e-global-typography-858dcdc-font-size:0.8rem;--e-global-typography-9a89ddb-font-size:0.8rem;font-size:14px;}}@media(max-width:767px){.elementor-kit-7{--e-global-typography-611d36a-font-size:0.9rem;--e-global-typography-867d11c-font-size:0.8rem;}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{font-size:var( --e-global-typography-858dcdc-font-size );letter-spacing:var( --e-global-typography-858dcdc-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}@media(min-width:2400px){.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{font-size:var( --e-global-typography-858dcdc-font-size );letter-spacing:var( --e-global-typography-858dcdc-letter-spacing );}}
/* Start custom CSS */:root {
    --header-height: 100px;
    --header-height-mobile: 60px;
    --subheader-height: 40px;
    --header-container-height: calc(var(--header-height) + var(--subheader-height));
    --header-container-height-mobile: calc(var(--header-height-mobile) + var(--subheader-height));
    --footer-height: 160px;
}

html {
    min-height: 100vh;
    scroll-behavior: smooth !important;
}

.hide-team-terms1 .hide-term1 {
    display: none;
}

.hide-team-terms2 .hide-term2 {
    display: none;
}

.elementor-widget-text-editor ul, ol {
    margin-bottom: 20px;
}

.elementor-widget-text-editor ul > li {
    margin-bottom: 5px;
}

.elementor-widget-text-editor ol > li {
    margin-bottom: 5px;
}



/* === LOOPGRID-HOVER === */

.loopgrid_hover-effect .elementor-loop-container:hover > .e-loop-item:not(:hover) {
    opacity: 0.5;
    transition: all 0.2s;
}

.loopgrid_hover-effect .elementor-loop-container:hover > .e-loop-item {
    opacity: 1;
    transition: all 0.2s;
}



/* === TABELLEN === */

.elementor-widget table {
    border-collapse: collapse;
    box-shadow: 0 0 0 1px rgb(220,220,220);
    margin: 0 auto;
    background-color: white;
    table-layout: auto;
    font-size: 1rem;
    width: 100% !important;
    
    & h1, h2, h3, h4, h5, h6 {
        margin: 0;
    }
    
    & .emoji {
       height: 1rem !important; 
    }
    
    & td, th {
        padding: 10px;
        width: 1%;
        white-space: nowrap;
        border: none;
    }
    
    & td {
        background-color: transparent !important;
    }
    
    & th {
        background-color: var(--e-global-color-313e851) !important;
    }
    
    & td + td, th + th {
        box-shadow: inset 1px 0 0 0 rgba(0,0,0,0.05);
    }
    
    & tr + tr {
        box-shadow: inset 0 1px 0 0 rgba(0,0,0,0.2);
    }
}



/* === STUNDENTAFEL === */

.elementor-widget tbody tr:hover {
    color: var(--e-global-color-primary);
    background-color: rgba(51,94,145,0.05);
}
.stundentafel table th:has(h3) {
    background-color: var(--farbton) !important;
    color: white !important;
}
.stundentafel table th:has(h4) {
    box-shadow: inset 0 1px 0 0 rgba(0,0,0,0.5);
    background-color: color-mix(in srgb, var(--farbton) 10%, transparent) !important;
    color: var(--farbton)
}
.stundentafel table td:has(h4) {
    background-color: color-mix(in srgb, var(--farbton) 10%, transparent) !important;
}



/* === TERMINLISTE === */
.terminliste p {
    margin: 0 !important;
}

.terminliste .time {
    padding-top: 0px !important;
    margin-bottom: 5px;
}

.terminliste .time-inline {
    display: none;
}

.terminliste dt.time, .end_time {
    font-weight: bold !important;
}

.terminliste .events {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin: 0 !important;
    line-height: 1.4em;
    padding: 10px 15px;
}

.terminliste .all-day-indicator {
    display: none;
}

.terminliste .ics-calendar-list-wrapper {
    display: flex;
    flex-direction: column;
}

.terminliste .ics-calendar-date-wrapper {
    border-color: var( --e-global-color-6906e8e );
    border-style: solid;
    border-width: 0 1px 1px 1px;
    display: flex;
    flex-direction: row;
    background-color: white;
}

.terminliste .ics-calendar-date-wrapper:hover {
    color: var( --e-global-color-primary );
    box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.1);
    z-index: 1;
    
    & .ics-calendar-date {
        background-color: var( --e-global-color-primary );
        color: white;
    }
}


/* === Monatsüberschrift === */

.terminliste .ics-calendar-label {
    text-align: center;
    color: var( --e-global-color-primary );
    font-size: 1.4rem;
    font-weight: bold;
    padding: 40px 0 10px;
    margin: 0 !important;
    border-bottom: 1px solid var( --e-global-color-6906e8e );
}
.terminliste .ics-calendar-label:first-child {
    padding: 0 0 10px !important;
}
.terminliste .ics-calendar-date {
    display: flex;
    flex: none;
    align-items: center;
    justify-content: center !important;
    padding: 10px;
    margin: 0 !important;
    font-weight: bold;
    font-size: 1rem;
    min-width: 150px;
    background-color: var( --e-global-color-75e8db4 );
}


/* === Mobile Ansicht === */

@media all and (max-width: 880px) {
    .terminliste .events {
        padding: 5px 10px !important;
    }
    .terminliste .ics-calendar-date {
        padding: 5px;
    }
    .terminliste .ics-calendar-date {
        min-width: 110px;
    }
    .terminliste .events {
        font-size: 0.8rem;
    }
    .terminliste .ics-calendar-date {
        font-size: 0.8rem;
    }
}/* End custom CSS */