/*1st Section*/

.client_testimonials-hero-section {
    .section_inner {
        padding: max(10.416688rem, min(13.0208vw, 15.625rem)) 0 max(3.125rem, min(3.9063vw, 4.6875rem));
    }
}

.client_testimonials-hero-section {
    .client_testimonials-hero-header {
        text-align: center;
        
        h2 {
            font-family: var(--font-dm-sans);
            font-size: max(4.166688rem, min(calc(5.2083vw * var(--desktop-font-vw-scale, 1)), 6.25rem));
            font-weight: 900;
            line-height: 0.8;
            letter-spacing: -0.0625rem;
            text-transform: uppercase;
            max-width: 12ch;
            margin: 0 auto;
            
            span {
                display: inline-block;
            }
                
            span.highlighted-span {
                background-color: var(--color-blue);
                border-radius: max(0.5rem, min(0.625vw, 0.75rem));
                padding: max(0.625rem, min(0.7813vw, 0.9375rem));
                margin-block: max(0.625rem, min(0.7813vw, 0.9375rem));
            }
        }
        
        p {
            font-family: var(--font-dm-sans);
            font-size: max(0.833313rem, min(calc(1.0417vw * var(--desktop-font-vw-scale, 1)), 1.25rem));
            font-weight: 500;
            line-height: 1.8;
            letter-spacing: 0;
            max-width: 71ch;
            margin: max(1.041688rem, min(1.3021vw, 1.5625rem)) auto 0;
            color: var(--color-white);
            opacity: 0.6;
        }
    }
}

@media(max-width:989px) {
    .client_testimonials-hero-section {
        .section_inner {
            padding: 100px 0 1.875rem;
        }
    }
}

@media(min-width:768px) and (max-width:1023px) {
    .client_testimonials-hero-section {
        .client_testimonials-hero-header {
            h2 {
                font-size: 2.75rem;
            }
        }
    }
}

@media(max-width:767px) {
    .client_testimonials-hero-section {
        .section_inner {
            padding: 100px 0 1.25rem;
        }
    }
    
    .client_testimonials-hero-section {
        .client_testimonials-hero-header {
            text-align: left;
            
            h2 {
                max-width: none;
                margin: 0;
                font-size: 2rem;
                letter-spacing: -0.03125rem;
                line-height: 1.08;
                text-align: left;
                
                span {
                    display: block;
                }

                span.highlighted-span {
                    width: fit-content;
                    padding: 0.25rem 0.5rem;
                    margin-block: 0.25rem;
                    border-radius: 0.375rem;
                }
            }

            p {
                margin-left: 0;
                margin-right: 0;
                text-align: left;
            }
        }
    }
}

@media(max-width:480px) {
    .client_testimonials-hero-section {
        .client_testimonials-hero-header {
            h2 {
                font-size: 2rem;
                line-height: 1.1;
            }
        }
    }
}


/*2nd Section - 4 Review Badges*/

.client_testimonials-review-section {
    .section_inner {
        padding: max(3.125rem, min(3.9063vw, 4.6875rem)) 0;
    }
}

.client_testimonials-review-info {
    .client_testimonials-review-info-card {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        justify-content: center;
        gap: max(0.833313rem, min(1.0417vw, 1.25rem));
        
        .client_testimonials-review-info-card-item {
            background-color: var(--color-white);
            border-radius: max(0.5rem, min(0.625vw, 0.75rem));
            padding: max(1.041688rem, min(1.3021vw, 1.5625rem)) max(0.833313rem, min(1.0417vw, 1.25rem));
            display: flex;
            flex-direction: row;
            align-items: center;
            gap: max(0.833313rem, min(1.0417vw, 1.25rem));
            min-width: 0;
            box-sizing: border-box;
            
            .client_testimonials-review-info-card-item-img {
                width: max(2.916688rem, min(3.6458vw, 4.375rem));
                height: max(2.916688rem, min(3.6458vw, 4.375rem));
                max-width: max(2.916688rem, min(3.6458vw, 4.375rem));
                flex-shrink: 0;
                
                img {
                    width: 100%;
                    height: 100%;
                    display: block;
                    object-fit: contain;
                }
            }
            
            .client_testimonials-review-info-details {
                min-width: 0;
                flex: 1;
                
                .client_testimonials-review-info-rating {
                    display: flex;
                    flex-direction: row;
                    align-items: center;
                    flex-wrap: nowrap;
                    gap: max(0.375rem, min(0.5208vw, 0.625rem));
                    margin-bottom: max(0.1875rem, min(0.3125vw, 0.375rem));
                    
                    .client_testimonials-review-info-rating-star {
                        display: flex;
                        flex-direction: row;
                        align-items: center;
                        gap: max(0.166687rem, min(0.2083vw, 0.25rem));
                        flex-shrink: 0;

                        img {
                            width: max(0.583313rem, min(0.7292vw, 0.875rem));
                            height: auto;
                            display: block;
                            flex-shrink: 0;
                        }
                    }
                    
                    span {
                        font-family: var(--font-dm-sans);
                        font-size: max(0.75rem, min(calc(0.8333vw * var(--desktop-font-vw-scale, 1)), 1rem));
                        font-weight: 600;
                        color: var(--color-black);
                        white-space: nowrap;
                        flex-shrink: 0;
                    }
                }
                
                .client_testimonials-review-info-desc {
                    margin-top: max(0.125rem, min(0.2083vw, 0.25rem));
                    line-height: 1.25;
                    
                    span {
                        font-family: var(--font-dm-sans);
                        font-size: max(0.583313rem, min(calc(0.7292vw * var(--desktop-font-vw-scale, 1)), 0.875rem));
                        line-height: 1.25;
                        color: var(--color-black);
                        display: block;
                    }
                }
            }
        }
    }
}

@media(max-width: 1023px) {
    .client_testimonials-review-info {
        .client_testimonials-review-info-card {
            grid-template-columns: repeat(2, 1fr);

            .client_testimonials-review-info-card-item {
                .client_testimonials-review-info-details {
                    .client_testimonials-review-info-rating {
                        display: flex;
                        flex-direction: row;
                        align-items: center;
                        flex-wrap: wrap;
                    }
                }
            }
        }
    }
}

@media(max-width:989px) {
    .client_testimonials-review-section {
        .section_inner {
            padding: 1.875rem 0;
        }
    }

    .client_testimonials-review-info {
        .client_testimonials-review-info-card {
            grid-template-columns: repeat(2, 1fr);
        }
    }
}

@media(max-width:767px) {
    .client_testimonials-review-section {
        .section_inner {
            padding: 1.25rem 0;
        }
    }
}

@media(max-width:580px) {
    .client_testimonials-review-info {
        .client_testimonials-review-info-card {
            grid-template-columns: 1fr;
        }
    }
}


/*3rd Section - Video Showcase*/

.client_testimonials-video-section {
    .section_inner {
        padding: max(3.125rem, min(3.9063vw, 4.6875rem)) 0;
        
        .client_testimonials_video_container {
            max-width: max(52.666688rem, min(65.8333vw, 79rem));
            margin: 0 auto;
        }
    }
}

.client_testimonials-video-section {
    .client_testimonials-video-header {
        
        h2 {
            font-family: var(--font-dm-sans);
            font-size: max(2.25rem, min(calc(2.8125vw * var(--desktop-font-vw-scale, 1)), 3.375rem));
            font-weight: 500;
            line-height: 1.15;
            letter-spacing: max(0.0625rem, min(0.1563vw, 0.1875rem));
        }
        
        p {
            font-family: var(--font-dm-sans);
            font-size: max(0.75rem, min(calc(0.9375vw * var(--desktop-font-vw-scale, 1)), 1.125rem));
            font-weight: 400;
            line-height: 1.7;
            letter-spacing: 0;
            margin-top: max(0.416687rem, min(0.5208vw, 0.625rem));
            color: var(--color-white);
            opacity: 0.6;
        }
    }
}

.client_testimonials-video-info {
    margin: max(2.5rem, min(3.125vw, 3.75rem)) 0 0;
    
    .client_testimonials-video-info-card {
        display: grid;
        grid-template-columns: max(20.583313rem, min(25.7292vw, 30.875rem)) 1fr;
        align-items: center;
        gap: max(3.125rem, min(5.2083vw, 6.25rem));
        
        .client_testimonials-video-info-video {
            aspect-ratio: 11 / 10;
            overflow: hidden;
            border: max(0.25rem, min(0.3125vw, 0.375rem)) solid var(--color-white);
            border-radius: max(0.5rem, min(0.625vw, 0.75rem));
            
            video {
              width: 100%;
              height: 100%;
              object-fit: cover;
              display: block;
            }
        }
        
        .client_testimonials-video-info-details {
            display: flex;
            flex-direction: column;
            justify-content: center;
            gap: max(1.25rem, min(1.5625vw, 1.875rem));
            
            .client_testimonials-video-info-details-top {
                img {
                    max-width: max(8.75rem, min(10.9375vw, 13.125rem));
                    height: auto;
                    display: block;
                }
                
                p {
                    font-family: var(--font-dm-sans);
                    font-size: max(0.833313rem, min(calc(1.0417vw * var(--desktop-font-vw-scale, 1)), 1.25rem));
                    font-weight: 400;
                    line-height: 1.8;
                    letter-spacing: 0;
                    margin: max(1.041688rem, min(1.3021vw, 1.5625rem)) 0 0;
                }
            }
            
            .client_testimonials-video-info-details-bottom {
                
                h4 {
                    font-family: var(--font-dm-sans);
                    font-size: max(1rem, min(calc(1.25vw * var(--desktop-font-vw-scale, 1)), 1.5rem));
                    font-weight: 700;
                    line-height: 1.2;
                    letter-spacing: 0;
                    margin: 0 0 max(0.416687rem, min(0.5208vw, 0.625rem));
                }
                
                span {
                    font-family: var(--font-dm-sans);
                    font-size: max(0.666687rem, min(calc(0.8333vw * var(--desktop-font-vw-scale, 1)), 1rem));
                    font-weight: 400;
                    line-height: 1.25;
                    letter-spacing: 0;
                }
            }
        }
    }
}

@media(max-width:989px) {
    .client_testimonials-video-section {
        .section_inner {
            padding: 1.875rem 0;
        }
    }
    
    .client_testimonials-video-info {
        .client_testimonials-video-info-card {
            gap: 3.125rem;
        }
    }
}

@media(max-width:767px) {
    .client_testimonials-video-section {
        .section_inner {
            padding: 1.25rem 0 3rem;
        }
    }

    .client_testimonials-video-section {
        .client_testimonials-video-header {
            h2 {
                font-size: 1.625rem;
                letter-spacing: 0.0625rem;
            }
        }
    }
    
    .client_testimonials-video-info {
        margin: 1.875rem 0 0;
        
        .client_testimonials-video-info-card {
            grid-template-columns: 1fr;
            gap: 1.875rem;
        }
    }
}


/*4th Section - Reviews Grid*/

.client_testimonials-reviews-section {
    .section_inner {
        padding: max(3.125rem, min(3.9063vw, 4.6875rem)) 0;
    }
}

.client_testimonials-reviews-section {
    .client_testimonials-reviews-header {
        
        h2 {
            font-family: var(--font-dm-sans);
            font-size: max(2.25rem, min(calc(2.8125vw * var(--desktop-font-vw-scale, 1)), 3.375rem));
            font-weight: 500;
            line-height: 1.15;
            letter-spacing: max(0.0625rem, min(0.1563vw, 0.1875rem));
        }
        
        p {
            font-family: var(--font-dm-sans);
            font-size: max(0.75rem, min(calc(0.9375vw * var(--desktop-font-vw-scale, 1)), 1.125rem));
            font-weight: 400;
            line-height: 1.7;
            letter-spacing: 0;
            margin-top: max(0.416687rem, min(0.5208vw, 0.625rem));
            color: var(--color-white);
            opacity: 0.6;
            max-width: 56ch;
        }
    }
}

.client_testimonials-reviews-info {
    column-count: 3;
    column-gap: max(0.833313rem, min(1.0417vw, 1.25rem));
    margin: max(2.5rem, min(3.125vw, 3.75rem)) 0 0;
    width: 100%;
    
    .client_testimonials-reviews-info-card {
        display: inline-block;
        width: 100%;
        box-sizing: border-box;
        break-inside: avoid;
        break-inside: avoid-column;
        -webkit-column-break-inside: avoid;
        page-break-inside: avoid;
        transform: translateZ(0);
        background-color: #080808;
        border: 0.0625rem solid #151515;
        border-radius: max(0.5rem, min(0.625vw, 0.75rem));
        padding: max(1.666688rem, min(2.0833vw, 2.5rem));
        margin-bottom: max(0.833313rem, min(1.0417vw, 1.25rem));
        
        .client_testimonials-reviews-info-card-title {
            h3 {
                font-family: var(--font-dm-sans);
                font-size: max(1rem, min(calc(1.25vw * var(--desktop-font-vw-scale, 1)), 1.5rem));
                font-weight: 700;
                line-height: 1.25;
            }
        }
        
        .client_testimonials-reviews-info-card-service {
            margin-top: max(0.833313rem, min(1.0417vw, 1.25rem));
            
            h5 {
                font-family: var(--font-dm-sans);
                font-size: max(0.666687rem, min(calc(0.8333vw * var(--desktop-font-vw-scale, 1)), 1rem));
                font-weight: 600;
                line-height: 1.6;
                
                span {
                    font-weight: 400;
                    opacity: 0.6;
                }
            }
        }
        
        .client_testimonials-reviews-info-card-desc {
            p {
                font-family: var(--font-dm-sans);
                font-size: max(0.666687rem, min(calc(0.8333vw * var(--desktop-font-vw-scale, 1)), 1rem));
                font-weight: 400;
                line-height: 1.6;
                opacity: 0.6;
                margin-top: max(0.416687rem, min(0.5208vw, 0.625rem));
            }
        }
        
        .client_testimonials-reviews-info-card-ratings {
            display: flex;
            flex-direction: row;
            gap: max(2.5rem, min(3.125vw, 3.75rem));
            margin-top: max(0.833313rem, min(1.0417vw, 1.25rem));
            flex-wrap: wrap;
            
            .client_testimonials-reviews-info-card-ratings-detail {
                h5 {
                    font-family: var(--font-dm-sans);
                    font-size: max(0.666687rem, min(calc(0.8333vw * var(--desktop-font-vw-scale, 1)), 1rem));
                    font-weight: 600;
                    line-height: 1.3;
                }
                
                .client_testimonials-reviews-info-card-rating {
                    display: flex;
                    flex-direction: row;
                    align-items: center;
                    gap: max(0.25rem, min(0.3125vw, 0.375rem));
                    margin-top: max(0.416687rem, min(0.5208vw, 0.625rem));
                    
                    .stars {
                        display: flex;
                        flex-direction: row;
                        align-items: center;
                        gap: max(0.166687rem, min(0.2083vw, 0.25rem));

                        img {
                            width: max(0.583313rem, min(0.7292vw, 0.875rem));
                            height: auto;
                            display: block;
                            flex-shrink: 0;
                        }
                    }
                    
                    span {
                        font-family: var(--font-dm-sans);
                        font-size: max(0.666687rem, min(calc(0.8333vw * var(--desktop-font-vw-scale, 1)), 1rem));
                        font-weight: 600;
                        line-height: 1.3;
                    }
                }
            }
        }
    }
}

.client_testimonials-reviews-button-block {
    margin-top: max(2.5rem, min(3.125vw, 3.75rem));
    
    a,
    .client_testimonials-reviews-button {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: max(4.166688rem, min(5.2083vw, 6.25rem));
        box-sizing: border-box;
        background: #FFFFFF;
        color: #1E1E1E;
        border-radius: max(0.5rem, min(0.625vw, 0.75rem));
        font-family: var(--font-dm-sans);
        font-style: normal;
        font-weight: 700;
        font-size: max(1.083312rem, min(calc(1.3542vw * var(--desktop-font-vw-scale, 1)), 1.625rem));
        line-height: max(1.416688rem, min(1.7708vw, 2.125rem));
        text-align: center;
        text-transform: capitalize;
        text-decoration: none;
    }
}

@media(max-width:989px) {
    .client_testimonials-reviews-section {
        .section_inner {
            padding: 1.875rem 0;
        }
    }

    .client_testimonials-reviews-info {
        column-count: 2;
    }
}

@media(max-width:767px) {
    .client_testimonials-reviews-section {
        .section_inner {
            padding: 1.25rem 0;
        }
    }
    
    .client_testimonials-reviews-section {
        .client_testimonials-reviews-header {
            h2 {
                font-size: 1.625rem;
                letter-spacing: 0.0625rem;
            }
        }
    }

    .client_testimonials-reviews-info {
        margin: 1.875rem 0rem 0rem;
                
        .client_testimonials-reviews-info-card {
            padding: 1.25rem;
            
            .client_testimonials-reviews-info-card-ratings {
                display: flex;
                flex-direction: column;
                gap: 1.25rem;
            }
        }
    }

    .client_testimonials-reviews-button-block {
        margin-top: 1.875rem;
        
        a,
        .client_testimonials-reviews-button {
            height: auto;
            min-height: 3.125rem;
            padding: 0.75rem 1rem;
            font-size: 1rem;
            line-height: 1.375rem;
        }
    }
}

@media(max-width:639px) {
    .client_testimonials-reviews-info {
        column-count: 1;
    }
}


/* Hides the timeline/progress bar */
.client_testimonials-video-info video::-webkit-media-controls-timeline {
  display: none !important;
}

/* Hides time remaining/duration display */
.client_testimonials-video-info video::-webkit-media-controls-current-time-display,
.client_testimonials-video-info video::-webkit-media-controls-time-remaining-display {
  display: none !important;
}
