/*
Theme Name:   Divi Child
Theme URI:    http://www.elegantthemes.com/gallery/divi/
Description:  A Divi Child Theme
Author:       Tramsen Media
Author URI:   https://tramsen.de
Template:     Divi
Version:      1.2.3
*/

/* Zusätzliches CSS hinter dem abschließenden Schrägstrich einfügen
------------------------------------------------------------------- */

/*---Custom Shrink Header CSS is in child themes css folder---*/


/*-----------------------------------------------------------------------------------------*/
/*––––––-––Global-Modifications------------------------------------------------------------*/
/*---------write below css for global changings like navigation or widgets-----------------*/
/*-----------------------------------------------------------------------------------------*/

/*---Hyphenation / Trennung---*/
.hyphen, .trennung {
    -ms-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;
}

.hyphen-manual, .trennung-manual /*use "&shy;" in text*/{
    -ms-hyphens: manual;
    -webkit-hyphens: manual;
    hyphens: manual;
}

/*-----------------------------------------------------------------------------------------*/
/*––––––-––Custom-Modifications------------------------------------------------------------*/
/*---------write below css for standard changings like modules or only for special sites---*/
/*-----------------------------------------------------------------------------------------*/
html {
    scroll-padding-top: 60px;
}

:target {
    scroll-margin-top: 60px;
}

body {
	letter-spacing:0.02em;
}
h1, h2, h3, h4, h5, h6 {
	letter-spacing:inherit;
}

:is(h1,h2,h3,h4,h5,h6):has(+ p) { padding-bottom: 1.25rem; }
h1:has(+ h2 + p) { padding-bottom: 0.375rem; }
h1:has(+ h2) { padding-bottom: 0.375rem; }
h2:has(+ h3 + p) { padding-bottom: 0.275rem; }

h1,h2,h3,h4,h5,h6 { padding-bottom: 1.25rem; }

/*--- Start Customize Login Page ---*/
body.login {
    background-color: #005dab !important;
}
.login a {
    color:#c1c1c1 !important;
}
a:hover {
	color:#006666;
	text-decoration: underline;
	text-decoration-thickness: 3px;
}
.dnxte_feature_list_child a {
    color: #007a7a !important;
}
.dnxte_feature_list_child a:hover {
    color: #006666 !important;
}
/*--- End Customize Login Page ---*/

/*––––––––––––––––––––––-–– Seite - Reset Abstände Header oben/unten ––––––-––––––––––––––––-––*/
#page-container {
	padding:0!important;
	margin:0!important;
}


/*––––––––––––––––––––––-–– MENÜ – GLOBAL BASIS ––––––-––––––––––––––––-––*/

/* Hover-Hintergrund für klassische / mobile Menüs */
.et_mobile_menu li a:hover,
.nav ul li a:hover {
    background-color: #f9f9f9;
    opacity: 1;
}

/* Sicherheit: Submenüs nirgendwo clippen */
.et_pb_menu,
.et_pb_menu__wrap,
.et-menu-nav,
.et-menu .sub-menu {
    overflow: visible;
    z-index: 9999;
}
/* === Divi Menü Modul (Theme Builder): Level 3 sauber & bündig === */

/* Bezugspunkt ist der Link, nicht das LI (wegen dem + Bereich) */
.et_pb_menu__menu .sub-menu li.menu-item-has-children > a {
  position: relative;
}

/* Level 3 Standard: rechts neben Level 2, bündig an der Kante des Links */
.et_pb_menu__menu .sub-menu li.menu-item-has-children > a + ul.sub-menu {
  top: 0 !important;
  left: 100% !important;
  right: auto !important;
  margin: 0 !important;
  transform: none !important;
}

/* Level 2 Flip (dein JS setzt .submenu-left auf das LI) */
.et_pb_menu__menu li.submenu-left > ul.sub-menu {
  left: auto !important;
  right: 0 !important;
}

/* Level 3 Flip: NUR wenn GENAU dieses LI geflippt wurde */
.et_pb_menu__menu .sub-menu li.menu-item-has-children.submenu-left > a + ul.sub-menu {
  left: auto !important;
  right: 100% !important;
}
/* Level 3: Luft oben behalten, aber Menü insgesamt um diesen Wert nach oben schieben */
.et_pb_menu__menu .sub-menu li.menu-item-has-children > a + ul.sub-menu {
  padding-top: 12px !important;                 /* dein gewünschter Abstand */
  margin-top: 0 !important;
  top: 0 !important;

  transform: translateY(-12px) !important;      /* exakt Gegenwert */
}

/* erstes LI nicht zusätzlich verschieben/abständen */
.et_pb_menu__menu .sub-menu li.menu-item-has-children > a + ul.sub-menu > li:first-child {
  margin-top: 0 !important;
}




/*––––––––––––––––––––––-–– Globaler Header: Hauptmenü ––––––-––––––––––––––––-––*/

/* Basisfarbe 1. Ebene */
body #page-container #main-header
.et_pb_menu_0_tb_header.et_pb_menu .et-menu > li > a {
    color: #3a3a3a !important;
    line-height: 1.6em;             /* stabil, überall gleich */
}

/* Besuchte Links 1. Ebene */
body #page-container #main-header
.et_pb_menu_0_tb_header.et_pb_menu .et-menu > li > a:visited:not(:hover):not(:focus) {
    color: #2f2f2f !important;
}

/* Hover/Fokus 1. Ebene */
body #page-container #main-header .et_pb_menu_0_tb_header.et_pb_menu .et-menu > li > a:hover,
body #page-container #main-header .et_pb_menu_0_tb_header.et_pb_menu .et-menu > li > a:focus,
body #page-container #main-header .et_pb_menu_0_tb_header.et_pb_menu .et-menu > li > a:focus-visible {
    opacity: 1;
    color: #007a7a !important;
    text-decoration: solid underline #007a7a 2px;
}

/* Abstand der Hauptmenü-Punkte (1. Ebene) */
body #page-container #main-header
.et_pb_menu_0_tb_header.et_pb_menu .et-menu > li {
    padding-left: 16px !important;
    padding-right: 16px !important;
}

/* Header-Höhe vereinheitlichen – kein Logo-Springen */
body #page-container #main-header {
    line-height: normal !important;
}

/* Sticky: Logo-Breite */
.et_pb_sticky .et_pb_menu_0_tb_header .et_pb_menu_inner_container > .et_pb_menu__logo-wrap,
.et_pb_sticky .et_pb_menu_0_tb_header .et_pb_menu__logo-slot {
    width: 25% !important;
}

/*––––––––––––––––––––––-–– Submenüs im globalen Header ––––––-––––––––––––––––-––*/

/* Typografie Submenü & Mobile-Menü */
.et_pb_menu_0_tb_header.et_pb_menu .nav li ul.sub-menu a,
.et_pb_menu_0_tb_header.et_pb_menu .et_mobile_menu a,
body #page-container #main-header .et_pb_menu_0_tb_header.et_pb_menu .et-menu li li > a  {
    font-size: 1.125rem;
    font-weight: 600;
}

/* Submenü-Breite & Umbruch nur im Header-Menü */
body #page-container #main-header
.et_pb_menu_0_tb_header.et_pb_menu .et-menu .sub-menu {
    display: block;
    width: max-content !important;             /* so breit wie der längste Eintrag */
    min-width: 14rem !important;               /* Untergrenze */
    max-width: calc(100vw - 3rem) !important;  /* Schutz am Rand */
    white-space: normal;                       /* Wörter dürfen umbrechen */
}

/* Jeder Submenü-Eintrag als Block */
body #page-container #main-header
.et_pb_menu_0_tb_header.et_pb_menu .et-menu .sub-menu li {
    display: block;
}

/* Links im Submenü */
body #page-container #main-header
.et_pb_menu_0_tb_header.et_pb_menu .et-menu li li > a {
    display: block;
    width: auto !important;
    padding: 0.6em 1rem;
    line-height: 1.4;
    white-space: nowrap;   /* kein Zeilenumbruch innerhalb des Eintrags */
    overflow-wrap: normal;
}

/* Basisfarbe für alle Submenü-Links */
body #page-container #main-header
.et_pb_menu_0_tb_header.et_pb_menu .et-menu li li > a {
    color: #222 !important;
}

/* Nur ECHT aktiver Submenü-Punkt farbig */
body #page-container #main-header
.et_pb_menu_0_tb_header.et_pb_menu .et-menu li li.current-menu-item > a,
body #page-container #main-header
.et_pb_menu_0_tb_header.et_pb_menu .et-menu li li.current_page_item > a {
    color: #007A7A !important;
}

/* Wenn ein Menüpunkt aktiv ist UND Kinder hat:
   nicht-aktive Kinder bleiben grau */
body #page-container #main-header
.et_pb_menu_0_tb_header.et_pb_menu
.et-menu li.menu-item-has-children.current-menu-item ul.sub-menu li:not(.current-menu-item) > a {
    color: #222 !important;
}
/* Hover im Header-Menü (Desktop + Mobile): keine Transparenz */
body #page-container #main-header .et_pb_menu_0_tb_header.et_pb_menu .nav ul li a:hover,
body #page-container #main-header .et_pb_menu_0_tb_header.et_pb_menu .et_mobile_menu li a:hover {
    background-color: #f9f9f9;  /* wie vorher gewünscht */
    opacity: 1 !important;
}
/* AKTIVES Element (egal wo) – farbig + unterstrichen */
body #page-container #main-header
.et_pb_menu_0_tb_header.et_pb_menu .et-menu li.current-menu-item > a,
body #page-container #main-header
.et_pb_menu_0_tb_header.et_pb_menu .et-menu li.current_page_item > a,
.et_pb_menu_0_tb_header.et_pb_menu ul li.current-menu-item > a,
.et_pb_menu_0_tb_header.et_pb_menu .nav li ul.sub-menu li.current-menu-item > a,
.et_pb_menu_0_tb_header.et_pb_menu li.current_page_parent > a
{
    color: #007a7a !important;
    text-decoration: solid underline #007a7a 2px;
}

/* ÜBERGEORDNETE Elemente (Ancestor): nur Unterstreichung */
body #page-container #main-header
.et_pb_menu_0_tb_header.et_pb_menu .et-menu li.current-menu-ancestor > a,
body #page-container #main-header
.et_pb_menu_0_tb_header.et_pb_menu .et-menu li.current_page_ancestor > a,
.et_pb_menu_0_tb_header.et_pb_menu li.current_page_ancestor > a {
    text-decoration: solid underline #007a7a 2px;
}

.et_mobile_menu a {
    text-decoration: none
}

/* Spezialfall: "Gruppe finden" soll NICHT wie aktiv aussehen,
   wenn nur ein Kind (z.B. Selbsthilfepreis-CPT) aktiv ist. */
body #page-container #main-header
.et_pb_menu_0_tb_header.et_pb_menu
.et-menu li.menu-item-1512.current-menu-ancestor:not(.current-menu-item) > a {
    color: #3a3a3a !important;
    text-decoration: none !important;
}
/* "Gruppe finden" – trotzdem normales Hover ermöglichen */
body #page-container #main-header 
.et_pb_menu_0_tb_header.et_pb_menu .et-menu li.menu-item-1512.current-menu-ancestor:not(.current-menu-item) > a:hover,
body #page-container #main-header .et_pb_menu_0_tb_header.et_pb_menu .et-menu li.menu-item-1512.current-menu-ancestor:not(.current-menu-item) > a:focus {
    color: #007a7a !important;
    text-decoration-line: underline !important;
    text-decoration-color: #007a7a !important;
    text-decoration-thickness: 2px !important;
    text-underline-offset: 0.15em !important;
}

/*––––––––––––––––––––––-–– Plus-Icon für Menüpunkte mit Kindern ––––––-––––––––––––––––-––*/

/* Icon in allen Ebenen mit Kindern */
body #page-container #main-header
.et_pb_menu_0_tb_header.et_pb_menu .et-menu .menu-item-has-children > a:first-child:after {
    content: "+" !important;
    font-family: 'Source Sans 3', Helvetica, Arial, Lucida, sans-serif !important;
    font-size: 1.25rem;
    position: absolute;
    right: 0;
    top: 0;
    font-weight: 700;
}

/* Im Submenü das + etwas mittig setzen */
body #page-container #main-header
.et_pb_menu_0_tb_header.et_pb_menu .et-menu li li.menu-item-has-children > a:first-child:after {
    top: 11px;
}

/* Sicherheit: Divi-eigenes Caret neutralisieren, falls vorhanden */
body #page-container #main-header
.et_pb_menu_0_tb_header.et_pb_menu
.et-menu .menu-item-has-children > a:first-child.et_pb_menu_link:after {
    font-family: inherit !important;
}

/*––––––––––––––––––––––-–– Menü – Such-Icon ––––––-––––––––––––––––-––*/

/* Abstand und Größe des Icons im Divi-Menü */
.et-menu .menu-item-search-link > a {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    padding: 0 .5rem;
    line-height: 1;
}

/* Icon-Größe (Font Awesome) */
.et-menu .menu-item-search-link i {
    font-size: 1.1rem;
}

/* Hover/Fokus Farbe konsistent */
.et-menu .menu-item-search-link > a:hover i {
    color: #006666;
}
/* Basis: Submenü-Links im globalen Header */
body #page-container #main-header .et_pb_menu_0_tb_header.et_pb_menu .et-menu li li > a {
    color: #222 !important;
    text-decoration: none;
    text-decoration-thickness: auto;
    text-underline-offset: 0.15em;
}

/* Hover / Fokus im Submenü */
body #page-container #main-header .et_pb_menu_0_tb_header.et_pb_menu .et-menu li li > a:hover,
body #page-container #main-header .et_pb_menu_0_tb_header.et_pb_menu .et-menu li li > a:focus {
    color: #007a7a !important;
    text-decoration-line: underline;
    text-decoration-color: #007a7a;
    text-decoration-thickness: 2px;
    text-underline-offset: 0.15em;
}

/* Aktives Element im Submenü (z. B. Projekt- und Pauschalförderung) */
body #page-container #main-header .et_pb_menu_0_tb_header.et_pb_menu .et-menu li li.current-menu-item > a,
body #page-container #main-header .et_pb_menu_0_tb_header.et_pb_menu .et-menu li li.current_page_item > a {
    color: #007a7a !important;
    text-decoration-line: underline;
    text-decoration-color: #007a7a;
    text-decoration-thickness: 2px;
    text-underline-offset: 0.15em;
}

/*––––––––––––––––––––––-–– Barrierefreiheit - Links / Focus ––––––-––––––––––––––––-––*/
/* Fallback: immer sichtbarer Fokus */
:focus {
  outline: 2px solid #005e5e;
  outline-offset: 3px;
  border-radius: 4px;
}

/* Unterdrücke den Ring bei Mausfokus in modernen Browsern */
:focus:not(:focus-visible) {
  outline: none !important;
}

/* Besuchte Links */
#et-main-area a:visited {
  color: #006666;
}

/* Linkfarben & States */
a {
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-thickness: 1.5px;
  transition: color 0.2s ease, text-decoration-thickness 0.2s ease;
}
a.et_pb_button {
	text-decoration:none;
}
.dnxte_feature_list_parent a .dnxte-feature-list-content,
.et-db #et-boc .et-l .dnxte_feature_list_parent a .dnxte-feature-list-content  {
    color: #007a7a !important;
}

.dnxte_feature_list_parent a .dnxte-feature-list-content:hover {
    color: #006666 !important;
}
/* Links, die eine Divi Next Feature-List enthalten → keine Unterstreichung am Icon */
a:has(> .dnxte-feature-list-wrap) {
    text-decoration: none;
}
a:has(> .dnxte-feature-list-wrap) .dnxte-feature-list-content {
    text-decoration-line: underline;
    text-underline-offset: 2px;
    text-decoration-thickness: 1.5px;
    transition: color 0.2s ease, text-decoration-thickness 0.2s ease;
}
a:has(> .dnxte-feature-list-wrap):hover .dnxte-feature-list-content,
a:has(> .dnxte-feature-list-wrap):focus-visible .dnxte-feature-list-content {
    color: #006666;
    text-decoration-thickness: 3px;
}
a:has(> .dnxte-feature-list-wrap) .dnxte-feature-list-icon {
    text-decoration: none;
}

/*––––––––––––––––––––––-–– Barrierefreiheit - Globales "outline: none" neutralisieren ––––––-––––––––––––––––-––*/

a:focus { outline: revert; }

/*––––––––––––––––––––––-–– Barrierefreiheit - Fokus im Slider Revolution auf Weiß setzen ––––––-––––––––––––––––-––*/
html[data-actw-focus-ring] body #page-container .slider-white-focus :focus:not(#dvmd_accessibility_wrapper *),
html[data-actw-focus-ring] body .slider-white-focus :focus:not(#dvmd_accessibility_wrapper *),
html[data-actw-focus-ring] body.et-db #et-boc .et-l .slider-white-focus :focus:not(#dvmd_accessibility_wrapper *):not(.wpforms-container *) {
  outline: 3px solid #fff !important;
  outline-offset: 2px !important;
}
/* Weißer Fokus NUR in Bereichen: Slider + Footer (.footer-color > nav) */
html[data-actw-focus-ring] body #page-container .slider-white-focus :focus:not(#dvmd_accessibility_wrapper *),
html[data-actw-focus-ring] body .slider-white-focus :focus:not(#dvmd_accessibility_wrapper *),
html[data-actw-focus-ring] body.et-db #et-boc .et-l .slider-white-focus :focus:not(#dvmd_accessibility_wrapper *),
html[data-actw-focus-ring] body #page-container .footer-color nav :focus:not(#dvmd_accessibility_wrapper *),
html[data-actw-focus-ring] body .footer-color nav :focus:not(#dvmd_accessibility_wrapper *),
html[data-actw-focus-ring] body.et-db #et-boc .et-l .footer-color nav :focus:not(#dvmd_accessibility_wrapper *) {
  outline: 3px solid #fff !important;
  outline-offset: 2px !important;
}
/* FAQ-Akkordeon – Fokusfarbe grün */
html[data-actw-focus-ring] body #page-container .faq-focus .dipl_question_wrapper[role="button"]:focus:not(#dvmd_accessibility_wrapper *),
html[data-actw-focus-ring] body .faq-focus .dipl_question_wrapper[role="button"]:focus:not(#dvmd_accessibility_wrapper *),
html[data-actw-focus-ring] body.et-db #et-boc .et-l .faq-focus .dipl_question_wrapper[role="button"]:focus:not(#dvmd_accessibility_wrapper *) {
  outline: 3px solid #007A7A !important;
  outline-offset: -2px !important;
}
/* ACTW-Fokus innerhalb von WPForms-Feldern deaktivieren */
html[data-actw-focus-ring] body #page-container .wpforms-container *:focus {
    outline: none !important;
    box-shadow: none !important;
}
/* WPForms: Fokus für "normale" Felder (Text, E-Mail, Tel, etc.) */
#page-container .wpforms-container input[type="text"]:focus,
#page-container .wpforms-container input[type="email"]:focus,
#page-container .wpforms-container input[type="tel"]:focus,
#page-container .wpforms-container input[type="number"]:focus,
#page-container .wpforms-container input[type="date"]:focus,
#page-container .wpforms-container select:focus,
#page-container .wpforms-container textarea:focus {
    outline: none !important;
    box-shadow: 0 0 0 3px var(--dvmd_actw_focus_ring_color) !important;
    border-radius: 4px;
}
/* WPForms: Standard-Fokus auf Pseudo-Element nicht abschießen */
.et-db #et-boc .et-l .et_pb_module div.wpforms-container-full input[type=checkbox]:focus::before,
.et-db #et-boc .et-l .et_pb_module div.wpforms-container-full input[type=radio]:focus::before {
    box-shadow: none !important;
}

/* Stattdessen: eigener Fokus-Ring für Radio/Checkbox auf ::before */
#page-container .wpforms-container input[type="radio"]:focus::before,
#page-container .wpforms-container input[type="checkbox"]:focus::before {
    box-shadow: 0 0 0 3px var(--dvmd_actw_focus_ring_color) !important;
    border-radius: 4px;
}

/* Sicherheitshalber: kein zusätzlicher Schatten direkt auf dem Input selbst */
#page-container .wpforms-container input[type="radio"]:focus,
#page-container .wpforms-container input[type="checkbox"]:focus {
    outline: none !important;
    box-shadow: none !important;
}



/*––––––––––––––––––––––-–– Menü - Barrierefreiheit - Focus auf Logo ermöglichen  ––––––-––––––––––––––––-––*/
/* 2) Logo-Link explizit sichtbar machen (normal + sticky Header) */
/* Fokus-Styling nur ergänzen – dvmd-Outline bleibt bestehen */
html[data-actw-focus-ring] body #page-container #main-header .et_pb_menu__logo a:focus,
html[data-actw-focus-ring] body #page-container #main-header .et_pb_menu__logo a:focus-visible,
html[data-actw-focus-ring] body #page-container #main-header.et-fixed-header .et_pb_menu__logo a:focus,
html[data-actw-focus-ring] body #page-container #main-header.et-fixed-header .et_pb_menu__logo a:focus-visible {
    box-shadow: 0 0 0 2px #005e5e;
    border-radius: 4px;
    outline-offset: 2px;
}


/* 3) Sicherheit: Logo-Link als "Kasten", damit der Ring Platz hat */
.et_pb_menu__logo a {
  display: inline-block;
  padding: 4px;
}

/* 4) Outline nicht abschneiden lassen */
.et_pb_menu__logo,
.et-fixed-header .et_pb_menu__logo {
  overflow: visible;                 /* falls vorher hidden war */
}

/* 5) Fallback, falls irgendein Container weiter oben clippt */
.et_pb_menu__logo a:focus,
.et_pb_menu__logo a:focus-visible {
  box-shadow: 0 0 0 2px #005e5e;
}
/* Logo-Fokus darf in keinem Container oben abgeschnitten werden */
body #page-container #main-header,
body #page-container #main-header.et-fixed-header,
body #page-container #main-header .et_pb_section_0_tb_header,
body #page-container #main-header .et_pb_menu_0_tb_header.et_pb_menu,
body #page-container #main-header .et_pb_menu_0_tb_header .et_pb_menu_inner_container,
body #page-container #main-header .et_pb_menu_0_tb_header .et_pb_menu__logo-wrap,
body #page-container #main-header .et_pb_menu_0_tb_header .et_pb_menu__logo {
    overflow: visible !important;
}


/*––––––––––––––––––––––-–– Barrierefreiheit - Yoast Breadcrumbs anpassen ––––––-––––––––––––––––-––*/
nav[aria-label="Breadcrumb"] .breadcrumb{
  list-style: none;
  padding-left: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  font-family: "Inter", system-ui, Arial, sans-serif;
  font-size: 1rem;  /* 14px; bei Bedarf 1rem */
  line-height: 1.6;
}
nav[aria-label="Breadcrumb"] .breadcrumb > li::marker{ content: ""; } /* OL-Zahlen aus */
nav[aria-label="Breadcrumb"] .breadcrumb > li + li::before{
  content: "›";
  margin-right: .5rem;
  color: #575757;
}

nav[aria-label="Breadcrumb"] .breadcrumb a{
  color: #007a7a;
  text-decoration: none;
  font-weight: 500;
}
nav[aria-label="Breadcrumb"] .breadcrumb a:hover,
nav[aria-label="Breadcrumb"] .breadcrumb a:focus-visible{
  text-decoration: underline;
  outline: 2px solid #005e5e;
  outline-offset: 3px;
  border-radius: 3px;
}
nav[aria-label="Breadcrumb"] .breadcrumb li[aria-current="page"]{
  font-weight: 600;
  color: #575757;
}
nav[aria-label="Breadcrumb"] ol.breadcrumb > li:only-child::before {
  content: none;          /* trenner vor einzigem Eintrag ausblenden */
}

/*––––––––––––––––––––––-–– Barrierefreiheit - Zeilenlänge beschränken ––––––-––––––––––––––––-––*/
.et_pb_text_inner p,
.dnxte-feature-list-content {
    max-width: 70ch;
}

/*––––––––––––––––––––––-–– Individuelle Gestaltungselemente ––––––-––––––––––––––––-––*/
.graue-box h3:last-child {
    padding-bottom: 0;
}
blockquote {
    margin: 20px 0 30px;
    border-left: 5px solid;
    padding: 20px 20px 20px 30px;
    background: #f9f9f9;
}
.graue-box blockquote {
    background: #fff;
}
blockquote:before {
    color: #ccc;
    content: "\22";
    font-size: 4rem;
    line-height: 0.1em;
    vertical-align: -0.4em;
    font-family: 'FontAwesome';
    margin-right: 0.25em;
}
.et-search-form, blockquote {
    border-color: #007a7a;
}
blockquote p {
    padding-bottom: 1em;
}
.dipl_faq_page_schema .dipl_question_wrapper[role="button"] {
    display: flex;
    align-items: center;      /* vertikal zentriert */
    padding: 0.75rem 0;       /* wie gehabt */
}
.dipl_faq_page_schema .dipl_question_wrapper[role="button"] h4 {
    margin: 0;
    flex: 1;
}
.dipl_faq_page_schema .dipl_question_wrapper[role="button"]::after {
    font-family: 'FontAwesome' !important;
    font-weight: 900; /* Solid */
    content: "\f067"; /* fa-plus */
    display: inline-block;
    margin-left: 0.5rem;
    float: right;
    line-height: 1 !important;
	color:#007a7a !important;
}
.dipl_faq_page_schema .dipl_question_wrapper[role="button"][aria-expanded="true"]::after {
    content: "\f068"; /* fa-minus */
}
/*––––––––––––––––––––––-–– Anpassungen Row-Verhalten  ––––––-––––––––––––––––-––*/
.graue-spalten .et_pb_column {
    background-color: #f0f0f0;
    padding: 20px 15px;
}
.graue-spalten.secondcol-white .et_pb_column:nth-of-type(2) {
    background-color: #ffffff;
}
/* Row, die ein Textmodul mit der Klasse headline-row-text enthält */
.et_pb_row:has(.headline-row) {
    padding-bottom: 0 !important;
}

/* Die direkt folgende Row – ebenfalls ohne graue-spalten */
.et_pb_row:has(.headline-row) + .et_pb_row {
    padding-top: 0 !important;
}


/*––––––––––––––––––––––-–– Anpassung Blurb Modul  ––––––-––––––––––––––––-––*/
/* Gleich hohe graue Boxen in der Mentor-Row */
@media (min-width: 981px) {

  /* Row als Flex-Container, Divi kümmert sich weiter um die Breite */
  .dcig-mentor-row {
    display: flex;
    flex-wrap: nowrap;      /* 3 Spalten in einer Reihe lassen */
    align-items: stretch;   /* Spalten gleich hoch */
  }

  /* Spalten vertikal als Flex-Container */
  .dcig-mentor-row .et_pb_column {
    display: flex;
    flex-direction: column;
    /* float lassen wir in Ruhe, Flex ignoriert das de facto */
  }

  /* Bild verbraucht nur benötigte Höhe */
  .dcig-mentor-row .et_pb_image {
    flex: 0 0 auto;
  }

  /* graue Box füllt den Rest der Spaltenhöhe */
  .dcig-mentor-row .graue-box {
    flex: 1 1 auto;
    display: flex;
  }

  .dcig-mentor-row .graue-box .et_pb_text_inner {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
  }
}



/*––––––––––––––––––––––-–– Anpassung Projektförderer  ––––––-––––––––––––––––-––*/
/* Grid: 2 Spalten auf Desktop, 1 Spalte mobil */
.dcig-projekte-grid {
    display: grid;
    gap: 2rem;
	align-items: stretch;
}

@media (max-width: 767px) {
    .dcig-projekte-grid {
        grid-template-columns: 1fr;
    }
}

@media (min-width: 768px) {
    .dcig-projekte-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
	.dcig-archiv-table th.align-right,
	.dcig-archiv-table td.align-right {
		text-align: right !important;
	}
}

/* Karten-Layout */
.dcig-projekt-item {
    height: 100%;
}

.dcig-projekt-card {
    background: #f5f5f5; /* ggf. CI anpassen */
    padding: 1.5rem;
    border-radius: 8px;
    height: 100%;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/* Logo über komplette Breite */
.dcig-projekt-traeger-logo {
    margin-bottom: 0.75rem;
}
.dcig-projekt-traeger-logo img {
    width: 100%;
    height: auto;
    display: block;
}

/* Träger-H3: Standardgröße, fett, Farbe #007a7a */
h3.dcig-projekt-traeger-name,
.dcig-projekt-card h3.dcig-projekt-traeger-name {
    font-weight: 700 !important;
    color: #007a7a !important;
}

/* Gemeinsame Block-Abstände */
.dcig-projekt-projekt-block,
.dcig-projekt-datum-block,
.dcig-projekt-foerdersumme-block {
    margin-bottom: 0.5rem;
}

/* Labels fett, eigene Zeile */
.dcig-projekt-label,
.dcig-projekt-datum-label,
.dcig-projekt-foerdersumme-label {
    font-weight: 600;
    margin-bottom: 0.1rem;
}

/* Inhalte normal darunter */
.dcig-projekt-titelzeile,
.dcig-projekt-datum,
.dcig-projekt-foerdersumme-wert {
    font-weight: 400;
}

/* Abstand der Jahresblöcke */
.dcig-archiv-jahr-block {
    margin-top: 2rem;
    margin-bottom: 2rem;
}



/* Jahresblock-Abstände */
.dcig-archiv-jahr-block {
    margin-top: 2rem;
    margin-bottom: 2rem;
}

.dcig-archiv-jahr {
    margin: 0 0 0.75rem 0;
}

/* Wrapper für horizontale Größe (falls Tabelle breiter wird) */
.dcig-archiv-table-wrapper {
    width: 100%;
}

/* Basistabelle auf Desktop */
.dcig-archiv-table {
    width: 100%;
    border-collapse: collapse;
}

.dcig-archiv-table th,
.dcig-archiv-table td {
    padding: 0.5rem 0.75rem;
    text-align: left;
    vertical-align: top;
    border-bottom: 1px solid #ddd;
}
.dcig-archiv-table th {
    font-weight: 600;
    background: #f5f5f5;
}

.dcig-archiv-foerdersumme {
    text-align: right;
}

/* ---------- Mobile: Tabelle als Karten darstellen ---------- */
@media (max-width: 767px) {

    /* Tabellen-Header ausblenden */
    .dcig-archiv-table thead {
        display: none;
    }

    .dcig-archiv-table {
        border-collapse: separate;
        border-spacing: 0;
    }

    /* Jede Zeile wird zur "Kachel" */
    .dcig-archiv-table tbody tr.dcig-archiv-row {
        display: block;
        border: 1px solid #ddd;
        border-radius: 8px;
        padding: 0.75rem 0.75rem 0.5rem;
        margin-bottom: 0.75rem;
    }

    /* Zellen untereinander */
    .dcig-archiv-table td.dcig-archiv-col {
        display: block;
        width: 100%;
        border: none;
        padding: 0.25rem 0;
        text-align: left;
    }

    /* Label aus data-label vor den Wert setzen */
    .dcig-archiv-table td.dcig-archiv-col::before {
        content: attr(data-label) ": ";
        font-weight: 600;
        display: inline;
        margin-right: 0.25rem;
    }

    /* Fördersumme nicht mehr rechtsbündig */
    .dcig-archiv-foerdersumme {
        text-align: left;
    }
}
.dcig-archiv-filter {
    margin-bottom: 1.5rem;
    display: flex;
    justify-content: flex-end;  /* Filter nach rechts */
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

/* Label etwas dezenter */
.dcig-archiv-filter label {
    font-weight: 500;
    font-size: 0.95rem;
    color: #555;
}
/* Einheitliche Spaltenbreiten für alle Archiv-Tabellen auf Desktop */
@media (min-width: 768px) {
    .dcig-archiv-table {
        table-layout: fixed;
    }

    /* 1. Spalte: Projekttitel */
    .dcig-archiv-table th:nth-child(1),
    .dcig-archiv-table td:nth-child(1) {
        width: 50%;
    }

    /* 2. Spalte: Förderer */
    .dcig-archiv-table th:nth-child(2),
    .dcig-archiv-table td:nth-child(2) {
        width: 30%;
    }

    /* 3. Spalte: Fördersumme */
    .dcig-archiv-table th:nth-child(3),
    .dcig-archiv-table td:nth-child(3) {
        width: 20%;
    }

    /* Falls sehr lange Projekttitel vorkommen → umbrechen */
    .dcig-archiv-table td {
        word-wrap: break-word;
        overflow-wrap: break-word;
    }
}

@media (max-width: 767px) {
	.et_pb_row.narrow  .et_pb_column.et_pb_column_1_4,
	.et_pb_row.narrow  .et_pb_column.et_pb_column_1_5,
	.et_pb_row.narrow  .et_pb_column.et_pb_column_1_6 {
		margin: 0 !important;
	}
}

/* ---------- Anpassungen Shortcode [dcig_projekte_letzte12_nach_foerderer] ---------- */
.dcig-projekt-projekt-block {
    margin-top: 0.5rem;
}

/* Label "Gefördertes Projekt(e)" */
.dcig-projekt-label {
    font-weight: 600;
    margin-bottom: 0.35rem;
}

/* Container für alle Projektzeilen */
.dcig-projekt-zeilen {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/* Einzelne Zeile: Titel links, Betrag rechts */
.dcig-projekt-zeile {
    display: flex;
    justify-content: space-between;
    gap: 0.75rem;
}

/* Titel bekommt den meisten Platz und darf umbrechen */
.dcig-projekt-zeile-titel {
    flex: 1 1 auto;
}

/* Betrag fix rechts, nicht zu breit */
.dcig-projekt-zeile-betrag {
    flex: 0 0 auto;
    white-space: nowrap;
    font-weight: 500;
}

/* Auf sehr schmalen Screens: Titel & Betrag untereinander, damit nichts gequetscht */
@media (max-width: 480px) {
    .dcig-projekt-zeile {
        flex-direction: column;
        align-items: flex-start;
    }

    .dcig-projekt-zeile-betrag {
        white-space: normal;
    }
}
@media (max-width: 767px) {
    .dcig-archiv-filter {
        max-width: 100%;
        width: 100%;
        box-sizing: border-box;
    }

    .dcig-archiv-filter select {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }
}

.dcig-projekt-traeger-logo {
    background: #fff;       /* weißer Hintergrund */
    padding: 0.75rem;       /* etwas Luft um das Logo */
    border-radius: 6px;     /* optional – wirkt ruhiger */
}

.dcig-projekt-traeger-logo img {
    display: block;
    width: 100%;
    height: auto;
}


/* Listen im Inhaltsbereich (#main-content):
   Standard-Bullets ausblenden */
#main-content ul {
    list-style: none;
    margin-left: 0;
    padding-left: 0;
}

/* Listeneinträge bekommen Platz für das SVG */
#main-content ul li {
    position: relative;
    padding-left: 1.75rem;
	line-height: 1.7em;
    padding-bottom: 1rem;
	max-width:70ch;
}

/* SVG-Pfeil als eigener Marker */
#main-content ul li::before {
    content: "";
    position: absolute;
    left: 0;
    width: 1.5rem;
    height: 1.5rem;
    background-image: url('/wp-content/uploads/2025/11/dcig-pfeil.svg');
    background-repeat: no-repeat;
    background-size: contain;
}
/* In WPForms KEINE Pfeil-Deko vor Listen-Elementen */
#main-content .wpforms-container .wpforms-field-radio ul li::before,
#main-content .wpforms-container .wpforms-field-checkbox ul li::before {
    content: none !important;
    background: none !important;
    width: 0;
    height: 0;
    position: static;
}

#main-content ul li > ul {
    padding-top: 1rem;
}
#main-content ul li > ul li:last-child {
    padding-bottom: 0;
}
/* Section in der sh-preis-row oben bündig */
.et_pb_row.sh-preis-row 
  > .et_pb_column 
  > .et_pb_module.et_pb_post_content 
  .et_pb_section.et_pb_section_0.et_section_regular {
    padding-top: 0 !important;
}

/* Erste Row in dieser Section ebenfalls ohne padding-top */
.et_pb_row.sh-preis-row 
  > .et_pb_column 
  > .et_pb_module.et_pb_post_content 
  .et_pb_section.et_pb_section_0.et_section_regular 
  > .et_pb_row.et_pb_row_0 {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/*––––––––––––––––––––––-–– Mitglied werden - WPForms / Reginalverband Auswahl ––––––-––––––––––––––––-––*/
/* alle gesteuerten Zeilen standardmäßig ausblenden */
.rv-ziel {
    display: none;
}

/* sichtbare Zeile */
.rv-ziel.is-visible {
    display: block;
}
h2:has(+ .rv-auswahl),
.et_pb_text_inner h2:has(+ style#wpforms-css-vars-2814) {
    padding-bottom: 0.275rem;
}
.et-db #et-boc .et-l .et_pb_module div.wpforms-container-full:not(:empty) {
    margin-top: 0;
}
.et-db #et-boc .et-l .et_pb_module .wpforms-container .wpforms-field,
.et-db #et-boc .et-l .et_pb_module .wpforms-form .wpforms-field-container .wpforms-field.wpforms-field-content {
    padding-top: 0;
}
.wpforms-page-indicator.none {
    display: none;
}
.rv-auswahl legend,
.et-db #et-boc .et-l .et_pb_module .wpforms-field.wpforms-field-content .wpforms-field-row h3,
.et-db #et-boc .et-l .et_pb_module .wpforms-container .wpforms-form legend:not(#wpforms-2814-field_38-container legend) {
	font-family: 'Source Sans 3',Helvetica,Arial,sans-serif;
	color: #3a3a3a!important;
    font-size: 1.625rem !important;
    font-weight: 600;
    line-height: 1.4em;
	padding-bottom:1.75rem;
}

.et-db #et-boc .et-l .et_pb_module div.wpforms-container-full .wpforms-field-description {
    font-size: 1rem;
}
.et-db #et-boc .et-l .et_pb_module div.wpforms-container-full .wpforms-field.wpforms-field-radio ul li input+label {
    font-size: 1.125rem;
}
@media (max-width: 767px) {
    .rv-auswahl legend,
	.et-db #et-boc .et-l .et_pb_module .wpforms-field.wpforms-field-content .wpforms-field-row h3,
	.et-db #et-boc .et-l .et_pb_module .wpforms-container .wpforms-form legend	{
		font-size: 1.5rem;
	}
}
@media (max-width: 480px) {
    .rv-auswahl legend,
	.et-db #et-boc .et-l .et_pb_module .wpforms-field.wpforms-field-content .wpforms-field-row h3,
	.et-db #et-boc .et-l .et_pb_module .wpforms-container .wpforms-form legend	{
		font-size: 1.25rem;
	}
}
/* Für dieses Formular: feste WPForms-Button-Höhe abschalten */
.gform-theme--framework {
  /* Labels */
  --gf-ctrl-label-font-size-primary: 1.125rem;
  --gf-ctrl-label-line-height-primary: 1.4;

  /* Inputs (falls du auch die Feldtexte willst) */
  --gf-ctrl-input-font-size-primary: 1.125rem;
  --gf-ctrl-input-line-height-primary: 1.4;

  /* Optional: Help/Descriptions (wenn vorhanden) */
  --gf-ctrl-desc-font-size-primary: 1rem;
  --gf-ctrl-desc-line-height-primary: 1.4;
}
.gform_wrapper.gform-theme--framework{

  /* Label primary */
  --gf-ctrl-label-font-size-primary: 1.125rem;
  --gf-ctrl-label-line-height-primary: 1.4;
  --gf-ctrl-label-font-weight-primary: 700;
  --gf-ctrl-label-color-primary: #3a3a3a;

  /* Label secondary (inline labels / choices) */
  --gf-ctrl-label-font-size-secondary: 1.125rem;
  --gf-ctrl-label-line-height-secondary: 1.4;
  --gf-ctrl-label-color-secondary: #575757;

  /* Inputs */
  --gf-ctrl-font-size: 1.125rem;
  --gf-ctrl-line-height: 1.4;
  --gf-ctrl-color: #575757;

  /* Choice (Radio/Checkbox) */
  --gf-ctrl-choice-check-color: #007a7a;

  /* Fokus */
  --gf-ctrl-outline-color-focus: #005e5e;
  --gf-ctrl-border-color-focus: #005e5e;
  --gf-ctrl-outline-width-focus: 2px;
  --gf-ctrl-outline-offset: 3px;

  /* Border normal + hover (heller!) */
  --gf-ctrl-border-color: rgba(0,0,0,.25);
  --gf-ctrl-border-color-hover: rgba(0,0,0,.40);

  /* Shadow aus (falls GF es nutzt) */
  --gf-ctrl-shadow: none;
  --gf-ctrl-shadow-focus: none;
}
/* Normaler Rahmen (ohne Fokus) */
.gform_wrapper.gform-theme--framework select:not(:focus):not(:focus-visible),
.gform_wrapper.gform-theme--framework textarea:not(:focus):not(:focus-visible),
.gform_wrapper.gform-theme--framework .gform-theme-field-control:not(:focus):not(:focus-visible),
.gform_wrapper.gform-theme--framework .chosen-single:not(:focus):not(:focus-visible),
.gform_wrapper.gform-theme--framework .chosen-container-multi:not(:focus):not(:focus-visible),
.gform_wrapper.gform-theme--framework .gfield input:not(:focus):not(:focus-visible){
  border-color: rgba(0,0,0,.25) !important;
  border-inline-color: rgba(0,0,0,.25) !important;
  border-block-color: rgba(0,0,0,.25) !important;
}

/* Hover-Rahmen (ohne Fokus) */
.gform_wrapper.gform-theme--framework select:not(:focus):not(:focus-visible):hover,
.gform_wrapper.gform-theme--framework textarea:not(:focus):not(:focus-visible):hover,
.gform_wrapper.gform-theme--framework .gform-theme-field-control:not(:focus):not(:focus-visible):hover,
.gform_wrapper.gform-theme--framework .chosen-single:not(:focus):not(:focus-visible):hover,
.gform_wrapper.gform-theme--framework .chosen-container-multi:not(:focus):not(:focus-visible):hover,
.gform_wrapper.gform-theme--framework .gfield input:not(:focus):not(:focus-visible):hover{
  border-color: rgba(0,0,0,.40) !important;
  border-inline-color: rgba(0,0,0,.40) !important;
  border-block-color: rgba(0,0,0,.40) !important;
}

body .gform_wrapper.gform-theme--framework .gfield_description,
body .gform_wrapper.gform-theme--framework .gfield_consent_description{
  font-size: 1rem;
  color: #575757;
  line-height: 1.4;
}
body .gform_wrapper.gform-theme--framework .gfield_required_text {
  font-size: 1rem;
  line-height: 1.3;
}
.gform_wrapper.gform-theme--framework .gfield_required_text {
  font-size: 1rem;
  line-height: 1.3;
  color: #007a7a;
}
.gfield--type-radio legend{
	font-size:1.25rem;
	padding-bottom:1.75rem
}
/* Radio-Input als Positionierungs-Container */
.gform_wrapper.gform-theme--framework input[type="radio"].gfield-choice-input{
  position: relative;
}

/* Punkt wirklich mittig platzieren */
.gform_wrapper.gform-theme--framework input[type="radio"].gfield-choice-input::before{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: 0;
  display: block;
}
/* Select vertikal sauber zentrieren */
body .gform_wrapper.gform-theme--framework select.gfield_select{
  block-size: auto;
  height: auto;
  line-height: 1.4;
  padding-block: 0.36rem;
}

#wpforms-2814 {
    --wpforms-button-size-height: auto;
}
#wpforms-2814 .wpforms-page-button,
#wpforms-2814 button {
    min-height: 0;
}
button.wpforms-page-button.wpforms-page-next,
#wpforms-2814 .mitgliedsantrag-button,
.mitgliedsantrag-button,
.gform-theme-button  {
    display: inline-block;
    box-sizing: border-box;
    padding: 0.75rem 1.75rem !important;
    border-radius: 999px !important;
    border: 2px solid #007a7a !important;
    background-color: #fff !important;
    color: #007a7a !important;
    text-decoration: none !important;
    line-height: 1.4 !important;
    font-family: 'Inter',Helvetica,Arial,Lucida,sans-serif !important;
    font-weight: 500 !important;
    font-size: 1.125rem !important;
    height: auto !important;
    width: auto !important;
	letter-spacing:0;
}
button.wpforms-page-button.wpforms-page-next:hover,
.mitgliedsantrag-button:hover,
.gform-theme-button:hover {
    background-color: #007a7a !important;
	border: 2px solid #007a7a !important;
    color: #fff  !important;
}
body #gform_page_1_1 .gform_page_footer {
    margin-top:0 !important;
}
.gf_progressbar_wrapper {
	display:none;
}
/* Button-Styling nur im betreffenden Feld des Formulars */
.et-db #et-boc .et-l .et_pb_module div.wpforms-container-full button[type=submit],
body .gform_wrapper.gform-theme--framework .gform_footer input[type="submit"],
body .gform_wrapper.gform-theme--framework .gform_page_footer input[type="submit"],
body .gform_wrapper.gform-theme--framework button.gform_button {
    display: inline-block;
    padding: 0.625rem 1.438rem !important;
    border-radius: 999px !important;
    border: 0 !important;
    background-color: #007a7a !important;
    color: #ffffff !important;
    font-weight: 600;
    text-decoration: none !important;
    line-height: 1.7em!important;
    font-family: 'Inter',Helvetica,Arial,Lucida,sans-serif!important;
    font-weight: 500 !important;
	font-size: 1.125rem !important;
	height: auto !important;
    width: auto !important;
}

/* Hover */
.et-db #et-boc .et-l .et_pb_module div.wpforms-container-full button[type=submit]:hover,
body .gform_wrapper.gform-theme--framework .gform_footer input[type="submit"]:hover,
body .gform_wrapper.gform-theme--framework .gform_page_footer input[type="submit"]:hover,
body .gform_wrapper.gform-theme--framework button.gform_button:hover{
  background-color: #006666 !important;
  text-decoration: none !important;
}

/* Active (Mousedown) */
.et-db #et-boc .et-l .et_pb_module div.wpforms-container-full button[type=submit]:active,
body .gform_wrapper.gform-theme--framework .gform_footer input[type="submit"]:active,
body .gform_wrapper.gform-theme--framework .gform_page_footer input[type="submit"]:active,
body .gform_wrapper.gform-theme--framework button.gform_button:active{
  transform: translateY(1px);
}

/*div#wpforms-2814-field_29-container p {
    background-color: #f0f0f0 !important;
    padding: 20px 15px !important;
    width: fit-content;
}*/
hr {
    border-top-color: #d3d3d3 !important;
    border-top-style: dashed !important;
    border-top-width: 4px !important;
    opacity: 1;
    margin: 1.25rem 0 2.5rem !important;
}

.et-db #et-boc .et-l .et_pb_module div.wpforms-container-full .wpforms-field-label, 
.et-db #et-boc .et-l .et_pb_module .wp-core-ui div.wpforms-container-full .wpforms-field-label,
.et-db #et-boc .et-l .et_pb_module div.wpforms-container-full .wpforms-field.wpforms-field-checkbox ul li input+label,
.et-db #et-boc .et-l .et_pb_module div.wpforms-container-full .wpforms-field-description.wpforms-disclaimer-description, 
.et-db #et-boc .et-l .et_pb_module .wp-core-ui div.wpforms-container-full .wpforms-field-description.wpforms-disclaimer-description,
 .et-db #et-boc .et-l .et_pb_module div.wpforms-container-full .wpforms-field.wpforms-field-gdpr-checkbox ul li input+label {
    font-size: 1.125rem !important;
    line-height: 1.7em;
}
.et-db #et-boc .et-l .et_pb_module .wpforms-container .wpforms-field-description.wpforms-disclaimer-description, 
.et-db #et-boc .et-l .et_pb_module .wp-core-ui div.wpforms-container .wpforms-field-description.wpforms-disclaimer-description {
	height:auto;
}
.et-db #et-boc .et-l .et_pb_module div.wpforms-container-full .wpforms-field-description.wpforms-disclaimer-description p:last-child {
    margin-bottom: 0;
}
.field-padding-top {
    padding-top: 2em !important;
}
/* 1) Outer-Rahmen vom Divi-Suchmodul entfernen */
.page-id-3544 .et_pb_search,
.error404 .et_pb_search {
  border: 0 !important;
  border-radius: 0 !important;
  overflow: visible !important;
}

/* 2) Layout: Label oben, Input+Button nebeneinander */
.page-id-3544 .et_pb_search .et_pb_searchform > div,
.error404 .et_pb_search .et_pb_searchform > div{
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-areas:
    "label label"
    "input button";
  gap: 0.5rem;
  align-items: center;
}

/* Label sichtbar */
.page-id-3544 .et_pb_search .et_pb_searchform label.screen-reader-text,
.error404 .et_pb_search .et_pb_searchform label.screen-reader-text {
    grid-area: label;
    display: block !important;
    position: static !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    overflow: visible !important;
    clip: auto !important;
    clip-path: none !important;
    white-space: normal !important;
    font-weight: 700 !important;
    color: #3a3a3a;
    font-size: 1.125rem;
}

/* Input / Button platzieren */
.page-id-3544 .et_pb_search .et_pb_searchform input.et_pb_s,
.error404 .et_pb_search .et_pb_searchform input.et_pb_s{
  grid-area: input;
  width: 100%;
  margin: 0 !important;
}
.page-id-3544 .et_pb_search .et_pb_searchform .et_pb_searchsubmit,
.error404 .et_pb_search .et_pb_searchform .et_pb_searchsubmit{
  grid-area: button;
  margin: 0 !important;
  white-space: nowrap;
}

/* 3) Rahmen um Zeile 2 (Input+Button) – modern (Chrome/Safari/Edge) */
.page-id-3544 .et_pb_search .et_pb_searchform > div:has(input.et_pb_s):has(.et_pb_searchsubmit){
  /*padding: 0.5rem;
  border: 1px solid rgba(0,0,0,.25);
  border-radius: 3px;*/
}
/* Fallback: Rahmen auf Input und Button */
.page-id-3544 .et_pb_search .et_pb_searchform input.et_pb_s,
.error404 .et_pb_search .et_pb_searchform input.et_pb_s,
.page-id-3544 .et_pb_search .et_pb_searchform .et_pb_searchsubmit,
.error404 .et_pb_search .et_pb_searchform .et_pb_searchsubmit{
  border: 1px solid rgba(0,0,0,.25);
}
.page-id-3544 .et_pb_search .et_pb_searchform input.et_pb_s,
.error404 .et_pb_search .et_pb_searchform input.et_pb_s{
  border-radius: 3px;
}
.page-id-3544 .et_pb_search .et_pb_searchform .et_pb_searchsubmit,
.error404 .et_pb_search .et_pb_searchform .et_pb_searchsubmit{
  border-radius: 9999px;
    border-width: 2px!important;
    border-color: #007A7A;
    font-family: 'Inter',Helvetica,Arial,Lucida,sans-serif!important;
    font-weight: 500!important;
    background-color: #ffffff;
	padding: 0.625rem 2rem;
}
.page-id-3544 .et_pb_search .et_pb_searchform .et_pb_searchsubmit:hover,
.error404 .et_pb_search .et_pb_searchform .et_pb_searchsubmit:hover {
    color: #ffffff!important;
    border-color: #006666!important;
    background-image: initial;
    background-color: #006666;
}
/* =========================
   TM Search Results – Barrierefreiheit - Suchergebnisse)
   ========================= */

/* Ordered list: Marker vor den Link (Standard), sauber ausgerichtet */
.tm-sr-list { 
  list-style: decimal; 
  margin: 1rem 0 0 1.5rem; 
  padding: 0; 
}
.tm-sr-item { 
  margin: 0 0 .75rem 0; 
}
.tm-sr-link { 
  /*text-decoration: underline; 
  text-underline-offset: 2px; */
}
.tm-sr-date { 
  /*margin-left: .5rem;*/
  font-size: .95em; 
}
.tm-sr-excerpt { 
  margin-top: .25rem; 
}

/* Ergebniszählung oben */
.tm-sr-count { 
  margin: 0 0 .5rem 0; 
  font-weight: 600; 
}

/* =========================
   TM Search Results – Pagination (DCIG)
   ========================= */

.tm-sr-pagination{
  margin-top: 1.25rem;
}

.tm-sr-pagination-list{
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}

/* keine Divi-Icons / Marker in Pagination */
.tm-sr-pagination-list > li::before,
.tm-sr-pagination-list > li::marker,
.tm-sr-pagination-list a::before,
.tm-sr-pagination-list a::after{
  content: none !important;
}

/* Basis: alle Elemente klickbar & sauber */
.tm-sr-pagination-item a,
.tm-sr-pagination-item span{
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 44px;
  min-width: 44px;

  text-decoration: none;
  line-height: 1;

  background-color: #ffffff;
  border: 1px solid rgba(0,0,0,.25);
}

/* Zahlen: eckig mit Abrundung */
.tm-sr-pagination-item a.page-numbers,
.tm-sr-pagination-item span.page-numbers{
  border-radius: 10px;
  padding: .35rem .75rem;
}

/* Aktuelle Seite */
.tm-sr-pagination-item span.current,
.tm-sr-pagination-item a[aria-current="page"]{
  border-width: 2px;
  border-color: #007A7A;
}

/* Tastatur-Fokus */
.tm-sr-pagination-item a:focus-visible{
  outline: 3px solid #007A7A;
  outline-offset: 2px;
}

/* ===== Prev/Next wie DCIG Button ===== */
.tm-sr-pagination-item a.prev,
.tm-sr-pagination-item a.next{
  color: #007A7A !important;
  border-width: 2px !important;
  border-color: #007A7A;
  border-radius: 9999px;

  font-size: 1.13rem;
  font-family: 'Inter', Helvetica, Arial, Lucida, sans-serif !important;
  font-weight: 500 !important;

  padding: 0.625rem 2rem;
}

/* Hover für Prev/Next */
.tm-sr-pagination-item a.prev:hover,
.tm-sr-pagination-item a.next:hover{
  color: #ffffff !important;
  border-color: #006666 !important;
  background-image: initial;
  background-color: #006666;
}

/* Hover für Zahlen: dezenter (ohne Farbwechsel, nur Border) */
.tm-sr-pagination-item a.page-numbers:hover{
  border-color: #007A7A;
}
.tm-sr-type {
    display: inline-block;
    /* margin-left: .35rem; */
    /* padding: .15rem .5rem; */
    /* border: 1px solid rgba(0,0,0,.25); */
    /* border-radius: 10px; */
    /* white-space: nowrap; */
}

/* ===========================================================================
   Anpassungen für Theme-Builder Inhalsseiten wie 404er oder Suchergebnisse
   =========================================================================== */

:is(.search, .search-results, .search-no-results, .error404) .et_pb_text_inner, 
:is(.search, .search-results, .search-no-results, .error404) .et_pb_post_content, 
:is(.search, .search-results, .search-no-results, .error404) .entry-content p {
    line-height: 1.7;
    margin: 0 0 0.875rem;
}

@media only screen and (min-width: 1350px) {
    :is(.search, .search-results, .search-no-results, .error404) .et_pb_section:not(.et_pb_fullwidth_section):not(footer .et_pb_section) {
		padding: 27px 0 !important;
	}
    :is(.search, .search-results, .search-no-results, .error404) .et_pb_row:not(footer .et_pb_row) {
        padding: 27px 0 !important;
    }
}
@media only screen and (min-width: 981px) {
    :is(.search, .search-results, .search-no-results, .error404) .et_pb_section {
		padding: 2% 0;
	}
}
/*––––––––––––––––––––––-–– Footer ––––––-––––––––––––––––-––*/

footer .et_pb_row.et_pb_equal_columns, footer .et_pb_row_inner.et_pb_equal_columns, footer .et_pb_section.et_pb_equal_columns>.et_pb_row {
    align-items: flex-end;
}
/* Row mit 3 Social-Icons nebeneinander */
.social-icons .et_pb_column {
  display: flex;
  align-items: center;
  gap: 20px;            /* Abstand zwischen den Icons */
  flex-wrap: wrap;      /* falls wenig Platz ist, umbrechen */
}

/* Standard-Margins der Divi-Image-Module entfernen */
.social-icons .et_pb_image {
  margin: 0 !important;
}

/* Optionale Größenbegrenzung der SVG/PNG-Icons */
.social-icons .et_pb_image img {
  height: auto;
  display: block;
}
span.footer-h2 {
	font-family: 'Source Sans 3',Helvetica,Arial,sans-serif;
	font-weight: 700;
    font-size: 2rem;
	color:#007a7a;
}
span.footer-h3{
	font-family: 'Source Sans 3',Helvetica,Arial,sans-serif;
	font-weight: 500;
    font-size: 1.625rem;
	color:#3a3a3a;
}
.footer-h4 p{
	font-family: 'Source Sans 3',Helvetica,Arial,sans-serif;
	font-weight: 500;
    font-size: 1.5rem;
	color:#3a3a3a;
}
ul#menu-meta-menue li.current-menu-item a {
    color: #F0F0F0!important;
    text-decoration: underline;
    text-underline-offset: 2px;
    text-decoration-thickness: 1.5px;
    transition: color 0.2s ease, text-decoration-thickness 0.2s ease;
}
footer .tm-footer-bild {
    display: block;
}
/*-----------------------------------------------------------------------------------------*/
/*–––––––––Media Queries-------------------------------------------------------------------*/
/*---------Use this section for spcial dimension css. Delete what you do not need----------*/
/*-----------------------------------------------------------------------------------------*/
/* Mobile: Unterstreichung für echte Text-Links erzwingen (Divi überschreibt sonst gern) */
@media (hover: none) and (pointer: coarse) {
  .et_pb_text a:not(.et_pb_button),
  .entry-content a:not(.et_pb_button),
  .tm-sr-link {
    text-decoration: underline !important;
    text-underline-offset: 2px;
    text-decoration-thickness: 1.5px;
  }
  /* Breadcrumb-Links: keine Unterstreichung */
  nav[aria-label="Breadcrumb"] .breadcrumb a {
    text-decoration: none !important;
  }
}


/*---Responsive Styles Large Desktop And Above-*/
@media all and (min-width: 1405px) {
}

/*---Responsive Styles Standard Desktop Only---*/
@media all and (min-width: 981px) and (max-width: 1405px) {
}

/*---Responsive Styles Standard Desktop Only---*/
@media all and (min-width: 1100px) and (max-width: 1405px) {
}

/*---Responsive Styles 981px - 1100px----------*/
@media all and (min-width: 981px) and (max-width: 1100px) {
}

/*---Responsive Styles Tablet Only--------------*/
@media all and (min-width: 768px) and (max-width: 980px) {
    span.footer-h2 {
        font-family: 'Source Sans 3', Helvetica, Arial, sans-serif;
        font-weight: 700;
        font-size: 1.875rem;
        color: #007a7a;
    }

    span.footer-h3 {
        font-family: 'Source Sans 3', Helvetica, Arial, sans-serif;
        font-weight: 500;
        font-size: 1.5rem;
        color: #3a3a3a;
    }

    .footer-h4 p {
        font-family: 'Source Sans 3', Helvetica, Arial, sans-serif;
        font-weight: 500;
        font-size: 1.3rem;
        color: #3a3a3a;
    }
}

/*---Responsive Styles Desktop Only------------*/
@media all and (min-width: 981px) {}

/*---Responsive Styles Tablet And Below--------*/
@media only screen and (max-width: 980px) {}

/*---Responsive Styles 782px-------------------*/
@media screen and (max-width: 782px) {}

/*---Responsive Styles Tablet Portrait And Below*/
@media all and (max-width: 768px) {
	.et_pb_menu--style-left_aligned.et_pb_text_align_right .et_pb_menu__menu>nav>ul,
    .et_pb_menu--style-left_aligned.et_pb_text_align_right .et_pb_menu__wrap {
        /*justify-content: center;*/
	}
	span.footer-h2 {
		font-family: 'Source Sans 3',Helvetica,Arial,sans-serif;
		font-weight: 700;
		font-size: 1.625rem;
		color:#007a7a;
	}
	span.footer-h3 {
		font-family: 'Source Sans 3',Helvetica,Arial,sans-serif;
		font-weight: 500;
		font-size: 1.5rem;
		color:#3a3a3a;
	}
    .footer-h4 p{
        font-family: 'Source Sans 3',Helvetica,Arial,sans-serif;
        font-weight: 500;
        font-size: 1.5rem;
        color:#3a3a3a;
    }
	
    /*---change float on mobile devices---*/
    /*---Name the Row class ".custom-flex"---*/
    /*---Name each module in that order you want to display them on tablet and below class ".custom-one, .custom-two …" to change the order on mobile devices---*/

	.custom-flex {
    	display: -webkit-box;
    	display: -moz-box;
    	display: -ms-flexbox;
    	display: -webkit-flex;
    	display: flex;
    	-webkit-flex-flow: row wrap;
   		flex-flow: row wrap;
	}

	.custom-flex > * {
 	   flex: 1 100%;
	}

	.custom-one {
    	order: 1;
    	flex: 1 100%;
	}

	.custom-two {
   		order: 2;
    	flex: 1 100%;
	}
	
	.custom-three {
    	order: 3;
    	flex: 1 100%;
	}
	
	.custom-four {
    	order: 4;
    	flex: 1 100%;
	}
	
	.custom-five {
    	order: 5;
    	flex: 1 100%;
	}
}

/*---Responsive Styles Smartphone Only---------*/
@media all and (max-width: 767px) {}

/*---Responsive Styles Smartphone Portrait-----*/
@media all and (max-width: 479px) {}


/*––––––––––--End–Media Queries-----------------------*/
 