/*
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:     -108px;
    --ss-text:     50px;

    @media (max-width: 1366px) {
        --ss-hero:     -84px;
    }

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

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

    @media (max-width: 1768px) {
        --ss-hero: -60px;
    }

    /**
     * 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;
}

/*.page-content ul li:last-child {*/
/*    padding-bottom: 12px;*/
/*}*/

.elementor-loop-container ul li:last-child {
    padding-bottom: 0;
}

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

a.elementor-button.elementor-button-link.elementor-size-sm.elementor-animation-shrink,
footer a,
li.elementor-icon-list-item a,
a.tribe-events-calendar-list__event-title-link.tribe-common-anchor-thin,
a.place_title,
span.elementor-icon-list-text.elementor-post-info__item.elementor-post-info__item--type-date,
a.tribe-common-c-btn-border-small.tribe-events-c-top-bar__today-button.tribe-common-a11y-hidden,
span.elementor-icon-list-text.elementor-post-info__item.elementor-post-info__item--type-date {
    font-weight:     600;
    text-decoration: none !important;
}

/**
 * Forms
 */

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

[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;
}

[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-icon-list-items .elementor-icon-list-item {
    transition: all .2s ease-in-out;
}

.elementor-icon-list-items .elementor-icon-list-item:hover {
    transition: all .2s ease-in-out;
    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:            #ffffff; /* 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 {
    font-size:        24px;
    display:          inline-block;
    padding:          12px 24px 12px 24px;
    color:            #ffc000;
    border-radius:    6px;
    background-color: #444444;
}

@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*/


/* Versteckt den originalen Text der beiden Links */
.wpgmp_pagination a.prev,
.wpgmp_pagination a.next {
    font-size: 0 !important;
}

/* Fügt das < Zeichen beim Zurück-Button ein */
.wpgmp_pagination a.prev::before {
    content: '<';
    font-size: 16px; /* Passe die Größe an dein Theme an */
    visibility: visible;
    padding-top: 3px;
}

/* Fügt das > Zeichen beim Nächste-Button ein */
.wpgmp_pagination a.next::before {
    content: '>';
    font-size: 16px; /* Passe die Größe an dein Theme an */
    visibility: visible;
    padding-top: 3px;
}

.wpgmp_pagination a:hover{
    background:#FBB900!important;
}

.blu-map .wpgmp_pagination a{
    font-weight: 600;
}

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

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


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

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

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

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

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

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

.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-repeat:   no-repeat !important;*/
/*    background-position: center !important;*/
/*    background-size:     contain !important;*/
/*}*/

.cluster {
    border-radius:    50%;
    outline:          4px solid #434343;
    outline-offset:   -4px;
    background-color: #fbb900;
}

/* Zahl zentrieren & Style */
.cluster > div {
    font-family: 'Switzer Variable' !important;
    font-size:   18px !important;
    font-weight: 700 !important;
    color:       #434343 !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*/

/* Loader Punkte Farbe ändern */
.tribe-common-c-loader__dot {
    color: #444444!important; /* deine Wunschfarbe */
}

/* Optional: Hover/Animation gleich lassen, aber konsistent färben */
.tribe-common-c-loader__dot:nth-child(1),
.tribe-common-c-loader__dot:nth-child(2),
.tribe-common-c-loader__dot:nth-child(3) {
    color: #444444 !important;
}


.tribe_events.tribe-events-calendar-month__multiday-event.tribe_events_cat-veranstaltung {
    color: #fff !important;
}

.tribe-events .tribe-events-calendar-month__multiday-event-bar .tribe-events-calendar-month__multiday-event-bar-inner{
    padding: 4px!important ;
}

.tribe-events .tribe-events-calendar-month__day--past .tribe-events-calendar-month__calendar-event-datetime{
    opacity: 1;
}

.tribe-events .tribe-events-calendar-month__calendar-event-datetime{

    font-family: 'Switzer Variable', sans-serif;
    font-weight: 600 !important;
}

.tribe-events .tribe-events-calendar-month__multiday-event--start .tribe-events-calendar-month__multiday-event-bar {
    border-bottom-left-radius: 4px!important;
    border-top-left-radius: 4px!important;
}


.tribe-common--breakpoint-medium.tribe-common .tribe-common-b3 {
    font-size: 16px !important;
}

article.tribe-events-calendar-month__calendar-event.post-10000001.tribe_events.type-tribe_events.status-publish.hentry.tag-seminar.tribe_events_cat-seminar.cat_seminar {
    margin-top: 16px;
}


.tribe-events .tribe-events-calendar-month__multiday-event--end .tribe-events-calendar-month__multiday-event-bar {
    border-bottom-right-radius: 4px!important;
    border-top-right-radius: 4px!important;
}

.tribe-events .tribe-events-calendar-month__multiday-event-bar:before{
    border-radius: 4px!important;
}

.tribe-events .tribe-events-calendar-month__multiday-event-wrapper+.tribe-events-calendar-month__calendar-event {
    margin-top: 20px;
}

.tribe-events-calendar-month__calendar-event-details {
    border-radius: 4px;
}

.tribe-common .tribe-common-h8 {
    font-size: 16px!important;
    font-weight: 600 !important;
}

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:   22px;
}

.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 {
    border-radius: 4px;
    background:    #fbb900;
}

.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://www.lohnunternehmen.de/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: 18px;
}

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: 16px;
}

.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-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event-row {
    margin: 0 0 32px 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;
}

li.tribe-events-calendar-list__month-separator {
    margin-top: -18px !important;
}

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

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

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

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:   20px !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;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__month-separator + .tribe-events-calendar-list__event-row {
    margin-top: 24px !important;
}

/*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: 32px !important;
    border-top:  2px 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 {
    order:  3;
    margin: 0 0 0 0 !important;
}

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 {
    width:        150px !important;
    margin-right: 40px;
}

.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 {
        width:        96px !important;
        margin-right: 40px;
    }

    .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;
        padding:          8px;
        border-radius:    4px;
        background-color: #ffffff;
    }

    .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('https://www.lohnunternehmen.de/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://www.lohnunternehmen.de/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;
    border-radius: 4px;
    background:    #f1f1f1;
}

.tribe-events-single-event-description.tribe-events-content p {
    margin-bottom: 0;
}

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

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

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-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;
}

img.attachment-full.size-full.wp-image-574 {
    object-fit:      none;
    object-position: center;
}

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 {
    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-icon svg {
    display: block;
    width:   1em;
    height:  1em;
    fill:    currentColor;
}

.download-title .elementor-icon-list-icon {
    display:         inline-flex;
    align-items:     center;
    justify-content: center;
}

.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 {
    font-size:     20px;
    padding:       6px 14px;
    border-radius: 4px;
    background:    #fbb900;
}

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

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

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

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

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

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

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

/* 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 {
    font-weight:     600;
    position:        relative;
    display:         inline-flex;
    align-items:     center;
    justify-content: center;
    padding:         14px 42px;
    user-select:     none;
    border-radius:   999px;
}

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

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

.ytpi-dl-overlay-lock {
    width:               18px;
    height:              18px;
    opacity:             .85;
    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');
    background-repeat:   no-repeat;
    background-position: center;
    background-size:     18px 18px;
}

/* Note box under button */
.ytpi-dl-note {
    margin-top: 10px;
}

.ytpi-dl-note-inner {
    display:         flex;
    align-items:     center;
    justify-content: space-between;
    padding:         14px 16px;
    color:           #ffffff;
    border-radius:   14px;
    background:      #f2c94c;
    gap:             12px;
}

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

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

.ytpi-tooltip:after {
    position:     absolute;
    bottom:       -6px;
    left:         50%;
    content:      '';
    transform:    translateX(-50%);
    border-width: 6px 6px 0 6px;
    border-style: solid;
    border-color: #111111 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);
    border:     none !important;
    background: #fbb900 !important;
}

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

.infowindow-close {
    top:   12px !important;
    right: 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;
        margin:  0 auto;
        padding: 0 20px;
    }

}

@media (max-width: 633px) {

    .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 {
        align-items:     center;
        flex-direction:  column-reverse;
        justify-content: 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 #ffffff;
}

.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;
    box-sizing:  border-box;
    width:       100%;
    padding:     0 !important;

    border:      0 !important;
    background:  transparent !important;
    box-shadow:  none !important;
    gap:         24px;
}

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

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

/*!* 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%;*/
/*    }*/
/*}*/

img.user_profile_img {
    padding:       24px !important;
    border-radius: 4px;
    background:    #ffff;
}

.wpgmp_locations_head {
    width:            850px !important;
    padding-bottom:   24px !important;
    border-radius:    4px;
    background-color: #ffffff !important;
}

.wpgmp_locations_foot {
    display:     flex;
    align-items: center;
}

.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 {
    padding:       12px;
    border:        3px solid #fbb900;
    border-radius: 4px;
}

.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 {
    margin:        18px 0 20px 0;
    padding:       18px;
    border-radius: 4px;
    background:    #f1f1f1;
}

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 {
    font-size:     28px;
    font-weight:   700;
    margin-bottom: 0;
    color:         #414141;
}

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 {
    color:            #414141;
    background-color: #fbb900;
}

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

.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 {
    color:            #434343;
    border-radius:    4px;
    background-color: #fbb900;
}

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

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

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

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

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 {
    font-size: 16px;
    padding:   8px;
}

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 {
    width:  100% !important;
    margin: 0 !important;
}

ul.products::before,
ul.products::after,
ul.products.columns-4::before,
ul.products.columns-4::after {
    display: none !important;
    content: 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 {
    transition:       all .2s ease-in-out;
    border:           2px solid #fbb900;
    border-radius:    4px;
    background-color: transparent;
}

.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 {
    font-weight:   600;
    color:         #414141;
    border-radius: 4px;
    background:    #fbb900;
}

.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;
    flex-direction: column;
    padding:        0px;
}

.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 {
    transition:       all .2s ease-in-out;
    color:            #fbb900;
    border:           #fbb900;
    border-radius:    4px;
    background-color: #414141;
}

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

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

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

.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 {
    transition: all .2s ease-in-out;
    background: #414141;
}

.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 {
    transition: all .2s ease-in-out;
    background: #414141;
}

.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 {
    padding:          16px;
    background-color: #ffffff !important;
}

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 {
    font-size: 16px;
    color:     #414141;
}

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

.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 {
    font-size: 16px;
    padding:   0px;
}

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

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

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;
}

.tribe-events-calendar-list__event-details
a.elementor-button {
    font-size: 18px;
    padding:   12px 18px !important;
}

/* Login-Form im BLU Dropdown/Popup */
.blu-memberbox .woocommerce-form-login .form-row-first,
.blu-memberbox .woocommerce-form-login .form-row-last {
    width: 100%;
}

/* Der Row, in dem Checkbox + Button steckt */
.blu-memberbox .woocommerce-form-login p.form-row {
    display:        flex;
    align-items:    flex-start;
    flex-direction: column;
    gap:            12px;
}

/* Checkbox/Rememberme sauber als eigene Zeile */
.blu-memberbox .woocommerce-form-login .woocommerce-form-login__rememberme {
    display:     flex;
    align-items: center;
    width:       100%;
    margin:      0;
    gap:         8px;
}

/* Button unter der Checkbox */
.blu-memberbox .woocommerce-form-login button.woocommerce-form-login__submit {
    width:  auto; /* oder 100% wenn du Full-Width willst */
    margin: 0;
}

/* Optional: Clears rausnehmen, falls die irgendwo reinfunken */
.blu-memberbox .woocommerce-form-login .clear {
    display: none;
}

.blu-memberbox .woocommerce-form-login button.woocommerce-form-login__submit {
    width: 100%;
}

/* Hides empty user images. */
.user_profile_img:not([src^='https://']) {
    display: none;
}

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

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

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

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

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

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

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

.map-row.website[data-website='{internet}'],
.fc-row-website[data-website='{internet}'] {
    display: none;
}

.blu-errors ul {
    padding: 0;
}

.blu-errors ul li {
    padding:         12px;
    list-style-type: none;
    border-radius:   4px;
    background:      #ffd8d8;
}

/*hide acf field profil-bearbeiten*/
.page-id-4533 .acf-field.acf-field-true-false.acf-field-697b4142e33bb,
.page-id-4533 .acf-field.acf-field-true-false.acf-field-697b3f61d8926,
.page-id-4533 .acf-field.acf-field-textarea.acf-field-697b417de33bc,
.page-id-4533 .acf-field.acf-field-text.acf-field-697b485f28b3f,
.page-id-4533 .acf-field.acf-field-text.acf-field-697b485f28b3f,
.page-id-4533 .acf-field.acf-field-text.acf-field-697b3f48d8925,
.page-id-4533 .acf-field.acf-field-text.acf-field-697b3ecbd8923 {
    display: none;
}

.page-id-4533 .acf-fields > .acf-field {
    border: none;
}

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

.page-id-4533 .acf-fields > .acf-field {
    padding: 0;
}

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

.page-id-4533 label {
    margin-top:     32px;
    padding-bottom: 12px;
}

.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 {
    float:  none !important;
    width:  auto !important;
    margin: 0 !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;
}

/* Optional: auch True/False über volle Breite, wenn du willst */
/*
#acf-form .acf-fields.acf-form-fields > .acf-field[data-type="true_false"]{
  grid-column: 1 / -1;
}
*/

/* Mobile: 1 Spalte */
@media (max-width: 767px) {
    #acf-form .acf-fields.acf-form-fields {
        grid-template-columns: 1fr;
    }
}

.save-button-user-info {
    display:        flex;
    align-items:    center;
    flex-direction: row;
    gap:            24px;
}

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

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

.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;
}

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

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

label#acf-field_699320845979a-label {
    font-size: 32px;
}

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

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

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

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

#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);
    }
}

/*CleverReach*/
span.label.cr_form-component--header {
    font-size:      16px;
    padding-bottom: 12px;
}

.cr_ipe_item label {
    font-size:   16px !important;
    line-height: 150%;
}

.cr_ipe_item label a {
    font-size:       16px !important;
    font-weight:     600;
    line-height:     150%;
    text-decoration: underline;
}

.sign-in, .sign-out {
    font-size: 16px;
}

button.cr_form-block.cr_button {
    padding: 0px 14px;
}

.cr_form-inputgroup {
    padding-bottom: 28px;
}

.submit_container {
    text-align: left !important;
}

.sign-in-out {
    display:        flex;
    flex-direction: row;
    margin-top:     18px;
    gap:            24px;
}

input#\39 706607 {
    margin-right: 8px;
}

div#\39 706602 {
    padding-top: 24px;
}

.cr_body label, .cr_body .label {
    margin-top: 0px !important;
}

.cr_body.formbox .cr_button {
    line-height:     1.2 !important;
    display:         inline-flex !important;
    align-items:     center !important;
    justify-content: center !important;
    box-sizing:      border-box !important;
    height:          auto !important;
    min-height:      unset !important;
    padding:         12px 24px !important;
}

input.cr_ipe_checkbox {
    width:  20px !important;
    height: 20px !important;
}

.cr_button:hover, .cr_button-small:hover {
    opacity: 1 !important;
    filter:  alpha(opacity=100) !important;
}

form.woocommerce-ResetPassword.lost_reset_password {
    margin-top: 140px;
}

.search-filter-base.search-filter-field.search-filter-field--id-2.search-filter-field--type-choice.search-filter-field--input-type-select.search-filter-style--id-1.search-filter-style--choice-select {
    width: 324px;
}

/* 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;
}