/* Preview-Locations.html(진료안내 · 오시는길) 페이지 전용 스타일. CSSBASE(about-base+unify) 뒤에 로드 */

/* ===== 섹션 라벨 (메인 참고) ===== */
.sec-label{display:flex;align-items:center;gap:14px;margin-bottom:20px;font-family:"Space Grotesk",sans-serif;}
.sec-label .num{font-size:14px;font-weight:600;color:var(--point);letter-spacing:.06em;}
.sec-label .ln{width:30px;height:1px;background:var(--point);opacity:.55;}
.sec-label .lab{font-size:13px;font-weight:600;letter-spacing:.26em;text-transform:uppercase;color:var(--body);}
.display{font-size:clamp(24px,3vw,44px);font-weight:300;letter-spacing:-.035em;line-height:1.14;color:var(--ink);}
.display .pt{color:var(--point);}

/* ===== 메인: 정보 + 지도 ===== */
.loc-main{padding:clamp(56px,6.5vw,100px) var(--pad);}
.loc-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(40px,5vw,80px);align-items:stretch;}
.loc-info .display{margin-bottom:clamp(32px,4vw,52px);}
.info-block{margin-bottom:clamp(34px,4vw,52px);}
.info-block:last-child{margin-bottom:0;}
.info-block h3{font-size:clamp(17px,1.7vw,21px);font-weight:600;letter-spacing:-.02em;margin-bottom:20px;color:var(--ink);display:flex;align-items:center;gap:12px;}
.info-block h3::before{content:"";width:20px;height:1.5px;background:var(--point);}

.hours-tbl{width:100%;border-collapse:collapse;}
.hours-tbl tr{border-bottom:1px solid var(--line);}
.hours-tbl tr:first-child{border-top:1.5px solid var(--ink);}
.hours-tbl td{padding:15px 0;font-size:15px;vertical-align:middle;}
.hours-tbl td:first-child{font-family:"Space Grotesk",sans-serif;font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);width:44%;padding-right:16px;}
.hours-tbl td b{font-weight:700;color:var(--ink);}
.hours-tbl tr.notice td:last-child{color:var(--point);font-weight:600;font-size:14px;}

.info-list{display:flex;flex-direction:column;border-top:1.5px solid var(--ink);}
.info-row{display:grid;grid-template-columns:104px 1fr;gap:14px;padding:15px 0;border-bottom:1px solid var(--line);align-items:start;}
.info-row .ik{font-family:"Space Grotesk",sans-serif;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding-top:2px;}
.info-row .iv{font-size:15px;color:var(--ink);font-weight:500;line-height:1.65;}
.info-row .iv b{font-weight:700;}
.info-row .iv .sub-note{font-size:13.5px;color:var(--body);display:block;margin-top:3px;font-weight:400;}

/* ===== 카카오 지도 (메인 홈과 동일 SDK) ===== */
.map-wrap{position:relative;min-height:clamp(440px,46vw,600px);overflow:hidden;background:#eef2f4;border-radius:0 28px 0 28px;}
.loc-map{position:absolute;inset:0;width:100%;height:100%;}
.map-badge{position:absolute;bottom:20px;left:20px;z-index:3;background:#fff;padding:18px 22px;box-shadow:0 12px 36px -16px rgba(20,40,60,.4);display:flex;flex-direction:column;gap:5px;max-width:280px;border-radius:0 16px 0 16px;}
.map-badge .mb-t{font-size:16px;font-weight:700;color:var(--ink);letter-spacing:-.02em;}
.map-badge .mb-s{font-size:13px;color:var(--body);line-height:1.5;}
.map-badge .mb-pt{font-size:13px;color:var(--point);font-weight:700;margin-top:2px;}
.map-badge .mb-link{display:inline-block;margin-top:10px;font-family:"Space Grotesk",sans-serif;font-size:12.5px;font-weight:700;color:#fff;background:#666666;padding:9px 16px;border-radius:0 10px 0 10px;transition:.2s;align-self:flex-start;}
.map-badge .mb-link:hover{background:var(--point);}

/* ===== 위치 스테이트먼트 밴드 (밝은 톤) ===== */
.loc-band{position:relative;height:clamp(300px,34vw,460px);overflow:hidden;background:#e7ebee;margin:0 var(--pad) clamp(30px,4vw,56px);border-radius:0 28px 0 28px;}
.loc-band img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;transform:scale(1.3);transform-origin:top center;filter:brightness(1.05) contrast(.95) saturate(.9);}
.loc-band .scrim{position:absolute;inset:0;background:linear-gradient(100deg,rgba(244,246,247,.86) 0%,rgba(244,246,247,.56) 46%,rgba(244,246,247,.2) 100%);}
.loc-band .inner{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:center;color:#666666;padding:0 clamp(34px,5vw,64px);}
.loc-band .bk{font-family:"Space Grotesk",sans-serif;font-size:13px;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:rgba(102,102,102,.75);margin-bottom:20px;display:flex;align-items:center;gap:16px;}
.loc-band .bk::before{content:"";width:42px;height:1px;background:var(--point);}
.loc-band blockquote{font-size:clamp(24px,3.2vw,46px);font-weight:300;line-height:1.24;letter-spacing:-.03em;max-width:900px;color:#666666;}
.loc-band blockquote .pt{color:var(--point);font-weight:500;}
.loc-band cite{display:block;margin-top:22px;font-style:normal;font-size:14px;letter-spacing:.04em;color:rgba(102,102,102,.7);font-family:"Space Grotesk",sans-serif;}

/* ===== 오시는 방법 ===== */
.transport-wrap{padding:0 var(--pad) clamp(30px,4vw,56px);}
.transport-wrap .display{margin-bottom:clamp(28px,3.5vw,44px);}
.transport-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,1.6vw,22px);}
.t-card{padding:clamp(28px,3vw,38px);border:1px solid var(--line);border-radius:0 20px 0 20px;background:#fff;transition:box-shadow .28s,transform .28s,border-color .28s;}
.t-card:hover{box-shadow:0 24px 50px -34px rgba(20,40,60,.4);transform:translateY(-3px);border-color:transparent;}
.t-card .t-icon{font-family:"Space Grotesk",sans-serif;font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--point);margin-bottom:16px;}
.t-card h4{font-size:20px;font-weight:600;letter-spacing:-.025em;margin-bottom:12px;color:var(--ink);}
.t-card p{font-size:14.5px;color:var(--body);line-height:1.78;}
.t-lines{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px;}
.t-card .t-line{display:inline-flex;align-items:center;gap:6px;font-family:"Space Grotesk",sans-serif;font-size:12px;font-weight:700;padding:5px 11px;border-radius:0 8px 0 8px;}
.t-card .t-line.line9{background:#BDB428;color:#fff;}
.t-card .t-line.line2{background:#009D3E;color:#fff;}
.t-card .t-line.linesb{background:#F5A200;color:#fff;}
.t-card .t-station{margin-top:18px;padding-top:18px;border-top:1px solid var(--line);}

/* ===== CTA (밝은 톤) ===== */
.loc-cta{margin:clamp(30px,4vw,60px) var(--page-pad) clamp(70px,8vw,120px);padding:clamp(44px,5vw,72px) clamp(34px,5vw,72px);background:var(--soft);border-radius:0 28px 0 28px;display:flex;align-items:center;justify-content:space-between;gap:36px;flex-wrap:wrap;}
.loc-cta .h{font-size:clamp(22px,2.6vw,38px);font-weight:300;letter-spacing:-.03em;line-height:1.2;color:var(--ink);}
.loc-cta .s{font-size:15px;color:var(--body);margin-top:14px;line-height:1.7;}
.loc-cta .cta{display:inline-flex;align-items:center;gap:12px;background:#666666;color:#fff;font-size:16px;font-weight:700;padding:18px 34px;border-radius:0 14px 0 14px;transition:.25s;white-space:nowrap;}
.loc-cta .cta:hover{background:var(--point);transform:translateY(-2px);}

/* ===== 스크롤 리빌 ===== */
@media(prefers-reduced-motion:no-preference){
  .reveal{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1);}
  .reveal.in{opacity:1;transform:none;}
  .reveal.d1{transition-delay:.08s;}
  .reveal.d2{transition-delay:.16s;}
}

/* ===== 반응형 ===== */
@media(max-width:960px){
  .loc-grid{grid-template-columns:1fr;gap:clamp(32px,5vw,48px);}
  .map-wrap{min-height:380px;}
  .transport-grid{grid-template-columns:1fr;}
}
@media(max-width:600px){
  .map-badge{left:16px;right:16px;bottom:16px;max-width:none;}
  .imap-hint{display:none;}
}
