/* ══════════════════════════════════════════════════════════
   p-location.css — 진료시간 & 오시는 길(소개·오시는길)
   site.css 다음에 로드된다. 접두사 .lo- · site.css 는 손대지 않는다.
   장식은 축소본(라벨 + 번호). 지도는 이 페이지의 유일한 큰 시각물이다.
   ══════════════════════════════════════════════════════════ */

/* ── 01 hero ── */
/* 로고월은 원본 가로 72~86% 구간에 있다. 모바일은 보이는 폭이 32% 뿐이라 중심을 79% 로 둬야 로고가 온전히 들어온다(실측). */
.lo-hero__img{width:100%; height:100%; object-fit:cover; --phero-pos:72% 55%}
@media (max-width:759px){
  .lo-hero__img{--phero-pos:72% 55%}
}

/* ── 02 진료시간 — 푸터의 요약본보다 크게 읽히는 것이 이 페이지의 몫이다 ── */
.lo-hours__dl{
  margin-top:1.4rem; font-size:var(--f-body); row-gap:0;
  border-top:1px solid var(--line);
}
.lo-hours__dl dt{
  padding:.85rem 0; border-bottom:1px solid var(--line-s);
  color:var(--muted); white-space:nowrap;
}
.lo-hours__dl dd{
  margin:0; padding:.85rem 0; border-bottom:1px solid var(--line-s);
  color:var(--ink); font-family:var(--serif); font-weight:700; letter-spacing:-.01em;
}
.lo-hours__dl dd i{display:block; font-family:var(--sans); font-weight:500}
@media (min-width:520px){
  .lo-hours__dl dd i{display:inline; margin-left:.5rem}
}

.lo-notes{display:grid; gap:1rem}
.lo-notes li{
  padding:1.15rem 1.25rem;
  background:var(--soft); border:1px solid var(--line); border-radius:var(--r-card);
}
.lo-notes b{display:block; color:var(--ink); font-size:var(--f-body); line-height:1.5}
.lo-notes span{display:block; margin-top:.35rem; font-size:var(--f-sub); color:var(--muted); line-height:1.7}
.lo-tel{margin-top:1.3rem}

/* ── 03 오시는 길 — 지도는 크게, 모바일은 4:3 ── */
.lo-map{
  position:relative; aspect-ratio:4/3;
  margin-top:clamp(1.6rem, 1.2rem + 2vw, 2.4rem);
  background:var(--sand); border:1px solid var(--line); border-radius:var(--r-card); overflow:hidden;
}
.lo-map iframe{position:absolute; inset:0; width:100%; height:100%; border:0; filter:saturate(.85)}
@media (min-width:760px){
  .lo-map{aspect-ratio:16/7; max-height:min(58vh, 520px)}
}

.lo-ways{display:grid; gap:1rem; margin-top:1.25rem}
@media (min-width:860px){
  .lo-ways{grid-template-columns:repeat(3,1fr); gap:1.25rem}
}
.lo-ways li{
  padding:clamp(1.2rem, 1rem + 1vw, 1.6rem);
  background:#fff; border:1px solid var(--line); border-radius:var(--r-card);
}
.lo-ways .ico{margin-bottom:.7rem}
.lo-ways > li > b{display:block; color:var(--ink); font-size:var(--f-h3); line-height:1.4}
.lo-ways > li > span{display:block; margin-top:.5rem; font-size:var(--f-sub); color:var(--body-c); line-height:1.85}
.lo-ways .line{margin-right:.15em}

/* ── 04 연락 ── */
@media (min-width:900px){
  .lo-cta__list{grid-template-columns:repeat(3,1fr); gap:.9rem}
}
.lo-cta .cap{margin-top:1.2rem; max-width:62ch}
.lo-cta__nl{min-height:0; margin-top:0}

/* 연락 — 당일 예약·영어·팩스 세 줄 */
.lo-facts{display:grid; gap:.5rem; margin-top:1.2rem; margin-bottom:1.2rem; list-style:none; padding:0}
.lo-facts li{display:grid; grid-template-columns:5.5em 1fr; gap:.8rem; padding:.7rem 0; border-top:1px solid var(--line-s); font-size:var(--f-sub); line-height:1.65}
.lo-facts b{color:var(--ink)} .lo-facts span{color:var(--body-c)}
