.map-block { position: relative; isolation: isolate; width: 100%; height: clamp(390px, 46vw, 590px); }
.map-block__iframe { display: block; width: 100%; height: 100%; border: 0; }
.map-block__card { position: absolute; left: max(22px, calc((100vw - var(--container-max-width)) / 2)); top: 50%; transform: translateY(-50%); max-width: min(320px,calc(100% - 44px)); padding: 21px 25px; background: #fff; border-radius: 8px; box-shadow: 0 5px 24px rgba(0,0,0,.14); z-index: 1; }
.map-block__title { margin: 0 0 12px; font-size: 22px; font-weight: 700; text-align: left; }
.map-block__contacts { color: #32343b; font-size: 14px; line-height: 1.55; overflow-wrap: anywhere; }
.map-block__social { display: flex; align-items: center; gap: 8px; margin-top: 12px; }
.map-block__social-link { display: flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 50%; background: #eef2fb; padding: 5px; }
@media (max-width: 650px) { .map-block { height: 440px; } .map-block__card { left: 18px; top: auto; bottom: 18px; max-width: min(320px,calc(100% - 36px)); transform: none; padding: 13px 16px; } .map-block__title { font-size: 19px; } .map-block__contacts { font-size: 12px; } }
