.enter-in-policy__title {
    font-weight: 350;
    line-height: 110%;
    letter-spacing: -4%;
    font-size: 48px;
    color: var(--text-white);
    margin: 40px 0 0;
}

.enter-in-policy__subtitle {
    font-weight: 400;
    line-height: 110%;
    letter-spacing: -4%;
    font-size: var(--text-size-medium);
    margin: 40px 0 40px;
    color: var(--text-white);
}

.enter-in-policy__subtitle .text-wrapper{
    color: var(--bg-section-dark);
}

.enter-in-policy__wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.card {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 870px;
    width: 100%;
    padding: 40px;
    border-radius: 8px;
    box-shadow:
            0 -9px 0 0 rgba(61, 64, 67, 1),
            0 5px 15px 0 rgba(61, 64, 67, 0.1);
    background: var(--bg-secondary-form);
    min-width: 870px;
}

.card__title {
    font-weight: 600;
    font-size: 18px;
    line-height: 110%;
    letter-spacing: -4%;
    color: var(--text-secondary);
    margin: 0 0 8px;
}

.card__text {
    font-weight: 400;
    font-size: 18px;
    line-height: 110%;
    letter-spacing: -4%;
    color: var(--text-secondary);
    margin: 0 0 20px;
}

.parts__title {
    text-align: center;
    font-weight: 350;
    line-height: 110%;
    letter-spacing: -4%;
    font-size: 48px;
    color: var(--text-secondary);
    margin: 0 0 40px;
}

.parts__notif {
    background: var(--bg-info-bar);
    padding: 20px;
    border-radius: 8px;
    margin: 40px 0 0;
}

.parts__notif {
    font-weight: 400;
    line-height: 110%;
    letter-spacing: -4%;
    color: var(--text-secondary);
    border-radius: 8px;
}

.parts__notif p {
    font-size: var(--text-size-medium);
    margin: 0 0 20px;
}

.parts__notif span {
    font-size: 18px;
}


.dots-wrapper {
    display: flex;
    align-items: center;
    margin: 0 0 12px;
}

.dot {
    width: 8px;
    height: 8px;
    background-color: var(--bg-section-dark);
    border-radius: 50%;
    margin: 0 8px 0 0;
    min-width: 8px;
}

.parts__footer-text {
    font-weight: 400;
    font-size: var(--text-size-medium);
    color: var(--text-secondary);
    line-height: 110%;
    letter-spacing: -4%;
    margin: 40px 0 0;
}

.list__title {
    font-weight: 350;
    font-size: 48px;
    line-height: 110%;
    letter-spacing: -4%;
    text-align: center;
    color: var(--text-primary);
    margin: 0 0 40px;
}

.full-form,
.list,
.parts {
    padding: 80px 60px;
}

.final-message__card {
    border-radius: 8px;
    box-shadow:
            0 -9px 0 0 rgba(61, 64, 67, 1),
            0 5px 15px 0 rgba(61, 64, 67, 0.1);
    background: var(--bg-secondary-form);
    padding: 45px 0 40px;
}

.final-message__title {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 45px;
}

.final-message__title img {
    margin-right: 20px;
}

.final-message__title p {
    font-weight: 350;
    font-size: 48px;
    line-height: 110%;
    letter-spacing: -4%;
    color: var(--bg-footer);
    margin: 0 !important;
}

.final-message__card {
    text-align: center;
    color: var(--text-secondary);
    line-height: 110%;
    letter-spacing: -4%;
}

.final-message__card p {
    margin: 0 0 12px;
}

.phone-number {
    font-weight: 500;
    font-size: 48px;
    line-height: 110%;
    letter-spacing: -4%;
    color: var(--text-primary);
}

.final-message {
    padding: 279px 60px;
}

.final-stage {
    padding: 30px 60px 0;
}

.gender-selector {
    display: flex;
    gap: 10px;
    margin-bottom: 25px;
    width: 100%;
}

.gender-button {
    padding: 12px 20px;
    border: none;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 400;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: var(--bg-section-dark);
    color: var(--text-on-dark);
    width: 160px;
    height: 42px;
    line-height: 110%;
    letter-spacing: -4%;
}

.gender-button--women {
    background: var(--accent);
    color: var(--text-secondary);
}

.gender-button--women:not(.gender-button--active) {
    background: var(--bg-footer);
    color: var(--text-on-dark);
}

.gender-button--men {
    background: var(--accent);
    color: var(--text-secondary);
}

.gender-button--men:not(.gender-button--active) {
    background: var(--bg-footer);
    color: var(--text-on-dark);
}

.gender-button__icon {
    font-size: 20px;
    font-weight: bold;
}

.card-fade-enter-active,
.card-fade-leave-active {
    transition: all 0.4s ease;
}

.card-fade-enter-from {
    opacity: 0;
    transform: translateY(20px);
}

.card-fade-leave-to {
    opacity: 0;
    transform: translateY(-20px);
}

.cards-desktop {
    display: flex;
    width: 100%;
    justify-content: space-between;
    flex-wrap: wrap;
}

.cards-desktop .card {
    flex: 1;
}

.only-mobile {
    display: none;
}

.only-mobile--text {
    display: none;
}

.only-desktop {
    display: block;
}

.only-desktop--middle {
    display: inline-block;
}

.only-middle {
    display: none;
}

.hot-phone-number {
    text-align: center;
    margin: 40px 0 0;
}

.hot-phone-number--small {
    font-weight: 400;
    line-height: 110%;
    font-size: 14px;
    letter-spacing: -4%;
    color: #616C72;
}

.hot-phone-number--big {
    font-weight: 500;
    font-size: 26px;
    line-height: 110%;
    letter-spacing: -4%;
    color: #616C72;
}

.phone-btn {
    display: none;
    width: 45px;
    height: 45px;
    padding: 10px;
    background: #616C72;
    border-radius: 10px;
}

@media (max-width: 1859px) {
    .cards-desktop {
        justify-content: center;
    }

    .card {
        margin: 0 0 60px;
    }
}

@media (max-width: 1300px) {

    .only-desktop--middle {
        display: none;
    }

    .only-middle {
        display: flex;
        justify-content: center;

    }
}

@media (max-width: 970px) {

    .card {
        min-width: 540px;
    }

}

@media (max-width: 616px) {

    .card {
        min-width: 300px;
    }

}

@media (max-width: 510px) {
    .only-mobile {
        display: flex;
        justify-content: center;
    }

    .only-mobile--text {
        display: inline-block;
    }

    .only-desktop {
        display: none !important;
    }

    .enter-in-policy__wrapper > .card {
        display: block;
    }

    .cards-desktop {
        display: none;
    }
    
    .parts__footer-text {
        text-align: center;
        line-height: 120%;
    }

    .dot {
        margin: 0 14px 0 0;
    }
}

@media (min-width: 511px) {
    .gender-selector {
        display: none;
    }

    .enter-in-policy__wrapper > .card {
        display: none;
    }
}

@media (max-width: 768px) {

    .phone-btn {
        display: inline-block;
        margin: 0 0 0 20px;
    }

    .list__title {
        font-size: 34px;
        line-height: 120%;
    }

    .parts__title {
        font-size: 34px;
        line-height: 120%;
        text-align: start;
    }

    .parts__notif p {
        font-size: 20px;
        font-weight: 400;
        line-height: 110%;
    }

    .parts__notif span {
        font-weight: 400;
        font-size: 16px;
        line-height: 110%;
    }

    .parts__footer-text {
        font-size: 20px;
    }

    .full-form,
    .list,
    .parts,
    .enter-in-policy {
        padding: 60px 20px;
    }

    .parts__notif {
        margin-top: 20px;
    }

    .parts__footer-text {
        margin-top: 20px;
    }

    .enter-in-policy__title {
        font-size: 34px;
        line-height: 120%;
    }

    .enter-in-policy__subtitle {
        font-size: 20px;
    }

    .cards-desktop {
        flex-wrap: wrap;
    }

    .card {
        margin: 0 0 60px;
    }

    .card__title {
        font-size: 16px;
    }

    .card__text {
        font-size: 16px;
    }

    .card img {
        margin-right: 40px;
    }

    .final-message {
        padding: 158px 20px;
    }

    .final-message__card {
        padding: 20px;
    }
    
    .final-message__title {
        flex-direction: column;

    }

    .final-message__title img {
        margin: 0 0 20px;
    }

    .final-message__title p {
        font-size: 34px !important;
        line-height: 120%;
        letter-spacing: -4%;
        font-weight: 350 !important;
    }

    .final-message__card p {
        font-size: 16px;
        line-height: 120%;
        letter-spacing: -4%;
        font-weight: 400;
    }

    .phone-number {
        font-size: 34px !important;
        line-height: 120%;
        letter-spacing: -4%;
    }

    .final-stage {
        padding: 4px 20px 0;
    }

}

@media (max-width: 510px) {
    .card {
        flex-wrap: wrap;
    }

    .card img {
        margin: 0 auto 20px;
        width: 296px;
        display: flex;
        text-align: center;
    }

    .full-form, .list, .parts, .enter-in-policy {
        padding: 60px 12px;
    }

    .card {
        padding: 20px;
    }
}