html {
    font-size: 16px;
    scroll-behavior: smooth;
    scroll-padding-top: 250px !important;
}
.primary {
    color: var(--primary);
}
.frontend .forum table,
.frontend .text-content table,
.frontend .views-table,
.frontend .draggable-table,
.frontend .text-content,
body {
    font-family: var(--font-family, Arial, sans-serif), Sans-Serif;
    line-height: 1.55em;
    font-size: 1.125rem;
    color: var(--text_color);
    position: relative;
}
h1,
h2,
h2.block__title {
    color: var(--heading_color, var(--primary));
    font-weight: 700;
    hyphens: unset;
}
h1 {
    font-size: 42px;
    line-height: normal;
    font-weight: normal;
}
.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
.block_no_distance .block-layout-builder:not(:last-child) .field,
.block-layout-builder:not(:last-child) .field.field--name-field-ee-card-title,
.field.field--name-field-ee-card-title,
#ee_subscription_block .field:not(:last-child) {
    margin-block-end: unset;
}
.layout_section p {
    margin: 0;
    margin-bottom: 1.5em;
}
.layout_section p:last-child {
    margin-bottom: 0;
}

.headertext h1,
.headertext h2
{
    color: #fff;
    line-height: 1.3em;
    text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.7);
    font-weight: 700;
    text-align: center;
    margin-block: 0.2em;
}
.headertext h2{
    color: #fff;
    line-height: 1.3em;
    text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.7);
    font-weight: 700;
    text-align: center;
}
p.ee_hinweis {
    color: #fff;
    border: 1px solid #fff;
    font-size: 1rem;
    padding: 1em;
}
.ck-editor__editable p.ee_hinweis {
    color: #000;
    border: 1px solid #000;
    font-size: 1rem;
    padding: 1em;
}
a:focus {
    outline: none;
}
*,
::before,
::after {
    box-sizing: border-box;
}

.block-block__eueco-logo img {
    filter: grayscale(100%);
}

header {
    position: sticky;
    top: 0;
    background-color: #fff;
    z-index: 101;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}
.region.region-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.region.region-header-top {
    display: flex;
    justify-content: flex-end;
}
#ee_burger_menu a,
#ee_burger_menu a:hover,
#ee_burger_menu a:visited {
    color: var(--primary);
}
ul.sf-menu > li > ul {
    background-color: #fff;
    z-index: 10000;
    box-shadow: 0 10px 10px 0 rgba(0, 0, 0, 0.15);
    padding-bottom: 10px !important;
    padding-top: 10px !important;
}
.region-header ul.sf-menu::after {
    content: none;
}
#page ul.menu:not(.euecolink) {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    line-height: normal;
    margin: 0;
    padding: 0;
}
#page ul.menu:has(li:first-child:last-child) {
    /*gap: 0;*/
}
#page ul.menu li {
    list-style: none;
    padding: 0;
}

ul.menu li a {
    position: relative;
    display: block;
    font-weight: 100;
    width: auto;
    font-size: 1rem;
    color: var(--text_color);
    text-decoration: none;
    text-transform: uppercase;
}
ul.menu > li.sf-no-children > span > a {
    padding: 0;
}

ul.menu .faqs a {
    text-transform: none;
}

#page ul.menu li a.is-active:not([href^='/#']),
#page ul.menu li a:hover {
    color: var(--heading_color, var(--primary));
}
/*  MENÜ-ICONS FÜR BARRIEREFREIHEIT
wenn ein Link im Footer nicht Impressum, Datenschutz oder Kontakt ist, dann wird ein Icon angezeigt
.footer ul.menu li a:not([href^='/impressum'], [href^='/datenschutz'], [href^='/kontakt'])::after {
  content: "\e0cb";
  font-family: "Font Awesome 6 Sharp";
  font-size: 12px;
  margin-left: 3px;
} */
ul.sf-menu > li > a,
ul.sf-menu span.nolink {
    padding: 0 0;
    position: relative;
}
ul.sf-menu .sf-with-ul {
    padding-right: 1.3em;
}
ul.sf-menu .sf-sub-indicator {
    right: 0;
}
ul.sf-menu > li > a + ul li > a {
    padding: 0 1.5em;
}

ul.sf-menu li ul li a {
    padding: 0.1em 1.2em;
    text-transform: none;
    font-size: 0.9rem;
}
input[type='button'],
input.form-submit,
form input.form-submit,
ul.menu > li.sf-no-children > span a[href='/user/login'],
ul.menu > li.sf-no-children > span a[href^='/user/logout'] {
    display: block;
    text-align: center;
    color: var(--text_on_primary_color);
    padding: 0.3em 1em;
    background-color: var(--primary);
    font-size: 1rem;
    border-radius: var(--ee_button_radius);
    transition: color 0.5s ease, background-color 0.5s ease;
    border: none;
    cursor: pointer;
}
input[type='button']:hover,
input.form-submit:hover,
form input.form-submit:hover,
#page ul.menu a[href='user/login']:hover,
#page ul.menu > li.sf-no-children > span a[href='/user/login']:hover,
#page ul.menu > li.sf-no-children > span a[href^='/user/logout']:hover {
    background-color: #000;
    border-color: #000;
    color: #fff;
    transition: color 0.5s ease, background-color 0.5s ease;
    border: none;
}
input[type='button'] {
    display: inline-flex;
}
.backend .ui-dialog .ui-button {
    color: var(--text_on_primary_color);
    background-color: var(--primary);
    border: none;
}
.submit-right .disabled .fa-info-circle {
    color: var(--secondary);
}
#ee__bg_overlay {
    position: absolute;
    display: none;
    width: 100%;
    height: 10000px;
    top: 0px;
    left: 0px;
    overflow: hidden;
    background-color: rgba(255, 255, 255, 0.2);
    z-index: 102;
}
.ee_headerimge .headerimage {
    position: relative;
    background-size: cover;
    background-position: center center;
}
.ee_headerimge .headertext_wrapper {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

a.registrieren.button.ee_track_login_form_register,
.area_triggers > div,
body form input.form-submit,
body input.form-submit,
body #user-login-form input.form-submit.button,
body input.small-submit,
#project_info a.button {
    background-color: var(--primary);
    color: var(--text_on_primary_color);
    font-weight: normal;
}

.area_triggers > div:hover,
body form input.form-submit:hover,
body input.form-submit:hover,
body input.small-submit:hover {
    background-color: var(--secondary);
    color: var(--text_on_secondary_color);
    text-decoration: none !important;
    transition: all 0.25s ease-in-out;
    font-weight: normal;
}

/*layout section styling*/
.layout_section.no_distance_content
.ee_block_wrapper:not(.ohne):not(.none).has_bg {
    padding-bottom: 0;
}
.layout_section.no_distance_content
.ee_block_wrapper:not(.ohne):not(.none).has_bg
.field {
    margin-block-end: 0;
}
.layout_section.hide_section {
    display: none;
}
.raster .ee_block_wrapper:not(.ohne):not(.none).has_bg {
    height: 100%;
}
#testimonial.layout_section {
    padding: 1rem 1.5rem;
}
.layout_section .layout.add_padding,
.layout_section:not(.full_width) {
    padding: 3.125rem 1.5rem;
}
.layout_section.no_distance {
    padding-bottom: 0;
}
.layout_section .has_bg_image {
    background-size: cover;
    background-position: center center;
}
.layout_section.no_distance + .layout_section {
    padding-top: 0;
}
.layout_section.no_gap .layout--twocol-section {
    gap: unset;
}
.layout_section.no_gap {
    padding-bottom: 0;
}
.layout-builder__add-block {
    clear: both;
}
.layout_region_wrapper .layout {
    display: block;
    width: 100%;
    max-width: var(--content_width);
    margin-left: auto;
    margin-right: auto;
}
.ee_headerimge .headertext_wrapper .headertext,
#block-ee-theme-hilfe,
#node-eueco-page-layout-builder-form,
.messages-list .messages__wrapper,
.layout_section:not(.full_width) .layout,
.layout_section .title_wrapper,
.layout_section .region-drupal-verwaltung {
    max-width: var(--wide_content_width);
    margin: 0 auto;
    width: 100%;
}
.layout.layout--twocol-section.align_items_center {
    align-items: center;
}

.layout_section.verwaltung {
    padding: 0;
}
.layout_section h2 {
    font-size: 2rem;
    line-height: 1.3em;
    margin-bottom: 0.3em;
    margin-top: 0;
}
.layout_section h2.section-title {
    margin-bottom: 2em;
}
.layout_section h3 {
    font-size: 1.5rem;
    line-height: 1.3em;
    margin-bottom: 0.3em;
    margin-top: 0;
}
.layout_section h2.section-title.plus_card_title {
    margin-bottom: 0.7em;
}
.layout_section h3.tabs_card_title {
    margin-bottom: 1em;
}
.layout_section.content_primary > .layout,
.layout_section.primary,
.ee_block_wrapper.primary {
    background: var(--primary);
}
.layout_section.content_secondary > .layout,
.layout_section.secondary,
.ee_block_wrapper.secondary {
    background: var(--secondary);
}

.layout_section.content_tertiary > .layout,
.layout_section.tertiary,
.ee_block_wrapper.tertiary {
    background: var(--tertiary);
}
.ee_block_wrapper.white,
.layout_section.content_white > .layout {
    background-color: #fff;
}
.ee_block_wrapper.none {
    padding: 0;
}
.layout_section.gradient,
.ee_block_wrapper.gradient {
    background: var(--gradient);
}
.layout_section.gradient_inverse,
.ee_block_wrapper.gradient_inverse {
    background: var(--gradient_inverse);
}

.layout_section .text-content p {
    margin-top: 0;
}
.layout-builder-block {
    background-color: transparent;
}

.block-inline-blockee-images-grid .field__items {
    display: grid;
    gap: 20px;
    justify-content: center;
}
.layout_section.primary tr,
.layout_section.primary .draggable-table.tabledrag-disabled tr,
.layout_section.content_primary > .layout h2,
.layout_section.primary .text-content,
.ee_block_wrapper.primary .text-content,
.layout_section.primary,
.layout_section.primary a,
.ee_block_wrapper.primary,
.layout_section.primary h2,
.ee_block_wrapper.primary h2,
.layout_section.primary h2,
.layout_section.primary h3,
.ee_block_wrapper.primary h3 {
    color: var(--text_on_primary_color);
}
.layout_section.secondary tr,
.layout_section.secondary .draggable-table.tabledrag-disabled tr,
.layout_section.content_secondary > .layout h2,
.layout_section.secondary .text-content,
.ee_block_wrapper.secondary .text-content,
.layout_section.secondary,
.layout_section.secondary a,
.ee_block_wrapper.secondary,
.layout_section.secondary h2,
.ee_block_wrapper.secondary h2,
.layout_section.secondary h3,
.ee_block_wrapper.secondary h3 {
    color: var(--text_on_secondary_color);
}
.layout_section.tertiary tr,
.layout_section.tertiary .draggable-table.tabledrag-disabled tr,
.layout_section.content_tertiary > .layout h2,
.layout_section.tertiary .text-content,
.ee_block_wrapper.tertiary .text-content,
.layout_section.tertiary,
.layout_section.tertiary a,
.ee_block_wrapper.tertiary,
.layout_section.tertiary h2,
.ee_block_wrapper.tertiary h2,
.layout_section.tertiary h3,
.ee_block_wrapper.tertiary h3 {
    color: var(--text_on_tertiary_color);
}
.layout_section[class*='gradient'] tr,
.layout_section[class*='gradient'] .draggable-table.tabledrag-disabled tr,
.layout_section[class*='gradient'] .text-content,
.ee_block_wrapper[class*='gradient'] .text-content,
.layout_section[class*='gradient'],
.ee_block_wrapper[class*='gradient'],
.layout_section[class*='gradient'] h2,
.ee_block_wrapper[class*='gradient'] h2,
.layout_section[class*='gradient'] h3,
.ee_block_wrapper[class*='gradient'] h3 {
    color: var(--text_on_gradient_color);
}
.layout_section.content_white > .layout h2 {
    color: var(--text_color);
}
body .backend .ui-dialog-titlebar,
body .frontend .ui-dialog-titlebar {
    background-color: var(--primary);
    color: var(--text_on_primary_color);
}

body .frontend .ui-dialog .ui-dialog-content,
body .backend .ui-dialog .ui-dialog-content {
    color: var(--text_color);
}
.ee_tabs h3.primary,
.layout_section .section-title.primary {
    color: var(--primary);
}
.ee_tabs h3.secondary,
.layout_section .section-title.secondary {
    color: var(--secondary);
}
.ee_tabs h3.tertiary,
.layout_section .section-title.tertiary {
    color: var(--tertiary);
}
.ee_tabs h3.heading_color,
.layout_section .section-title.heading_color {
    color: var(--heading_color);
}
.layout_section.content_white > .layout .text-content,
.layout_section .ee_block_wrapper.white.has_bg,
.layout_section .ee_block_wrapper.white.has_bg .text-content {
    color: var(--text_color);
}

.layout--twocol-section > .layout__region .block:not(:last-child) {
    margin-bottom: 2.3em;
}
.layout--twocol-section
> .layout__region.block_no_distance
.block:not(:last-child) {
    margin-bottom: 0;
}
.bg_image.layout_section {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
/* +++++++++++++++++++++
  Accordion
++++++++++++++++++++++ */
/*reset styles from core/assets/vendor/jquery.ui/themes/base/theme.css*/
.ui-widget {
    font-family: var(--font-family);
}
.faq_block .ui-state-default,
.faq_block .ui-widget-content .faq_block .ui-state-default,
.faq_block .ui-widget-header,
.faq_block .ui-state-default {
    font-family: var(--font-family);
    border: none;
    background: none;
    font-weight: normal;
    color: unset;
}
.faq_block .ui-widget-content {
    border: none;
    background: none;
    color: unset;
}
.layout_section tr,
.layout_section .draggable-table.tabledrag-disabled tr {
    background: none;
}
ul {
    margin-block-end: 1.5em;
}
.dataTable td {
    height: unset;
}
/*style_accordion*/
/*accordion default*/

.faq_block .ui-accordion-header::after {
    font: var(--fa-font-sharp-light);
    content: '\f078';
    position: absolute;
    right: 0.5em;
    top: calc(50% - 10px);
    transform: translateY(-50%);
    pointer-events: none;
}
.style_accordion .faq_block .ui-accordion-header::after {
    margin-right: -2.5rem;
}
.faq_block .ui-accordion-header.ui-accordion-header-active::after {
    content: '\f077';
}

.style_accordion .faq_block .ui-accordion-header {
    color: var(--text_color);
    background: transparent;
    font-weight: 100;
    border-bottom: 1px solid var(--text_color);
    border-radius: 0;
    padding-right: 2.5rem;
}
.style_accordion .faq_block h2.ui-accordion-header {
    font-size: 1.6rem;
    padding-bottom: 0.5em;
    margin: 1em 0 0.1em 0;
    cursor: pointer;
}
.style_accordion .faq_block h2.ui-accordion-header + .ui-accordion-content {
    padding: 0 3.5em 0 2em;
}
.faq_block h3.ui-accordion-header {
    font-size: 1.4rem;
    padding-bottom: 0.5em;
    margin: 0.8em 0;
}
.faq_block h3.ui-accordion-header + .ui-accordion-content {
    border-bottom: 1px solid var(--text_color);
    padding-left: 1.5em;
    padding-bottom: 1.5em;
}

.layout_section[class*='gradient'] .style_accordion .faq_block .ui-accordion-header,
.layout_section[class*='gradient'] .style_accordion .faq_block h3.ui-accordion-header + .ui-accordion-content {
    color: var(--text_on_gradient_color);
    border-bottom: 1px solid rgba(var(--text_on_gradient_rgb), 0.3);
}
.layout_section.primary .style_accordion .faq_block .ui-accordion-header,
.layout_section.primary .style_accordion .faq_block h3.ui-accordion-header + .ui-accordion-content {
    color: var(--text_on_primary_color);
    border-bottom: 1px solid rgba(var(--text_on_primary_rgb), 0.3);
}
.layout_section.secondary .style_accordion .faq_block .ui-accordion-header,
.layout_section.secondary .style_accordion .faq_block h3.ui-accordion-header + .ui-accordion-content {
    color: var(--text_on_secondary_color);
    border-bottom: 1px solid rgba(var(--text_on_secondary_rgb), 0.3);
}
.layout_section .style_accordion .faq_block .ui-accordion-header.ui-accordion-header-active {
    border-bottom: none;
    margin-bottom: 0.3em;
}
/* a11y FAQ styles */
.style_standard .block-ee-faq h2 {
    text-align: center;
    margin-bottom: 20px;
}
.style_standard .faq_header {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}
.style_standard .faq_cat_switch {
    flex: 1;
    background-color: white;
    cursor: pointer;
    border: none;
    padding: 10px;
    font-size: 1.5rem;
    font-weight: 700;
    width: 100%;
    border-radius: var(--ee_button_radius);
    hyphens: none;
}
.secondary .style_standard .faq_cat_switch.active,
.style_standard .faq_cat_switch.active {
    background-color: var(--primary, darkgray);
    color: var(--text_on_secondary_color, black);
}
.primary .style_standard .faq_cat_switch.active {
    background-color: var(--secondary, darkgray);
    color: var(--text_on_secondary_color, black);
}

#ee-faq_block h3.ui-accordion-header {
    font-weight: 700;
    margin: 20px 0;
    cursor: pointer;
    border-bottom: 2px solid var(--primary, darkgray);
    border-radius: 0 0 0 0;
    padding-right: 35px;
    position: relative;
}
#ee-faq_block h3.ui-accordion-header-active {
    border-bottom: none;
}
#ee-faq_block .ui-accordion-content-active {
    border-bottom: 2px solid var(--primary, darkgray);
    border-radius: 0 0 0 0;
    padding: 20px 0;
}
.field--name-body a:not([class]) {
    color: var(--primary);
    text-decoration: none;
}
.field--name-body a:not([class]):hover {
    color: var(--primary);
    text-decoration: underline;
}
/**** ckeditor classes ********/
a.logout_button {
    display: inline-block;
    text-align: center;
    color: var(--text_on_primary_color);
    padding: 1em 3em;
    background-color: var(--primary);
    border: 1px solid var(--primary);
    font-size: 1rem;
    border-radius: var(--ee_button_radius);
    transition: color 0.5s ease, background-color 0.5s ease;
    text-decoration: none;
}
.layout_section .ee_block_wrapper a.ee_button {
    display: block;
    text-align: center;
    padding: 1em 3em;
    font-size: 1.125rem;
    border-radius: var(--ee_button_radius);
    transition: color 0.5s ease, background-color 0.5s ease;
    text-decoration: none;
}
.layout_section .ee_block_wrapper.primary a.ee_button {
    color: var(--text_on_secondary_color);
    background-color: var(--secondary);
    border: 1px solid var(--secondary);
}
.layout_section .ee_block_wrapper.secondary a.ee_button {
    color: var(--text_on_primary_color);
    background-color: var(--primary);
    border: 1px solid var(--primary);
}
.layout_section a.ee_button.shadow {
    display: inline-block;
    padding: 2em 3em;
    box-shadow: 0 8px 15px rgb(0 0 0 / 20%);
    text-decoration: none;
}
.ee_block_wrapper a.ee_button_inverse {
    display: block;
    text-align: center;
    padding: 1em 3em;
    background-color: transparent;
    font-size: 1.125rem;
    box-shadow: none;
    border-radius: 3px;
    transition: color 0.5s ease, background-color 0.5s ease;
    text-decoration: none;
}
.ee_block_wrapper.primary a.ee_button_inverse {
    color: var(--secondary);
    border: 1px solid var(--secondary);
}
.ee_block_wrapper.secondary a.ee_button_inverse {
    color: var(--primary);
    border: 1px solid var(--primary);
}
.ee_block_wrapper.secondary a.ee_button_inverse.ee_icon:after {
    float: right;
}
a.logout_button:hover,
.layout_section a.ee_button:hover {
    background-color: #000;
    border-color: #000;
    color: #fff;
    transition: color 0.5s ease, background-color 0.5s ease;
}
/*styles for view modes*/
.layout--twocol-section--25-75 .layout__region--first .view_mode_passbild {
    float: right;
}
blockquote {
    margin: 0;
    text-align: left;
    margin-bottom: 1em;
}

blockquote p:before {
    font: var(--fa-font-regular);
    content: '\f10d';
    font-weight: 700;
    margin-right: 0.3em;
}
blockquote p:after {
    font: var(--fa-font-regular);
    content: '\f10e';
    font-weight: 700;
    margin-left: 0.3em;
}
.ee_block_wrapper.view_mode_quote .text-content {
    display: inline-block;
}
.ee_block_wrapper.view_mode_quote .block__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}
.ee_block_wrapper.view_mode_quote .block__content .field__item {
    display: inline-block;
    text-align: center;
    font-style: italic;
}
.layout_section .view_mode_hinweistext h2,
.layout_section .view_mode_hinweistext p,
.layout_section blockquote p {
    font-size: 1.125rem;
    margin: 0;
    font-style: normal;
}
.layout_section .view_mode_hinweistext {
    text-align: center;
    hyphens: none;
}
/*Schritte zu Ihrer Investition*/
.raster .block-inline-blockee-card .block__content {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    hyphens: none;
}
/*Schritte zu Ihrer Investition*/
.raster .block-inline-blockee-card .block__content h3 {
    margin: 0;
}
.raster .block-inline-blockee-card .ee_step_icon {
    width: 1.6em;
    height: 1.6em;
    display: flex;
    text-align: center;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    margin: 0 auto;
    font-size: 3.5rem;
    margin-bottom: 1em;
    background-color: var(--primary);
    color: var(--text_on_primary_color);
}
.layout_section.primary .raster .block-inline-blockee-card .ee_step_icon,
.layout_section[class*='gradient']
.raster
.block-inline-blockee-card
.ee_step_icon {
    background-color: var(--text_on_gradient_color);
    color: var(--primary);
}
.layout_section.secondary .raster .block-inline-blockee-card .ee_step_icon {
    background-color: var(--text_on_secondary_color);
    color: var(--secondary);
}
/*card bild links oder rechts*/
.ee_block_wrapper .block__content.bild_links,
.ee_block_wrapper .block__content.bild_rechts {
    display: flex;
    justify-content: space-between;
    gap: var(--grid-gap);
}
.ee_block_wrapper .block__content.bild_links > div,
.ee_block_wrapper .block__content.bild_rechts > div {
    flex: 1;
}
/*benutzeranmeldung*/

.modal_login ul {
    display: none;
}
.modal_login label {
    display: none;
}

.modal_login,
.modal_logout {
    padding: 2rem;
}
.modal_login.block input,
.modal_login.block .do_register a {
    width: 100%;
    margin-inline-end: 0;
}
.modal_login.block .do_register a {
    text-align: center;
    display: block;
    border: none;
}
.modal_login .reset_password a {
    color: var(--text_on_secondary_color);
}
@supports (display: inline-flex) {
    .do_register a.button {
        display: inline-block;
        padding-block: calc((var(--sp3) - var(--line-height-s)) / 2);
    }
}
.modal_login,
.modal_logout {
    background-color: var(--secondary);
    color: var(--text_on_secondary_color);
    position: fixed;
    left: 50%;
    top: 50%;
    display: none;
    width: 430px;
    max-width: 90%;
    transform: translate(-50%, -50%);
    border-radius: 0;
    z-index: 1001;
    border: 1px solid var(--primary);
}
.modal_login .text-content,
.modal_logout .text-content {
    color: var(--text_on_secondary_color);
}

.close_login_logout {
    display: block;
    width: 100%;
    height: 3rem;
}
.close_login_logout::before {
    font: var(--fa-font-sharp-light);
    font-size: 2rem;
    line-height: normal;
    color: var(--text_on_primary_color);
    content: '\f2d3';
    float: right;
}

.modal_login,
.modal_logout {
    -webkit-box-shadow: 0px 2px 5px 0px rgba(50, 50, 50, 0.59);
    -moz-box-shadow: 0px 2px 5px 0px rgba(50, 50, 50, 0.59);
    box-shadow: 0px 2px 5px 0px rgba(50, 50, 50, 0.59);
}
/*cookie banner*/
div#sliding-popup,
div#sliding-popup .eu-cookie-withdraw-banner,
.eu-cookie-withdraw-tab {
    background: none;
    background-color: var(--secondary);
}
.eu-cookie-compliance-content {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    padding-top: 25px;
}
.eu-cookie-compliance-content #popup-text {
    text-align: center;
}
.find-more-button,
.eu-cookie-compliance-content #popup-text {
    color: var(--text_on_primary_color);
}
.eu-cookie-compliance-categories {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
}
.eu-cookie-compliance-categories .eu-cookie-compliance-categories-buttons {
    width: 100%;
    max-width: 100%;
}
[id^='mapdiv'],
#mapdiv {
    z-index: 5;
}
.region--footer-bottom {
    width: 100%;
    max-width: var(--wide_content_width);
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    background-color: #000;
    padding: 25px;
    padding-bottom: 50px;
}
.region--footer-bottom ul.menu li a {
    font-size: 1rem;
    color: #fff;
}
.disagree-button.eu-cookie-compliance-more-button,
.eu-cookie-compliance-agree-button,
.eu-cookie-compliance-default-button,
.eu-cookie-compliance-hide-button,
.eu-cookie-compliance-more-button-thank-you,
.eu-cookie-withdraw-button,
.eu-cookie-compliance-save-preferences-button {
    cursor: pointer;
    margin-right: 0;
    margin-top: 0;
    vertical-align: middle;
    overflow: visible;
    width: auto;
    box-shadow: none;
    background-color: var(--secondary);
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
    border: none;
    color: var(--text_on_secondary_color);
    font-weight: bold;
    padding: 0;
    text-decoration: none;
    text-shadow: none;
}
.eu-cookie-compliance-categories-buttons {
    text-align: center;
}
.eu-cookie-withdraw-button,
.eu-cookie-compliance-default-button,
.popup-buttons button,
.eu-cookie-compliance-save-preferences-button button,
.eu-cookie-compliance-categories-buttons button {
    border: none;
    background: var(--primary);
    color: var(--text_on_primary_color);
    text-decoration: none;
    padding: 8px 25px;
    font-size: 18px;
    text-align: center;
    transition: all 300ms ease;
    font-weight: bold;
    text-transform: none;
    min-width: 300px;
    background-image: none;
}
.eu-cookie-compliance-categories-buttons button:hover,
.disagree-button.eu-cookie-compliance-more-button:hover,
.eu-cookie-compliance-agree-button:hover,
.eu-cookie-compliance-default-button:hover,
.eu-cookie-compliance-hide-button:hover,
.eu-cookie-compliance-more-button-thank-you:hover,
.eu-cookie-withdraw-button:hover {
    background-color: rgba(var(--primary_rgb), 0.7);
    background-image: none;
}
.eu-cookie-compliance-categories {
    padding-top: 0;
}
.eu-cookie-compliance-message p {
    font-size: 18px;
    display: block;
}
/*div table*/
.ee_divtable > div {
    display: table;
}

.ee_divtable > div {
    display: table-row;
}
.ee_divtable > div > div {
    display: table-cell;
    padding: 0.5em;
}

.ee_divtable > div > div:first-child {
    font-weight: 700;
    padding-left:0;
}

.ee_divtable > div > div:last-child {
    border-right: none;
}
/*datenschutz cookies*/
.datenschutz .divrow {
    width: 100%;
    float: none;
    display: table-row;
    padding-right: 5%;
    border-left: none;
    margin-bottom: 2rem;
    padding-left: 1rem;
    border-bottom: 1px solid var(--primary);
}
.datenschutz .divrow > div:first-child {
    font-weight: 600;
    font-size: inherit;
    width: auto;
}
.datenschutz .divrow > div {
    display: table-cell;
    border-bottom: 1px solid var(--primary);
    padding: 10px;
}
.datenschutz .divrow > div:last-child {
    text-align: left;
    width: auto;
}
@media (max-width: 900px) {
    .datenschutz .divrow div::before {
        content: attr(title) ':';
        display: block;
        font-weight: 700;
        font-size: 100%;
    }
    .datenschutz .divrow.th {
        display: none;
    }

    .datenschutz .divrow {
        border: none;
        padding: 0px;
    }
    .datenschutz .divrow > div:first-child {
        font-weight: normal;
        font-size: inherit;
        width: auto;
    }
}
/*resets and normalize*/
summary {
    cursor: pointer;
}
.block-inline-blockee-text a {
    color: var(--primary);
    text-decoration: none;
}
.block-inline-blockee-text a:hover {
    color: var(--heading_color, var(--primary));
    text-decoration: underline;
}
#drupal-off-canvas-wrapper {
    min-width: 33%;
}
.button:focus {
    font-weight: inherit;
}
.form-item__label {
    font-size: 1rem;
    line-height: normal;
}
.form-item__label.form-required::after,
.fieldset__label.form-required::after,
.required-mark::after {
    color: var(--primary);
    content: '*';
    background: none;
    font-size: 1.1em;
}
[type='color'],
[type='date'],
[type='datetime-local'],
[type='email'],
[type='file'],
[type='month'],
[type='number'],
[type='password'],
[type='search'],
[type='tel'],
[type='text'],
[type='time'],
[type='url'],
[type='week'],
textarea {
    min-height: var(--sp2);
    color: var(--text_color);
    padding: 0 var(--sp);
}
.onoffswitch input[type='checkbox'] {
    display: none;
}
select {
    height: var(--sp2);
}

.block-layout-builder.field--name-field-ee-card-title .field {
    margin-block-end: var(--sp2);
}
/*mmenu-light*/
#menu a.mm-close {
    display: inline-block;
    cursor: pointer;
    width: unset;
    padding: 0;
    margin: 0;
    text-decoration: none;
    float: right;
    margin-right: 10px;
    margin-top: 5px;
    font-size: 2rem;
    border: none;
}
#menu a.mm-close:after {
    content: none;
}
.mm-spn.mm-spn--navbar::before {
    opacity: 0.8;
}
.mm-spn.mm-spn--light {
    color: var(--text_on_primary_color);
    background: rgba(var(--primary_rgb), 1);
}
.mm-spn.mm-spn--light a {
    color: var(--text_on_primary_color);
}
.mm-spn li::before {
    opacity: 1;
}
.mm-spn li::after {
    margin-left: 0;
    opacity: 0.8;
}
.mm-spn a:not(:last-child)::after {
    opacity: 0.6;
}
/*modal contact form*/
.region-contact-form .block-webform {
    display: none;
    height: auto;
    position: absolute;
    margin-left: 0px;
    left: 50%;
    top: 99px;
    background-repeat: no-repeat;
    transform: translate(-50%, 0%);
    z-index: 1000;
    background-color: #fff;
    overflow: auto;
    border: 1px solid var(--secondary);
    box-sizing: border-box;
}
.layout_section.primary
:is(.forum table, .text-content table, .views-table, .draggable-table)
td {
    border-block-end: 2px solid var(--text_on_primary_color);
}
.layout_section.secondary
:is(.forum table, .text-content table, .views-table, .draggable-table)
td {
    border-block-end: 2px solid var(--text_on_primary_color);
}
.layout_section.tertiary
:is(.forum table, .text-content table, .views-table, .draggable-table)
td {
    border-block-end: 2px solid var(--text_on_primary_color);
}
.layout_section[class*='gradient']
:is(.forum table, .text-content table, .views-table, .draggable-table)
td {
    border-block-end: 2px solid var(--text_on_primary_color);
}
.region-contact-form
.block-webform
:is(
    input[type='color'],
    input[type='date'],
    input[type='datetime-local'],
    input[type='email'],
    input[type='file'],
    input[type='month'],
    input[type='number'],
    input[type='password'],
    input[type='search'],
    input[type='tel'],
    input[type='text'],
    input[type='time'],
    input[type='url'],
    input[type='week'],
    textarea
  ):focus {
    outline: none;
    border: none;
}
.region-contact-form .block-webform h2.block__title {
    font-size: 2rem;
    line-height: 1.3em;
    margin-bottom: 0.5em;
    margin-top: 0;
    text-align: center;
}
.region-contact-form .block-webform select {
    border: none;
    border-bottom: 2px solid #999;
    font-size: 1.33333rem;
    padding-left: 0;
}
.region-contact-form .block-webform .block__content {
    position: relative;
}
.region-contact-form .block-webform .close_this_wrapper {
    float: right;
    color: var(--primary);
    position: absolute;
    top: 0;
    right: 0;
    font-size: 2rem;
}
.region-contact-form .block-webform .form-item-anrede,
.webform-flex--container > .form-item.ffl-wrapper,
.ffl-wrapper {
    position: relative;
    margin-top: 0px;
    margin-bottom: 2.33333rem;
}
.ffl-wrapper::after,
.ffl-wrapper::before {
    display: table;
    content: ' ';
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-order: 1;
    order: 1;
}

.ffl-wrapper label {
    position: absolute;
    pointer-events: none;
    left: 1px;
    top: 50%;
    margin: 0;
    margin-top: -0.55rem;
    margin-left: 1px;
    transition: all 0.2s ease;
    font-size: 1.33333rem;
    color: var(--text_color);
    line-height: 1;
    z-index: 1;
    font-weight: 400;
}
.ffl-wrapper label.textarea {
    top: 15px;
    margin-left: 1px;
}
.ffl-wrapper input {
    position: relative;
    display: block;
    width: 100%;
    border: none;
    box-shadow: none;
    border-bottom: 2px solid #999;
    font-size: 1.33333rem;
    padding: 2px 1px;
    margin-bottom: 0;
    background: 0 0;
    height: 35px;
    line-height: 28px;
    color: var(--black);
}
.ffl-wrapper input:focus,
.ffl-wrapper textarea:focus {
    border-color: var(--black);
    background-color: #f2f2f2;
}
.ffl-wrapper .nice-select.open span.current {
    position: absolute;
    bottom: 22px;
    font-size: 0.8rem;
    margin-top: 0;
    transition: all 0.2s ease;
}

.ffl-wrapper.filled input:not(:focus) ~ label,
.ffl-wrapper.filled textarea:not(:focus) ~ label,
.ffl-wrapper input:focus ~ label {
    top: -15px;
    font-size: 0.8rem;
    margin-top: 0;
}
.ffl-wrapper.textarea {
    margin-top: 10px;
}
.ffl-wrapper.textarea textarea {
    border: none;
    border-bottom: 2px solid #999;
    padding: 0;
    padding-top: 0.3em;
}
.ffl-wrapper.textarea textarea:focus ~ label {
    top: -18px;
    font-size: 0.8rem;
    margin-top: 0;
}
/*Zeichnug*/
div[id^='area-'].open .field-type-header + .row::before,
div[id^='area-'].open .field-type-header .field-label::before {
    color: var(--text_on_primary_color);
    background-color: var(--primary);
}
div[id^='area-'].open .field-type-header + .row::after {
    border-color: var(--primary) transparent transparent transparent;
}
/*jquer tooltip z.B. Zeichnungsmaske Angemessenheit*/
#tooltip {
    position: absolute;
    padding: 6px;
    font-weight: 100;
    line-height: normal;
    font-size: 0.8rem;
    width: 200px;
    background-color: #fff;
    border: 1px solid var(--primary);
    display: none;
    font-family: var(--font-family);
}
/*Recaptcha*/
fieldset.captcha {
    border: none;
    padding: 0;
    margin: 2rem 0;
}
fieldset.captcha legend {
    display: none;
}
/*???????????*/
#drupal-off-canvas-wrapper
form#layout-builder-update-block
+ input.button--primary {
    display: none;
}
#block-ee-theme-regiocapfooteraddress .text-content {
    color: var(--primary);
}
footer {
    background-color: #000;
    text-align: center;
}
#progress {
    display: none;
    position: absolute;
    z-index: 1000;
    left: 400px;
    top: 300px;
    width: 200px;
    height: 20px;
    margin-top: -20px;
    margin-left: -100px;
    background-color: #fff;
    background-color: rgba(255, 255, 255, 0.7);
    border-radius: 4px;
    padding: 2px;
}
#content > .block-block-content:last-child {
    margin-bottom: 3.125rem;
}
@supports (outline-style: double) {
    a:focus-visible,
    a.logout_button:focus-visible,
    .layout_section a.ee_button:focus-visible,
    .layout_section .ee_block_wrapper.secondary a.ee_button:focus-visible,
    .ee_block_wrapper.secondary a.ee_button_inverse:focus-visible,
    .block-ee-faq .faq_header:focus-visible,
    .faq_cat_switch:focus-visible,
    ul.menu li a:focus-visible {
        border-width: 1px;
        outline-width: 6px;
        outline-style: double;
        outline-offset: -1px;
        outline-color: var(--primary, darkgray);
    }
    .ee_block_wrapper.primary a.ee_button_inverse:focus-visible,
    .layout_section .ee_block_wrapper.primary a.ee_button:focus-visible {
        outline-color: var(--secondary, darkgray);
        border-width: 1px;
        outline-width: 6px;
        outline-style: double;
        outline-offset: -1px;
    }
}
