html {
  font-size: 16px;
  scroll-behavior: smooth;
  scroll-padding-top: 250px !important;
}
body * {
  /*border:1px solid red;*/
}
.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;
}

.frontend ul {
  list-style: square;
}

.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: #ffffff;
  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: #ffffff;
  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: #ffffff;
  border: 1px solid #ffffff;
  font-size: 1rem;
  padding: 1em;
}

.ck-editor__editable p.ee_hinweis {
  color: #000000;
  border: 1px solid #000000;
  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: #ffffff;
  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: #ffffff;
  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 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 header ul.menu li a.is-active:not([href*="#"]),
#page header ul.menu li a:hover {
  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;
} */
.region-header .block-superfish {
  width: unset;
  flex: 1;
}
ul.sf-menu > li > a,
ul.sf-menu span.nolink {
  padding: 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="checkbox"] {
  --form-control-color: var(--color--gray-5);
  --form-control-disabled: var(--color--gray-60);
  background-image: none !important;
  /* Add if not using autoprefixer */
  -webkit-appearance: none;
  /* Remove most all native input styles */
  appearance: none;
  /* For iOS < 15 */
  background-color: var(--form-background);
  /* Not removed via appearance */
  margin: 0;

  display: inline-grid;
  font: inherit;
  color: currentColor;
  width: 1.1em;
  height: 1.1em;
  min-width: 1.1em;
  min-height: 1.1em;
  border: 0.1em solid currentColor;
  border-radius: var(--border-radius);
  transform: translateY(-0.075em);
  place-content: center;
}

input[type="checkbox"]::before {
  content: "";
  width: 0.65em;
  height: 0.65em;
  clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
  transform: scale(0);
  transform-origin: bottom left;
  transition: 120ms transform ease-in-out;
  /*box-shadow: inset 1em 1em currentColor;*/
  /* Windows High Contrast Mode */
  background-color: currentColor;
}

input[type="checkbox"]:checked::before {
  transform: scale(1);
}

input[type="checkbox"]:focus {
  outline: max(2px, 0.15em) solid currentColor;
  outline-offset: max(2px, 0.15em);
}

input[type="checkbox"]:disabled {
  --form-control-color: var(--form-control-disabled);

  color: var(--form-control-disabled);
  cursor: not-allowed;
}

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: #000000;
  border-color: #000000;
  color: #ffffff;
  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: 100%;
  top: 0px;
  left: 0px;
  overflow: hidden;
  background-color: rgba(0, 0, 0, 0.4);
  z-index: 102;
}

.ee_headerimge .headerimage,
.ee_headerimage .headerimage {
  position: relative;
  background-size: cover;
  background-position: center center;
}

.ee_headerimge .headertext_wrapper,
.ee_headerimage .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;
}
.layout_section.section_hidden {
  background: repeating-linear-gradient(
    45deg,
    #e5e5e5 0 10px,
    #fafafa 10px 20px
  );
}
.layout_section.section_hidden:before {
  content: "Abschnitt ausgeblendet";
  color: red;
  font-weight: 700;
}

.raster .ee_block_wrapper:not(.ohne):not(.none).has_bg {
  height: 100%;
}

#testimonial.layout_section,
#ee_testimonial.layout_section {
  padding: 1rem 1.5rem;
}

.backend #main,
.layout_section .layout.add_padding,
.layout_section:not(.full_width) {
  padding: 3.125rem 1.5rem;
}
.layout_section:not(.full_width) .ee_block_wrapper .layout_section {
  padding: 0;
}

footer {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.layout_section:not(.full_width).no_distance,
.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-builder__add-block {
  clear: both;
}

.layout_region_wrapper .layout {
  display: block;
  width: 100%;
  max-width: var(--content_width);
  margin-left: auto;
  margin-right: auto;
}
.block-page-title-block,
.ee_headerimge .headertext_wrapper .headertext,
.ee_headerimage .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_section.slider_wrapper.arrows_wrapper {
  padding: 3.125rem 1rem;
}
.layout__region.slider:not(.carousel).arrows {
  padding: 3.125rem 1.5rem;
}
.layout_section.full_width .title_wrapper {
  max-width: unset;
}
.layout_section.full_width.slider_wrapper.arrows_wrapper .title_wrapper {
  padding-left: 2.5rem;
}
.layout_section.full_width .title_wrapper,
.layout_section.raster_wrapper.full_width h2 {
  padding-left: 3.5rem;
}

.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: 0.3em;
}
.layout_section .title_margin_top .section-title {
  margin-top: 3.125rem;
}

.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--twocol-section .layout__region.col_white {
  background: #ffffff;
}
.layout--twocol-section .layout__region.col_primary,
.layout_section.content_primary > .layout,
.layout_section.primary,
.ee_block_wrapper.primary {
  background: var(--primary);
}
.layout-builder__region.content_secondary,
.layout--twocol-section .layout__region.col_secondary,
.layout_section.content_secondary > .layout,
.layout_section.secondary,
.ee_block_wrapper.secondary {
  background: var(--secondary);
}
.layout--twocol-section .layout__region.col_tertiary,
.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: #ffffff;
}

.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--twocol-section .layout__region.col_primary .ee_block_wrapper h2,
.layout--twocol-section .layout__region.col_primary .text-content,
.layout_section.primary p.ee_hinweis,
.layout_section .ee_block_wrapper.primary p.ee_hinweis,
.content_has_bg.content_primary .text-content,
  /*.layout_section.primary tr,*/
.ee_block_wrapper.primary tr,
.layout_section.primary .draggable-table.tabledrag-disabled tr,
.layout_section.content_primary > .layout h2,
.layout_section.primary .layout__region:not(.content_no_bg) .text-content,
.layout_section.primary .layout__region:not(.content_no_bg) .text-content h2,
.layout_section.primary .layout__region:not(.content_no_bg) h2.block__title,
.ee_block_wrapper.primary .text-content,
.layout_section .layout__region .ee_block_wrapper.primary .text-content,
.layout_section.primary,
.layout_section.primary :not(.ee_button),
.ee_block_wrapper.primary .layout__region:not(.content_no_bg),
.layout_section.primary h2.section-title,
.layout_section .ee_block_wrapper.primary h2,
.layout_section .ee_block_wrapper.primary .text-content h2,
.layout_section .layout__region:not(.content_no_bg) .ee_block_wrapper.primary .text-content h2,
.ee_block_wrapper.primary h2,
.layout_section.primary h3,
.ee_block_wrapper.primary h3 {
  color: var(--text_on_primary_color);
}
.layout_section .ee_block_wrapper.primary p.ee_hinweis,
.layout--twocol-section .layout__region.col_primary p.ee_hinweis,
.layout_section.primary p.ee_hinweis {
  border: 1px solid var(--text_on_primary_color);
}
.layout--twocol-section .layout__region.col_secondary .ee_block_wrapper h2,
.layout--twocol-section .layout__region.col_secondary .text-content,
.layout_section.secondary p.ee_hinweis,
.layout_section .ee_block_wrapper.secondary p.ee_hinweis,
.content_has_bg.content_secondary .text-content,
  /*.layout_section.secondary tr,*/
.ee_block_wrapper.secondary tr,
.layout_section.secondary .draggable-table.tabledrag-disabled tr,
.layout_section.content_secondary > .layout h2,
.layout_section.secondary .layout__region:not(.content_no_bg) .text-content,
.layout_section.secondary .layout__region:not(.content_no_bg) .text-content h2,
.layout_section.secondary .layout__region:not(.content_no_bg) h2.block__title,
.layout_section.secondary .text-content,
.layout_section .layout__region .ee_block_wrapper.secondary .text-content,
.layout_section.secondary,
.layout_section.secondary a:not(.ee_button),
.ee_block_wrapper.secondary,
.layout_section.secondary h2.section-title,
.layout_section .ee_block_wrapper.secondary h2,
.layout_section .ee_block_wrapper.secondary .text-content h2,
.layout_section .layout__region:not(.content_no_bg) .ee_block_wrapper.secondary .text-content h2,
.layout_section.secondary h3,
.ee_block_wrapper.secondary h3 {
  color: var(--text_on_secondary_color);
}

.layout_section .ee_block_wrapper.secondary p.ee_hinweis,
.layout--twocol-section .layout__region.col_secondary p.ee_hinweis,
.layout_section.secondary p.ee_hinweis {
  border: 1px solid var(--text_on_secondary_color);
}
.layout--twocol-section .layout__region.col_tertiary .ee_block_wrapper h2,
.layout--twocol-section .layout__region.col_tertiary .text-content,
.layout_section.tertiary p.ee_hinweis,
.layout_section .ee_block_wrapper.tertiary p.ee_hinweis,
.content_has_bg.content_tertiary .text-content,
  /*.layout_section.tertiary tr,*/
.ee_block_wrapper.tertiary tr,
.layout_section.tertiary .draggable-table.tabledrag-disabled tr,
.layout_section.content_tertiary > .layout h2,
.layout_section.tertiary .layout__region:not(.content_no_bg) .text-content,
.layout_section.tertiary .layout__region:not(.content_no_bg) .text-content h2,
.layout_section.tertiary .layout__region:not(.content_no_bg) h2.block__title,
.ee_block_wrapper.tertiary .text-content,
.layout_section .layout__region .ee_block_wrapper.tertiary .text-content,
.layout_section.tertiary,
.layout_section.tertiary a:not(.ee_button),
.ee_block_wrapper.tertiary,
.layout_section.tertiary h2.section-title,
.layout_section .ee_block_wrapper.tertiary h2,
.layout_section .ee_block_wrapper.tertiary .text-content h2,
.layout_section .layout__region:not(.content_no_bg) .ee_block_wrapper.tertiary .text-content h2,
.ee_block_wrapper.tertiary h2,
.layout_section.tertiary h3,
.ee_block_wrapper.tertiary h3 {
  color: var(--text_on_tertiary_color);
}
.layout--twocol-section .layout__region.col_tertiary p.ee_hinweis,
.layout_section.tertiary p.ee_hinweis {
  border: 1px solid var(--text_on_tertiary_color);
}

/*.layout_section[class*='gradient'] tr,*/
.layout_section[class*="gradient"] .draggable-table.tabledrag-disabled tr,
.layout_section[class*="gradient"] .layout__region:not(.content_no_bg) .text-content,
.layout_section[class*="gradient"] .layout__region:not(.content_no_bg) .text-content h2,
.layout_section[class*="gradient"] .layout__region:not(.content_no_bg) h2.block__title,
.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);
}
.layout_section .layout__region:not(.content_no_bg) .ee_block_wrapper.white .text-content h2{
    color: var(--heading_color);
}
body .backend .ui-dialog-titlebar,
body .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);
  max-width:100%;
}

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

.layout_section table.table.list * {
  border: none;
}
.layout_section .primary table.table.list td {
  color: var(--text_on_primary_color);
}
.layout_section .secondary table.table.list td {
  color: var(--text_on_secondary_color);
}

/*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;
  margin-top: 3.125rem;
  margin-bottom: 3.125rem;
}

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

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

.ee_button.ee_solo,
.layout_section .ee_block_wrapper a.ee_button,
.layout_section.tabs_with_icons .field--name-field-ee-card-link a,
.layout_section .ee_block_wrapper .field--name-field-ee-card-link a {
  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,
.layout_section.tabs_with_icons .field--name-field-ee-card-link a,
.layout_section .ee_block_wrapper.primary .field--name-field-ee-card-link a {
  color: var(--text_on_secondary_color);
  background-color: var(--secondary);
  border: 1px solid var(--secondary);
}

#drupal-off-canvas-wrapper [data-drupal-ck-style-fence] .ck.ck-dropdown a.ee_button,
.ck.ck-dropdown a.ee_button,
.layout_section .ee_block_wrapper.secondary a.ee_button,
.layout_section .ee_block_wrapper.secondary .field--name-field-ee-card-link a,
.layout_section .ee_block_wrapper.tertiary a.ee_button,
.layout_section .ee_block_wrapper.tertiary .field--name-field-ee-card-link a,
.layout_section .ee_block_wrapper.tile .field--name-field-ee-card-link a,
.layout_section .ee_block_wrapper.white .field--name-field-ee-card-link a,
.layout_section .ee_block_wrapper.none .field--name-field-ee-card-link a {
  color: var(--text_on_primary_color);
  background-color: var(--primary);
  border: 1px solid var(--primary);
}
.layout_section.tabs_with_icons .field--name-field-ee-card-link a,
.layout_section .ee_block_wrapper.none .bild_links .field--name-field-ee-card-link a,
.layout_section .ee_block_wrapper.none .bild_rechts .field--name-field-ee-card-link a {
  display: inline-block;
}
.layout_section .ee_block_wrapper .bild_rechts .field:not(:last-child),
.layout_section .ee_block_wrapper .bild_links .field:not(:last-child) {
  margin-block-end: unset;
}
.ck.ck-dropdown a.ee_button.shadow,
.ee_block_wrapper a.ee_button.shadow
{
  box-shadow: 0 8px 15px rgb(0 0 0 / 20%);
  padding: 1em 3em;
}
.layout_section .layout--twocol-section--75-25 a.ee_button.shadow
{
  display: inline-block;
  padding: 2em 3em;
  box-shadow: 0 8px 15px rgb(0 0 0 / 20%);
  text-decoration: none;
  float: right;
}

.ck.ck-dropdown a.ee_button_inverse,
.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;
}

.ck.ck-dropdown a.ee_button_inverse,
.ee_block_wrapper a.ee_button_inverse {
  color: var(--primary);
  border: 1px solid var(--primary);
}
.primary .ee_block_wrapper:not(.has_bg) a.ee_button_inverse,
.ee_block_wrapper.primary a.ee_button_inverse {
  color: var(--secondary);
  border: 1px solid var(--secondary);
}

.ee_block_wrapper a.ee_button_inverse.ee_icon:after,
.secondary .ee_block_wrapper a.ee_button_inverse.ee_icon:after,
.ee_block_wrapper.primary a.ee_button_inverse.ee_icon:after,
.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: #000000;
  border-color: #000000;
  color: #ffffff;
  transition: color 0.5s ease, background-color 0.5s ease;
}

/*inline links*/
.text-content p a:not([class]) {
  color: var(--link_color, var(--primary));
  text-decoration: none;
}

.text-content p a:not([class]):hover {
  color: rgba(var(--link_color_rgb, var(--primary_rgb)), 0.7);
  text-decoration: underline;
}

/*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 .ee_block_wrapper.primary .ee_step_icon,
.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);
}

.block-layout-builder.block-inline-blockee-card {
  position: relative;
}

/*View Mode Tile: Kachel*/
.ee_block_wrapper.tile .ee_tile,
.ee_block_wrapper.tile {
  height: 100%;
  aspect-ratio: 1 / 1;
}

.ee_block_wrapper.tile .ee_tile {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  overflow: hidden;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transition: background-size 0.4s ease;
  cursor: pointer;
}
.ee_block_wrapper.tile .ee_tile_with_info_button + .field--name-field-ee-card-text {
  display: none;
  opacity: 0;
  transition: opacity 0.35s ease, visibility 0s linear 0.35s;
  background-color: rgba(255, 255, 255, 0.7);
  pointer-events: none;
}


.block-layout-builder:not(:last-child) .tile .field,
.ee_block_wrapper.tile .field:not(:last-child) {
  margin-block-end: unset;
}

.ee_block_wrapper.tile .ee_tile_link {
  color: var(--text_color);
  text-decoration: none;
}
.ee_block_wrapper.tile .ee_tile_with_info_button + .field--name-field-ee-card-text {
  position: absolute;
  bottom: 0;
  padding: 20px 20px 3.6rem 40px;
}
.ee_block_wrapper.tile .field--name-field-ee-card-title h2,
.ee_block_wrapper.tile .field--name-field-ee-card-title h3 {
  background-color: rgba(var(--primary_rgb), 0.7);
  color: var(--text_on_primary_color, black);
  padding: 20px 20px 20px 40px;
  font-size: 1.5rem;
  font-weight: 700;
}

.ee_tile.ee_tile_with_text_button .ee_tile_text_button {
  background-color: rgba(var(--primary_rgb), 0.7);
  color: var(--text_on_primary_color, black);
  cursor: pointer;
  border: none;
  padding: 10px;
  font-size: 1.5rem;
  font-weight: 700;
  width: 100%;
  border-radius: var(--ee_button_radius);
  hyphens: none;
}
.ee_block_wrapper.tile .ee_tile > * {
  position: relative;
  z-index: 1;
}
.ee_tile.ee_tile_with_info_button .ee_tile_icon_info,
.ee_tile.ee_tile_with_icon_button .ee_tile_icon_button {
  position: absolute;
  right: 0;
  bottom: 0;
  background-color: rgba(var(--primary_rgb), 0.7);
  height: 3.5rem;
  width: 3.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.ee_tile.ee_tile_with_info_button .info_card_placeholder,
.ee_tile.ee_tile_with_info_button .info_card_placeholder .field--name-field-ee-card-text {
  visibility: hidden;
}
.ee_tile.ee_tile_with_info_button .ee_tile_icon_info:after,
.ee_tile_with_icon_button .ee_tile_icon_button:after {
  font: var(--fa-font-sharp-light);
  text-align: center;
  font-size: 2rem;
  color: var(--text_on_primary_color);
  display: inline-block;
}
.ee_tile.ee_tile_with_info_button .ee_tile_icon_info:after {
  content: "\f129";
}
.ee_tile_with_icon_button .ee_tile_icon_button:after {
  content: "\f061";
  transform: rotate(-45deg);
}
.ee_tile_with_text_button .ee_tile_text_button:hover,
.ee_tile_with_icon_button .ee_tile_icon_button:hover {
  background-color: rgba(var(--primary_rgb), 1);
}
.ee_block_wrapper.tile .ee_tile:not(.ee_tile_with_info_button)::before {
  content: "";
  position: absolute;
  inset: 0;
  background: inherit;
  background-size: inherit;
  background-position: inherit;
  background-repeat: inherit;
  transition: transform 0.4s ease;
  z-index: 0;
  pointer-events: none;
}

.ee_block_wrapper.tile .ee_tile:not(.ee_tile_with_info_button):hover::before {
  transform: scale(1.08);
}
/*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;
  border-radius: var(--ee_button_radius);
}

.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 {
  box-shadow: 0px 2px 5px 0px rgba(50, 50, 50, 0.59);
  box-shadow: 0px 2px 5px 0px rgba(50, 50, 50, 0.59);
  box-shadow: 0px 2px 5px 0px rgba(50, 50, 50, 0.59);
}

.ee_openstreet_map svg,
.ee_openstreet_map path {
  fill: var(--primary, #0e83a7);
}

/*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;
}
.block-block__openstreetmap .ee_button_wrapper {
  margin-top: 1.5em;
}
.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: #000000;
  padding: 25px;
  padding-bottom: 50px;
}

.region--footer-bottom ul.menu li a {
  font-size: 1rem;
  color: #ffffff;
}

.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);
  border-radius: 0;
  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;
}
div.divtable.datenschutz {
  margin: 1.5em 0;
}
.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;
}
#ee-customer-insert-block-form .form-item__label {
  line-height: var(--line-height-s);
}
#form-required-wrapper .form-required:after,
.form-item__label.form-required::after,
.fieldset__label.form-required::after,
.required-mark::after {
  color: var(--primary);
  content: "*";
  background: none;
  font-size: 1.3em;
}

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

.mm-spn a.is-active:not([href*="/#"]) {
  background-color: #000000;
}

/*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: #ffffff;
  overflow: auto;
  /* border: 1px solid var(--secondary); */
  box-sizing: border-box;
}

.webform-submission-form a,
.block-webform a {
  color: var(--link_color);
}

.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;
} */
.webform-submission-form h2.block__title {
  font-size: 2rem;
  line-height: 1.3em;
  margin-bottom: 0.5em;
  margin-top: 0;
  text-align: center;
}

.webform-submission-form select {
  border: none;
  border-bottom: 2px solid #999999;
  font-size: 1.33333rem;
  padding-left: 0;
  border-radius: unset;
}

.region-contact-form .block-webform .webform-submission-form select {
  margin-top: 1.7em;
}

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

.form-item-gewuenschter-investitionsbetrag-eu label,
#edit-gewuenschter-investitionsbetrag-eu--description {
  font-size: 1.125rem;
  line-height: 1.55em;
  margin: 0;
}

.form-item-gewuenschter-investitionsbetrag-eu .form-item__description {
  margin-top: 0;
  margin-right: 0;
}

.form-item-gewuenschter-investitionsbetrag-eu input {
  min-width: calc(50% - 0.5em);
  font-size: 1.125rem;
  border-top: 0;
  border-left: 0;
  border-radius: 0;
  padding-left: 0;
  border-right: 0;
  border-bottom: 2px solid #999999;
  padding-right: 0;
  margin-right: 0.5em;
}

.webform-submission-form .close_this_wrapper a {
  margin-top: -3rem;
  position: absolute;
  right: 0;
}

.region-contact-form .layout_section:not(.full_width) {
  padding: 3.125rem 1.5rem;
  padding-top: 3.125rem;
  padding-top: 4rem;
}

.webform-submission-form select,
.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 #999999;
  font-size: 1.33333rem;
  padding: 2px 1px;
  margin-bottom: 0;
  background: 0;
  height: 35px;
  line-height: 28px;
  color: var(--text_color);
  border-radius: unset;
}

.webform-submission-form select:focus,
.ffl-wrapper input[type="number"]:focus,
.ffl-wrapper input:focus,
.ffl-wrapper textarea:focus {
  border: none;
  background-color: #f2f2f2;
  outline: none;
}

.webform-submission-form select:focus-visible,
.webform-submission-form input[type="number"]:focus-visible,
.ffl-wrapper input:focus-visible,
.ffl-wrapper textarea:focus-visible {
  border: 1px solid var(--primary);
  background-color: #f2f2f2;
  outline: 1px solid var(--primary);
}

.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 label,
.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 #999999;
  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;
}

#ee_subscription_block a.file_download,
#ee_subscription_block #ee-no-info-text a,
#ee_subscription_block a#ee-no-info-text-link {
  color: var(--primary);
}

body.path-zeichnung div.ui-dialog {
  max-width: 100%;
}

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

#drupal-off-canvas-wrapper .filter-guidelines {
  display: none !important;
}

#block-ee-theme-regiocapfooteraddress .text-content {
  color: var(--primary);
}

footer {
  background-color: #000000;
  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: #ffffff;
  background-color: rgba(255, 255, 255, 0.7);
  border-radius: 4px;
  padding: 2px;
}

#content > .block-block-content:last-child {
  margin-bottom: 3.125rem;
}
.block-inline-blockee-images-grid .grid_image_caption {
  display: none;
}
.block-inline-blockee-images-grid .show_caption .grid_image_caption {
  display: block;
}
@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;
  }
}
.video-bg {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100vh; /* adjust if needed */
}

/* Video als Headerbackground */
.video-bg video {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: translate(-50%, -50%);
  z-index: -1;
}


.video-bg .headertext_wrapper {
  position: relative;
  z-index: 2;
  color: white;
}
.headerimage.video-bg {
  background-size: 0;
}
.headerimage.video-bg.is-mobile {
  background-size: cover;
}
