/* ko-ver3 메인 미리보기 2차(2026-11-04 · index.preview.html 만 읽음) — 병원 피드백 ‘전체 톤은 OK. 대비가 너무 약해 글자 · 이미지 · 카드가 배경에 묻혀 흐릿함’.
   1차 css/p-v3.css 위에 얹는 층. 생성 ~/tmp/renewal-src/build/ver3-1104b/make_v3b.py(이 파일을 css/p-v3b.css 로 복사). 모든 규칙은 body.v3 안.
   1 글자색: 제목 #1d2125 · 본문 #3f464d · 작은 글 #4f565d · 작은 금색 글 #76581f · 큰 제목 금색 #8a6a2c — WCAG AA 이상(점검 build/ver3-1104b/audit.py)
   2 카드 · 단추 · 아이콘: 테두리와 그림자로 바탕과 분리
   3 그림: 흰 막 · 투명도 · 흐림 효과를 걷음
   4 섹션 제목: 후기 제목(병원 캡처 chrome_8vtPb66djW.png)과 같은 크기 · 굵기 · 색 · ‘// 영문’ 소제목 위치 */
body.v3 {
  --v3b-ink: #1d2125; --v3b-text: #3f464d; --v3b-meta: #4f565d; --v3b-gold: #8a6a2c; --v3b-gold-t: #76581f;
  --v3b-line: rgba(29, 33, 37, .16); --v3b-line-d: rgba(29, 33, 37, .34);
  --v3b-sh: 0 1px 2px rgba(29, 33, 37, .07), 0 20px 38px -22px rgba(29, 33, 37, .45);
  --v3-slate: linear-gradient(100deg, #536c80 0%, #455e72 34%, #3a5165 66%, #2f4457 100%);   /* 1차보다 한 단계 진하게 — 흰 글자 4.5 이상 */
  --gold-btn: linear-gradient(100deg, #d8b467 0%, #c49a4c 100%);
}

/* 4 · 섹션 제목 통일 — 기준은 후기 제목(css/p-r23.css 의 .r23-rv__lab · .r23-rv__t).
   ‘// 영문’ 소제목(15px) → 12px 아래 제목(32~56px · 800 · 진한 먹색, 강조 낱말은 금색). 가운데 정렬 섹션은 가운데 그대로. */
body.v3 main .eyebrow, body.v3 #reviews .r23-rv__lab { margin: 0 0 12px; font-size: 15px; line-height: 1.4; font-weight: 500; letter-spacing: .04em; text-transform: none; color: var(--v3b-ink); }
body.v3 main .eyebrow::before { content: "//"; margin-right: 10px; color: var(--v3-sea); }
body.v3 #reviews .r23-rv__t { margin-top: 0; }
body.v3 main :is(.h2, .belief__no, .r21-sig__t, .r5-dr__t, .r23-rv__t) { margin-top: 0; font-size: clamp(32px, 22px + 2vw, 56px); line-height: 1.2; font-weight: 800; letter-spacing: -0.045em; color: var(--v3b-ink); }
body.v3 main :is(.h2 strong, .belief__no em, .r21-sig__t em, .r23-rv__t em) { font-style: normal; font-weight: 800; color: var(--v3b-gold); }
body.v3 .belief__no { margin-top: clamp(12px, .6vw + 8px, 18px); }
body.v3 .belief__lead { color: var(--v3b-text); font-weight: 500; }
body.v3 .belief__lead em { color: var(--v3b-gold); }
body.v3 .r21-sig__t em { font-size: .7em; }
body.v3 main .faq .eyebrow { margin-bottom: 12px; color: #f6eedd; }
body.v3 .faq .eyebrow::before { color: #e6cd96; }
body.v3 .faq .h2 { color: #fbf7ee; }

/* 1 · 머리 배너: 흐린 가장자리를 선명하게(img/v3b-hero*.jpg — hero_v3b.py), 흰 점을 되살려 또렷하게. 간판 · 유리문이 가장 밝다. 금색 단추는 먹색 글자 */
body.v3 .hero--ray .hero__in { text-shadow: 0 1px 3px rgba(20, 16, 12, .35), 0 2px 24px rgba(20, 16, 12, .4); }
body.v3 .hero--ray .hero__tag { color: #fff; }
body.v3 .hero--ray .hero__tag strong { color: #ecd39f; }
body.v3 .btn--gold { color: var(--v3b-ink); --talk-fg: #c49a4c; text-shadow: none; }
body.v3 .btn--gold .i-talk { color: var(--v3b-ink); }
body.v3 .hero--ray .btn--glass { border-color: rgba(255, 255, 255, .8); background: rgba(20, 22, 26, .22); }

/* 2 · Our Belief */
body.v3 .stats--hero .stats__k { color: var(--v3b-text); }
body.v3 .stats__main .stats__k { color: var(--v3b-gold-t); }
body.v3 .stats__main .stats__v { color: var(--v3b-gold); background: linear-gradient(100deg, #9a7632 0%, #84631f 55%, #6f5420 100%); -webkit-background-clip: text; background-clip: text; }
body.v3 .stats--hero > .stats__main { border-color: rgba(138, 106, 44, .5); box-shadow: 0 36px 70px -28px rgba(90, 64, 22, .38), 0 12px 24px -16px rgba(90, 64, 22, .2); }

/* 3 · 미친 치과의사: 병원이 준 사진 11(img/v3b-doc.jpg = ko/이미지/11.png, 픽셀 그대로). 흰 막 · 가장자리 녹임 없이 곧은 경계.
   PC = 왼쪽 밝은 판(글자) | 오른쪽 사진 58%. 모바일 = 글자 아래 사진(원장 쪽으로 자름) */
body.v3 .r5-dr { background: linear-gradient(160deg, #f8fafb 0%, #eef2f5 55%, #e4eaee 100%); }
body.v3 .r5-dr__t { display: grid; gap: 0; max-width: none; }
body.v3 .r5-dr__l1, body.v3 .r5-dr__l2 { font-size: inherit; line-height: inherit; font-weight: 800; letter-spacing: inherit; }
body.v3 .r5-dr__l1 { color: var(--v3b-ink); }
body.v3 .r5-dr__l2 { color: var(--v3b-gold); background: none; -webkit-background-clip: border-box; background-clip: border-box; -webkit-text-fill-color: currentColor; }
body.v3 .r5-dr__name { color: var(--v3b-text); }
body.v3 .r5-dr__name::before { background: var(--v3b-gold); }
body.v3 .r9-dr .r5-dr__ph img { transform: none; -webkit-mask-image: none; mask-image: none; filter: none; object-position: 100% 50%; }
@media (min-width: 1024px) {
  body.v3 .r12-dr { aspect-ratio: 1897 / 829; min-height: 470px; }
  body.v3 .r9-dr .r5-dr__ph { inset: 0 0 0 auto; width: 58%; }
  body.v3 .r5-dr__in > * { max-width: calc(42vw - var(--gut, 40px) - 32px); }
}
@media (max-width: 1023px) {
  body.v3 .r5-dr { background: linear-gradient(180deg, #f8fafb 0%, #eef2f5 100%); }
  body.v3 .r9-dr .r5-dr__ph { margin-top: 40px; aspect-ratio: 5 / 4; }
}

/* 4 · 왜 재식술은: 카드 테두리 · 그림자, 번호 · 설명 글 진하게, 아이콘 바탕 · 선 진하게 */
body.v3 .v3w { border: 1px solid var(--v3b-line); box-shadow: var(--v3b-sh); }
body.v3 .v3w:hover { box-shadow: 0 1px 2px rgba(29, 33, 37, .07), 0 28px 48px -24px rgba(29, 33, 37, .5); }
body.v3 .v3w__no { color: var(--v3b-gold-t); }
body.v3 .v3w__t { color: var(--v3b-ink); }
body.v3 .v3w__d { color: var(--v3b-text); }
body.v3 .v3w__ic { background: linear-gradient(180deg, #eee1cb, #e3d0b2); box-shadow: inset 0 0 0 1px rgba(118, 88, 31, .18); }
body.v3 .v3w:nth-child(even) .v3w__ic { background: linear-gradient(180deg, #d9eaf1, #c8dee8); box-shadow: inset 0 0 0 1px rgba(47, 90, 112, .2); }
body.v3 .v3w__ic svg { stroke: var(--v3b-gold-t); stroke-width: 1.7; }
body.v3 .v3w:nth-child(even) .v3w__ic svg { stroke: #2f5a70; }

/* 5 · 대표진료: 그림 아래 흰 막(::after)을 걷고, 번호 · 이름은 흰 이름표(테두리 · 그림자)에 — 그림은 그대로 선명하게 */
body.v3 .r21-sc a { border: 1px solid rgba(31, 42, 51, .18); }
body.v3 .r21-sc a::after { display: none; }
body.v3 .r21-sc__tx { left: clamp(12px, 1.1vw, 18px); right: auto; bottom: clamp(12px, 1.1vw, 18px); gap: 2px; padding: 11px 18px 12px; border: 1px solid rgba(31, 42, 51, .14); border-radius: 12px; background: #fff;
  box-shadow: 0 12px 26px -14px rgba(20, 32, 44, .55); }
body.v3 .r21-sc__no { font-weight: 600; color: var(--v3b-gold-t); }
body.v3 .r21-sc__t { color: var(--v3b-ink); }
body.v3 .r21-sig__more { border-color: var(--v3b-line-d); color: var(--v3b-ink); }
@media (max-width: 767px) {
  body.v3 .r21-sc__tx { left: 8px; bottom: 8px; gap: 0; padding: 7px 11px 8px; border-radius: 9px; }
  body.v3 .r21-sc__no { font-size: 11px; }
  body.v3 .r21-sc__t { font-size: 16px; }
}

/* 6 · 치료 전후 사진: 작은 사진의 투명도(.6)를 걷고 테두리로 구분 · 탭 테두리 진하게 · 고른 탭 슬레이트 · 금색 글 진하게 */
body.v3 .r4-ba__th { opacity: 1; outline: 2px solid rgba(29, 33, 37, .22); outline-offset: 3px; }
body.v3 .r4-ba__dot[aria-pressed="true"] .r4-ba__th { outline: 3px solid var(--v3b-gold); }
body.v3 .r4-ba__lab { color: var(--v3b-text); }
body.v3 .r4-ba__dot[aria-pressed="true"] .r4-ba__lab { color: var(--v3b-gold-t); }
body.v3 .r4-ba__tab { border-color: var(--v3b-line-d); background: #fff; color: var(--v3b-text); }
body.v3 .r4-ba__tab[aria-selected="true"] { border-color: #34505f; background: linear-gradient(100deg, #46657a, #34505f); color: #fff; }
body.v3 .r4-ba__fr figcaption { background: rgba(20, 22, 26, .82); }
body.v3 .r4-ba__fr + .r4-ba__fr figcaption { background: var(--v3b-gold-t); }
body.v3 .r4-ba__t { color: var(--v3b-ink); }
body.v3 .r4-ba__m { color: var(--v3b-text); }

/* 7 · 후기: 글자 진하게(카드는 1차의 흰 바탕 · 진한 테두리 그대로) */
body.v3 #reviews .r23-rv__sub { color: var(--v3b-text); }
body.v3 #reviews .r23-rc__h { color: var(--v3b-ink); }
body.v3 #reviews .r23-rc__b { color: var(--v3b-text); }
body.v3 #reviews .r23-rc__nm small { color: var(--v3b-meta); }
body.v3 #reviews .r23-rc__badge { border-color: rgba(118, 88, 31, .55); color: var(--v3b-gold-t); }
body.v3 #reviews .r23-rv__note { color: var(--v3b-text); }
body.v3 #reviews .btn--line { background: #fff; }

/* 8 · 유튜브 · 블로그: 작은 글 진하게 · 탭 묶음 테두리 · 아이콘 바탕 진하게 */
body.v3 .r5-mtabs { box-shadow: 0 0 0 1px var(--v3b-line), 0 16px 32px -20px rgba(29, 33, 37, .4); }
body.v3 .r5-mt { color: var(--v3b-text); }
body.v3 .r5-mt[aria-selected="true"] { color: #fff; }
body.v3 .r5-mt__ic { background: #efe5d3; color: var(--v3b-gold-t); }
body.v3 .r5-mt[aria-selected="true"] .r5-mt__ic { background: #8a6a2c; color: #fff; }
body.v3 .r5-yi__m, body.v3 .r5-bl__d, body.v3 .r5-media time { color: var(--v3b-meta); }
body.v3 .r5-bl__sum, body.v3 .r5-bi__s { color: var(--v3b-text); }
body.v3 .r5-yi.is-on, body.v3 .r5-bi.is-on { background: #f3ede3; box-shadow: inset 3px 0 0 var(--v3b-gold), 0 0 0 1px rgba(138, 106, 44, .22); }
body.v3 .r5-yt__player { box-shadow: 0 0 0 1px var(--v3b-line), 0 26px 50px -26px rgba(0, 0, 0, .5); }
body.v3 main .btn--line { border-color: var(--v3b-line-d); }

/* 9 · 자주 묻는 질문: 판을 한 단계 진하게(--v3-slate), 답 글 · 줄 진하게 */
body.v3 .faq .acc { border-top-color: rgba(255, 255, 255, .42); }
body.v3 .faq .acc :is(p, li) { color: rgba(255, 255, 255, .96); }

/* 10 · 오시는 길 · 문의 · 바닥글 */
body.v3 .visit__sub { color: var(--v3b-text); }
body.v3 .visit .btn--line { border-color: var(--v3b-line-d); }
body.v3 .cta__card { border: 1px solid var(--v3b-line); box-shadow: 0 1px 2px rgba(29, 33, 37, .06), 0 30px 64px -22px rgba(29, 33, 37, .38); }
body.v3 .cta__obj--back img { opacity: 1; filter: none; }
body.v3 .ftr--panel, body.v3 .ftr--panel a { color: #eef2f5; }
body.v3 .ftr--panel .ftr__copy { color: #dde4ea; }
@media (max-width: 1023px) {
  body.v3 .r4-bar__a--talk { color: var(--v3b-ink); --talk-fg: #c49a4c; }
  body.v3 .r4-bar__a--talk .i-talk { color: var(--v3b-ink); }
}
