/* ==========================================================================
   Components — Cards, badges, step items, logo bars
   ========================================================================== */

/* Feature Card */
.feature-card {
    background: var(--color-white);
    border: var(--border-card);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-card-lg);
    padding: var(--space-xl) var(--space-lg);
    display: flex;
    flex-direction: column;
    gap: 16px;
    height: 250px;
}

.feature-card__icon {
    width: 56px;
    height: 56px;
    background-color: #FDF2EA;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.feature-card__icon img {
    width: 28px;
    height: 28px;
}

.feature-card__title {
    font-size: var(--fs-lg);
    font-weight: var(--fw-bold);
    color: var(--color-black);
}

.feature-card__body {
    font-size: var(--fs-base);
    font-weight: var(--fw-regular);
    color: var(--color-black);
    letter-spacing: -0.32px;
    line-height: 1.5;
}

/* Stat Card */
.stat-card {
    background-color: var(--color-blue);
    border-radius: var(--radius-xl);
    padding: var(--space-lg);
    text-align: center;
    color: var(--color-white);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--space-sm);
}

.stat-card__number {
    font-size: var(--fs-5xl);
    font-weight: var(--fw-semibold);
}

.stat-card__label {
    font-size: var(--fs-md);
    font-weight: var(--fw-semibold);
}

.stat-card__description {
    font-size: var(--fs-md);
    font-weight: var(--fw-regular);
    max-width: 295px;
}

/* Testimonial Card */
.testimonial-card {
    background: var(--color-white);
    border: var(--border-card);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-card);
    padding: var(--space-xl) var(--space-lg);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: var(--space-xl);
    height: 266px;
}

.testimonial-card__top {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.testimonial-card__quote-icon {
    flex-shrink: 0;
}

.testimonial-card__quote {
    font-size: var(--fs-base);
    font-weight: var(--fw-regular);
    color: var(--color-black);
    letter-spacing: -0.32px;
    line-height: 1.5;
}

.testimonial-card__author {
    display: flex;
    align-items: center;
    gap: var(--space-md);
}

.testimonial-card__avatar {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
}

.testimonial-card__name {
    font-size: var(--fs-base);
    font-weight: var(--fw-semibold);
    color: var(--color-black);
    letter-spacing: -0.32px;
}

.testimonial-card__location {
    font-size: var(--fs-sm);
    font-weight: var(--fw-regular);
    color: #767676;
    letter-spacing: -0.28px;
}

/* Utility: text color helpers */
.text-blue { color: var(--color-blue); }
.text-orange { color: var(--color-orange); }
