/* ==========================================
   RESET
========================================== */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}


html {
    scroll-behavior: smooth;
}


body {
    font-family: Arial, Helvetica, sans-serif;
    background: #ffffff;
    color: #111111;
}



/* ==========================================
   CONTAINER
========================================== */

.container {

    width: min(1112px, 94vw);

    margin: 0 auto;

}



/* ==========================================
   TESTIMONIAL SECTION
========================================== */

.testimonials-section {

    padding: 80px 0;

}



/* ==========================================
   SECTION HEADER
========================================== */

.section-head {

    max-width: 700px;

    margin: 0 auto 45px;

    text-align: center;

}


.section-label {

    display: inline-block;

    padding: 8px 16px;

    margin-bottom: 15px;

    border-radius: 30px;

    background: #e63232;

    color: #ffffff;

    font-size: 13px;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 0.5px;

}


.section-head h1 {

    font-size: clamp(30px, 4vw, 45px);

    line-height: 1.15;

    margin-bottom: 15px;

}


.section-head p {

    color: #666666;

    font-size: 16px;

    line-height: 1.7;

}



/* ==========================================
   TESTIMONIAL GRID
========================================== */

.testimonials-grid {

    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 28px;

}



/* ==========================================
   TESTIMONIAL CARD
========================================== */

.testimonial-card {

    position: relative;

    background: #ffffff;

    padding: 12px;

    border-radius: 20px;

    cursor: pointer;

    box-shadow:
        0 8px 18px rgba(0, 0, 0, 0.08),
        0 15px 30px rgba(24, 35, 70, 0.08);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;

}


.testimonial-card:hover {

    transform: translateY(-7px);

    box-shadow:
        0 15px 25px rgba(0, 0, 0, 0.12),
        0 20px 40px rgba(24, 35, 70, 0.12);

}



/* ==========================================
   VIDEO
========================================== */

.testimonial-video {

    position: relative;

    width: 100%;

    aspect-ratio: 16 / 9;

    overflow: hidden;

    border-radius: 12px;

    background: #eeeeee;

}



/* ==========================================
   VIDEO IMAGE
========================================== */

.testimonial-video img {

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform 0.45s ease;

}


.testimonial-card:hover
.testimonial-video img {

    transform: scale(1.06);

}



/* ==========================================
   DARK OVERLAY
========================================== */

.testimonial-video::after {

    content: "";

    position: absolute;

    inset: 0;

    background:
        rgba(0, 0, 0, 0.05);

    pointer-events: none;

}



/* ==========================================
   PLAY BUTTON
========================================== */

.play-button {

    position: absolute;

    top: 50%;

    left: 50%;

    z-index: 5;

    width: 64px;

    height: 64px;

    transform:
        translate(-50%, -50%);

    border-radius: 50%;

    background:
        rgba(225, 35, 35, 0.92);

    display: flex;

    align-items: center;

    justify-content: center;

    box-shadow:
        0 5px 15px rgba(0, 0, 0, 0.20);

    transition:
        transform 0.3s ease,
        background 0.3s ease,
        box-shadow 0.3s ease;

}



/* ==========================================
   PLAY TRIANGLE
========================================== */

.play-button span {

    width: 0;

    height: 0;

    margin-left: 5px;

    border-top: 9px solid transparent;

    border-bottom: 9px solid transparent;

    border-left: 14px solid #ffffff;

}



/* ==========================================
   PLAY BUTTON HOVER
========================================== */

.testimonial-card:hover
.play-button {

    transform:
        translate(-50%, -50%)
        scale(1.12);

    background: #e52c2c;

    box-shadow:
        0 8px 20px rgba(0, 0, 0, 0.25);

}



/* ==========================================
   TABLET
========================================== */

@media (max-width: 900px) {

    .testimonials-grid {

        grid-template-columns:
            repeat(2, 1fr);

        gap: 24px;

    }

}



/* ==========================================
   MOBILE
========================================== */

@media (max-width: 600px) {

    .testimonials-section {

        padding: 55px 0;

    }


    .testimonials-grid {

        grid-template-columns:
            1fr;

        gap: 22px;

    }


    .testimonial-card {

        padding: 10px;

        border-radius: 17px;

    }


    .testimonial-video {

        border-radius: 10px;

    }


    .play-button {

        width: 58px;

        height: 58px;

    }

}




.testimonials-title {
    position: relative;
    display: inline-block;

    margin-bottom: 30px;

    font-size: clamp(30px, 4vw, 48px);
    font-weight: 800;
    line-height: 1.15;

    color: #111827;
    letter-spacing: -1px;
}

/* Red accent underneath */
.testimonials-title::after {
    content: "";

    position: absolute;
    left: 0;
    bottom: -12px;

    width: 55px;
    height: 4px;

    background: #e63232;
    border-radius: 10px;

    transition: width 0.3s ease;
}

.testimonials-title:hover::after {
    width: 90px;
}