/**
 * Section: Testimonial — Single
 * RSD Design Language Wave 5 Primitive 1.
 * Companion to: pages/sections/testimonial-single.php
 *
 * @since 3.5.70 (RSD primitives band)
 */

[data-ssla-type="testimonial-single"]{
    padding: var(--shell-section-padding-y-generous) 48px;
    background: var(--shell-surface-warm);
}

[data-ssla-type="testimonial-single"][data-ssla-variant-surface="cream"]{ background: var(--shell-surface-cream); }
[data-ssla-type="testimonial-single"][data-ssla-variant-surface="warm"]{ background: var(--shell-surface-warm); }
[data-ssla-type="testimonial-single"][data-ssla-variant-surface="light"]{ background: var(--shell-surface-light); }
[data-ssla-type="testimonial-single"][data-ssla-variant-surface="dark"]{ background: var(--shell-surface-dark); }
[data-ssla-type="testimonial-single"][data-ssla-variant-surface="darker"]{ background: var(--shell-surface-darker); }

.ssla-testimonial-single{
    max-width: var(--shell-text-max-width);
    margin: 0 auto;
    text-align: center;
    position: relative;
}

[data-ssla-type="testimonial-single"][data-ssla-variant-alignment="left"] .ssla-testimonial-single{
    text-align: left;
    max-width: var(--shell-content-max-width);
}

.ssla-testimonial-single .ssla-eyebrow.is-plain{
    margin-bottom: 32px;
}

/* Quote glyph */
.ssla-testimonial-single-glyph{
    display: none;
    font-family: Georgia, serif;
    font-size: var(--shell-quote-glyph-size);
    line-height: 0.5;
    color: var(--shell-accent);
    margin-bottom: 24px;
    font-weight: 700;
}

.ssla-testimonial-single-glyph::before{
    content: "\201C"; /* opening curly quote */
}

[data-ssla-type="testimonial-single"][data-ssla-variant-quote-style="glyph"] .ssla-testimonial-single-glyph{
    display: block;
}

[data-ssla-type="testimonial-single"][data-ssla-variant-quote-style="bordered"] .ssla-testimonial-single-quote{
    border: 1px solid var(--shell-hairline-strong);
    padding: 48px;
}

[data-ssla-variant-tone="dark"][data-ssla-variant-quote-style="bordered"] .ssla-testimonial-single-quote{
    border-color: var(--shell-hairline-on-dark);
}

/* Attribution */
.ssla-testimonial-single-attribution{
    margin-top: 32px;
    display: flex;
    align-items: center;
    gap: 16px;
}

[data-ssla-type="testimonial-single"][data-ssla-variant-alignment="center"] .ssla-testimonial-single-attribution{
    justify-content: center;
}

.ssla-testimonial-single-photo{
    display: none;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
}

[data-ssla-type="testimonial-single"][data-ssla-variant-attribution-style="with-photo"] .ssla-testimonial-single-photo{
    display: block;
}

.ssla-testimonial-single-logo{
    display: none;
    height: 32px;
    width: auto;
    flex-shrink: 0;
}

[data-ssla-type="testimonial-single"][data-ssla-variant-attribution-style="with-logo"] .ssla-testimonial-single-logo{
    display: block;
}

[data-ssla-type="testimonial-single"][data-ssla-variant-attribution-style="text-only"] .ssla-testimonial-single-attribution{
    display: block;
}

@media (max-width: 767px) {
    [data-ssla-type="testimonial-single"]{
        padding: 80px 24px;
    }
}

/* ─── v3.7.06 / Pass 4 Band 4a — manifest selector resolution ──────────
   Template emits .ssla-testimonial-single-name; existing CSS uses
   (removed legacy class). The manifest selectors{}
   declares the template's name. This rule gives the manifest-declared
   class a real CSS rule. */

.ssla-testimonial-single-name{
    font-size: 16px;
    font-weight: 600;
    color: var(--shell-text-dark);
}

[data-ssla-variant-tone="dark"] .ssla-testimonial-single-name{
    color: var(--shell-text-on-dark);
}
