/* 교통안내 전용. 글꼴은 기존 테마의 GongGothicLight를 상속한다. */
.visit-guide {background:#faf7f0; color:#263e30; padding:78px 28px 100px;}
.visit-guide * {box-sizing:border-box;}
.visit-guide__inner {max-width:1120px; margin:0 auto;}
.visit-guide h2,.visit-guide h3,.visit-guide p {margin:0; color:inherit; word-break:keep-all; overflow-wrap:break-word;}
.visit-guide h3 {font-size:23px; line-height:1.5; letter-spacing:-.04em;}
.visit-guide p {font-size:16px; line-height:1.95; letter-spacing:-.02em;}
.visit-guide__intro {display:flex; justify-content:space-between; align-items:center; gap:24px; margin-bottom:38px;}
.visit-guide__intro h2 {font-size:44px; line-height:1.4; letter-spacing:-.055em;}
.visit-guide__intro p {margin-top:14px; color:#6a7568; font-size:18px;}
.visit-guide__pin {position:relative; width:48px; height:48px; margin-right:12px; border:2px solid #d87636; border-radius:50% 50% 50% 0; transform:rotate(-45deg); flex-shrink:0;}
.visit-guide__pin:after {content:''; position:absolute; width:15px; height:15px; border:2px solid #d87636; border-radius:50%; top:14px; left:14px;}
.visit-map {border:1px solid #dedfd1; border-radius:22px; overflow:hidden; background:#fff; margin-bottom:28px;}
.visit-map__canvas {min-height:300px; background:#e9ede3;}
.visit-map__canvas .root_daum_roughmap {width:100%; border:0; padding:0; box-sizing:content-box;}
.visit-map__address {display:flex; align-items:center; gap:26px; padding:26px 32px;}
.visit-map__address h3 {font-size:16px; color:#b15429; flex-shrink:0;}
.visit-map__address p {font-size:20px;}
.visit-transit {display:flex; align-items:flex-start; gap:28px; background:#ede8d9; border-radius:18px; padding:32px; margin-bottom:50px;}
.visit-guide__number {display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; flex-shrink:0; border:1px solid #d8bc9e; border-radius:50%; font-size:13px; color:#af572d;}
.visit-transit p {margin-top:12px; color:#586452;}
.visit-routes {display:grid; grid-template-columns:1fr 1fr; gap:24px;}
.visit-route {border:1px solid #dce0d4; border-radius:20px; padding:30px; background:#fffdf8;}
.visit-route:first-child {grid-column:1 / -1;}
.visit-route header {display:flex; align-items:center; gap:18px; padding-bottom:24px;}
.visit-route__paths {border-top:1px solid #e4e6dd;}
.visit-route__paths p {padding:22px 0; border-bottom:1px solid #e4e6dd; color:#556251;}
.visit-route__paths p:last-child {border-bottom:0; padding-bottom:0;}
.visit-contact {display:flex; align-items:center; justify-content:space-between; gap:24px; background:#263e30; color:#fff6e6; padding:32px; border-radius:18px; margin-top:28px;}
.visit-contact h3 {font-size:20px;}
.visit-contact p {color:#f2bc84;}
.visit-contact a {display:inline-block; color:inherit; padding:8px 0; text-decoration:underline; text-underline-offset:5px;}
.visit-contact a:hover,.visit-contact a:focus-visible {color:#fff;}
@media(max-width:1024px) {
 .visit-guide {padding:60px 24px 76px;}
 .visit-contact {align-items:flex-start; flex-direction:column; gap:12px;}
 .visit-route {padding:26px;}
}
@media(max-width:640px) {
 .visit-guide {padding:44px 20px 60px;}
 .visit-guide__intro {margin-bottom:28px;}
 .visit-guide__intro h2 {font-size:31px;}
 .visit-guide__intro p {font-size:16px; margin-top:10px;}
 .visit-guide__pin {width:34px; height:34px; margin-right:4px;}
 .visit-guide__pin:after {width:11px; height:11px; top:9px; left:9px;}
 .visit-map {border-radius:16px;}
 .visit-map__address {display:block; padding:22px;}
 .visit-map__address p {font-size:18px; margin-top:8px;}
 .visit-transit {gap:16px; padding:24px 20px; margin-bottom:30px;}
 .visit-guide h3 {font-size:21px;}
 .visit-guide__number {width:32px; height:32px; font-size:12px;}
 .visit-routes {display:block;}
 .visit-route {padding:24px 20px; border-radius:16px; margin-bottom:20px;}
 .visit-route header {gap:14px; align-items:flex-start; padding-bottom:20px;}
 .visit-route__paths p {padding:18px 0;}
 .visit-contact {padding:26px 22px; border-radius:16px; margin-top:24px;}
 .visit-contact p {font-size:15px;}
}
