/* Book My Visit popup (Consultant / Customer Booking) */

/* style.css fixes every .modal-dialog at 650px; this popup needs the full width */
.book-visit-modal .modal-dialog {
    width: auto !important;
    max-width: min(1200px, calc(100% - 2rem));
}

.book-visit-modal .modal-dialog .modal-content {
    border: 6px solid #e9e9e9;
    border-radius: 40px !important;
    padding: 40px 44px;
}

.book-visit-close {
    position: absolute;
    top: -22px;
    right: -22px;
    width: 48px;
    height: 48px;
    border: 0;
    border-radius: 50%;
    background-color: var(--black-color, #000);
    color: var(--white-color, #fff);
    font-size: 18px;
    display: grid;
    place-items: center;
    z-index: 2;
}

.book-visit-card {
    height: 100%;
    border: 1px solid #dcdcdc;
    border-radius: 24px;
    padding: 40px 32px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.book-visit-card h3 {
    color: var(--black-color);
    margin-bottom: 24px;
}

.book-visit-icon {
    font-size: 84px;
    line-height: 1;
    color: var(--black-color);
    margin-bottom: 24px;
}

.book-visit-card p {
    font-family: var(--secondary-font);
    color: var(--text-color);
    margin-bottom: 28px;
    flex-grow: 1;
}

@media (max-width: 575px) {
    .book-visit-modal .modal-dialog {
        max-width: none;
    }
}

@media (max-width: 767px) {
    .book-visit-modal .modal-dialog .modal-content {
        border-radius: 24px !important;
        padding: 28px 18px;
    }

    .book-visit-close {
        top: -14px;
        right: -6px;
        width: 40px;
        height: 40px;
    }

    .book-visit-card {
        padding: 28px 18px;
    }
}
