.location-contact { position: relative; isolation: isolate; overflow: hidden; padding-block: clamp(28px, 4vw, 48px); background: #052743; color: #fff; }
.location-contact__background { position: absolute; z-index: -2; inset: 0 0 0 auto; width: 55%; height: 100%; object-fit: cover; }
.location-contact::before { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, #052743 20%, #052743e8 50%, #05274326); }
.location-contact::after { content: ""; position: absolute; z-index: -1; top: 0; left: 45%; width: 180px; height: 100%; background-image: radial-gradient(#1689bf 1px, transparent 1px); background-size: 14px 14px; opacity: .5; }
.location-contact__grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); align-items: center; gap: clamp(24px, 4vw, 64px); }
.location-contact__content h2 { margin: 0 0 14px; color: #fff; font-size: clamp(1.8rem, 2.9vw, 2.8rem); font-weight: 750; line-height: 1.12; letter-spacing: -.025em; }
.location-contact__content h2 span { color: #42d8ce; }
.location-contact__content p { margin: 0; color: #cfdeeb; font-size: clamp(.95rem, 1.3vw, 1.12rem); line-height: 1.5; }
.location-contact__action { justify-self: end; padding: 12px 26px; }
@media (max-width: 991.98px) { .location-contact__grid { grid-template-columns: 1fr; } .location-contact__action { justify-self: start; } .location-contact__background { width: 100%; opacity: .5; } }
@media (max-width: 575.98px) { .location-contact__action { width: 100%; } }
