/* =====================================================================
   st-g.css — Entwurf G · weiterentwickelt aus F
   ---------------------------------------------------------------------
   Wie B (Vollflächen Gelb/Blau, Söhne-Breit-Display, harte Versatz-Schatten),
   plus: AI-Culture-Profil als gelber Plaketten-Badge IM Spiegel integriert
   (eigene Profil-Sektion entfällt); breiterer Eingangs-Absatz mit gelb
   durchwachsendem Schluss-Satz (scroll-getrieben); deutlich mehr Dynamik
   (gestaffelte Reveals, Hover-Choreografie, Hero-Parallax) — Motion via
   js/st-g.js, immer transform/opacity, Reduced-Motion = volle Info statisch.
   Scope: body.st.st--g
   ===================================================================== */

/* Flecha nur als Regular (400) — Italic wird daraus synthetisiert, damit die
   Thesen-Zitate EINEN Schnitt dünner sind (sonst greift die Medium-Italic 500). */
@font-face{
  font-family:'Flecha M Reg';
  src:url('../fonts/FlechaM-Regular.woff2') format('woff2'),
      url('../fonts/FlechaM-Regular.woff') format('woff');
  font-weight:400; font-style:normal; font-display:swap;
}

/* ---- 0 · Plakativer Display-Header (gemeinsame DNA) --------------- */
.st--g .st-wide{
  font-family:var(--font-wide); font-weight:700; text-transform:uppercase;
  line-height:.95; letter-spacing:-.015em;
}

/* Eyebrow-Varianten für farbige Felder */
.st--g .st-eyebrow--ink{ color:var(--ink); }
.st--g .st-eyebrow--ink::before{ background:var(--ink); }
.st--g .st-eyebrow--onblue{ color:var(--yellow); }
.st--g .st-eyebrow--onblue::before{ background:var(--yellow); }
.st--g .st-eyebrow--ondark{ color:#fff; }
.st--g .st-eyebrow--ondark::before{ background:var(--yellow); }

/* Laufende Sektions-Nummer (roter Faden) — Kontrast je Grund */
.st--g .st-no{ color:var(--blue); font-weight:700; }              /* auf Papier */
.st--g .st-eyebrow--ink .st-no{ color:var(--blue); }              /* auf Gelb */
.st--g .st-eyebrow--onblue .st-no{ color:#fff; }                  /* auf Blau */
.st--g .st-eyebrow--ondark .st-no{ color:var(--yellow); }         /* auf Bild/dunkel */
.st--g .st-eyebrow--silver .st-no{ color:var(--blue); }

/* Marker-Variante: Tinte hinter Wort auf gelbem Grund */
.st--g .st-mark--ink{
  background-image:linear-gradient(transparent 58%, rgba(26,26,26,.16) 58%);
  padding-inline:.06em; font-weight:600;
}

/* Handgezeichneter Unterstrich in Tinte — Marker auf hellem/gelbem Grund */
.st--g .st-uline--ink::after{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 20' preserveAspectRatio='none'%3E%3Cpath d='M4 13 C60 6 120 16 180 9 C230 4 270 12 296 8' fill='none' stroke='%231A1A1A' stroke-width='5' stroke-linecap='round'/%3E%3C/svg%3E");
}

/* Buttons etwas wuchtiger in B, Schatten als Signatur */
.st--g .st-btn{ padding:16px 30px; font-size:1rem; }
.st--g .st-btn--primary{ box-shadow:6px 6px 0 -1px var(--ink); }
.st--g .st-btn--primary:hover{ box-shadow:6px 6px 0 -1px var(--ink); }

/* Sichtbarer Fokus — auch auf Farb-/Dunkelfeldern (Tastatur-Bedienbarkeit) */
.st--g a:focus-visible,
.st--g button:focus-visible,
.st--g .st-btn:focus-visible,
.st--g .st-ib__opt:focus-visible,
.st--g .st-link:focus-visible{
  outline:3px solid var(--ink); outline-offset:3px;
  box-shadow:0 0 0 6px var(--yellow); border-radius:999px;
}
/* Auf blauen/dunklen Gründen heller Fokus-Ring */
.st--g .sta-track--ink a:focus-visible,
.st--g .sta-track--blue a:focus-visible{
  outline-color:#fff; box-shadow:0 0 0 6px rgba(0,0,0,.45);
}
/* Statische Felder bleiben eckig — Fokus dort nicht runden */
.st--g .sta-map__grid a:focus-visible{ border-radius:0; box-shadow:0 0 0 4px var(--yellow); outline-offset:0; }

/* ---- Verbindendes Marken-Band — plakativ für B ------------------- */
/* Laufzeile dunkel (wie index-e): Ink-Grund, helle Schrift, gelbe Trenner */
.st--g .sta-band{ background:#161618; border-block:1px solid rgba(255,255,255,.16); padding:13px 0; }
.st--g .sta-band .st-marquee__track > *{ font-size:1.15rem; letter-spacing:.02em; color:rgba(251,250,249,.82); }
.st--g .sta-band .st-marquee__sep{ color:var(--yellow); padding:0 22px; }

/* ---- 1 · Hero — Keyvisual-Bühne, plakativ ------------------------- */
.st--g .sta-hero{ position:relative; overflow:hidden; min-height:clamp(426px,66vh,629px);
  display:flex; align-items:flex-end; background:#fff;
  /* ── Keyvisual-Config (analog Produktseiten) — die Stellschrauben fürs Video ──
     --kv-pos : object-position → Bildausschnitt / „Versatz" steuern
     --kv-zoom: Zoom über cover hinaus (1 = randlos füllend)              */
  --kv-pos:70% 50%; --kv-zoom:1.06; }
/* Video füllt den Header randlos (cover, wie Produktseiten). Das <img>-Fallback im
   <video> erbt EXAKT dieselben Regeln → kein Versatz zwischen Video und Standbild. */
.st--g .sta-hero__video,
.st--g .sta-hero__video > img{ position:absolute; inset:0; width:100%; height:100%;
  object-fit:cover; object-position:var(--kv-pos); transform:scale(var(--kv-zoom));
  transform-origin:center; z-index:0; pointer-events:none; display:block; }
/* Deckkraft-Fläche über dem Video — etwas transparenter */
.st--g .sta-hero__scrim{ position:absolute; inset:0; z-index:1;
  background:linear-gradient(180deg, rgba(26,26,28,.14) 0%, rgba(26,26,28,.02) 46%, rgba(18,18,20,.34) 100%); }
.st--g .sta-hero__inner{ position:relative; z-index:2; padding-block:54px 60px; width:100%; }  /* füllt die Flex-Reihe → Headline linksbündig mit Content */
/* Headline blau, linksbündig mit dem Content; helle Transluzent-Fläche dahinter
   (Marken-Pattern wie hero__intro-text der bestehenden Startseite) für Lesbarkeit
   der blauen Schrift über dem Keyvisual. */
.st--g .sta-hero__title{
  position:relative; isolation:isolate;
  font-family:var(--font-display); font-weight:500; color:var(--blue);   /* blau, einen Schnitt fetter */
  font-size:clamp(1.38rem,3.36vw,2.76rem); line-height:1.4; letter-spacing:-.015em;  /* 60% Größe, mehr Durchschuss */
  margin:0; max-width:20ch; text-wrap:balance;
  width:fit-content; padding:.12em .34em;
}
/* weiß-transparente Hinterlegung läuft nach links ins Off (Bleed über den Viewport-Rand) */
.st--g .sta-hero__title::before{
  content:""; position:absolute; z-index:-1; pointer-events:none;
  top:0; bottom:0; right:0; left:-100vw;
  background:rgba(255,255,255,.62);
}

/* ---- Lead + zwei Wege --------------------------------------------- */
.st--g .sta-lead{ background:var(--paper-pure); border-bottom:var(--hair-strong); }
.st--g .sta-lead__grid{ display:block; }   /* CTAs sind in den Credo gewandert → Text läuft breiter */
/* Eingangs-Absatz nochmals ~20% breiter (43ch → 52ch) */
.st--g .sta-lead__text{ font-family:var(--font-display); font-weight:400;
  font-size:clamp(1.3rem,2.1vw,1.7rem); line-height:1.45; color:var(--ink); margin:0; max-width:52ch; }

/* Gelbe Auszeichnung VERTIKAL von unten, scroll-getrieben: --stf-grow (0→100%)
   wird von st-g.js beim Scrollen gesetzt; alle Zeilen gleichzeitig
   (box-decoration-break:clone). Ohne JS / Reduced-Motion: statisch voll gelb. */
.st--g .stf-hl{
  background-image:linear-gradient(var(--yellow),var(--yellow));
  background-repeat:no-repeat; background-position:0 100%; background-size:100% 100%;
  -webkit-box-decoration-break:clone; box-decoration-break:clone;
  color:var(--ink); padding:.02em 0;
}
.st--g.stf-js .stf-hl{ background-size:100% var(--stf-grow,0%); }
@media (prefers-reduced-motion:reduce){ .st--g .stf-hl{ background-size:100% 100% !important; } }

/* Zentraler Claim (auf gelbem Credo-Feld): dauerhafte Blue-Wash-Auszeichnung
   mit durchlaufendem hellem Shine — „begleitende" Highlight-Animation. */
.st--g .stg-claim{
  background-image:
    linear-gradient(100deg, transparent 0, rgba(255,255,255,.85) 50%, transparent 100%),  /* wandernder Shine */
    linear-gradient(var(--blue-wash), var(--blue-wash));                                    /* permanente Auszeichnung */
  background-repeat:no-repeat, no-repeat;
  background-size:40% 100%, 100% 100%;
  background-position:-60% 0, 0 0;
  -webkit-box-decoration-break:clone; box-decoration-break:clone;
  color:var(--ink); padding:.02em .04em; border-radius:2px;
  animation:stg-claimshine 3.4s linear infinite;
}
@keyframes stg-claimshine{ from{ background-position:-60% 0, 0 0; } to{ background-position:160% 0, 0 0; } }

/* Kleiner abstrakter Smiley nach dem Claim — taucht immer wieder „aus dem Off" auf */
.st--g .stg-smiley{ display:inline-block; vertical-align:-.18em; width:1.3em; height:1.3em;
  margin-left:.32em; color:var(--blue); transform-origin:center bottom;
  animation:stg-smiley 5s cubic-bezier(.34,1.4,.5,1) infinite; }
.st--g .stg-smiley svg{ width:100%; height:100%; display:block; }
@keyframes stg-smiley{
  0%   { opacity:0; transform:translateY(8px) scale(.1) rotate(-18deg); }
  9%   { opacity:1; transform:translateY(0) scale(1.18) rotate(6deg); }   /* Pop-in aus dem Off */
  16%  { transform:translateY(0) scale(1) rotate(0); }
  60%  { opacity:1; transform:translateY(0) scale(1) rotate(0); }         /* Halten */
  72%  { opacity:0; transform:translateY(-5px) scale(.2) rotate(14deg); } /* wieder weg */
  100% { opacity:0; transform:translateY(8px) scale(.1) rotate(-18deg); }
}
@media (prefers-reduced-motion:reduce){
  .st--g .stg-claim{ animation:none; background-image:linear-gradient(var(--blue-wash),var(--blue-wash)); background-size:100% 100%; }
  .st--g .stg-smiley{ animation:none; opacity:1; transform:none; }
}

/* ====================================================================
   2 · Credo — VOLLFLÄCHE GELB, plakative Riesen-Headline
   ==================================================================== */
.st--g .sta-credo{ background:var(--yellow); color:var(--ink); padding-block:clamp(40px,5vw,72px); }
.st--g .sta-credo__grid{ display:grid; grid-template-columns:1.05fr 1fr; gap:36px 72px; align-items:start; }
.st--g .sta-credo__title{
  color:var(--ink); font-size:clamp(1.2rem,2.8vw,2.3rem); margin:6px 0 0;   /* ~50% kleiner */
  text-wrap:balance;
}
.st--g .sta-credo__body{ display:flex; flex-direction:column; gap:18px; }
.st--g .sta-credo__body .st-body{ color:var(--ink); }
.st--g .sta-credo__punch{ font-family:var(--font-display); font-weight:400;
  font-size:clamp(1.3rem,1.9vw,1.55rem); line-height:1.4; max-width:46ch;
  color:var(--ink); }
/* Zwei Wege (aus dem Hero hierher gewandert) — auf gelbem Credo-Feld */
.st--g .sta-credo__cta{ display:flex; flex-wrap:wrap; gap:14px; margin-top:30px; }

/* ====================================================================
   3 · Spiegel — nur TEASER: ruhiges Papier, kleine Zitate, wenig Gewicht
   (Client-Feedback: war als Vollfläche viel zu prominent für einen Teaser;
   gibt der Seite jetzt Luft. B-Boldness nur als Hauch: Tinten-Eyebrow,
   gelbe Akzent-Kante an den Zitaten.)
   ==================================================================== */
.st--g .sta-spiegel{ background:var(--paper-pure); color:var(--ink); padding-block:clamp(40px,4.5vw,60px); }
/* Eyebrow auf Papier wieder lesbar (HTML nutzt --onblue) */
.st--g .sta-spiegel .st-eyebrow--onblue{ color:var(--ink); }
.st--g .sta-spiegel .st-eyebrow--onblue::before{ background:var(--ink); }
.st--g .sta-spiegel .st-eyebrow--onblue .st-no{ color:var(--blue); }
.st--g .sta-spiegel__head{ margin-bottom:22px; }
.st--g .sta-spiegel__title{ color:var(--ink);
  font-size:clamp(2.4rem,4.3vw,3.875rem); margin:0; line-height:.95; }  /* Größe wie thesen.html-HL (62px) */
.st--g .sta-spiegel__sub{ font-family:var(--font-display); font-style:italic; font-weight:400;
  font-size:clamp(1.15rem,1.9vw,1.45rem); line-height:1.3; color:var(--graphite);
  margin:12px 0 0; max-width:48ch; }
.st--g .sta-spiegel__list{ display:grid; gap:0;
  border-top:var(--hair); margin-bottom:0; }
.st--g .sta-quote{ margin:0; padding:14px 0; border-bottom:var(--hair);
  display:grid; grid-template-columns:110px 1fr; gap:4px 28px; align-items:start; }
.st--g .sta-quote figcaption{ font-family:var(--font-mono); font-weight:400; text-transform:uppercase;
  font-size:.72rem; letter-spacing:.12em; color:var(--blue); padding-top:.35em; }
.st--g .sta-quote blockquote{ margin:0; padding:0; font-family:'Flecha M Reg', Georgia, serif;
  font-weight:400; font-style:normal;   /* nicht kursiv; Regular = ein Schnitt dünner */
  color:var(--ink); font-size:clamp(1.05rem,1.7vw,1.4rem); line-height:1.36; max-width:44ch;
  letter-spacing:0; }
/* kleiner, gedämpfter Per-These-Link */
.st--g .sta-quote__link{ grid-column:2; justify-self:start; margin-top:6px;
  font-family:var(--font-sans); font-weight:600; font-size:.82rem; color:var(--graphite);
  text-decoration:none; display:inline-flex; gap:.4em; align-items:center;
  border-bottom:1px solid transparent; transition:color var(--d-base) var(--ease-out); }
.st--g .sta-quote__link:hover{ color:var(--blue); border-bottom-color:var(--blue); }

/* Spiegel-Layout: Thesen links, AI-Culture-Profil-Badge rechts (integriert) */
.st--g .sta-spiegel__grid{ display:grid; grid-template-columns:1fr minmax(300px,360px);
  gap:36px 56px; align-items:start; }

/* Rechte Spalte: Badge oben, „Weitere Thesen"-Button direkt darunter */
.st--g .sta-spiegel__aside{ display:flex; flex-direction:column; gap:18px; }

/* „Weitere Thesen"-Button (jetzt unter dem 3-Minuten-Kasten) */
.st--g .stg-thesen-btn{ align-self:flex-start; margin-top:0;
  display:inline-flex; align-items:center; gap:.55em; cursor:pointer;
  font-family:var(--font-sans); font-weight:600; font-size:.95rem; line-height:1.1;
  padding:12px 24px; border:1.5px solid var(--ink); border-radius:999px;
  background:transparent; color:var(--ink); text-decoration:none;
  transition:background var(--d-base) var(--ease-out), color var(--d-base) var(--ease-out),
             border-color var(--d-base) var(--ease-out), transform var(--d-fast) var(--ease-out); }
.st--g .stg-thesen-btn:hover{ background:var(--blue); border-color:var(--blue); color:#fff; transform:translateY(-1px); }
.st--g .stg-thesen-btn span{ transition:transform var(--d-base) var(--ease-out); }
.st--g .stg-thesen-btn:hover span{ transform:translateX(3px); }

/* AI-Culture-Profil als gelbe Plakette (Badge) — Signatur-Versatz-Schatten,
   leicht schräg wie ein aufgeklebter Sticker. Interaktiv ⇒ Hover-Choreografie. */
.st--g .stf-badge{ position:relative; display:flex; gap:18px; align-items:flex-start;
  background:var(--yellow); border:1.5px solid var(--ink); border-radius:0;
  box-shadow:9px 9px 0 -1px var(--ink); padding:24px 26px 26px; text-decoration:none;
  color:var(--ink); transform:rotate(-1.4deg);
  transition:transform var(--d-base) var(--ease-snap), box-shadow var(--d-base) var(--ease-out); }
.st--g .stf-badge:hover,
.st--g .stf-badge:focus-visible{ transform:rotate(0deg) translateY(-3px);
  box-shadow:13px 13px 0 -1px var(--ink); }
.st--g .stf-badge__pin{ flex:0 0 auto; font-family:var(--font-wide); font-weight:700;
  font-size:.72rem; letter-spacing:.04em; color:var(--yellow); background:var(--ink);
  border-radius:999px; padding:9px 13px; line-height:1; }
.st--g .stf-badge__body{ display:flex; flex-direction:column; gap:7px; }
.st--g .stf-badge__h{ font-family:var(--font-wide); font-weight:700; text-transform:uppercase;
  font-size:clamp(1.02rem,1.5vw,1.28rem); line-height:1.02; letter-spacing:-.01em; color:var(--ink); }
.st--g .stf-badge__sub{ font-family:var(--font-sans); font-size:.92rem; line-height:1.45;
  color:var(--ink); opacity:.82; }
.st--g .stf-badge__cta{ font-family:var(--font-sans); font-weight:700; font-size:.95rem;
  color:var(--blue); display:inline-flex; gap:.4em; align-items:center; margin-top:3px; }
.st--g .stf-badge__cta span{ transition:transform var(--d-base) var(--ease-out); }
.st--g .stf-badge:hover .stf-badge__cta span{ transform:translateX(4px); }

/* ====================================================================
   4 · Routing — Papier-Rhythmus, drei plakative Farb-Bänder
   ==================================================================== */
.st--g .sta-routing{ background:var(--paper); padding-top:clamp(45px,5.6vw,83px); padding-bottom:clamp(96px,8.8vw,128px); }
.st--g .sta-routing__head{ margin-bottom:40px; }
.st--g .sta-routing__title{ color:var(--ink); font-size:clamp(1.35rem,2.9vw,2.1rem); margin:6px 0 0; }  /* deutlich kleiner */
/* Mensch-Maschine-Bild links neben der Routing-Headline */
/* Mensch-Maschine-Foto links NEBEN den drei Spur-Kästen (läuft über die volle Höhe) */
.st--g .sta-routing__cols{ display:grid; grid-template-columns:minmax(230px,310px) 1fr;
  gap:22px 36px; align-items:stretch; }
.st--g .sta-routing__img{ margin:0; }
.st--g .sta-routing__img img{ width:100%; height:100%; object-fit:contain; object-position:center;
  display:block; }
.st--g .sta-routing__title .st-mark{
  background-image:linear-gradient(transparent 58%, var(--yellow) 58%);
}

/* Drei gestapelte horizontale Farb-Bänder — eckig, harter Versatz-Schatten */
.st--g .sta-tracks{ display:flex; flex-direction:column; gap:16px; }
.st--g .sta-track{ position:relative; display:grid; grid-template-columns:1fr 1.25fr;
  gap:14px 30px; align-items:center; padding:22px 26px; border-radius:0;
  border:1.5px solid var(--ink); box-shadow:8px 8px 0 -1px var(--ink); }   /* kompakter */
.st--g .sta-track--ink{ background:var(--ink); color:#fff; box-shadow:8px 8px 0 -1px var(--blue-wash); }
.st--g .sta-track--blue{ background:var(--blue); color:#fff; border-color:var(--blue);
  box-shadow:8px 8px 0 -1px var(--ink); }
.st--g .sta-track--yellow{ background:var(--yellow); color:var(--ink);
  box-shadow:8px 8px 0 -1px var(--ink); }

/* Spur-Felder sind jetzt ganzflächige Links (klickbar → Angebote-Section) */
.st--g .sta-track{ text-decoration:none; cursor:pointer; align-items:start; }
.st--g .sta-track__stake{ grid-column:1; grid-row:1;
  font-family:var(--font-wide); font-weight:700; text-transform:uppercase;
  font-size:clamp(1.35rem,2.4vw,1.95rem); line-height:.95; letter-spacing:-.02em; margin:0; }
.st--g .sta-track__sit{ grid-column:2; grid-row:1 / span 2;
  font-family:var(--font-display); font-style:italic; font-size:clamp(.98rem,1.3vw,1.15rem);
  line-height:1.4; margin:0; padding-right:34px; }
.st--g .sta-track--ink .sta-track__sit{ color:rgba(255,255,255,.86); }
.st--g .sta-track--blue .sta-track__sit{ color:rgba(255,255,255,.9); }
.st--g .sta-track--yellow .sta-track__sit{ color:var(--ink); }
/* Produkt-Namen nur noch als Text (das ganze Feld ist der Link) */
.st--g .sta-track__links{ grid-column:1; grid-row:2; display:flex; flex-wrap:wrap;
  gap:4px 0; margin-top:12px; }
.st--g .sta-track__links span{ font-family:var(--font-mono); font-size:.72rem; letter-spacing:.05em;
  text-transform:uppercase; }
.st--g .sta-track__links span:not(:last-child)::after{ content:"·"; margin:0 .6em; opacity:.55; }
.st--g .sta-track--ink .sta-track__links span,
.st--g .sta-track--blue .sta-track__links span{ color:var(--yellow); }
.st--g .sta-track--yellow .sta-track__links span{ color:var(--blue); }
/* Klick-Pfeil unten rechts, rückt bei Hover/Fokus */
.st--g .sta-track::after{ content:"→"; position:absolute; right:22px; bottom:18px;
  font-family:var(--font-sans); font-weight:700; font-size:1.25rem; line-height:1;
  transition:transform var(--d-base) var(--ease-out); }
.st--g .sta-track:hover::after,
.st--g .sta-track:focus-visible::after{ transform:translateX(6px); }
.st--g .sta-track--ink::after, .st--g .sta-track--blue::after{ color:var(--yellow); }
.st--g .sta-track--yellow::after{ color:var(--blue); }
/* eckiger Fokusring fürs ganze Feld (statt der runden Default-Variante) */
.st--g .sta-track:focus-visible{ outline:3px solid var(--ink); outline-offset:4px;
  box-shadow:none; border-radius:0; }
.st--g .sta-track--ink:focus-visible,
.st--g .sta-track--blue:focus-visible{ outline-color:var(--yellow); }

/* Angebots-Landkarte */
.st--g .sta-map{ margin-top:54px; padding-top:30px; border-top:var(--hair-strong); }
.st--g .sta-map__grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:2px; margin:6px 0 24px; }
.st--g .sta-map__grid a{ font-family:var(--font-wide); font-weight:700; text-transform:uppercase;
  font-size:1.05rem; letter-spacing:-.01em; line-height:1.05; color:var(--ink);
  text-decoration:none; padding:18px 0; border-bottom:var(--hair); }
.st--g .sta-map__grid a:hover{ color:var(--blue); }

/* ====================================================================
   5 · Großer Trenner — Vollbild
   ==================================================================== */
.st--g .sta-divider{ position:relative; }
/* Bleed: das große Bild greift in die vorige Sektion (Überlappung statt <hr>) */
.st--g .sta-divider--bleed{ margin-top:clamp(-96px,-7vw,-48px); z-index:2; }
.st--g .sta-divider__ph{ min-height:clamp(300px,46vw,560px); border-left:0; border-right:0; }
.st--g .sta-divider__cap{ position:absolute; left:var(--gutter); right:var(--gutter); bottom:38px; }
.st--g .sta-divider__cap .st-eyebrow{ margin-bottom:12px; text-shadow:0 1px 10px rgba(0,0,0,.6); }
.st--g .sta-divider__line{ margin:0;
  font-family:var(--font-display); font-weight:400; color:#fff; font-size:clamp(1.7rem,3.8vw,3rem);
  line-height:1.06; text-shadow:0 2px 26px rgba(0,0,0,.55); }
.st--g .sta-divider__line .st-wide{ color:var(--yellow); display:block;
  font-size:clamp(2rem,6vw,4.4rem); margin-bottom:6px; }

/* ====================================================================
   6 · Was entsteht (bewusst klein, Papier)
   ==================================================================== */
.st--g .sta-entsteht{ background:var(--paper-pure); }
/* Text links, Spiegel-Freisteller rechts (26% kleiner, transparent → kein Rahmen) */
.st--g .sta-entsteht__grid{ display:grid; grid-template-columns:1.3fr minmax(190px,296px);
  gap:40px 56px; align-items:start; margin-bottom:32px; }
.st--g .sta-entsteht__img{ margin:0; }
.st--g .sta-entsteht__img img{ width:100%; height:auto; display:block; }
/* Headline „cultivAite, das ist:" — gleiche Typo/Größe wie der Credo-Titel */
.st--g .sta-entsteht__head{ color:var(--ink); font-size:clamp(1.2rem,2.8vw,2.3rem); margin:0 0 24px; }
/* Beide Absätze auf gleiche Schriftgröße angeglichen */
.st--g .sta-entsteht__intro{ font-family:var(--font-display); font-size:clamp(1.2rem,1.9vw,1.45rem);
  line-height:1.45; color:var(--ink); margin:0 0 18px; max-width:60ch; }
.st--g .sta-entsteht__intro .st-link{ font-size:.85em; white-space:nowrap; }
.st--g .sta-entsteht__line{ font-family:var(--font-display); font-size:clamp(1.2rem,1.9vw,1.45rem);
  line-height:1.45; color:var(--graphite); margin:0 0 22px; max-width:60ch; }
.st--g .sta-entsteht__line strong{ font-weight:500; color:var(--ink); }
/* Tags = statische Schlagworte → feine Mono-Chips wie auf thesen.html (.v6-ptag):
   dünner Haarlinien-Rand, Mono, Pill. Etwas größer als die 11px dort. */
.st--g .sta-cloud{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:6px; }
.st--g .sta-cloud .st-tag{ font-family:var(--font-mono); font-weight:400; font-size:13px;
  letter-spacing:.04em; text-transform:none; color:var(--ink); line-height:1.1;
  background:transparent; border:1px solid rgba(10,10,10,.18); border-radius:999px;
  padding:5px 12px; white-space:nowrap; display:inline-flex; align-items:center;
  transition:border-color var(--d-base) var(--ease-out), background var(--d-base) var(--ease-out); }

/* (Eigene AI-Culture-Profil-Sektion entfällt in F — integriert als Badge im Spiegel.) */

/* ====================================================================
   Dynamik (Stufe 6) — gestaffelte Reveals, Tag-Pop, Hover-Choreografie.
   Nur transform/opacity. Sichtbar erst NACH JS (.stf-js), damit ohne JS
   nichts versteckt bleibt; Reduced-Motion zeigt alles sofort.
   ==================================================================== */
.st--g.stf-js .stf-rise{ opacity:0; transform:translateY(22px); }
.st--g.stf-js .stf-rise.is-in{ opacity:1; transform:none;
  transition:opacity .6s var(--ease-out), transform .6s var(--ease-out); }
/* gestaffelter Eintritt für Geschwister (Thesen, Spuren) */
.st--g.stf-js .sta-quote.stf-rise:nth-child(2){ transition-delay:.08s; }
.st--g.stf-js .sta-quote.stf-rise:nth-child(3){ transition-delay:.16s; }
.st--g.stf-js .sta-track.stf-rise:nth-child(2){ transition-delay:.1s; }
.st--g.stf-js .sta-track.stf-rise:nth-child(3){ transition-delay:.2s; }

/* Tag-Cloud: Chips poppen gestaffelt herein */
.st--g.stf-js .stf-pop{ opacity:0; transform:translateY(10px) scale(.94); }
.st--g.stf-js .sta-cloud.is-in .stf-pop{ opacity:1; transform:none;
  transition:opacity .42s var(--ease-out), transform .42s var(--ease-snap); }
.st--g.stf-js .sta-cloud.is-in .stf-pop:nth-child(n){ transition-delay:calc(var(--i,0) * .04s); }

/* Hover-Choreografie der Spur-Bänder (Reaktive Steuerung) */
.st--g .sta-track{ transition:transform var(--d-base) var(--ease-out),
  box-shadow var(--d-base) var(--ease-out); will-change:transform; }
.st--g .sta-track:hover{ transform:translate(-2px,-2px); }
.st--g .sta-track:hover{ box-shadow:14px 14px 0 -1px var(--ink); }
.st--g .sta-track--ink:hover{ box-shadow:14px 14px 0 -1px var(--blue-wash); }

/* Angebots-Landkarte: Pfeil-Slide beim Hover */
.st--g .sta-map__grid a{ position:relative; transition:color var(--d-base) var(--ease-out),
  padding-left var(--d-base) var(--ease-out); }
.st--g .sta-map__grid a:hover{ padding-left:14px; }
.st--g .sta-map__grid a::before{ content:"→"; position:absolute; left:-2px; opacity:0;
  color:var(--blue); transition:opacity var(--d-base) var(--ease-out), transform var(--d-base) var(--ease-out);
  transform:translateX(-6px); }
.st--g .sta-map__grid a:hover::before{ opacity:1; transform:translateX(0); }

/* Hero-Inner wird per JS sanft parallax verschoben (nur Text, kein Bild-Edge-Risiko) */
.st--g .sta-hero__inner{ will-change:transform; }

@media (prefers-reduced-motion:reduce){
  .st--g.stf-js .stf-rise,
  .st--g.stf-js .stf-pop{ opacity:1 !important; transform:none !important; }
  .st--g .sta-hero__inner{ transform:none !important; }
}

/* ====================================================================
   8 · Vertrauen + Icebreaker
   ==================================================================== */
.st--g .sta-trust{ background:var(--paper); }
.st--g .sta-trust__line{ font-family:var(--font-display); font-size:clamp(1.25rem,2.1vw,1.6rem);
  line-height:1.45; color:var(--ink); max-width:60ch; margin:0 0 44px; }
.st--g .sta-trust__line .st-link{ font-size:1rem; white-space:nowrap; }

/* Icebreaker als eigenständige, klar abgegrenzte Schluss-Sektion */
.st--g .sta-ib-sect{ border-top:1.5px solid var(--ink); background:var(--bone); }
.st--g .sta-ib-sect .sta-ib{ border-top:0; padding-top:0; }

/* DEZENT (Vorbild index-d): ruhiger, haarlinien-getoppter Block ohne
   Panel/Farbfeld/Schatten. Maßvolle Frage, dezente Pills. */
.st--g .sta-ib{ padding:40px 0; border-top:1px solid rgba(10,10,10,.14);
  box-shadow:none; background:transparent; }
.st--g .sta-ib__q{ color:var(--ink); font-family:var(--font-display); font-weight:400;
  text-transform:none; letter-spacing:-.01em;
  font-size:clamp(1.5rem,2.4vw,2rem); margin:0 0 24px; }
.st--g .sta-ib__a{ font-family:var(--font-display); font-weight:500; font-size:clamp(1.3rem,2.2vw,1.7rem);
  line-height:1.34; color:var(--blue); margin:0 0 24px; max-width:42ch; }
.st--g .sta-ib__exits{ display:flex; flex-wrap:wrap; gap:14px; align-items:center; }

/* ====================================================================
   Icebreaker — gamifiziert (Stufe 6): spielerische Pills, Belohnungs-Smiley.
   ==================================================================== */
.st--g .st-ib__opt{ padding:12px 20px; font-size:.98rem; font-weight:600; border-width:1.5px;
  transition:transform var(--d-fast) var(--ease-snap), background var(--d-base) var(--ease-out),
             border-color var(--d-base) var(--ease-out), color var(--d-base) var(--ease-out),
             box-shadow var(--d-base) var(--ease-out); }
.st--g .st-ib__opt:hover{ background:var(--blue); border-color:var(--blue); color:#fff;
  transform:translateY(-3px) scale(1.04) rotate(-1deg); box-shadow:5px 5px 0 -1px var(--blue-wash); }
.st--g .st-ib__opt:active{ transform:translateY(0) scale(.97); }
/* Eigene Marken-Icons — zappeln beim Hover */
.st--g .stg-ico{ width:1.45em; height:1.45em; flex:0 0 auto; color:var(--blue);
  transition:color var(--d-base) var(--ease-out), transform var(--d-base) var(--ease-snap); }
.st--g .st-ib__opt:hover .stg-ico,
.st--g .st-ib__opt:focus-visible .stg-ico{ color:#fff; transform:scale(1.2) rotate(-7deg); }

/* Gestaffelter Pop-in der Pills, sobald die Sektion erscheint */
.st--g.stf-js .sta-ib.is-in .st-ib__opt{ animation:stg-optin .5s var(--ease-snap) both; }
.st--g.stf-js .sta-ib.is-in .st-ib__opt:nth-child(1){ animation-delay:.05s; }
.st--g.stf-js .sta-ib.is-in .st-ib__opt:nth-child(2){ animation-delay:.13s; }
.st--g.stf-js .sta-ib.is-in .st-ib__opt:nth-child(3){ animation-delay:.21s; }
.st--g.stf-js .sta-ib.is-in .st-ib__opt:nth-child(4){ animation-delay:.29s; }
@keyframes stg-optin{ from{ opacity:0; transform:translateY(16px) scale(.9); } to{ opacity:1; transform:none; } }

/* Antwort erscheint mit Reveal; Belohnungs-Smiley poppt fröhlich rein (knüpft an den Credo-Smiley an) */
.st--g [data-ib-answer]:not([hidden]){ animation:stg-ansin .5s var(--ease-out) both; }
@keyframes stg-ansin{ from{ opacity:0; transform:translateY(12px); } to{ opacity:1; transform:none; } }
.st--g .sta-ib__a{ display:flex; align-items:flex-start; gap:.5em; }
.st--g .stg-reward{ flex:0 0 auto; width:1.5em; height:1.5em; color:var(--blue); margin-top:.05em;
  animation:stg-reward .85s var(--ease-snap) both; }
.st--g .stg-reward svg{ width:100%; height:100%; display:block; }
@keyframes stg-reward{ 0%{ opacity:0; transform:scale(.1) rotate(-28deg); }
  55%{ opacity:1; transform:scale(1.32) rotate(10deg); } 78%{ transform:scale(.96) rotate(-3deg); }
  100%{ opacity:1; transform:scale(1) rotate(0); } }
.st--g [data-ib-answer]:not([hidden]) .sta-ib__exits{ animation:stg-ansin .5s var(--ease-out) .12s both; }

@media (prefers-reduced-motion:reduce){
  .st--g.stf-js .sta-ib.is-in .st-ib__opt,
  .st--g [data-ib-answer]:not([hidden]),
  .st--g [data-ib-answer]:not([hidden]) .sta-ib__exits,
  .st--g .stg-reward{ animation:none; opacity:1; transform:none; }
}

/* ====================================================================
   Responsive — Grids einspaltig ≤900 / ≤600; Bedeutung nie nur über Größe
   ==================================================================== */
@media (max-width:900px){
  .st--g .sta-lead__grid,
  .st--g .sta-credo__grid{ grid-template-columns:1fr; }
  /* Bilder stapeln auf Mobile (natürliches Seitenverhältnis) */
  .st--g .sta-entsteht__grid,
  .st--g .sta-routing__cols{ grid-template-columns:1fr; gap:24px; }
  .st--g .sta-entsteht__img{ max-width:300px; }
  .st--g .sta-routing__img{ max-width:520px; }
  .st--g .sta-routing__img img{ height:auto; }
  .st--g .sta-spiegel__grid{ grid-template-columns:1fr; gap:28px; }
  .st--g .stf-badge{ transform:rotate(-1deg); max-width:520px; }
  .st--g .sta-track{ grid-template-columns:1fr; gap:14px; box-shadow:7px 7px 0 -1px var(--ink); }
  .st--g .sta-track--ink{ box-shadow:7px 7px 0 -1px var(--blue-wash); }
  .st--g .sta-track__stake{ grid-column:1; grid-row:1; }
  .st--g .sta-track__sit{ grid-column:1; grid-row:2; margin:10px 0 0; padding-right:0; }
  .st--g .sta-track__links{ grid-column:1; grid-row:3; margin-top:14px; }
  .st--g .sta-track::after{ right:22px; bottom:18px; }
  .st--g .sta-map__grid{ grid-template-columns:1fr 1fr; }
  .st--g .sta-quote{ grid-template-columns:1fr; gap:10px; }
  .st--g .sta-quote figcaption{ padding-top:0; }
  .st--g .sta-quote__link{ grid-column:auto; margin-top:4px; }
}
@media (max-width:600px){
  /* Hero-Headline mobil mit mehr Präsenz: ohne Bump fällt clamp() auf ~22px
     (halbe Desktop-Größe) – für die erste H1 zu zaghaft. Nur Mobile-Floor
     angehoben, Desktop nutzt weiter den Max-Wert der Basis-clamp. */
  .st--g .sta-hero__title{ font-size:clamp(1.6rem,5.2vw,2.1rem); line-height:1.3; }
  .st--g .sta-map__grid{ grid-template-columns:1fr; }
  .st--g .sta-track{ padding:26px 22px; }
  .st--g .sta-trust__line .st-link{ white-space:normal; }
  .st--g .st-ib__opt{ width:100%; justify-content:flex-start; }
  .st--g .sta-divider__line .st-wide{ font-size:clamp(1.6rem,8vw,2.4rem); }
}
