.contact-section {
    align-items: stretch;
}

.contact-card,
.map-card.map-card-google {
    min-height: 100%;
    height: auto;
}

.map-card.map-card-google {
    padding: 0 !important;
    position: relative;
    overflow: hidden;
    background: #fff !important;
    border-radius: 18px;
    display: block !important;
}

/* Make map visually match the left contact card height */
.google-map-frame {
    width: 100%;
    height: 100%;
    min-height: 100%;
    border: 0;
    display: block;
    filter: saturate(.96) contrast(1);
}

/* Remove overlay text/buttons completely */
.map-overlay,
.map-buttons,
.map-button {
    display: none !important;
}

/* Remove old fake-map leftovers if present */
.map-pin {
    display: none !important;
}

/* Desktop: force both cards to a clean equal height */
@media (min-width: 901px) {
    .contact-section {
        grid-template-columns: 1fr 1fr;
    }

    .contact-card,
    .map-card.map-card-google {
        height: 100%;
        min-height: 430px;
    }

    .google-map-frame {
        height: 100%;
        min-height: 430px;
    }
}

/* Tablet/mobile: keep map comfortable */
@media (max-width: 900px) {
    .map-card.map-card-google,
    .google-map-frame {
        min-height: 360px;
        height: 360px;
    }
}

@media (max-width: 640px) {
    .map-card.map-card-google,
    .google-map-frame {
        min-height: 340px;
        height: 340px;
    }
}
