.text-and-image-container {
    display: flex;
    justify-content: center;
    width: 100%;
    gap: 40px;
    margin-block: 2rem;
}

.text-and-image-container.image-right {
    flex-direction: column;
}
.text-and-image-container.image-left {
    flex-direction: row-reverse;
}
.text-and-image-image {
    height: 25vh;
    overflow:  hidden;
    width: 100%;
    border-radius: 20px;

}
.text-and-image-container img {
    border-radius: 20px;
    width: 100%;
    height: 100%;
    flex: 1;
    object-fit: cover;
    overflow: hidden;
    transition: all 2s ease-in-out;
}
.text-and-image-container img:hover {
    scale: 105%;
}

.text-and-image-text {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 2rem;
}


.heading-and-body {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.text-and-image-text p {
    font-weight: 400;
    line-height: 150%;
}

.stat-percentage { 
    font-weight: 900;
}

.stats {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 1rem;
    height: 100%;
}

.stat-item {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.stat-percentage {
    font-size: 32px
}


@media (min-width: 360px) {
}
@media (min-width: 480px) {
    .stat-percentage {
        font-size: 38px;
    }
}
@media (min-width: 768px) {
    .text-and-image-container.image-right {
        flex-direction: row-reverse;
    }
    .text-and-image-image {
        height: auto;
        flex: 1;
    }
    .stats {
        align-items: start;
    }
    .stat-item {
        align-items: start;
    }
    .stat-percentage {
        font-size: 48px;
    }
    .heading-and-body h1:first-of-type, .heading-and-text-container h1:first-of-type, h1.single-title  {
        font-size: 32px;
    }
}
@media (min-width: 1024px) {
    .stat-percentage {
        font-size: 56px;
    }
    .heading-and-body h1:first-of-type, .heading-and-text-container h1:first-of-type, h1.single-title  {
        font-size: 36px;
    }
}
@media (min-width: 1280px) {
    .stat-percentage {
        font-size: 70px;
    }

    .heading-and-body h1:first-of-type, .heading-and-text-container h1:first-of-type, h1.single-title {
        font-size: 42px;
    }
}
@media (min-width: 1440px) {
    .stat-percentage {
        font-size: 70px;
    }
    .heading-and-body h1:first-of-type, .heading-and-text-container h1:first-of-type, h1.single-title  {
        font-size: 50px;
    }
}
@media (min-width: 1920px) {
}