.main {
    padding: 0;
    height: 100vh;
    display: flex;
    align-items: center;
    text-align: center;
    color: #fff;
    position: relative;
}

.main:before {
    content: "";
    position: absolute;
    z-index: -1;
    background: rgb(0 0 0 / 25%);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.main:after {
    content: "";
    position: absolute;
    z-index: -1;
    background: linear-gradient(0deg, #433c76, transparent);
    opacity: 0.25;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.main > img:first-child {
    position: absolute;
    z-index: -2;
    top: 0;
    object-fit: cover;
    height: 100%;
    width: 100%;
}

.main .text img {
    margin-bottom: 30px;
}

.main .text h1 {
    font-size: 3rem;
    margin-bottom: 30px;
}




.about .image_wrap img {
    object-fit: cover;
    height: 100%;
    border-radius: 15px;
}

.about .text {
    padding-left: 50px;
}



.page-body .text {
    padding-left: 50px;
}

.page-body .image_wrap img {
    border-radius: 15px;
}




@media (max-width: 1200px) {
    .main .text h1 {font-size: 2.5rem;}
    .about .text {padding-left: 30px; font-size: 1rem;}
    .image-text-vertical > * {width: 50%;}
}

@media (max-width: 992px) {
    .main {height: auto; padding: 130px 0;}
    .main .text img {max-width: 130px;}
    .main .text h1 {font-size: 2.2rem;}

    .about .col-6 {width: 100%;}
    .about .text {padding-left: 0; font-size: 1.1rem;}
    .about .buttons {margin-top: 30px !important;}

    .page-body .image_wrap img {border-radius: 5px;}
    .page-body .image_wrap a:not(:first-child) img {max-width: 75px; border-radius: 5px;}
    .page-body .text {padding-left: 30px;}
}

@media (max-width: 768px) {
    .main .text img {max-width: 120px; margin-bottom: 15px;}
    .main .text h1 {font-size: 1.9rem; margin-bottom: 20px;}
    .main .text h2 {font-size: 1.4rem; font-weight: 200;}

    .page-body .col-6 {width: 100%;}
    .page-body .text {padding-left: 0;}

}

@media (max-width: 576px) {
    .main .text img {max-width: 100px;}
    .main .text h1 {font-size: 1.6rem; margin-bottom: 15px;}
    .main .text h2 {font-size: 1.2rem;}

    .image-text-vertical {margin-right: -5px; margin-left: -5px;}
    .image-text-vertical > * {padding-right: 5px; padding-left: 5px;}
    .image-text-vertical .text {padding: 20px;}
    .image-text-vertical .text h3 {font-size: 1rem;}

    .page-body .image_wrap a:first-child {margin-bottom: 15px; display: block;}
}

@media (max-width: 480px) {
    .image-text-vertical > * {width: 100%;}
}

@media (max-width: 380px) {
    .main {padding: 100px 0;}
    .main .text img {max-width: 90px;}
    .main .text h1 {font-size: 1.5rem;}

    section.about {padding-top: 50px;}
    .about .text {font-size: 1rem;}
    .about .image_wrap img {border-radius: 5px;}

    .image-text-vertical .item > * {border-radius: 5px;}

    .page-head .text h1 {font-size: 1.3rem;}

    .page-body .image_wrap a:not(:first-child) img {max-width: 60px;}
}