/* ==========================================================================
   LSVD Saar – Startseite 0.11.3
   Ruhiger, klarer: ein Überschriften-Stil, Regenbogen nur an Kopf und Fuß,
   Wegweiser unter dem Hero, kompakte nächste Veranstaltung, gleichmäßige
   Kartenreihen. Präfix "body.home .lsvd-original-home", damit diese Regeln
   die Styles aus dem Seiteninhalt überstimmen.
   ========================================================================== */

body.home {
  --lsvd-home-h2: clamp(1.9rem, 3.2vw, 2.6rem);
  --lsvd-home-gap: clamp(56px, 7vw, 96px);
  --lsvd-home-serif: Georgia, "Times New Roman", serif;
}

/* ---------- 1. Ein Stil für alle Abschnitts-Überschriften ---------- */
body.home .lsvd-original-home h2,
body.home .lsvd-original-home .section-title,
body.home .lsvd-original-home .home-story-title,
body.home .lsvd-original-home .lsvd-einblicke-home h2,
body.home .lsvd-original-home .lsvd-home-schedule__heading {
  font-family: var(--lsvd-home-serif) !important;
  font-weight: 600 !important;
  letter-spacing: -0.02em !important;
  line-height: 1.1 !important;
  font-size: var(--lsvd-home-h2) !important;
}
body.home .lsvd-original-home .lsvd-home-schedule__heading { font-size: clamp(1.5rem, 2.2vw, 1.85rem) !important; }
body.home .lsvd-original-home .home-next-event-title { font-size: clamp(2rem, 3.4vw, 2.75rem) !important; }
body.home .lsvd-original-home .home-project-title { font-family: var(--lsvd-home-serif) !important; }

/* Kicker (kleine rote Dachzeile) überall gleich */
body.home .lsvd-original-home .home-next-event-kicker,
body.home .lsvd-original-home .home-story-kicker,
body.home .lsvd-original-home .lsvd-einblick-kicker,
body.home .lsvd-original-home .home-team-kicker,
body.home .lsvd-original-home .home-advice-teaser p.has-text-color:first-child {
  color: var(--lsvd-rot) !important;
  font: 700 .78rem/1.2 ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif !important;
  letter-spacing: .12em !important;
  text-transform: uppercase;
  margin: 0 0 10px !important;
}

/* ---------- 2. Regenbogen sparsam: nur Header, Hero-Strich, Footer ---------- */
body.home .lsvd-original-home .home-next-event-image::after,
body.home .lsvd-original-home .home-next-event-copy::before,
body.home .lsvd-original-home .home-advice-teaser .wp-block-column::after,
body.home .lsvd-original-home .home-impact::before,
body.home .lsvd-original-home .home-story::before,
body.home .lsvd-original-home .home-cta::before {
  display: none !important;
  content: none !important;
}
body.home .lsvd-original-home .home-advice-teaser .home-advice-image { border: 0 !important; border-image: none !important; }
body.home .lsvd-original-home .lsvd-einblick-card img { border-image: none !important; border: 0 !important; }
/* Statt Regenbogen-Unterstreichung ein kurzer roter Strich */
body.home .lsvd-original-home .section-title::after {
  background: var(--lsvd-rot) !important;
  width: 48px !important;
  height: 3px !important;
}
body.home .lsvd-original-home .lsvd-home-schedule__heading {
  border-image: none !important;
  border-bottom: 2px solid var(--lsvd-linie) !important;
  padding-bottom: 14px !important;
}
body.home .lsvd-original-home .home-story { border-left: 0 !important; padding-left: 0 !important; }
body.home .lsvd-original-home .home-rss-cards .wp-block-rss__item,
body.home .lsvd-original-home .wp-block-rss__item { border-top-color: var(--lsvd-linie) !important; border-image: none !important; }

/* ---------- 3. Wegweiser unter dem Hero ---------- */
.lsvd-wegweiser {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  max-width: 1120px;
  margin: 8px auto var(--lsvd-home-gap);
  padding: 0 24px;
  box-sizing: border-box;
}
.lsvd-wegweiser__item {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 22px 52px 22px 24px;
  background: var(--lsvd-papier);
  border: 1px solid var(--lsvd-linie);
  border-radius: 4px;
  color: var(--lsvd-tinte);
  text-decoration: none;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.lsvd-wegweiser__item strong {
  font: 600 1.3rem/1.2 Georgia, "Times New Roman", serif;
  letter-spacing: -0.01em;
}
.lsvd-wegweiser__item span { color: var(--lsvd-stumm); font-size: .95rem; line-height: 1.45; }
.lsvd-wegweiser__item .lsvd-wegweiser__arrow {
  position: absolute; right: 22px; top: 22px;
  color: var(--lsvd-rot); font-size: 1.3rem; font-weight: 700;
  transition: transform .2s ease;
}
.lsvd-wegweiser__item--beratung { border-top: 4px solid var(--lsvd-rot); }
.lsvd-wegweiser__item:hover,
.lsvd-wegweiser__item:focus-visible {
  border-color: var(--lsvd-rot);
  box-shadow: 0 10px 26px rgba(26, 26, 26, .08);
  transform: translateY(-2px);
}
.lsvd-wegweiser__item:hover .lsvd-wegweiser__arrow { transform: translateX(4px); }
@media (max-width: 781px) {
  .lsvd-wegweiser { grid-template-columns: 1fr; gap: 10px; padding: 0 16px; }
  .lsvd-wegweiser__item { padding: 16px 48px 16px 18px; }
  .lsvd-wegweiser__item .lsvd-wegweiser__arrow { top: 50%; transform: translateY(-50%); }
}
@media (prefers-reduced-motion: reduce) {
  .lsvd-wegweiser__item, .lsvd-wegweiser__arrow { transition: none; }
  .lsvd-wegweiser__item:hover { transform: none; }
}

/* Hero etwas kompakter, damit der Wegweiser noch im ersten Bildschirm liegt */
body.home .lsvd-original-home .home-intro { padding-bottom: 32px !important; margin-bottom: 0 !important; }

/* ---------- 4. Nächste Veranstaltung kompakt: Bild links, Text rechts ---------- */
body.home .lsvd-original-home .home-next-event { margin: 0 auto var(--lsvd-home-gap) !important; padding: 0 !important; max-width: 1120px; }
body.home .lsvd-original-home .home-next-event-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr) !important;
  align-items: center;
  background: var(--lsvd-sand);
  border: 1px solid var(--lsvd-linie);
}
body.home .lsvd-original-home .home-next-event-image { height: auto !important; margin: 0 !important; align-self: center; background: var(--lsvd-tinte); }
body.home .lsvd-original-home .home-next-event-image a { display: block; }
/* Plakate tragen Text – nicht beschneiden, im Originalformat zeigen */
body.home .lsvd-original-home .home-next-event-image img {
  width: 100% !important; height: auto !important;
  aspect-ratio: auto !important; object-fit: contain !important;
  display: block;
}
body.home .lsvd-original-home .home-next-event-copy {
  display: block !important;
  padding: clamp(28px, 3.5vw, 48px) !important;
}
body.home .lsvd-original-home .home-next-event-title { margin: 0 0 14px !important; }
body.home .lsvd-original-home .home-next-event-meta { font-weight: 600; margin: 0 0 12px !important; }
body.home .lsvd-original-home .home-next-event-text { margin: 0 0 22px !important; }
@media (max-width: 781px) {
  body.home .lsvd-original-home .home-next-event { margin-left: 16px !important; margin-right: 16px !important; }
  body.home .lsvd-original-home .home-next-event-card { grid-template-columns: 1fr !important; }
}

/* Beratung: Abstand an das neue Raster anpassen */
body.home .lsvd-original-home .home-advice-teaser { margin-top: 0 !important; margin-bottom: var(--lsvd-home-gap) !important; }

/* ---------- 5. Termine & Gruppen: Karten nicht künstlich gleich hoch ---------- */
body.home .lsvd-home-schedule { align-items: start !important; margin-bottom: var(--lsvd-home-gap) !important; }
body.home .lsvd-home-schedule__more a { font-weight: 700; }

/* Zahlenreihe ausblenden, bis echte Werte da sind (Inhalt bleibt im Editor) */
body.home .lsvd-original-home .home-impact:has(.home-impact-number) { display: none !important; }

/* Gruppenfinder-Banner: steckt jetzt im Link der Gruppen-Karte */
body.home .lsvd-original-home .lsvd-group-finder-teaser { display: none !important; }

/* ---------- 6. Projekte: vier kompakte Kacheln nebeneinander ---------- */
@media (min-width: 900px) {
  body.home .lsvd-original-home .home-project-columns {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 20px !important;
  }
}
body.home .lsvd-original-home .home-project-columns > .wp-block-column { display: flex !important; flex-direction: column; padding-bottom: 0 !important; }
body.home .lsvd-original-home .home-project-image { height: auto !important; aspect-ratio: 4 / 3; overflow: hidden; margin: 0 !important; }
body.home .lsvd-original-home .home-project-image img {
  width: 100% !important; height: 100% !important; object-fit: cover !important;
  transition: transform .3s ease;
}
body.home .lsvd-original-home .home-project-columns > .wp-block-column:hover .home-project-image img { transform: scale(1.03); }
body.home .lsvd-original-home .home-project-title {
  min-height: 0 !important;
  padding: 14px 12px 16px !important;
  margin: 0 !important;
  font-size: 1.1rem !important;
  display: flex; align-items: center; justify-content: center; flex: 1;
}
@media (prefers-reduced-motion: reduce) {
  body.home .lsvd-original-home .home-project-image img { transition: none; }
}

/* ---------- 7. Neues: Einblicke + Pressemitteilungen als ein Bereich ---------- */
body.home .lsvd-original-home .lsvd-einblicke-home {
  max-width: 1120px !important;
  padding: 0 24px !important;
  box-sizing: border-box;
  margin: var(--lsvd-home-gap) auto 0 !important;
}
/* Nur ein Beitrag? Dann quer statt bildschirmfüllend */
body.home .lsvd-einblicke-grid:has(> .lsvd-einblick-card:only-child) { grid-template-columns: 1fr !important; }
body.home .lsvd-einblicke-grid > .lsvd-einblick-card:only-child {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
}
body.home .lsvd-einblicke-grid > .lsvd-einblick-card:only-child img { height: 100%; aspect-ratio: 16 / 10; }
body.home .lsvd-einblicke-grid > .lsvd-einblick-card:only-child .lsvd-einblick-card__body { padding: clamp(24px, 3vw, 40px); justify-content: center; }
@media (max-width: 781px) {
  body.home .lsvd-einblicke-grid > .lsvd-einblick-card:only-child { grid-template-columns: 1fr; }
}
body.home .lsvd-original-home .lsvd-einblicke-home__more { margin-bottom: 0; }

/* Pressemitteilungen als Unterbereich, gleiche Breite, ohne eigenes Riesen-Banner */
body.home .lsvd-original-home .home-news-feed {
  max-width: 1120px !important;
  margin: 40px auto var(--lsvd-home-gap) !important;
  padding: 28px 24px 0 !important;
  background: none !important;
  box-shadow: none !important;
  border-top: 1px solid var(--lsvd-linie);
  box-sizing: border-box;
}
body.home .lsvd-original-home .home-news-feed .home-story-title { font-size: clamp(1.4rem, 2vw, 1.7rem) !important; margin: 0 0 6px !important; }
body.home .lsvd-original-home .home-news-feed > p:not(.home-story-kicker) { color: var(--lsvd-stumm); margin-top: 0; }

/* ---------- 8. Kontakt & Mitmachen ---------- */
body.home .lsvd-original-home .home-contact-mini-head { display: flex !important; flex-wrap: wrap !important; gap: 16px 32px !important; align-items: center; justify-content: space-between; }
body.home .lsvd-original-home .home-contact-mini-head h2 { margin: 0 !important; }
body.home .lsvd-original-home .home-cta { padding-top: clamp(48px, 6vw, 72px) !important; padding-bottom: clamp(48px, 6vw, 72px) !important; }
body.home .lsvd-original-home .home-cta .section-title::after { background: var(--lsvd-papier) !important; opacity: .5; }

/* 0.10.1: Abschnitts-Untertitel unter "Pressemitteilungen & Positionen" doppelt sich – ausblenden */
body.home .lsvd-original-home .home-news-feed > p:not(.home-story-kicker):not(:has(a)) { display: none; }
/* Einblick-Titel in derselben Serife wie die Überschriften */
body.home .lsvd-original-home .lsvd-einblick-card__body strong { font-family: var(--lsvd-home-serif) !important; font-weight: 600; }
/* Überschrift im dunklen Mitmachen-Block hell halten */
body.home .lsvd-original-home .home-cta h2 { color: var(--lsvd-papier) !important; }

/* ==========================================================================
   0.11.3 – Eine Breite für die ganze Startseite
   Alle Abschnitte teilen sich dieselbe Inhaltsspalte (--lsvd-home-w) und
   denselben Seitenrand (--lsvd-home-gutter). Kästen (mit Rahmen/Hintergrund)
   sitzen mit ihrer Außenkante auf dieser Spalte; vollflächige Bänder
   (Hero, Team, Kontakt, Mitmachen) behalten ihren Hintergrund bis an den
   Rand, ihr Inhalt beginnt aber auf derselben Kante.
   ========================================================================== */
body.home {
  --lsvd-home-w: 1120px;
  --lsvd-home-gutter: 24px;
}
@media (max-width: 781px) {
  body.home { --lsvd-home-gutter: 16px; }
}

/* A) Kästen: gleiche Außenkante */
body.home .lsvd-original-home > .lsvd-wegweiser,
body.home .lsvd-original-home > .home-advice-teaser,
body.home .lsvd-original-home > .home-next-event,
body.home .lsvd-original-home > .lsvd-home-schedule,
body.home .lsvd-original-home > div:has(> .home-project-columns),
body.home .lsvd-original-home > .lsvd-einblicke-home,
body.home .lsvd-original-home > .home-news-feed {
  box-sizing: border-box !important;
  width: min(100% - 2 * var(--lsvd-home-gutter), var(--lsvd-home-w)) !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
/* Beratungs-Teaser ist ein Kasten mit Hintergrund: Innenabstand behalten */
body.home .lsvd-original-home > .home-advice-teaser {
  padding-left: clamp(20px, 3vw, 32px) !important;
  padding-right: clamp(20px, 3vw, 32px) !important;
}
body.home .lsvd-original-home > .home-advice-teaser > .wp-block-columns,
body.home .lsvd-original-home > div:has(> .home-project-columns) > * {
  max-width: none !important;
  width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* B) Vollflächige Bänder: Inhalt auf derselben Kante wie die Kästen */
body.home .lsvd-original-home > .home-intro,
body.home .lsvd-original-home > .home-team-teaser,
body.home .lsvd-original-home > .home-contact-mini,
body.home .lsvd-original-home > .home-cta {
  box-sizing: border-box !important;
  max-width: none !important;
  padding-left: max(var(--lsvd-home-gutter), calc((100% - var(--lsvd-home-w)) / 2)) !important;
  padding-right: max(var(--lsvd-home-gutter), calc((100% - var(--lsvd-home-w)) / 2)) !important;
}
body.home .lsvd-original-home > .home-intro > .home-intro-inner,
body.home .lsvd-original-home > .home-team-teaser > *,
body.home .lsvd-original-home > .home-contact-mini > .home-contact-mini-inner,
body.home .lsvd-original-home > .home-cta > * {
  box-sizing: border-box;
  max-width: none !important;
  width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
/* Mitmachen: Text mittig lassen, aber lesbar schmal */
body.home .lsvd-original-home > .home-cta > p { max-width: 62ch !important; margin-left: auto !important; margin-right: auto !important; }

/* C) Pressemitteilungen: Innenabstand war der Grund für die schmalere Spalte */
body.home .lsvd-original-home > .home-news-feed { padding-top: 28px !important; }
