.hero-section {
    background-image: url(/../../wp-content/uploads/2025/04/Hero-Image-review.png);
    background-size: cover;
    background-position: center;
    height:35vw;
    color: #fff;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}

.hero-section-text {
    position: absolute;
    width: 440px;
}
.hero-section-text .pre-text {
    font-family: Lato;
    font-weight: 700;
    font-size: 18px;
    line-height: 150%;
    text-align: center;
    color: #273133;
}
.hero-section-text h1 {
    font-family: Lato;
    font-weight: 800;
    font-size: 42px;
    line-height: 110%;
    margin: 10px;
    color: #273133;
    text-align: center;
    
}
.hero-section-text a {
    background: #d81671;
    gap: 10px;
    border: 2px solid;
    display: flex;
    border-radius: 6px;
    font-family: 'Lato';
    font-size: 16px;
    text-transform: uppercase;
    padding: 12px 20px;
    width: 210px;
    text-align: center;
    margin: auto;
    color: white;
    align-items: center;
    transition: all 0.5s ease;
    justify-content: center;
}
.reviews-wrapper {
    margin-top: 20px;
}
h2.review_header {
    font-family: Lato;
    font-weight: 600;
    font-size: 40px;
    line-height: 100%;
    text-align: center;
}

.reviews-container {
    column-count: 3;
    column-gap: 40px;
    max-width: 1240px;
	margin-top: 60px;
    margin-inline: auto;
}
@media screen and (min-width: 1240px) and (max-width: 1319px) {

	.page-template-reviews .reviews-container {
    max-width: 1160px;
}
	.page-template-reviews .review-card {
        width: 310px !important;
		}
}

@media screen and (min-width: 768px) and (max-width: 1024px) {
    .page-template-reviews .reviews-container {
        column-count: 1;
        column-gap: 40px;
        margin: 40px;
    }
    .page-template-reviews .review-card {
    width: 310px;
    margin: 0 00px 20px 00px !important;
    }

}

@media screen and (min-width: 768px) {
		.review-block{
		max-width:280px;
	}
	.review_companies .wpb_column.vc_column_container.vc_col-sm-6{
		max-width:320px !important;
	}
	.review_io .review-block img {
    margin-bottom: 25px;
	}
}
@media screen and (min-width: 768px) and (max-width: 1023px){
	.review_io .review-block img {
    margin-bottom: 20px;
	width: 160px;
}
}
.review_companies {
    display: flex;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .page-template-reviews .reviews-container {
        column-count: 1;
		margin: 40px 20px;
    }
    .page-template-reviews .review-card{
		width: calc(100vw - 105px) !important;
    }
}
@media screen and (min-width: 768px) and (max-width: 1239px) {
    .page-template-reviews .reviews-container {
        column-count: 2;
        column-gap: 20px;
        margin: 40px;
    }
	    .page-template-reviews .review-card {
        width: calc(50vw - 105px) !important;
		margin-bottom:20px;
		}
}

.page-template-reviews .review-card {
    break-inside: avoid;
    margin: 0 0 40px 0;
    width: 330px;
    background: white;
    border: 0;
    border-radius: 12px;
    box-shadow: 0px 4px 20.4px 1px #95959540;
    text-align: left;
    padding: 20px 25px;
    display: block;
    transition: transform 0.2s ease-in-out;
}

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

/* Review Header */
.review-header {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}

.reviews-io {
    height: 20px !important;
}
.review-logo {
    height: 25px;
}
img.review_star {
    margin-right: 5px;
}
.verified_logo{
    height: 20px;
}
/* Title */
.page-template-reviews .review-title {
    font-family: Lato;
    font-weight: 700;
    font-size: 22px;
    line-height: 150%;
    color: #273133;
}

/* Review Text */
.page-template-reviews .review-text {
    font-family: Lato;
    font-weight: 400;
    font-size: 16px;
    line-height: 150%;
    color: #273133;
}

/* Footer with Name, Verified Badge, and Rating */
.review-footer {
    margin-top: auto;
}

.review-name {
    font-family: Lato;
    font-weight: 600;
    font-size: 20px;
    line-height: 150%;
    color: #273133; 
}

.verified-badge {
    font-size: 0.9rem;
    color: #4CAF50;
    font-weight: bold;
}

.review-rating {
    font-size: 1.2rem;
    color: #FFA500;
}

/* Load More Button */

div#load-more-container {
    display: flex;
    justify-content: center;
    margin: 50px auto;
}

#load-more, .hero-section-text a {
    background: #d81671;
    gap: 10px;
    border: 2px solid;
    display: flex;
    border-radius: 6px;
    font-family: 'Lato';
    font-size: 16px;
    padding: 12px 20px;
    color: white;
    align-items: center;
    transition: all 0.5s ease;
}

#load-more:hover, .hero-section-text a:hover {
    background-color: #FFF;
    color: #d81671;
}

.review-footer {
    display: flex;
    gap: 10px;
    align-content: center;
    align-items: center;
    }

   /* Loader styling */
   .page-template-reviews .loader {
    display: flex;
    width: 14px;
    height: 14px;
    border: 3px solid #d81671;
    border-top-color: transparent;
    border-radius: 50%;
    animation: spin 0.6s linear infinite;
    margin: auto;
    vertical-align: middle;
   }

   @keyframes spin {
       0% { transform: rotate(0deg); }
       100% { transform: rotate(360deg); }
   }

   /* Hide loader by default */
   .page-template-reviews  .loader-hidden {
       display: none;
   }


   .reviews_section_two {
    max-width: 900px;
    margin: 0 auto;
}

.review_card {
    background: #fff;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    margin-bottom: 20px;
}

.review_stars {
    display: flex;
    gap: 3px; /* Adjust spacing between stars */
    align-items: center;
    margin-bottom: 10px;
}

.review_stars img {
    width: 20px;
    height: auto;
}
.review_card {
    padding: 25px 30px;
    margin-bottom: 50px;
}

.review_card h4 {
    font-size: 30px;
    font-weight: 700;
    margin: 20px 0 10px 0;
}

.reviews_section_two .review_stars img {
    width: 24px;
}

.reviews_section_two .review_stars {
    margin-bottom: 5px;
}

.reviews_section_two p {
    font-weight: 700;
    font-size: 20px;
}

.reviews_section_two .review-text {
    font-family: Lato;
    font-weight: 500;
    font-size: 20px;
    line-height: 150%;
    letter-spacing: -2%;
}
.review_heading{
    text-align: center;
    font-size: 40px;
    margin-top: 20px;
    margin-bottom: 50px !important;
}
.schedule_call_reviews {
    max-width: 900px;
    margin: 50px auto 90px auto !important;
    border-radius: 8px;
    box-shadow: 0px 4px 20.4px 1px #95959540;
    border: 1px solid #eee;
    padding: 30px 40px 0px 40px;
    display: flex;
}
.schedule_call_reviews .vc_col-sm-7 {
    padding: 0 50px;
}
.schedule_call_reviews h2{
    font-family: Lato;
font-weight: 700;
font-size: 30px;
line-height: 38px;
}
.schedule_call_reviews .vc_btn3.vc_btn3-size-md {
    font-size: 16px !important;
}
.review_companies {
    margin: 50px auto 0px auto !important;
    max-width: 1024px;
}

.review-block a {
    font-family: Lato;
    font-weight: 400;
    font-size: 16px;
    line-height: 150%;
    letter-spacing: -2%;
    text-align: center;
    text-decoration: underline;
    text-decoration-style: solid;
    color: #273133;
    text-underline-offset: 4px;
}

.review-block {
    text-align: center;
    display: flex;
    gap: 20px;
    justify-content: center;
    align-items: stretch;
    flex-direction: column;
}

.review-block .pre-text {
    font-family: Lato;
    font-weight: 600;
    font-size: 22px;
    line-height: 100%;
    color: #707070;
    text-align: center;
}
.review-block img {
    margin: 10px auto;
}
.schedule_call_reviews img {
    width: 360px !important;
}
.review-block img {
    display: flex;
    margin: 10px auto;
}
.review_companies .vc_col-sm-4:nth-child(1) .review-block img {
    margin: 16px auto;
}
.page-template-reviews .expert_section{
    padding-bottom: 60px !important;
}

/* MOBILE */

@media screen and (max-width: 767px) {
	.page-template-reviews .body_content {
        padding-top: 60px;
    }
    .hero-section {
        background-image: url(/../../wp-content/uploads/2025/04/Hero-image-reviews-mobile.png);
        height: 513px;
    }
    .hero-section-text .pre-text {
        font-size: 12px;
    }
    
    .hero-section-text h1 {
        font-size: 24px;
    }
    .hero-section-text a{
        font-family: Lato;
        padding: 10px 5px !important;
        font-weight: 700;
        text-transform: uppercase;
        font-size: 11px;
        width: 130px;
    }
    .hero-section-text {
        position: absolute;
        width: 240px;
        margin-bottom: 20px;
    }
    .review_companies {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 1rem;
      }
    
      .review_companies .vc_col-sm-4 {
        flex: 1 1 45%;
        max-width: 45%;
        min-width: 120px;
        box-sizing: border-box;
        text-align: center;
      }
    
      .review_companies .vc_col-sm-4:nth-child(3) {
        flex-basis: 100%;
        max-width: 100%;
      }
      .review-block .pre-text {
        font-size: 13px;
    }
    
    .review-block {
        gap: 0;
    }
    
    .review-block a {font-size: 11px;}
    
    .review-block img {
        display: flex;
        width: 110px !important;
        height: auto;
        object-fit: contain;
        display: block;
        margin: 15px auto 0px auto !important
      
    }
    .review_companies .vc_col-sm-4:nth-child(2) .review-block img {
        width: 80px !important;
    }
    .review_companies .vc_col-sm-4:nth-child(1) .review-block img {
        margin: 15px auto 5px auto !important;
    }
    .review_companies .vc_col-sm-4:nth-child(3) .review-block img {
        margin: 10px auto 5px auto !important;
    }
    .review_companies {
        margin: 30px auto 0px auto !important;
    }
    .review_companies .wpb_content_element {
        margin-bottom: 10px !important;
    }
    .reviews-wrapper{
        margin:0 !important
    }
    h2.review_header {
        font-size: 22px;
    }
    .review-name, .review-footer img {
        margin: 20px 0 10px 0;
    }
    .page-template-reviews .review-title {
        margin: 10px 0 15px 0;
    }
    .review_heading {
        text-align: center;
        font-size: 22px;
        margin-bottom: 0px !important;
    }
    .review_card h4 {
        font-size: 20px;
        line-height: 20px;
    }
    .reviews_section_two p {
        font-size: 16px;
    }
    .reviews_section_two .review-text {
        font-size: 14px;
    }
    .reviews_section_two .review_stars img {
        width: 18px;
    }
    .review_card {
        padding: 25px 30px;
        margin: 30px 20px;
    }
    .page-template-reviews .expert_section .vc_column-inner{
        padding-top: 0px !important;
    }
    .page-template-reviews .expert_section{
        padding-bottom: 20px !important;
    }
    .schedule_call_reviews {
        flex-direction: column;
        padding: 40px 20px;
        margin: 20px 20px 40px 20px !important;
    }
    .schedule_call_reviews .vc_col-sm-7 {
        padding: 0;
    }    
    .schedule_call_reviews h2 {
        margin: -10px;
        font-weight: 700;
        text-align: center;
        font-size: 20px;
        line-height: 24px;
    }
    .schedule_call_reviews .magenta-button {
        text-align: center !important;
    }
    div#load-more-container {
        margin: 20px auto;
    }
    #load-more{
        font-size: 12px;
        padding: 8px 15px;
    }
    .schedule_call_reviews .vc_btn3.vc_btn3-size-md {
        padding: 10px 15px;
        font-size: 14px !important;
    }
}



/* TABLET */
@media screen and (min-width: 768px) and (max-width: 1023px) {
	    .schedule_call_reviews {
        margin-inline: 20px !important;
    }
    .page-template-reviews .expert_section .vc_column-inner{
        padding-top: 0px !important;
    }
    .page-template-reviews .expert_section{
        padding-bottom: 20px !important;
    }
    .schedule_call_heading{
        margin-bottom: 20px !important;
    }
    .schedule_call_reviews .vc_col-sm-7 {
        padding: 0px;
    }
    .schedule_call_reviews .vc_btn3.vc_btn3-size-md {
        padding: 10px 15px;
        font-size: 14px !important;
    }
    .schedule_call_reviews h2 {
        font-size: 22px;
        line-height: 28px;
    }
	 .review-block .pre-text
    {
        font-size: 18px;
    }
    .review-block img {
      width: 120px;
    }
    .review_companies .vc_col-sm-4:nth-child(2) .review-block img {
        width: 93px;
    }
    .review_companies .vc_col-sm-4:nth-child(3) .review-block img {
        margin-bottom: 12px !important;
    }
    .reviews-wrapper {
        margin-top: 0;
    }
    h2.review_header,.review_heading {
        font-size: 32px;
    }
    .review-name, .review-footer img {
        margin: 20px 0 5px 0;
    }
    .page-template-reviews .review-title {
        margin: 10px 0;
    }
    .review_card h4 {
        font-size: 24px;
        font-weight: 700;
        margin: 10px 0 10px 0;
    }
    .reviews_section_two p {
        font-size: 16px;
    }
    .reviews_section_two .review-text {
        font-size: 15px;
    }
    .reviews_section_two .review_stars img {
        width: 20px;
    }
    .review_card {
        margin-inline: 20px;
        margin-bottom: 30px;
    }
    .hero-section-text a {
        width: 120px;
        padding: 8px !important;
        font-size: 10px;
    }
    .hero-section-text .pre-text {
        font-size: 12px;
    }
    .hero-section-text h1 {
        font-size: 20px;
    }
    .hero-section-text {
        position: absolute;
        width: 220px;
    }
}
@media screen and (min-width: 881px) and (max-width: 1023px) {
    .hero-section-text {
        position: absolute;
        width: 300px;
    }

}
@media screen and (min-width: 950px) and (max-width: 1023px) {
    .hero-section-text a {
        width: 150px;
        padding: 8px !important;
        font-size: 12px;
    }
    .hero-section-text .pre-text {
        font-size: 12px;
    }
    .hero-section-text h1 {
        font-size: 23px;
    }
    .hero-section-text {
        position: absolute;
        width: 220px;
    }
}


@media screen and (min-width: 1024px) and (max-width: 1239px) {

.hero-section-text {
    width: 300px;
}

.hero-section-text a {
    font-size: 14px;
    padding: 10px;
    width: 160px;
}
.hero-section-text h1 {
    font-size: 28px;
}
.hero-section-text .pre-text {
    font-size: 16px;
}
.review-block .pre-text {
    font-size: 18px;
}
.review-block img {
    width: 125px;
}
.review_companies .vc_col-sm-4:nth-child(2) .review-block img {
    width: 100px !important;
}
.review_companies .vc_col-sm-4:nth-child(3) .review-block img {
    margin: 10px auto 15px auto !important;
}
.reviews-wrapper {
    margin-top: 0px;
}
h2.review_header,.review_heading {
    font-size: 32px;
}

.review_card h4 {
    font-size: 24px;
    margin-bottom: 30px;
}
.reviews_section_two p {
    font-size: 18px;
}
.reviews_section_two .review-text {
    font-size: 16px;
}
.reviews_section_two .review_stars img {
    width: 20px;
}
}

@media screen and (min-width: 1240px) and (max-width: 1380px) {

.hero-section-text a{
    width: 180px;
}
.hero-section-text{
    width: 380px;
}
.hero-section-text h1 {
    font-size: 38px;
}
}
@media screen and (min-width: 1900px) {
	.hero-section-text {
    position: absolute;
    width: 470px;
}
}
@media screen and (min-width: 2100px) {

.hero-section-text a {;
    margin-top: 20px;
	font-size: 18px;
}
	.hero-section-text h1 {
    font-size: 50px;
	}
	.hero-section-text .pre-text {
    font-size: 22px;
	}
	.hero-section-text {
    position: absolute;
    width: 580px;
}
}

/* Scoped styles for the Social Proof Section */
        .sp-wrapper {
            --sp-text-dark: #111827;
            --sp-text-light: #6b7280;
            --sp-border-color: #e5e7eb;
            --sp-star-color: #fbbf24;
            --sp-bg-color: #ffffff;
            
            font-family: 'Lato', sans-serif;
            max-width: 600px;
            width: 100%;
            text-align: center;
            margin: 40px auto 0 auto; 
            box-sizing: border-box;
        }

        .sp-wrapper * {
            box-sizing: border-box;
        }

        .sp-wrapper .sp-subtitle {
            color: var(--sp-text-light);
            font-size: 16px;
            font-weight: 600;
            margin: 0 0 24px 0;
            display: block;
        }

        .sp-review-row {
            display: flex;
            background: var(--sp-bg-color);
            border: 1px solid var(--sp-border-color);
            border-radius: 12px;
            margin-bottom: 16px;
            box-shadow: 0 1px 2px rgba(0,0,0,0.05);
            overflow: hidden; 
        }

        .sp-review-item {
            flex: 1;
            padding: 16px;
            display: flex;
            flex-direction: column;
            align-items: center;
            text-decoration: none; 
            position: relative;
            transition: background-color 0.2s ease;
            cursor: pointer;
        }

        .sp-review-item:hover {
            background-color: #f9fafb;
        }

        .sp-review-item:first-child::after {
            content: '';
            position: absolute;
            right: 0;
            top: 50%;
            transform: translateY(-50%);
            height: 70%;
            width: 1px;
            background-color: var(--sp-border-color);
        }

        /* Card Content */
        .sp-card-header {
            display: flex;
            align-items: center;
            justify-content: center; 
            gap: 8px;
            margin-bottom: 4px;
        }

        .sp-logo-google {
            width: 20px;
            height: 20px;
        }

        .sp-logo-reviews-io {
            width: 20px;
            height: 20px;
            background: #000;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: white;
            font-size: 10px;
        }
        
        .sp-rating-score {
            font-weight: 700;
            font-size: 22px;
            color: var(--sp-text-dark);
        }

        .sp-stars {
            display: flex;
            gap: 2px;
            margin-bottom: 6px;
        }

        .sp-star-icon {
            color: var(--sp-star-color);
            width: 16px;
            height: 16px;
        }

        .sp-brand-label {
            font-size: 16px;
            color: var(--sp-text-dark);
            margin-bottom: 8px;
            font-weight: 400;
        }

        .sp-brand-image {
            display: block;
            max-width: 100px;
            height: auto;
            margin: 0 auto 8px auto;
        }
        
        .sp-brand-text {
            display: none; 
        }

        .sp-brand-image.reviews_io {
            margin-top: 10px;
            max-width: 150px;
        }

        .sp-review-link {
            font-size: 13px;
            font-weight: 600;
            color: #4b5563;
            text-decoration: underline;
            text-underline-offset: 2px;
        }

        .sp-stats-row {
            background: var(--sp-bg-color);
            border: 1px solid var(--sp-border-color);
            border-radius: 12px;
            padding: 20px 0;
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            box-shadow: 0 1px 2px rgba(0,0,0,0.05);
        }

        .sp-stat-item {
            flex: 1;
            display: flex;
            flex-direction: column;
            align-items: center;
            position: relative;
            padding: 0 4px;
        }

        .sp-stat-item:not(:last-child)::after {
            content: '';
            position: absolute;
            right: 0;
            top: 50%;
            transform: translateY(-50%);
            height: 70%;
            width: 1px;
            background-color: var(--sp-border-color);
        }

        .sp-stat-value {
            font-weight: 700;
            color: var(--sp-text-dark);
            font-size: 16px;
            line-height: 1.2;
            margin-bottom: 4px;
        }

        .sp-stat-label {
            font-size: 12px;
            color: var(--sp-text-light);
            line-height: 1.3;
        }

        @media (max-width: 480px) {

            .sp-stat-item {
                flex: 1 1 45%;
                margin-bottom: 10px;
            }
            
            .sp-wrapper {
                margin: 20px auto;
            }
            
        }
        
        @media (max-width: 767px) {
            .sp-wrapper h2 {
                font-size: 22px;
                line-height: 28px;
                margin-bottom: 0;
            }
			.sp-review-item {
            flex: 1;
            padding: 16px 8px;
			}
        }