/*
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

body {

    /**
     * Spacings
     */
    --s-4:         .25rem;
    --s-8:         .5rem;
    --s-12:        .75rem;
    --s-16:        1rem;
    --s-20:        1.25rem;
    --s-24:        1.5rem;
    --s-32:        2rem;
    --s-40:        2.5rem;
    --s-48:        3rem;
    --s-56:        3.5rem;
    --s-64:        4rem;
    --s-72:        4.5rem;
    --s-80:        5rem;
    --s-88:        5.5rem;
    --s-96:        6rem;
    --s-104:       6.5rem;
    --s-112:       7rem;
    --s-120:       7.5rem;
    --s-128:       8rem;
    --s-144:       9rem;
    --s-160:       10rem;

    /**
     * Section Spacings
     */
    --ss-1:        clamp(1.5rem, 1.1538rem + 1.5385vw, 3rem);
    --ss-2:        clamp(2rem, 1.5385rem + 2.0513vw, 4rem);
    --ss-3:        clamp(3rem, 2.3077rem + 3.0769vw, 6rem);
    --ss-4:        clamp(50px, 7vw, 150px);;
    --ss-x:        var(--s-16);
    --ss-hero:     -73px;
    --ss-text: 50px;

    @media (max-width: 1336px) {
        --ss-text: 32px;
    }

    @media (max-width: 1024px) {
        --ss-text: 0px;
    }

    /**
     * Font Sizes
     */
    --fs-1:        clamp(3rem, 2.8269rem + 0.7692vw, 3.75rem);
    --fs-2:        clamp(2.25rem, 2.0769rem + 0.7692vw, 3rem);
    --fs-3:        clamp(1.875rem, 1.7885rem + 0.3846vw, 2.25rem);
    --fs-4:        clamp(1.5rem, 1.4135rem + 0.3846vw, 1.875rem);
    --fs-5:        clamp(1.25rem, 1.1923rem + 0.2564vw, 1.5rem);
    --fs-6:        clamp(1.125rem, 1.0962rem + 0.1282vw, 1.25rem);

    /**
     * Colors
     */
    --c-primary:   var(--e-global-color-primary, #6ec1e4);
    --c-secondary: var(--e-global-color-secondary, #54595f);
    --c-text:      var(--e-global-color-text, #7a7a7a);
    --c-accent:    var(--e-global-color-accent, #61ce70);
    --c-border:    #e7e7e7;

}

/**
 * Generic
 */
p {
    text-wrap: balance;
    hypens:    auto;
}

p:first-child {
    margin-block-start: 0;
}

p:last-child {
    margin-block-end: 0;
}

h1 {
    font-size: var(--fs-1);
}

h2 {
    font-size: var(--fs-2);
}

h3 {
    font-size: var(--fs-3);
}

h4 {
    font-size: var(--fs-4);
}

h5 {
    font-size: var(--fs-5);
}

h6 {
    font-size: var(--fs-6);
}

h1, h2, h3, h4, h5, h6 {
    text-wrap: balance;
    hypens:    auto;
}

h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child {
    margin-block-start: 0;
}

h1:last-child,
h2:last-child,
h3:last-child,
h4:last-child,
h5:last-child,
h6:last-child {
    margin-block-end: 0;
}

/**
 * Forms
 */

.elementor-message.elementor-message-success.elementor-message-svg {
    background: #c3e4cb;
    padding: 24px;
    border-radius: 4px;
    font-weight:600;
}

[type='checkbox'],
[type='radio'] {
    display:                    inline-block;
    flex-shrink:                0;
    width:                      1rem;
    height:                     1rem;
    padding:                    0;
    -moz-user-select:           none;
    -webkit-user-select:        none;
    user-select:                none;
    vertical-align:             middle;
    color:                      var(--c-primary);
    border-width:               1px;
    border-style:               solid;
    border-color:               var(--c-border);
    background-color:           #ffffff;
    background-origin:          border-box;
    -webkit-appearance:         none;
    -moz-appearance:            none;
    appearance:                 none;
    -webkit-print-color-adjust: exact;
    print-color-adjust:         exact;
}

body .page-content .elementor p a,
body .page-content .elementor li a {
    text-decoration: underline;
    font-weight: 700;
}

a.elementor-button.elementor-button-link.elementor-size-sm.elementor-animation-shrink,
footer a,
li.elementor-icon-list-item a
{
    text-decoration: none!important;
    font-weight: 600;
}



.card-link,
.card-link * {
    text-decoration: none !important;
}

li.elementor-icon-list-item a{
    transition: 250ms;
}

li.elementor-icon-list-item a:hover{
    transform: scale(0.95);
}

a img:hover {
    transform: scale(0.95);
}

a img {
    transition: 250ms;
}



[type='radio'] {
    border-radius: 100%;
}

[type='checkbox']:checked,
[type='radio']:checked,
[class*='elementor-'] .elementor-element[class*='elementor-element-'] .elementor-field-group .elementor-field[type='checkbox']:checked,
[class*='elementor-'] .elementor-element[class*='elementor-element-'] .elementor-field-group .elementor-field[type='radio']:checked {
    border-color:        transparent;
    background-color:    currentColor;
    background-repeat:   no-repeat;
    background-position: center;
    background-size:     100% 100%;
}

[type='checkbox']:checked {
    background-image: url('data:image/svg+xml,%3csvg viewBox=\'0 0 16 16\' fill=\'white\' xmlns=\'http://www.w3.org/2000/svg\'%3e%3cpath d=\'M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z\'/%3e%3c/svg%3e');
}

[type='radio']:checked {
    background-image: url('data:image/svg+xml,%3csvg viewBox=\'0 0 16 16\' fill=\'white\' xmlns=\'http://www.w3.org/2000/svg\'%3e%3ccircle cx=\'8\' cy=\'8\' r=\'3\'/%3e%3c/svg%3e');
}

.elementor-heading-title {
    hyphens: auto;
}

.grow {
    transition: all .2s ease-in-out;
}

.grow:hover {
    transform: scale(1.05);
}

.grow-small {
    transition: all .2s ease-in-out;
}

.grow-small:hover {
    transform: scale(1.02);
}

.elementor-animation-shrink:hover {
    transition: all .2s ease-in-out;
    transform:  scale(0.95);
}

/*Header*/
span.green-font,
span.green-font a {
    font-weight: 500;
    color:       #9cc623;
}

.cover img {
    position:        absolute;
    width:           100%;
    height:          100%;
    object-fit:      cover;
    object-position: center center;
    inset:           0;

}

.cover {
    height: 100%;
}

/*
header .elementor-widget .elementor-icon-list-item, .elementor-widget .elementor-icon-list-item a {
    display: flex;
    font-size: inherit;
    flex-direction: column;
    align-items: flex-end;
}
*/

/*Responsive*/

@media (max-width: 768px) {

    .cover img {

        position: relative;

    }

}

/*Elementor Counter Widget*/

span.elementor-counter-number {
    margin-top:    12px;
    padding:       8px 22px;
    border-radius: 4px;
    background:    #434343;
}

/*Subheads*/
.subhead-box, .subhead-box h5 {
    display:          inline-block; /* Schiebt den Container auf die Breite des Inhalts */
    padding:          8px 24px 8px 48px; /* Innenabstände links/rechts, damit der Text atmen kann */
    color:            #ffc000; /* Schriftfarbe anpassen, wenn nötig */
    border-radius:    0px 6px 6px 0px; /* Optionale abgerundete Ecken */
    background-color: #444444; /* Grauer Hintergrund, Farbe nach Bedarf anpassen */
}

.subhead-box-footer, .subhead-box-footer h5 {
    display:          inline-block; /* Schiebt den Container auf die Breite des Inhalts */
    padding:          8px 24px 8px 48px; /* Innenabstände links/rechts, damit der Text atmen kann */
    color:            #fff; /* Schriftfarbe anpassen, wenn nötig */
    border-radius:    0px 6px 6px 0px; /* Optionale abgerundete Ecken */
    background-color: #444444; /* Grauer Hintergrund, Farbe nach Bedarf anpassen */
}

.subhead-box-no-border, .subhead-box-no-border h5 {
    display:          inline-block; /* Schiebt den Container auf die Breite des Inhalts */
    padding:          8px 24px 8px 24px; /* Innenabstände links/rechts, damit der Text atmen kann */
    color:            #ffc000; /* Schriftfarbe anpassen, wenn nötig */
    border-radius:    6px 6px 6px 6px; /* Optionale abgerundete Ecken */
    background-color: #444444; /* Grauer Hintergrund, Farbe nach Bedarf anpassen */
}

.subhead-box-no-border-form, .subhead-box-no-border-form h5 {
    font-size:        20px;
    display:          inline-block; /* Schiebt den Container auf die Breite des Inhalts */
    margin-top:       50px; /* Optionale abgerundete Ecken */
    margin-bottom:    12px;
    padding:          8px 24px 8px 24px; /* Innenabstände links/rechts, damit der Text atmen kann */
    color:            #ffc000; /* Schriftfarbe anpassen, wenn nötig */
    border-radius:    6px 6px 6px 6px;
    background-color: #444444; /* Grauer Hintergrund, Farbe nach Bedarf anpassen */
}

.subhead-box-dark, .subhead-box-dark h5 {
    display:          inline-block; /* Schiebt den Container auf die Breite des Inhalts */
    padding:          8px 24px 8px 48px; /* Innenabstände links/rechts, damit der Text atmen kann */
    color:            #444444; /* Schriftfarbe anpassen, wenn nötig */
    border-radius:    0px 6px 6px 0px; /* Optionale abgerundete Ecken */
    background-color: #ffc000; /* Grauer Hintergrund, Farbe nach Bedarf anpassen */
}



.subhead-yellow, .subhead-yellow h5 {
    display:          inline-block;
    padding:          8px 24px 8px 48px;
    color:            #444444;
    border-radius:    0px 6px 6px 0px;
    background-color: #fbb900;
}


.subhead-yellow-right, .subhead-yellow-right h5 {
    display:          inline-block;
    padding:          8px 24px 8px 48px;
    color:            #444444;
    border-radius:    6px 0px 0px 6px;
    background-color: #fbb900;
}



.subhead h5 {
    display:          inline-block;
    padding:          12px 24px 12px 24px;
    color:            #ffc000;
    border-radius:    6px;
    background-color: #444444;
    font-size:24px;
}


@media (max-width: 1366px) {

    .subhead-box, .subhead-box h5 {
        padding:8px 24px 8px 24px;
    }
}


@media (max-width: 1024px) {
    .subhead h5 {
        font-size:18px;
    }
}

.subhead-box, .subhead-box h5 {
    padding:          8px 24px 8px 24px;
}


/*Blog Cards*/

li.elementor-icon-list-item.elementor-repeater-item-81de587.elementor-inline-item {
    margin-top:       24px;
    padding:          6px 12px 6px 12px;
    border-radius:    0px 4px 4px 0px;
    background-color: #fbb900;
}

/*Kontakt Störer*/
.name-tag p {
    display:       inline-block;
    width:         auto;
    padding:       8px 38px;
    text-align:    center;
    border-radius: 12px 12px 0 0;
    background:    #f1f1f1;
}

/*Popup*/

.elementor-popup-modal .dialog-close-button {
    padding:       8px;
    border-radius: 4px;
}

/*WP MAPS*/



div#map1 {
    border: 3px solid #FBB900;
    border-radius: 4px;
}

.gmnoprint.gm-style-mtc-bbw {
    display: none;
}

.wpgmp_location_title {
    display: inline-block;
    padding: 6px 12px 6px 16px!important;
    border-radius: 0px 6px 6px 0px;
    background-color: #444444;
}

.wpgmp_location_title a.place_title{
    color: #FBB900!important;
    font-family: "Switzer Variable", Sans-serif!important;
}

body .wpgmp_listing_list .fc-item-default .wpgmp_locations {
    padding: 16px 0px !important;
}

p.user_message {
    padding: 0px 12px 0px 16px;
    color: #434343;
    font-weight: 500;
    font-family: "Switzer Variable", Sans-serif!important;
}

.wpgmp_locations_head {
    margin-bottom: 0px !important;
}


.location_listing1 {
    max-height: 835px;
    overflow-y: auto;
    border-radius: 4px;
    border: 3px solid;
    padding: 24px;
}

.cluster > img {
    opacity: 0 !important;
}

/* Unser eigenes Icon als Background setzen */
.cluster {
    background-image: url("https://lohnunternehmen.ytpi.net/wp-content/uploads/2026/02/cluster-1.png") !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
}

/* Zahl zentrieren & Style */
.cluster > div {
    color: #434343 !important;
    font-weight: 700 !important;
    font-size: 18px !important;
    line-height: 53px !important;
    width: 53px !important;
    font-family: 'Switzer Variable' !important;
}
.fc-item-default.fc-wait .wpgmp_locations{
    border-radius:4px!important;
}

label.form-label {
    font-weight: 500;
}

.elementor-element .blu-map div.categories_filter select, .elementor-element .blu-map div.wpgmp_search_form input.wpgmp_search_input {
    padding: 1rem .75rem;
}

span#wpgmp-results-count {
    font-size: 24px;
    font-weight: 700;
}


/*The Events Calender*/

body.archive.post-type-archive.post-type-archive-tribe_events.logged-in.admin-bar.wp-embed-responsive.wp-theme-hello-elementor.wp-child-theme-hello-theme-child-master.tribe-events-page-template.tribe-js.tribe-filter-live.hello-elementor-default.elementor-default.elementor-kit-6.customize-support.tec-is-android.dialog-body.dialog-buttons-body.dialog-container.dialog-buttons-container.e--ua-isTouchDevice.e--ua-blink.e--ua-chrome.e--ua-webkit {
    background: #f1f1f1;
}

a.tribe-events-calendar-list__event-title-link.tribe-common-anchor-thin {
    font-family: 'Switzer Variable';
    font-size:   28px;
}

.tribe-events-l-container,
.tribe-events-l-container p,
address.tribe-events-calendar-list__event-venue.tribe-common-b2 {
    font-family: 'Switzer Variable' !important;
}

button.tribe-events-c-view-selector__button.tribe-common-c-btn__clear {
    background: #fbb900;
    border-radius: 4px;
}

.tribe-events-c-top-bar.tribe-events-header__top-bar {
    padding:          8px;
    border-radius:    4px;
    background-color: #ffffff;
}

span.tribe-events-c-top-bar__datepicker-desktop.tribe-common-a11y-hidden {
    font-family: 'Switzer Variable';
    font-size:   16px;
}

a.tribe-common-c-btn-border-small.tribe-events-c-top-bar__today-button.tribe-common-a11y-hidden {
    font-size:  16px;
    background: #f1f1f1;
}

.tribe-events .tribe-events-calendar-list__event-date-tag-datetime {
    height: auto !important;
}

.tribe-events .tribe-events-calendar-list__event-date-tag-datetime {
    padding:       18px 18px !important;
    border:        3px solid #434343;
    border-radius: 4px;
    background:    #ffffff;
}

span.tribe-events-calendar-list__event-venue-title.tribe-common-b2--bold {
    position:      relative;
    display:       inline-block;
    padding-right: 6px;
    padding-left:  22px;
}

time.tribe-events-calendar-list__event-datetime {
    font-weight: 600;
    color:       #434343 !important;
}

span.tribe-events-calendar-list__event-venue-title.tribe-common-b2--bold:before {
    position:          absolute;
    top:               50%;
    left:              0;
    width:             20px;
    height:            20px;
    content:           '';
    transform:         translateY(-50%);
    color:             #434343;
    background-image:  url('https://lohnunternehmen.ytpi.net/wp-content/uploads/2025/12/pin-map.svg');
    background-repeat: no-repeat;
    background-size:   contain;
}

.tribe-events .tribe-events-calendar-list__event-date-tag-datetime {
    justify-content: center;
}

address.tribe-events-calendar-list__event-venue.tribe-common-b2 span {
    font-size: 20px;

}

a.tribe-events-calendar-list__event-title-link.tribe-common-anchor-thin,
.tribe-events .tribe-events-calendar-list__event-title-link:visited,
address.tribe-events-calendar-list__event-venue.tribe-common-b2 span {
    color: #434343;
}

.tribe-events .tribe-events-calendar-list__month-separator:after {
    display:          block;
    flex:             auto;
    height:           2px;
    margin-left:      20px;
    content:          '';
    background-color: #434343;
}

.tribe-events-calendar-list__event-description.tribe-common-b2.tribe-common-a11y-hidden p {
    font-size: 20px;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event-details {
    width: 100%;
}

.tribe-events-calendar-list .tec-events-calendar-list__event-categories .tec-events-calendar-list__category .tec-events-calendar-list__category-icon {
    width: 0 !important;
}

.tribe-events-calendar-list .tec-events-calendar-list__event-categories .tec-events-calendar-list__category {
    font-weight:   600 !important;
    padding-right: 12px;
    padding-left:  12px;
    border-radius: 4px !important;
}

.tec-events-calendar-list__category {
    font-size:   20px !important;
    font-weight: 500 !important;
}

time.tribe-events-calendar-list__event-datetime {
    font-size: 20px;
}

a.event-more-link,
a.event-more-link.elementor-button.elementor-button-link.elementor-size-sm.elementor-animation-shrink {
    margin-top: 24px;
}

ul.tribe-events-c-nav__list {
    display: none !important;
}

.tribe-events-c-subscribe-dropdown__container {
    display: none !important;
}

time.tribe-events-calendar-list__month-separator-text {
    font-size:   24px !important;
    font-weight: 600 !important;
    color:       #434343 !important;
}

a.event-more-link.elementor-button.elementor-button-link.elementor-size-sm.elementor-animation-shrink {
    background-color: transparent;
}
h1.tribe-events-single-event-title {
    font-size: 42px;
    margin-bottom: 24px;
}

/*Events Startseite*/

.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event-details {
    width: 100%!important;
}


h4.tribe-events-calendar-list__event-title.tribe-common-h6.tribe-common-h4--min-medium {
    margin: 0;
}
header.tribe-events-calendar-list__event-header {
    gap: 8px;
}

    .tribe-events-calendar-list .tribe-events-calendar-list__event-row + .tribe-events-calendar-list__event-row {
        padding-top: 50px !important;
        border-top:  3px dashed #d5d5d5 !important;
    }

    /*.tribe-events-calendar-list__event-details.tribe-common-g-col {*/
    /*    width: 1070px !important;*/
    /*}*/

    .tribe-events .tribe-events-calendar-list__event-header .tribe-events-calendar-list__event-venue {
        margin: 0 0 0 0!important;
        order: 3;
    }

    section.tribe-common-l-container.tribe-events-l-container {
        padding: 0 !important;
    }

    .tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event-row>.tribe-common-g-col {
        padding-right: 0;
    }

    .tribe-events .tribe-events-calendar-list__event-title {
        margin: 0!important;
    }


    .tribe-events-calendar-list__event-date-tag {
        margin-right: 40px;
        width: 150px!important;
    }

    .tec-events-category-color-filter .tec-events-category-color-filter__colors .tec-events-category-color-filter__color-circle {
        border: 2px solid !important;
    }


    .tribe-events .tribe-events-calendar-month__day-cell--selected,
    .tribe-events .tribe-events-calendar-month__mobile-events-icon--event{
        background-color: #FBB900!important;
    }

    .tribe-events .datepicker .month.active.focused,
    .tribe-events .datepicker .day.active, .tribe-events .datepicker .day.active:hover{
        background: #434343!important;
    }
    .tribe-events .datepicker .month.current:before,
    .tribe-events .datepicker .day.current:before{
        border: 1px solid #434343!important;;
    }

    .tribe-events .datepicker .month.current.focused:before{
        box-shadow: inset 0 0 0 1px #434343!important;
    }
    .tribe-events .datepicker .month.current {
        color: #434343!important;
    }

    @media (max-width: 871px) {
        .tribe-events-calendar-list__event-date-tag.tribe-common-g-col {
            margin-right: 40px;
            width: 96px !important;
        }

        .tribe-events-c-top-bar.tribe-events-header__top-bar{
            margin-top: 24px;
        }

        .tribe-events-c-top-bar.tribe-events-header__top-bar {
            background-color: transparent;
        }

        span.tribe-events-calendar-list__event-date-tag-daynum.tribe-common-h5.tribe-common-h4--min-medium {
            font-size: 20px;
        }

        button.tribe-common-c-btn__clear.tribe-common-h3.tribe-common-h--alt.tribe-events-c-top-bar__datepicker-button {
            margin-bottom: 24px;
            background-color: #fff;
            padding: 8px;
            border-radius: 4px;
        }

        .tribe-events-header__events-bar.tribe-events-c-events-bar {
            margin-left: 8px;
        }




        .tribe-events .tribe-events-header{
            justify-content: flex-end!important;
        }

        span.tribe-events-c-top-bar__datepicker-mobile{
            font-size: 16px;
        }

        .tribe-events .tribe-events-calendar-list__event-header .tribe-events-calendar-list__event-venue {
            margin: 0 0 0 0!important;
        }

        .tribe-events .tribe-events-calendar-list__event-title {
            margin: 0!important;
        }

        .tribe-events .tribe-events-calendar-list__event-header{
            gap: 12px;
        }

        .tribe-events .tribe-events-calendar-month__day-cell--selected .tribe-events-calendar-month__mobile-events-icon--event {
            background-color: #434343!important;
        }
    }

    .tribe-common.tribe-common--breakpoint-medium button.tribe-events-c-top-bar__datepicker-button{
        font-size: 16px!important;

    }




    .search-close-btn .elementor-button-text {
        position:    absolute;
        overflow:    hidden;
        clip:        rect(0, 0, 0, 0);
        width:       1px;
        height:      1px;
        margin:      -1px;
        padding:     0;
        white-space: nowrap;
        border:      0;
    }

    /*Mitgliedskarte*/
    .fc-infobox-layout-18 .fc-infobox-btn-wrapper {
        background-color: #fbb900 !important;
    }

    .fc-infobox .fc-infobox-title {
        color: #434343 !important;
    }

    a.fc-infobox-btn.fc-infobox-btn-icon {
        color: #434343 !important;
    }

    address.fc-infobox-address,
    .fc-infobox-list-item {
        font-size:   16px;
        line-height: 24px;
        color:       #434343 !important;
    }

    a.fc-infobox-btn.fc-infobox-btn-icon {
        margin-right: 12px;
    }

    .fc-infobox-list-item {
        align-items: center;

    }

    a.elementor-item.has-submenu:hover,
    a.elementor-item.has-submenu:active,
    a.elementor-item.has-submenu:focus {
        border-radius: 4px;
        background:    #fbb900;
    }

a.elementor-item:hover,
a.elementor-item:active,
a.elementor-item:focus{
    border-radius: 4px;
    background: #fbb900;
}


li.current_page_parent a.elementor-item.has-submenu:active {
        border-radius: 4px;
        background:    #fbb900;
    }

    .current-menu-ancestor.current-menu-parent.current_page_parent.current_page_ancestor {
        border-radius: 4px;
        background:    #fbb900;
    }

    @media (max-width: 1024.98px) {
        .elementor-element.elementor-element-85ed79f.e-con-full.e-flex.e-con.e-child {
            border-radius: 4px;
            background:    #f1f1f1;

        }
    }

    /*div.categories_filter select, .categories_filter input[type=button] {*/
    /*    color:         #434343 !important;*/
    /*    background:    url(../images/white_select_arrow.png) no-repeat 99% 50% #ffffff !important;*/
    /*    border-radius: 4px !important;*/
    /*    margin-right:  48px !important;*/
    /*}*/

    /*.wpgmza-category-filter select::after {*/
    /*    color: #f1f1f1 !important;*/
    /*}*/

    /*.wpgmp_filter_wrappers {*/
    /*    position: absolute;*/
    /*    top:      -120px;*/
    /*    z-index:  20;*/
    /*    right:    -50%;*/
    /*}*/

    /*.tribe-events-calendar-list__event-row:nth-child(2):not(:last-child) {*/
    /*    padding-bottom: 50px;*/
    /*    border-bottom: 1px dashed;*/
    /*    color: #434343;*/
    /*}*/

    .contact-widget span.elementor-icon-list-icon {
        padding:       15px;
        border-radius: 72px;
        background:    #fbb900;
    }

    .e-contact-buttons__contact-icon-link .e-fas-globe {
        display: none !important;
    }

    .e-contact-buttons__contact-icon-link.is-youtube .e-contact-buttons__contact-icon-container {
        background:       url('/wp-content/uploads/2026/01/youtube-icon.svg') center/24px 24px no-repeat;
        background-color: #fbb900;
    }

    .e-contact-buttons__contact-icon-link.is-facebook .e-contact-buttons__contact-icon-container {
        background:       url('/wp-content/uploads/2026/01/2023_Facebook_icon.svg.png') center/24px 24px no-repeat;
        background-color: #fbb900;
    }
.e-contact-buttons__contact-icon-link.is-instagram
.e-contact-buttons__contact-icon-container {
    background: url('https://lohnunternehmen.ytpi.net/wp-content/uploads/2026/02/Instagram-icon.svg') center/24px 24px no-repeat;
    background-color: #fbb900;
}

    svg.e-font-icon-svg.e-fas-info-circle {
        fill: #444444 !important;
    }

    button.e-contact-buttons__chat-button.e-contact-buttons__chat-button-shadow.has-size-medium.elementor-animation-grow.has-entrance-animation-duration-normal,
    button.e-contact-buttons__close-button.e-contact-buttons__chat-button-shadow.has-size-medium {
        border: solid 2px #ffff;
    }

    .tippy-box[data-theme~='blu'] {
        font-size:     16px;
        font-weight:   600;
        padding:       6px 10px;
        color:         #434343;
        border-radius: 10px;
        background:    #fbb900;
        box-shadow:    0 10px 30px rgba(0, 0, 0, .25);
    }

    .tooltip-hover:hover {
        padding:    4px;

        background: #fbb900;
    }

    .tooltip-hover {
        padding:       4px;
        border-radius: 4px;
    }

    .tribe-events-calendar-month__calendar-event-datetime,
    a.tribe-events-calendar-month__calendar-event-title-link.tribe-common-anchor-thin.tooltipstered {
        font-size:   16px !important;
        font-weight: 600;
    }

    /* Tooltip-Datum/Uhrzeit */
    .tribe-events-calendar-month__calendar-event-tooltip-datetime {
        font-size:   16px !important;
        line-height: 1.4;
    }

    /* Tooltip-Titel und Link */
    .tribe-events-calendar-month__calendar-event-tooltip-title,
    .tribe-events-calendar-month__calendar-event-tooltip-title-link {
        font-size:   16px !important;
        line-height: 1.4;
    }

    /* Tooltip-Beschreibung */
    .tribe-events-calendar-month__calendar-event-tooltip-description {
        font-size:   16px !important;
        line-height: 1.4;
    }

    .tribe-events-calendar-month__calendar-event-tooltip {
        width:     324px !important;
        max-width: none !important;
    }

    .tooltipster-base.tribe-events-tooltip-theme {
        max-width: 420px !important;
    }

    /*Veranstaltungs detailansicht Unterseiten*/

.single-tribe_events ul {
    padding-inline-start: 0;
}

.single-tribe_events * {
    font-family: "Switzer Variable", Sans-serif!important;
}
.tribe-events-single-event-description.tribe-events-content {
    padding: 24px;
    background: #F1F1F1;
    border-radius: 4px;
}
.tribe-events-single-event-description.tribe-events-content p {
margin-bottom: 0;
}

.tribe-events-schedule.tribe-clearfix {
    display: none;
}

ul.tribe-events-sub-nav {
    background: #F1F1F1;
    padding: 20px;
    border-radius: 4px;
}

    a.tribe-events-gmap {
    display: none;
    }

    li.tribe-events-meta-item.tribe-venue-location {
    padding-top: 0px!important;
    }

    h2.tribe-events-related-events-title,
    ul.tribe-related-events.tribe-clearfix {
        display: none;
    }

    /*.tribe-events-event-meta {*/
    /*    flex-direction: column;*/
    /*}*/

    h2.tribe-events-single-section-title {
        font-size:      20px !important;
        padding-bottom: 12px;
    }

    .tribe-events-meta-group .tribe-events-single-section-title {
        text-transform: none;
    }

    ul.tribe-events-meta-list {
        font-family: 'Switzer Variable';
        font-size:   16px !important;
    }

    .tribe-events-meta-group.tribe-events-meta-group-details {
        width: auto;
    }

    li.tribe-events-meta-item:not(:first-child) {
        padding-top: 24px;
    }

    .tribe-events-meta-group {
        margin-right: 100px;

    }

    .tribe-events-meta-group {
        flex: 1 0 210px;
    }

    .ytpi-ticker {
        overflow:      hidden;
        width:         100%;
        padding:       10px 0;
        border:        0px solid rgba(0, 0, 0, .08);
        border-radius: 10px;
        background:    #ffffff
    }

    .ytpi-ticker__viewport {
        overflow:    hidden;
        white-space: nowrap
    }

    .ytpi-ticker__track {
        display:     inline-flex;
        align-items: center;
        animation:   ytpiTicker var(--ytpi-ticker-speed, 30s) linear infinite;
        gap:         14px;
        will-change: transform;
    }

    .ytpi-ticker:hover .ytpi-ticker__track {
        animation-play-state: paused
    }

    .ytpi-ticker__item {
        font-weight:     600;
        text-decoration: none;
        color:           inherit;
    }

    .ytpi-ticker__item:hover {
        text-decoration: underline
    }

    .ytpi-ticker__sep {
        opacity: .35
    }

    @keyframes ytpiTicker {
        from {
            transform: translateX(0)
        }
        to {
            transform: translateX(-50%)
        }
    }

.ytpi-ticker__track {
    display: inline-flex;
    align-items: center;
    animation: ytpiTicker var(--ytpi-ticker-speed, 30s) linear infinite;
    gap: 14px;
    will-change: transform;
    font-size: 0;                 /* verhindert unsichtbare Leerzeichen */
}
.ytpi-ticker__item,
.ytpi-ticker__sep {
    font-size: 16px;              /* gewünschte Schriftgröße */
}

/* Abstand links/rechts vom Punkt */
.ytpi-ticker__sep{
    display: inline-block;
    margin: 0 14px;      /* <- genau hier stellst du den Abstand ein */
    opacity: .35;
}

/* optional: falls es noch zu dicht wirkt */
.ytpi-ticker__item{
    padding: 0;          /* bleibt neutral */
}

    .ytpi-banner {
        font-weight: 500;
        display:     flex;
        align-items: center;
        padding:     8px 12px 8px 12px;
        background:  #ffffff;
        gap:         12px;
    }

    .ytpi-banner__viewport {
        overflow: hidden;
        flex:     1;
    }

    .ytpi-banner__track {
        display:    flex;
        transition: transform .35s ease;
    }

    .ytpi-banner__track span {
        min-width:   100%;
        text-align:  center;
        white-space: nowrap;
    }

    .ytpi-banner__nav {
        font-size:   20px;
        line-height: 1;
        cursor:      pointer;
        border:      none;
        background:  none;
    }

    .ytpi-banner a {
        text-decoration: underline;
    }

    button.ytpi-banner__nav.next,
    button.ytpi-banner__nav.prev {
        padding:          8px;
        background-color: navajowhite;
    }

    /* Nested Tabs: nur weicher Wechsel, ohne Layout / Breite zu zerstören */
    .e-n-tabs .e-n-tabs-content > [role='tabpanel'] {
        transition: opacity .25s ease, transform .25s ease;
    }

    /* Inaktiv: Elementor versteckt das meist per display:none, daher nur fürs aktive relevant */
    .e-n-tabs .e-n-tabs-content > [role='tabpanel'].e-active {
        transform: translateY(0);
        opacity:   1;
    }

    /* Animation auf den INNEREN Inhalt des aktiven Panels */
    .e-n-tabs .e-n-tabs-content > [role='tabpanel'].e-active .e-con-inner,
    .e-n-tabs .e-n-tabs-content > [role='tabpanel'].e-active .elementor-element {
        animation: enTabsFadeUp .25s ease both;
    }

    @keyframes enTabsFadeUp {
        from {
            opacity:   0;
            transform: translateY(10px);
        }
        to {
            opacity:   1;
            transform: translateY(0);
        }
    }

    span.title-contact-form {
        font-size:   24px;
        font-weight: 600;

    }

    .truncate-2 {
        display:            -webkit-box;
        overflow:           hidden;
        -webkit-line-clamp: 2; /* Anzahl der Zeilen */
        -webkit-box-orient: vertical;
    }

    .has-hover-preview {
        position: relative;
    }

    .has-hover-preview .hover-preview {
        position:       absolute;
        z-index:        50;
        top:            0;
        left:           100%;
        width:          320px;
        padding:        0;
        transition:     .2s ease;
        transform:      translateX(10px);
        pointer-events: none;
        opacity:        0;
        border:         solid 3px;
        border-radius:  4px;
        background:     white;
        box-shadow:     0 10px 30px rgba(0, 0, 0, .35);
    }

    .has-hover-preview:hover .hover-preview {
        transform: translateX(0);
        opacity:   1;
    }

    .download-card.has-hover-preview:hover .hover-preview,
    .download-card.has-hover-preview:focus-within .hover-preview {
        transform: translateX(0);
        opacity:   1;
    }

    span.headings-form {
        font-size:   20px;
        font-weight: 600;
    }

    .elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option {
        padding-bottom:     12px;
        padding-inline-end: 28px;
    }

    .elementor-field-option {
        display:     flex;
        align-items: flex-start;
    }

    .elementor-field-option input[type='checkbox'] {
        margin-top:   3px;
        margin-right: 8px;
    }

    .elementor-field-option label {
        line-height:   1.4;
        margin-bottom: 12px;

    }

    /* Checkbox Hintergrund */
    .elementor-field-type-checkbox input[type='checkbox'] + label:before {
        border-color:     #444444;
        background-color: #444444;
    }

    /* Haken-Farbe */
    .elementor-field-type-checkbox input[type='checkbox']:checked + label:before {
        color: #ffc000;
    }

    /* Info-Block: echtes Input raus */
    .elementor-field-group-field_5009f9c input#form-field-field_5009f9c,
    .elementor-field-group-field_5009f9c input#form-field-field_5009f9c,
    .elementor-field-group-field_a8bbba8 input#form-field-field_a8bbba8,
    .elementor-field-group-field_fd383df input#form-field-field_fd383df,
    .elementor-field-group-field_62e4637 input#form-field-field_62e4637,
    .elementor-field-group-field_e7a99d6 input#form-field-field_e7a99d6,
    .elementor-field-group-field_b4060d4 input#form-field-field_b4060d4,
    .elementor-field-group-field_7ba6265 input#form-field-field_7ba6265,
    .elementor-field-group-field_037c29d input#form-field-field_037c29d,
    .elementor-field-group-field_d727b92 input#form-field-field_d727b92,
    input#form-field-field_8483be5{
        display: none !important;
        cursor:  text !important;
    }

    label.elementor-field-label {
        cursor: text !important;
    }

    @media (hover: none) {
        .clamp-2 {
            cursor: pointer;
        }
    }

    .download-title .elementor-icon-list-text {
        display:            -webkit-box;
        overflow:           hidden;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
    }

    /* Thema: wenn Texteditor ein <p> rendert, clamp auf p */
    .download-topic p {
        display:            -webkit-box;
        overflow:           hidden;
        margin:             0;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
    }

    /* Fallback: falls kein <p> existiert */
    .download-topic {
        display:            -webkit-box;
        overflow:           hidden;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
    }

    select#download-thema {
        font-family:   'Switzer Variable';
        width:         250px;
        border:        2px solid #434343;
        border-radius: 4px;
    }

    span.page-numbers.current {
        padding:       6px 14px;
        border-radius: 4px;
        background:    #fbb900;
        font-size: 20px;
    }

    a.page-numbers {
        font-size: 20px;
        padding:       6px 14px;
    }

    a.page-numbers:hover {
        border-radius: 4px;
        background:    #fbb900;
        font-size: 20px;
    }

#reset-download-filter {
    display: none;
    opacity: 0;
    transition: opacity .3s ease;
}

/* Wrapper */
.ytpi-dl { max-width: 520px; }

/* Row: Icon + Button */
.ytpi-dl-row{
    display:flex;
    align-items:center;
    gap:14px;
}

/* Icon */
.ytpi-dl-icon{
    width:34px;
    height:34px;
    display:inline-block;
    flex:0 0 auto;
    border-radius:8px;
    background: rgba(0,0,0,.06);
    position:relative;
}

.ytpi-dl-icon--lock:before,
.ytpi-dl-icon--open:before{
    content:"";
    position:absolute;
    inset:0;
    margin:auto;
    width:18px;
    height:18px;
    opacity:.9;
    background-size:18px 18px;
    background-repeat:no-repeat;
    background-position:center;
}

/* Simple inline SVG as background images */
.ytpi-dl-icon--lock:before{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='11' width='18' height='11' rx='2' ry='2'/%3E%3Cpath d='M7 11V7a5 5 0 0 1 10 0v4'/%3E%3C/svg%3E");
}

.ytpi-dl-icon--open:before{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpolyline points='7 10 12 15 17 10'/%3E%3Cline x1='12' y1='15' x2='12' y2='3'/%3E%3C/svg%3E");
}

/* Button container */
.ytpi-dl-btnwrap{ position:relative; }

/* Disabled button style (looks like a button) */
.ytpi-dl-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:14px 42px;
    border-radius:999px;
    font-weight:600;
    user-select:none;
    position:relative;
}

.ytpi-dl-btn--disabled{
    background:#F2C94C;
    color:#fff;
    opacity:.75;
    cursor:not-allowed;
}

/* Overlay: little lock badge on right side of button */
.ytpi-dl-overlay{
    position:absolute;
    right:-10px;
    top:50%;
    transform:translateY(-50%);
    width:34px;
    height:34px;
    border-radius:999px;
    background:#fff;
    box-shadow: 0 4px 16px rgba(0,0,0,.12);
    display:flex;
    align-items:center;
    justify-content:center;
    pointer-events:none;
}

.ytpi-dl-overlay-lock{
    width:18px;
    height:18px;
    background-size:18px 18px;
    background-repeat:no-repeat;
    background-position:center;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='11' width='18' height='11' rx='2' ry='2'/%3E%3Cpath d='M7 11V7a5 5 0 0 1 10 0v4'/%3E%3C/svg%3E");
    opacity:.85;
}

/* Note box under button */
.ytpi-dl-note{ margin-top:10px; }
.ytpi-dl-note-inner{
    background:#F2C94C;
    color:#fff;
    border-radius:14px;
    padding:14px 16px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}

.ytpi-dl-login{
    background:rgba(255,255,255,.95);
    color:#B48812;
    padding:10px 16px;
    border-radius:999px;
    font-weight:700;
    text-decoration:none;
    white-space:nowrap;
}

/* Tooltip bubble */
.ytpi-tooltip{
    position:absolute;
    z-index:9999;
    padding:10px 12px;
    border-radius:12px;
    background:#111;
    color:#fff;
    font-size:13px;
    line-height:1.35;
    max-width:260px;
    box-shadow:0 12px 28px rgba(0,0,0,.22);
    transform: translate(-50%, -8px);
    pointer-events:none;
}

.ytpi-tooltip:after{
    content:"";
    position:absolute;
    left:50%;
    bottom:-6px;
    transform:translateX(-50%);
    border-width:6px 6px 0 6px;
    border-style:solid;
    border-color:#111 transparent transparent transparent;
}


    .elementor-menu-toggle {
        justify-content: flex-start;
        width:           33px;
    }

    strong.ti-rating.ti-rating-large,
    .ti-rating-text {
        display: none !important;
    }

    span.elementor-button-content-wrapper svg {
        fill: currentColor;
    }

button.search-filter-input-button.search-filter-field__input {
    padding: 10px 24px 10px 24px;
    transition: all .2s ease-in-out;

}

button.search-filter-input-button.search-filter-field__input:hover {
    transform: scale(0.95);
    background:#FBB900!important;
    border:none!important;
}

.fc-infobox-layout-18 .fc-infobox-btn-wrapper {
    justify-content: start!important;
}

.infowindow-close {
    right: 12px!important;
    top: 12px!important;
}



@media (max-width: 768px) {

        a.tribe-events-calendar-list__event-title-link.tribe-common-anchor-thin {
            font-size: 18px;
        }

        time.tribe-events-calendar-list__event-datetime {
            font-size: 16px;
        }

        time.tribe-events-calendar-list__event-datetime {
            margin-top: 12px;
        }

        /*.elementor-nav-menu--dropdown.elementor-nav-menu__container {*/
        /*    width: 360px !important;*/
        /*    padding: 0 20px;*/
        /*    margin: 0 auto;*/
        /*}*/



    }

    @media (max-width: 767px) {

        .elementor-25 .elementor-element.elementor-element-5a9925a {
            align-items: center;
        }

        /*.elementor-element.elementor-element-bd13975.e-con-full.e-flex.e-con.e-child{*/
        /*    justify-content: center;*/
        /*}*/

        .elementor-element.elementor-element-bd13975.e-con-full.e-flex.e-con.e-child {
            flex-direction: column-reverse;
            justify-content: center;
            align-items: center;
        }
    }


    nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
        border: 2px solid;
    }

    button.e-contact-buttons__chat-button.e-contact-buttons__chat-button-shadow.has-size-medium.elementor-animation-grow.has-entrance-animation.has-entrance-animation-delay.has-entrance-animation-duration-fast.fadeInUp.visible {
        border: 3px solid #3C3C3C;
    }

    button.e-contact-buttons__chat-button.e-contact-buttons__chat-button-shadow.has-size-medium.elementor-animation-grow.has-entrance-animation.has-entrance-animation-delay.has-entrance-animation-duration-fast.fadeInUp.visible:hover {
        border: 3px solid #fff;
    }

    .elementor-nav-menu--dropdown {
        border: 3px solid #3C3C3C !important;
    }


    .page-id-1811 .elementor-widget.elementor-widget-text-editor{
        line-height: 28px;

    }

    .elementor-1859 .elementor-element.elementor-element-554c522 {
        --e-icon-list-icon-size: 18px;
        --icon-vertical-align: flex-start;
        --icon-vertical-offset: 1px;
    }

    [type='checkbox'], [type='radio'] {
        border-color: #3C3C3C;
        background-color: #F1F1F1;

    }
    [type='checkbox']:checked, [type='radio']:checked {
        background-color: #3C3C3C;

    }

    .page-id-48 .footer-cards{
        display:none;
    }

    /* === Scope: nur Map1 === */
    .wpgmp_listing_list[data-container="wpgmp-listing-map1"] .wpgmp_locations{
        display: flex;
        align-items: stretch;
        gap: 24px;
        width: 100%;
        box-sizing: border-box;

        background: transparent !important;
        padding: 0 !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    /* Linke Card */
    .wpgmp_listing_list[data-container="wpgmp-listing-map1"] .ytpi-card-content{
        flex: 1 1 auto;
        min-width: 0;
        background:#fff;
        border-radius:14px;
        padding: 0 0 16px 0;
        box-shadow: 0 8px 20px rgba(0,0,0,.08);
    }

    /* Rechte Logo-Card (echtes Logo) */
    .wpgmp_listing_list[data-container="wpgmp-listing-map1"] .ytpi-logo-card{
        flex: 0 0 170px;
        width: 170px;

        background:#fff;
        border-radius:14px;
        padding:14px;
        display:flex;
        align-items:center;
        justify-content:center;
    }

    /* 🔥 WICHTIG: Platzhalter für Karten OHNE Logo */
    .wpgmp_listing_list[data-container="wpgmp-listing-map1"]
    .wpgmp_locations:not(:has(.ytpi-logo-card))::after{
        content:"";
        flex: 0 0 170px;
        width: 170px;
    }

    /* Logo Bild */
    .wpgmp_listing_list[data-container="wpgmp-listing-map1"] .ytpi-logo-card img{
        width:100%;
        height:90px;
        object-fit:contain;
    }

    /* Mobile */
    @media (max-width:768px){
        .wpgmp_listing_list[data-container="wpgmp-listing-map1"] .wpgmp_locations{
            flex-direction:column;
            gap:12px;
        }

        .wpgmp_listing_list[data-container="wpgmp-listing-map1"]
        .wpgmp_locations:not(:has(.ytpi-logo-card))::after{
            display:none;
        }

        .wpgmp_listing_list[data-container="wpgmp-listing-map1"] .ytpi-logo-card{
            width:100%;
        }
    }



    .fc-item-default .wpgmp_locations .wpgmp_location_title {
        margin-top: 20px;
    }

    .wpgmp_locations {
        align-items: center;
    }

    .fc-item-default.fc-wait .wpgmp_locations .ytpi-user-logo img {
        margin-right: 0!important;
    }

/* Suchergebnisse */
a.elementor-post__read-more {
    border: 3px solid #FBB900;
    border-radius: 4px;
    padding: 12px;
}

.infoBox.infoBoxTail {
    border: 3px solid;
}

/* Woocommerce single product */

.single-product div#primary,
.post-type-archive-product div#primary {
    margin-top: 24px;
}

.woocommerce div.product .product_title {
    margin-top: -16px;
}

.woocommerce-product-details__short-description {
    padding: 18px;
    background: #f1f1f1;
    margin: 18px 0 20px 0;
    border-radius:4px;
}

input[type=date], input[type=email], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=url], select, textarea {
    border-radius: 4px;
}


.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price {
    color: #414141;
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 0;
}

p.wc-gzd-additional-info {
    font-size: 18px !important;
    margin: 12px 0 !important;
}

button.single_add_to_cart_button.button.alt {
    padding: 13px;
}

.woocommerce div.product form.cart {
    margin-bottom: 1em;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt {
    background-color: #FBB900;
    color: #414141;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:hover {
    background-color: #414141;
    color: #FBB900;
}

.woocommerce div.product div.images img {
    border: 2px solid #414141;
    border-radius: 4px;
}

li#tab-title-reviews,
ul.tabs.wc-tabs{
    display: none;
}

div#tab-description {
    padding: 18px;
    background: #f1f1f1;
}

/* Woocommerce similar products */


li.product.type-product {
    border: 2px solid #414141;
    border-radius: 4px;
}

.woocommerce ul.products li.product a img {
    border-bottom: 2px solid #414141;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
    padding: 0px 16px 16px 16px;
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) ul.products li.product .price,
p.wc-gzd-additional-info.wc-gzd-additional-info-loop.tax-info,
p.wc-gzd-additional-info.wc-gzd-additional-info-loop.shipping-costs-info
{
    padding: 0px 16px 0px 16px;
}

a.button.product_type_simple.add_to_cart_button.ajax_add_to_cart {
    margin: 0px 16px 16px 16px;
    padding: 16px;
}

.woocommerce span.onsale {
    background-color: #FBB900;
    color: #434343;
    border-radius: 4px;
}

.woocommerce ul.products li.product .onsale {
    top: 16px;
    right: 16px;
    padding: 0 6px 0 6px;
}

.price del .woocommerce-Price-amount {
    font-size: 20px;
    color: #434343;
    opacity: 0.7;
    text-decoration: line-through;
    padding-right: 12px;
}

.price del,
.price ins{
    text-decoration: none !important;
}

.price ins{
    padding: 6px 12px 6px 12px;
    background: #414141!important;
    border-radius: 4px;
    color: #FBB900;
}

p.wc-gzd-additional-info.wc-gzd-additional-info-loop.tax-info,
p.wc-gzd-additional-info.wc-gzd-additional-info-loop.shipping-costs-info{
    font-size: 16px !important;
}

ul.products.columns-4 p.wc-gzd-additional-info {
    font-size: 16px !important;
    margin: 6px 0 !important;
}

ul.products.columns-4 span.price.woocommerce ul.products li.product .price {
    margin-bottom: 12px!important;
}


ul.products.columns-4 .price ins {
    padding: 8px;
    font-size: 16px;
}

ul.products.columns-4  .woocommerce-Price-amount bdi{
    font-size: 16px;
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) ul.products li.product .price {
    color: #414141;
}
/* Woocommerce similar products ENDE */

/* Produkt-Grid als Flex-Container */
ul.products {
    display: flex;
    flex-wrap: wrap;
}

/* Jede Produktkarte */
ul.products li.product {
    display: flex;
    flex-direction: column;
}

/* Link-Bereich flexibel machen */
ul.products li.product .woocommerce-LoopProduct-link {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

/* Zusatzinfos ebenfalls wachsen lassen */
ul.products li.product .price {
    margin-bottom: 10px;
}

/* Button immer unten */
ul.products li.product .button {
    margin-top: auto;
}

ul.products {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}

ul.products li.product {
    margin: 0 !important;
    width: 100% !important;
}


ul.products::before,
ul.products::after,
ul.products.columns-4::before,
ul.products.columns-4::after {
    content: none !important;
    display: none !important;
}

.woocommerce ul.products li.product .button{
    text-align:center;
}

/* Woocommerce Archiv */
p.woocommerce-result-count {
    display: none;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button {
    background-color:transparent;
    border: 2px solid #FBB900;
    border-radius: 4px;
    transition: all .2s ease-in-out;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button:hover {
    transform:  scale(0.95);
    background-color:transparent;
}

/* Woocommerce Cart */

.woocommerce-cart .page-content {
    margin-top: 124px;
}

a.wc-block-components-button.wp-element-button.wc-block-cart__submit-button.contained {
    color: #414141;
    background: #FBB900;
    border-radius: 4px;
    font-weight: 600;
}

.wc-block-components-main table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name,
.wc-block-components-main span.wc-block-formatted-money-amount.wc-block-components-formatted-money-amount.wc-block-components-product-price__value,
.wc-block-components-main .wc-block-components-product-metadata__description,
.wc-block-components-main button.wc-block-cart-item__remove-link,
.wc-block-components-panel__button{
    font-size: 16px!important;
}

.woocommerce-cart  table tfoot th, table thead th,
h2.wp-block-woocommerce-cart-order-summary-heading-block.wc-block-cart__totals-title{
    font-size: 16px;
    text-transform: none;
}

p.wc-block-components-totals-footer-item-tax {
    font-size: 16px;
    padding-top: 18px;
}

td.wc-block-cart-item__image {
    width: 200px;
}

td.wc-block-cart-item__image {
    padding: 0 !important;
}

.wc-block-cart__main .wc-block-cart-items td {

    padding: 20px 0 20px 24px;
}

td.wc-block-cart-item__image {
    padding: 20px 0 12px 0 !important;
}

/* Woocommerce Checkout */

.woocommerce-gzd-checkout h3.wc-block-components-product-name,
span.wc-block-formatted-money-amount.wc-block-components-formatted-money-amount.wc-block-components-product-price__value.wc-block-components-order-summary-item__individual-price,
.wc-block-components-product-metadata__description p {
    font-size: 16px;
}

span.wc-block-components-checkbox__label {
    font-size: 16px;
}


.elementor-menu-cart__footer-buttons {
    display: flex;
    padding: 0px;
    flex-direction: column;
}

.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title .wc-block-components-checkout-order-summary__title-text{
    margin: 0 0 16px 16px!important;
}

/* Woocommerce Cart Offcanvas */
/*span.elementor-button-text {*/
/*    font-size: 16px;*/
/*}*/

.elementor-menu-cart--items-indicator-plain .elementor-menu-cart__toggle .elementor-button-icon {
    gap: 4px;
}

.elementor-menu-cart__footer-buttons .elementor-button--view-cart{
    background-color: #414141;
    color: #FBB900;
    border: #FBB900;
    border-radius:4px;
    transition: all .2s ease-in-out;
}

.elementor-menu-cart__footer-buttons .elementor-button--checkout{
    background-color: #FBB900;
    color: #414141;
    border: #414141;
    border-radius:4px;
    transition: all .2s ease-in-out;
}


.elementor-menu-cart__footer-buttons .elementor-button--checkout:hover{
    transform:  scale(0.95);
    background-color: #FBB900;
    color: #414141;
    border: #414141;
}

.elementor-menu-cart__footer-buttons .elementor-button--view-cart:hover {
    transform:  scale(0.95);
    background-color: #414141;
    color: #FBB900;
    border: #FBB900;
}

.elementor-menu-cart__product-remove,
.elementor-menu-cart__product-remove:hover{
border: 1px solid #262626;
}

.elementor-menu-cart__product-remove:after, .elementor-menu-cart__product-remove:before {
    background: #414141;
    transition: all .2s ease-in-out;
}

.elementor-menu-cart__product-remove:hover:after, .elementor-menu-cart__product-remove:hover:before{
    transform:  scale(1.05);
    background: #414141;
}

.elementor-menu-cart__subtotal {
    font-weight: 700;
}

.elementor-menu-cart__subtotal strong {
    font-weight: 600;
}

.elementor-menu-cart__close-button:after, .elementor-menu-cart__close-button:before {
    background: #414141;
    transition: all .2s ease-in-out;
}
.elementor-menu-cart__close-button:hover:after, .elementor-menu-cart__close-button:hover:before {
    background: #414141;
}


/* Woocommerce Checkout */
.wc-gzd-checkout .wc-block-components-order-summary, .wc-gzd-checkout .wc-block-components-order-summary.is-large {
    background-color: #fff!important;
    padding: 16px;
}

span.quantity,
span.wc-block-components-totals-item__label,
span.wc-block-formatted-money-amount.wc-block-components-formatted-money-amount.wc-block-components-totals-item__value,
span.price.wc-block-components-product-price{
    color: #414141;
    font-size: 16px;
}


.elementor-menu-cart__subtotal{
    border:none;
    text-align: left;
}

.wc-gzd-checkout-submit .wp-block-woocommerce-checkout-order-summary-block,
.wp-block-woocommerce-checkout-order-summary-block{
    border: 2px solid #FBB900!important;
}

.wc-block-components-checkbox.wc-gzd-checkbox span {
    font-size: 16px;
}

.woocommerce-gzd-checkout .wc-block-components-order-summary .wc-block-components-order-summary-item {
    padding-bottom: 32px;
}

.woocommerce-gzd-checkout  button.wc-block-components-button.wp-element-button.wc-block-components-totals-coupon__button.contained,
.woocommerce-cart button.wc-block-components-button.wp-element-button.wc-block-components-totals-coupon__button.contained{
    padding: 0px ;
    font-size: 16px ;
}

button.wc-block-components-button {
    transition: all .2s ease-in-out!important;
}

[type=button]:hover,
button:hover {
    background: #FBB900;
    transform:  scale(0.95);
}

a.wc-block-components-checkout-return-to-cart-button {
    transition: all .2s ease-in-out;
}

a.wc-block-components-checkout-return-to-cart-button:hover {
    transform:  scale(0.95);
}

span.wc-block-components-address-form__address_2-toggle,
span.wc-block-components-payment-method-label,
div#radio-control-wc-payment-method-options-invoice__content,
textarea.wc-block-components-textarea {
    font-size: 16px;
}


/*DeluTa*/

.elementor-form .elementor-field-group-field_e0beecd,
.elementor-form .elementor-field-group-field_b5a1e6b,
.elementor-form .elementor-field-group-field_e703dcc,
.elementor-form .elementor-field-group-field_3dc664e,
.elementor-form .elementor-field-group-field_786ab10,
.elementor-form .elementor-field-group-field_490d9a6,
.elementor-form .elementor-field-group-field_d16fb3b,
.elementor-form .elementor-field-group-field_982ce34,
.elementor-form .elementor-field-group-field_a2030af,
.elementor-form .elementor-field-group-field_81ef518{
    position: absolute !important;
    left: -9999px !important;
    top: auto !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.blu-ausstattung-table .blu-qty-input{
    width: 90px;
    min-width: 90px;
    padding: 8px 10px;
    border: 1px solid #bdbdbd;
    background: #fff;
    font: inherit;
    box-sizing: border-box;
}

.blu-ausstattung-table td{
    vertical-align: top;
}

section#comments {
    display: none;
}

/* Elementor Checkbox-Feld ausblenden (aber NICHT display:none) */
.elementor-form .elementor-field-group-field_f95dea7{
    position: absolute !important;
    left: -9999px !important;
    top: auto !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.elementor-form .elementor-field-group-field_f95dea7 .elementor-field-subgroup{
    position: absolute !important;
    left: -9999px !important;
}

/* 2) Tabelle Layout */
.blu-kat-table{
    width:100%;
    border-collapse:collapse;
}
.blu-kat-table th,
.blu-kat-table td{
    border:1px solid #3C3C3C;
    padding:10px 12px;
    vertical-align:top;
}
.blu-kat-table th{
    font-weight:700;
}

/* 3) Checkbox-Spalte */
.blu-kat-table .blu-check-col{
    width:64px;
    text-align:center;
    vertical-align:middle;
}

/* 4) Custom Checkbox (optisch wie rote Kästchen im Mock) */
.blu-kat-table .blu-row-check{
    appearance:none;
    -webkit-appearance:none;
    width:22px;
    height:22px;
    border:1px solid #3C3C3C;
    border-radius:2px;
    cursor:pointer;
    display:inline-block;
    position:relative;
}
.blu-kat-table .blu-row-check:checked{
    background:#3C3C3C;
}
.blu-kat-table .blu-row-check:checked::after{
    content:"";
    position:absolute;
    left:7px;
    top:3px;
    width:6px;
    height:12px;
    border:solid #fff;
    border-width:0 3px 3px 0;
    transform:rotate(45deg);
}

/* Optional: Zeile hover/click nicer */
.blu-kat-table tbody tr{
    cursor:pointer;
}
.blu-kat-table tbody tr:hover{
    background:rgba(0,0,0,0.03);
}
.blu-kat-table tbody tr.blu-selected{
    background:rgb(0 212 30 / 6%);
}

/*Fehlermeldung Deluta Formular*/

.elementor-message.elementor-message-success.elementor-message-svg {
    background: #F1F1F1;
    padding: 24px;
    border-radius: 4px;
}

label.elementor-field-label {
    font-weight: 700 !important;
}


.blu-memberbox-loggedin {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.blu-memberbox-text {
    text-align: center;
    font-size:20px;
}

/*a.blu-memberbox-logout {*/
/*    margin-top: 32px;*/
/*}*/

.blu-memberbox-profile::before {
    content: "\f2bd";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    display: inline-block;
    margin-right: 8px;
}

a.blu-memberbox-profile {
    font-size: 18px;
}

.blu-memberbox-links {
    gap: 20px;
    display: flex;
    font-size: 18px;
    margin-top: 32px;
    flex-direction: column;
}

a.blu-memberbox-profile.elementor-button.elementor-button-link.elementor-size-sm.elementor-animation-shrink {
    background: transparent;
}

.col-user-form {
    width: 50%;
}

.half-col-user-form {
    display: flex;
    gap: 20px;

}

/* ACF Frontend-Form: 2 Spalten, je 50% + 20px Gap */
#acf-form .acf-fields.acf-form-fields {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 20px;
    row-gap: 20px;
}

/* ACF hat teils eigene Margins – raus damit, damit das Grid sauber läuft */
#acf-form .acf-fields.acf-form-fields > .acf-field {
    margin: 0 !important;
    width: auto !important;
    float: none !important;
}

/* Felder, die sinnvoll über die ganze Breite gehen */
#acf-form .acf-fields.acf-form-fields > .acf-field[data-type="textarea"],
#acf-form .acf-fields.acf-form-fields > .acf-field[data-type="image"],
#acf-form .acf-fields.acf-form-fields > .acf-field[data-type="checkbox"] {
    grid-column: 1 / -1;
}


ul.acf-checkbox-list li {
    font-size: 16px !important;
    margin-bottom: 8px !important;
}

.blu-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
}

.col-user-form label{
    display:block;
    margin-bottom:6px;
}

.blu-form-buttons{
    margin-top:20px;
    display:flex;
    gap:15px;
    align-items:center;
}

.blu-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
    max-width:1000px;
}

.col-user-form{
    width:100%;
}

.col-user-form input{
    width:100%;
}

.col-user-form label{
    display:block;
    margin-bottom:6px;
}

.blu-core-form input{
    height:42px;
}

.acf-field.acf-field-true-false.acf-field-697b3f61d8926,
.acf-field.acf-field-textarea.acf-field-697b417de33bc{
    display:none;
}

.acf-field input[type=text], .acf-field input[type=password], .acf-field input[type=date], .acf-field input[type=datetime], .acf-field input[type=datetime-local], .acf-field input[type=email], .acf-field input[type=month], .acf-field input[type=number], .acf-field input[type=search], .acf-field input[type=tel], .acf-field input[type=time], .acf-field input[type=url], .acf-field input[type=week], .acf-field textarea, .acf-field select {
    padding: 10px 16px !important;
}

.acf-fields>.acf-field{
    border:none!important;
}

button.blu-submit {
    margin-top: 24px;
    margin-bottom: 24px;
}

.e-form__indicators {
    align-items: flex-start;
}

.e-form__indicators__indicator {
    position: relative;
    overflow: visible !important;
}

.e-form__indicators__indicator .blu-step-label {
    display: block !important;
    font-size: 12px;
    line-height: 1.2;
    margin-top: 6px;
    text-align: center;
    white-space: nowrap;
    opacity: 1 !important;
    visibility: visible !important;
}

.e-form__indicators__indicator__number {
    overflow: visible !important;
}


.blu-step-label {
    color: #434343;
}

.elementor-form .e-form__step {
    transition: none !important;
    animation: none !important;
}

.elementor-form .e-form__indicators__indicator {
    transition: none !important;
}

.elementor-form .e-form__indicators {
    display:none !important;
}

.blu-step-sidebar__item {
    margin: 0 0 12px;
}

.blu-step-sidebar__btn {
    appearance: none;
    border: 0;
    background: #f2b600;
    padding: 12px 14px;
    margin: 0;
    width: 100%;
    display: flex;
    align-items: flex-start;
    gap: 6px;
    text-align: left;
    cursor: pointer;
    color: #222;
    font: inherit;
    box-sizing: border-box;
    border-radius: 4px;
    white-space: normal;
}

.blu-step-sidebar__number {
    flex: 0 0 auto;
    font-weight: 600;
    line-height: 1.4;
}

.blu-step-sidebar__text,
.blu-step-sidebar__text--final {
    flex: 1 1 auto;
    min-width: 0;
    display: block;
    line-height: 1.4;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
}


 .praesidium-karte-wrap {
     display: grid;
     grid-template-columns: minmax(320px, 600px) 1fr;
     gap: 32px;
     align-items: start;
 }

.praesidium-karte-left img {
    width: 100%;
    max-width: 600px;
    height: auto;
    display: block;
}

.praesidium-karte-right {
    min-height: 300px;
}

.map-detail {
    display: none;
}

.map-detail.is-active {
    display: block;
}

@media (max-width: 900px) {
    .praesidium-karte-wrap {
        grid-template-columns: 1fr;
    }
}
.acf-field.acf-field-true-false.acf-field-697b4142e33bb,
.acf-field.acf-field-text.acf-field-697b3ecbd8923,
.acf-field.acf-field-text.acf-field-697b485f28b3f,
.acf-field.acf-field-text.acf-field-697b3f48d8925,
.acf-field.acf-field-text.acf-field-697b4f1bce1e3,
.acf-field.acf-field-text.acf-field-697b4f23ce1e4{
    display: none;
}

.page-id-4669 .acf-fields>.acf-field{
    padding:4px 0;
}

form#acf-form {
    padding-top: 32px;
}

.page-id-4669  h3.heading-form{
    margin-top: 50px;
    padding-bottom: 24px;
}

button.blu-submit, input.acf-button.button.button-primary.button-large {
    padding: 8px 20px;
}

a.blu-logout-btn.elementor-button.elementor-button-link.elementor-size-sm.elementor-animation-shrink {
    background: transparent;
}

[type=button]:focus, [type=button]:hover, [type=submit]:focus, [type=submit]:hover, button:focus, button:hover {
    background-color: #FBB900;
    color: #424242;
    text-decoration: none;
}

.elementor-field::placeholder {
    font-size: 16px;
}



/*Login highlighting*/

#account-login-btn .blu-avatar-wrap{
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
}

#account-login-btn .blu-avatar-icon{
    width:20px;
    height:20px;
    display:block;
}

#account-login-btn .blu-avatar-wrap::after{
    content:"";
    position:absolute;
    right:-4px;
    bottom:19px;
    width:8px;
    height:8px;
    background:#2ecc71;
    border-radius:50%;
    border:2px solid #fff;
}

#account-login-btn .blu-avatar-wrap::after{
    animation: pulseOnline 2s infinite;
}

@keyframes pulseOnline{
    0%{box-shadow:0 0 0 0 rgba(46,204,113,0.6);}
    70%{box-shadow:0 0 0 6px rgba(46,204,113,0);}
    100%{box-shadow:0 0 0 0 rgba(46,204,113,0);}
}



.blu-login-hint{
    position:fixed;
    top:80px;
    left:50%;
    transform:translateX(-50%);
    z-index:99999;
    background: #ffb8b8;
    color:#2f2f2f;
    padding:14px 22px;
    border-radius:6px;
    font-size:20px;
    font-weight:600;
    line-height:1.4;
    box-shadow:0 10px 30px rgba(0,0,0,.15);
    transition:opacity .3s ease, transform .3s ease;
}

.blu-login-hint.hide{
    opacity:0;
    transform:translate(-50%, -20px);
    pointer-events:none;
}

.blu-login-error {
    background: #f6f5f8;
    border-top: 4px solid #b81c23;
    color: #2f2f2f;
    padding: 14px 18px;
    margin-bottom: 16px;
    font-size: 1rem;
}

/*.blu-login-error::before {*/
/*    content: "<i class="fas fa-exclamation-circle"></i>";*/
/*    margin-right: 8px;*/
/*}*/


/**
 * Breadcrumb Navigation
 */
[id='breadcrumbs'] > ol {
    display:     inline-flex;
    align-items: center;
    padding:     0;
    list-style:  none;
    gap:         .5rem;
}


/* GLOBALER FOKUS FÜR INTERAKTIVE ELEMENTE */
a:focus,
a:focus-visible,
button:focus,
button:focus-visible,
input:focus,
input:focus-visible,
select:focus,
select:focus-visible,
textarea:focus,
textarea:focus-visible,
[role="button"]:focus,
[role="button"]:focus-visible,
.blu-step-sidebar__btn:focus,
.blu-step-sidebar__btn:focus-visible {
    outline: 3px solid  !important;
    outline-offset: 2px !important;
}

a:any-link:focus-visible {
    outline-offset: 4px;
}

.elementor-element.elementor-element-0b5fa53.e-n-tabs-mobile.elementor-widget.elementor-widget-n-tabs a{
    font-family: "Switzer Variable", Sans-serif!important;
}

