

/* ==========================================================================
FSV FONT LOADING STABILISIEREN
========================================================================== */

.fsv_archive_block {
    visibility: hidden;
}

.fonts-loaded .fsv_archive_block {
    visibility: visible;
}

.layout-wide-mode #main {
  background-color: #121212 !important;
}

/* ==========================================================================
BREADCRUMBS DESKTOP
========================================================================== */

@media only screen and (min-width: 1025px) {

.fsvcrumbs {
    font-family: "Bebas Local", sans-serif !important;
    font-size: 20px !important;
    line-height: 20px !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;

    margin-top: 5px !important;
    margin-right: 0 !important;
    margin-bottom: 5px !important;
    margin-left: 0 !important;
}

.fsvcrumbs span {
    color: #777777;
}

.fsvcrumbs a {
    color: #ffffff;
    text-decoration: none;
}


}

/* ==========================================================================
BREADCRUMBS - TABLET
========================================================================== */

@media only screen and (min-width: 641px) and (max-width: 1024px) {

.fsvcrumbs {
    font-family: "Bebas Local", sans-serif !important;
    font-size: 20px !important;
    line-height: 20px !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;

    margin-top: 5px !important;
    margin-right: 0 !important;
    margin-bottom: 5px !important;
    margin-left: 0 !important;
}

.fsvcrumbs span {
    color: #777777;
}

.fsvcrumbs a {
    color: #ffffff;
    text-decoration: none;
}


}

/* ==========================================================================
BREADCRUMBS - MOBILE
========================================================================== */

@media only screen and (max-width: 640px) {

.fsvcrumbs {
    font-family: "Bebas Local", sans-serif;
    font-size: 14px !important;
    line-height: 14px !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;

    margin-top: 5px !important;
    margin-right: 0 !important;
    margin-bottom: 5px !important;
    margin-left: 0 !important;
}

.fsvcrumbs span {
    color: #777777;
}

.fsvcrumbs a {
    color: #ffffff;
    text-decoration: none;
}


}

/* ==========================================================================
PAGE HEADERS STYLES - DESKTOP
========================================================================== */

@media only screen and (min-width: 1025px) {

    .fsv_top {
        font-family: "Inter Local", sans-serif !important;
        font-size: 14px !important;
        line-height: 14px !important;
        font-weight: 400 !important;
        letter-spacing: 0 !important;
        text-transform: uppercase !important;
        color: #eeeeee !important;

        margin-top: 0px !important;
        margin-right: 0px !important;
        margin-bottom: 5px !important;
        margin-left: 0px !important;
    }

    .fsv_head {
        font-family: "Bebas Local", sans-serif !important;
        font-size: 45px !important;
        line-height: 45px !important;
        font-weight: 600 !important;
        letter-spacing: 0 !important;
        text-transform: uppercase !important;
        color: #ffffff !important;

        margin-top: 0px !important;
        margin-right: 0px !important;
        margin-bottom: 0px !important;
        margin-left: 0px !important;
    }

    .fsv_bot {
        font-family: "Inter Local", sans-serif !important;
        font-size: 11px !important;
        line-height: 11px !important;
        font-weight: 400 !important;
        letter-spacing: 0 !important;
        text-transform: uppercase !important;

        margin-top: 5px !important;
        margin-right: 0px !important;
        margin-bottom: 0px !important;
        margin-left: 0px !important;
    }
    
            .fsv_single_sub {
                font-family: "Bebas Local", sans-serif !important;
                font-size: 20px !important;
                line-height: 20px !important;
                font-weight: 400 !important;
                letter-spacing: 0 !important;
                text-transform: uppercase;
                color: #ffffff !important;
        
                margin-top: 0px !important;
                margin-right: 0px !important;
                margin-bottom: 0px !important;
                margin-left: 0px !important;
    }
    
                    .fsv_single_sub_off {
                        font-family: "Bebas Local", sans-serif !important;
                        font-size: 20px !important;
                        line-height: 20px !important;
                        font-weight: 400 !important;
                        letter-spacing: 0 !important;
                        text-transform: uppercase;
                        color: #777777 !important;
                
                        margin-top: 0px !important;
                        margin-right: 0px !important;
                        margin-bottom: 0px !important;
                        margin-left: 0px !important;
    }
    
        .fsv_caption {
            font-family: "Bebas Local", sans-serif;
            font-size: 20px !important;
            line-height: 26px !important;
            font-weight: 400 !important;
            letter-spacing: 0 !important;
            text-transform: uppercase !important;
            color: #ffffff !important;
    
            margin-top: 0px !important;
            margin-right: 0px !important;
            margin-bottom: 0px !important;
            margin-left: 0px !important;
    }

}

/* ==========================================================================
PAGE HEADERS STYLES - TABLET
========================================================================== */

@media only screen and (min-width: 641px) and (max-width: 1024px) {

    .fsv_top {
        font-family: "Inter Local", sans-serif;
        font-size: 12px !important;
        line-height: 12px !important;
        font-weight: 400 !important;
        letter-spacing: 0 !important;
        text-transform: uppercase !important;
        color: #eeeeee !important;

        margin-top: 0px !important;
        margin-right: 0px !important;
        margin-bottom: 5px !important;
        margin-left: 0px !important;
    }

    .fsv_head {
        font-family: "Bebas Local", sans-serif !important;
        font-size: 36px !important;
        line-height: 36px !important;
        font-weight: 600 !important;
        letter-spacing: 0 !important;
        text-transform: uppercase !important;
        color: #ffffff !important;

        margin-top: 0px !important;
        margin-right: 0px !important;
        margin-bottom: 0px !important;
        margin-left: 0px !important;
    }

    .fsv_bot {
        font-family: "Inter Local", sans-serif !important;
        font-size: 10px !important;
        line-height: 10px !important;
        font-weight: 400 !important;
        letter-spacing: 0 !important;
        text-transform: uppercase;

        margin-top: 0px !important;
        margin-right: 0px !important;
        margin-bottom: 0px !important;
        margin-left: 0px !important;
    }
    
        .fsv_single_sub {
            font-family: "Bebas Local", sans-serif !important;
            font-size: 20px !important;
            line-height: 20px !important;
            font-weight: 400 !important;
            letter-spacing: 0 !important;
            text-transform: uppercase;
            color: #ffffff !important;
    
            margin-top: 0px !important;
            margin-right: 0px !important;
            margin-bottom: 0px !important;
            margin-left: 0px !important;
    }
    
                    .fsv_single_sub_off {
                        font-family: "Bebas Local", sans-serif !important;
                        font-size: 20px !important;
                        line-height: 20px !important;
                        font-weight: 400 !important;
                        letter-spacing: 0 !important;
                        text-transform: uppercase;
                        color: #777777 !important;
                
                        margin-top: 0px !important;
                        margin-right: 0px !important;
                        margin-bottom: 0px !important;
                        margin-left: 0px !important;
    }
    
            .fsv_caption {
                font-family: "Bebas Local", sans-serif;
                font-size: 14px !important;
                line-height: 14px !important;
                font-weight: 400 !important;
                letter-spacing: 0 !important;
                text-transform: uppercase !important;
                color: #ffffff !important;
        
                margin-top: 0px !important;
                margin-right: 0px !important;
                margin-bottom: 0px !important;
                margin-left: 0px !important;
    }

}

/* ==========================================================================
PAGE HEADERS STYLES - MOBILE
========================================================================== */

@media only screen and (max-width: 640px) {

    .fsv_top {
        font-family: "Inter Local", sans-serif;
        font-size: 11px !important;
        line-height: 11px !important;
        font-weight: 400 !important;
        letter-spacing: 0 !important;
        text-transform: uppercase !important;
        color: #eeeeee !important;

        margin-top: 0px !important;
        margin-right: 0px !important;
        margin-bottom: 5px !important;
        margin-left: 0px !important;
    }

    .fsv_head {
        font-family: "Bebas Local", sans-serif !important;
        font-size: 28px !important;
        line-height: 22px !important;
        font-weight: 400 !important;
        letter-spacing: 0 !important;
        text-transform: uppercase !important;
        color: #ffffff !important;

        margin-top: 0px !important;
        margin-right: 0px !important;
        margin-bottom: 5px !important;
        margin-left: 0px !important;
    }

    .fsv_bot {
        font-family: "Inter Local", sans-serif !important;
        font-size: 9px !important;
        line-height: 9px !important;
        font-weight: 400 !important;
        letter-spacing: 0 !important;
        text-transform: uppercase;

        margin-top: 0px !important;
        margin-right: 0px !important;
        margin-bottom: 0px !important;
        margin-left: 0px !important;
    }
    
            .fsv_single_sub {
                font-family: "Bebas Local", sans-serif !important;
                font-size: 20px !important;
                line-height: 20px !important;
                font-weight: 400 !important;
                letter-spacing: 0 !important;
                text-transform: uppercase;
                color: #ffffff !important;
        
                margin-top: 0px !important;
                margin-right: 0px !important;
                margin-bottom: 0px !important;
                margin-left: 0px !important;
    }
    
                .fsv_single_sub_off {
                    font-family: "Bebas Local", sans-serif !important;
                    font-size: 20px !important;
                    line-height: 20px !important;
                    font-weight: 400 !important;
                    letter-spacing: 0 !important;
                    text-transform: uppercase;
                    color: #777777 !important;
            
                    margin-top: 0px !important;
                    margin-right: 0px !important;
                    margin-bottom: 0px !important;
                    margin-left: 0px !important;
    }
    
        .fsv_caption {
            font-family: "Bebas Local", sans-serif;
            font-size: 20px !important;
            line-height: 26px !important;
            font-weight: 400 !important;
            letter-spacing: 0 !important;
            text-transform: uppercase !important;
            color: #ffffff !important;
    
            margin-top: 0px !important;
            margin-right: 0px !important;
            margin-bottom: 0px !important;
            margin-left: 0px !important;
    }    

}



/* ==========================================================================
WPDISCUZ
========================================================================== */

#wpdcom .wpd-blog-post_author .wpd-comment-author {
  color: #EEEEEE !important;
}

#wpdcom .wpd-comment-text {
    font-size: 12px !important;
    font-family: "Noto Local", sans-serif;
}

#wpdcom .ql-editor > * {
  cursor: text;
  font-size: 13px !important;
  letter-spacing: 0.5px;
  font-family: Arial;
  font-weight: normal;
  color: #666666;
}

#wpdcom .wpd-form .wpdiscuz-textarea-wrap textarea::placeholder {
    color: #999999 !important; /* Change placeholder color */
    font-size: 14px !important; /* Change font size */
    font-family: 'Arial', sans-serif !important; /* Change font family */
    font-style: normal !important; /* Change font style */
}

#wpdcom .wpd-blog-guest .wpd-comment-label {
  color: #ffffff !important;
  background-color: #444444 !important;
  border: none;
}

#wpdcom.wpd-layout-3 .wpd-comment .wpd-comment-header {
  background-color: #777777 !important;
  color: #ffffff !important;
  margin-left: -1px;
  padding: 10px 0 7px 0;
}

#wpdcom .wpd-comment-header .wpd-comment-author {
  font-size: 12px !important;
  font-family: "Bebas Local", sans-serif;
  text-decoration: none;
  text-transform: uppercase !important;
  letter-spacing: 0.7px;
  margin-right: 5px;
}

#wpdcom.wpd-layout-3 .wpd-comment.wpd-reply .wpd-comment-header .wpd-comment-author {
  padding-left: 36px;
  font-size: 12px !important;
  font-family: "Bebas Local", sans-serif;
  text-transform: uppercase !important;
}

#comments #wpdcom span, #respond #wpdcom span, #wpdcom span {
  display: inline;
  letter-spacing: inherit;
  font-size: 11px !important;
  font-family: "Bebas Local", sans-serif !important;
  text-transform: uppercase !important;
  font-size: 1em;
}

#wpdcom.wpd-layout-3 .wpd-comment .wpd-comment-subheader .wpd-comment-date {
  flex-grow: 1;
  font-size: 11px;
  font-family: "Bebas Local", sans-serif !important;
  line-height: 22px;
  color: #dddddd !important;
  padding-top: 1px;
}

.ql-container {
  font-family: Noto Local !important;
  font-size: 12px !important;
}

#wpdcom .wpd-comment .wpd-reply-to {
  font-size: 11px !important;
  font-family: "Bebas Local", sans-serif !important;
  color: #dddddd !important;
  font-style: normal !important;
}

/* ==========================================================================
FSV ARCHIVE TABLE
========================================================================== */

.fsv_archive_block {
    width: 100%;

    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;

    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
}

.fsv_archive_block * {
    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;

    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
}

.fsv_archive_table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;

    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;

    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
}

.fsv_archive_table tr {
    border-bottom: 1px solid rgba(255,255,255,0.12);
}

.fsv_archive_table td {
    padding-top: 16px !important;
    padding-right: 0 !important;
    padding-bottom: 16px !important;
    padding-left: 0 !important;

    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;

    vertical-align: middle !important;
}


/* ==========================================================================
TITLE
========================================================================== */

.fsv_title {
    font-family: "Bebas Local", sans-serif;
    font-size: 28px;
    line-height: 28px;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: uppercase;

    margin-top: 5px !important;
    margin-right: 0 !important;
    margin-bottom: 5px !important;
    margin-left: 0 !important;
}

.fsv_title span {
    color: #777777;
}

.fsv_title a {
    color: #ffffff;
    text-decoration: none;
}

.fsv_title a:hover {
    color: #ffffff;
    text-decoration: underline;
}


/* ==========================================================================
META
========================================================================== */

.fsv_meta {
    width: 210px;

    font-family: "Bebas Local", sans-serif;
    font-size: 22px;
    line-height: 22px;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: uppercase;

    color: #777777;
}

.fsv_meta_on {
    font-family: "Bebas Local", sans-serif;
    font-size: 22px;
    line-height: 22px;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: uppercase;

    color: #ffffff;
}


/* ==========================================================================
STATUS ICONS
========================================================================== */

.fsv_icons {
    width: 180px;
}

.fsv_icon_row {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-end;
    align-items: center;

    gap: 10px;
}

.fsv_icon_row img {
    display: block !important;

    width: 20px !important;
    height: 20px !important;

    max-width: 20px !important;
    max-height: 20px !important;

    flex: 0 0 20px !important;

    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;
}


/* ==========================================================================
TABLET
========================================================================== */

@media (min-width: 768px) and (max-width: 1023px) {

    .fsv_archive_table td {
        padding-top: 18px !important;
        padding-right: 0 !important;
        padding-bottom: 18px !important;
        padding-left: 0 !important;
    }

    .fsv_title {
        font-size: 22px;
        line-height: 22px;
    }

    .fsv_meta {
        width: 170px;

        font-size: 18px;
        line-height: 18px;
    }

    .fsv_icons {
        width: 150px;
    }

    .fsv_icon_row {
        gap: 8px;
    }

    .fsv_icon_row img {
        width: 18px !important;
        height: 18px !important;

        max-width: 18px !important;
        max-height: 18px !important;

        flex: 0 0 18px !important;
    }

}


/* ==========================================================================
MOBILE
========================================================================== */

@media (max-width: 767px) {

    .fsv_archive_table,
    .fsv_archive_table tbody {
        display: block;
        width: 100%;
    }

    .fsv_archive_table tr {
        display: grid;

        grid-template-columns: minmax(0, 1fr) auto;

        grid-template-areas:
            "title title"
            "meta icons";

        column-gap: 12px;
        row-gap: 2px;

        width: 100%;

        padding-top: 8px !important;
        padding-right: 0 !important;
        padding-bottom: 8px !important;
        padding-left: 0 !important;

        margin-top: 0 !important;
        margin-right: 0 !important;
        margin-bottom: 0 !important;
        margin-left: 0 !important;
    }

    .fsv_archive_table td {
        display: block;
        width: auto;

        padding-top: 0 !important;
        padding-right: 0 !important;
        padding-bottom: 0 !important;
        padding-left: 0 !important;
    }

    .fsv_title {
        grid-area: title;

        font-size: 22px;
        line-height: 24px;

        margin-top: 0 !important;
        margin-right: 0 !important;
        margin-bottom: 0 !important;
        margin-left: 0 !important;
    }

    .fsv_meta,
    .fsv_meta_on {
        grid-area: meta;

        width: auto;

        font-family: "Bebas Local", sans-serif;
        font-size: 16px;
        line-height: 18px;
        font-weight: 400;
        letter-spacing: 0;
        text-transform: uppercase;

        align-self: center;

        margin-top: 0 !important;
        margin-right: 0 !important;
        margin-bottom: 0 !important;
        margin-left: 0 !important;
    }

    .fsv_meta_on {
        color: #ffffff;
    }

    .fsv_icons {
        grid-area: icons;

        width: auto;

        align-self: center;
        justify-self: end;

        margin-top: 0 !important;
        margin-right: 0 !important;
        margin-bottom: 0 !important;
        margin-left: 0 !important;
    }

    .fsv_icon_row {
        gap: 8px;
    }

    .fsv_icon_row img {
        width: 18px !important;
        height: 18px !important;

        max-width: 18px !important;
        max-height: 18px !important;

        flex: 0 0 18px !important;
    }

}

/* ==========================================================================
FSV COMMENT SLOT
========================================================================== */

.fsv_comment_slot {
    width: 34px;
    min-width: 34px;
    max-width: 34px;

    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;

    flex: 0 0 34px;

    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;
}

.fsv_comment_link {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    align-items: center !important;

    gap: 3px;

    text-decoration: none !important;

    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;
}

.fsv_comment_link img {
    display: block !important;

    width: 20px !important;
    height: 20px !important;

    max-width: 20px !important;
    max-height: 20px !important;

    flex: 0 0 20px !important;
}

.fsv_comment_count {
    display: inline-block !important;

    font-family: "Bebas Local", sans-serif !important;
    font-size: 16px !important;
    line-height: 16px !important;
    font-weight: 400 !important;

    color: #ffffff !important;

    margin-top: 1px !important;
}


/* ==========================================================================
TABLET
========================================================================== */

@media (min-width: 768px) and (max-width: 1023px) {

    .fsv_comment_slot {
        width: 32px;
        min-width: 32px;
        max-width: 32px;

        flex: 0 0 32px;
    }

    .fsv_comment_link img {
        width: 18px !important;
        height: 18px !important;

        max-width: 18px !important;
        max-height: 18px !important;

        flex: 0 0 18px !important;
    }

    .fsv_comment_count {
        font-size: 15px !important;
        line-height: 15px !important;
    }

}


/* ==========================================================================
MOBILE
========================================================================== */

@media (max-width: 767px) {

    .fsv_comment_slot {
        width: 30px;
        min-width: 30px;
        max-width: 30px;

        flex: 0 0 30px;
    }

    .fsv_comment_link img {
        width: 18px !important;
        height: 18px !important;

        max-width: 18px !important;
        max-height: 18px !important;

        flex: 0 0 18px !important;
    }

    .fsv_comment_count {
        font-size: 14px !important;
        line-height: 14px !important;
    }

}

 /* ==========================================================================
 Contact Form Error Styles
========================================================================== */

.gform_wrapper div.validation_error {
color: #B20000 !important;
font-size: 12px !important;
font-weight: normal !important;
margin-bottom: 0px !important;
margin-top: 0px !important;
text-align: left !important;
border: 0px solid #B20000 !important;
padding: 5px 5px 5px 5px !important;
background-color: rgba(255, 255, 255, 0) !important;
}

.gform_wrapper .gfield_error .gfield_label,
.gform_wrapper .validation_message {
color: #B20000 !important;
font-weight: normal !important;
margin-top: 10px !important;
border: 0px solid #B20000 !important;
}

.gform_wrapper .gform_validation_errors {
  position: relative;
  padding: 0px !important;
  border-radius: 5px !important;
  margin-bottom: 15px !important;
  text-shadow: none;
  border: 0px solid #B20000 !important;
  autofocus: none !important;
}

body .gform_wrapper .gform_validation_errors {
    background: #FFFFFF !important;
    border: 0px solid #65a9cb !important;
}

/* Changing background and border of error div under field */
body .gform_wrapper .gfield_validation_message, 
body .gform_wrapper .validation_message {
    font-size: 11px !important;
    font-weight: 500 !important;
    background: #E2E2E2 !important;
    border: 1px solid #9c0000 !important;
    padding: 5px 5px 5px 5px !important;
}

#gform_wrapper_1.gform-theme.gform-theme--orbital {
    --gf-ctrl-border-color: #124a31 !important;
    --gf-ctrl-border-color-focus: #000000 !important;    /* beim Fokussieren */
}

#gform_wrapper_12.gform-theme.gform-theme--orbital {
    --gf-ctrl-border-color: #124a31 !important;
}

 /* ==========================================================================
 Contact Form ONFOCUS BORDERS
========================================================================== */

.gform_wrapper .gform_body input[type=text]:focus {
	outline: 2px solid #0037a5;
	outline-offset: -2px;
}

.gform_wrapper .gform_body input[type=email]:focus {
	outline: 2px solid #0037a5;
	outline-offset: -2px;
}

.gform_wrapper .gform_body input[type=tel]:focus {
	outline: 2px solid #0037a5;
	outline-offset: -2px;
}

.gform_wrapper .gform_body input[type=radio]:focus {
	outline: 2px solid #0037a5;
	outline-offset: -2px;
}

.gform_wrapper .gform_body input[type=checkbox]:focus {
	outline: 2px solid #0037a5;
	outline-offset: -2px;
}

.gform_wrapper .gform_body input[type=url]:focus {
	outline: 2px solid #0037a5;
	outline-offset: -2px;
}

/* Radio & Checkbox aktiv einfärben */
#gform_wrapper_1 input[type="radio"]:checked,
#gform_wrapper_1 input[type="checkbox"]:checked {
  border-color: #2e8e45 !important;
  background-color: #e0eaec !important;   /* ersetzt das hässliche Blau */
}

#gform_wrapper_1.gform-theme.gform-theme--orbital {
  /* Text- und Placeholder-Farben */
  --gf-ctrl-text-color: #dddddd !important;        /* normaler Eingabetext */
  --gf-ctrl-placeholder-color: #dddddd !important; /* Platzhalter leicht grau */
}

/* Eingabetext dunkler */
.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="tel"],
.gform_wrapper textarea,
.gform_wrapper select {
  color: #dddddd !important;
}

/* Placeholder etwas heller */
.gform_wrapper ::placeholder {
  color: #dddddd !important;
  opacity: 1;
}

.gform-theme--framework .gform-field-label--type-sub:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)) {
  --gf-local-color: #dddddd !important;
}

/* ==========================================================================
GRAVITY FORMS
RADIO BUTTON LABEL COLOR
========================================================================== */

.gform_wrapper .gfield_radio label{
    color: #dddddd !important;
}

/* ==========================================================================
GRAVITY FORMS
REQUIRED FIELD LEGEND AUSBLENDEN
========================================================================== */

.gform_required_legend{
    display: none !important;
}

/* ==========================================================================
GF – Field Background on Focus
Nur Hintergrundfarbe bei Fokus auf #ffffff setzen
Bestehende Borders/Outlines bleiben unverändert
========================================================================== */

.gform_wrapper .gform_body input[type="text"]:focus,
.gform_wrapper .gform_body input[type="email"]:focus,
.gform_wrapper .gform_body input[type="tel"]:focus,
.gform_wrapper .gform_body input[type="url"]:focus,
.gform_wrapper .gform_body textarea:focus,
.gform_wrapper .gform_body select:focus {
  background-color: #2e8e45 !important;
}

.gform_ajax_spinner {
    position: absolute !important;
    padding-left: 200px !important;
}

.gform_wrapper.gk-contact_wrapper {
    --gf-form-gap-y: 1.25em;
}

 /* ==========================================================================
 Contact Form Font Styles
========================================================================== */
 
 
 .bfa_formulare_header{
    font-family: "Bebas Local", sans-serif !important;
    font-size: 24px !important;
    line-height: 26px !important;
    font-weight: 400 !important;
    color: #ffffff !important;
    letter-spacing: 0px !important;
    text-transform: uppercase !important;
    margin-top: 0px !important;
    margin-right: 0px !important;
    margin-bottom: 0px !important;
    margin-left: 0px !important;
    padding-top: 0px !important;
    padding-right: 0px !important;
    padding-bottom: 0px !important;
    padding-left: 0px !important;
  }
  
  @media (max-width: 767px){
  
   .bfa_formulare_header{
      font-family: "Bebas Local", sans-serif !important;
      font-size: 24px !important;
      line-height: 28px !important;
      font-weight: 400 !important;
      color: #ffffff !important;
      letter-spacing: 0px !important;
      text-transform: uppercase !important;
      margin-top: 0px !important;
      margin-right: 0px !important;
      margin-bottom: 0px !important;
      margin-left: 0px !important;
      padding-top: 0px !important;
      padding-right: 0px !important;
      padding-bottom: 0px !important;
      padding-left: 0px !important;
    }
  }
  
  
  
   .bfa_formulare_sub{
      font-family: "Inter Local", sans-serif !important;
      font-size: 13px !important;
      line-height: 16px !important;
      font-weight: 400 !important;
      color: #dddddd !important;
      letter-spacing: 0px !important;
      text-transform: none !important;
      margin-top: 0px !important;
      margin-right: 0px !important;
      margin-bottom: 0px !important;
      margin-left: 0px !important;
      padding-top: 0px !important;
      padding-right: 0px !important;
      padding-bottom: 0px !important;
      padding-left: 0px !important;
  }
  
  .gform_wrapper.bnet-required_wrapper {
      --gf-form-gap-y: 1.25em;
}

.gform-theme.gform-theme--framework.gform_wrapper .button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme.gform-theme--framework.gform_wrapper .gform-theme-button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme.gform-theme--framework.gform_wrapper :where(:not(.mce-splitbtn)) > button:not([id*="mceu_"]):not(.mce-open):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme.gform-theme--framework.gform_wrapper button.button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], [type="button"], [type="reset"]).button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], [type="button"], [type="reset"]):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme.gform-theme--framework.gform_wrapper input[type="submit"].button.gform_button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)) {
  --gf-local-bg-color: #212934 !important;
}

.gform_wrapper .gfield_description {
       font-size: 10px !important;
       text-transform: uppercase !important;
}

/* ==========================================================================
PAYPAL PAY LATER MESSAGE AUSBLENDEN
========================================================================== */

.message__container{
    display: none !important;
}

/* ==========================================================================
GF – FORM HEADER / SUBHEADER
Kill ALL spacing (margin, padding, line-height, baseline quirks)
========================================================================== */

/* ==========================================================================
GF – FORM HEADER / SUBHEADER (spacing deterministic)
========================================================================== */

.bfa_formulare_header{
  display: block !important;
  margin-top: 0px !important;
  margin-right: 0px !important;
  margin-bottom: 0px !important;
  margin-left: 0px !important;
  padding-top: 0px !important;
  padding-right: 0px !important;
  padding-bottom: 0px !important;
  padding-left: 0px !important;
  line-height: 26px !important;   /* passend zu deiner Header-size */
}

.bfa_formulare_sub{
  display: block !important;
  margin-top: 0px !important;
  margin-right: 0px !important;
  margin-bottom: 0px !important;
  margin-left: 0px !important;
  padding-top: 0px !important;
  padding-right: 0px !important;
  padding-bottom: 0px !important;
  padding-left: 0px !important;
  line-height: 12px !important;   /* oder z.B. 14px, wenn Sub kleiner ist */
}

/* <br> Luft killen */
.bfa_formulare_header + br,
.bfa_formulare_sub + br{
  display: none !important;
}

/* ========================================================================== 
FSV ARCHIV POSTCARDS TYPO  
========================================================================== */

.fsvcards .fsvcards_title,
.fsvcards .fsvcards_title *,
.fsvcards .fsvcards_title a {
    font-family: "Bebas Local", sans-serif !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    color: #ffffff !important;
    text-align: center !important;
    letter-spacing: 0.4px !important;

    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;

    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
}

.fsvcards .fsvcards_title br {
    display: block !important;
    content: "" !important;
}

/* DESKTOP */
@media (min-width: 1025px) {
    .fsvcards .fsvcards_title,
    .fsvcards .fsvcards_title *,
    .fsvcards .fsvcards_title a {
        font-size: 14px !important;
        line-height: 16px !important;
    }
}

/* TABLET */
@media (min-width: 641px) and (max-width: 1024px) {
    .fsvcards .fsvcards_title,
    .fsvcards .fsvcards_title *,
    .fsvcards .fsvcards_title a {
        font-size: 12px !important;
        line-height: 16px !important;
    }
}

/* MOBILE */
@media (max-width: 640px) {
    .fsvcards .fsvcards_title,
    .fsvcards .fsvcards_title *,
    .fsvcards .fsvcards_title a {
        font-size: 12px !important;
        line-height: 12px !important;
    }
}

.fsvcards .fsvcards_date,
.fsvcards .fsvcards_date *,
.fsvcards .fsvcards_date a {
    font-family: "Bebas Local", sans-serif !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    color: #ffffff !important;
    text-align: center !important;
    letter-spacing: 0.4px !important;

    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;

    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
}

.fsvcards .fsvcards_date br {
    display: block !important;
    content: "" !important;
}

/* DESKTOP */
@media (min-width: 1025px) {
    .fsvcards .fsvcards_date,
    .fsvcards .fsvcards_date *,
    .fsvcards .fsvcards_date a {
        font-size: 13px !important;
        line-height: 16px !important;
        color: #777777 !important;
    }
}

/* TABLET */
@media (min-width: 641px) and (max-width: 1024px) {
    .fsvcards .fsvcards_date,
    .fsvcards .fsvcards_date *,
    .fsvcards .fsvcards_date a {
        font-size: 12px !important;
        line-height: 16px !important;
        color: #777777 !important;
    }
}

/* MOBILE */
@media (max-width: 640px) {
    .fsvcards .fsvcards_date,
    .fsvcards .fsvcards_date *,
    .fsvcards .fsvcards_date a {
        font-size: 12px !important;
        line-height: 12px !important;
        color: #777777 !important;
    }
}

.fsvcards .fsvcards_cat,
.fsvcards .fsvcards_cat *,
.fsvcards .fsvcards_cat a {
    font-family: "Bebas Local", sans-serif !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    color: #ffffff !important;
    text-align: center !important;
    letter-spacing: 0.4px !important;

    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;

    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
}

.fsvcards .fsvcards_cat br {
    display: block !important;
    content: "" !important;
}

/* DESKTOP */
@media (min-width: 1025px) {
    .fsvcards .fsvcards_cat,
    .fsvcards .fsvcards_cat *,
    .fsvcards .fsvcards_cat a {
        font-size: 16px !important;
        line-height: 16px !important;
    }
}

/* TABLET */
@media (min-width: 641px) and (max-width: 1024px) {
    .fsvcards .fsvcards_cat,
    .fsvcards .fsvcards_cat *,
    .fsvcards .fsvcards_cat a {
        font-size: 16px !important;
        line-height: 16px !important;
    }
}

/* MOBILE */
@media (max-width: 640px) {
    .fsvcards .fsvcards_cat,
    .fsvcards .fsvcards_cat *,
    .fsvcards .fsvcards_cat a {
        font-size: 12px !important;
        line-height: 12px !important;
    }
}

/* ========================================================================== 
FSV ARCHIV TOUCH / HOVER EFFECTS
========================================================================== */

.fsvcards .post-card {
    overflow: hidden !important;

    transform: scale(1);
    transition:
        transform 0.16s cubic-bezier(0.17, 0.89, 0.32, 1.27),
        opacity 0.16s ease-out,
        filter 0.16s ease-out;
}

/* TOUCH / TAP */

.fsvcards .post-card.bn-tap {
    transform: scale(0.985);
}

/* DESKTOP HOVER */

@media (hover: hover) and (pointer: fine) {

    .fsvcards .post-card:hover {
        transform: translateY(-2px);
    }

    .fsvcards .post-card:hover .fsvcards_image img {
        transform: scale(1.03);
    }

}

/* IMAGE TRANSITION */

.fsvcards .fsvcards_image img {
    transition:
        transform 0.35s ease-out,
        filter 0.25s ease-out;
}

/* IMAGE HOVER */

@media (hover: hover) and (pointer: fine) {

    .fsvcards .post-card:hover .fsvcards_image img {
        transform: scale(1.03);
    }

}

/* IMAGE TOUCH */

.fsvcards .post-card.bn-tap .fsvcards_image img {
    transform: scale(1.02);
}

/* ========================================================================== 
FSV ARCHIV MOBILE PEEK
========================================================================== */

@media (max-width: 1024px) {

    .fsvcards .fusion-post-cards::-webkit-scrollbar {
        display: none;
    }

}

/* ==========================================================================
FSV GALLERY GRID
STABLE AVADA GALLERY COLUMNS
ONLY NON-MASONRY
========================================================================== */

.awb-gallery-wrapper .fusion-gallery:not(.fusion-gallery-layout-masonry){
    display: flex !important;
    flex-wrap: wrap !important;

    width: 100% !important;
    max-width: 100% !important;

    margin-top: -5px !important;
    margin-right: -5px !important;
    margin-bottom: -5px !important;
    margin-left: -5px !important;
}

.awb-gallery-wrapper .fusion-gallery:not(.fusion-gallery-layout-masonry) .fusion-gallery-column{
    float: none !important;
    clear: none !important;

    box-sizing: border-box !important;

    padding-top: 5px !important;
    padding-right: 5px !important;
    padding-bottom: 5px !important;
    padding-left: 5px !important;
}

.awb-gallery-wrapper .fusion-gallery:not(.fusion-gallery-layout-masonry) .fusion-gallery-image,
.awb-gallery-wrapper .fusion-gallery:not(.fusion-gallery-layout-masonry) .fusion-gallery-image a,
.awb-gallery-wrapper .fusion-gallery:not(.fusion-gallery-layout-masonry) .fusion-gallery-image img{
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
}

.awb-gallery-wrapper .fusion-gallery:not(.fusion-gallery-layout-masonry) .fusion-gallery-image img{
    height: auto !important;
}

/* Desktop: 5 columns */
@media (min-width: 1024px){

    .awb-gallery-wrapper .fusion-gallery:not(.fusion-gallery-layout-masonry) .fusion-gallery-column{
        width: 20% !important;
        max-width: 20% !important;
        flex-basis: 20% !important;
    }
}

/* Tablet: 4 columns */
@media (min-width: 768px) and (max-width: 1023px){

    .awb-gallery-wrapper .fusion-gallery:not(.fusion-gallery-layout-masonry) .fusion-gallery-column{
        width: 25% !important;
        max-width: 25% !important;
        flex-basis: 25% !important;
    }
}

/* Mobile: 2 columns */
@media (max-width: 767px){

    .awb-gallery-wrapper .fusion-gallery:not(.fusion-gallery-layout-masonry) .fusion-gallery-column{
        width: 50% !important;
        max-width: 50% !important;
        flex-basis: 50% !important;
    }
}

/* ========================================================================== 
FSV ARCHIV – AVADA SWIPER POSTCARDS FIX
Desktop = 4
Tablet  = 3
Mobile  = 2
Verhindert Full Width bei nur wenigen Galerien
========================================================================== */

/* --------------------------------------------------------------------------
DESKTOP
-------------------------------------------------------------------------- */

@media (min-width: 1024px){

  .fsvcards.awb-swiper .swiper-slide{
    width: calc((100% - 45px) / 4) !important;
    max-width: calc((100% - 45px) / 4) !important;
    flex-basis: calc((100% - 45px) / 4) !important;
    margin-right: 15px !important;
  }
}

/* --------------------------------------------------------------------------
TABLET
-------------------------------------------------------------------------- */

@media (min-width: 768px) and (max-width: 1023px){

  .fsvcards.awb-swiper .swiper-slide{
    width: calc((100% - 30px) / 3) !important;
    max-width: calc((100% - 30px) / 3) !important;
    flex-basis: calc((100% - 30px) / 3) !important;
    margin-right: 15px !important;
  }
}

/* --------------------------------------------------------------------------
MOBILE
-------------------------------------------------------------------------- */

@media (max-width: 767px){

  .fsvcards.awb-swiper .swiper-slide{
    width: calc((100% - 15px) / 2) !important;
    max-width: calc((100% - 15px) / 2) !important;
    flex-basis: calc((100% - 15px) / 2) !important;
    margin-right: 15px !important;
  }
}

/* --------------------------------------------------------------------------
SAFETY
-------------------------------------------------------------------------- */

.fsvcards.awb-swiper .swiper-slide{
  flex-grow: 0 !important;
  flex-shrink: 0 !important;
}

.fsvcards.awb-swiper .fusion-carousel-item-wrapper,
.fsvcards.awb-swiper .fusion-image-element,
.fsvcards.awb-swiper .fusion-imageframe,
.fsvcards.awb-swiper img{
  width: 100% !important;
}

/* ==========================================================================
PIXELAMBULANZ
PIX LINK
========================================================================== */

a.pixlink{
    color: #2e8e45 !important;
    text-decoration-line: underline !important;
    text-decoration-color: #2e8e45 !important;
}

/* ==========================================================================
BEMBEL
LINK
========================================================================== */

a.bembellink{
    color: #2e8e45 !important;
    text-decoration-line: underline !important;
    text-decoration-color: #2e8e45 !important;
}