.directions-page .directions-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:clamp(32px,5vw,72px);align-items:start;padding:clamp(40px,6vw,76px) 0 48px}
.directions-page .directions-copy h1{margin:14px 0 22px;font-size:clamp(38px,5vw,62px);line-height:1.06;letter-spacing:-.025em}
.directions-page .directions-address{max-width:32ch;margin:0;color:#242127;font-size:clamp(20px,2vw,26px);font-weight:650;line-height:1.35}
.directions-page .directions-landmark{margin:10px 0 0;color:#56515a;font-size:16px;line-height:1.5}
.directions-page .directions-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.directions-page .directions-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 18px;border:1px solid #87006c;border-radius:9px;font-weight:650;line-height:1.3;text-decoration:none;box-sizing:border-box}
.directions-page .directions-primary{background:#87006c;color:#fff}
.directions-page .directions-secondary{background:#fff;color:#75005e}
.directions-page .directions-panel{padding:clamp(24px,3.5vw,40px);border-radius:20px;background:#f4eaf2;color:#242127}
.directions-page .directions-panel-kicker{color:#75005e;font-size:12px;font-weight:700;letter-spacing:.09em}
.directions-page .directions-panel h2{margin:12px 0 20px;font-size:clamp(23px,2.3vw,30px);line-height:1.2;letter-spacing:-.02em}
.directions-page .directions-parking{display:grid;gap:10px;padding:0;margin:0;list-style:none}
.directions-page .directions-parking li{display:grid;grid-template-columns:42px minmax(0,1fr);gap:14px;align-items:start;padding:16px;border-radius:12px;background:#fff}
.directions-page .directions-parking li>span{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:#f5e1f0;color:#87006c;font-size:20px;font-weight:700}
.directions-page .directions-parking strong{display:block;color:#242127;font-size:16px;line-height:1.4}
.directions-page .directions-parking p{margin:5px 0 0;color:#56515a;line-height:1.5}
.directions-page .directions-parking-note{margin:14px 0 0;color:#56515a;font-size:14px;line-height:1.5}
.directions-page .directions-map{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:clamp(32px,5vw,72px);align-items:start;padding:36px 0 48px;border-top:1px solid #e5dfe4}
.directions-page .directions-map h2{margin:10px 0 12px;font-size:clamp(26px,3vw,38px);line-height:1.15;letter-spacing:-.025em}
.directions-page .directions-map p{max-width:48ch;margin:0;color:#56515a;line-height:1.6}
.directions-page .directions-map-links{display:grid;gap:8px}
.directions-page .directions-map-links a{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:10px 14px;border:1px solid #ded7dd;border-radius:9px;color:#29262b;font-weight:600;line-height:1.4;text-decoration:none;box-sizing:border-box}
.directions-page :is(.directions-actions a,.directions-map-links a):focus-visible{outline:2px solid #87006c;outline-offset:3px}
@media(hover:hover){.directions-page .directions-primary:hover{background:#6b0055}.directions-page .directions-secondary:hover,.directions-page .directions-map-links a:hover{background:#f7f0f5}}
@media(max-width:760px){.directions-page .directions-intro,.directions-page .directions-map{grid-template-columns:minmax(0,1fr);gap:26px}.directions-page .directions-intro{padding:36px 0}.directions-page .directions-map{padding:30px 0 36px}.directions-page .directions-panel{padding:24px}}
@media(max-width:360px){.directions-page .directions-actions a{width:100%}.directions-page .directions-panel{padding:20px}.directions-page .directions-parking li{padding:14px;gap:10px}}
