/* =============================================================
   Block: Testimonial
   Prefix: blk-testimonial
   ============================================================= */

.blk-testimonial {
    padding-block: clamp(4.5rem, 9vw, 8rem);
    background: var(--sd-color-gray-50);
    overflow: hidden;
}

.blk-testimonial__inner {
    max-width: var(--sd-container-xl);
    margin-inline: auto;
    padding-inline: clamp(1.25rem, 5vw, 3.5rem);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: var(--sd-space-8);
}

/* ── Large decorative quotation mark ── */
.blk-testimonial__mark {
    display: block;
    color: var(--sd-color-cta);
    line-height: 1;
    flex-shrink: 0;
    opacity: 0.85;
}

.blk-testimonial__mark svg {
    width: clamp(2.5rem, 5vw, 4rem);
    height: auto;
}

/* ── Quote text ── */
.blk-testimonial__quote {
    max-width: 820px;
    margin: 0;
}

.blk-testimonial__quote p {
    font-size: clamp(1.25rem, 2.5vw, 1.75rem);
    font-weight: var(--sd-font-weight-light);
    font-style: italic;
    line-height: 1.55;
    letter-spacing: -0.015em;
    color: var(--sd-color-gray-800);
    margin: 0;
}

/* ── Attribution row ── */
.blk-testimonial__attribution {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--sd-space-4);
}

.blk-testimonial__avatar {
    width: 56px;
    height: 56px;
    border-radius: var(--sd-radius-full);
    object-fit: cover;
    flex-shrink: 0;
    border: 2px solid var(--sd-color-gray-200);
}

.blk-testimonial__meta {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--sd-space-1);
    text-align: left;
}

.blk-testimonial__name {
    display: block;
    font-size: var(--sd-font-size-sm);
    font-weight: var(--sd-font-weight-semibold);
    color: var(--sd-color-gray-900);
    letter-spacing: 0.01em;
}

.blk-testimonial__role {
    display: block;
    font-size: var(--sd-font-size-xs);
    color: var(--sd-color-gray-500);
    letter-spacing: 0.02em;
}

.blk-testimonial__sep {
    margin-inline: var(--sd-space-2);
    color: var(--sd-color-gray-300);
}

/* ── Responsive ── */
@media (max-width: 640px) {
    .blk-testimonial__attribution {
        flex-direction: column;
        text-align: center;
    }

    .blk-testimonial__meta {
        align-items: center;
        text-align: center;
    }
}
