.about-us__contact,
.aluprof__contact,
.apator__contact,
.home__contact,
.mobilus__contact,
.services__contact {
    width: 100%;
    display: flex;
    flex-direction: column;
    position: relative;
    overflow: hidden;
    background-image: url('../../assets/images/stars.webp');
    background-color: var(--color-secondary-200);
}

.contact__info {
    display: flex;
    width: 280px;
    align-self: center;
    z-index: 2;
    visibility: hidden;
    opacity: 0;
    transform: translateY(60px);
    transition: all ease-out 0.5s;
}

.contact__info.contact__info--shown {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
}

.contact__info > div {
    display: flex;
    flex-direction: column;
    align-self: center;
    width: 100%;
}

.contact__info .integrate-button__container {
    width: 255px;
    height: 67px;
    align-self: center;
    margin-bottom: 64px;
    font: normal normal bold 21px/28px font-primary;
}

.contact__info__content button {
    margin-top: 0;
    margin-bottom: 29px;
    display: inline-flex;
    align-items: center;
    text-align: left;
    gap: 21px;
    cursor: pointer;
}

.contact__info p {
    color: #E7E7E7;
    font: 16px/21px font-primary;
    margin: 0;
    transition: color 0.25s;
}

.contact__info svg {
    height: 21px;
}

.contact__info svg:last-child {
    fill: var(--color-primary-500);
    visibility: hidden;
    opacity: 0;
    transition: all ease-out 0.25s;
}

.contact__info button:focus {
    outline: none;
}

.contact__info button:focus p,
.contact__info button:hover p {
    color: var(--color-primary-300);
}

.contact__info button:focus svg:last-child,
.contact__info button:hover svg:last-child {
    opacity: 1;
    visibility: visible;
}

.contact__image {
    width: 200%;
    height: auto;
    z-index: 1;
    visibility: hidden;
    opacity: 0;
    transform: translateY(60px);
    transition: all ease-out 0.5s;
}

.contact__image.contact__image--shown {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
    transition: 
        visibility ease-out 0s,
        opacity ease-out 0.5s,
        transform ease-out 0.5s;
}

@media screen and (min-width: 768px) {
    .contact__info {
        transform: translateY(120px);
    }

    .contact__image {
        transform: translateY(120px);
    }
}

@media screen and (min-width: 912px) {
    .about-us__contact,
    .aluprof__contact,
    .apator__contact,
    .home__contact,
    .mobilus__contact,
    .services__contact {
        height: 882px;
        align-items: center;
        justify-content: center;
        background-image: none;
    }

    .contact__info {
        width: 50%;
        display: flex;
        align-self: flex-end;
        justify-content: center;
    }

    .contact__info--shown {
        transition-delay: 0.5s;
    }

    .contact__info .integrate-button__container {
        font: normal normal bold 19px/25px font-primary;
    }

    .contact__info__content {
        align-self: center;
        display: flex;
        flex-direction: column;
    }

    .contact__info__content button {
        margin-bottom: 35px;
        gap: 17px;
    }

    .contact__info svg {
        height: 16px;
        width: 16px;
    }

    .contact__info p {
        font: 14px/13px font-primary;
    }

    .contact__image {
        width: 1214px;
        min-width: 100%;
        height: auto;
        position: absolute;
    }
}

@media screen and (min-width: 1200px) {
    .about-us__contact,
    .aluprof__contact,
    .apator__contact,
    .home__contact,
    .mobilus__contact,
    .services__contact {
        height: 1000px;
    }

    .contact__info .integrate-button__container {
        width: 263px;
        height: 69px;
    }

    .contact__info svg {
        height: 21px;
        width: 21px;
    }

    .contact__info p {
        font: 16px/20px font-primary;
    }

    .contact__image {
        width: 1400px;
    }
}

@media screen and (min-width: 1400px) {
    .about-us__contact,
    .aluprof__contact,
    .apator__contact,
    .home__contact,
    .mobilus__contact,
    .services__contact {
        height: 1371px;
    }

    .contact__info {
        transform: translateY(200px);
    }

    .contact__info .integrate-button__container {
        font: normal normal bold 32px/42px font-primary;
        width: 387px;
        height: 102px;
    }

    .contact__info svg {
        height: 32px;
        width: 32px;
    }

    .contact__info p {
        font: 21px/32px font-primary;
    }

    .contact__image {
        width: 1920px;
        transform: translateY(200px);
    }
}