/* Actualites / Social-Wall, Contact-Band, Footer
   Les Bergers Mystiques — aus dem abgenommenen Entwurf v3 ausgelagert.
   Quelle: design-entwurf/index.html, Zeilen 822-911 (unveraendert uebernommen).
   ACHTUNG: Die Einbindungsreihenfolge in <head> ist bedeutungstragend. */

/* Actualités: randlose Social-Wall */
#actus .section-head { text-align: center; max-width: 720px; margin: 0 auto 40px; }
.swall {
  /* volle Breite ohne 100vw-Hack (100vw = Viewport inkl. Scrollbar → X-Scroll) */
  display: grid; grid-template-columns: repeat(6, 1fr);
  gap: 6px; padding: 0 6px;
}
.swall-tile {
  position: relative; display: block; overflow: hidden;
  aspect-ratio: 1/1; text-decoration: none;
  border-radius: 6px;
}
.swall-tile img {
  width: 100%; height: 100%; object-fit: cover;
  transition: transform 0.6s cubic-bezier(0.22,1,0.36,1);
}
.swall-tile:hover img { transform: scale(1.06); }
.swall-veil {
  position: absolute; inset: 0; z-index: 2;
  display: flex; flex-direction: column; justify-content: space-between;
  padding: 14px;
  /* Kein Vollton mehr: nur oben/unten ein Verlauf, damit Datum, Quelle und
     Likes lesbar bleiben — das Foto selbst bleibt frei */
  background: linear-gradient(180deg,
    rgba(16,24,20,0.78) 0%, rgba(16,24,20,0.28) 26%,
    rgba(16,24,20,0) 45%, rgba(16,24,20,0) 58%,
    rgba(16,24,20,0.32) 76%, rgba(16,24,20,0.80) 100%);
  color: var(--creme);
  text-shadow: 0 1px 3px rgba(0,0,0,0.5);
}
.swall-veil .top { display: flex; justify-content: space-between; align-items: center; font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; }
/* Plattform-Badge: weisser Kreis, Logo in der CI-Farbe der Plattform.
   Vorher waren beide Icons cremefarben (geerbt von .swall-veil color) und aus
   der Entfernung nicht zu unterscheiden — Facebook und Instagram sahen gleich
   aus. Facebook faerbt ueber currentColor; Instagram bringt seinen Verlauf im
   eigenen Symbol #i-ig-c mit (siehe tools/build-index.py). */
.swall-veil .top svg {
  width: 26px; height: 26px;
  box-sizing: border-box; padding: 5px;
  background: #fff; border-radius: 50%;
  /* Das Foto darunter kann hell sein — der Schatten setzt den Kreis ab */
  box-shadow: 0 1px 5px rgba(10,16,13,0.35);
  /* Ohne flex:none staucht ein langes Datum den Kreis zur Ellipse */
  flex: none;
}
.swall-veil .top svg:has(use[href="#i-fb"]) { color: #1877F2; }
/* Bildunterschrift entfällt: verdeckte die Motive (Quelle + Datum + Likes reichen) */
.swall-veil .cap { display: none; }
.swall-veil .likes { display: flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; }
.swall-veil .likes svg { width: 15px; height: 15px; }
/* Follow-Herzstück (2x2 mitten in der Wand) */
.swall-cta {
  grid-column: 3 / 5; grid-row: 1 / 3;
  aspect-ratio: auto;
  /* band-bg statt cine-bg: keine dritte Dunkelfarbe im System */
  background: var(--band-bg);
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 14px; text-align: center; padding: 28px;
  color: var(--creme);
  border-radius: 6px;
}
/* BEIDE Kanäle gleichberechtigt: zwei Glyphen statt IG-Solo-Held */
.swall-cta .duo { display: flex; gap: 14px; }
.swall-cta .duo svg { width: 34px; height: 34px; color: var(--teal); }
.swall-cta .handle {
  font-family: var(--font-display); font-style: italic;
  font-size: clamp(19px, 1.9vw, 27px);
}
.swall-cta .sub { font-size: 13px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--band-body); }
.swall-cta .btns { display: flex; gap: 10px; margin-top: 8px; flex-wrap: wrap; justify-content: center; }
.swall-cta .btns a {
  display: inline-flex; align-items: center; gap: 8px;
  text-decoration: none; font-size: 13.5px; font-weight: 650;
  padding: 12px 20px; border-radius: 999px;
  background: var(--teal); color: #10201C;
  transition: transform 0.15s ease, background 0.2s;
}
.swall-cta .btns a:hover { transform: translateY(-2px); }
.swall-cta .btns svg { width: 15px; height: 15px; color: currentColor; }
.feed-hidden { display: none; }
.feed-more {
  margin-top: 34px;
  display: flex; flex-wrap: wrap; gap: 14px; justify-content: center;
}
/* Wie .btn-primary: Band-Dunkelgrün mit Creme-Text (9.0:1 auf Olive).
   Padding fängt den weggefallenen 1.5px-Rahmen auf, die Buttons behalten
   damit exakt ihre bisherige Größe. */
.btn-more {
  font: inherit; font-size: 15px; font-weight: 600; cursor: pointer;
  padding: 15.5px 31.5px; border-radius: 999px;
  border: none; background: var(--band-bg); color: var(--btn-ink);
  box-shadow: 0 8px 24px rgba(15,25,20,0.25);
  transition: background 0.2s, color 0.2s, transform 0.15s;
}
.btn-more:hover { background: #3D5A53; color: var(--btn-ink); transform: translateY(-2px); }
/* Derselbe Knopf, aber als Link — im Endzustand von js/actus.js und dort, wo
   es gar nichts mehr aufzudecken gibt. Stand vorher als Inline-Style im
   JavaScript; das gehoert ins Stylesheet, sonst gibt es zwei Wahrheiten. */
a.btn-more { text-decoration: none; display: inline-block; }

/* Ohne Feed keine Bildwand: dann steht die „Folgen"-Karte allein und wird
   dafuer breiter. Sie behaelt Farbe, Radius und Innenabstand — es soll nach
   Absicht aussehen und nicht nach einem Rest. */
.swall-solo { display: flex; justify-content: center; }
.swall-solo .swall-cta {
  grid-column: auto; grid-row: auto;
  width: 100%; max-width: 560px;
  padding: 44px 28px;
}

.contact-band { background: var(--band-bg); color: var(--band-ink); padding: 96px 0; transition: background 0.5s ease; }
.contact-flex { display: flex; align-items: center; justify-content: space-between; gap: 40px; flex-wrap: wrap; }
.contact-flex h2 { font-family: var(--font-display); font-size: clamp(30px, 3.4vw, 46px); font-weight: 440; line-height: 1.15; max-width: 18ch; }
.contact-flex h2 em { font-style: italic; color: var(--rose-2); }
.contact-info { font-size: 17px; line-height: 2.1; }
.contact-info a { color: var(--rose-2); text-decoration: none; font-weight: 600; }
footer { background: var(--bg-alt); padding: 44px 0; font-size: 13px; color: var(--ink-soft); transition: background 0.5s ease; }
.foot-flex { display: flex; justify-content: space-between; gap: 20px; flex-wrap: wrap; align-items: center; }
