/*
Theme Name:   Ratschlag
Theme URI:    https://ratschlag-auto.de
Description:  Gemeinsames Child-Theme für alle Ratschlag-Sites (Divi 5). Die Marke
              (Farben, Wortmarke, Hero, Rubriken, Suche) kommt aus brands/<slug>.json
              und wird als CSS-Variablen --re-brand* gesetzt. Keine Farb- oder
              Schriftwerte in Divi-Modulen setzen, dieses Stylesheet ist die Quelle.
Author:       Textnetz KG
Template:     Divi
Version:      2.0.14
Text Domain:  ratschlag
*/

/* ==========================================================================
   1. Fonts (lokal, DSGVO — Dateien in assets/fonts/, siehe dortige README)
   ========================================================================== */
@font-face{font-family:"Arimo";src:url("assets/fonts/arimo-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:"Arimo";src:url("assets/fonts/arimo-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap;}/* nur latin; Hero-Eyebrow */
@font-face{font-family:"Arimo";src:url("assets/fonts/arimo-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap;}
@font-face{font-family:"Tinos";src:url("assets/fonts/tinos-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:"Tinos";src:url("assets/fonts/tinos-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap;}
/* Wortmarke: Old Standard TT (OFL), lokal gehostet. */
@font-face{font-family:"Old Standard TT";src:url("assets/fonts/oldstandard-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:"Old Standard TT";src:url("assets/fonts/oldstandard-400-ext.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF;}

/* ==========================================================================
   2. Tokens
   ========================================================================== */
:root{
  --re-brand:#298C13;
  --re-brand-dark:#1F6B0E;
  --re-brand-light:#7FC85F;
  --re-ink:#3D4A38;
  --re-text:#4A4E48;
  --re-text-soft:#5F6360;
  --re-muted:#666A63;
  --re-faint:#707070;
  --re-line:#E6E8E3;
  --re-line-strong:#DCE0D8;
  --re-field-line:#C9CDC4;
  --re-surface:#F4F6F1;
  --re-footer:#3F3F3F;
  /* Rückfallwerte; functions.php setzt die Markenwerte inline darüber. */
  --re-deep:#0C1808;
  --re-deep-rgb:12,24,8;
  --re-search-bg:rgba(12,24,8,.985);
  --re-wordmark-font:"Old Standard TT",Georgia,serif;

  --re-sans:"Arimo",Helvetica,Arial,sans-serif;
  --re-serif:"Tinos",Times,"Times New Roman",serif;

  --re-container:1360px;
  --re-gutter:40px;
  --re-col-gap:64px;
  --re-card-gap:40px;
  /* 285px ergibt neben der 300px-Sidebar nur 2 Spalten (es bleiben 916px, drei
     Karten braeuchten 935). 270px passen -- und erst dann stimmt das Seitenverhaeltnis
     der Karten mit der registrierten Bildgroesse re-card (600x400, also 3:2) ueberein:
     278x200 statt 438x200. Ohne Sidebar (unter 980px) aendert sich nichts. */
  --re-card-min:270px;

  --re-shadow:0 1px 2px rgba(20,25,15,.05),0 10px 28px rgba(20,25,15,.07);
  --re-shadow-hover:0 2px 4px rgba(20,25,15,.06),0 18px 40px rgba(20,25,15,.12);
  --re-ease:.22s ease;
}

/* ==========================================================================
   3. Basis — nach dem Entwurf (Ratschlag Auto.dc.html): Arimo 16 px / 400,
   Elemente setzen Größe und Zeilenhöhe selbst. Divi gibt Überschriften und
   Absätzen eigene Innenabstände, die der Entwurf nicht hat — in den
   Theme-Builder-Bereichen zurücksetzen (Beitragsinhalt regelt Abschnitt 10).
   ========================================================================== */
body,body.et_pb_pagebuilder_layout{
  font-family:var(--re-sans);
  font-size:16px;
  font-weight:400;
  line-height:normal;
  color:var(--re-text);
  background:#fff;
  -webkit-font-smoothing:auto;/* Divi: antialiased, Schrift wirkt dünner als im Entwurf */
  -moz-osx-font-smoothing:auto;
}
h1,h2,h3,h4,h5,h6{font-family:var(--re-serif);font-weight:400;color:var(--re-brand);}
a{color:var(--re-brand);text-decoration:none;}
a:hover{color:var(--re-brand-dark);}
::selection{background:var(--re-brand);color:#fff;}
img{max-width:100%;}
:is(.et-l--header,.et-l--body,.et-l--footer) :is(h1,h2,h3,h4,h5,h6){padding-bottom:0;font-weight:400;}
:is(.et-l--header,.et-l--footer,.re-hero,.re-sidebar,.re-cards,.re-newsletter-band) p{padding-bottom:0;}
.et_pb_button,.et_pb_module{border-radius:0;}

/* ==========================================================================
   4. Header
   ========================================================================== */
.re-wordmark{
  display:inline-block;
  font-family:var(--re-wordmark-font);
  font-size:var(--re-wm,clamp(28px,4.4vw,58px));
  font-weight:400;
  line-height:1.05;
  letter-spacing:.10em;
  text-transform:uppercase;
  white-space:nowrap;
  color:var(--re-brand);
}
.re-wordmark:hover{color:var(--re-brand);text-decoration:none;}
.re-wordmark-wrap{text-align:center;}
.re-wordmark-wrap p,.re-wordmark-p{margin:0;padding:0;line-height:1.05;}

.re-nav .et-menu{display:flex;gap:44px;flex-wrap:wrap;justify-content:center;margin:0;}
.re-nav .et-menu>li{padding:0;margin:0;}
.re-nav .et_pb_menu__menu>nav>ul>li>a{
  font-family:var(--re-sans);font-size:15px;font-weight:700;letter-spacing:.01em;line-height:normal;
  color:#5A5A5A;padding:0 0 4px;border-bottom:2px solid transparent;opacity:1;
}
.re-nav .et_pb_menu__menu>nav>ul>li>a:hover,
.re-nav .et_pb_menu__menu>nav>ul>li.current-menu-item>a{color:var(--re-brand);border-bottom-color:var(--re-brand);opacity:1;}
.re-nav .et_pb_menu__wrap{justify-content:center;}
/* Divi: .et_pb_menu--without-logo … >li{margin-top:8px} (Header und Footer je +8 px). */
:is(.re-nav,.re-footer-nav).et_pb_menu--without-logo .et_pb_menu__menu>nav>ul>li{margin-top:0;}
.re-nav .et_mobile_nav_menu{display:none!important;}

.re-nav-search .et_pb_code_inner{display:flex;align-items:center;gap:44px;}
.re-nav-sep{display:block;width:1px;height:18px;background:#E0E2DD;}
.re-search-open{
  display:flex;align-items:center;gap:10px;border:0;background:transparent;cursor:pointer;
  font-family:var(--re-sans);font-size:15px;font-weight:700;line-height:normal;color:#707070;
  padding:0 0 4px;border-bottom:2px solid transparent;
}
.re-search-open:hover{color:var(--re-brand);border-bottom-color:var(--re-brand);}
.re-mobile-bar-wrap{display:none;}

/* ==========================================================================
   5. Hero (Bild und Verlauf kommen nativ aus Divi)
   ========================================================================== */
.re-hero .et_pb_text_inner{max-width:620px;}
.re-hero .re-eyebrow{
  margin:0 0 24px;color:#fff;font-size:13px;font-weight:600;letter-spacing:.28em;
  text-transform:uppercase;opacity:.92;line-height:normal;
}
.re-hero h1{
  margin:0 0 28px;color:#fff;font-family:var(--re-wordmark-font);font-size:clamp(26px,3.2vw,42px);
  line-height:1.22;font-weight:400;letter-spacing:.10em;text-transform:uppercase;
}
.re-hero .re-hero__claim{margin:0;color:#F4F5F2;font-size:18px;line-height:1.75;max-width:520px;font-weight:400;}

/* ==========================================================================
   6. Inhalt + Sidebar (Spalten 1 fr / max. 300 px, Abstand 64 px)
   ========================================================================== */
.re-with-sidebar{display:flex!important;flex-wrap:wrap;gap:64px;align-items:flex-start;justify-content:space-between;}/* Leiste im Artikel an derselben Stelle wie auf der Startseite (Burk 06.10.), Text bleibt 760 px */
.re-with-sidebar>.et_pb_column{width:auto!important;margin:0!important;}
.re-with-sidebar>.et_pb_column:first-child{flex:1 1 620px;min-width:0;}
.re-with-sidebar>.re-sidebar{flex:1 1 280px;max-width:300px;min-width:0;position:sticky;top:66px;align-self:flex-start;}
.admin-bar .re-with-sidebar>.re-sidebar{top:98px;}
@media (max-width:980px){.re-with-sidebar>.re-sidebar{position:static;max-width:none;}}

/* ==========================================================================
   7. Karten (Raster nativ im Blog-Modul: 2 Spalten, 40 px)
   ========================================================================== */
.re-cards .et_pb_post{
  display:flex!important;flex-direction:column;margin:0!important;padding:0!important;
  background:#fff;border:0;box-shadow:var(--re-shadow);
  transition:box-shadow var(--re-ease),transform var(--re-ease);
}
.re-cards .et_pb_post:hover{box-shadow:var(--re-shadow-hover);}
.re-cards .et_pb_post .et_pb_image_container{order:1;margin:0!important;overflow:hidden;}
.re-cards .et_pb_post .et_pb_image_container a{display:block;}
.re-cards .et_pb_post .et_pb_image_container img{display:block;width:100%;height:200px!important;object-fit:cover;margin:0!important;}
.re-cards .et_pb_post .et_overlay{display:none!important;}
.re-cards .et_pb_post .post-meta{
  order:2;margin:30px 30px 14px!important;padding:0!important;line-height:normal;
  font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--re-faint);
}
.re-cards .et_pb_post .post-meta a{color:inherit;}
.re-cards .et_pb_post .entry-title{
  order:3;margin:0 30px 16px!important;padding:0!important;
  font-family:var(--re-sans);font-size:20px!important;line-height:1.4!important;font-weight:700;
}
.re-cards .et_pb_post .entry-title a{color:var(--re-brand);}
.re-cards .et_pb_post .entry-title a:hover{color:var(--re-brand-dark);text-decoration:none;}
.re-cards .et_pb_post .post-content{order:4;display:flex;flex-direction:column;flex:1;margin:0 30px 32px;}
.re-cards .et_pb_post .post-content-inner p{margin:0 0 24px;padding:0;font-size:15px;line-height:1.7;color:var(--re-text-soft);}
.re-cards .et_pb_post .more-link{
  margin-top:auto;align-self:flex-start;font-size:14px;font-weight:700;letter-spacing:.02em;line-height:normal;
  color:var(--re-brand);border-bottom:1px solid color-mix(in srgb,var(--re-brand) 35%,transparent);padding-bottom:2px;
}
.re-cards .et_pb_post .more-link:hover{border-bottom-color:var(--re-brand);text-decoration:none;}

/* Knopf "Weitere Beiträge" (Divi 5 setzt die Klasse direkt auf den Link) */
.et_pb_button_module_wrapper:has(>.re-btn){display:flex;justify-content:center;margin:64px 0 0!important;}
a.re-btn.et_pb_button,
a.re-btn.et_pb_button:hover{
  display:inline-block;padding:16px 44px!important;border:0!important;border-radius:0;
  background:var(--re-brand);color:#fff!important;font-family:var(--re-sans);
  font-size:13px!important;font-weight:700;letter-spacing:.18em!important;text-transform:uppercase;line-height:normal!important;
}
a.re-btn.et_pb_button:hover{background:var(--re-brand-dark);}
a.re-btn.et_pb_button::after{display:none!important;}

/* ==========================================================================
   8. Sidebar: Newsletter-Box, Meistgelesen, Anzeige
   ========================================================================== */
/* Newsletter = MailPoet-Formular der Site (Textmodul mit Shortcode). MailPoet setzt
   eigene Stile über #mailpoet_form_<id>, deshalb an einigen Stellen !important. */
.re-signup-box h2{
  margin:0 0 14px;padding:0;font-family:var(--re-serif);font-size:22px;font-weight:400;line-height:normal;
  letter-spacing:.10em;text-transform:uppercase;color:var(--re-brand);text-align:center;
}
.re-signup-box .et_pb_text_inner>p{margin:0 0 26px;padding:0;font-size:14px;line-height:1.7;color:var(--re-text-soft);text-align:center;}
.re-signup .mailpoet_form{padding:0!important;margin:0!important;background:none!important;}
.re-signup form.mailpoet_form{display:flex;flex-direction:column;gap:18px;text-align:left;}
.re-signup .mailpoet_paragraph{margin:0!important;padding:0;}
.re-signup input.mailpoet_text{
  width:100%!important;border:0!important;border-bottom:1px solid var(--re-field-line)!important;border-radius:0!important;
  background:transparent!important;padding:10px 2px!important;font-family:var(--re-sans);font-size:14px;line-height:normal;color:#4A4A4A;
}
.re-signup input.mailpoet_text::placeholder{color:#9A9E96;opacity:1;}
.re-signup input.mailpoet_text:focus{outline:0;border-bottom-color:var(--re-brand)!important;}
.re-signup .mailpoet_paragraph:not(:has(input)){font-size:12px;line-height:1.6;color:var(--re-muted);}
.re-signup .mailpoet_paragraph:not(:has(input)) a{color:inherit;text-decoration:underline;}
.re-signup input.mailpoet_submit{
  width:100%!important;margin:0;border:0!important;border-radius:0!important;background:var(--re-brand)!important;color:#fff!important;cursor:pointer;
  padding:15px 20px!important;font-family:var(--re-sans);font-size:12px!important;font-weight:700;letter-spacing:.18em;text-transform:uppercase;line-height:14px;
}
.re-signup input.mailpoet_submit:hover{background:var(--re-brand-dark)!important;}
.re-signup .mailpoet_message p{margin:0;padding:0;font-size:14px;line-height:1.6;}
/* Band über dem Footer: Name und E-Mail nebeneinander, Knopf darunter (Entwurf). */
.re-newsletter-band .re-signup form.mailpoet_form{display:grid;grid-template-columns:1fr 1fr;column-gap:24px;row-gap:18px;}
.re-newsletter-band .re-signup form.mailpoet_form>*:not(.mailpoet_paragraph:has(input.mailpoet_text)){grid-column:1/-1;}
.re-newsletter-band .re-signup input.mailpoet_text{font-size:15px;padding:12px 2px!important;color:var(--re-text);}
.re-newsletter-band .re-signup input.mailpoet_submit{padding:16px 20px!important;}
@media (max-width:600px){.re-newsletter-band .re-signup form.mailpoet_form{grid-template-columns:1fr;}}
.re-signup :is(.mailpoet_captcha_label,.mailpoet_text_label,label[for*="captcha"]){display:block;margin:0;font-size:13px;font-weight:400;line-height:1.5;color:var(--re-text-soft)!important;font-weight:400!important;}
.re-signup .mailpoet_captcha_container img{max-width:100%;height:auto;}

.re-widget-title{
  margin:0;padding:0 0 14px!important;border-bottom:1px solid var(--re-line);
  font-family:var(--re-serif);font-size:20px;font-weight:400;line-height:normal;
  letter-spacing:.08em;text-transform:uppercase;color:var(--re-brand);
}
.re-widget-head{margin:0 0 -18px!important;}
.re-mini-list .et_pb_post{
  display:grid!important;grid-template-columns:88px 1fr;gap:16px;align-items:center;
  margin:0!important;padding:0!important;border:0;box-shadow:none;background:none;
}
.re-mini-list .et_pb_image_container{margin:0!important;}
.re-mini-list .et_pb_image_container img{display:block;width:88px!important;height:66px!important;object-fit:cover;margin:0!important;}
.re-mini-list .et_overlay{display:none!important;}
.re-mini-list .et_pb_post .entry-title{
  margin:0!important;padding:0!important;font-family:var(--re-sans);font-size:14px!important;line-height:1.5!important;font-weight:700;
}
.re-mini-list .et_pb_post .entry-title a{color:var(--re-ink);}
.re-mini-list .et_pb_post .entry-title a:hover{color:var(--re-brand);}
.re-mini-list .post-meta,.re-mini-list .post-content{display:none!important;}

/* Suchformular (404, Fallback ohne JS) */
.re-searchform{display:flex;gap:16px;align-items:flex-end;max-width:520px;margin-top:28px;}
.re-searchform__input{flex:1;min-width:0;border:0;border-bottom:1px solid var(--re-field-line);background:transparent;border-radius:0;padding:12px 2px;font-family:var(--re-sans);font-size:15px;color:var(--re-text);}
.re-searchform__input:focus{outline:0;border-bottom-color:var(--re-brand);}
.re-searchform .re-cta{background:var(--re-brand);color:#fff;border:0;border-radius:0;padding:15px 28px;font-family:var(--re-sans);font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;}
.re-searchform .re-cta:hover{background:var(--re-brand-dark);}
.re-404 .et_pb_text_inner p{max-width:520px;}

/* Aus unserem Netzwerk: wie Meistgelesen, dazu der Name der Schwesterseite in ihrer Farbe. */
.re-netzwerk .re-widget-title{margin:0 0 22px;}
.re-netzwerk ul.re-netz{list-style:none!important;margin:0!important;padding:0!important;display:flex;flex-direction:column;gap:22px;}
.re-netzwerk ul.re-netz li{list-style:none!important;margin:0!important;padding:0!important;}
.re-netzwerk ul.re-netz li::marker{content:none;}
.re-netz a{display:flex;gap:16px;align-items:flex-start;text-decoration:none;}
.re-netz img,.re-netz__leer{flex:none;display:block;width:88px;height:66px;object-fit:cover;background:var(--re-surface);margin:0!important;}
.re-netz__text{display:flex;flex-direction:column;gap:4px;min-width:0;}
.re-netz__seite{font-size:12px;font-weight:700;letter-spacing:.02em;white-space:nowrap;text-transform:uppercase;line-height:1.3;}
.re-netz__titel{font-size:14px;font-weight:700;line-height:1.5;color:var(--re-ink);}
.re-netz a:hover .re-netz__titel{color:var(--re-brand);}
.re-ad{border:1px solid var(--re-line);padding:26px;text-align:center;}
.re-ad__label{margin:0 0 6px!important;padding:0!important;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#A8ACA4;}
.re-ad__slot{height:210px;display:flex;align-items:center;justify-content:center;background:var(--gcid-re-surface,#F4F6F1);color:#A8ACA4;font-size:13px;}

/* ==========================================================================
   9. Newsletter-Band + Footer
   ========================================================================== */
.re-newsletter-band .et_pb_row{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:56px 80px;align-items:center;}
.re-newsletter-band .et_pb_column{width:auto!important;margin:0!important;}
.re-newsletter-band h2{
  margin:0 0 14px;padding:0;font-family:var(--re-serif);font-size:28px;font-weight:400;line-height:normal;
  letter-spacing:.08em;text-transform:uppercase;color:var(--re-brand);
}
.re-newsletter-band p{margin:0;font-size:16px;line-height:1.75;color:var(--re-text-soft);max-width:460px;}
.re-newsletter-band .et_pb_newsletter_form{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:end;}
.re-newsletter-band .et_pb_newsletter_form p{margin:0;padding:0!important;}
.re-newsletter-band input[type="text"],.re-newsletter-band input[type="email"]{padding:12px 2px!important;font-size:15px;color:#4A4E48!important;}
.re-newsletter-band .et_pb_newsletter_button_wrap{grid-column:1 / -1;}
.re-newsletter-band .et_pb_newsletter_button{margin-top:0;padding:16px 20px!important;}

.re-footer .et_pb_row{display:flex!important;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;}
.re-footer .et_pb_column{width:auto!important;margin:0!important;}
.re-footer-nav .et-menu{display:flex;gap:32px;flex-wrap:wrap;margin:0;}
.re-footer-nav .et-menu>li{padding:0;margin:0;}
.re-footer-nav .et_pb_menu__menu>nav>ul>li>a{font-family:var(--re-sans);font-size:14px;font-weight:400;color:#D9DBD6;padding:0;line-height:normal;}
.re-footer-nav .et_pb_menu__menu>nav>ul>li:first-child>a{color:var(--re-brand-on-dark,var(--re-brand-light));}
.re-footer-nav .et_pb_menu__menu>nav>ul>li>a:hover{color:#fff;}
.re-footer-nav .et_mobile_nav_menu{display:none!important;}
/* Divi blendet die Menüliste unter 980 px aus (Hamburger); im Footer immer die Links zeigen – sonst fehlen am
   Handy Impressum, Datenschutz und die Datenschutz-Einstellungen (Widerruf). */
.re-footer-nav .et_pb_menu__menu{display:block!important;}
@media (max-width:900px){.re-footer-nav .et-menu{gap:14px 24px;}}
.re-copyright{margin:0;font-size:13px;color:#B3B3B3;line-height:normal;}

/* ==========================================================================
   10. Artikel
   ========================================================================== */
.re-kicker{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--re-faint);margin:0 0 20px;}
.re-article{max-width:840px;}/* Entwurf 760; 840 verkleinert die Lücke zur Seitenleiste (Burk 06.10.) */
.re-article .entry-title,.re-article h1{
  font-size:clamp(30px,3.6vw,44px);line-height:1.24;margin:0 0 22px;color:var(--re-brand);
}
.re-meta{
  font-size:14px;color:var(--re-muted);
  margin:0 0 44px;padding-bottom:26px;border-bottom:1px solid var(--re-line);
}
.re-meta a{color:var(--re-text-soft);}

.re-figure,.re-article figure{margin:40px 0;}
.re-article figure:first-child{margin-top:0;}
.re-figure figcaption,.re-article figcaption,.wp-caption-text{
  margin-top:14px;font-size:13px;line-height:1.6;color:var(--re-muted);text-align:left;
}

.re-article .et_pb_post_content p{margin:0 0 26px;padding:0;font-size:17px;line-height:1.8;color:var(--re-text);}
/* D4-Inhalt (publish.py): Divi gibt Textmodulen zusätzlich margin-bottom ≈ 21 px. */
.re-article .et_pb_post_content .et_pb_module.et_pb_text{margin-bottom:0;}
/* publish.py setzt die Bildunterschrift des Beitragsbilds als kursiven ersten Absatz
   (Inline-Stil) in den Inhalt. Im Entwurf: Bildunterschrift 13 px, danach Einleitung 20 px. */
.re-article .et_pb_post_content .et_pb_text:first-child p[style*="italic"]:first-child{
  margin:14px 0 40px!important;font-size:13px!important;font-style:normal!important;line-height:1.6!important;opacity:1!important;color:var(--re-muted);
}
.re-article .et_pb_post_content>p:first-of-type:not(.re-bildunterschrift),
.re-article .et_pb_post_content>p.re-bildunterschrift:first-child+p,
.re-article .et_pb_post_content .et_pb_section:first-child .et_pb_text:first-child:not(:has(p[style*="italic"])) .et_pb_text_inner>p:first-child,
.re-article .et_pb_post_content .et_pb_section:first-child .et_pb_text:first-child:has(p[style*="italic"])+.et_pb_text .et_pb_text_inner>p:first-child{
  font-size:20px;line-height:1.7;color:var(--re-ink);
}
.re-article .et_pb_post_content h2{font-size:29px;line-height:1.35;margin:56px 0 20px;}
.re-article .et_pb_post_content h3{font-family:var(--re-sans);font-size:21px;font-weight:700;line-height:1.4;margin:44px 0 16px;color:var(--re-ink);}
.re-article .et_pb_post_content ul,
.re-article .et_pb_post_content ol{margin:0 0 26px;padding-left:22px;}
.re-article .et_pb_post_content li{margin-bottom:10px;line-height:1.8;}
.re-article .et_pb_post_content blockquote{
  margin:40px 0;padding:0 0 0 28px;border-left:2px solid var(--re-brand);
  font-family:var(--re-serif);font-size:22px;line-height:1.6;color:var(--re-ink);
}
.re-article .et_pb_post_content img{margin:40px 0;}
/* Block-Inhalt (aus Divi-4-Modulen umgewandelt, werkzeug/inhalte-zu-bloecken.php): gleiche Rollen wie oben. */
.re-article .et_pb_post_content>p.re-bildunterschrift{margin:14px 0 40px;font-size:13px;line-height:1.6;color:var(--re-muted);font-style:italic;}/* kursiv wie die Bildunterschriften im Text (Burk 07.10.) */
.re-article .et_pb_post_content>p.re-bildnachweis{font-size:13px;line-height:1.6;color:var(--re-muted);margin:0;}
.re-article .et_pb_post_content figure img{margin:0;display:block;width:100%;height:auto;}
/* Bild aus einer Divi-4-Teilspalte (Text daneben), umgewandelt zu alignright/alignleft: vom Text umflossen, am Handy volle Breite. */
.re-article .et_pb_post_content figure.alignright{float:right;width:40%;max-width:320px;margin:6px 0 24px 32px;}
.re-article .et_pb_post_content figure.alignleft{float:left;width:40%;max-width:320px;margin:6px 32px 24px 0;}
.re-article .et_pb_post_content :is(h2,h3,figure.size-large){clear:both;}
@media (max-width:600px){.re-article .et_pb_post_content figure:is(.alignright,.alignleft){float:none;width:auto;max-width:none;margin:32px 0;}}
/* Links im Fließtext nicht nur über die Farbe erkennbar (WCAG 1.4.1, axe link-in-text-block). */
.re-article .et_pb_post_content :is(p,li,figcaption) a{text-decoration:underline;text-underline-offset:2px;}
.re-credits{font-size:13px;color:var(--re-muted);margin:0 0 56px;}
/* Fotozeile am Ende des D4-Inhalts (publish.py, kursiver Inline-Stil) = Quellenzeile des Entwurfs. */
.re-article .et_pb_post_content .et_pb_text:last-child p[style*="italic"]:only-child{
  font-size:13px;font-style:normal!important;opacity:1!important;color:var(--re-muted);margin:0;
}

.re-related-head{border-top:1px solid var(--re-line);padding-top:44px;}
.re-related-head h2,.re-related-title{font-size:24px;line-height:normal;margin:0 0 28px;}
.re-related.re-cards .et_pb_post{box-shadow:none;background:none;}
.re-related.re-cards .et_pb_post:hover{box-shadow:none;transform:none;}
.re-related.re-cards .et_pb_post .et_pb_image_container img{height:150px!important;}
.re-related.re-cards .et_pb_post .entry-title{font-size:15px!important;line-height:1.5!important;margin:14px 0 0!important;}
.re-related .post-meta,.re-related .post-content{display:none;}

/* Kommentare */
.re-comments{margin-top:56px;border-top:1px solid var(--re-line);padding-top:44px;}
.re-comments h2,.re-comments h3#reply-title{font-size:24px;line-height:normal;margin:0 0 10px;}
.re-comments h3#reply-title span{font-size:inherit;line-height:inherit;}
.re-comments .comment-notes{font-size:14px;color:var(--re-muted);margin:0 0 28px;padding:0;}
/* Entwurf: Formular max. 620 px, Abstand 22 px, Name/E-Mail/Website in einer Zeile. */
.re-comments #commentform{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:19px;row-gap:22px;max-width:620px;}
.re-comments #commentform>*{grid-column:1/-1;}
.re-comments #commentform>:is(.comment-form-author,.comment-form-email,.comment-form-url){grid-column:auto;}
.re-comments #commentform p{padding:0;margin:0;font-size:14px;}
.re-comments #commentform .comment-notes{margin-bottom:6px;}
/* Labels bleiben für Screenreader, sichtbar sind die Platzhalter wie im Entwurf. Divis Kommentar-Skript
   setzt die Labels per Inline-Stil auf display:none – den zugänglichen Namen liefert deshalb aria-label
   (functions.php). NICHT display erzwingen: dann leert Divis Skript beim Absenden das Spam-Fallenfeld von
   Antispam Bee nicht mehr, und jeder Kommentar wird als Spam gelöscht (Probe 06.10.2026). */
.re-comments #commentform :is(.comment-form-comment,.comment-form-author,.comment-form-email,.comment-form-url)>label{
  position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;
}
.re-comments #commentform .comment-form-cookies-consent label{font-size:13px;color:var(--re-muted);}
.re-comments #commentform .form-submit{margin:6px 0 0;}
.re-comments #commentform .form-submit .et_pb_button,
.re-comments #commentform .form-submit .submit{
  background:var(--re-brand);color:#fff;border:0;border-radius:0;padding:15px 40px;
  font-family:var(--re-sans);font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;line-height:14px!important;
}
.re-comments #commentform .form-submit .et_pb_button:hover{background:var(--re-brand-dark);padding:15px 40px;}
.re-comments #commentform .et_pb_button:after{display:none;}


/* ==========================================================================
   11. Formularfelder (global: Kommentare, Kontakt, Newsletter)
   ========================================================================== */
.et_pb_contact_form input[type="text"],
.et_pb_contact_form input[type="email"],
.re-comments #commentform input[type="text"],
.re-comments #commentform input[type="email"],
.re-comments #commentform input[type="url"]{
  width:100%;border:0;border-bottom:1px solid var(--re-field-line);background:transparent;
  padding:10px 2px;font-family:var(--re-sans);font-size:15px;line-height:normal;color:var(--re-text);border-radius:0;
}
.et_pb_contact_form textarea,
.re-comments #commentform textarea{
  width:100%;border:1px solid var(--re-line-strong);background:#FBFCFA;
  padding:16px;font-family:var(--re-sans);font-size:15px;line-height:1.7;color:var(--re-text);
}
.re-comments #commentform textarea{height:154px;min-height:0;}
.et_pb_contact_form input:focus,
.et_pb_contact_form textarea:focus,
.re-comments input:focus,
.re-comments textarea:focus{outline:0;border-color:var(--re-brand);}
:is(.et_pb_contact_form,.re-comments) ::placeholder{color:#9A9E96;opacity:1;}
.et_pb_contact_form_container .et_pb_contact_field{padding:0 16px 32px 0;}
/* Kontakt (natives D5-Formular), Maße aus dem Entwurf: Karte 760 px, Raster 32 px. */
.re-kontakt-intro{text-align:center;}
.re-kontakt-intro h1{font-size:clamp(28px,3.4vw,40px);line-height:1.3;margin:0 0 20px;}
.re-kontakt-intro p{font-size:17px;line-height:1.8;color:var(--re-text-soft);margin:0 0 56px;padding:0;}
.re-form-card{width:100%;background:#fff;box-shadow:var(--re-shadow);padding:clamp(28px,4vw,52px) clamp(24px,4.5vw,56px) 56px!important;}
.re-form-card form.et_pb_contact_form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin:0;}
.re-form-card .et_pb_contact_field{grid-column:1/-1;width:auto!important;max-width:none!important;flex:none!important;margin:0!important;padding:0!important;}
.re-form-card .et_pb_contact_field.et_flex_column_12_24{grid-column:auto;}
/* Labels bleiben für Screenreader, sichtbar sind die Platzhalter. */
.re-form-card :is(.et_pb_contact_form_label,.et_pb_contact_field_options_title){
  position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;
}
.re-form-card .et_pb_contact_form .input:not([type="checkbox"]):not(textarea){
  width:100%;background:transparent!important;border:0!important;border-bottom:1px solid var(--re-field-line)!important;border-radius:0!important;
  padding:12px 2px!important;font-family:var(--re-sans);font-size:15px!important;line-height:normal;color:var(--re-text)!important;
}
.re-form-card .et_pb_contact_form textarea.input{
  width:100%;height:213px;min-height:0;background:#FBFCFA!important;border:1px solid var(--re-line-strong)!important;border-radius:0!important;
  padding:16px!important;font-family:var(--re-sans);font-size:15px!important;line-height:1.7;color:var(--re-text)!important;
}
.re-form-card .et_pb_contact_form .input:focus{border-color:var(--re-brand)!important;outline:0;}
.re-form-card .et_pb_contact_field_checkbox label{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.6;color:var(--re-text-soft);}
.re-form-card .et_pb_contact_field_checkbox label i{flex:none;width:16px;height:16px;margin-top:3px;background:#fff!important;border:1px solid var(--re-line-strong);}
.re-form-card .et_pb_contact_field_checkbox input:checked+label i{background:var(--re-brand)!important;border-color:var(--re-brand);}
.re-form-card .et_pb_contact_field_checkbox a{color:var(--re-brand);margin-left:4px;}
.re-form-card .et_contact_bottom_container{
  grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:32px;float:none;width:auto;
  margin:8px 0 0!important;padding-top:32px;border-top:1px solid var(--re-line);
}
.re-form-card .et_pb_contact_right{margin:0!important;}
.re-form-card .et_pb_contact_right p{margin:0;padding:0;}
.re-form-card .et_pb_contact_right label{display:flex;align-items:center;gap:14px;font-size:15px;font-weight:700;color:var(--re-text-soft);}
.re-form-card .et_pb_contact_captcha_question{font-size:15px;font-weight:700;color:var(--re-text-soft);}
.re-form-card .et_pb_contact_form input.et_pb_contact_captcha{width:88px!important;padding:10px 2px!important;}
.re-form-card .et_pb_button_wrapper{margin:0;}
.re-form-card .et_pb_contact_submit.et_pb_button{
  margin:0!important;background:var(--re-brand)!important;color:#fff!important;border:0!important;border-radius:0!important;
  padding:16px 48px!important;font-family:var(--re-sans);font-size:12px!important;font-weight:700;letter-spacing:.18em;text-transform:uppercase;line-height:14px!important;
}
.re-form-card .et_pb_contact_submit.et_pb_button:hover{background:var(--re-brand-dark)!important;padding:16px 48px!important;}
.re-form-card .et_pb_contact_submit.et_pb_button::after{display:none!important;}
@media (max-width:600px){
  .re-form-card form.et_pb_contact_form{grid-template-columns:1fr;}
  .re-form-card .et_pb_contact_field.et_flex_column_12_24{grid-column:1/-1;}
  .re-form-card .et_contact_bottom_container{flex-direction:column;align-items:flex-start;}
  .re-form-card{padding:28px 18px 56px!important;}
}
input[type="checkbox"]{accent-color:var(--re-brand);}

/* ==========================================================================
   12. Archivkopf, Seiten, Rechtstexte
   ========================================================================== */
.re-archive-head{background:var(--re-surface);border-bottom:1px solid var(--re-line);}
.re-archive-head .re-eyebrow{
  font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  color:var(--re-muted);/* Kopf hat hellen Grund, faint reicht dort nicht für 4,5:1 */margin:0 0 14px;
}
.re-archive-head h1{font-size:clamp(28px,3.4vw,40px);margin:0 0 18px;}
.re-archive-head p{max-width:640px;font-size:17px;line-height:1.75;color:var(--re-text-soft);margin:0;}
.re-pages{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:64px;}
.re-pages .page-numbers{
  display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:42px;padding:0 14px;
  border:1px solid var(--re-line-strong);font-size:14px;font-weight:700;color:var(--re-text-soft);text-decoration:none;
}
.re-pages a.page-numbers:hover{border-color:var(--re-brand);color:var(--re-brand);}
.re-pages .page-numbers.current{background:var(--re-brand);border-color:var(--re-brand);color:#fff;}
.re-pages .page-numbers.dots{border:0;min-width:0;padding:0 4px;}

.re-page{max-width:760px;margin:0 auto;}
/* Rechtliches (Impressum, Datenschutz), Maße aus dem Entwurf. */
.re-legal-page .re-eyebrow{margin:0 0 16px;font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--re-faint);}
.re-legal-page .entry-title{font-size:clamp(30px,3.6vw,42px);line-height:1.25;margin:0 0 26px;padding:0;}
.re-legal-stand p{margin:0 0 48px;padding:0 0 26px;border-bottom:1px solid var(--re-line);font-size:14px;color:var(--re-muted);}
.re-legal-page .et_pb_post_content :is(h2,h3){font-family:var(--re-serif);font-weight:400;font-size:25px;line-height:1.35;color:var(--re-brand);margin:52px 0 18px;padding:0;}
.re-legal-page .et_pb_post_content :is(h2,h3):first-child{margin-top:0;}
.re-legal-page .et_pb_post_content :is(h4,h5,h6){font-family:var(--re-sans);font-weight:700;font-size:17px;line-height:1.5;color:var(--re-ink);margin:32px 0 12px;padding:0;}
.re-legal-page .et_pb_post_content :is(p,li){font-size:17px;line-height:1.8;color:var(--re-text);}
.re-legal-page .et_pb_post_content p{margin:0 0 20px;padding:0;}
.re-legal-page .et_pb_post_content ul,.re-legal-page .et_pb_post_content ol{margin:0 0 20px;padding-left:22px;}
.re-legal-page .et_pb_post_content .et_pb_module.et_pb_text{margin-bottom:0;}
.re-legal-page .et_pb_post_content :is(.et_pb_section,.et_pb_row){padding:0!important;width:100%!important;max-width:none!important;}
.re-legal-page .et_pb_post_content a{color:var(--re-brand);text-decoration:underline;word-break:break-word;}
.re-page h1{font-size:clamp(28px,3.4vw,40px);line-height:1.3;margin:0 0 20px;}
.re-page .re-lead{font-size:17px;line-height:1.8;color:var(--re-text-soft);margin:0 0 56px;}

body.re-legal .re-newsletter-band{display:none;}
body.re-legal .re-page .et_pb_post_content>p:first-of-type{font-size:17px;color:var(--re-text);}
body.re-legal .re-page h2{font-size:25px;margin:52px 0 18px;}
body.re-legal .re-page .re-stand{
  font-size:14px;color:var(--re-muted);margin:0 0 48px;padding-bottom:26px;border-bottom:1px solid var(--re-line);
}
.re-legal-links{border-top:1px solid var(--re-line);padding-top:32px;display:flex;gap:32px;flex-wrap:wrap;}
.re-legal-links a{font-size:15px;font-weight:700;}

/* ==========================================================================
   13. Vollbild-Suche
   ========================================================================== */
.re-search{position:fixed;inset:0;z-index:100000;background:var(--re-search-bg);overflow-y:auto;display:none;}
.re-search.is-open{display:block;}
body.re-search-lock{overflow:hidden;}
.re-search__inner{max-width:1100px;width:100%;margin:0 auto;padding:44px var(--re-gutter) 96px;}
.re-search__top{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:clamp(48px,9vh,104px);}
.re-search__brand{font-size:12px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--re-brand-light);}
.re-search__close{
  display:flex;align-items:center;gap:12px;border:0;background:transparent;cursor:pointer;
  font-family:var(--re-sans);font-size:12px;font-weight:700;letter-spacing:.18em;
  text-transform:uppercase;color:#B9BFB4;padding:8px 0;
}
.re-search__close:hover{color:#fff;}
.re-search__close span{
  display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;
  border:1px solid rgba(255,255,255,.28);font-size:16px;font-weight:400;letter-spacing:0;
}
.re-search__label{display:block;font-size:12px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:#8A9483;margin-bottom:22px;}
.re-search__field{display:flex;align-items:center;gap:20px;border-bottom:1px solid rgba(255,255,255,.22);padding-bottom:18px;}
.re-search__input{
  flex:1;min-width:0;border:0;background:transparent;outline:0;color:#fff;
  font-family:var(--re-serif);font-size:clamp(26px,4.6vw,54px);line-height:1.2;padding:0;caret-color:var(--re-brand-light);
}
.re-search__count{font-size:13px;letter-spacing:.10em;text-transform:uppercase;color:#6E7A68;white-space:nowrap;}
.re-search__results{display:flex;flex-direction:column;margin-top:56px;}
.re-search__hit{display:grid;grid-template-columns:120px minmax(0,1fr);gap:28px;align-items:center;padding:22px 0;border-bottom:1px solid rgba(255,255,255,.10);}
.re-search__hit:hover{text-decoration:none;}
.re-search__hit img{width:120px;height:80px;object-fit:cover;}
.re-search__hit-cat{display:block;margin-bottom:8px;font-family:var(--re-sans);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--re-brand-light);}
.re-search__hit-title{display:block;font-family:var(--re-serif);font-size:21px;line-height:1.35;color:#fff;}
.re-search__empty{margin:56px 0 0;font-family:var(--re-serif);font-size:22px;line-height:1.6;color:#B9BFB4;}
.re-search__panels{margin-top:clamp(48px,8vh,88px);display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:56px;}
.re-search__panel-title{margin:0 0 22px;font-family:var(--re-sans);font-size:12px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:#8A9483;}
.re-search__chips{display:flex;flex-wrap:wrap;gap:12px;}
.re-search__chip{
  border:1px solid rgba(255,255,255,.24);background:transparent;color:#E4E8E0;
  font-family:var(--re-sans);font-size:14px;padding:11px 20px;cursor:pointer;transition:border-color var(--re-ease),color var(--re-ease);
}
.re-search__chip:hover{border-color:var(--re-brand-light);color:var(--re-brand-light);}
.re-search__cats{display:flex;flex-direction:column;gap:14px;}
.re-search__cats a{font-family:var(--re-serif);font-size:24px;color:#fff;}
.re-search__cats a:hover{color:var(--re-brand-light);text-decoration:none;}
.re-search [hidden]{display:none!important;}

@media (prefers-reduced-motion:reduce){
  *{transition:none!important;animation:none!important;}
  .re-cards .et_pb_post:hover{transform:none;}
}

/* ==========================================================================
   Uebernommen aus child-divi (Fix 22.07.2026): YARPP "Diese Beitraege koennten
   Sie ebenfalls interessieren" — Divi ueberschreibt die 120x120-Thumbnailgroesse
   des Plugins, das Bild laeuft ueber das Kommentarformular.
   Greift nur, solange YARPP aktiv ist; das Redesign nutzt stattdessen .re-related.
   ========================================================================== */
.yarpp-related{overflow:hidden;clear:both;}
.yarpp-thumbnails-horizontal .yarpp-thumbnail{height:auto;overflow:hidden;}
.yarpp-thumbnails-horizontal .yarpp-thumbnail>img{width:120px !important;height:120px !important;object-fit:cover;display:block;}

/* ==========================================================================
   14. Mobilnavigation: Leiste "Rubriken" + "Suche" und Vollbildmenü
   ========================================================================== */
.re-mobile-bar{
  display:none;
  align-items:center;justify-content:space-between;gap:16px;
  padding:14px 0 16px;border-top:1px solid #EDEFEA;
}
.re-mobile-bar__btn,
.re-mobile-bar .re-search-open{
  display:flex;align-items:center;gap:10px;
  border:1px solid #E0E2DD;background:transparent;cursor:pointer;
  color:#4A4A4A;font-family:var(--re-sans);font-size:13px;font-weight:700;
  letter-spacing:.10em;text-transform:uppercase;
  padding:11px 16px;min-height:44px;
}
.re-mobile-bar__btn:hover,
.re-mobile-bar__btn:focus-visible{color:var(--re-brand);border-color:var(--re-brand);}

.re-menu{
  position:fixed;inset:0;z-index:100000;
  background:var(--re-deep);
  display:flex;flex-direction:column;overflow-y:auto;
}
.re-menu[hidden]{display:none;}
.re-menu__top{
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:20px var(--re-gutter);border-bottom:1px solid rgba(255,255,255,.16);
}
.re-menu__brand{
  font-family:var(--re-wordmark-font);font-size:20px;letter-spacing:.10em;
  text-transform:uppercase;color:var(--re-brand-light);
}
.re-menu__close{
  display:flex;align-items:center;justify-content:center;width:44px;height:44px;
  border:1px solid rgba(255,255,255,.28);background:transparent;color:#fff;
  font-size:20px;cursor:pointer;
}
.re-menu__nav{display:flex;flex-direction:column;padding:24px var(--re-gutter) 8px;}
.re-menu__nav--service{padding:28px var(--re-gutter) 48px;}
.re-menu__title{
  margin:0 0 10px;font-size:11px;font-weight:700;letter-spacing:.22em;
  text-transform:uppercase;color:rgba(255,255,255,.55);
}
.re-menu__nav a{
  display:flex;align-items:center;min-height:52px;padding:6px 0;
  border-bottom:1px solid rgba(255,255,255,.14);
  font-family:var(--re-serif);font-size:24px;color:#fff;text-decoration:none;
}
.re-menu__nav a:hover,.re-menu__nav a:focus-visible{color:var(--re-brand-light);text-decoration:none;}
.re-menu__search{
  margin-top:28px;border:1px solid var(--re-brand-light);background:transparent;
  color:var(--re-brand-light);font-family:var(--re-sans);font-size:13px;font-weight:700;
  letter-spacing:.16em;text-transform:uppercase;padding:16px 20px;cursor:pointer;min-height:48px;
}
body.re-menu-lock{overflow:hidden;}

/* ==========================================================================
   15. Anzeige-Kennzeichnung (bezahlte Beiträge, Kategorie "advertorial")
   ========================================================================== */
.category-advertorial .entry-title::before,
.re-advertorial .re-kicker .et_pb_text_inner::after{
  content:"Anzeige";
  display:inline-block;
  font-family:var(--re-sans);font-size:11px;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;line-height:1;
  color:#5A5A5A;border:1px solid #C9CDC4;padding:4px 7px 3px;
}
.category-advertorial .entry-title::before{display:table;margin:0 0 10px;}
.re-advertorial .re-kicker .et_pb_text_inner::after{margin-left:12px;vertical-align:1px;}

/* ==========================================================================
   16. Umschaltpunkt 900 px (Entwurf "Mobilversion")
   Außenabstände 18 px, Hero 400 px, Desktop-Navigation aus, Leiste an,
   Wortmarke 17–30 px, Newsletter-Band einspaltig. Die Sidebar rückt schon
   ab 980 px unter den Inhalt (Abschnitt 7).
   ========================================================================== */
html,body{overflow-x:clip;}/* clip statt hidden: hidden macht body zum Scroll-Container, dann greift sticky nicht */
@media (max-width:900px){
  .re-comments #commentform{grid-template-columns:1fr;}
  .re-comments #commentform>:is(.comment-form-author,.comment-form-email,.comment-form-url){grid-column:1/-1;}
  :root{--re-gutter:18px;--re-col-gap:34px;--re-wm:clamp(17px,5.6vw,30px);--re-hero-h:400px;}
  .re-header .re-nav,
  .re-header .re-nav-search,
  .re-header .re-search-open:not(.re-mobile-bar .re-search-open){display:none!important;}
  .re-header .re-mobile-bar-wrap{display:block!important;width:100%;flex:1 1 100%;}
  .re-mobile-bar{display:flex;}
  .re-header .re-mobile-bar{margin:0 -18px;padding:14px 18px 16px;}/* Linie randlos wie im Entwurf */

  .re-hero{min-height:400px!important;}
  .re-newsletter-band .et_pb_row{flex-direction:column;}
  .re-newsletter-band .et_pb_column{width:100%!important;margin-right:0!important;}
  .re-newsletter-band input{min-width:0;}
}

/* Kontrast (WCAG AA): Bildunterschriften im Altinhalt tragen inline opacity:.7 – das drückt
   den Kontrast unter 4,5:1. Farbe kommt stattdessen aus --re-muted. */
.re-article .et_pb_post_content p[style*="opacity"]{opacity:1!important;color:var(--re-muted);}

/* Kommentarformular: Zeilenhöhe der Beschriftungen fest, sonst hängt sie davon ab, ob der Beitrag
   die Divi-Builder-Markierung trägt (Divi setzt dann eine andere Grundzeilenhöhe). */
.re-comments #commentform :is(label,.required,.logged-in-as span){line-height:1.6;}

/* ==========================================================================
   17. Einwilligungsabfrage (inc/einwilligung.php) – nur Statistik (GA4).
   Beide Knöpfe gleich gestaltet: Ablehnen muss so leicht sein wie Zustimmen.
   ========================================================================== */
.re-einwilligung{position:fixed;left:24px;bottom:24px;z-index:99999;max-width:440px;background:#fff;
  border:1px solid var(--re-line-strong);box-shadow:var(--re-shadow-hover);padding:22px 24px;
  font-family:var(--re-sans);font-size:14px;line-height:1.6;color:var(--re-text);}
.re-einwilligung[hidden]{display:none;}
.re-einwilligung__titel{margin:0 0 6px;font-family:var(--re-serif);font-size:20px;line-height:1.3;color:var(--re-brand);padding:0;}
.re-einwilligung__text{margin:0 0 16px;padding:0;}
.re-einwilligung__text a{color:var(--re-brand);text-decoration:underline;}
.re-einwilligung__knoepfe{display:flex;gap:12px;}
.re-einwilligung__knoepfe button{flex:1;cursor:pointer;font-family:var(--re-sans);font-size:12px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;padding:13px 10px;border:1px solid var(--re-brand);
  background:var(--re-brand);color:#fff;border-radius:0;}
.re-einwilligung__knoepfe button:hover{background:var(--re-brand-dark);border-color:var(--re-brand-dark);}
.re-einwilligung__knoepfe button:focus-visible{outline:2px solid var(--re-brand);outline-offset:2px;}
@media (max-width:600px){.re-einwilligung{left:12px;right:12px;bottom:12px;max-width:none;padding:18px;}}

/* ==========================================================================
   18. Block-Editor-Farbpalette: zu helle Grautöne (z. B. Bildquellen in
   Gutenberg-Beiträgen, cyan-bluish-gray #abb8c3 = 2:1) auf lesbaren Kontrast.
   ========================================================================== */
body{--wp--preset--color--cyan-bluish-gray:var(--re-muted);}

/* ==========================================================================
   19. Nur für Screenreader (WordPress-Standardklasse), z. B. „öffnet in neuem Tab“.
   ========================================================================== */
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important;}

/* ==========================================================================
   20. Kommentarliste: Antworten-Link als kleiner Textlink statt Divi-Knopf (Burk 07.10.).
   ========================================================================== */
.comment-reply-link{display:inline-block;margin-top:8px;padding:0!important;border:0!important;border-radius:0!important;background:none!important;
  font-family:var(--re-sans);font-size:12px!important;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1.6!important;color:var(--re-brand)!important;}
.comment-reply-link:after,.comment-reply-link:before{display:none!important;content:none!important;}
.comment-reply-link:hover,.comment-reply-link:focus-visible{text-decoration:underline;text-underline-offset:3px;}

/* ==========================================================================
   21. Übernommen aus dem alten „Zusätzlichen CSS“ (child-divi). Divi hat es beim Theme-Wechsel
   je Site in den Customizer kopiert, und der freigegebene Redesign-Look hängt an diesen Regeln
   (Pixelvergleich 07.10.2026: ohne sie z. B. Seitenleiste 75 px tiefer). Nur die Regeln, die im
   Bestand noch etwas treffen (Kommentar-Link nur auf Seiten mit Kommentaren!); Altmenü, YARPP, Kategorie-Widget, Infobox „rob“ entfallen.
   Danach wird das Customizer-CSS der Site geleert (Umstiegs-Ablauf).
   ========================================================================== */
.et_mobile_menu{overflow:scroll!important;max-height:83vh;}
.comment_area .comment-reply-link{position:relative;top:7px;right:0;display:inline-block;}
.page_title{font-size:medium;}
.et_pb_image_container img,.et_pb_post a img{vertical-align:bottom;float:left;width:330px;height:370px;margin-right:40px;margin-bottom:20px;object-fit:cover;object-position:center;}
article,aside,footer,header,hgroup,nav,section{display:flow-root;}
#trackbacks{display:none;}
.et_pb_blog_grid h2,.et_pb_blog_grid h3,.et_pb_post h3,.et_pb_blog_grid h4,.et_pb_post h4,.et_pb_blog_grid h5,.et_pb_post h5{font-size:1.8em;}
.et_pb_post h1{font-size:2em;}
.et_pb_post h2{font-size:1.6em;}
figcaption{font-style:italic;}
#left-area ul,.comment-content ul,.entry-content ul,.et-l--body ul,.et-l--footer ul,.et-l--header ul,body.et-pb-preview #main-content .container ul{padding:1em 3em 1em 3em;margin-top:10px;margin-bottom:10px;}
#left-area ol,.comment-content ol,.entry-content ol,.et-l--body ol,.et-l--footer ol,.et-l--header ol,body.et-pb-preview #main-content .container ol{padding:1em 1em 1em 3em;margin-top:10px;margin-bottom:10px;}
.wp-block-image figcaption{text-align:left!important;line-height:18px;font-family:arial;margin-bottom:1em;margin-top:.5em;}
.alignleft img{padding:10px 10px 0 0;}
.alignright img{padding:10px 0 0 10px;}
.alignright figcaption{padding-left:10px;}
