.contact-map {
    isolation: isolate;
    border-top: 1px solid rgba(255, 255, 255, .08);
    border-bottom: 1px solid rgba(255, 255, 255, .08);
    box-shadow: inset -28px 0 55px rgba(0, 0, 0, .48);
}

.contact-map::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 3;
    pointer-events: none;
    background:
        linear-gradient(90deg, rgba(7, 9, 12, .08) 0%, transparent 45%, rgba(7, 9, 12, .62) 100%),
        linear-gradient(180deg, rgba(255, 138, 10, .07), transparent 28%, rgba(7, 9, 12, .16));
    box-shadow: inset 0 0 80px rgba(0, 0, 0, .35);
}

.contact-map .ymaps-2-1-79-ground-pane {
    filter: grayscale(.38) invert(.92) hue-rotate(178deg) brightness(.68) contrast(1.12) saturate(.72);
}

.contact-map .ymaps-2-1-79-map,
.contact-map .ymaps-2-1-79-inner-panes {
    background: #11161b !important;
}

.contact-map .ymaps-2-1-79-controls__control,
.contact-map .ymaps-2-1-79-controls__toolbar {
    filter: brightness(.9) contrast(1.06);
}

.contact-map .map-direct-link {
    z-index: 9;
    border-color: rgba(255, 138, 10, .72);
    background: linear-gradient(145deg, rgba(20, 25, 31, .96), rgba(8, 11, 15, .96));
    box-shadow: 0 16px 38px rgba(0, 0, 0, .62), 0 0 24px rgba(255, 128, 0, .14);
    backdrop-filter: blur(12px);
}

.contact-map .map-direct-link:hover {
    color: #fff;
    border-color: #ff9a22;
    transform: translateX(-50%) translateY(-2px);
    box-shadow: 0 20px 42px rgba(0, 0, 0, .7), 0 0 32px rgba(255, 128, 0, .24);
}

@media (max-width: 850px) {
    .contact-map::after {
        background: linear-gradient(180deg, rgba(7, 9, 12, .08), rgba(7, 9, 12, .38));
    }
}
