/* Projektseite Vielfalt Schützen 0.9.32 – ergänzt beratung.css */

/* Angebote: drei gleich hohe Karten, Link sitzt immer unten */
.lsvd-w-angebote { grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }
.lsvd-w-angebote .lsvd-b-thema { display: flex; flex-direction: column; }
.lsvd-w-angebote .lsvd-b-thema ul { margin-bottom: 20px; }
.lsvd-w-for { margin: 0 0 6px !important; font-size: .75rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--lsvd-rot); }
.lsvd-w-more { margin-top: auto; font-weight: 700; color: var(--lsvd-rot); text-decoration: none; }
.lsvd-w-more:hover { text-decoration: underline; }

/* Sandfläche: Inhalte am gleichen Raster ausrichten wie der Rest der Seite */
.lsvd-workshops .lsvd-b-sand > h2,
.lsvd-workshops .lsvd-b-sand > ul,
.lsvd-workshops .lsvd-b-sand > p { margin-left: auto; margin-right: auto; }
.lsvd-workshops .lsvd-b-sand > p.lsvd-b-small { max-width: calc(var(--b-max) - 48px); }

/* Themen als ruhige Kacheln */
.lsvd-w-topics { list-style: none; margin-top: 0; margin-bottom: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
@media (max-width: 900px) { .lsvd-w-topics { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .lsvd-w-topics { grid-template-columns: 1fr; } }
.lsvd-w-topics li { position: relative; overflow: hidden; padding: 20px 22px 20px 26px; background: var(--lsvd-papier); border-radius: 14px; box-shadow: 0 8px 24px rgba(26,26,26,.06); font-weight: 700; line-height: 1.35; transition: transform .2s ease, box-shadow .2s ease; }
.lsvd-w-topics li:hover { transform: translateY(-4px); box-shadow: 0 14px 34px rgba(26,26,26,.1); }
@media (prefers-reduced-motion: reduce) { .lsvd-w-topics li { transition: none; } .lsvd-w-topics li:hover { transform: none; } }
.lsvd-w-topics li::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 5px; background: linear-gradient(180deg,#d93632,#df7b27,#d5ad2d,#4d9564,#4f78a8,#80609a); }

/* Mitmachen */
.lsvd-w-join { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 24px 48px; align-items: center; padding: clamp(24px, 4vw, 40px); background: var(--lsvd-sand); border-radius: 14px; }
.lsvd-w-join h2 { margin-bottom: 12px !important; }
.lsvd-w-join p:not(.lsvd-kicker) { margin: 0; line-height: 1.55; max-width: 62ch; }
.lsvd-w-join .lsvd-kicker { margin: 0 0 6px; }

@media (max-width: 700px) {
  .lsvd-w-join { grid-template-columns: 1fr; }
}

/* 0.9.34: Ablauf-Schritte bauen sich beim Hinscrollen nacheinander auf.
   Versteckt wird nur, wenn das Skript läuft (.is-reveal) – ohne JS bleibt alles sichtbar. */
.lsvd-b-steps.is-reveal li { opacity: 0; transform: translateY(24px); transition: opacity .6s ease, transform .6s ease; }
.lsvd-b-steps.is-reveal li::before { display: inline-block; transform: scale(.4); transition: transform .5s cubic-bezier(.34,1.56,.64,1); }
.lsvd-b-steps.is-reveal li:nth-child(2) { transition-delay: .25s; }
.lsvd-b-steps.is-reveal li:nth-child(2)::before { transition-delay: .25s; }
.lsvd-b-steps.is-reveal li:nth-child(3) { transition-delay: .5s; }
.lsvd-b-steps.is-reveal li:nth-child(3)::before { transition-delay: .5s; }
.lsvd-b-steps.is-reveal.is-visible li { opacity: 1; transform: none; }
.lsvd-b-steps.is-reveal.is-visible li::before { transform: none; }
@media (prefers-reduced-motion: reduce) {
  .lsvd-b-steps.is-reveal li, .lsvd-b-steps.is-reveal li::before { opacity: 1; transform: none; transition: none; }
}

/* 0.9.37: Wanderausstellung */
.lsvd-a-intro { margin: 0 0 24px; max-width: 70ch; font-size: 1.08rem; line-height: 1.6; }
.lsvd-a-fragen li { font-family: Georgia, "Times New Roman", serif; font-size: 1.12rem; font-weight: 400; }
.lsvd-ausstellung .lsvd-b-sand > dl { margin-left: auto; margin-right: auto; }
.lsvd-a-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-top: 0; margin-bottom: 0; }
.lsvd-a-facts > div { position: relative; overflow: hidden; padding: 24px 22px 22px; background: var(--lsvd-papier); border-radius: 14px; box-shadow: 0 8px 24px rgba(26,26,26,.06); transition: transform .2s ease, box-shadow .2s ease; }
.lsvd-a-facts > div::after { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 5px; background: linear-gradient(90deg,#d93632,#df7b27,#d5ad2d,#4d9564,#4f78a8,#80609a); }
.lsvd-a-facts > div:hover { transform: translateY(-4px); box-shadow: 0 14px 34px rgba(26,26,26,.1); }
.lsvd-a-facts dt { margin: 0 0 6px; font-family: Georgia, "Times New Roman", serif; font-size: clamp(1.7rem, 3vw, 2.3rem); line-height: 1.05; color: var(--lsvd-rot); }
.lsvd-a-facts dd { margin: 0; line-height: 1.45; }
@media (max-width: 900px) { .lsvd-a-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 480px) { .lsvd-a-facts { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { .lsvd-a-facts > div { transition: none; } .lsvd-a-facts > div:hover { transform: none; } }

/* 0.9.38: Fragekarten zum Umdrehen */
.lsvd-a-fragen li { padding: 0; background: none; box-shadow: none; overflow: visible; font-family: inherit; font-weight: inherit; }
.lsvd-a-fragen li::before { display: none; }
.lsvd-a-fragen li:hover { transform: none; box-shadow: none; }
.lsvd-flip { display: block; width: 100%; height: 100%; margin: 0; padding: 0; border: 0; background: none; color: inherit; font: inherit; text-align: left; cursor: pointer; perspective: 1200px; transition: transform .2s ease; }
.lsvd-flip:hover { transform: translateY(-4px); }
.lsvd-flip:focus-visible { outline: 3px solid var(--lsvd-tinte); outline-offset: 4px; border-radius: 14px; }
.lsvd-flip__inner { display: grid; height: 100%; transform-style: preserve-3d; transition: transform .6s cubic-bezier(.2,.7,.3,1); }
.lsvd-flip[aria-pressed="true"] .lsvd-flip__inner { transform: rotateY(180deg); }
.lsvd-flip__face { grid-area: 1 / 1; position: relative; overflow: hidden; display: flex; flex-direction: column; gap: 14px; min-height: 150px; padding: 22px 22px 18px 26px; border-radius: 14px; box-shadow: 0 8px 24px rgba(26,26,26,.06); backface-visibility: hidden; -webkit-backface-visibility: hidden; box-sizing: border-box; }
.lsvd-flip:hover .lsvd-flip__face { box-shadow: 0 14px 34px rgba(26,26,26,.1); }
.lsvd-flip__face::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 5px; background: linear-gradient(180deg,#d93632,#df7b27,#d5ad2d,#4d9564,#4f78a8,#80609a); }
.lsvd-flip__front { background: var(--lsvd-papier); }
.lsvd-flip__back { background: var(--lsvd-tinte); color: #fff; transform: rotateY(180deg); }
.lsvd-flip__q { font-family: Georgia, "Times New Roman", serif; font-size: 1.15rem; line-height: 1.35; }
.lsvd-flip__a { font-size: .95rem; line-height: 1.55; }
.lsvd-flip__hint { margin-top: auto; font-size: .75rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--lsvd-rot); }
.lsvd-flip__back .lsvd-flip__hint { color: #f3b9b3; }
@media (prefers-reduced-motion: reduce) {
  .lsvd-flip, .lsvd-flip__inner { transition: none; }
  .lsvd-flip:hover { transform: none; }
}
