/* pages/location.php 전용 스타일. 공용 컴포넌트는 css/gpc-theme.css 참고. */

.lo-wrap { max-width: var(--wrap); margin: 0 auto; padding: clamp(44px,6vw,72px) clamp(20px,6vw,64px) clamp(64px,9vw,100px); display: grid; gap: clamp(28px,4vw,40px); }
.lo-office { display: grid; grid-template-columns: 1fr 1.15fr; gap: 0; border: 1px solid var(--border); border-radius: 18px; overflow: hidden; background: #fff; }
@media (max-width: 800px) { .lo-office { grid-template-columns: 1fr; } }
.lo-info { padding: clamp(28px,4vw,44px); }
.lo-tag { display: inline-block; font-size: 12px; font-weight: 700; letter-spacing: .1em; color: var(--blue); background: #eaf0fb; padding: 5px 12px; border-radius: 100px; }
.lo-name { font-family: var(--serif); font-size: clamp(22px,2.8vw,28px); font-weight: 600; color: var(--navy); margin: 16px 0 22px; }
.lo-dl { display: grid; grid-template-columns: 76px 1fr; gap: 14px 16px; font-size: 15px; }
.lo-dl dt { color: var(--muted); font-weight: 600; }
.lo-dl dd { margin: 0; color: #33405c; line-height: 1.6; }
.lo-dl a { color: #33405c; }
.lo-actions { margin-top: 26px; }
.lo-map { min-height: 300px; border: 0; border-left: 1px solid var(--border); width: 100%; height: 100%; display: block; filter: grayscale(.15); }
@media (max-width: 800px) { .lo-map { border-left: 0; border-top: 1px solid var(--border); min-height: 260px; } }
