/* Projektseite (Vorlage für alle 8 Projekte) · ziel (Owner: wdf-section-builder, Auftrag B-projekt-vorlage).
   1:1 aus wdf/entwuerfe/projekt-vorlage/entwurf.css (r1), jede Regel im Abschnitt, in dessen Markup ihre Klassen vorkommen, Reihenfolge wie im Entwurf.
   Nur Tokens; freie Werte (Prozent-/svh-Maße der Bühne) wie im Entwurf. */

.pv-ziel-raster { display: grid; gap: var(--space-40); align-items: center; }
.pv-ziel-bild { margin: 0; display: grid; gap: var(--space-12); max-width: 420px; }
.pv-ausschnitt {
  position: relative; border-radius: var(--radius-xl); overflow: hidden; aspect-ratio: 4 / 5;
  padding: var(--space-12); background: linear-gradient(160deg, color-mix(in oklab, var(--pf) 92%, var(--color-white)), color-mix(in oklab, var(--pf) 70%, var(--color-bg)));
  box-shadow: var(--shadow-card-module); }
.pv-ausschnitt img { width: 100%; height: 100%; object-fit: cover; border-radius: var(--radius-lg); box-shadow: var(--shadow-screen); }
.pv-ziel-bild figcaption { color: var(--color-text-tertiary); }
.pv-ziel-text { display: grid; gap: var(--space-32); }
.pv-ziele { display: grid; gap: var(--space-12); counter-reset: none; }
.pv-zielzeile {
  display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-8);
  padding: var(--space-20) var(--space-20) var(--space-16); border-radius: var(--radius-card);
  background: var(--gradient-card-module); box-shadow: var(--shadow-card); }
.pv-ziel-nr { color: var(--color-accent-soft); }
.pv-ziel-satz { font: var(--font-weight-display) var(--font-size-h3) / var(--leading-h3) var(--font-display); letter-spacing: var(--tracking-h3); text-wrap: balance; }
.pv-ziel-weg {
  justify-self: start; display: inline-flex; align-items: center; min-height: var(--size-target-min, var(--space-32));
  color: var(--color-text-secondary); text-decoration: none; border-bottom: 1px solid var(--color-line-strong);
  transition: color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out); }
@media (hover: hover) {
  .pv-ziel-weg:hover { color: var(--color-text); border-bottom-color: var(--color-accent); }
}
@media (min-width: 768px) {
  .pv-ziel-raster { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); column-gap: var(--space-64); }
  .pv-ziel-bild { max-width: none; }
}
