/**
 * agenic Komponenten-CSS — Logo + Kennzahlen + Stimme (Sektions-Widget).
 * Quelle: Figma `logo-stats-testimonial` (1855:34268, gemessen 11.08.2026).
 * Fläche Surface/darkest · VERTICAL gap 128 (3xl) · Padding 120/120/64/120 →
 * oben 3xl (128), unten xxl (64).
 * `proof-row`: HORIZONTAL gap 32 (l), Kundenstimme 413 neben `facts` 787.
 * `facts`: 2×2-Windrad mit alternierenden Breiten — Zeile 1 schmal/breit
 * (280/448), Zeile 2 breit/schmal (448/280); Basis 728 = 280 + 448, daraus
 * 38.4615 % und 61.5385 %. Mobil: alles einspaltig, gap 32 bzw. 24 (ml).
 * Kontrakt: kontrakte-sektions-widgets-11-08 (B4).
 */

.ag-logo-stats-testimonial, .ag-logo-stats-testimonial * { box-sizing: border-box; }

.ag-logo-stats-testimonial {
    --ag-lst-bg: var(--gradient-surface-darkest-tiefe);   /* Tiefenfläche, 25.09.2026 */
    --ag-lst-fg: var(--color-text-inverse-soft);
    --ag-lst-gap: var(--spacing-4xl);                    /* Quelle: 128 */
    --ag-lst-proof-gap: var(--spacing-l);                /* Quelle: 32 */
    --ag-lst-facts-gap: var(--spacing-ml);               /* Quelle: 24 */
    --ag-lst-schmal: 38.4615%;                           /* Quelle: 280 von 728 */
    --ag-lst-breit: 61.5385%;                            /* Quelle: 448 von 728 */
    --ag-logo-stats-testimonial-space-before: 0px;
    --ag-logo-stats-testimonial-space-after: 0px;

    position: relative;
    overflow: hidden;                                    /* Quelle: clipsContent */
    background: var(--ag-lst-bg);
    color: var(--ag-lst-fg);
    margin-block-start: var(--ag-logo-stats-testimonial-space-before);
    margin-block-end: var(--ag-logo-stats-testimonial-space-after);
    font-family: var(--font-sans);
}

.ag-logo-stats-testimonial__inner {
    display: flex;
    flex-direction: column;
    gap: var(--ag-lst-gap);
    padding: var(--ag-logo-stats-testimonial-pad-oben, var(--spacing-xxl)) max(var(--spacing-ml), calc((100% - var(--content-width, 1200px)) / 2)) var(--ag-logo-stats-testimonial-pad-unten, var(--ag-luft-sektion-fuss));
}

/* Logo-Band, Trenner und Kopf stehen im Quell-Abstand 128 zueinander;
   der Trenner sitzt direkt unter dem Band (Quelle: eigener Fluss-Knoten). */
.ag-logo-stats-testimonial__trenner { width: 100%; }

/* proof-row: Kundenstimme 413 neben facts 787 — Basis 1200 (Quelle). */
.ag-logo-stats-testimonial__proof {
    display: grid;
    gap: var(--ag-lst-proof-gap);
    grid-template-columns: minmax(0, 413fr) minmax(0, 787fr);
    /* Quelle: Kundenstimme 413×329 in einer 512 hohen Reihe — sie wird NICHT
       auf die Höhe des Kennzahlen-Rasters gestreckt (gemessen 11.08.). */
    /* Feedback Vincent Punkt 5 (11.08.2026): „Die Testimonials sollen unten
       ausgerichtet sein." Bewusste Abweichung von der Quellenmessung, die die
       Stimme oben bündig zeigt (413×329 in einer 512 hohen Reihe) — dokumentiert
       als Rückspielpunkt nach 0.5. */
    align-items: end;
}

/* facts: 2×2-Windrad. Zeile 1 schmal|breit, Zeile 2 breit|schmal. */
/* Bis zu zwei Stimmen (Punkt 6): untereinander, an der Unterkante ausgerichtet. */
.ag-logo-stats-testimonial__stimmen {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: var(--spacing-ml);                             /* 24 */
    height: 100%;
}

.ag-logo-stats-testimonial__facts {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ag-lst-facts-gap);
    align-content: stretch;
}

.ag-logo-stats-testimonial__facts > .ag-fact-box {
    flex: 0 0 calc((100% - var(--ag-lst-facts-gap)) * 0.384615);
    /* min-width:auto liesse lange Bezeichnungen die Kachel aufblähen und das
       Windrad kippen (gemessen 11.08.: „Zufriedenheit" zog 285 auf 297 px). */
    min-width: 0;
}

.ag-logo-stats-testimonial__facts > .ag-fact-box:nth-child(2),
.ag-logo-stats-testimonial__facts > .ag-fact-box:nth-child(3) {
    flex-basis: calc((100% - var(--ag-lst-facts-gap)) * 0.615385);
}

/* Ab der fünften Kennzahl setzt sich das Windrad fort (Repeater ist offen). */
.ag-logo-stats-testimonial__facts > .ag-fact-box:nth-child(4n+2),
.ag-logo-stats-testimonial__facts > .ag-fact-box:nth-child(4n+3) {
    flex-basis: calc((100% - var(--ag-lst-facts-gap)) * 0.615385);
}

/* Mobil — Quelle: proof-row und facts schalten auf vertikal, gap 32/16.
   Grenze 768 = --bp-md (Festschreibung A5 offen, tmp). */
@media (max-width: 767px) {
    .ag-logo-stats-testimonial {
        --ag-lst-gap: var(--spacing-l);                  /* Quelle Mobil: 32 */
        --ag-lst-facts-gap: var(--spacing-m);            /* Quelle Mobil: 16 */
    }

    .ag-logo-stats-testimonial__inner {
        padding: var(--ag-logo-stats-testimonial-pad-oben, var(--spacing-xxl)) var(--spacing-m) var(--ag-logo-stats-testimonial-pad-unten, var(--ag-luft-sektion-fuss));
    }

    .ag-logo-stats-testimonial__proof {
        grid-template-columns: minmax(0, 1fr);
    }

    .ag-logo-stats-testimonial__facts > .ag-fact-box,
    .ag-logo-stats-testimonial__facts > .ag-fact-box:nth-child(2),
    .ag-logo-stats-testimonial__facts > .ag-fact-box:nth-child(3),
    .ag-logo-stats-testimonial__facts > .ag-fact-box:nth-child(4n+2),
    .ag-logo-stats-testimonial__facts > .ag-fact-box:nth-child(4n+3) {
        flex: 0 0 100%;
    }
}

/* ═══════════════════════════════════════════════════════════════════════
   Layout „Referenz-Banner" (24.09.2026, additiv)
   Quelle: Konzept D, Projekt-Doc referenz-banner-konzept-d-24-09.md
   (HTML-Prototyp, keine 0.5-Komponente — Rückspielpunkt nach Figma).
   Kundenlogos als Reiter (1 Logo = 1 Referenz) · Zitat Display/S ·
   Kennzahlen Display/L mit Hochzählen (count-up.js) · Siegel-Zeile.
   Nur Tokens; Werte ohne Token sind mit tmp markiert.
   ═══════════════════════════════════════════════════════════════════════ */

.ag-logo-stats-testimonial--banner {
    --ag-lst-gap: var(--spacing-xxl);                    /* Konzept D: 64 zwischen den Zeilen */
    --ag-lst-linie: var(--color-border-on-inverse);
    --ag-lst-linie-stark: var(--color-border-on-inverse-strong);
    --ag-lst-leise: var(--color-text-grey-inverse);
    --ag-lst-link: var(--color-text-link-inverse);
    --ag-lst-tab-ruhe: .42;                              /* tmp — Deckkraft inaktiver Logos, kein Token */
    --ag-lst-tab-hover: .78;                             /* tmp */
    --ag-lst-logo-hoehe: var(--spacing-l);               /* 32 */
    --ag-lst-logo-breite: 160px;                         /* tmp — Logofeld wie partner-logos (160 × 40) */
    --ag-lst-anschnitt: var(--spacing-3xl);              /* 96 — Fade-Zone mobil, wie ag_tabs_bar_pill */
    --ag-lst-knopf: 44px;                                /* tmp — Mindest-Trefferfläche WCAG 2.5.8 */
    --ag-lst-intervall: var(--motion-duration-loop-ambient); /* 8 s je Referenz */
    --ag-lst-wechsel: var(--motion-duration-m);          /* 450 */
    --ag-lst-kurve: var(--motion-ease-standard);
    --ag-lst-versatz: var(--motion-distance-shift);      /* 6 */
    --ag-count-duration: var(--motion-duration-xl);      /* wie stats-band */
    --ag-count-stagger: var(--motion-stagger-m);
    --ag-count-ease: var(--motion-ease-standard);
}

/* ── Reiterleiste ─────────────────────────────────────────────────── */
.ag-logo-stats-testimonial__banner {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    row-gap: var(--spacing-m);
    min-width: 0;
}

.ag-logo-stats-testimonial__reiter-scroller {
    position: relative;
    min-width: 0;
    overflow-x: auto;
    scrollbar-width: none;
    padding-top: var(--spacing-xs);                      /* Platz für den Fokusrahmen */
}
.ag-logo-stats-testimonial__reiter-scroller::-webkit-scrollbar { display: none; }

.ag-logo-stats-testimonial__reiter-innen {
    position: relative;
    display: inline-block;
    min-width: 100%;
    vertical-align: top;
}

.ag-logo-stats-testimonial__reiter {
    /* Gleich breite Reiter (Vincent, 24.09.2026: „Breite soll geteilt werden
       durch alle Logos"): die Spur darunter läuft ohne Lücke durch, jedes
       Segment = 1/n der Zeile. */
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    gap: 0;
}

/* Kit stylt <button> global mit (0,1,1) — Grundblock deshalb auf Doppelklasse. */
.ag-logo-stats-testimonial .ag-logo-stats-testimonial__tab {
    appearance: none;
    display: flex;
    align-items: center;
    flex: 1 1 0;
    min-width: 0;
    min-height: 72px;                                    /* tmp — Reiterhöhe aus Konzept D */
    margin: 0;
    padding: var(--spacing-m) var(--spacing-l) var(--spacing-ml) 0;
    background: none;
    background-image: none;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    color: var(--ag-lst-fg);
    font-family: var(--font-sans);
    font-size: var(--fs-400);
    font-weight: var(--fw-medium);
    line-height: 1.2;
    text-align: left;
    cursor: pointer;
    opacity: var(--ag-lst-tab-ruhe);
    transition: opacity var(--motion-duration-s) var(--ag-lst-kurve);
}
.ag-logo-stats-testimonial .ag-logo-stats-testimonial__tab:hover,
.ag-logo-stats-testimonial .ag-logo-stats-testimonial__tab:focus { background: none; color: var(--ag-lst-fg); opacity: var(--ag-lst-tab-hover); }
.ag-logo-stats-testimonial .ag-logo-stats-testimonial__tab.is-aktiv { opacity: 1; }
.ag-logo-stats-testimonial .ag-logo-stats-testimonial__tab:focus-visible {
    outline: 2px solid var(--ag-lst-link);
    outline-offset: 4px;
    border-radius: var(--radius-xs);
}

/* Elementor setzt `.elementor img { height: auto }` (0,1,1) — Doppelklasse. */
.ag-logo-stats-testimonial .ag-logo-stats-testimonial__tab-logo {
    display: block;
    height: var(--ag-lst-logo-hoehe);
    width: auto;
    max-width: min(var(--ag-lst-logo-breite), 100%);
    object-fit: contain;
}
/* Einheitlich hell: jedes Logo wird zur weißen Silhouette (logo-slider-Regel „einfarbig"). */
.ag-logo-stats-testimonial--logos-weiss .ag-logo-stats-testimonial__tab-logo { filter: brightness(0) invert(1); }

.ag-logo-stats-testimonial__spur {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 1px;
    background: var(--ag-lst-linie);
}
.ag-logo-stats-testimonial__spur-aktiv {
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 0;
    height: 2px;
    background: var(--ag-lst-linie-stark);
    transition: left var(--ag-lst-wechsel) var(--ag-lst-kurve), width var(--ag-lst-wechsel) var(--ag-lst-kurve);
}
.ag-logo-stats-testimonial__spur-fuellung {
    position: absolute;
    inset: 0;
    background: var(--gradient-fusion-basic);
    transform-origin: left center;
}
.ag-logo-stats-testimonial__banner.is-lauf .ag-logo-stats-testimonial__spur-fuellung.is-laeuft {
    animation: ag-logo-stats-testimonial-fuellen var(--ag-lst-intervall) linear both;
}
.ag-logo-stats-testimonial__banner.is-lauf:is(:hover, :focus-within, .is-ausserhalb) .ag-logo-stats-testimonial__spur-fuellung { animation-play-state: paused; }

@keyframes ag-logo-stats-testimonial-fuellen {
    from { transform: scaleX(0); }
    to   { transform: scaleX(1); }
}

/* ── Steuerung ───────────────────────────────────────────────────── */
.ag-logo-stats-testimonial__steuerung {
    display: flex;
    align-items: center;
    gap: var(--spacing-s);
}
.ag-logo-stats-testimonial__zaehler {
    margin-right: auto;
    color: var(--ag-lst-leise);
    font-size: var(--fs-200);
    font-variant-numeric: tabular-nums;
    letter-spacing: .02em;
}
.ag-logo-stats-testimonial__nr { color: var(--ag-lst-fg); font-weight: var(--fw-medium); }

.ag-logo-stats-testimonial .ag-logo-stats-testimonial__knopf {
    appearance: none;
    display: grid;
    place-items: center;
    width: var(--ag-lst-knopf);
    height: var(--ag-lst-knopf);
    margin: 0;
    padding: 0;
    background: transparent;
    background-image: none;
    border: 0;
    border-radius: var(--radius-max);
    box-shadow: inset 0 0 0 1px var(--ag-lst-linie-stark);   /* Kontur innen, wie Figma */
    color: var(--ag-lst-fg);
    font-size: var(--fs-300);
    cursor: pointer;
    transition: box-shadow var(--motion-duration-s) var(--ag-lst-kurve), background-color var(--motion-duration-s) var(--ag-lst-kurve);
}
.ag-logo-stats-testimonial .ag-logo-stats-testimonial__knopf:hover,
.ag-logo-stats-testimonial .ag-logo-stats-testimonial__knopf:focus {
    background: var(--color-surface-glass);
    color: var(--ag-lst-fg);
    box-shadow: inset 0 0 0 1px var(--ag-lst-fg);
}
.ag-logo-stats-testimonial .ag-logo-stats-testimonial__knopf:focus-visible { outline: 2px solid var(--ag-lst-link); outline-offset: 3px; }
.ag-logo-stats-testimonial__knopf svg { display: block; }
.ag-logo-stats-testimonial__icon-play { display: none !important; }
.ag-logo-stats-testimonial__banner.is-angehalten .ag-logo-stats-testimonial__icon-pause { display: none !important; }
.ag-logo-stats-testimonial__banner.is-angehalten .ag-logo-stats-testimonial__icon-play { display: block !important; }

/* ── Bühne: ein Panel je Referenz, übereinander gestapelt ────────── */
.ag-logo-stats-testimonial__buehne { display: grid; margin-top: var(--spacing-xl); }

.ag-logo-stats-testimonial__panel {
    grid-area: 1 / 1;
    align-self: start;
    display: grid;
    /* Dasselbe Raster wie die Kennzahlen (25.09.2026): gleich viele Spalten,
       ohne Spaltenabstand — die Linie links der Projekt-Spalte fällt auf die
       Trennlinie der Kennzahl darunter, der Text beginnt 32 dahinter wie dort. */
    grid-template-columns: repeat(var(--ag-lst-spalten, 4), minmax(0, 1fr));
    column-gap: 0;
    align-items: end;
    opacity: 0;
    visibility: hidden;
    transform: translateY(var(--ag-lst-versatz));
    /* Ausblenden kurz (150), damit sich zwei Zitate kaum überlagern … */
    transition: opacity var(--motion-duration-xs) var(--ag-lst-kurve), transform var(--motion-duration-xs) var(--ag-lst-kurve), visibility 0s linear var(--motion-duration-xs);
}
.ag-logo-stats-testimonial--aufteilung-haelfte .ag-logo-stats-testimonial__panel { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ag-logo-stats-testimonial--aufteilung-haelfte .ag-logo-stats-testimonial__zitat { grid-column: 1 / 2; }
.ag-logo-stats-testimonial--aufteilung-haelfte .ag-logo-stats-testimonial__meta { grid-column: 2 / 3; }

.ag-logo-stats-testimonial__panel.is-aktiv {
    opacity: 1;
    visibility: visible;
    transform: none;
    /* … Einblenden 450 und erst, wenn das alte fast weg ist. */
    transition: opacity var(--ag-lst-wechsel) var(--ag-lst-kurve) var(--motion-duration-xs), transform var(--ag-lst-wechsel) var(--ag-lst-kurve) var(--motion-duration-xs), visibility 0s linear 0s;
}

.ag-logo-stats-testimonial__zitat {
    grid-column: 1 / -2;                                 /* Standard „viertel": alles bis zur letzten Spalte */
    padding-right: var(--spacing-l);
    display: grid;
    gap: var(--spacing-ml);
    margin: 0;
}
/* Zitatgröße (25.09.2026): mittel 32 ist Standard (Headline/L, --fs-700),
   groß 38 = Stufe sektion-38, klein 24 = Stufe panel-24. */
.ag-logo-stats-testimonial--banner {
    --ag-lst-zitat-fs: var(--fs-700);
    --ag-lst-zitat-lh: 1.28;                             /* tmp — keine Zeilenhöhe für 32 Light in titel-stufen.css */
    --ag-lst-zitat-fw: var(--ag-titel-sektion-38-fw);
}
.ag-logo-stats-testimonial--zitat-gross {
    --ag-lst-zitat-fs: var(--ag-titel-sektion-38-fs);
    --ag-lst-zitat-lh: var(--ag-titel-sektion-38-lh);
}
.ag-logo-stats-testimonial--zitat-klein {
    --ag-lst-zitat-fs: var(--ag-titel-panel-24-fs);
    --ag-lst-zitat-lh: var(--ag-titel-panel-24-lh);
}
.ag-logo-stats-testimonial__zitat-text { margin: 0; padding: 0; border: 0; background: none; font-style: normal; quotes: none; }
.ag-logo-stats-testimonial__zitat-text p {
    margin: 0;
    color: var(--ag-lst-fg);
    font-size: var(--ag-lst-zitat-fs);
    line-height: var(--ag-lst-zitat-lh);
    font-weight: var(--ag-lst-zitat-fw);
    letter-spacing: -.015em;
    text-wrap: pretty;
    hyphens: manual;
}

.ag-logo-stats-testimonial__person { display: flex; align-items: center; gap: var(--spacing-m); font-style: normal; }   /* Theme setzt figcaption kursiv */
.ag-logo-stats-testimonial__wer { display: grid; gap: var(--spacing-xxs); }
.ag-logo-stats-testimonial__name { color: var(--ag-lst-fg); font-size: var(--fs-300); font-weight: var(--fw-medium); line-height: 1.3; }
.ag-logo-stats-testimonial__rolle { color: var(--ag-lst-leise); font-size: var(--fs-200); line-height: 1.35; }

.ag-logo-stats-testimonial__meta {
    grid-column: -2 / -1;
    display: grid;
    justify-items: start;
    gap: var(--spacing-m);
    padding-left: var(--spacing-l);
    border-left: 1px solid var(--ag-lst-linie);
}
.ag-logo-stats-testimonial__branche {
    padding: var(--spacing-xs) var(--spacing-ms);
    border-radius: var(--radius-max);
    box-shadow: inset 0 0 0 1px var(--ag-lst-linie-stark);
    color: var(--ag-lst-fg);
    font-size: var(--fs-200);
    line-height: 1.4;
}
.ag-logo-stats-testimonial__projekt {
    margin: 0;
    color: var(--ag-lst-fg);
    font-size: var(--fs-400);
    font-weight: var(--fw-light);
    line-height: 1.45;
}

/* Kit-Linkfarbe (0,1,1) — Doppelklasse inkl. :visited. */
.ag-logo-stats-testimonial .ag-logo-stats-testimonial__link,
.ag-logo-stats-testimonial .ag-logo-stats-testimonial__link:visited {
    display: inline-flex;
    align-items: center;
    gap: var(--spacing-s);
    padding-block: var(--spacing-xs);
    border-bottom: 1px solid currentColor;
    color: var(--ag-lst-link);
    font-size: var(--fs-300);
    font-weight: var(--fw-medium);
    text-decoration: none;
}
.ag-logo-stats-testimonial .ag-logo-stats-testimonial__link:hover,
.ag-logo-stats-testimonial .ag-logo-stats-testimonial__link:focus { color: var(--ag-lst-link); text-decoration: none; }
.ag-logo-stats-testimonial .ag-logo-stats-testimonial__link:focus-visible { outline: 2px solid var(--ag-lst-link); outline-offset: 4px; border-radius: 2px; }
.ag-logo-stats-testimonial__pfeil { display: inline-block; flex: none; transition: transform var(--motion-duration-s) var(--ag-lst-kurve); }
.ag-logo-stats-testimonial__link:hover .ag-logo-stats-testimonial__pfeil { transform: translateX(var(--ag-lst-versatz)); }

/* ── Kennzahlen typografisch ─────────────────────────────────────── */
.ag-logo-stats-testimonial__zahlen {
    display: grid;
    grid-template-columns: repeat(var(--ag-lst-spalten, 4), minmax(0, 1fr));
}
.ag-logo-stats-testimonial__zahl {
    display: grid;
    align-content: start;
    gap: var(--spacing-ms);
    padding-inline: var(--spacing-l);
    border-left: 1px solid var(--ag-lst-linie);
}
.ag-logo-stats-testimonial__zahl:first-child { padding-left: 0; border-left: 0; }
.ag-logo-stats-testimonial__wert {
    color: var(--ag-lst-fg);
    font-size: var(--ag-titel-hero-80-fs);              /* Display/L */
    line-height: 1;
    font-weight: var(--ag-titel-hero-80-fw);
    letter-spacing: -.03em;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}
.ag-logo-stats-testimonial__strich {
    display: block;
    width: var(--spacing-xxl);                           /* 64 */
    height: 2px;
    background: var(--gradient-fusion-basic);
    transform-origin: left center;
    transition: transform var(--motion-duration-xl) var(--ag-lst-kurve);
}
/* Nur wenn das Skript die Zeile übernimmt, startet der Strich bei 0 — ohne JS steht er. */
.ag-logo-stats-testimonial__zahlen.is-wartet .ag-logo-stats-testimonial__strich { transform: scaleX(0); }
.ag-logo-stats-testimonial__zahl-label { color: var(--ag-lst-leise); font-size: var(--fs-400); font-weight: var(--fw-light); line-height: 1.4; }
.ag-logo-stats-testimonial__zahl:nth-child(2) .ag-logo-stats-testimonial__strich { transition-delay: calc(var(--motion-stagger-m) * 1); }
.ag-logo-stats-testimonial__zahl:nth-child(3) .ag-logo-stats-testimonial__strich { transition-delay: calc(var(--motion-stagger-m) * 2); }
.ag-logo-stats-testimonial__zahl:nth-child(4) .ag-logo-stats-testimonial__strich { transition-delay: calc(var(--motion-stagger-m) * 3); }

/* ── Siegel ──────────────────────────────────────────────────────── */
.ag-logo-stats-testimonial__siegel {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--spacing-ml) var(--spacing-xl);
    padding-top: var(--spacing-xl);
    border-top: 1px solid var(--ag-lst-linie);
}
.ag-logo-stats-testimonial__siegel-titel { margin: 0; color: var(--ag-lst-leise); font-size: var(--fs-200); line-height: 1.4; }
.ag-logo-stats-testimonial__siegel-liste { display: flex; flex-wrap: wrap; gap: var(--spacing-m); margin: 0; padding: 0; list-style: none; }
.ag-logo-stats-testimonial__siegel-eintrag { margin: 0; padding: 0; }
.ag-logo-stats-testimonial .ag-logo-stats-testimonial__siegel-flaeche {
    display: flex;
    align-items: center;
    gap: var(--spacing-ms);
    min-height: 72px;                                    /* tmp — wie Reiterhöhe */
    padding: var(--spacing-ms) var(--spacing-ml);
    border-radius: var(--radius-s);
    color: var(--ag-lst-fg);
    text-decoration: none;
}
/* Bild-Siegel: Das Bild selbst ist 80 hoch, das Polster (12 oben/unten) bleibt —
   die Fläche wächst dadurch auf 104. Löst die feste Eintragshöhe 80 vom 29.09.2026 ab.
   Text-Siegel bleiben bei 72. Entscheidung Vincent, 30.09.2026. */
.ag-logo-stats-testimonial__siegel-eintrag--bild .ag-logo-stats-testimonial__siegel-flaeche { background: var(--color-surface-lightest); }
.ag-logo-stats-testimonial__siegel-eintrag--text .ag-logo-stats-testimonial__siegel-flaeche { box-shadow: inset 0 0 0 1px var(--ag-lst-linie-stark); }
.ag-logo-stats-testimonial .ag-logo-stats-testimonial__siegel-bild { display: block; height: 80px; width: auto; max-width: 220px; object-fit: contain; }   /* tmp — Siegelhöhe Bild 80, kein Token für 80 */
.ag-logo-stats-testimonial__siegel-icon { flex: none; width: 44px; height: 44px; }
.ag-logo-stats-testimonial__siegel-text { display: grid; gap: var(--spacing-xxs); }
.ag-logo-stats-testimonial__siegel-label { font-size: var(--fs-300); font-weight: var(--fw-medium); line-height: 1.2; }
.ag-logo-stats-testimonial__siegel-zusatz { color: var(--ag-lst-leise); font-size: var(--fs-100); line-height: 1.35; }

/* ── Tablet und Mobil ────────────────────────────────────────────── */
@media (max-width: 1023px) {
    .ag-logo-stats-testimonial__panel,
    .ag-logo-stats-testimonial--aufteilung-haelfte .ag-logo-stats-testimonial__panel { grid-template-columns: minmax(0, 1fr); row-gap: var(--spacing-ml); }
    .ag-logo-stats-testimonial__zitat { padding-right: 0; }
    .ag-logo-stats-testimonial__zitat,
    .ag-logo-stats-testimonial__meta,
    .ag-logo-stats-testimonial--aufteilung-haelfte .ag-logo-stats-testimonial__zitat,
    .ag-logo-stats-testimonial--aufteilung-haelfte .ag-logo-stats-testimonial__meta { grid-column: 1 / -1; }
    .ag-logo-stats-testimonial__meta { padding-left: 0; padding-top: var(--spacing-ml); border-left: 0; border-top: 1px solid var(--ag-lst-linie); }
}

@media (max-width: 767px) {
    .ag-logo-stats-testimonial--banner { --ag-lst-gap: var(--spacing-xl); }
    .ag-logo-stats-testimonial__reiter-scroller {
        margin-inline: calc(var(--spacing-m) * -1);
        padding-inline: var(--spacing-m);
        scroll-snap-type: x mandatory;
        /* Seitliches Ausfaden wie die schwebende Leiste (ag_tabs_bar_pill,
           Stil e): Eine Kante läuft nur dann weich aus, wenn dort Logos
           verborgen sind — die Klassen hat-fade-links/-rechts setzt
           logo-stats-testimonial.js aus der Scrollposition. 0px = harte Kante.
           Auftrag Vincent, 25.09.2026 (SS1). Maske: nur Deckkraft, `black` = sichtbar. */
        --ag-lst-fade-links: 0px;
        --ag-lst-fade-rechts: 0px;
        -webkit-mask-image: linear-gradient(90deg, transparent 0, black var(--ag-lst-fade-links), black calc(100% - var(--ag-lst-fade-rechts)), transparent 100%);
        mask-image: linear-gradient(90deg, transparent 0, black var(--ag-lst-fade-links), black calc(100% - var(--ag-lst-fade-rechts)), transparent 100%);
    }
    /* Breite der Ausblendzone = --ag-tabs-bar-pill-anschnitt (96), damit beide
       Leisten gleich auslaufen. */
    .ag-logo-stats-testimonial__reiter-scroller.hat-fade-links { --ag-lst-fade-links: var(--ag-lst-anschnitt); }
    .ag-logo-stats-testimonial__reiter-scroller.hat-fade-rechts { --ag-lst-fade-rechts: var(--ag-lst-anschnitt); }
    .ag-logo-stats-testimonial__reiter { justify-content: flex-start; }
    /* Mobil: Reiter so breit wie ihr Logo, die Reihe wischt. */
    .ag-logo-stats-testimonial .ag-logo-stats-testimonial__tab { flex: 0 0 auto; white-space: nowrap; scroll-snap-align: start; }
    /* Deckel ohne %: Im Wischmodus ist der Reiter so breit wie sein Inhalt —
       ein Prozent-Deckel greift bei dieser Breitenberechnung nicht, der Reiter
       nahm die volle Eigenbreite des Bildes an. Gemessen 25.09.2026, 390 px:
       Reiter 209/113/222/352 (Abstände 49–192) → 192/113/192/192 (je 32). */
    .ag-logo-stats-testimonial .ag-logo-stats-testimonial__tab-logo { max-width: var(--ag-lst-logo-breite); }
    .ag-logo-stats-testimonial__buehne { margin-top: var(--spacing-ml); }
    .ag-logo-stats-testimonial__zahlen { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: var(--spacing-l); }
    .ag-logo-stats-testimonial__zahl:nth-child(odd) { padding-left: 0; border-left: 0; }
    .ag-logo-stats-testimonial__siegel { flex-direction: column; align-items: flex-start; }
}

@media (prefers-reduced-motion: reduce) {
    .ag-logo-stats-testimonial--banner .ag-logo-stats-testimonial__panel,
    .ag-logo-stats-testimonial--banner .ag-logo-stats-testimonial__spur-aktiv,
    .ag-logo-stats-testimonial--banner .ag-logo-stats-testimonial__strich { transition: none; }
    .ag-logo-stats-testimonial--banner .ag-logo-stats-testimonial__spur-fuellung { animation: none; }
}
