/* ── Directions Layout ──────────────────────────────────────── */
.directions-layout { display: grid; grid-template-columns: 1fr 2fr; gap: 56px; align-items: flex-start; }
.directions-info { display: flex; flex-direction: column; gap: 28px; }
.dir-card { background: white; border: 1px solid var(--silver-light); border-radius: 12px; padding: 28px; }
.dir-card-header { display: flex; align-items: center; gap: 14px; margin-bottom: 16px; }
.dir-card-icon { width: 44px; height: 44px; border-radius: 10px; background: var(--blue-soft); display: flex; align-items: center; justify-content: center; color: var(--blue); flex-shrink: 0; }
.dir-card-header h4 { font-family: 'Poppins', sans-serif; font-size: 16px; font-weight: 500; color: var(--navy); margin: 0; }
.dir-card p, .dir-card address { font-size: 15px; color: var(--muted); line-height: 1.7; margin: 0; font-style: normal; }
.dir-card a { color: var(--blue); text-decoration: none; font-weight: 500; }
.dir-card a:hover { text-decoration: underline; }

/* ── Map ────────────────────────────────────────────────────── */
.map-wrap { border-radius: 16px; overflow: hidden; border: 1px solid var(--silver-light); box-shadow: 0 20px 50px -20px rgba(0,38,74,0.15); }
.map-wrap iframe { display: block; width: 100%; height: 520px; border: none; }

/* ── Responsive ─────────────────────────────────────────────── */
@media (max-width: 1024px) { .directions-layout { grid-template-columns: 1fr; gap: 36px; } }
@media (max-width: 640px)  { .map-wrap iframe { height: 320px; } }
