.directions-section { background: #080808; color: #fff; padding: 66px clamp(24px, 6vw, 92px); display: grid; grid-template-columns: minmax(280px, .85fr) minmax(300px, 1.15fr); gap: 42px; align-items: center; }
.directions-copy .eyebrow { margin-bottom: 10px; }
.directions-copy h2 { font-size: clamp(30px, 3.3vw, 46px); margin: 0 0 18px; font-weight: 900; letter-spacing: -1.8px; }
.directions-copy h2:after { content: ""; display: block; width: 38px; height: 3px; background: var(--red); margin-top: 15px; }
.directions-copy p { font-size: 16px; line-height: 1.8; color: #d6d6d6; margin: 0 0 7px; }
.directions-copy strong { color: #fff; }
.directions-map-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.directions-map { position: relative; display: block; min-height: 280px; overflow: hidden; border-radius: 7px; background: #e7e7e7; box-shadow: 0 12px 30px rgba(0,0,0,.35); text-decoration: none; }
.directions-map img, .directions-map iframe { width: 100%; height: 100%; min-height: 280px; border: 0; display: block; }
.directions-map img { object-fit: cover; object-position: 58% 51%; transform: scale(1.23); transition: transform .25s ease; }
.directions-map:hover img { transform: scale(1.28); }
.directions-map span, .directions-map-google > a { position: absolute; left: 12px; bottom: 12px; z-index: 1; display: inline-flex; align-items: center; min-height: 34px; padding: 0 12px; font-size: 11px; font-weight: 900; letter-spacing: .4px; color: #fff; background: #03c75a; border-radius: 3px; box-shadow: 0 3px 10px rgba(0,0,0,.3); text-decoration: none; }
.directions-map-google > a { color: #202124; background: #fff; }
@media(max-width:850px) { .directions-section { grid-template-columns: 1fr; gap: 26px; padding: 50px 22px; } .directions-map, .directions-map img, .directions-map iframe { min-height: 230px; } }
@media(max-width:560px) { .directions-map-grid { grid-template-columns: 1fr; } }
