/* ==========================================================================
   spirituell-leben.org – Design A „Ruhig & klar“ (05.11.2026)
   Farben/Schriften unverändert (Kit): Grün #47A31A, Hellgrün #85D186,
   Grau #54595F, #F5F5F5, #DDDDDD; Roboto, Roboto Slab, Montserrat.
   Zusätzlich: dunklere Stufe des Markengrüns #2E7D0F für Text/Buttons
   (Kontrast), Hellgrün-Fläche #F1F7EE.
   Abschalten: Enqueue in functions.php entfernen.
   ========================================================================== */

:root {
  --sl-gruen: #47A31A;
  --sl-gruen-dunkel: #2E7D0F;
  --sl-gruen-hell: #85D186;
  --sl-flaeche: #F1F7EE;
  --sl-grau: #54595F;
  --sl-hellgrau: #F5F5F5;
  --sl-linie: #ECECEC;
  --sl-text: #1d1d1d;
  --sl-slab: "Roboto Slab", Georgia, serif;
  --sl-sans: "Roboto", Arial, sans-serif;
  --sl-label: "Montserrat", Arial, sans-serif;
}

/* ---------- Grundlagen ---------- */
body { background: #fff !important; color: var(--sl-text); }
body, body p, body li { font-family: var(--sl-sans); }
.elementor-widget-text-editor a,
.textcontainer a { color: var(--sl-gruen-dunkel); text-decoration: underline; text-decoration-color: rgba(46,125,15,.35); text-underline-offset: 3px; }
.elementor-widget-text-editor a:hover,
.textcontainer a:hover { color: var(--sl-gruen); }

/* Überschriften im Inhalt: Roboto Slab, nicht mehr in Versalien */
.textcontainer h2,
.elementor-location-single .elementor-widget-text-editor h2 {
  font-family: var(--sl-slab) !important; font-weight: 400 !important; text-transform: none !important;
  font-size: 30px !important; line-height: 1.25 !important; color: #000 !important; margin: 48px 0 16px !important;
}
.textcontainer h3,
.elementor-location-single .elementor-widget-text-editor h3 {
  font-family: var(--sl-slab) !important; font-weight: 400 !important; text-transform: none !important;
  font-size: 22px !important; line-height: 1.3 !important; color: #000 !important; margin: 32px 0 12px !important;
}

/* Trennlinien-Widgets („Trenner“) ausblenden */
.elementor-location-single .elementor-widget-divider,
.home .elementor-widget-divider { display: none !important; }

/* ---------- Buttons ---------- */
.sl-btn,
.elementor-button.sl-btn,
.sl-pill .elementor-button {
  display: inline-flex !important; align-items: center; gap: 10px; min-height: 48px; padding: 0 26px !important;
  border-radius: 24px !important; background: var(--sl-gruen-dunkel) !important; color: #fff !important;
  font-family: var(--sl-label) !important; font-weight: 600 !important; font-size: 14px !important;
  text-transform: none !important; letter-spacing: 0 !important; border: 0 !important; text-decoration: none !important;
}
.sl-btn:hover, .sl-pill .elementor-button:hover { background: var(--sl-gruen) !important; color: #fff !important; }
.sl-btn--hell { background: #fff !important; color: var(--sl-text) !important; border: 1px solid #cfd8cb !important; font-weight: 500 !important; }
.sl-btn--hell:hover { background: var(--sl-flaeche) !important; color: var(--sl-text) !important; }

/* Textlink mit Pfeil (z. B. „Alle Artikel“) */
.sl-mehr .elementor-button {
  background: transparent !important; color: var(--sl-gruen-dunkel) !important; padding: 0 !important; min-height: 44px;
  font-family: var(--sl-label) !important; font-weight: 600 !important; font-size: 14px !important;
  text-transform: none !important; letter-spacing: 0 !important; border: 0 !important; border-radius: 0 !important;
}
.sl-mehr .elementor-button:hover { color: var(--sl-gruen) !important; background: transparent !important; }
.sl-mehr .elementor-button .elementor-button-content-wrapper::after { content: "→"; margin-left: 8px; }
.sl-mehr .elementor-button-icon { display: none !important; }

/* ---------- Kopfzeile ---------- */
.elementor-location-header { background: #fff !important; border-bottom: 1px solid var(--sl-linie); }
.elementor-location-header .elementor-element { background-color: transparent; }
.elementor-location-header .jet-nav__item > a.menu-item-link-top,
.elementor-location-header .jet-nav > .jet-nav__item > a {
  font-family: var(--sl-label) !important; font-size: 14px !important; font-weight: 500 !important;
  text-transform: none !important; letter-spacing: 0 !important; color: var(--sl-text) !important;
}
.elementor-location-header .jet-nav > .jet-nav__item > a:hover,
.elementor-location-header .jet-nav > .jet-nav__item.current-menu-item > a,
.elementor-location-header .jet-nav > .jet-nav__item.current-menu-ancestor > a { color: var(--sl-gruen-dunkel) !important; }
.elementor-location-header .jet-nav > .jet-nav__item.sl-nav-mond > a { color: var(--sl-gruen-dunkel) !important; }
.elementor-location-header .jet-nav__sub { border-radius: 14px; box-shadow: 0 12px 32px rgba(0,0,0,.08); border: 1px solid var(--sl-linie); padding: 8px 0; background: #fff !important; }
.elementor-location-header .jet-nav__sub a { font-family: var(--sl-sans) !important; font-size: 15px !important; text-transform: none !important; color: var(--sl-text) !important; }
.elementor-location-header .jet-nav__sub a:hover { color: var(--sl-gruen-dunkel) !important; background: var(--sl-flaeche) !important; }
.elementor-location-header .jet-ajax-search__field { border-radius: 22px !important; border: 1px solid #ddd !important; background: #fff !important; }

/* ---------- Abschnitts-Köpfe (Startseite) ---------- */
.sl-kopf { border-top: 1px solid var(--sl-linie); padding-top: 40px !important; }
.sl-h2 .elementor-heading-title {
  font-family: var(--sl-slab) !important; font-weight: 400 !important; font-size: 34px !important;
  line-height: 1.2 !important; text-transform: none !important; color: #000 !important;
}
.sl-zitat .elementor-heading-title {
  font-family: var(--sl-slab) !important; font-weight: 300 !important; font-style: normal !important;
  font-size: 18px !important; line-height: 1.5 !important; text-transform: none !important; color: var(--sl-grau) !important;
}
.sl-label, .sl-label .elementor-heading-title {
  font-family: var(--sl-label) !important; font-size: 13px !important; font-weight: 600 !important;
  letter-spacing: .12em !important; text-transform: uppercase !important; color: var(--sl-gruen-dunkel) !important;
}

/* ---------- Karten (JetEngine-Listings) ---------- */
.jet-listing-grid__item .elementor-widget-image img,
.sl-karten .elementor-widget-image img { border-radius: 14px !important; }
.jet-listing-grid__item .elementor-widget-heading .elementor-heading-title {
  font-family: var(--sl-slab) !important; font-weight: 400 !important; text-transform: none !important;
  line-height: 1.3 !important; color: var(--sl-text) !important;
}
.jet-listing-grid__item .elementor-widget-heading .elementor-heading-title a { color: inherit !important; }
.jet-listing-grid__item .elementor-widget-heading .elementor-heading-title a:hover { color: var(--sl-gruen-dunkel) !important; }
.jet-listing-grid__item .jet-listing-dynamic-field__content { color: var(--sl-grau) !important; font-size: 15px !important; line-height: 1.6 !important; }
/* „Mehr lesen“ entfällt – Bild und Titel sind verlinkt */
.jet-listing-grid__item .elementor-widget-jet-listing-dynamic-link .jet-listing-dynamic-link__link:not(.sl-keep) { }
.sl-karten .jet-listing-grid__item .elementor-widget-jet-listing-dynamic-link:last-child,
.sl-karten .jet-listing-grid__item .elementor-widget-button { display: none !important; }

/* Kartenvorlage „Post Minimal Listing“ (1676): Bild 3:2, Titel 22 px */
.elementor-1676 .elementor-element-0b7df0a img { height: auto !important; aspect-ratio: 3 / 2; width: 100% !important; object-fit: cover; }
.elementor-1676 .elementor-element-2e6ee51 .elementor-heading-title { font-size: 22px !important; margin-top: 16px; }
.elementor-1676 .elementor-element-1576acf .jet-listing-dynamic-field__content { font-size: 16px !important; }
.elementor-1676 .elementor-element-fcc05a1 { display: none !important; }

/* Kartenvorlage „Post 2. Minimal Listing“ (1729): quadratisch (Heilsteine/Duftöle) */
.sl-quadrat .elementor-1729 .elementor-element-39746da img { aspect-ratio: 1 / 1; height: auto !important; width: 100% !important; object-fit: cover; }
.sl-quadrat .elementor-1729 .elementor-element-49d41dc .elementor-heading-title { font-size: 19px !important; margin-top: 12px; }
.sl-quadrat .elementor-1729 .elementor-element-bb01ac7,
.sl-quadrat .elementor-1729 .elementor-element-605c800 { display: none !important; }

/* Kartenvorlage „Post Sidebar Listing“ (1775): waagerechte Karte */
.elementor-1775 .elementor-element-fae25a4 img { border-radius: 12px !important; aspect-ratio: 3 / 2; height: auto !important; object-fit: cover; }
.elementor-1775 .elementor-element-a252135 .jet-listing-dynamic-link__link {
  font-family: var(--sl-slab) !important; font-weight: 400 !important; font-size: 19px !important; line-height: 1.3 !important;
  color: var(--sl-text) !important; text-transform: none !important;
}
.elementor-1775 .elementor-element-a252135 .jet-listing-dynamic-link__link:hover { color: var(--sl-gruen-dunkel) !important; }
.elementor-1775 .elementor-element-2b6a952 .jet-listing-dynamic-field__content { font-size: 15px !important; color: var(--sl-grau) !important; }
.elementor-1775 .elementor-element-33e8ff7 { display: none !important; }

/* Kartenvorlage „Post Medium Listing“ (1581): „Weiterlesen“ unter Beiträgen */
.elementor-1581 .elementor-element-2491382 { background: #fff; border-radius: 16px; overflow: hidden; }
.elementor-1581 .elementor-element-a96bf9b img { border-radius: 0 !important; aspect-ratio: 16 / 9; height: auto !important; object-fit: cover; }
.elementor-1581 .elementor-element-70985da .elementor-button {
  background: transparent !important; color: var(--sl-grau) !important; padding: 0 !important; font-family: var(--sl-sans) !important;
  font-size: 13px !important; text-transform: none !important; letter-spacing: 0 !important; border-radius: 0 !important;
}
.elementor-1581 .elementor-element-afcef79 .elementor-heading-title { font-size: 20px !important; }
.elementor-1581 .elementor-element-ddd294d { display: none !important; }

/* ---------- Kästen im Beitragsinhalt ---------- */
.kurzfassung {
  border-left: 0 !important; background: var(--sl-flaeche) !important; border-radius: 18px !important;
  padding: 26px 30px !important; margin: 0 0 32px !important;
}
.kurzfassung > strong:first-child {
  display: block; font-family: var(--sl-label); font-size: 13px; font-weight: 600; letter-spacing: .12em;
  text-transform: uppercase; color: var(--sl-gruen-dunkel); margin-bottom: 4px;
}
.hinweis-gesundheit { border-radius: 14px !important; }
.textcontainer table { border-collapse: collapse; width: 100%; }
.textcontainer th, .textcontainer td { border-bottom: 1px solid var(--sl-linie); padding: 10px 12px; text-align: left; }
.textcontainer img { border-radius: 14px; }
.textcontainer blockquote {
  margin: 32px 0; padding: 0 0 0 0; border: 0; font-family: var(--sl-slab); font-weight: 300; font-size: 24px; line-height: 1.45; color: #000;
}

/* Inhaltsverzeichnis */
.elementor-widget-table-of-contents .elementor-toc__header { border-bottom: 0 !important; padding: 22px 28px 6px !important; }
.elementor-widget-table-of-contents .elementor-toc__header-title {
  font-family: var(--sl-label) !important; font-size: 13px !important; font-weight: 600 !important;
  letter-spacing: .12em !important; text-transform: uppercase !important; color: var(--sl-grau) !important;
}
.elementor-widget-table-of-contents .elementor-widget-container { border: 1px solid #e3e3e3 !important; border-radius: 18px !important; background: #fff !important; }
.elementor-widget-table-of-contents .elementor-toc__body { padding: 8px 28px 22px !important; }
.elementor-widget-table-of-contents .elementor-toc__list-item-text { font-size: 16px !important; color: var(--sl-gruen-dunkel) !important; }

/* ---------- Beitragsvorlage ---------- */
.sl-post-kopf .jet-breadcrumbs__item-link,
.sl-post-kopf .jet-breadcrumbs__item-target,
.sl-post-kopf .jet-breadcrumbs__item-sep { color: var(--sl-grau) !important; font-size: 14px !important; }
.sl-post-kopf .jet-breadcrumbs__item-link:hover { color: var(--sl-gruen-dunkel) !important; }
.sl-h1 .elementor-heading-title {
  font-family: var(--sl-slab) !important; font-weight: 300 !important; font-size: 46px !important; line-height: 1.15 !important;
  color: #000 !important; text-transform: none !important;
}
.sl-untertitel .elementor-heading-title {
  font-family: var(--sl-slab) !important; font-weight: 300 !important; font-size: 21px !important; line-height: 1.5 !important;
  color: var(--sl-grau) !important; text-transform: none !important;
}
.sl-byline > .elementor-widget-wrap,
.sl-byline > .elementor-element-populated { display: flex !important; flex-wrap: nowrap !important; align-items: center !important; gap: 14px; }
.sl-byline .elementor-widget { width: auto !important; margin: 0 !important; }
.sl-byline .elementor-widget-image img { width: 44px !important; height: 44px !important; border-radius: 22px !important; object-fit: cover; }
.sl-byline .elementor-heading-title { font-family: var(--sl-sans) !important; font-size: 15px !important; font-weight: 400 !important; color: var(--sl-grau) !important; line-height: 1.4 !important; }
.sl-titelbild img { width: 100% !important; aspect-ratio: 21 / 9; height: auto !important; object-fit: cover; border-radius: 20px !important; }
.sl-lead .elementor-widget-container, .sl-lead { font-size: 21px !important; line-height: 1.6 !important; }
.elementor-location-single .textcontainer { font-size: 18px; line-height: 1.75; }
.elementor-location-single .textcontainer p { margin-bottom: 1.1em; }

/* Autorinnen-Kasten (HTML) */
.sl-autorin { background: var(--sl-hellgrau); border-radius: 18px; padding: 28px; display: flex; flex-wrap: wrap; gap: 24px; align-items: center; }
.sl-autorin img { width: 96px; height: 96px; border-radius: 48px; object-fit: cover; flex-shrink: 0; }
.sl-autorin__text { flex: 1 1 320px; min-width: 0; }
.sl-autorin__name { margin: 0 0 4px; font-family: var(--sl-slab); font-size: 20px; color: #000; }
.sl-autorin__bio { margin: 0 0 10px; font-size: 16px; line-height: 1.6; color: var(--sl-grau); }
.sl-autorin__links { display: flex; flex-wrap: wrap; gap: 6px 24px; font-family: var(--sl-label); font-size: 14px; font-weight: 600; }
.sl-autorin__links a { color: var(--sl-gruen-dunkel); text-decoration: none; min-height: 32px; display: inline-flex; align-items: center; }
.sl-autorin__links a:hover { color: var(--sl-gruen); }

/* Teilen */
.sl-teilen .elementor-heading-title { font-family: var(--sl-slab) !important; font-weight: 400 !important; font-size: 22px !important; text-transform: none !important; color: #000 !important; }
.sl-teilen .elementor-share-btn { border-radius: 22px !important; }

/* Weiterlesen-Band */
.sl-weiterlesen { background: var(--sl-flaeche) !important; }
.sl-weiterlesen .sl-h2 .elementor-heading-title { font-size: 30px !important; }

/* ---------- Startseite: HTML-Blöcke ---------- */
.sl-hero { display: flex; flex-wrap: wrap; gap: 56px; align-items: center; padding: 64px 0 48px; }
.sl-hero__text { flex: 1 1 420px; min-width: 0; }
.sl-hero__kicker { margin: 0 0 16px; font-family: var(--sl-label); font-size: 13px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--sl-gruen-dunkel); }
.sl-hero h1 { margin: 0 0 24px; font-family: var(--sl-slab); font-weight: 300; font-size: 52px; line-height: 1.12; color: #000; text-transform: none; }
.sl-hero__lead { margin: 0 0 32px; font-size: 19px; line-height: 1.65; color: var(--sl-grau); max-width: 540px; }
.sl-hero__knoepfe { display: flex; flex-wrap: wrap; gap: 12px; }
.sl-hero__bild { flex: 1 1 440px; min-width: 0; display: block; color: var(--sl-text) !important; text-decoration: none !important; }
.sl-hero__bild img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; border-radius: 20px; display: block; }
.sl-hero__bildtext { display: flex; gap: 14px; align-items: baseline; margin-top: 16px; }
.sl-hero__bildtext span:first-child { font-family: var(--sl-label); font-size: 12px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--sl-gruen-dunkel); }
.sl-hero__bildtext span:last-child { font-family: var(--sl-slab); font-size: 21px; }
.sl-hero__bild:hover .sl-hero__bildtext span:last-child { color: var(--sl-gruen-dunkel); }

.sl-chips { display: flex; flex-wrap: wrap; gap: 10px; padding: 0 0 56px; }
.sl-chips a { min-height: 44px; display: inline-flex; align-items: center; padding: 0 20px; border-radius: 22px; background: var(--sl-flaeche); color: var(--sl-text) !important; font-size: 15px; text-decoration: none !important; }
.sl-chips a:hover { background: #e3efdc; color: var(--sl-gruen-dunkel) !important; }

.sl-mond { background: var(--sl-flaeche); border-radius: 24px; padding: 40px; display: flex; flex-wrap: wrap; gap: 40px; align-items: center; }
.sl-mond img { flex: 1 1 320px; min-width: 0; width: 100%; max-width: 440px; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 16px; display: block; }
.sl-mond__text { flex: 1 1 380px; min-width: 0; }
.sl-mond h2 { margin: 0 0 16px; font-family: var(--sl-slab); font-weight: 400; font-size: 32px; line-height: 1.2; color: #000; text-transform: none; }
.sl-mond ul { margin: 0 0 28px; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; font-size: 17px; }
.sl-mond li { display: flex; gap: 12px; }
.sl-mond li span { color: var(--sl-gruen-dunkel); font-weight: 500; min-width: 96px; }

.sl-autorin-band { display: flex; flex-wrap: wrap; gap: 48px; align-items: center; }
.sl-autorin-band > img { width: 180px; height: 180px; border-radius: 90px; object-fit: cover; flex-shrink: 0; }
.sl-autorin-band__text { flex: 1 1 420px; min-width: 0; }
.sl-autorin-band h2 { margin: 0 0 14px; font-family: var(--sl-slab); font-weight: 400; font-size: 30px; color: #000; text-transform: none; }
.sl-autorin-band p { margin: 0 0 18px; font-size: 17px; line-height: 1.7; max-width: 620px; }
.sl-autorin-band__mehr { font-family: var(--sl-label); font-weight: 600; font-size: 14px; color: var(--sl-gruen-dunkel) !important; text-decoration: none !important; min-height: 44px; display: inline-flex; align-items: center; }
.sl-autorin-band__mehr::after { content: "→"; margin-left: 8px; }
.sl-buch { flex: 0 1 320px; min-width: 0; display: flex; gap: 18px; align-items: center; background: #fff; border-radius: 16px; padding: 16px; color: var(--sl-text) !important; text-decoration: none !important; }
.sl-buch img { width: 96px; height: 70px; object-fit: cover; border-radius: 8px; flex-shrink: 0; }
.sl-buch small { display: block; font-size: 13px; color: var(--sl-grau); margin-bottom: 4px; }
.sl-buch strong { font-family: var(--sl-slab); font-weight: 400; font-size: 17px; line-height: 1.3; }
.sl-buch:hover strong { color: var(--sl-gruen-dunkel); }

/* ---------- Fußzeile ---------- */
.elementor-location-footer { background: #fff !important; border-top: 1px solid var(--sl-linie); }
.elementor-location-footer .elementor-element-fe28660 { background: transparent !important; }
.elementor-location-footer .elementor-widget-text-editor { color: var(--sl-grau) !important; font-size: 15px; }
.elementor-location-footer .elementor-element-d756c99 p { font-family: var(--sl-label); font-size: 12px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--sl-text) !important; }
.elementor-location-footer .elementor-nav-menu a { font-family: var(--sl-sans) !important; font-size: 15px !important; color: var(--sl-text) !important; text-transform: none !important; }
.elementor-location-footer .elementor-nav-menu a:hover { color: var(--sl-gruen-dunkel) !important; }

/* ---------- Handy ---------- */
@media (max-width: 767px) {
  .sl-hero { padding: 32px 0 24px; gap: 28px; }
  .sl-hero h1 { font-size: 34px; }
  .sl-hero__lead { font-size: 17px; }
  .sl-h2 .elementor-heading-title { font-size: 28px !important; }
  .sl-h1 .elementor-heading-title { font-size: 32px !important; }
  .sl-untertitel .elementor-heading-title { font-size: 18px !important; }
  .sl-mond { padding: 24px; gap: 24px; }
  .sl-mond h2 { font-size: 26px; }
  .sl-autorin-band { gap: 24px; }
  .sl-autorin-band > img { width: 120px; height: 120px; }
  .sl-titelbild img { aspect-ratio: 16 / 10; border-radius: 14px !important; }
  .textcontainer h2, .elementor-location-single .elementor-widget-text-editor h2 { font-size: 25px !important; }
  .elementor-location-single .textcontainer { font-size: 17px; }
}

/* Kit setzt Links auf 500 – in Titeln/Karten nicht gewünscht */
.jet-listing-grid__item .elementor-heading-title a,
.jet-listing-grid__item .jet-listing-dynamic-link__link,
.sl-hero__bildtext span:last-child,
.sl-buch strong { font-weight: 400 !important; }
.sl-chips a { font-weight: 400; }

/* Kopfzeile: Breiten so verteilen, dass das Menü einzeilig bleibt */
@media (min-width: 1025px) {
  .elementor-location-header .elementor-element-873b049 { width: 190px !important; flex: 0 0 190px !important; }
  .elementor-location-header .elementor-element-873b049 img { max-height: 64px; width: auto !important; }
  .elementor-location-header .elementor-element-a133915 { width: auto !important; flex: 1 1 0 !important; min-width: 0; }
  .elementor-location-header .elementor-element-7404526 { width: 190px !important; flex: 0 0 190px !important; }
  .elementor-location-header .jet-nav { flex-wrap: nowrap !important; justify-content: center; }
  .elementor-location-header .jet-nav > .jet-nav__item > a { padding-left: 13px !important; padding-right: 13px !important; white-space: nowrap; }
}

/* Fließtext in Beiträgen: normale Stärke statt Light */
.elementor-location-single .textcontainer,
.elementor-location-single .textcontainer p,
.elementor-location-single .textcontainer li { font-weight: 400 !important; color: var(--sl-text); }

/* Amazon-Produktboxen (ATKP) an Design A angleichen */
.atkp-box { border: 1px solid var(--sl-linie) !important; border-radius: 16px !important; box-shadow: none !important; background: #fff !important; }
.atkp-box .atkp-title, .atkp-box .atkp-title a { font-family: var(--sl-slab) !important; font-weight: 400 !important; font-size: 16px !important; line-height: 1.35 !important; color: var(--sl-text) !important; }
.atkp-box .atkp-title a:hover { color: var(--sl-gruen-dunkel) !important; }
.atkp-box .atkp-button {
  background: #fff !important; color: var(--sl-gruen-dunkel) !important; border: 1px solid #cfd8cb !important; border-radius: 22px !important;
  font-family: var(--sl-label) !important; font-weight: 600 !important; font-size: 13px !important; box-shadow: none !important; text-shadow: none !important;
  min-height: 44px; display: inline-flex !important; align-items: center; justify-content: center;
}
.atkp-box .atkp-button:hover { background: var(--sl-flaeche) !important; }

/* Karte 1581 (Weiterlesen): Innenabstand, Kategorie-Overlay aus, Untertitel dezent */
.elementor-1581 .elementor-element-8e0be19 { display: none !important; }
.elementor-1581 .elementor-element-e64a91e,
.elementor-1581 .elementor-element-671c03e { padding: 0 22px !important; }
.elementor-1581 .elementor-element-e64a91e { padding-top: 18px !important; }
.elementor-1581 .elementor-element-671c03e { padding-bottom: 22px !important; }
.elementor-1581 .elementor-element-4a7e96c .elementor-heading-title {
  font-family: var(--sl-sans) !important; font-size: 15px !important; font-weight: 400 !important; color: var(--sl-grau) !important; margin-top: 4px;
}
.elementor-1581 .elementor-element-16e06f3 { display: none !important; }

/* ---------- Archiv- und Suchseiten ---------- */
.elementor-location-archive .elementor-widget-divider { display: none !important; }
.elementor-1881 .elementor-element-9abca1c .elementor-heading-title,
.elementor-2647 .elementor-widget-heading:first-child .elementor-heading-title {
  font-family: var(--sl-slab) !important; font-weight: 300 !important; font-size: 44px !important; line-height: 1.15 !important;
  text-transform: none !important; color: #000 !important;
}
.elementor-1881 .elementor-element-df79335 .elementor-heading-title {
  font-family: var(--sl-sans) !important; font-weight: 400 !important; font-size: 17px !important; line-height: 1.65 !important;
  color: var(--sl-grau) !important; margin: 12px 0 40px !important; max-width: 720px;
}
.elementor-1881 .elementor-element-0fa1153 p {
  font-family: var(--sl-label) !important; font-size: 13px !important; font-weight: 600 !important; letter-spacing: .12em; text-transform: uppercase; color: var(--sl-grau) !important;
}
.elementor-1881 .elementor-element-a306689 .elementor-heading-title { font-family: var(--sl-sans) !important; font-size: 13px !important; color: var(--sl-grau) !important; text-transform: none !important; }
.elementor-1881 .elementor-element-ae9073a .elementor-heading-title { font-family: var(--sl-slab) !important; font-weight: 400 !important; font-size: 20px !important; text-transform: none !important; color: #000 !important; }
.elementor-1881 .elementor-element-dfa045a img { border-radius: 14px !important; }
.elementor-location-archive .elementor-widget-button .elementor-button {
  border-radius: 24px !important; background: #fff !important; color: var(--sl-gruen-dunkel) !important; border: 1px solid #cfd8cb !important;
  font-family: var(--sl-label) !important; font-weight: 600 !important; font-size: 13px !important; text-transform: none !important; letter-spacing: 0 !important;
}
.elementor-location-archive .elementor-widget-button .elementor-button:hover { background: var(--sl-flaeche) !important; }
/* Kartenvorlage 1604 (Archiv): Bild 3:2, Kategorie-Plakette aus, Untertitel dezent */
.elementor-1604 .elementor-element-76a7216 img { aspect-ratio: 3 / 2; height: auto !important; width: 100% !important; object-fit: cover; }
.elementor-1604 .elementor-element-a9f8658 { display: none !important; }
.elementor-1604 .elementor-element-dee6afe .elementor-heading-title { font-size: 21px !important; margin-top: 14px; }
.elementor-1604 .elementor-element-f2c4205 .elementor-heading-title { font-family: var(--sl-sans) !important; font-size: 15px !important; font-weight: 400 !important; color: var(--sl-grau) !important; }
.jet-blog-posts-pagination a, .jet-blog-posts-pagination span { border-radius: 20px !important; }

/* lange Wörter/geschützte Leerzeichen in Kartentexten umbrechen */
.jet-listing-dynamic-field__content { overflow-wrap: anywhere; }
