.elementor-kit-61{--e-global-color-primary:#33401F;--e-global-color-secondary:#2A3519;--e-global-color-text:#454842;--e-global-color-accent:#33401F;--e-global-color-sl_forest:#33401F;--e-global-color-sl_forest_800:#2A3519;--e-global-color-sl_meadow:#8FD14F;--e-global-color-sl_meadow_tint:#EEF6E4;--e-global-color-sl_warm_white:#FAFAF7;--e-global-color-sl_linen:#F1ECE2;--e-global-color-sl_white:#FFFFFF;--e-global-color-sl_text:#454842;--e-global-color-sl_text_meta:#4B4E48;--e-global-color-sl_neutral_100:#E6DFD2;--e-global-color-sl_neutral_200:#DDDCD5;--e-global-color-sl_neutral_500:#7A7D75;--e-global-color-sl_error:#8E251B;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;--e-global-typography-sl_h1-font-family:"Manrope";--e-global-typography-sl_h1-font-size:64px;--e-global-typography-sl_h1-font-weight:700;--e-global-typography-sl_h1-line-height:1.05em;--e-global-typography-sl_h1-letter-spacing:-0.02em;--e-global-typography-sl_h1_hero-font-family:"Manrope";--e-global-typography-sl_h1_hero-font-size:104px;--e-global-typography-sl_h1_hero-font-weight:700;--e-global-typography-sl_h1_hero-line-height:0.98em;--e-global-typography-sl_h1_hero-letter-spacing:-0.02em;--e-global-typography-sl_h2-font-family:"Manrope";--e-global-typography-sl_h2-font-size:44px;--e-global-typography-sl_h2-font-weight:600;--e-global-typography-sl_h2-line-height:1.15em;--e-global-typography-sl_h2-letter-spacing:-0.02em;--e-global-typography-sl_h3-font-family:"Manrope";--e-global-typography-sl_h3-font-size:28px;--e-global-typography-sl_h3-font-weight:600;--e-global-typography-sl_h3-line-height:1.2em;--e-global-typography-sl_h3-letter-spacing:-0.02em;--e-global-typography-sl_h4-font-family:"Manrope";--e-global-typography-sl_h4-font-size:22px;--e-global-typography-sl_h4-font-weight:600;--e-global-typography-sl_h4-line-height:1.3em;--e-global-typography-sl_h4-letter-spacing:-0.02em;--e-global-typography-sl_display-font-family:"Manrope";--e-global-typography-sl_display-font-size:44px;--e-global-typography-sl_display-font-weight:700;--e-global-typography-sl_display-line-height:1.05em;--e-global-typography-sl_display-letter-spacing:-0.02em;--e-global-typography-sl_quote-font-family:"Manrope";--e-global-typography-sl_quote-font-size:28px;--e-global-typography-sl_quote-font-weight:500;--e-global-typography-sl_quote-line-height:1.35em;--e-global-typography-sl_quote-letter-spacing:-0.01em;--e-global-typography-sl_lead-font-family:"Manrope";--e-global-typography-sl_lead-font-size:20px;--e-global-typography-sl_lead-font-weight:400;--e-global-typography-sl_lead-line-height:1.6em;--e-global-typography-sl_body-font-family:"Manrope";--e-global-typography-sl_body-font-size:18px;--e-global-typography-sl_body-font-weight:400;--e-global-typography-sl_body-line-height:1.6em;--e-global-typography-sl_small-font-family:"Manrope";--e-global-typography-sl_small-font-size:16px;--e-global-typography-sl_small-font-weight:400;--e-global-typography-sl_small-line-height:1.6em;--e-global-typography-sl_button-font-family:"Manrope";--e-global-typography-sl_button-font-size:18px;--e-global-typography-sl_button-font-weight:600;--e-global-typography-sl_button-line-height:1em;--e-global-typography-sl_link-font-family:"Manrope";--e-global-typography-sl_link-font-size:18px;--e-global-typography-sl_link-font-weight:600;--e-global-typography-sl_link-text-decoration:underline;--e-global-typography-sl_link-line-height:1.6em;--e-global-typography-sl_strong-font-family:"Manrope";--e-global-typography-sl_strong-font-size:18px;--e-global-typography-sl_strong-font-weight:600;--e-global-typography-sl_strong-line-height:1.6em;--e-global-typography-sl_nav-font-family:"Manrope";--e-global-typography-sl_nav-font-size:18px;--e-global-typography-sl_nav-font-weight:500;--e-global-typography-sl_nav-line-height:1.6em;--e-global-typography-sl_label-font-family:"Manrope";--e-global-typography-sl_label-font-size:16px;--e-global-typography-sl_label-font-weight:600;--e-global-typography-sl_label-line-height:1.6em;--e-global-typography-sl_eyebrow-font-family:"Manrope";--e-global-typography-sl_eyebrow-font-size:15px;--e-global-typography-sl_eyebrow-font-weight:600;--e-global-typography-sl_eyebrow-text-transform:uppercase;--e-global-typography-sl_eyebrow-line-height:1.6em;--e-global-typography-sl_eyebrow-letter-spacing:0.08em;--e-global-typography-sl_badge-font-family:"Manrope";--e-global-typography-sl_badge-font-size:15px;--e-global-typography-sl_badge-font-weight:600;--e-global-typography-sl_badge-line-height:1.4em;color:var( --e-global-color-sl_text );font-family:var( --e-global-typography-sl_body-font-family ), Sans-serif;font-size:var( --e-global-typography-sl_body-font-size );font-weight:var( --e-global-typography-sl_body-font-weight );line-height:var( --e-global-typography-sl_body-line-height );}.elementor-kit-61 button,.elementor-kit-61 input[type="button"],.elementor-kit-61 input[type="submit"],.elementor-kit-61 .elementor-button{background-color:var( --e-global-color-sl_forest );font-family:var( --e-global-typography-sl_button-font-family ), Sans-serif;font-size:var( --e-global-typography-sl_button-font-size );font-weight:var( --e-global-typography-sl_button-font-weight );line-height:var( --e-global-typography-sl_button-line-height );color:var( --e-global-color-sl_white );border-radius:0px 0px 0px 0px;padding:16px 32px 16px 32px;}.elementor-kit-61 button:hover,.elementor-kit-61 button:focus,.elementor-kit-61 input[type="button"]:hover,.elementor-kit-61 input[type="button"]:focus,.elementor-kit-61 input[type="submit"]:hover,.elementor-kit-61 input[type="submit"]:focus,.elementor-kit-61 .elementor-button:hover,.elementor-kit-61 .elementor-button:focus{background-color:var( --e-global-color-sl_forest_800 );color:var( --e-global-color-sl_white );}.elementor-kit-61 e-page-transition{background-color:#FFBC7D;}.elementor-kit-61 a{color:var( --e-global-color-sl_forest );font-family:var( --e-global-typography-sl_link-font-family ), Sans-serif;font-size:var( --e-global-typography-sl_link-font-size );font-weight:var( --e-global-typography-sl_link-font-weight );text-decoration:var( --e-global-typography-sl_link-text-decoration );line-height:var( --e-global-typography-sl_link-line-height );}.elementor-kit-61 a:hover{color:var( --e-global-color-sl_forest_800 );}.elementor-kit-61 h1{color:var( --e-global-color-sl_forest );font-family:var( --e-global-typography-sl_h1-font-family ), Sans-serif;font-size:var( --e-global-typography-sl_h1-font-size );font-weight:var( --e-global-typography-sl_h1-font-weight );line-height:var( --e-global-typography-sl_h1-line-height );letter-spacing:var( --e-global-typography-sl_h1-letter-spacing );}.elementor-kit-61 h2{color:var( --e-global-color-sl_forest );font-family:var( --e-global-typography-sl_h2-font-family ), Sans-serif;font-size:var( --e-global-typography-sl_h2-font-size );font-weight:var( --e-global-typography-sl_h2-font-weight );line-height:var( --e-global-typography-sl_h2-line-height );letter-spacing:var( --e-global-typography-sl_h2-letter-spacing );}.elementor-kit-61 h3{color:var( --e-global-color-sl_forest );font-family:var( --e-global-typography-sl_h3-font-family ), Sans-serif;font-size:var( --e-global-typography-sl_h3-font-size );font-weight:var( --e-global-typography-sl_h3-font-weight );line-height:var( --e-global-typography-sl_h3-line-height );letter-spacing:var( --e-global-typography-sl_h3-letter-spacing );}.elementor-kit-61 h4{color:var( --e-global-color-sl_forest );font-family:var( --e-global-typography-sl_h4-font-family ), Sans-serif;font-size:var( --e-global-typography-sl_h4-font-size );font-weight:var( --e-global-typography-sl_h4-font-weight );line-height:var( --e-global-typography-sl_h4-line-height );letter-spacing:var( --e-global-typography-sl_h4-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1280px;}.e-con{--container-max-width:1280px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:24px;}.elementor-element{--widgets-spacing:24px 24px;--widgets-spacing-row:24px;--widgets-spacing-column:24px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-61{--e-global-typography-sl_h1-font-size:47px;--e-global-typography-sl_h1_hero-font-size:72px;--e-global-typography-sl_h2-font-size:36px;--e-global-typography-sl_h3-font-size:24px;--e-global-typography-sl_h4-font-size:22px;--e-global-typography-sl_display-font-size:35px;--e-global-typography-sl_quote-font-size:24px;--e-global-typography-sl_lead-font-size:20px;--e-global-typography-sl_body-font-size:18px;--e-global-typography-sl_small-font-size:16px;--e-global-typography-sl_button-font-size:18px;--e-global-typography-sl_link-font-size:18px;--e-global-typography-sl_strong-font-size:18px;--e-global-typography-sl_nav-font-size:18px;--e-global-typography-sl_label-font-size:16px;--e-global-typography-sl_eyebrow-font-size:15px;--e-global-typography-sl_badge-font-size:15px;font-size:var( --e-global-typography-sl_body-font-size );line-height:var( --e-global-typography-sl_body-line-height );}.elementor-kit-61 a{font-size:var( --e-global-typography-sl_link-font-size );line-height:var( --e-global-typography-sl_link-line-height );}.elementor-kit-61 h1{font-size:var( --e-global-typography-sl_h1-font-size );line-height:var( --e-global-typography-sl_h1-line-height );letter-spacing:var( --e-global-typography-sl_h1-letter-spacing );}.elementor-kit-61 h2{font-size:var( --e-global-typography-sl_h2-font-size );line-height:var( --e-global-typography-sl_h2-line-height );letter-spacing:var( --e-global-typography-sl_h2-letter-spacing );}.elementor-kit-61 h3{font-size:var( --e-global-typography-sl_h3-font-size );line-height:var( --e-global-typography-sl_h3-line-height );letter-spacing:var( --e-global-typography-sl_h3-letter-spacing );}.elementor-kit-61 h4{font-size:var( --e-global-typography-sl_h4-font-size );line-height:var( --e-global-typography-sl_h4-line-height );letter-spacing:var( --e-global-typography-sl_h4-letter-spacing );}.elementor-kit-61 button,.elementor-kit-61 input[type="button"],.elementor-kit-61 input[type="submit"],.elementor-kit-61 .elementor-button{font-size:var( --e-global-typography-sl_button-font-size );line-height:var( --e-global-typography-sl_button-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}}@media(max-width:767px){.elementor-kit-61{--e-global-typography-sl_h1-font-size:40px;--e-global-typography-sl_h1_hero-font-size:44px;--e-global-typography-sl_h2-font-size:32px;--e-global-typography-sl_h3-font-size:24px;--e-global-typography-sl_h4-font-size:22px;--e-global-typography-sl_display-font-size:32px;--e-global-typography-sl_quote-font-size:24px;--e-global-typography-sl_lead-font-size:20px;--e-global-typography-sl_body-font-size:18px;--e-global-typography-sl_small-font-size:16px;--e-global-typography-sl_button-font-size:18px;--e-global-typography-sl_link-font-size:18px;--e-global-typography-sl_strong-font-size:18px;--e-global-typography-sl_nav-font-size:18px;--e-global-typography-sl_label-font-size:16px;--e-global-typography-sl_eyebrow-font-size:15px;--e-global-typography-sl_badge-font-size:15px;font-size:var( --e-global-typography-sl_body-font-size );line-height:var( --e-global-typography-sl_body-line-height );}.elementor-kit-61 a{font-size:var( --e-global-typography-sl_link-font-size );line-height:var( --e-global-typography-sl_link-line-height );}.elementor-kit-61 h1{font-size:var( --e-global-typography-sl_h1-font-size );line-height:var( --e-global-typography-sl_h1-line-height );letter-spacing:var( --e-global-typography-sl_h1-letter-spacing );}.elementor-kit-61 h2{font-size:var( --e-global-typography-sl_h2-font-size );line-height:var( --e-global-typography-sl_h2-line-height );letter-spacing:var( --e-global-typography-sl_h2-letter-spacing );}.elementor-kit-61 h3{font-size:var( --e-global-typography-sl_h3-font-size );line-height:var( --e-global-typography-sl_h3-line-height );letter-spacing:var( --e-global-typography-sl_h3-letter-spacing );}.elementor-kit-61 h4{font-size:var( --e-global-typography-sl_h4-font-size );line-height:var( --e-global-typography-sl_h4-line-height );letter-spacing:var( --e-global-typography-sl_h4-letter-spacing );}.elementor-kit-61 button,.elementor-kit-61 input[type="button"],.elementor-kit-61 input[type="submit"],.elementor-kit-61 .elementor-button{font-size:var( --e-global-typography-sl_button-font-size );line-height:var( --e-global-typography-sl_button-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}}
/* Start custom CSS *//* === Schoener Leben - Globales CSS, Stand Phase 2c (alle Module) === */
/* Spiegel von site-settings-blueprint.json -> settings.custom_css.
   Quelle der Wahrheit ist der Blueprint; tools/build_kit.py schreibt diese Datei
   bei jedem Kit-Bau neu. Nie nur hier aendern.
   Werteherkunft je Block: site-settings/NACHTRAG-phase1.5.md */

/* ---------- 1. Schutz und Hard Rules (Phase 1) ---------- */
body{overflow-x:hidden}

/* R9 - Radius 0 und keine Schatten (Hard Rule 1 und 2), Netz gegen Widget-Defaults */
.elementor .elementor-button,
.elementor .elementor-widget-image img,
.elementor input:not([type=checkbox]):not([type=radio]),
.elementor select,
.elementor textarea,
.elementor .e-con,
.elementor .e-con-inner{border-radius:0}
.elementor .elementor-button,
.elementor .elementor-widget-image img,
.elementor .e-con,
.elementor .e-con-inner{box-shadow:none}

/* Fokus: 2px Forest, Offset 2px (base.css:15); auf Forest-Flaechen Warm White
   (base.css:16) - dafuer traegt die Sektion die Klasse .sl-on-dark */
.elementor :focus-visible{outline:2px solid var(--e-global-color-sl_forest);outline-offset:2px}
.elementor .sl-on-dark :focus-visible{outline-color:var(--e-global-color-sl_warm_white)}

/* Button-Mindesthoehe (base.css:77) */
.elementor .elementor-button{min-height:52px}

/* ---------- 2. Breiten: Lesespalten (base.css, Phase 0 § 4.6) ---------- */
/* Projektstandard ist .sl-tafel-*; boxed_width im JSON bleibt die Ausnahme (R5). */
.e-con.sl-tafel-540{max-width:540px;--content-width:540px}
.e-con.sl-tafel-640{max-width:640px;--content-width:640px}
.e-con.sl-tafel-720,
.e-con.sl-narrow   {max-width:720px;--content-width:720px}
.e-con.sl-tafel-820{max-width:820px;--content-width:820px}
.e-con.sl-tafel-960{max-width:960px;--content-width:960px}

/* Zeilenlaenge: base.css:12 deckelt JEDEN Absatz auf --text-max.
   Ausnahme base.css:113 - in Karten laeuft der Text voll. */
.elementor-widget-text-editor p{max-width:720px}
.sl-card .elementor-widget-text-editor p,
.sl-measure-full .elementor-widget-text-editor p,
.sl-measure-full p{max-width:none}

/* ---------- 2b. Link-Rollen (base.css:5,6,62,77,87,179) ---------- */
/* Befund aus dem Export: <a> ist dort NICHT von sich aus unterstrichen (base.css:5).
   Unterstrichen wird nur, was die Klasse .link traegt (base.css:87). Navigation,
   Buttons und Footer setzen text-decoration ausdruecklich auf none (62, 77, 179).
   Rolle B ist also der Normalfall, Rolle A die Ausnahme. */

/* Rolle B - eigenstaendiger Link, CTA, Pfeil-Link, Button-Beschriftung: ohne Unterstrich */
.elementor a,
.elementor .elementor-button{text-decoration:none}

/* Rolle A - Fliesstext-/Inline-Link: unterstrichen, Offset 4px, halbfett (base.css:87) */
.elementor .sl-link a,
.elementor a.sl-link{text-decoration:underline;text-underline-offset:4px;
  font-weight:var(--e-global-typography-sl_link-font-weight)}

/* Rolle B im Hover: Unterstrich erscheint erst jetzt. Der Export aendert nur die Farbe
   (base.css:6); der Unterstrich kommt dazu, damit der Zustand nicht allein ueber Farbe
   erkennbar ist (WCAG 1.4.1). Buttons behalten ihren Flaechenwechsel ohne Unterstrich. */
.elementor a:hover{text-decoration:underline;text-underline-offset:4px}
.elementor .elementor-button:hover{text-decoration:none}

/* Auf Forest-Flaechen bleibt die Schrift Warm White: Forest-800 waere dort unlesbar
   (1,06:1), und Meadow ist als Textfarbe verboten (R9). Zustand nur ueber den Unterstrich. */
.elementor .sl-on-dark a:hover{color:var(--e-global-color-sl_warm_white)}

/* ---------- 3. Full-Bleed (R4) ---------- */
/* 100% statt 100vw - 100vw rechnet die Scrollleiste mit und erzeugt Querlauf (L-04). */
.e-con.sl-fullbleed{--content-width:100%;max-width:100%;padding-left:0;padding-right:0}

/* ---------- 4. Bildbaender und Hero-Medienflaeche (Phase 0 § 4.7, R6) ---------- */
/* clamp() laesst sich in Elementors min_height nicht abbilden - darum hier. */
.e-con.sl-band     {min-height:clamp(280px,42vh,460px)}
.e-con.sl-band-tall{min-height:clamp(380px,64vh,720px)}
.e-con.sl-hero-media{min-height:clamp(320px,52vh,560px)}
@media(max-width:900px){
  .e-con.sl-hero-media{min-height:clamp(240px,40vh,380px)}
}
/* Bild fuellt sein Band vollstaendig (base.css:192 .ph).
   height:100% greift NICHT gegen ein min-height-Elternteil - darum wird das
   Bild absolut gesetzt, so wie im Export das <img> in der festen .band-Hoehe. */
.e-con.sl-band,.e-con.sl-band-tall,.e-con.sl-hero-media{position:relative;overflow:hidden}
.e-con.sl-band>.sl-cover,
.e-con.sl-band-tall>.sl-cover,
.e-con.sl-hero-media>.sl-cover{position:absolute;inset:0}
.elementor-widget.sl-cover,
.elementor-widget.sl-cover .elementor-widget-container{width:100%;height:100%}
.elementor-widget.sl-cover img{width:100%;height:100%;object-fit:cover;display:block}

/* ---------- 5. Seitenverhaeltnisse und leere Fotoflaechen (L-06) ---------- */
.sl-ratio-21-9{aspect-ratio:21/9}
.sl-ratio-16-9{aspect-ratio:16/9}
.sl-ratio-4-3 {aspect-ratio:4/3}
.sl-ratio-3-2 {aspect-ratio:3/2}
.sl-ratio-1-1 {aspect-ratio:1/1}
.sl-ratio-3-4 {aspect-ratio:3/4}
.sl-ratio-4-5 {aspect-ratio:4/5}
[class*="sl-ratio-"]{background:var(--e-global-color-sl_neutral_100);overflow:hidden}
[class*="sl-ratio-"] img{width:100%;height:100%;object-fit:cover;display:block}

/* ---------- 6a. Raster (base.css:30-34) ---------- */
/* Bewusst als CSS-Grid ueber eine Utility-Klasse und nicht ueber Elementors
   Grid-Container: so steht hier woertlich das Raster des Exports, die Kinder
   brauchen ueberhaupt keine Breitenangabe (R3 trivial erfuellt) und der Abstand
   bleibt ueber flex_gap in Elementor einstellbar (gap gilt fuer Grid genauso). */
.e-con.sl-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.e-con.sl-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.e-con.sl-grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:900px){
  .e-con.sl-grid-2,.e-con.sl-grid-3,.e-con.sl-grid-4{grid-template-columns:1fr}
  /* einzige Ausnahme: die Galerie geht auf zwei Spalten, nicht auf eine */
  .e-con.sl-grid-3.sl-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* ---------- 6b. Umbruch bei 900px fuer Flex-Zeilen (base.css:34,190) ---------- */
/* Elementors Tablet-Grenze liegt bei 1024. Der Export bricht bei 900 um.
   Statt Elementors Breakpoints zu verstellen, traegt die Sektion .sl-stack-900:
   die Container bleiben in ALLEN Elementor-Breakpoints row, das Stapeln macht
   diese Regel. Gilt fuer grid-2, grid-3, grid-4 und gallery-2 gleichermassen. */
@media(max-width:900px){
  .e-con.sl-stack-900{flex-direction:column}
  .e-con.sl-stack-900>.e-con{width:100%}
}
/* ---------- 7. Navigation: Umschaltpunkt 1120px (base.css:73,74) ---------- */
/* Elementors dropdown-Schalter kennt nur die eigenen Breakpoints (hier 1024).
   Bei 1025-1119px passen fuenf Links plus zwei Buttons aber nicht mehr neben das
   Logo - genau deshalb bricht der Export bei 1120 um. Die Sichtbarkeit wird hier
   umgestellt; Elementors Klick-Logik am Toggle bleibt gebunden und funktioniert.
   Der doppelte Klassen-Selektor hebt die Spezifitaet ueber Elementors eigene Regel. */
@media(max-width:1119px){
  .elementor-widget-nav-menu.sl-nav .elementor-nav-menu--main{display:none}
  .elementor-widget-nav-menu.sl-nav .elementor-menu-toggle{display:flex}
}
@media(min-width:1120px){
  .elementor-widget-nav-menu.sl-nav .elementor-menu-toggle{display:none}
  .elementor-widget-nav-menu.sl-nav .elementor-nav-menu--dropdown{display:none}
}
/* Kopfzeilenhoehe (base.css:52) */
.e-con.sl-header{min-height:88px}

/* ---------- 8. Eyebrow und Standortzeile: 24x3px Meadow (base.css:42-48) ---------- */
.elementor-widget.sl-eyebrow .elementor-heading-title,
.elementor-widget.sl-meta-strong .elementor-heading-title{
  display:flex;align-items:center;gap:16px}
.elementor-widget.sl-eyebrow .elementor-heading-title::before,
.elementor-widget.sl-meta-strong .elementor-heading-title::before{
  content:"";width:24px;height:3px;flex:none;background:var(--e-global-color-sl_meadow)}

/* ---------- 8b. Karte: Haarlinie bleibt nativ, nur der Hover kommt von hier ---------- */
/* base.css:110,111 - Rahmen wechselt auf Forest, 150ms, kein Schatten, kein Versatz */
.e-con.sl-card{transition:border-color .15s}
.e-con.sl-card:hover{border-color:var(--e-global-color-sl_forest)}

/* ---------- 8c. Icon-Kachel 64x64 (base.css:114-117) ---------- */
/* Der Export bringt 13 eigene SVG-Pfade mit (components/core/Icon.jsx, Strichstaerke
   1.6, eckige Enden). Sie stehen als Inline-SVG in einem HTML-Widget - damit braucht
   es weder Font Awesome noch einen SVG-Upload in die Mediathek. */
.sl-icontile{display:grid;place-items:center;width:64px;height:64px;flex:none;
  background:var(--e-global-color-sl_meadow_tint);color:var(--e-global-color-sl_forest)}
.sl-icontile.sl-sm{width:48px;height:48px}
.sl-icontile svg{width:32px;height:32px;display:block;fill:none;stroke:currentColor;
  stroke-width:1.6;stroke-linecap:square;stroke-linejoin:miter}
.sl-icontile.sl-sm svg{width:24px;height:24px}

/* ---------- 8d. Badge (base.css:119-121) ---------- */
.sl-badges{display:flex;flex-wrap:wrap;gap:16px}
.sl-badge{display:inline-flex;align-items:center;height:28px;padding:0 10px;
  background:var(--e-global-color-sl_meadow_tint);color:var(--e-global-color-sl_forest);
  font-family:var(--e-global-typography-sl_badge-font-family),sans-serif;
  font-size:var(--e-global-typography-sl_badge-font-size);
  font-weight:var(--e-global-typography-sl_badge-font-weight);
  line-height:var(--e-global-typography-sl_badge-line-height)}

/* ---------- 8e. Formular (base.css:123-132) ---------- */
/* Zeilenabstand kommt aus den Widget-Steuerungen (row_gap/column_gap), damit er im
   Editor einstellbar bleibt. Hier nur das Aussehen der Felder. */
.sl-form .elementor-field-label{margin-bottom:8px;
  font-family:var(--e-global-typography-sl_label-font-family),sans-serif;
  font-size:var(--e-global-typography-sl_label-font-size);
  font-weight:var(--e-global-typography-sl_label-font-weight);
  color:var(--e-global-color-sl_text)}
.sl-form .elementor-field-textual{height:56px;padding:0 16px;border-radius:0;box-shadow:none;
  border:1px solid var(--e-global-color-sl_neutral_500);
  background:var(--e-global-color-sl_white);
  color:var(--e-global-color-sl_text);
  font-family:var(--e-global-typography-sl_body-font-family),sans-serif;
  font-size:var(--e-global-typography-sl_body-font-size)}
.sl-form textarea.elementor-field-textual{height:auto;min-height:140px;padding:16px;
  line-height:var(--e-global-typography-sl_body-line-height)}
.sl-form select.elementor-field-textual{height:52px}
.sl-form .elementor-field-textual:focus{border-color:var(--e-global-color-sl_forest);
  outline:2px solid var(--e-global-color-sl_forest);outline-offset:0;box-shadow:none}
.sl-form .elementor-field-type-acceptance input[type=checkbox]{width:24px;height:24px;
  border-radius:0;accent-color:var(--e-global-color-sl_forest);margin-top:2px}
.sl-form .elementor-field-type-acceptance .elementor-field-option{display:flex;gap:12px;
  align-items:flex-start;
  font-size:var(--e-global-typography-sl_small-font-size);
  color:var(--e-global-color-sl_text)}
.sl-form .elementor-message{font-size:var(--e-global-typography-sl_small-font-size)}
.sl-form .elementor-message.elementor-message-danger{color:var(--e-global-color-sl_error)}

/* ---------- 9. Strichliste .blist (base.css:135-137) ---------- */
.sl-blist ul{list-style:none;display:grid;gap:8px;margin:0;padding:0}
.sl-blist li{position:relative;padding-left:22px}
.sl-blist li::before{content:"";position:absolute;left:0;top:.8em;width:10px;height:1px;
  background:var(--e-global-color-sl_forest)}

/* ---------- 9b. FAQ (base.css:141-146) ---------- */
/* Gebaut mit nested-accordion (NACHTRAG-phase2b § 4). Die Regeln decken zusaetzlich die
   DOM des klassischen accordion-Widgets ab, damit ein Rueckbau ohne CSS-Aenderung geht.
   Der Export zeichnet nur waagerechte Haarlinien, keinen Kasten; Elementor bringt einen
   Rahmen ringsum mit. Polster 20px -> Stufe 24 (Phase 0 § 4.4).
   Titel-Typografie ueber die Global-Variablen, damit keine Widget-Steuerung geraten
   werden muss und R7 trotzdem gilt. */
.sl-faq .e-n-accordion,
.sl-faq .elementor-accordion{border:0;
  border-top:1px solid var(--e-global-color-sl_neutral_200)}
.sl-faq .e-n-accordion-item,
.sl-faq .elementor-accordion-item{border:0;border-radius:0;box-shadow:none;
  border-bottom:1px solid var(--e-global-color-sl_neutral_200)}
.sl-faq .e-n-accordion-item-title,
.sl-faq .elementor-tab-title{padding:24px 0;background:transparent;border:0;border-radius:0}
.sl-faq .e-n-accordion-item-title-text,
.sl-faq .elementor-accordion-title{margin:0;
  font-family:var(--e-global-typography-sl_h4-font-family),sans-serif;
  font-size:var(--e-global-typography-sl_h4-font-size);
  font-weight:var(--e-global-typography-sl_h4-font-weight);
  line-height:var(--e-global-typography-sl_h4-line-height);
  letter-spacing:var(--e-global-typography-sl_h4-letter-spacing);
  color:var(--e-global-color-sl_forest)}
.sl-faq .e-n-accordion-item-title-icon{color:var(--e-global-color-sl_forest)}
.sl-faq .e-n-accordion-item[open] .e-n-accordion-item-title-text,
.sl-faq .e-n-accordion-item[open] .e-n-accordion-item-title-icon{
  color:var(--e-global-color-sl_forest_800)}
.sl-faq .e-n-accordion-item>.e-con{background:transparent;max-width:720px}
.sl-faq .elementor-tab-content{padding:0 0 24px;border:0;background:transparent;max-width:720px}

/* ---------- 10. Definitionsliste 200px/1fr (base.css:149-153) ---------- */
.sl-dl dl{display:grid;gap:24px;margin:0}
.sl-dl dl>div{display:grid;grid-template-columns:200px 1fr;gap:24px}
.sl-dl dt{font-weight:var(--e-global-typography-sl_strong-font-weight);
  color:var(--e-global-color-sl_forest)}
@media(max-width:640px){.sl-dl dl>div{grid-template-columns:1fr;gap:4px}}

/* ---------- 11. Gedimmter Text im Footer (base.css:187,189) ---------- */
/* Oeffnungszeiten 85 %, Rechtszeile 85 % - Kontrast bleibt bei 8,17:1 (AAA),
   nachgerechnet in qa/contrast_check.py unter "Text mit Deckkraft". */
.sl-dim{opacity:.85}

/* ---------- 12. Hero-Headline: max. 14 Zeichen pro Zeile (base.css:96) ---------- */
.elementor-widget.sl-hero-h1 .elementor-heading-title{max-width:14ch}

/* Nicht gebraucht in diesem Projekt (L-04-Liste): .sl-col-<NNN>, .sl-row-hover + .sl-hl,
   .sl-inset-left/-right - Begruendung in site-settings/NACHTRAG-phase1.5.md § 5. *//* End custom CSS */