/* ============================================================
   Area P2 — 지역별 안내 (area/*) 전용
   body.p1.pain-p2.area-p2 스코프. phase1.css + pain-p2.css 위에 얹힌다.
   style.css / phase1.css / pain-p2.css는 수정하지 않는다.

   원칙:
   - 페이지마다 composition이 다르다 (공용 shell 복제 금지)
   - tinted(cream) 대형 scene은 페이지당 0~1개
   - 섹션 구분은 whitespace / rule / typography로
   - 텍스트 읽기 폭 640~760px, 좌측 정렬축은 pain-p2 wrap 기준
   ============================================================ */

/* ---------- 공통 미세조정 ---------- */
body.area-p2 .page-hero{padding:112px 0 40px}
body.area-p2 .section-pad{padding:84px 0}
body.area-p2 .section-pad-sm{padding:60px 0}
body.area-p2 .prose{max-width:760px}
body.area-p2 .prose p{font-size:1.1rem;line-height:1.88;color:var(--ink-soft)}
body.area-p2 .prose p+p{margin-top:18px}
body.area-p2 .prose b{color:var(--charcoal)}
body.area-p2 .prose a{color:var(--olive-800);text-decoration:underline;text-underline-offset:3px}
body.area-p2 .rule{border:none;border-top:1px solid var(--line);margin:0}

/* 다른 생활권: 칩 대신 한 줄 인라인 링크 */
.a2-others{border-top:1px solid var(--line);padding:28px 0 0;font-size:1rem;color:var(--text-mute)}
.a2-others b{font-weight:700;color:var(--charcoal);margin-right:18px}
.a2-others a{color:var(--olive-800);white-space:nowrap}
.a2-others a:hover{color:var(--charcoal)}
.a2-others .sep{margin:0 10px;color:var(--line)}

/* FUTURE PHOTO 자리는 placeholder 박스를 만들지 않는다 — HTML 주석으로만 표시 */

/* ============================================================
   HUB (index) — 생활권 흐름 diagram + 위계형 editorial directory
   ============================================================ */
/* 생활권 흐름: 텍스트와 선으로 만든 수평 diagram (지도 아님) */
.a2-flow-scene{background:var(--cream);padding:64px 0 72px}
.a2-flowline{position:relative;display:flex;justify-content:space-between;align-items:flex-start;max-width:1080px;margin-top:48px}
.a2-flowline::before{content:"";position:absolute;left:6px;right:6px;top:5px;height:1px;background:var(--sand)}
.a2-flowline .node{position:relative;padding-top:22px;min-width:0}
.a2-flowline .node::before{content:"";position:absolute;left:0;top:0;width:11px;height:11px;border-radius:50%;background:var(--olive-700);box-shadow:0 0 0 4px var(--cream)}
.a2-flowline .node.home::before{background:var(--charcoal);width:13px;height:13px;top:-1px}
.a2-flowline .node b{display:block;font-size:1.06rem;font-weight:750;color:var(--charcoal);letter-spacing:-.01em}
.a2-flowline .node.home b{font-size:1.14rem}
.a2-flowline .node span{display:block;font-size:.82rem;color:var(--text-mute);margin-top:4px;line-height:1.5}
.a2-flowline .node .tag{display:inline-block;font-size:.72rem;font-weight:750;color:#fff;background:var(--charcoal);border-radius:4px;padding:2px 7px;margin-top:7px}
.a2-flow-branch{display:flex;gap:40px;margin-top:34px;font-size:.9rem;color:var(--text-mute)}
.a2-flow-branch b{color:var(--olive-800);font-weight:700}
@media(max-width:860px){
  .a2-flowline{flex-direction:column;gap:22px;margin-top:36px}
  .a2-flowline::before{left:5px;right:auto;top:6px;bottom:6px;height:auto;width:1px}
  .a2-flowline .node{padding-top:0;padding-left:26px}
  .a2-flowline .node::before{top:5px}
  .a2-flow-branch{flex-direction:column;gap:10px}
}

/* 디렉토리: 지역명 크기 자체가 위계 */
.a2-dir{border-top:1px solid var(--line)}
.a2-dir .cat{font-size:.88rem;font-weight:750;letter-spacing:.08em;color:var(--text-mute);padding:40px 0 6px}
.a2-dir a.row{display:flex;align-items:baseline;gap:clamp(20px,3vw,54px);padding:30px 4px;border-bottom:1px solid var(--line-soft);transition:.2s}
.a2-dir a.row .nm{font-weight:800;letter-spacing:-.025em;color:var(--charcoal);flex:none;width:clamp(180px,22vw,320px);font-size:clamp(1.7rem,2.6vw,2.5rem);line-height:1.15;transition:.2s}
.a2-dir a.row.hq .nm{font-size:clamp(2.2rem,3.6vw,3.3rem)}
.a2-dir a.row.sub{padding:20px 4px}
.a2-dir a.row.sub .nm{font-size:1.22rem;font-weight:700}
.a2-dir a.row p{font-size:1.02rem;color:var(--text-soft);line-height:1.7;max-width:640px}
.a2-dir a.row .go{margin-left:auto;color:var(--line);flex:none;transition:.2s}
.a2-dir a.row:hover .nm{color:var(--olive-800)}
.a2-dir a.row:hover .go{color:var(--olive-700);transform:translateX(4px)}
.a2-dir .hq .nm small{display:block;font-size:.8rem;font-weight:700;letter-spacing:.04em;color:var(--olive-700);margin-top:6px}
@media(max-width:760px){
  .a2-dir a.row{flex-direction:column;gap:8px}
  .a2-dir a.row .nm{width:auto}
  .a2-dir a.row .go{display:none}
}

/* ============================================================
   BANGHWA — 소재지 신뢰 페이지: oversized 지역명 + 주소 typography
   ============================================================ */
.a2-loc-hero{padding:132px 0 0}
.a2-loc-hero .kicker{font-size:1rem;font-weight:650;color:var(--olive-700);margin-bottom:18px}
.a2-loc-hero h1{font-size:clamp(3.2rem,7.5vw,5.6rem);letter-spacing:-.04em;line-height:1.02;margin-bottom:30px}
.a2-loc-hero .addr{font-size:clamp(1.25rem,2.3vw,1.8rem);font-weight:700;letter-spacing:-.02em;color:var(--charcoal);line-height:1.45;max-width:900px}
.a2-loc-hero .addr .soft{color:var(--text-mute);font-weight:500}
.a2-loc-hero .note{margin-top:22px;font-size:1.05rem;color:var(--ink-soft);max-width:680px;line-height:1.85}
/* 대형 fact band (이 페이지의 유일한 tinted scene) */
.a2-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(28px,4vw,72px);max-width:1080px}
.a2-facts>div{border-top:2px solid var(--olive-600);padding-top:18px}
.a2-facts .lab{font-size:.88rem;font-weight:700;color:var(--text-mute);margin-bottom:8px}
.a2-facts .val{font-size:clamp(1.25rem,2vw,1.6rem);font-weight:750;letter-spacing:-.02em;color:var(--charcoal);line-height:1.4}
.a2-facts .sub{font-size:.92rem;color:var(--text-soft);margin-top:6px;line-height:1.6}
@media(max-width:760px){.a2-facts{grid-template-columns:1fr;gap:24px}}
/* 이런 경우: 1열 대형 divider 행 (카드 아님) */
.a2-case{border-top:1px solid var(--line);max-width:1080px}
.a2-case>div{display:flex;gap:clamp(24px,4vw,64px);padding:28px 4px;border-bottom:1px solid var(--line-soft);align-items:baseline}
.a2-case h3{font-size:clamp(1.2rem,1.9vw,1.5rem);font-weight:750;letter-spacing:-.02em;flex:none;width:clamp(200px,26vw,340px);line-height:1.4}
.a2-case p{font-size:1.03rem;color:var(--text-soft);line-height:1.75;max-width:640px}
@media(max-width:760px){.a2-case>div{flex-direction:column;gap:8px}.a2-case h3{width:auto}}

/* ============================================================
   SINBANGHWA — statement + 세로 route scene / 대형 번호 스텝
   ============================================================ */
.a2-split-hero{display:grid;grid-template-columns:7fr 5fr;gap:clamp(40px,6vw,110px);align-items:start;padding-top:24px}
.a2-split-hero .lead-xl{font-size:clamp(1.4rem,2.4vw,1.95rem);font-weight:650;letter-spacing:-.025em;line-height:1.55;color:var(--charcoal);margin:26px 0 20px;max-width:640px}
.a2-split-hero .side-note{font-size:1.02rem;color:var(--ink-soft);line-height:1.85;max-width:600px}
/* 세로 editorial route (지도 UI 아님) */
.a2-route-v{border-left:1px solid var(--sand);padding:6px 0 6px 30px;position:relative;margin-top:12px}
.a2-route-v .stop{position:relative;padding:0 0 30px}
.a2-route-v .stop:last-child{padding-bottom:0}
.a2-route-v .stop::before{content:"";position:absolute;left:-35px;top:7px;width:9px;height:9px;border-radius:50%;background:var(--olive-700);box-shadow:0 0 0 4px var(--white)}
.a2-route-v .stop.dest::before{background:var(--charcoal);width:11px;height:11px;left:-36px}
.a2-route-v .stop b{display:block;font-size:1.12rem;font-weight:750;color:var(--charcoal)}
.a2-route-v .stop span{display:block;font-size:.88rem;color:var(--text-mute);margin-top:3px;line-height:1.55}
.a2-route-v .leg{font-size:.8rem;font-weight:700;color:var(--olive-700);letter-spacing:.04em;margin:-14px 0 16px}
.a2-route-cap{margin-top:20px;font-size:.9rem;color:var(--text-mute);line-height:1.7}
@media(max-width:900px){.a2-split-hero{grid-template-columns:1fr;gap:44px}}

/* ============================================================
   MAGOK — workday editorial: 대형 statement + 하루 시간대 strip
   ============================================================ */
.a2-statement{font-size:clamp(1.7rem,3.2vw,2.7rem);font-weight:750;letter-spacing:-.03em;line-height:1.42;color:var(--charcoal);max-width:960px}
.a2-statement em{font-style:normal;color:var(--olive-700)}
/* 하루의 흐름: 시간 기반 3분할 (역 다이어그램과 다른 형태) */
.a2-day{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-width:1120px}
.a2-day>div{padding:32px 32px 32px 0;margin-right:32px;border-right:1px solid var(--line-soft)}
.a2-day>div:last-child{border-right:none;margin-right:0;padding-right:0}
.a2-day .t{font-size:clamp(1.5rem,2.4vw,2rem);font-weight:800;letter-spacing:-.02em;color:var(--olive-700);font-variant-numeric:tabular-nums;margin-bottom:10px}
.a2-day h4{font-size:1.16rem;margin-bottom:8px}
.a2-day p{font-size:.98rem;color:var(--text-soft);line-height:1.75}
@media(max-width:860px){.a2-day{grid-template-columns:1fr}.a2-day>div{border-right:none;margin-right:0;padding:24px 0;border-bottom:1px solid var(--line-soft)}.a2-day>div:last-child{border-bottom:none}}

/* ============================================================
   SONGJEONG — narrow facts 축 + wide prose (좌우 비대칭)
   ============================================================ */
.a2-aside-grid{display:grid;grid-template-columns:minmax(220px,4fr) 8fr;gap:clamp(40px,6vw,110px);align-items:start}
.a2-aside .big{font-size:clamp(2rem,3.6vw,3rem);font-weight:800;letter-spacing:-.03em;color:var(--charcoal);line-height:1.1}
.a2-aside .fact{border-top:1px solid var(--line);margin-top:26px;padding-top:16px}
.a2-aside .fact b{display:block;font-size:1.3rem;font-weight:750;color:var(--olive-800);letter-spacing:-.02em}
.a2-aside .fact span{font-size:.88rem;color:var(--text-mute);line-height:1.6;display:block;margin-top:4px}
.a2-prose-run h3{font-size:1.28rem;font-weight:750;letter-spacing:-.02em;margin:38px 0 12px;color:var(--charcoal)}
.a2-prose-run h3:first-child{margin-top:0}
.a2-prose-run p{font-size:1.08rem;line-height:1.88;color:var(--ink-soft);max-width:720px}
@media(max-width:860px){.a2-aside-grid{grid-template-columns:1fr;gap:36px}}
/* 대형 텍스트 링크 (카드 대체) */
.a2-biglinks{border-top:1px solid var(--line);max-width:920px}
.a2-biglinks a{display:flex;justify-content:space-between;align-items:baseline;gap:24px;padding:24px 4px;border-bottom:1px solid var(--line-soft);transition:.2s}
.a2-biglinks a b{font-size:clamp(1.3rem,2.1vw,1.7rem);font-weight:750;letter-spacing:-.02em;color:var(--charcoal);transition:.2s}
.a2-biglinks a span{font-size:.95rem;color:var(--text-mute);margin-left:auto;text-align:right}
.a2-biglinks a .go{color:var(--line);flex:none;transition:.2s}
.a2-biglinks a:hover b{color:var(--olive-800)}
.a2-biglinks a:hover .go{color:var(--olive-700);transform:translateX(4px)}
@media(max-width:640px){.a2-biglinks a{flex-wrap:wrap}.a2-biglinks a span{margin-left:0;text-align:left;width:100%}}

/* ============================================================
   GONGHANG — 가족/생활 리듬 wide directory (계단형 들여쓰기)
   ============================================================ */
.a2-life{max-width:1120px}
.a2-life>div{border-top:1px solid var(--line-soft);padding:30px 4px;display:flex;gap:clamp(20px,3vw,48px);align-items:baseline}
.a2-life>div:first-child{border-top:1px solid var(--line)}
.a2-life>div:nth-child(2){margin-left:clamp(0px,4vw,72px)}
.a2-life>div:nth-child(3){margin-left:clamp(0px,8vw,144px)}
.a2-life>div:nth-child(4){margin-left:clamp(0px,4vw,72px)}
.a2-life .who{font-size:clamp(1.5rem,2.6vw,2.1rem);font-weight:800;letter-spacing:-.025em;color:var(--charcoal);flex:none;width:clamp(170px,20vw,280px);line-height:1.25}
.a2-life .tx{max-width:560px}
.a2-life .tx p{font-size:1rem;color:var(--text-soft);line-height:1.75;margin-bottom:8px}
.a2-life .tx a{font-size:.95rem;font-weight:700;color:var(--olive-800)}
.a2-life .tx a:hover{color:var(--charcoal)}
@media(max-width:860px){.a2-life>div{flex-direction:column;gap:8px;margin-left:0!important}.a2-life .who{width:auto}}

/* ============================================================
   GIMPO-AIRPORT — 수평 station line infographic (유일 tinted scene)
   ============================================================ */
.a2-transit-scene{background:var(--cream);padding:72px 0 80px}
.a2-transit{position:relative;max-width:980px;margin-top:52px}
.a2-transit .track{position:relative;display:flex;justify-content:space-between}
.a2-transit .track::before{content:"";position:absolute;left:8px;right:8px;top:8px;height:2px;background:var(--sand)}
.a2-transit .stn{position:relative;padding-top:28px}
.a2-transit .stn::before{content:"";position:absolute;left:0;top:0;width:15px;height:15px;border-radius:50%;background:var(--cream);border:3px solid var(--olive-800)}
.a2-transit .stn.dest::before{background:var(--charcoal);border-color:var(--charcoal)}
.a2-transit .stn b{display:block;font-size:clamp(1.15rem,2vw,1.5rem);font-weight:800;letter-spacing:-.02em;color:var(--charcoal)}
.a2-transit .stn span{display:block;font-size:.86rem;color:var(--text-mute);margin-top:4px}
.a2-transit .lines{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px;max-width:300px}
.a2-transit .lines i{font-style:normal;font-size:.76rem;font-weight:700;color:var(--olive-800);background:var(--white);border:1px solid var(--line);border-radius:4px;padding:3px 8px}
.a2-transit .walk{font-size:.86rem;font-weight:700;color:var(--olive-800);margin-top:10px}
@media(max-width:760px){
  .a2-transit .track{flex-direction:column;gap:30px}
  .a2-transit .track::before{left:7px;right:auto;top:8px;bottom:8px;height:auto;width:2px}
  .a2-transit .stn{padding-top:0;padding-left:32px}
  .a2-transit .stn::before{top:4px}
}

/* ============================================================
   UJANGSAN — 짧은 explainer: 큰 질문 + 산문 (scene 없음)
   ============================================================ */
.a2-question{font-size:clamp(1.6rem,3vw,2.5rem);font-weight:750;letter-spacing:-.03em;line-height:1.45;color:var(--charcoal);max-width:880px}
.a2-question .soft{color:var(--text-mute);font-weight:600}
.a2-inline-links{margin-top:34px;display:flex;flex-direction:column;gap:0;border-top:1px solid var(--line);max-width:720px}
.a2-inline-links a{display:flex;justify-content:space-between;align-items:baseline;padding:18px 4px;border-bottom:1px solid var(--line-soft);font-size:1.12rem;font-weight:700;color:var(--charcoal);transition:.2s}
.a2-inline-links a span{font-size:.9rem;font-weight:500;color:var(--text-mute)}
.a2-inline-links a:hover{color:var(--olive-800)}

/* ============================================================
   GOCHON — 질문/답변 editorial (서울 페이지들과 다른 골격)
   ============================================================ */
.a2-qa{max-width:820px}
.a2-qa .q{border-top:1px solid var(--line);padding:36px 0 0;margin-top:36px}
.a2-qa .q:first-child{margin-top:0}
.a2-qa h3{font-size:clamp(1.35rem,2.2vw,1.75rem);font-weight:750;letter-spacing:-.025em;line-height:1.45;color:var(--charcoal);margin-bottom:16px}
.a2-qa h3 .qm{color:var(--olive-600);margin-right:10px;font-weight:800}
.a2-qa p{font-size:1.06rem;line-height:1.88;color:var(--ink-soft)}
.a2-qa p+p{margin-top:14px}
.a2-qa a{color:var(--olive-800);text-decoration:underline;text-underline-offset:3px}
/* 이동 관계 인라인 라인 */
.a2-route-inline{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin:18px 0 4px;font-weight:750;color:var(--charcoal);font-size:1.08rem}
.a2-route-inline .arr{color:var(--sand);font-weight:400}
.a2-route-inline .leg{font-size:.78rem;font-weight:700;color:var(--text-mute);align-self:center}

/* ============================================================
   AREA P3 — 밀도 · 타이포 · 시각적 무게 (구조 변경 없음, 오버라이드 레이어)
   목표: 더 큰 타이포 / 상하 여백 15~25% 축소 / 1920 중앙 섬 현상 제거
   ============================================================ */

/* ---------- 섹션 리듬: 여백 축소 ---------- */
body.area-p2 .page-hero{padding:102px 0 36px}
body.area-p2 .section-pad{padding:64px 0}
body.area-p2 .section-pad-sm{padding:46px 0}
body.area-p2 .section-pad-sm.pad-tight{padding:38px 0}
body.area-p2 .head-block{margin-bottom:26px}

/* ---------- 기본 타이포 확대 ---------- */
body.area-p2 .page-hero h1{font-size:clamp(2.5rem,4.8vw,3.4rem)}
body.area-p2 .page-hero p{font-size:1.22rem;max-width:760px}
body.area-p2 .head-block h2{font-size:clamp(2.1rem,3.7vw,2.85rem)}
body.area-p2 .eyebrow{font-size:1rem}
body.area-p2 .prose{max-width:780px}
body.area-p2 .prose p{font-size:1.16rem;line-height:1.85}
body.area-p2 .p2-note p{font-size:1.1rem}
body.area-p2 .p2-note .lbl{font-size:.95rem}
body.area-p2 .p2-dash{max-width:1280px}
body.area-p2 .p2-dash li{font-size:1.2rem}
body.area-p2 .a2-others{font-size:1.06rem;padding-top:24px}

/* ---------- FAQ: 내용 유지, 후반 존재감 축소 ---------- */
body.area-p2 .faq-item{max-width:1000px;margin-bottom:8px}
body.area-p2 .faq-q{font-size:1.1rem;padding:18px 22px}
body.area-p2 .faq-a{font-size:1.02rem}
body.area-p2 .faq-item.open .faq-a{padding:0 22px 18px}

/* ---------- HUB: flow scene·directory 확대 ---------- */
.a2-flow-scene{padding:54px 0 62px}
.a2-flowline{max-width:1320px;margin-top:42px}
.a2-flowline .node b{font-size:1.22rem}
.a2-flowline .node.home b{font-size:1.34rem}
.a2-flowline .node span{font-size:.92rem}
.a2-flowline .node .tag{font-size:.8rem;padding:3px 9px}
.a2-flow-branch{font-size:1rem;margin-top:30px}
.a2-dir a.row{padding:26px 4px;gap:clamp(20px,3vw,64px)}
.a2-dir a.row .nm{font-size:clamp(2rem,3vw,2.9rem);width:clamp(200px,24vw,360px)}
.a2-dir a.row.hq .nm{font-size:clamp(2.6rem,4.2vw,3.9rem)}
.a2-dir a.row.sub .nm{font-size:1.42rem}
.a2-dir a.row p{font-size:1.1rem;max-width:760px}
.a2-dir .cat{font-size:.95rem;padding:32px 0 4px}

/* ---------- BANGHWA: 주소 hero·fact band 강화 ---------- */
.a2-loc-hero{padding:116px 0 0}
.a2-loc-hero .kicker{font-size:1.1rem}
.a2-loc-hero h1{font-size:clamp(3.6rem,8vw,6.2rem);margin-bottom:26px}
.a2-loc-hero .addr{font-size:clamp(1.4rem,2.7vw,2.15rem)}
.a2-loc-hero .note{font-size:1.14rem;max-width:740px;margin-top:20px}
.a2-facts{max-width:1320px;gap:clamp(28px,4vw,88px)}
.a2-facts .lab{font-size:.95rem}
.a2-facts .val{font-size:clamp(1.4rem,2.3vw,1.95rem)}
.a2-facts .sub{font-size:1rem}
.a2-case{max-width:1280px}
.a2-case>div{padding:24px 4px}
.a2-case h3{font-size:clamp(1.3rem,2vw,1.65rem);width:clamp(220px,27vw,380px)}
.a2-case p{font-size:1.1rem;max-width:760px}
body.area-p2 .p1-links a{font-size:1.14rem;padding:16px 4px}

/* ---------- SINBANGHWA: statement·route scene 강화 ---------- */
.a2-split-hero{padding-top:18px;gap:clamp(40px,6vw,130px)}
.a2-split-hero .lead-xl{font-size:clamp(1.55rem,2.8vw,2.3rem);max-width:700px;margin:24px 0 18px}
.a2-split-hero .side-note{font-size:1.1rem;max-width:640px}
.a2-route-v{border-left-width:2px;padding-left:34px}
.a2-route-v .stop{padding-bottom:26px}
.a2-route-v .stop::before{width:11px;height:11px;left:-41px}
.a2-route-v .stop.dest::before{width:14px;height:14px;left:-43px}
.a2-route-v .stop b{font-size:1.28rem}
.a2-route-v .stop.dest b{font-size:1.42rem}
.a2-route-v .stop span{font-size:.95rem}
.a2-route-v .leg{font-size:.86rem;margin:-12px 0 14px}
.a2-route-cap{font-size:.96rem}
body.area-p2 .p2-steps{max-width:1020px}
body.area-p2 .p2-steps .st{padding:22px 4px}
body.area-p2 .p2-steps .num{font-size:2.3rem;width:64px}
body.area-p2 .p2-steps h4{font-size:1.38rem}
body.area-p2 .p2-steps p{font-size:1.1rem}
body.area-p2 .p2-scope{max-width:1280px}
body.area-p2 .p2-scope h4{font-size:1.16rem;min-width:150px}
body.area-p2 .p2-scope p{font-size:1.02rem}

/* ---------- MAGOK: statement·time scene 강화 ---------- */
.a2-statement{font-size:clamp(2rem,3.9vw,3.3rem);max-width:1100px}
.a2-day{max-width:1320px}
.a2-day>div{padding:28px 32px 28px 0}
.a2-day .t{font-size:clamp(1.9rem,3vw,2.6rem)}
.a2-day h4{font-size:1.3rem}
.a2-day p{font-size:1.06rem;line-height:1.7}
body.area-p2 .p1-co{max-width:1000px}
body.area-p2 .p1-co h4{font-size:1.22rem;min-width:170px}
body.area-p2 .p1-co p{font-size:1.06rem}

/* ---------- SONGJEONG: facts/prose 대비 강화 ---------- */
.a2-aside-grid{gap:clamp(40px,6vw,130px)}
.a2-aside .big{font-size:clamp(2.4rem,4.2vw,3.7rem)}
.a2-aside .fact{margin-top:22px;padding-top:14px}
.a2-aside .fact b{font-size:1.5rem}
.a2-aside .fact span{font-size:.95rem}
.a2-prose-run h3{font-size:1.48rem;margin:32px 0 10px}
.a2-prose-run p{font-size:1.15rem;max-width:780px}
.a2-biglinks{max-width:1100px}
.a2-biglinks a{padding:21px 4px}
.a2-biglinks a b{font-size:clamp(1.45rem,2.3vw,1.9rem)}
.a2-biglinks a span{font-size:1.02rem}

/* ---------- GONGHANG: 생애주기 위계 강화 ---------- */
.a2-life{max-width:1320px}
.a2-life>div{padding:26px 4px}
.a2-life .who{font-size:clamp(1.7rem,3vw,2.5rem);width:clamp(190px,22vw,320px)}
.a2-life .tx{max-width:640px}
.a2-life .tx p{font-size:1.08rem}
.a2-life .tx a{font-size:1.02rem}

/* ---------- GIMPO-AIRPORT: 노선 scene 강화 ---------- */
.a2-transit-scene{padding:56px 0 64px}
.a2-transit{max-width:1240px;margin-top:44px}
.a2-transit .track::before{height:3px;top:8px}
.a2-transit .stn{padding-top:32px}
.a2-transit .stn::before{width:17px;height:17px}
.a2-transit .stn b{font-size:clamp(1.4rem,2.5vw,2rem)}
.a2-transit .stn span{font-size:.95rem}
.a2-transit .lines i{font-size:.84rem;padding:4px 10px}
.a2-transit .walk{font-size:.98rem}

/* ---------- UJANGSAN: 질문 statement 강화 ---------- */
.a2-question{font-size:clamp(1.9rem,3.6vw,3rem);max-width:1060px}
.a2-inline-links{max-width:820px;margin-top:30px}
.a2-inline-links a{font-size:1.22rem;padding:17px 4px}
.a2-inline-links a span{font-size:.98rem}

/* ---------- GOCHON: editorial 비교 강화 ---------- */
.a2-qa{max-width:980px}
.a2-qa .q{padding-top:30px;margin-top:30px}
.a2-qa h3{font-size:clamp(1.55rem,2.6vw,2.1rem);margin-bottom:14px}
.a2-qa p{font-size:1.14rem}
.a2-route-inline{font-size:1.2rem;gap:16px}
.a2-route-inline .leg{font-size:.85rem}

/* ---------- 진료 링크 그리드 열 수 (인라인 스타일 대신 — 모바일 축소 유지) ---------- */
body.area-p2 .p1-links.cols-3{grid-template-columns:repeat(3,1fr)}
body.area-p2 .p1-links.cols-4{grid-template-columns:repeat(4,1fr)}
@media(max-width:900px){body.area-p2 .p1-links.cols-3,body.area-p2 .p1-links.cols-4{grid-template-columns:1fr 1fr}}
@media(max-width:560px){body.area-p2 .p1-links.cols-3,body.area-p2 .p1-links.cols-4{grid-template-columns:1fr}}

/* ---------- 모바일 보정: 확대 타이포의 390 자연스러움 ---------- */
@media(max-width:640px){
  body.area-p2 .page-hero{padding:92px 0 30px}
  body.area-p2 .section-pad{padding:48px 0}
  body.area-p2 .section-pad-sm{padding:38px 0}
  .a2-loc-hero{padding:100px 0 0}
  .a2-loc-hero h1{font-size:2.9rem}
  .a2-loc-hero .addr{font-size:1.25rem}
  .a2-dir a.row .nm,.a2-dir a.row.hq .nm{font-size:1.8rem}
  .a2-statement{font-size:1.7rem}
  .a2-question{font-size:1.55rem}
  .a2-aside .big{font-size:2.2rem}
  .a2-life .who{font-size:1.5rem}
  body.area-p2 .p2-steps .num{font-size:1.7rem;width:48px}
}
