.subway-contact{background:var(--contact-bg);color:var(--contact-text)}
.subway-contact__hero{width:100%;background:#008938}
.subway-contact__banner{display:block;width:100%;height:auto}
.subway-contact__inner{max-width:var(--page-width,1200px);margin:auto;padding:var(--contact-top) 24px var(--contact-bottom)}
.subway-contact__header{max-width:760px;margin:0 auto 56px;text-align:center}
.subway-contact__eyebrow{font-size:12px;letter-spacing:.16em;font-weight:800;color:var(--contact-accent);margin:0 0 14px}
.subway-contact__heading{font-size:clamp(38px,5vw,64px);font-weight:850;letter-spacing:-.04em;line-height:1.05;color:var(--contact-text);margin:0}
.subway-contact__heading:after{content:'';display:block;width:60px;height:6px;border-radius:6px;background:var(--contact-highlight);margin:20px auto 0}
.subway-contact__intro{font-size:17px;line-height:1.6;opacity:.8;margin-top:20px}
.subway-contact__intro p{margin:0}
.subway-contact__layout{display:grid;grid-template-columns:minmax(0,820px);justify-content:center;gap:clamp(30px,5vw,72px);align-items:start}
.subway-contact__photo-wrap{border-radius:20px;overflow:hidden;aspect-ratio:1.9;background:#e6eee5}
.subway-contact__photo{width:100%;height:100%;object-fit:cover;object-position:center 63%;display:block}
.subway-contact__info{padding:28px 0 10px}
.subway-contact__info-label,.subway-contact__authority>span{color:var(--contact-accent);font-size:11px;font-weight:800;letter-spacing:.12em;margin:0 0 10px}
.subway-contact__info h2{font-size:22px;line-height:1.25;letter-spacing:-.025em;color:var(--contact-text);margin:0 0 18px}
.subway-contact__info p:not(.subway-contact__info-label){display:flex;flex-wrap:wrap;gap:8px 16px;margin:8px 0;font-size:15px}
.subway-contact__info p span{min-width:66px;opacity:.7}
.subway-contact__info a,.subway-contact__authority a{color:var(--contact-accent);font-weight:700;text-decoration:none;overflow-wrap:anywhere}
.subway-contact__info a:hover,.subway-contact__authority a:hover{text-decoration:underline}
.subway-contact__authority{border-top:1px solid color-mix(in srgb,var(--contact-text) 20%,transparent);padding-top:22px;font-size:14px;line-height:1.6}
.subway-contact__authority p{margin:8px 0}
@media(max-width:749px){.subway-contact__inner{padding-inline:16px}.subway-contact__header{margin-bottom:32px}.subway-contact__layout{grid-template-columns:1fr;gap:30px}.subway-contact__photo-wrap{aspect-ratio:1.6}}
