/* utils/testimonials.php — Extracted 2026-05-20. */

    .aat-reviews-section {
        position: relative;
        background: #0a0a0c;
    }
    .aat-reviews-bg {
        position: absolute; inset: 0;
        background-size: cover;
        background-position: center top;
        opacity: 0.9;
        z-index: 0;
        pointer-events: none;
    }
    .aat-reviews-bg-overlay {
        position: absolute; inset: 0;
        background: radial-gradient(ellipse at center, rgba(10,10,12,0.15) 0%, rgba(10,10,12,0.55) 80%, rgba(10,10,12,0.78) 100%);
        z-index: 0;
        pointer-events: none;
    }

    /* ---------- Marquee ---------- */
    .aat-reviews-marquee {
        position: relative;
        overflow: hidden;
        width: 100%;
        display: flex;
        /* Headroom so the card's -2px hover lift (and its gold border)
           don't get clipped by overflow:hidden. */
        padding: 6px 0 8px;
    }
    .aat-reviews-track {
        display: flex;
        flex-shrink: 0;
        gap: 24px;
        padding-right: 24px;
        animation: aat-reviews-marquee 240s linear infinite;
        will-change: transform;
    }
    .aat-reviews-marquee:hover .aat-reviews-track {
        animation-play-state: paused;
    }
    @keyframes aat-reviews-marquee {
        0%   { transform: translateX(0); }
        100% { transform: translateX(-100%); }
    }
    .aat-reviews-fade {
        position: absolute; top: 0; bottom: 0; width: 80px;
        z-index: 2; pointer-events: none;
    }
    .aat-reviews-fade-l {
        left: 0;
        background: linear-gradient(to right, #0a0a0c 0%, rgba(10,10,12,0) 100%);
    }
    .aat-reviews-fade-r {
        right: 0;
        background: linear-gradient(to left, #0a0a0c 0%, rgba(10,10,12,0) 100%);
    }
    @media (prefers-reduced-motion: reduce) {
        .aat-reviews-track { animation: none; }
    }

    /* ---------- Cards ---------- */
    .aat-review-card {
        position: relative;
        flex-shrink: 0;
        width: 360px;
        background: rgba(18, 18, 22, 0.78);
        border: 1px solid rgba(212, 175, 55, 0.18);
        border-radius: 14px;
        padding: 28px 26px 22px;
        backdrop-filter: blur(8px);
        display: flex;
        flex-direction: column;
        gap: 18px;
        transition: border-color 0.25s ease, transform 0.25s ease;
    }
    .aat-review-card:hover {
        border-color: rgba(212, 175, 55, 0.45);
        transform: translateY(-2px);
    }
    .aat-review-card-top {
        display: flex; align-items: flex-start; justify-content: space-between; gap: 12px;
    }
    .aat-review-quote {
        font-family: var(--font-heading);
        color: #D4AF37;
        font-size: 56px;
        line-height: 0.6;
        font-weight: 700;
        margin-top: 8px;
    }
    .aat-review-rating {
        display: inline-flex; align-items: center; gap: 8px;
    }
    .aat-review-stars {
        color: #D4AF37;
        font-size: 14px;
        letter-spacing: 2px;
    }
    .aat-review-g {
        display: inline-flex; align-items: center; justify-content: center;
        width: 22px; height: 22px;
        background: #fff;
        border-radius: 50%;
    }
    .aat-review-body {
        color: #cfd1d6;
        font-weight: 300;
        font-size: 14px;
        line-height: 1.65;
        margin: 0;
        flex-grow: 1;
    }
    .aat-review-foot {
        display: flex; align-items: center; gap: 12px;
        padding-top: 14px;
        border-top: 1px solid rgba(255, 255, 255, 0.06);
    }
    .aat-review-avatar {
        flex-shrink: 0;
        width: 38px; height: 38px;
        border-radius: 50%;
        background: rgba(212, 175, 55, 0.12);
        border: 1px solid rgba(212, 175, 55, 0.45);
        color: #D4AF37;
        font-weight: 700;
        font-size: 14px;
        display: inline-flex; align-items: center; justify-content: center;
        font-family: 'Manrope', sans-serif;
    }
    .aat-review-meta {
        display: flex; flex-direction: column; gap: 2px; min-width: 0;
    }
    .aat-review-name {
        color: #fff; font-weight: 700; font-size: 13px;
        font-family: 'Manrope', sans-serif;
    }
    .aat-review-verified {
        color: #9ca3af;
        font-size: 10px;
        letter-spacing: 0.18em;
        text-transform: uppercase;
        text-decoration: none;
        transition: color 0.2s ease;
    }
    .aat-review-verified:hover { color: #D4AF37; }

    /* ---------- Trust strip ---------- */
    .aat-trust-strip {
        display: flex; flex-wrap: wrap; align-items: center; justify-content: center;
        gap: 10px 22px;
        padding: 14px 22px;
        max-width: 720px;
        margin: 0 auto;
        background: rgba(18, 18, 22, 0.72);
        border: 1px solid rgba(255,255,255,0.06);
        border-radius: 999px;
        backdrop-filter: blur(8px);
    }
    /* Plain variant: no pill, just inline text on the section bg. Used on homepage. */
    .aat-trust-strip.aat-trust-strip-plain {
        background: transparent;
        border: 0;
        backdrop-filter: none;
        padding: 4px 0;
    }
    .aat-trust-item {
        display: inline-flex; align-items: center; gap: 8px;
        color: #e5e7eb; font-size: 13px; font-weight: 500;
        text-decoration: none;
        transition: color 0.2s ease;
    }
    .aat-trust-item:hover:not(.aat-trust-static) { color: #D4AF37; }
    .aat-trust-label { font-weight: 500; color: inherit; }
    .aat-trust-label-muted { color: #9ca3af; font-weight: 400; }
    .aat-trust-stars {
        color: #D4AF37; letter-spacing: 2px; font-size: 12px;
    }
    .aat-trust-stars-tp { color: #00B67A; }
    .aat-trust-divider {
        width: 1px; height: 18px;
        background: rgba(255,255,255,0.12);
    }

    @media (max-width: 768px) {
        .aat-review-card { padding: 24px 22px 20px; width: 300px; }
        .aat-review-quote { font-size: 44px; }
        .aat-trust-strip { gap: 10px 14px; padding: 12px 16px; }
        .aat-trust-divider { display: none; }
        .aat-reviews-fade { width: 40px; }
    }
