/* intro_doctor.css → th (sys.php 변환본) */
/* ============================================================================
   intro_doctor — 영문판 전용 조판 보정 (2026-09-22)  · 생성: gen.py

   render.php 가 이 파일을 맨 마지막에 싣는다(공통 → fontfix → 쪽 인라인 → intl → img → 여기).
   선택자는 전부 html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] 아래라, 같은 조각(data-tc)을 쓰는 다른 영문 쪽에는 영향이 없다.

   왜 필요한가 — 한국어/영문 1920px 실측 대조
     · 한국어는 js/site.js 가 글꼴을 갈아 끼우지만 번역 페이지에서는 돌지 않고,
       css/fontfix/intro_doctor.css 가 !important 로 박아 둔 한글 글꼴(NanumBG·scd1·gmsb)만 남는다.
     · 크기도 조각별 실측이라 같은 등급 제목이 조각마다 다르고,
       거기에 fit.js 가 넘치는 것만 골라 줄여 한 쪽 안에서 12px~24px 로 갈렸다.
   고치는 법 — 등급별 공통 변수로 크기를 한 벌로 정하고, fit.js 의 크기 조정은 `--tgi-fs:on` 로 잠근다
   (넓히기·자리 옮기기·줄바꿈은 그대로 돈다).
   ========================================================================== */

/* ── 0. 이 파일이 하는 일 ─────────────────────────────────────────────
   "어느 요소가 어느 등급인가" 만 잇는다. 크기·굵기·행간·자간은 한 줄도 여기서 정하지 않고
   전부 _i18n/en-system.css 의 공통 변수를 가리킨다 → 같은 등급이면 어느 쪽·어느 구역이든
   computed style 이 완전히 같다. 쪽별 px·소수점 크기는 이 파일에 쓰지 않는다.

   예외는 '장식'뿐이다(아래 1절). 장식 영문·숫자·로고형 문구는 한국어 원본 디자인의
   일부라 일반 제목 등급으로 통일하면 디자인이 바뀐다 — 원본 크기를 정수 px 로 지킨다. */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"]{--tgi-fs:on}   /* 글자 크기·자간·행간은 CSS 가 정한다 — fit.js 의 JS 강제 변경을 이 쪽에서 끈다 */

/* ── 1. 글꼴 ─────────────────────────────────────────────────────────
   제목·본문은 --en-sans 한 벌. 장식·브랜드 글꼴만 원래 글꼴을 지킨다. */
/* SVG `<text>` 는 뺀다 — `<text>` 로 그린 로고(FDA 워드마크 등)를 갈아엎는다 */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] .tg-fr *:not(text){font-family:var(--en-sans)!important;-webkit-text-stroke:0!important}
/* 장식 글꼴은 폭과 무관하게, **크기는 PC 에서만** 고정한다 —
   폰에서는 조각 자체의 clamp() 가 정본이라 PC 크기를 그대로 두면 장식이 화면을 덮는다
   (한국어 css/fontfix/*.css 도 같은 이유로 @media (min-width:1025px) 안에만 둔다). */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s1-ghost{font-family:var(--en-oswald-regular)!important;font-weight:400!important;--tgi-fit:on}
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s1-brand{font-family:var(--en-oswald-light)!important;font-weight:400!important;--tgi-fit:on}
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s3-tang{font-family:var(--en-oswald-light)!important;font-weight:400!important;--tgi-fit:on}
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s3-symp{font-family:var(--en-oswald-light)!important;font-weight:400!important;--tgi-fit:on}
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s3-go{font-family:var(--en-oswald-regular)!important;font-weight:400!important;--tgi-fit:on}
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s2-rome{font-family:var(--en-oswald-light)!important;font-weight:400!important;--tgi-fit:on}
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829rkrx0"],.tg-fr [data-tc="260829rkrx0"]) .s00__latin.reveal{font-family:var(--en-oswald-light)!important;font-weight:400!important;--tgi-fit:on}
@media (min-width:1025px){
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s1-ghost{font-size:calc(101 * var(--k,1px))!important;line-height:calc(101 * var(--k,1px))!important;letter-spacing:calc(0 * var(--k,1px))!important}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s1-brand{font-size:calc(63 * var(--k,1px))!important;line-height:calc(63 * var(--k,1px))!important;letter-spacing:calc(6.07 * var(--k,1px))!important}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s3-tang{font-size:calc(57 * var(--k,1px))!important;line-height:calc(57 * var(--k,1px))!important;letter-spacing:calc(0 * var(--k,1px))!important}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s3-symp{font-size:calc(46 * var(--k,1px))!important;line-height:calc(46 * var(--k,1px))!important;letter-spacing:calc(0 * var(--k,1px))!important}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s3-go{font-size:calc(43 * var(--k,1px))!important;line-height:calc(43 * var(--k,1px))!important;letter-spacing:calc(2.75 * var(--k,1px))!important}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s2-rome{font-size:calc(27 * var(--k,1px))!important;line-height:calc(27 * var(--k,1px))!important;letter-spacing:calc(0 * var(--k,1px))!important}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829rkrx0"],.tg-fr [data-tc="260829rkrx0"]) .s00__latin.reveal{font-size:calc(26 * var(--k,1px))!important;line-height:calc(26 * var(--k,1px))!important;letter-spacing:calc(0 * var(--k,1px))!important}
}

/* ── 2. 줄바꿈 ───────────────────────────────────────────────────────
   한국어 길이에 맞춘 nowrap/pre 를 풀되, 설계된 줄바꿈(한국어가 pre 인 곳)은 지킨다.
   낱말 중간을 자르지 않고, 글자를 줄여 한 줄에 우겨넣지 않는다. */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s0-title,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s0-sub,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s2-label,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s2-career > li,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s2-ovlabel,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s3-cta1,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829rkrx0"],.tg-fr [data-tc="260829rkrx0"]) .s00__cv > li,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s2-name,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829rkrx0"],.tg-fr [data-tc="260829rkrx0"]) .s00__given,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s2-role,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s3-title,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s2-ovlist > p,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829rkrx0"],.tg-fr [data-tc="260829rkrx0"]) .s00__eyebrow.reveal,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s3-lead,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s3-cta2,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829rkrx0"],.tg-fr [data-tc="260829rkrx0"]) .s00__title,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829rkrx0"],.tg-fr [data-tc="260829rkrx0"]) .s00__badge.reveal{white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;hyphens:none!important;text-wrap:pretty}
/* 장식 영문·숫자는 짧다 — 원본처럼 한 줄로 둔다 */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s1-brand,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s1-ghost,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s2-rome,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s3-tang,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s3-symp,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s3-go,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829rkrx0"],.tg-fr [data-tc="260829rkrx0"]) .s00__latin.reveal{white-space:nowrap!important}

/* ── 3. 등급 연결 ─────────────────────────────────────────────────────
   여기서 값을 정하지 않는다. en-system.css 의 등급 변수를 가리키기만 한다.
   (변수는 ≤1024 에서 스스로 바뀌므로 화면 크기별 규칙을 따로 두지 않는다) */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] .tg-fr *:where(:not(text):not(.reveal):not(.s00__latin):not(.s1-brand):not(.s1-ghost):not(.s2-rome):not(.s3-go):not(.s3-symp):not(.s3-tang)){letter-spacing:normal!important}   /* 한국어 낱말 길이에 맞춘 자간(509곳 !important) 초기화 */
/* display: s0-title */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s0-title{font-size:var(--en-display-size)!important;line-height:var(--en-display-lh)!important;letter-spacing:var(--en-display-ls)!important;font-weight:var(--en-w-display)!important}
/* h1: s00__title, s3-cta2 */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829rkrx0"],.tg-fr [data-tc="260829rkrx0"]) .s00__title{font-size:var(--en-h1-size)!important;line-height:calc(44 * var(--k,1px))!important;letter-spacing:var(--en-h1-ls)!important;font-weight:400!important}
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s3-cta2{font-size:var(--en-h1-size)!important;line-height:calc(47 * var(--k,1px))!important;letter-spacing:var(--en-h1-ls)!important;font-weight:var(--en-w-h1)!important}
/* h2: s00__given, s2-name */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s2-name{font-size:var(--en-h2-size)!important;line-height:calc(38 * var(--k,1px))!important;letter-spacing:var(--en-h2-ls)!important;font-weight:var(--en-w-h2)!important}
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829rkrx0"],.tg-fr [data-tc="260829rkrx0"]) .s00__given{font-size:var(--en-h2-size)!important;line-height:calc(42 * var(--k,1px))!important;letter-spacing:var(--en-h2-ls)!important;font-weight:var(--en-w-h2)!important}
/* kicker: s2-role, s3-title */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s3-title{font-size:var(--en-kicker-size)!important;line-height:calc(29 * var(--k,1px))!important;letter-spacing:var(--en-kicker-ls)!important;font-weight:var(--en-w-kicker)!important}
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s2-role{font-size:var(--en-kicker-size)!important;line-height:var(--en-kicker-lh)!important;letter-spacing:var(--en-kicker-ls)!important;font-weight:var(--en-w-kicker)!important}
/* h4: p, s00__eyebrow.reveal */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829rkrx0"],.tg-fr [data-tc="260829rkrx0"]) .s00__eyebrow.reveal{font-size:var(--en-h4-size)!important;line-height:calc(19 * var(--k,1px))!important;letter-spacing:var(--en-h4-ls)!important;font-weight:400!important}
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s2-ovlist > p:where(:not(.reveal):not(.s00__latin):not(.s1-brand):not(.s1-ghost):not(.s2-rome):not(.s3-go):not(.s3-symp):not(.s3-tang)){font-size:var(--en-h4-size)!important;line-height:var(--en-h4-lh)!important;letter-spacing:var(--en-h4-ls)!important;font-weight:400!important}
/* lead: li, s0-sub, s2-label, s2-ovlabel, s3-cta1 */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s2-label,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s3-cta1{font-size:var(--en-lead-size)!important;line-height:calc(17 * var(--k,1px))!important;letter-spacing:var(--en-lead-ls)!important;font-weight:var(--en-w-lead)!important}
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s2-ovlabel{font-size:var(--en-lead-size)!important;line-height:calc(19 * var(--k,1px))!important;letter-spacing:var(--en-lead-ls)!important;font-weight:var(--en-w-lead)!important}
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s2-career > li:where(:not(.reveal):not(.s00__latin):not(.s1-brand):not(.s1-ghost):not(.s2-rome):not(.s3-go):not(.s3-symp):not(.s3-tang)),
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829rkrx0"],.tg-fr [data-tc="260829rkrx0"]) .s00__cv > li:where(:not(.reveal):not(.s00__latin):not(.s1-brand):not(.s1-ghost):not(.s2-rome):not(.s3-go):not(.s3-symp):not(.s3-tang)),
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s0-sub{font-size:var(--en-lead-size)!important;line-height:var(--en-lead-lh)!important;letter-spacing:var(--en-lead-ls)!important;font-weight:var(--en-w-lead)!important}
/* body: s3-lead */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s3-lead{font-size:var(--en-body-size)!important;line-height:calc(16 * var(--k,1px))!important;letter-spacing:var(--en-body-ls)!important;font-weight:var(--en-w-body)!important}
/* circ: s00__badge.reveal */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829rkrx0"],.tg-fr [data-tc="260829rkrx0"]) .s00__badge.reveal{font-size:var(--en-circ-size)!important;line-height:var(--en-circ-lh)!important;letter-spacing:var(--en-circ-ls)!important;font-weight:var(--en-w-circ)!important}

/* 한국어가 **고정 높이 칸을 행간으로 세로 가운데 맞춘** 자리.
   등급 행간(배수)을 그대로 쓰면 글이 칸 위쪽에 붙는다 → PC 에서만 원본 행간(px)을 지킨다.
   (폰에서는 칸이 흐름 배치로 풀리므로 등급 행간을 쓴다) */
@media (min-width:1025px){
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s2-career > li{line-height:calc(34 * var(--k,1px))!important}
}

/* ── 4. 고정 높이 풀기 ───────────────────────────────────────────────
   영문은 길어 줄이 늘어난다. 한국어 길이에 맞춘 고정 height 를 min-height 로 바꿔
   글을 줄이거나 잘라내지 않고 **칸이 자연스럽게 늘어나게** 한다. */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] .tg-fr :is(h1,h2,h3,h4,h5,h6,p,li,dt,dd,figcaption):where(:not(.ab):not(.tag):not([class*="circ"]):not([class*="circle"]):not([class*="badge"]):not([class*="disc"]):not([class*="ring"]):not([class*="round"]):not([class*="dot"]):not([class*="circ"] *):not([class*="circle"] *):not(.e-circ *):not([class*="ring"] *):not([class*="disc"] *):not(.mod-album *):not(.mod-tv *):not(.mod-bna *):not(.mod-selfie *):not(.s00__badge)){height:auto!important}

/* ── 5. 공통 잔손질 ── */
@media (min-width:1025px){
  /* 수술정보표: 글 칸이 '이름' 길이로만 줄어들어 그보다 긴 값이 칸 안에서 접히거나 넘쳤다.
     (한국어는 값이 짧아 드러나지 않는다) 칸에 남은 자리를 다 쓰게 한다. */
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] .tg-fr :is(.spec,.s00-spec,[class*="spec"]) :is([class*="__txt"],[class*="__def"],[class*="-txt"],[class*="-def"],[class*="__body"]){flex:1 1 auto!important;width:auto!important;min-width:0!important;margin-left:0!important;padding-left:0!important}
  /* 아이콘↔글 간격은 한국어 낱말 길이에 맞춘 값(59px 등)이라 영문에서는 글 칸을 먹는다 → 8px 로 */
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] .tg-fr :is(.spec,.s00-spec,[class*="spec"]) :is([class*="__cell"],[class*="-cell"],[class*="__item"],[class*="-item"]){column-gap:calc(4 * var(--k,1px))!important}
  /* 값이 칸보다 1~3px 길어 두 줄이 되는 자리가 많다 — 자간을 아주 조금만 좁혀 한 줄에 넣는다 */
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] .tg-fr :is(.spec,.s00-spec,[class*="spec"]) :is(dt,dd,[class*="lbl"],[class*="val"],[class*="key"],[class*="term"]){letter-spacing:-.012em!important}
  /* 한국어 낱말 길이에 맞춘 둘째 칸 앞 여백은 영문에서 글 칸을 더 좁힌다 → 이 표에서만 0 으로 */
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] .tg-fr :is(.spec,.s00-spec,[class*="spec"]) > * > * + *,
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] .tg-fr :is(.spec,.s00-spec,[class*="spec"]) > * + *{padding-left:0!important}
  /* 정보표 이름·값: 번역팩에 들어 있는 줄바꿈이 pre-line 으로 살아나
     "Not required" 같은 짧은 값까지 두 줄이 되어 행 안의 좌우 칸 높이가 어긋났다 → 자연 줄바꿈으로. */
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] .tg-fr :is(.spec,.s00-spec,[class*="spec"]) :is(dt,dd,[class*="lbl"],[class*="val"],[class*="key"],[class*="term"]){white-space:normal!important}
}

/* ── 도형(동그라미·색 배지) 안 글자: fit.js 의 크기 맞춤을 다시 켠다 ──
   한국어는 글이 짧아 도형 안에 들어가지만 영문은 길다. 등급 크기를 못박은 채로 두면
   aspect-ratio 가 걸린 동그라미는 글을 담으려고 **지름이 커져** 5개가 제각각이 되고(사용자 지적),
   배지는 글이 칸을 뚫는다. 도형 안에서는 fit.js 가 글자를 칸에 맞춰 줄이도록 --tgi-fs 를 되돌린다.
   (도형 자체의 크기·간격은 한국어 그대로 유지된다 — 이게 목적이다) */

/* 도형(원·배지·정사각 칸)은 fit.js 를 되살린다 — 타원이 되는 것을 CSS 로는 못 막는다 */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] .tg-fr :is(.s00__badge),
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] .tg-fr :is(.s00__badge) *{--tgi-fit:on}

/* ── 6. 영문 길이에 맞춘 자리 잡기 ────────────────────────────────
   이 쪽의 두 조각은 1920 캔버스 좌표로 못박힌 절대배치다(서로 흐름으로 밀어내지 못한다).
   그래서 영문에서 줄 수가 늘면 아랫 블록을 그대로 덮는다 — 1920px 에서 겹침 6쌍.
   푸는 순서는 지시서 그대로 ① 글 칸 너비 ② 자연 줄바꿈 ③ 뒤 블록을 그만큼 내림
   ④ 구역 높이 확장. 글자 크기는 한 곳도 건드리지 않는다.
   좌표 단위는 조각이 쓰는 단위 그대로 쓴다 — s2 는 var(--u), s00 은 var(--px).
   (둘 다 PC 에서 1px 로 굳어 있어 1920·1440·1366 에서 같은 값이 나온다. 실측으로 확인.) */

/* s2 (260829n8ogf) — 조각이 1200px 이하에서 흐름 배치로 풀리므로 그 위에서만 손댄다 */
@media (min-width:1201px){
  /* 경력 목록·해외연수 목록의 글 칸: 사진(left:544u) 앞까지가 글 자리다.
     지금까지는 fit.js 가 그때그때 재서 524px 를 넣어 줬다 — 값을 CSS 로 못박아
     화면 폭이 달라져도 줄 수가 변하지 않게 한다(아래 좌표 계산의 전제). */
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s2-career{width:calc(524 * var(--u,1px))}
  /* 이름줄: 한국어 '오창현'(131u) 자리에 영문 'Chang-hyun Oh'(307u)가 들어가
     한국어 좌표(left:160u)에 그대로 있는 직함 'Head Director' 위를 150u 덮었다
     (1920·1440·1366 모두 같은 값 — 조각이 1920 고정 캔버스라 폭과 무관하다).
     글자 크기는 그대로 두고 직함만 이름 오른쪽으로 옮긴다.
     이름 오른끝 310.4u + 한국어의 이름끝→직함 사이 간격 25.6u = 336u.
     직함 오른끝은 336+213=549u 로, 한국어 직함(끝 320u)과 마찬가지로
     사진칸(left:544u) 왼쪽 빈 배경 위다 — 사진은 z-index:0, 글은 .wrap z-index:1 이라
     인물 위에 얹히지 않는다. 사진의 자리·크기·크롭은 손대지 않는다.
     **left 가 아니라 margin-left 로 민다**: 쪽 안에 인라인으로 박힌 보정 규칙
     @media(min-width:1101px) 의 .tcf_intro_doctor_0 .s2-role 이 left 를 '중요' 표시로 잡고 있어
     left 로는 그 표시를 새로 달지 않고는 못 이긴다. margin-left 는 그 규칙이 건드리지 않으므로
     아무 표시 없이 그대로 먹는다(절대배치에서 left 에 더해지는 값이다). 160u+176u=336u. */
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s2-role{margin-left:calc(176 * var(--u,1px))}
  /* 한국어 12줄(380u) → 영문 19줄(646u). 한국어 좌표(825u/853u)에 그대로 두면
     경력 목록이 <Overseas Training> 블록 위에 그대로 겹친다.
     한국어의 사이 간격(경력끝→라벨 35u, 라벨끝→목록 9u)을 지킨 채 아래로 내린다. */
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s2-ovlabel{top:calc(1085 * var(--u,1px))}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s2-ovlist{top:calc(1122 * var(--u,1px));width:calc(524 * var(--u,1px))}
  /* 구역 높이 확장: 해외연수 끝(1234u) + 아래 여백 76u.
     사진(.s2-photo)의 자리·크기·크롭은 한 줄도 건드리지 않는다. */
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829n8ogf"],.tg-fr [data-tc="260829n8ogf"]) .s2{height:calc(1310 * var(--u,1px))}
}

/* s00 (260829rkrx0) — 조각이 1024px 이하에서 흐름 배치로 풀리므로 그 위에서만 손댄다.
   이 조각의 .s00__stage 는 폭이 1px 로 무너져 있다(원인은 공통 css/sub.css — 보고서 '총괄 요청' 참고).
   그 안의 절대배치 글상자는 담을 칸이 없어 **낱말 폭(min-content)** 까지 쭈그러든다:
   영문 약력이 153px 폭 × 837px 높이가 되어 이름·직함을 덮고 구역 밖으로 흘러나갔다.
   한국어와 같은 자리에 두되 글 칸 너비를 정해 자연스럽게 줄바꿈시킨다.
   폭 값은 1366px 에서도 화면 안에 들어오도록 잡았다(좌표가 PC 에서 폭과 무관하게 고정이라 한 벌이면 된다). */
@media (min-width:1025px){
  /* 글 칸 너비의 둘째 항(50vw - 337px)은 '화면 오른쪽 끝까지 남은 자리'다.
     조각은 1025px↑ 에서 1920 고정폭으로 가운데 놓이므로(css/sub.css) 글 왼쪽 끝은 항상 50vw+317px,
     1366px 이상에서는 340px 쪽이 작아 아무 영향이 없고, 1025~1200px 구간에서만
     글이 화면 밖으로 나가지 않게 막아 준다. */
  /* 직함 줄: 오른쪽 원형 배지(left:562px) 앞까지만 쓴다 — 배지를 덮지 않게 */
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829rkrx0"],.tg-fr [data-tc="260829rkrx0"]) .s00__eyebrow{width:min(calc(240 * var(--px,1px)),calc(50vw - 337px))}
  /* 이름줄은 배지 아래(top 317px)로 내려야 배지를 덮지 않는다 */
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829rkrx0"],.tg-fr [data-tc="260829rkrx0"]) .s00__name{top:calc(360 * var(--px,1px));width:min(calc(340 * var(--px,1px)),calc(50vw - 337px))}
  /* 직함(Director)은 한국어에서 이름 옆 절대배치(left:161px)다. 영문 이름이 길어 그 자리는
     이름 글자 위가 된다 → 흐름으로 되돌려 이름 아래 줄에 놓는다.
     (한 줄에 이어 붙이면 "Byung-ee Yang Director" 가 484px 라 1366px 화면을 넘는다.
      inline 으로 두면 줄바꿈이 "Byung-ee / Yang Director" 로 갈려 이름이 끊긴다.) */
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829rkrx0"],.tg-fr [data-tc="260829rkrx0"]) .s00__title{position:static;display:block;margin-left:0}
  /* 아래 두 블록은 이름줄이 두 줄이 된 만큼만 내린다(한국어 사이 간격 유지) */
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829rkrx0"],.tg-fr [data-tc="260829rkrx0"]) .s00__latin{top:calc(478 * var(--px,1px))}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] :is(.tg-fr[data-tc="260829rkrx0"],.tg-fr [data-tc="260829rkrx0"]) .s00__cv{top:calc(540 * var(--px,1px));width:min(calc(340 * var(--px,1px)),calc(50vw - 337px))}
}

/* ===== 2026-09-24 — 무대 1px 원인 수정 후 다시 맞춤 ================================================
   위 s00(260829rkrx0) 블록이 말한 '폭 1px 로 무너진 .s00__stage' 는 css/sub.css 의 `.tg-fr>*{--u:1px}` 가
   이 조각의 --u(캔버스 폭)를 덮은 탓이었다 → sub.css 에 이 조각 예외를 넣어 무대가 1920 으로 돌아왔다(ko·en 모두 사진이 제자리 x1026).
   그래서 '화면 오른쪽 끝까지 남은 자리(50vw-337px)'·340px 폭·아래로 내린 top 은 더 필요 없다 → 사진 앞(1026)까지 640px 칸에 한 줄씩,
   세로는 한국어 자리(이름 297)로 되돌리고 로마자·약력만 10px 내린다(영문 이름줄이 조금 높다).
   · 배지(Resident): 한국어는 이름 끝(562)에 붙는데 영문 이름·직함줄은 799 까지라 → 820 으로. 배지 칸맞춤이 12px 로 줄이던 것은 끄고 16px.
   · 260829n8ogf .s2-role(Head Director): 끝이 866 이라 사진(860~)에 가려 잘려 보였다 → h3(26px), 이름과 기준선 맞춤(행간 48).
   · .s3-title: 32px 로 끝이 1183 이라 오른쪽 '학술활동 바로가기' 상자(1167~)를 침범 → h3(26px), 끝 1028.
   · .s3-cta 상자: 둘째 줄이 h1(46px) 네 줄이 되어 상자가 233px 로 커지고 구역(262) 밖이 잘렸다
     → 첫 줄 body(16px)·둘째 줄 h4(20px) 두 줄로, 상자는 한국어와 같은 435×108. */
@media (min-width:1025px){
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] .tg-fr.tcf_intro_doctor_2[data-tc="260829rkrx0"] .s00__eyebrow{width:calc(640 * var(--px,1px))!important}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] .tg-fr.tcf_intro_doctor_2[data-tc="260829rkrx0"] .s00__name{top:calc(297 * var(--px,1px))!important;width:calc(640 * var(--px,1px))!important}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] .tg-fr.tcf_intro_doctor_2[data-tc="260829rkrx0"] .s00__name .s00__title{display:inline!important;margin-left:.35em!important}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] .tg-fr.tcf_intro_doctor_2[data-tc="260829rkrx0"] .s00__latin{top:calc(360 * var(--px,1px))!important}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] .tg-fr.tcf_intro_doctor_2[data-tc="260829rkrx0"] .s00__cv{top:calc(448 * var(--px,1px))!important;width:calc(640 * var(--px,1px))!important}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] .tg-fr.tcf_intro_doctor_2[data-tc="260829rkrx0"] .s00__badge,html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] .tg-fr.tcf_intro_doctor_2[data-tc="260829rkrx0"] .s00__badge *{--tgi-fit:on}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] .tg-fr.tcf_intro_doctor_2[data-tc="260829rkrx0"] .s00__badge{left:calc(820 * var(--px,1px))!important;font-size:var(--en-body-size)!important;line-height:1.2!important}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] .tg-fr.tcf_intro_doctor_0[data-tc="260829n8ogf"] .s2-role{font-size:var(--en-h3-size)!important;line-height:calc(48 * var(--k,1px))!important}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] .tg-fr.tcf_intro_doctor_0[data-tc="260829n8ogf"] .s3-title{font-size:var(--en-h3-size)!important}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] .tg-fr.tcf_intro_doctor_0[data-tc="260829n8ogf"] .s3-cta>.s3-cta1{font-size:var(--en-body-size)!important;line-height:1.3!important;white-space:normal!important}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="th"][data-tgi-page="intro_doctor"] .tg-fr.tcf_intro_doctor_0[data-tc="260829n8ogf"] .s3-cta>.s3-cta2{font-size:var(--en-h4-size)!important;line-height:1.3!important;white-space:normal!important;text-wrap:balance}
}
