/* ============================================================
   Reseñas Edenred (Schema) — estilos del widget
   ============================================================ */

.edenred-reviews {
    width: 100%;
}

/* ---- Cabecera + valoración global ---- */
.edenred-reviews-head {
    text-align: center;
    margin-bottom: 32px;
}

.edenred-reviews-title {
    font-size: 28px;
    font-weight: 700;
    color: #0F172A;
    margin: 0 0 12px;
}

.edenred-reviews-aggregate {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: center;
    font-size: 16px;
    color: #0F172A;
}

.edenred-reviews-aggregate-value {
    font-weight: 700;
    font-size: 22px;
}

.edenred-reviews-aggregate-count {
    color: #94A3B8;
}

/* ---- Grid ---- */
.edenred-reviews-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    width: 100%;
}

/* ---- Tarjeta ---- */
.edenred-review-card {
    background: #fff;
    border-radius: 10px;
    padding: 32px 28px;
    box-shadow: 5px 5px 40px rgba(0, 0, 0, 0.08);
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    transition: transform 0.3s ease;
}

/* En modo grid las tarjetas crecen para repartir el 100% del ancho */
.edenred-reviews-grid .edenred-review-card {
    flex: 1 1 calc((100% - 2 * 24px) / 3);
}

.edenred-review-card:hover {
    transform: translateY(-4px);
}

/* ---- Valoración por tarjeta ---- */
.edenred-review-rating {
    margin-bottom: 16px;
    line-height: 1;
}

.edenred-review-rating { display: inline-block; }

/* ---- Sistema de estrellas SVG (track gris + relleno marca recortado) ---- */
.edenred-stars {
    position: relative;
    display: inline-block;
    width: 112px;
    height: 21px;
    line-height: 0;
    vertical-align: middle;
}

.edenred-stars--lg {
    width: 140px;
    height: 26px;
}

.edenred-stars-track,
.edenred-stars-fill {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 112px 21px;
}

.edenred-stars--lg .edenred-stars-track,
.edenred-stars--lg .edenred-stars-fill {
    background-size: 140px 26px;
}

.edenred-stars-track {
    width: 100%;
    background-image: url('assets/stars-5-empty.svg');
}

.edenred-stars-fill {
    width: 0;
    overflow: hidden;
    background-image: url('assets/stars-5.svg');
}

/* ---- Cuerpo ---- */
.edenred-review-body {
    font-size: 17px;
    line-height: 1.6;
    color: #0F172A;
    font-style: italic;
    margin: 0 0 24px;
    padding: 0;
    border: 0;
    flex-grow: 1;
}

.edenred-review-body p {
    margin: 0 0 10px;
}

.edenred-review-body p:last-child {
    margin-bottom: 0;
}

/* ---- Footer ---- */
.edenred-review-footer {
    margin-top: auto;
}

.edenred-review-bar {
    display: block;
    width: 36px;
    height: 4px;
    border-radius: 2px;
    margin-bottom: 16px;
    background: linear-gradient(135deg, var(--ed-grad-1, #F72717), var(--ed-grad-2, #FF007D));
}

.edenred-review-logo {
    margin-bottom: 12px;
}

.edenred-review-logo img {
    height: 48px;
    width: auto;
    max-width: 100%;
    object-fit: contain;
    display: block;
}

.edenred-review-author {
    display: flex;
    flex-direction: column;
}

.edenred-review-name {
    font-weight: 700;
    font-size: 17px;
    color: #000;
}

.edenred-review-company {
    font-size: 14px;
    color: #94A3B8;
}

.edenred-review-date {
    display: block;
    font-size: 13px;
    color: #B4BCC8;
    margin-top: 6px;
}

/* ---- Responsive ---- */
@media (max-width: 1024px) {
    .edenred-reviews-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .edenred-review-card {
        padding: 28px 22px;
    }

    .edenred-reviews-grid .edenred-review-card {
        flex-basis: 100%;
    }
}

/* ---- Origen / enlace de la reseña ---- */
.edenred-review-source {
    display: block;
    font-size: 12px;
    color: #00b67a;
    font-weight: 600;
    margin-top: 8px;
    letter-spacing: 0.2px;
}

.edenred-review-link {
    display: inline-block;
    font-size: 13px;
    margin-top: 6px;
    color: #143467;
    text-decoration: underline;
}

.edenred-review-link:hover {
    text-decoration: none;
}

/* ---- Carrusel (Swiper) ---- */
.edenred-reviews-carousel {
    width: 100%;
    position: relative;
}

.edenred-reviews-carousel .swiper-slide {
    height: auto;
    display: flex;
}

.edenred-reviews-carousel .swiper-slide .edenred-review-card {
    width: 100%;
}

.edenred-reviews-carousel .swiper-pagination {
    position: static;
    margin-top: 24px;
}

.edenred-reviews-carousel .swiper-pagination-bullet-active {
    background: #00b67a;
}

.edenred-reviews-carousel .swiper-button-prev,
.edenred-reviews-carousel .swiper-button-next {
    color: #143467;
}

.edenred-reviews-carousel .swiper-button-prev:after,
.edenred-reviews-carousel .swiper-button-next:after {
    font-size: 28px;
}
