.studio-directions { padding: 78px 0; background: #faf8f5; color: #2a3432; }
.directions-heading { text-align: center; margin-bottom: 32px; }
.directions-heading h2 { font-family: 'Playfair Display', serif; font-size: 38px; margin-bottom: 12px; }
.directions-heading p { margin: 0; color: #6d716c; }
.directions-layout { display: grid; grid-template-columns: minmax(0, 2fr) minmax(260px, 1fr); gap: 30px; align-items: center; }
.directions-map { display: block; }
.directions-map img { width: 100%; height: auto; display: block; }
.directions-info h3 { font-size: 25px; margin-bottom: 12px; }
.directions-info p { font-size: 16px; line-height: 1.7; }
.directions-info .directions-address { color: #256c73; font-weight: 600; font-size: 18px; }
.directions-button { display: inline-block; max-width: 100%; text-align: center; background: transparent; border: 1px solid #111; color: #111 !important; font-size: 13px; line-height: 1.5; padding: 9px 12px; border-radius: 0; margin-top: 8px; }
.directions-button:hover, .directions-button:focus-visible { background: #111; color: #fff !important; }
.directions-info a[href^="tel:"] { color: #000; }
.directions-info a[href^="tel:"]:hover { color: #000; text-decoration: underline; }
.directions-enlarge { display: inline-block; color: #256c73; font-size: 12px; text-decoration: none; margin-top: 8px; }
.directions-enlarge:hover, .directions-enlarge:focus { text-decoration: none; }
@media(max-width:991.98px) { .directions-layout { grid-template-columns: 1fr; } .directions-info { max-width: 620px; } }
@media(max-width:575.98px) { .studio-directions { padding: 48px 0; } .directions-heading h2 { font-size: 30px; } }
