/* Zeichenfabrik -- Startseite, sektionsspezifische Stile. Die seitenübergreifende Kurskachel
   (.kurs-karte* etc.) und das Bild-Platzhalter-Muster (.bild-platzhalter*) leben in basis.css --
   werden auch von der Kursübersicht und der Kursdetailseite genutzt. */

/* ---- Hero ---- */
.hero {
  padding: 48px 24px;
  display: grid;
  gap: 32px;
  border-bottom: 1px solid var(--farbe-rand);
}
.hero-absatz { margin-top: 26px; font-size: 19px; line-height: 1.55; color: #4A463F; max-width: 30em; }
.hero-aktionen { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 24px; }
.hero-bild-platzhalter {
  position: relative;
  aspect-ratio: 16 / 10;
  border: 1px solid var(--farbe-rand);
  padding: 16px;
}
.hero-bild-platzhalter img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
/* Der Bildwechsel (Crossfade) lebt seit Fall 250 in basis.css — Startseite und Kursseite. */
.hero-rahmen {
  position: absolute;
  top: 22px; left: 22px;
  width: calc(100% - 44px); height: calc(100% - 44px);
  fill: none;
  stroke: var(--farbe-terrakotta);
  stroke-width: 1.4;
  stroke-linecap: round;
  stroke-linejoin: round;
  pointer-events: none;
}
/* .bild-caption (vertikale Bildunterschrift) lebt jetzt in basis.css -- seitenübergreifend
   genutzt (Hero-Bilder, Dozentenportraits), siehe Kommentar dort. */

@media (min-width: 1024px) {
  .hero { grid-template-columns: 1.05fr 0.95fr; align-items: center; gap: 0; padding: 0; }
  .hero-text { padding: 72px 56px 64px; }
  .hero-bild-platzhalter { min-height: 520px; aspect-ratio: auto; border: none; border-left: 1px solid var(--farbe-rand); }
}

/* ---- Der Weg ---- */
.der-weg { padding: 48px 24px 56px; border-bottom: 1px solid var(--farbe-rand); }
/* Die Reihe .weg-schritte und die Spalten .nummern-spalte stehen in basis.css (Werkbank 375). */
@media (min-width: 1024px) {
  .der-weg { padding: 56px 56px 60px; }
}

/* ---- Featured Kurse ---- */
.featured-kurse, .featured-dozenten { padding: 48px 24px 56px; border-bottom: 1px solid var(--farbe-rand); }
.sektion-kopf { display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; flex-wrap: wrap; margin-bottom: 32px; }
.sektion-kopf h2 { margin: 0; }
/* Das Kachel-Raster der Kurse `.kurs-karten` steht in basis.css (Werkbank 374); die Dozent*innen-Karten
   sind ein anderes Element mit vier Spalten. */
.dozenten-karten {
  display: grid;
  gap: 24px;
  grid-template-columns: 1fr;
}
@media (min-width: 768px) {
  .dozenten-karten { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1024px) {
  .dozenten-karten { grid-template-columns: repeat(4, 1fr); }
  .featured-kurse, .featured-dozenten { padding: 56px 56px 64px; }
}
/* ---- Zitatband (Werkbank 407, Design-Übergabe 22.10.2026, vom Inhaber freigegeben) ----
   Ersetzt den Spartenkasten mit Porträt. Aufbau wie die Stimmen-Karte (.testimonial-karte):
   Kicker, das Caveat-„ absolut oben links halb hinter dem Kicker, die Person mit Terrakotta-
   Strich. Bewusst anders: das Zeichen in Creme (auf Hellteal wäre Hellteal unsichtbar), 150 px
   statt 74 (gleiches Verhältnis zur Zitatgröße). Kicker und Fokus kommen aus basis.css (eine
   Quelle) -- hier nur, wo sie sitzen. */
.zitatband {
  background: var(--farbe-teal-hell);
  padding: 64px 24px 60px;
  position: relative;
}
/* Alle Zitate liegen übereinander in EINER Rasterzelle: Das Band ist so hoch wie das längste
   Zitat der Auswahl und springt beim Wechsel nie. Unsichtbare Folien behalten ihr Layout
   (visibility, nicht display) -- so misst tusche.js auch ihre Striche. */
.zitatband-buehne { display: grid; }
.zitatband-folie {
  grid-area: 1 / 1;
  margin: 0;
  position: relative;
  opacity: 0;
  visibility: hidden;
  transition: opacity .9s ease, visibility 0s linear .9s;
}
.zitatband-folie.ist-aktiv {
  opacity: 1;
  visibility: visible;
  transition: opacity .9s ease .25s, visibility 0s;
}
.zitatband-zeichen {
  position: absolute;
  top: -34px;
  left: -14px;
  font-family: var(--schrift-hand);
  font-size: 110px;
  line-height: .4;
  color: var(--farbe-creme);
  pointer-events: none;
  user-select: none;
}
/* Der Kicker liegt über dem Zeichen, wie .testimonial-label. */
.zitatband .kicker { position: relative; margin: 0 0 18px; }
.zitatband blockquote {
  position: relative;
  margin: 0;
  font-size: 30px;
  line-height: 1.2;
  font-weight: 700;
  color: #152B2A;
  letter-spacing: -.02em;
  max-width: 20em;
  text-wrap: balance;
}
.zitatband figcaption {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
  margin-top: 26px;
}
.zitatband-autor {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  font-family: var(--schrift-hand);
  font-size: 28px;
  color: #22403F;
}
.zitatband-strich { width: 28px; height: 2px; background: var(--farbe-terrakotta); flex: 0 0 auto; }
.zitatband-link {
  text-decoration: none;
  font-weight: 600;
  font-size: 15px;
  color: #22403F;
  display: inline-flex;
  align-items: center;
}
.zitatband-link:hover { color: #152B2A; }
/* Pfeil: gemeinsamer Baustein _pfeil.html (.pfeil-hand, basis.css) */
.zitatband-link .pfeil-hand { margin-left: 8px; }
/* Anhalten (WCAG 2.2.2): für Tastatur und Bildschirmleser, unsichtbar bis zum Fokus. Der
   Fokusring kommt aus basis.css wie überall. */
.zitatband-halt {
  position: absolute; left: 24px; bottom: 16px;
  font-family: var(--schrift-mono); font-size: 11px; letter-spacing: .1em; text-transform: uppercase;
  background: var(--farbe-creme); color: #22403F; border: 1px solid #22403F; padding: 6px 10px; cursor: pointer;
  opacity: 0; pointer-events: none;
}
.zitatband-halt:focus-visible { opacity: 1; pointer-events: auto; }
@media (min-width: 701px) {
  .zitatband figcaption { flex-direction: row; justify-content: flex-end; align-items: center; gap: 36px; margin-top: 44px; }
  .zitatband-autor { font-size: 34px; }
  .zitatband blockquote { font-size: 44px; }
  .zitatband-zeichen { top: -40px; left: -18px; font-size: 130px; }
}
@media (min-width: 1024px) {
  .zitatband { padding: 104px 56px 96px; }
  .zitatband-zeichen { top: -46px; left: -22px; font-size: 150px; }
  .zitatband blockquote { font-size: 58px; }
  .zitatband-halt { left: 56px; }
}
@media (prefers-reduced-motion: reduce) {
  .zitatband-folie, .zitatband-folie.ist-aktiv { transition: none; }
}

/* ---- Dozenten ---- */
.dozent-karte { text-align: left; }
.dozent-karte h3 { font-size: 17px; margin-bottom: 3px; }
.dozent-portraet-wrap {
  position: relative;
  display: block;
  aspect-ratio: 3 / 4;
  margin-bottom: 12px;
  border: 1px solid var(--farbe-rand);
  overflow: hidden;
}
.dozent-portraet { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.dozent-schwerpunkte { color: #6B665E; font-size: 13px; margin: 0; }

/* ---- Teamevents / Gestaltungsaufträge ---- */
.fuer-unternehmen {
  padding: 48px 24px 64px;
  display: grid;
  gap: 24px;
  grid-template-columns: 1fr;
}
.teaser-karte { border: 1px solid var(--farbe-rand); padding: 28px; }
.teaser-karte h2 { font-size: 24px; font-weight: 800; margin-bottom: 10px; }
/* :not(.kicker), damit diese Beschreibungs-Regel nicht auch den Kicker-Absatz trifft --
   der Kicker soll überall die globale .kicker-Größe (12px, basis.css) behalten. */
.teaser-karte p:not(.kicker) { font-size: 15px; color: #6B665E; margin-bottom: 22px; }
@media (min-width: 768px) {
  .fuer-unternehmen { grid-template-columns: 1fr 1fr; }
}
@media (min-width: 1024px) {
  .fuer-unternehmen { padding: 56px 56px 64px; }
  .teaser-karte { padding: 34px; }
}
