/* ============================================================
 * Testimonials Stripe — "Navy Band" (default) + Gray variant.
 * Rides Foundation Orbit (already enqueued + auto-initialized).
 * Per coworker review: no title/subtitle head, quote weight 400,
 * no avatar/initials, no bottom stat line. Gray bg option added.
 * ============================================================ */

.testimonials-stripe {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(120% 160% at 85% -20%, rgba(30, 64, 124, 0.85), transparent 55%),
        radial-gradient(90% 120% at 0% 120%, rgba(150, 190, 230, 0.16), transparent 50%),
        #001E44;
    color: #fff;
    padding: clamp(3rem, 5vw, 4.5rem) clamp(1.25rem, 5vw, 4.5rem);
}

/* ── Gray variant ────────────────────────────────────────── */
.testimonials-stripe--gray {
    background: #D3D8DE;                      /* mock-sampled */
    color: #001E44;
}

/* ── Orbit shell ─────────────────────────────────────────── */
.testimonials-orbit {
    position: relative;
    max-width: 880px;
    margin-inline: auto;
    z-index: 1;
}
.testimonials-orbit__bigquote {
    position: absolute;
    top: -0.1em;
    left: 0.05em;
    font-family: Georgia, serif;
    font-size: clamp(120px, 22vw, 280px);
    line-height: 1;
    color: rgba(150, 190, 230, 0.10);
    pointer-events: none;
    user-select: none;
    z-index: 0;
}
.testimonials-stripe--gray .testimonials-orbit__bigquote {
    color: rgba(0, 30, 68, 0.10);
}

/* eyebrow — "FROM OUR CLIENTS" */
.testimonials-orbit .tcar-eyebrow {
    display: block;
    text-align: center;
    font-family: "Roboto", sans-serif;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #009CDE;
    margin-bottom: 0.25rem;
    position: relative;
    z-index: 1;
}
.testimonials-stripe--gray .tcar-eyebrow {
    color: #001E44;                          /* mock-sampled */
}

.testimonials-orbit .orbit-container {
    position: relative;
    z-index: 1;
    margin: 0;
    height: auto !important;
    list-style: none;
    overflow: visible;
}
.testimonials-orbit .orbit-slide { width: 100%; }
.testimonials-orbit .orbit-slide:not(.is-active) {
    position: absolute;
    top: 0; left: 0;
    opacity: 0;
    pointer-events: none;
}
.testimonials-orbit .orbit-slide.is-active {
    position: relative;
    opacity: 1;
}

/* ── slide content ───────────────────────────────────────── */
.tcar-slide {
    max-width: 820px;
    margin-inline: auto;
    text-align: center;
    padding-inline: 1rem;
}

/* Quote — weight 400 per review. Reset theme blockquote (dark color + border). */
.testimonials-orbit blockquote.tcar-slide__quote {
    margin: 24px auto 40px;
    padding: 0;
    border: 0;
    background: none;
    quotes: none;
    font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
    font-weight: 400;
    font-size: clamp(1.35rem, 3vw, 2.4rem);
    line-height: 1.3;
    letter-spacing: -0.01em;
    color: #fff !important;
    text-wrap: balance;
}
.testimonials-orbit blockquote.tcar-slide__quote,
.testimonials-orbit blockquote.tcar-slide__quote p {
    color: #fff !important;
}
.testimonials-orbit blockquote.tcar-slide__quote p {
    margin: 0;
    font-weight: 400;
    line-height: 1.3;
}
/* Gray variant ink — declared after the white rule so it wins on equal specificity. */
.testimonials-stripe--gray blockquote.tcar-slide__quote,
.testimonials-stripe--gray blockquote.tcar-slide__quote p {
    color: #001E44 !important;
}
.testimonials-orbit blockquote.tcar-slide__quote::before,
.testimonials-orbit blockquote.tcar-slide__quote::after { content: none; }

/* attribution — name + role only (no avatar) */
.tcar-slide__attr {
    margin-bottom: 0;
    text-align: center;
}
.tcar-slide__who { text-align: center; }
.tcar-slide__name {
    font-family: "Roboto", sans-serif;
    font-weight: 700;
    font-size: 18px;
    letter-spacing: -0.01em;
    color: #fff;
}
.testimonials-stripe--gray .tcar-slide__name { color: #001E44; }
.tcar-slide__role {
    font-size: 14px;
    line-height: 1.4;
    color: #96BEE6;
    margin-top: 2px;
}
.testimonials-stripe--gray .tcar-slide__role { color: #5A6B82; }

/* ── controls ────────────────────────────────────────────── */
.testimonials-orbit .orbit-bullets {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    margin-top: 36px;
    padding: 0;
    border: 0;
    background: none;
}
.testimonials-orbit .orbit-bullets button {
    width: 9px;
    height: 9px;
    margin: 0;
    padding: 0;
    border-radius: 999px;
    border: 0;
    background: rgba(255, 255, 255, 0.25);
    cursor: pointer;
    transition: background 150ms ease, width 150ms ease;
}
.testimonials-stripe--gray .orbit-bullets button { background: rgba(0, 30, 68, 0.20); }
.testimonials-orbit .orbit-bullets button:hover { background: rgba(255, 255, 255, 0.4); }
.testimonials-orbit .orbit-bullets button.is-active {
    width: 26px;
    background: #009CDE;
}
.testimonials-stripe--gray .orbit-bullets button.is-active { background: #001E44; }

.testimonials-orbit .orbit-previous,
.testimonials-orbit .orbit-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    width: 46px;
    height: 46px;
    padding: 0;
    margin: 0;
    display: grid;
    place-items: center;
    border-radius: 999px;
    border: 1px solid rgba(150, 190, 230, 0.45);
    background: rgba(255, 255, 255, 0.06);
    color: #96BEE6;
    line-height: 1;
    cursor: pointer;
    transition: background 150ms ease, border-color 150ms ease, color 150ms ease;
}
.testimonials-stripe--gray .orbit-previous,
.testimonials-stripe--gray .orbit-next {
    border-color: rgba(0, 30, 68, 0.30);
    background: rgba(0, 30, 68, 0.04);
    color: #001E44;
}
.testimonials-orbit .orbit-previous svg,
.testimonials-orbit .orbit-next svg { display: block; }
.testimonials-orbit .orbit-previous:hover,
.testimonials-orbit .orbit-next:hover,
.testimonials-orbit .orbit-previous:focus-visible,
.testimonials-orbit .orbit-next:focus-visible {
    background: rgba(255, 255, 255, 0.14);
    border-color: #96BEE6;
}
.testimonials-stripe--gray .orbit-previous:hover,
.testimonials-stripe--gray .orbit-next:hover,
.testimonials-stripe--gray .orbit-previous:focus-visible,
.testimonials-stripe--gray .orbit-next:focus-visible {
    background: rgba(0, 30, 68, 0.10);
    border-color: #001E44;
}
.testimonials-orbit .orbit-previous { left: 0; }
.testimonials-orbit .orbit-next { right: 0; }

/* ── responsive ──────────────────────────────────────────── */
@media screen and (max-width: 880px) {
    /* keep arrows from overlapping text on tablet */
    .testimonials-orbit .orbit-previous { left: -4px; }
    .testimonials-orbit .orbit-next { right: -4px; }
    .tcar-slide { padding-inline: 2.75rem; }
}
@media screen and (max-width: 640px) {
    .testimonials-stripe { padding: clamp(2.5rem, 8vw, 3.5rem) 1.25rem; }
    .testimonials-orbit__bigquote { font-size: 110px; }
    /* arrows would crowd the quote on phones — hide, bullets remain */
    .testimonials-orbit .orbit-previous,
    .testimonials-orbit .orbit-next { display: none; }
    .tcar-slide { padding-inline: 0; }
    .testimonials-orbit blockquote.tcar-slide__quote { margin: 16px auto 28px; }
}

/* ============================================================
 * Client-feedback fixes (2026-06-22) — spacing + gentle fade.
 * NOTE: do NOT override Orbit's mui-/animation classes or add a
 * transition to outgoing slides — that stalls Orbit's slide engine.
 * ============================================================ */

/* Gentle fade-in on the incoming (active) slide only. Pure opacity,
 * no transform, so Orbit's state machine is untouched. */
.testimonials-orbit .orbit-slide.is-active {
    animation: ptFadeIn 600ms ease both;
}
@keyframes ptFadeIn {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* Keep the quote in the lane between the arrows so text never
 * overlaps prev/next. Arrows pushed to the shell edges. */
.testimonials-orbit .orbit-previous { left: -8px; }
.testimonials-orbit .orbit-next     { right: -8px; }
.tcar-slide {
    max-width: 640px;
    padding-inline: 1.5rem;
}
@media screen and (max-width: 880px) {
    .testimonials-orbit .orbit-previous { left: 0; }
    .testimonials-orbit .orbit-next     { right: 0; }
    .tcar-slide { max-width: 560px; padding-inline: 3.5rem; }
}
