/* A compact location panel; consultation styles are shared below. */
#location .section-head{margin-bottom:18px}
#location .section-head>div{gap:6px}
#location .label{font-size:12px;line-height:18px;letter-spacing:.08em}
#location h2{font-size:32px;line-height:40px}
.arrival-layout{display:grid;grid-template-columns:36% minmax(0,1fr);overflow:hidden;border:1px solid #dce2d8;border-radius:8px;background:#fff}
.arrival-map{position:relative;min-width:0;height:258px;margin:0;background:#fbfcf8;border-right:1px solid #e2e6de}
.arrival-map-link{display:block;width:100%;height:100%;text-decoration:none}
.arrival-map img{display:block;width:100%;height:100%;object-fit:contain}
.arrival-map figcaption{position:absolute;bottom:7px;left:10px;margin:0;color:#737b70;font-size:10px;line-height:15px;pointer-events:none}
.arrival-information{min-width:0;display:flex;align-items:center;padding:20px 32px}
.arrival-copy{min-width:0;width:100%}
.arrival-copy h3{margin:0 0 3px;color:#293c30;font-size:20px;line-height:27px;letter-spacing:-.03em}
.arrival-address{margin:0;color:#66705f;font-size:15px;line-height:23px;word-break:keep-all}
.arrival-directions{display:grid;gap:7px;margin:14px 0 0;font-size:14px;line-height:22px}
.arrival-directions>div{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px}
.arrival-directions dt{display:flex;align-items:flex-start;padding-top:1px;color:#58745e}
.arrival-directions dd{margin:0;color:#3e4a3a;word-break:keep-all}

.arrival-transit-icon{display:block;width:20px;height:20px;flex:none}
.arrival-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.arrival-distance{white-space:nowrap;color:#64745c}
.arrival-stop-number{margin-left:3px;color:#7a8274;font-size:12px}
.arrival-bus-routes{display:flex;flex-wrap:wrap;gap:2px 13px;margin-top:3px;font-size:13px;line-height:20px}
.arrival-route-group{white-space:nowrap}
.arrival-route-group>span{margin-right:5px;color:#78816f;font-size:11px}

.arrival-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}
.arrival-action{display:inline-flex;justify-content:center;align-items:center;min-height:36px;padding:7px 12px;border:1px solid #375c45;border-radius:4px;background:#375c45;color:#fff;font:inherit;font-size:13px;font-weight:600;line-height:20px;text-decoration:none;cursor:pointer}
.arrival-action--light{background:#fff;color:#46583d;border-color:#d4dccd}
.arrival-action:focus-visible,.arrival-map-link:focus-visible{outline:3px solid #bc8c27;outline-offset:3px}
.arrival-map-link:focus-visible{outline-offset:-4px}
.arrival-status{display:block;color:#52614f;font-size:12px;line-height:18px}
.arrival-status:empty{display:none}
.arrival-compact{padding:28px 0}
.arrival-compact .wrap{display:flex;gap:24px;justify-content:space-between;align-items:center}
.arrival-compact h2{font-size:22px;margin:0 0 7px;color:#294332}
.arrival-compact p{margin:0;color:#52614f;line-height:1.8}
.arrival-compact .arrival-actions{margin:0;flex-shrink:0}

.arrival-bus-routes{gap:2px 10px}
@media(min-width:761px) and (max-width:1100px){
 .arrival-layout{grid-template-columns:32% minmax(0,1fr)}
 .arrival-information{padding:18px 24px}
 .arrival-directions{font-size:13px}
}
@media(max-width:760px){
 #location{padding:32px 0}
 #location h2{font-size:27px;line-height:34px}
 #location .section-head{margin-bottom:10px}
 .arrival-layout{grid-template-columns:minmax(0,1fr)}
 .arrival-map{height:144px;border-right:0;border-bottom:1px solid #e2e6de}
 .arrival-map figcaption{font-size:9px;bottom:5px}
 .arrival-information{display:block;padding:14px 18px}
 .arrival-copy h3{font-size:17px;line-height:24px}
 .arrival-address{font-size:13px;line-height:21px}
 .arrival-directions{margin-top:12px;font-size:13px;gap:6px}
 .arrival-compact .wrap{display:block}
 .arrival-compact .arrival-actions{margin-top:16px}
}
