/* Sub-page typography and color tokens derived from the home page.
   Values below were measured on the live home page at 375px and 1440px.
   Loaded before ce-section-header.css so that file keeps ownership of
   the section-header roles it already declares. */
:root {
  --ce2-typ-body-size: 18px;
  --ce2-typ-body-lh: 1.7;
  --ce2-typ-body-color: #333333;

  --ce2-typ-h2-size: 30px;
  --ce2-typ-h2-weight: 700;
  --ce2-typ-h2-lh: 1.4;

  --ce2-typ-h3-size: 19px;
  --ce2-typ-h3-weight: 700;
  --ce2-typ-h3-lh: 1.45;

  --ce2-typ-head-color: #0a1e30;
  --ce2-typ-link-color: #2f6496;
}

@media (max-width: 768px) {
  :root {
    --ce2-typ-body-size: 16px;
    --ce2-typ-h2-size: 28px;
    --ce2-typ-h2-lh: 1.38;
    --ce2-typ-h3-size: 18px;
    --ce2-typ-h3-lh: 1.5;
  }
}

/* 히어로 라벨이 본문 하한(12px) 밑으로 내려가던 것을 올린다. */
.dn-sub-hero .dn-sub-hero__eyebrow {
  font-size: 12.5px !important;
}

main h2:not(.ce2-typ-skip) {
  font-size: var(--ce2-typ-h2-size) !important;
  font-weight: var(--ce2-typ-h2-weight) !important;
  line-height: var(--ce2-typ-h2-lh) !important;
  color: var(--ce2-typ-head-color) !important;
}

/* 어두운 배경 섹션의 제목은 흰색을 유지한다 — 위 h2 규칙이 덮지 않게 한다 */
main .ce-cta .ce-cta__h {
  color: #fff !important;
}

main h3:not(.ce2-typ-skip) {
  font-size: var(--ce2-typ-h3-size) !important;
  font-weight: var(--ce2-typ-h3-weight) !important;
  line-height: var(--ce2-typ-h3-lh) !important;
  color: var(--ce2-typ-head-color) !important;
}

main p:not([class]),
main li:not([class]),
main .cont_wrap p:not([class]),
main .cont_wrap li:not([class]),
main p[class="mo-in"],
main p[class="mo-in mo-done"],
main li[class="mo-in"],
main li[class="mo-in mo-done"] {
  font-size: var(--ce2-typ-body-size) !important;
  line-height: var(--ce2-typ-body-lh) !important;
  color: var(--ce2-typ-body-color) !important;
}

main p:not([class]) a,
main li:not([class]) a,
main p[class="mo-in"] a,
main p[class="mo-in mo-done"] a,
main li[class="mo-in"] a,
main li[class="mo-in mo-done"] a {
  color: var(--ce2-typ-link-color) !important;
}

/* 어두운 상담 안내 섹션의 저자 표기 — 색 지정이 없으면 배경과 같은 색으로 상속돼
   화면에서 사라진다. 지면별 규칙이 있으면 그쪽이 이긴다. */
.ce-close .ce-close__by {
  color: rgba(255, 255, 255, 0.55);
}

/* ─────────────────────────────────────────────────────────────
   아래 블록 — 하위 지면의 FAQ 색과 하단 상담바 바탕을 홈과 같게 맞춘다.
   값은 홈 화면에서 그대로 가져왔고, 홈은 이 파일을 읽지 않는다.
   글자 크기는 손대지 않는다 — 지면별 시안 값이 살아 있는 자리다.
   ───────────────────────────────────────────────────────────── */
:root {
  --ce2-faq-q-color: #12243a;
  --ce2-faq-a-color: #5d6875;
  --ce2-faq-item-bg: #ffffff;
}

/* 문항 배경 — 회색 카드가 아니라 흰 바탕 위의 목록이다 */
html body details.dn-faq__item.dn-faq__item,
html body .dn-faq__list.dn-faq__list,
html body section.dn-geo-block.dn-faq,
html body section.dn-geo-block .dn-geo-card.dn-faq__list {
  background: var(--ce2-faq-item-bg) !important;
}

/* 질문 색 */
html body details.dn-faq__item.dn-faq__item summary.dn-faq__q,
html body details.dn-faq__item.dn-faq__item > .dn-faq__q {
  color: var(--ce2-faq-q-color) !important;
}

/* 답변 색 — 본문 기본색이 아니라 FAQ 전용 회색이다 */
html body details.dn-faq__item.dn-faq__item div.dn-faq__a,
html body details.dn-faq__item.dn-faq__item div.dn-faq__a p,
html body details.dn-faq__item.dn-faq__item div.dn-faq__a li,
html body details.dn-faq__item.dn-faq__item .dn-faq__inner,
html body details.dn-faq__item.dn-faq__item .dn-faq__inner p,
html body details.dn-faq__item.dn-faq__item .dn-faq__inner li {
  color: var(--ce2-faq-a-color) !important;
}

/* 하단 상담바 — 홈과 같은 바탕색. 칸 구성과 강조 칸은 그대로 둔다 */
body .quick_menu_wrap.ce-bottombar-m,
body .quick_menu_wrap.ce-bottombar-m.ce-cbar-host {
  background: rgba(26, 26, 26, 0.96) !important;
}

/* 본문 문단 안의 클래스 없는 내부링크(오시는 길·전화 문의·진료 안내 등) —
   문장·문구는 그대로, 터치 영역만 44px 로 넓힌다(WCAG 2.5.8).
   padding 을 음수 margin 으로 상쇄해 줄바꿈·문서 흐름은 손대지 않는다. */
main p a[href]:not([class]),
main li a[href]:not([class]),
main .dn-faq__a a[href]:not([class]),
main .ce-page-note__inner a[href]:not([class]) {
  display: inline-block !important;
  padding: 12.5px 3px !important;
  margin: -12.5px -3px !important;
}
