/* 언어 선택 (2026-10-19) — _route.php 가 모든 페이지에 주입한다. 원본 HTML·fs.css 에는 없다.
   헤더 버튼(.fs-lang, popovertarget)이 여는 popover 메뉴 + 모바일 드로어의 언어 목록. 위치는 i18n.js 가 버튼 밑에 맞춘다. */
.fs-langmenu {
  position: fixed;
  inset: auto;
  margin: 0;
  min-width: 13.5rem;
  padding: 0.375rem;
  border: 1px solid var(--fs-line);
  border-radius: 0.75rem;
  background: var(--fs-white);
  color: var(--fs-ink);
  box-shadow: var(--fs-shadow-lift);
}
.fs-langmenu__list,
.fs-drawer__langs { list-style: none; margin: 0; padding: 0; }
.fs-langmenu a,
.fs-drawer__langs a {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.5rem 0.75rem;
  border-radius: 0.5rem;
  color: inherit;
  font-size: 0.875rem;
  line-height: 1.3;
  text-decoration: none;
  white-space: nowrap;
}
.fs-langmenu a:hover,
.fs-langmenu a:focus-visible,
.fs-drawer__langs a:hover { background: var(--fs-step-bg); }
.fs-langmenu a[aria-current],
.fs-drawer__langs a[aria-current] { color: var(--fs-teal-text); font-weight: 700; }
.fs-langmenu img,
.fs-drawer__langs img { flex: 0 0 auto; width: 1.25rem; height: 1.25rem; border-radius: 50%; }

/* 드로어: 메뉴 목록과 로그인 줄 사이, 2열 */
.fs-drawer__langs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.125rem;
  padding: 0.75rem 0.75rem 0;
  border-top: 1px solid var(--fs-line);
}
.fs-drawer__langs a { padding: 0.4375rem 0.5rem; font-size: 0.8125rem; color: var(--fs-muted-2); white-space: normal; }

/* ── 한국어보다 긴 번역문 보정 (2026-10-19 en 1440 실측). :lang(ko) 페이지는 건드리지 않는다 ── */
/* 상단 GNB — 한국어 헤더는 GNB 를 페이지 정중앙에 두는 1fr auto 1fr 이라 유틸 칸이 반쪽 폭뿐이다. 번역문은 로고와 유틸
   사이를 다 쓰게 auto 1fr auto 로 풀고, i18n.js 가 그래도 겹치면 글자·간격을 줄이고(compact), 또 겹치면 숨긴다(View All 이 남는다) */
@media (min-width: 1200px) {
  :root:not(:lang(ko)) .fs-header__inner { grid-template-columns: auto minmax(0, 1fr) auto; }
  :root:not(:lang(ko)) .fs-util { grid-column: 3; }
}
/* compact 는 원래 값의 비율로 — 메인(.p-main)은 1440 에서 13px 이라 고정 14px 이면 오히려 커진다 */
.fs-header.is-gnb-compact .fs-gnb__list { gap: max(8px, calc(var(--fs-gnb-gap) * .5)); }
.fs-header.is-gnb-compact .fs-gnb__link { font-size: calc(var(--fs-gnb-fz) * .92); letter-spacing: -0.01em; }
.fs-header.is-gnb-hidden .fs-gnb { display: none; }
.fs-header.is-gnb-measuring, .fs-header.is-gnb-measuring * { transition: none !important; }
/* 오른쪽 퀵메뉴 56px 칸 — KakaoTalk Chat·Naver Booking 이 잘렸다 → 두 줄 */
/* (10-20 2차) 데스크톱 오른쪽 56px 칸만 — <1024 하단 가로 퀵메뉴는 칸이 넓은데 이 10px 이 걸려 모든 번역 페이지가 한국어보다 작았다 */
@media (min-width: 1024px) {
  :root:not(:lang(ko)) .fs-quickbar__item { white-space: normal; text-align: center; font-size: 10px; line-height: 1.15; overflow-wrap: anywhere; }
}
/* 하단 상담 바 — 동의 문구가 한 줄로 늘어 입력칸을 눌러 안내문이 잘렸다 → 두 줄.
   10-20 전수 검사: ru 동의 문구가 13px·15rem 에서 5줄이라 바(72px) 위아래로 넘쳤고, 입력칸 안내문(«Phone Numl»)이 잘리고,
   상담부위 선택칸 글자가 화살표(오른쪽 16~28px) 밑으로 들어갔다 → 12px·16rem(ru 2~3줄), 칸 안 여백·글자 한 단 줄임 */
@media (min-width: 1024px) {
  :root:not(:lang(ko)) .p-quick .qc-title { white-space: normal; max-inline-size: 8.5em; font-size: 15px; line-height: 1.2; }
  :root:not(:lang(ko)) .p-quick .qc-field--agree { flex: 0 1 16rem; min-inline-size: 0; gap: 8px; }
  :root:not(:lang(ko)) .p-quick .qc-agree .fs-check__label { white-space: normal; font-size: 12px; line-height: 1.2; }
  :root:not(:lang(ko)) .p-quick .qc-policy-btn { font-size: 12px; flex-shrink: 0; max-inline-size: 5.5em; text-wrap-style: balance; }   /* 동의 칸에 눌려 vi «Xem / nội / dung» 이 단어마다 한 줄이 됐다 — 안 눌리게 하되 두 줄 폭으로. min-inline-size 로 막으면 ru «полность/ю» 가 단어 중간에서 끊긴다 */
  :root:not(:lang(ko)) .p-quick .qc-form :is(.fs-input, .fs-select) { padding-inline: 10px; font-size: 14px; text-overflow: ellipsis; }
  :root:not(:lang(ko)) .p-quick .qc-form .fs-select { padding-inline-end: 32px; }
}

/* 메인 히어로 — 영어 제목(Revision Eye and Nose Surgery)이 한 줄로 늘어 오른쪽 모델 얼굴을 덮었다 → 카피 폭을 묶어 줄을 바꾼다 */
@media (min-width: 1024px) {
  :root:not(:lang(ko)) .p-main .fs-hero__copy { max-inline-size: 40vw; }
  :root:not(:lang(ko)) .p-main .fs-hero__title { font-size: clamp(32px, 22px + 2.3vw, 66px); line-height: 1.1; }
}

/* 아랍어 — 레이아웃은 LTR 그대로 두고(사진 구도가 LTR 로 구워져 dir=rtl 반전 시 카피가 얼굴을 덮었다) 글줄만 내용 방향으로 */
:lang(ar) :is(p, h1, h2, h3, h4, h5, h6, li, dt, dd, th, td, figcaption, blockquote, label, caption, summary) { unicode-bidi: plaintext; }
/* 아랍어 글줄은 오른쪽에 붙어서 서브 히어로 제목이 화면 오른쪽 고정 퀵메뉴(.fs-quickbar) 밑으로 들어갔다 */
@media (min-width: 1024px) {
  :lang(ar) .fs-hero__copy { padding-inline-end: clamp(56px, 5vw, 96px); }
}

/* ── 번역문 줄바꿈·넘침 전수 보정 (2026-10-20, 101쪽 × 10개 언어 × 1920·1440·1024·390 검사) ── */
/* 줄바꿈 규칙 — fs.css body 의 keep-all + overflow-wrap:anywhere 는 한국어용이다. anywhere 는 칸의 최소 폭을 0 으로 만들어
   표·라벨 칸이 영어 단어를 «Incisio/n» 처럼 아무 데서나 자른다. break-word 는 단어 하나가 칸보다 길 때만 자르고 최소 폭은 단어 폭이다 */
:root:not(:lang(ko)) body { word-break: normal; overflow-wrap: break-word; }
/* 페이지 CSS 가 요소에 직접 건 keep-all — 한자·가나는 keep-all 이면 글자 사이에서 못 끊어 칸을 뚫고 나간다 */
:root:is(:lang(ja), :lang(zh)) * { word-break: normal !important; }
/* 일본어 제목은 구(句) 단위로 — normal 이면 «目頭・目 / 尻切開» 처럼 단어 가운데서 끊긴다. auto-phrase 는 크롬 119+ 일본어 전용, 모르는 브라우저는 normal */
:root:lang(ja) :is(h1, h2, h3, .fs-mega, [class*="__title"]),
:root:lang(ja) :is(h1, h2, h3, .fs-mega, [class*="__title"]) * { word-break: auto-phrase !important; }
/* 일본어 퀵메뉴 «KakaoTalk相 / 談» — 같은 구 단위로 */
:root:lang(ja) .fs-quickbar__label { word-break: auto-phrase !important; }
/* 진료시간표 — 라벨 칸이 한국어 «평 일»(54px·양끝 맞춤)에 맞춰져 «Lunch Break» 가 시간을 덮고, 아랍어는 화면 왼쪽 밖으로 나갔다 */
:root:not(:lang(ko)) .fs-hours__row { grid-template-columns: fit-content(50%) minmax(0, 1fr); column-gap: 1.25em; }
:root:not(:lang(ko)) .fs-hours .fs-hours__label { width: auto; min-width: 3.5em; text-align: start; text-align-last: auto; letter-spacing: normal; white-space: normal; }
/* 병원소개(.fs-page-about)는 한국어 2~3자를 «글자마다 span + flex 양끝 정렬» 로 벌린다 — 번역문도 단어마다 span 이라 폭을 풀면 «Ажлынөдөр» 처럼 붙었다 */
:root:not(:lang(ko)) .fs-page-about .fs-hours .fs-hours__label { flex-wrap: wrap; justify-content: flex-start; column-gap: .3em; }
/* 플로팅 이벤트 배지 — 곡선 글자 «포시즌»(110)이 전 언어 «Four Seasons» 라 원 밖으로 나가 «ur Seaso» 만 보였다.
   글자 크기는 _route.php 가 SVG 속성으로 54 로 바꾼다(<use> 테두리 층은 CSS font-size 가 안 닿는다). 테두리 굵기도 글자에 맞춰 절반 */
:root:not(:lang(ko)) .fs-evbtn__halo  { stroke-width: 18; }
:root:not(:lang(ko)) .fs-evbtn__edge1 { stroke-width: 6.5; }
:root:not(:lang(ko)) .fs-evbtn__l1    { stroke-width: 2.5; }
/* 큰 제목 — 줄 길이를 고르게 나눠 마지막 줄에 한 단어만 남지 않게(«…на глазах и / носе»). 크기 맞춤은 i18n.js ⑤ */
:root:not(:lang(ko)) :is(h1, h2, h3, .fs-mega, [class*="__title"]) { text-wrap-style: balance; }
/* 3열 비교표 항목 칸 — 한국어 2~4자용 90px 이라 «Recurrence·Longevity» 는 72% 로 줄여도 안 들어갔다 → 132px(모바일 120px, ru «подбородка» 기준).
   특정성을 :where() 로 fs.css 기본값(0,1,0)과 같게 낮춰 페이지별 열 설정(57·58·82·109·141·152)은 그대로 이기게 둔다 */
@media (min-width: 1024px) {
  :where(:root:not(:lang(ko))) .fs-compare__row,
  :where(:root:not(:lang(ko))) .fs-compare__panels { grid-template-columns: minmax(0, 466fr) 132px minmax(0, 464fr); }
}
:where(:root:not(:lang(ko))) .fs-compare { --fs-compare-cols-mo: 120px minmax(0, 1fr); }
/* 한 줄 고정(nowrap) — 한국어 값이 «부분마취 / +수면마취» 로 갈리지 않게 건 것이 번역문(«Local anesthesia + sleep anesthesia»)은 칸 밖으로 밀었다 */
:root:not(:lang(ko)) .fs-p-51 .fs-mid-op__spec dd,
:root:not(:lang(ko)) .fs-p-47 .fs-ptosis-spec .fs-card__caption { white-space: normal; }
/* 82 해부도 라벨 — 그림 왼쪽 밖(유지인대)·오른쪽 밖(전면부·측면부)에 한 줄로 붙어 «Retaining ligaments» 가 화면 왼쪽 밖으로 나갔다 */
:root:not(:lang(ko)) .fs-p-82 .fs-lifting-revision-anat__lab { white-space: normal; inline-size: max-content; max-inline-size: 7em; line-height: 1.15; }
:root:not(:lang(ko)) .fs-p-82 .fs-lifting-revision-anat__lab--lig { text-align: end; }
/* 56 콧볼축소란? — 왼쪽 칸이 리드의 <br> 한 줄 폭(max-content)이라 영어 한 줄이 칸을 다 차지해 오른쪽 도해 두 장이 폭 0 이 됐다(1024) */
@media (min-width: 1024px) {
  :root:not(:lang(ko)) .fs-p-56 .fs-section--cream2 > .fs-container { grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); }
}
/* i18n.js ⑦ 이 좁은 상자를 잴 때만 잠깐 건다 — 단어 단위 줄바꿈 상태에서 칸을 넘는 단어를 찾는다 */
.is-i18n-measure body * { overflow-wrap: normal !important; hyphens: manual !important; }
/* 122 튠페이스 장비 카드 — 1024~1279 는 «도해 300px | 글» 이라 글 칸이 92px 뿐이었다(«Stimulat/es») → 번역문은 위아래로 */
@media (min-width: 1024px) and (max-width: 1279px) {
  :root:not(:lang(ko)) .fs-p-122 .fs-tuneface-duo__card { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto 1fr; }
  :root:not(:lang(ko)) .fs-p-122 .fs-tuneface-duo__title { margin-block-start: clamp(20px, 16.3px + 1.03vw, 36px); }
}
/* 107 개인정보 보호책임자 — 항목 칸이 한국어 «부서·담당자» 용 58~76px 라 «Department·Person in Charge» 가 잘렸다 */
:root:not(:lang(ko)) .fs-p-107 .fs-privacy-org__row { grid-template-columns: fit-content(45%) minmax(0, 1fr); }
/* 푸터(모바일) — GUIDE·SOCIAL 2열이 번역 링크(mn «…боловсруулах бодлого»)에 좁아 단어가 끊기거나, 메인은 «GUIDE 자동 폭» 이
   SOCIAL 열을 0px 로 밀어 화면 밖으로 냈다 → <1024 번역문은 위아래로 쌓는다(≥1024 는 fs.css 가 display: contents) */
@media (max-width: 1023px) {
  :root:not(:lang(ko)) .fs-footer__cols { grid-template-columns: minmax(0, 1fr); }
}
/* .fs-card--square(≥1024 정사각 강제) — 번역 설명이 길면 카드가 안 커져 글이 아래 카드 «POINT 05» 배지에 깔렸다(128 고압산소) → 넘칠 때만 늘린다 */
@media (min-width: 1024px) {   /* aspect-ratio 상자에는 min-height:min-content 가 안 먹었다 → 비율을 풀고 최소 높이 = 부모 폭(cqi) */
  :root:not(:lang(ko)) :has(> .fs-card--square) { container-type: inline-size; }
  :root:not(:lang(ko)) .fs-card--square { aspect-ratio: auto; min-block-size: 100cqi; }
}
/* 109 뷰티코드 강조 띠 — line-height 1 이라 위아래가 큰 Noto Sans(mn·ru·vi) 두 줄 제목이 띠 밖으로 삐져나왔다 */
:root:not(:lang(ko)) .fs-p-109 .fs-bc-hl { line-height: 1.2; padding-block: 4px; }
/* 149 레이저리프팅 깊이 도해 축(≥1024) — 칸 높이가 고정이라 두세 줄로 접힌 층 이름(«Subcutaneous fat layer»)이 아랫 칸을 덮었다 */
@media (min-width: 1024px) {
  :root:not(:lang(ko)) .fs-p-149 .fs-laser-lifting-depth__axis li { font-size: 11px; line-height: 1.1; }
}

/* ── 2차 점검 (10-20, «예시만이 아니다» — 새 폭 1280·768·360 + 숨은 화면 + 줄바꿈·버튼·사진 위 글자 판정) ── */
/* 문장 중간 <br> — 한국어 줄 길이용이라 번역문(영어 기준 780곳 중 650)에선 «…surgical method / but also…» 짧은 줄을 만든다.
   _i18n.php 가 띄어쓰기 언어의 문장 중간 <br> 만 .i18n-br 로 표시한다 → 본문에선 숨기고 저절로 접히게, 제목은 디자인한 줄 나눔 그대로 */
.i18n-br { display: none; }
:is(h1, h2, h3, h4, .fs-mega, [class*="__title"], [class*="-title"], [class*="kicker"], .fs-hero__title, .fs-display) .i18n-br { display: inline; }
/* 본문 끝줄에 한 단어만 남지 않게, 버튼·태그가 두 줄이면 고르게 */
/* text-wrap 은 줄바꿈 허용(text-wrap-mode)까지 정하는 축약형이라 nowrap 버튼·알약이 두 줄로 접혔다(r10 «Request a Consultation» 1,414건) → 고르기만 정하는 낱개 속성 */
:root:not(:lang(ko)) :is(p, li, dd, figcaption, blockquote, .fs-lead__s, .fs-card__desc) { text-wrap-style: pretty; }
:root:not(:lang(ko)) :is(.fs-btn, .fs-pill, .fs-btnbar__btn, [class*="__chip"], .fs-carousel__dot, .fs-mask__in, [class*="kicker"]) { text-wrap-style: balance; }
/* 개인정보 동의 팝업(메인·하단 바) — 항목 칸 78px 가 한국어 «수집 항목» 용이라 «Собираемые·Dikumpulkan» 이 단어 중간에서 끊겼다 */
:root:not(:lang(ko)) :is(.p-main, .p-quick .qc-policy) .cs-policy__pair { grid-template-columns: fit-content(42%) minmax(0, 1fr); }
/* 하단 바 동의 묶음 — «View Details» 를 한 줄로 묶었더니 ru 동의 문구 칸이 좁아져 5줄(바 높이 72px)로 늘었다 → 묶지 말고 넓은 화면에선 묶음을 넓힌다 */
@media (min-width: 1440px) { :root:not(:lang(ko)) .p-quick .qc-field--agree { flex-basis: clamp(16rem, 6rem + 11vw, 22rem); } }
/* 151 써마지 진단 카드(<600) — «아이콘 38 | 글 57px» 라 «Identifyin/g» 이 됐다 → 아이콘 위·글 아래 */
@media (max-width: 599px) {
  :root:not(:lang(ko)) .fs-p-151 .fs-thermage-zone__list li { grid-template-columns: minmax(0, 1fr); justify-items: start; gap: var(--fs-sp-2); padding: var(--fs-sp-3) var(--fs-sp-4); }
}
/* 모바일 하단 퀵메뉴(<1024) — 다섯 칸 한 줄 고정이라 긴 번역(mn «KakaoTalk зөвлөгөө»)이 7.6px 까지 줄거나 360 에서 옆 칸과 겹쳤다 → 두 줄 허용, 판이 높아진 만큼 본문 아래 여백도 */
@media (max-width: 63.99rem) {
  :root:not(:lang(ko)) .fs-quickbar__item { white-space: normal; text-align: center; line-height: 1.15; font-size: clamp(10px, 2.9vw, 12px); }   /* 한국어 12px — 768 칸(102px)은 번역문도 12px 가 들어간다 */
  :root:not(:lang(ko)) body:has(.fs-quickbar) { padding-block-end: calc(100px + env(safe-area-inset-bottom, 0px)); }
}

/* 51 「나에게 맞는 수술법은?」 사진 이름표 — 번역 술식명(«Upper Blepharoplasty»·«Верхняя блефаропластика»)은 한국어 3~6자 자리
   (사진 오른쪽 30%)에 안 들어가 768 미만에서 사진 밖으로 나가거나 8px 까지 줄었다 → 사진 아래 버튼 줄로 내린다.
   지시선·점은 가리킬 이름표가 없어 숨긴다. 한자·가나는 짧아 사진 위 그대로. :where — 펼침(unveil) 밀어넣기 규칙이 이겨야 한다 */
@media (max-width: 767px) {
  :where(:root:not(:lang(ko), :lang(ja), :lang(zh))) .fs-p-51 .fs-mid-zonemap__fig { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
  :where(:root:not(:lang(ko), :lang(ja), :lang(zh))) .fs-p-51 .fs-mid-zonemap__fig img { flex: 0 0 100%; margin-block-end: 4px; }
  :where(:root:not(:lang(ko), :lang(ja), :lang(zh))) .fs-p-51 .fs-mid-zonemap__lines { display: none; }
  :where(:root:not(:lang(ko), :lang(ja), :lang(zh))) .fs-p-51 .fs-mid-zonemap__hot { position: static; translate: none; white-space: normal; text-align: center; font-size: 13px; }
}

/* 149 층 이름 척추 — 가운데 74~118px 열에 nowrap 이라 «Subcutaneous fat layer»·«Арьсан доорх өөхний давхарга» 가 양쪽 도해를
   덮거나 8px 까지 줄었다 → 랭귀지팩에서 «층» 을 뺀 짧은 이름 + 두 줄 허용 */
:root:not(:lang(ko)) .fs-p-149 .fs-laser-lifting-layer__key li { white-space: normal; line-height: 1.15; text-wrap-style: balance; }
@media (max-width: 719px) {   /* 360 에서 76px 열이면 «Subcutaneous» 가 10px 까지 줄었다 */
  :root:not(:lang(ko)) .fs-p-149 .fs-laser-lifting-layer__key { inline-size: clamp(92px, 70px + 6vw, 112px); }
}
@media (min-width: 720px) {   /* 768 에서 86px 열이면 «Подкожный» 가 하이픈으로 끊겼다 */
  :root:not(:lang(ko)) .fs-p-149 .fs-laser-lifting-layer__key { inline-size: clamp(96px, 60px + 5vw, 140px); }
}

/* 134 안면거상술 모바일 히어로(<600) — 사진(세로 900×1600, cover)이 히어로 전체 배경이고 카피가 위에 얹힌다. 한국어 카피는 304px 에서 끝나
   이마까지만 덮는데, 번역 리드는 4~6줄이라 365~454px 까지 내려와 눈·얼굴을 덮었다 → 사진을 제 비율로 히어로 바닥에 붙이고
   카피 아래에 «눈에서 사진 바닥까지»(사진 폭 × 0.84)를 비워 둔다. 카피가 길어지면 히어로가 그만큼 길어지고 얼굴은 늘 카피 바로 아래.
   사진 위쪽 빈자리는 카피 스크림과 같은 틴트 */
@media (max-width: 599px) {
  :where(:root:not(:lang(ko))) .fs-p-134 .fs-facelift-hero { background: rgb(var(--fs-cat, 250, 247, 244)); }
  :where(:root:not(:lang(ko))) .fs-p-134 .fs-facelift-hero__media { inset: auto 0 0 0; }
  :where(:root:not(:lang(ko))) .fs-p-134 .fs-facelift-hero__media picture { block-size: auto; }
  :where(:root:not(:lang(ko))) .fs-p-134 .fs-facelift-hero__media img { position: static; height: auto; aspect-ratio: 900 / 1600; }   /* 134.css:111 이 absolute·inset 0 */
  :where(:root:not(:lang(ko))) .fs-p-134 .fs-facelift-hero__copy { padding-block-end: calc(84vw + 20px); }
}

/* 일본어 짧은 라벨도 구(句) 단위로 — 표 머리·용어 칸·캡션·버튼에서 «ダウンタイ / ム» 처럼 가타카나 낱말 가운데서 끊겼다(윤곽 수술정보 dt).
   한 구가 칸보다 길면 i18n.js 좁은 칸 맞춤이 글자를 줄인다 */
:root:lang(ja) :is(dt, th, figcaption, label, button, .fs-btn, .fs-pill, .fs-labelbar, [class*="__label"], [class*="__dt"], [class*="__tag"], [class*="chip"]),
:root:lang(ja) :is(dt, th, figcaption, label, button, .fs-btn, .fs-pill, .fs-labelbar, [class*="__label"], [class*="__dt"], [class*="__tag"], [class*="chip"]) * { word-break: auto-phrase !important; }

/* 오시는 길 지도 버튼 — 번역문이 두 줄로 접히면 왼쪽 정렬로 보였다(한국어는 한 줄 가운데) */
:root:not(:lang(ko)) .fs-btnbar__btn { text-align: center; }

/* 64 이마거상 «01 눈썹 교정 + 02 …» 원 셋 — 390 에서 88px 원에 16px «Коррекция» 가 원 밖(크림 바탕 위 흰 글자)으로 나갔다 →
   <600 번역문은 원을 줄 폭의 1/3 로 키우고(96~106px) 글자 12.5px·두 줄 균형 */
@media (max-width: 599px) {
  :root:not(:lang(ko)) .fs-p-64 .fs-efl-triad { --fs-efl-triad-gap: 16px; }
  :root:not(:lang(ko)) .fs-p-64 .fs-efl-triad__item { width: min(152px, calc((100% - 32px) / 3)); padding-inline: 6px; }
  :root:not(:lang(ko)) .fs-p-64 .fs-efl-triad__label { font-size: 12.5px; line-height: 1.15; text-wrap-style: balance; }   /* hyphens 를 켜면 balance 가 «Коррек-ция» 로 끊는다 */
  /* 사진 두 장 나란히(<600) — 두 줄로 접힌 꼬리표 둘이 맞닿았다 → «쉬운 부분» 을 금색 띠 안에서 조금 더 위로(원래 −7%) */
  :root:not(:lang(ko)) .fs-p-64 #point[style] .fs-efl-zone__maps:not(.fs-efl-zone__maps--one) .fs-efl-zone__tag--easy { inset-block-start: calc(var(--zone-easy-y) - 12%); }
}
/* 64 박리 지도 꼬리표 «박리하기 쉬운/어려운 부분» — nowrap 이라 번역문(ru 240px)이 170px 사진 두 장에 걸쳐 옆 사진까지 덮었다 → 사진 폭 90% 안에서 접는다 */
:root:not(:lang(ko)) .fs-p-64 .fs-efl-zone__tag { white-space: normal; inline-size: max-content; max-inline-size: 90%; text-align: center; line-height: 1.15; text-wrap-style: balance; }

/* 67 이마축소 수술정보 — 모바일 격자에 열 지정이 없어(auto) 러시아어·몽골어 표의 최소 폭(452px)이 열째 넓혀 390 화면 밖으로 잘렸다.
   표는 원래 가로 스크롤 상자(.fs-table-wrap) 안이다 → 열을 화면 폭에 묶어 표만 스크롤하게 */
@media (max-width: 1023px) {
  :root:not(:lang(ko)) .fs-p-67 .fs-forehead-reduction-spec { grid-template-columns: minmax(0, 1fr); }
}

/* 80 앞트임 복원 문제 카드 3장 — 1024~1279 는 글 400px + 카드 3장(각 154px)이라 체크 목록 번역문(«Эпикантопластика»)이 카드를 넓혀
   셋째 카드가 화면 밖으로 잘렸다 → 이 폭에서는 글을 위·카드를 아래로(768~1023 과 같은 쌓기) */
@media (min-width: 1024px) and (max-width: 1279px) {
  :root:not(:lang(ko)) .fs-p-80 .fs-nose-dz__grid:has(.fs-p-80-probs) { grid-template-columns: minmax(0, 1fr); row-gap: 40px; }
}

/* 151 써마지 시술 부위 지도 — 라벨이 사진 양옆 18% 띠(nowrap)에 얹히는데 번역 부위명(«Носогубные складки»)이 사진 밖 다크 밴드로 나가
   진갈색 글자가 안 보였고(1440), 1024 에서는 왼쪽 카드 위를 덮었다, 390 에서는 9px 로 줄어 서로 겹쳤다.
   ≥600: 띠 안(사진 폭 17%)에서 두 줄로 접고 왼쪽 라벨은 오른쪽 정렬. <600: 띠가 46~60px 뿐이라 사진 아래 흰 알약 줄로 내리고 선·점은 숨긴다 */
:root:not(:lang(ko)) .fs-p-151 .fs-thermage-zone__tag { white-space: normal; inline-size: max-content; max-inline-size: 17%; font-size: clamp(11px, 9px + 0.45vw, 14px); line-height: 1.15; text-wrap-style: balance; }
:root:not(:lang(ko)) .fs-p-151 :is(.fs-thermage-zone__tag--chk, .fs-thermage-zone__tag--mth, .fs-thermage-zone__tag--jaw) { text-align: end; }
@media (max-width: 599px) {
  :where(:root:not(:lang(ko))) .fs-p-151 .fs-thermage-zone__fig { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 8px; }
  :where(:root:not(:lang(ko))) .fs-p-151 .fs-thermage-zone__fig img { flex: 0 0 100%; margin-block-end: 6px; }
  :where(:root:not(:lang(ko))) .fs-p-151 .fs-thermage-zone__svg { display: none; }
  :root:not(:lang(ko)) .fs-p-151 .fs-thermage-zone__tag { position: static; transform: none; inline-size: auto; max-inline-size: none; text-align: center; font-size: 13px; padding: 5px 12px; background: var(--fs-white); border-radius: var(--fs-radius-pill); }
}
/* 번역 필이 두 줄로 접히면 글줄이 왼쪽에 붙었다(필은 flex 가운데 정렬이라 한 줄일 때만 가운데) */
:root:not(:lang(ko)) .fs-pill { text-align: center; }

/* 149 얼굴 시술 부위 핀 — ≥760 은 사진 밖 양옆 nowrap 이름표인데 번역 부위명이 열 밖(1440 왼쪽 화면 끝·오른쪽 카드 밑)으로 잘리고
   1024 에서는 세 줄로 접혀 서로 겹쳤다. 지시선은 사진에 구워져 있어 핀을 목록으로 뺄 수 없다 → 번역문은 모든 폭에서 <760 형식
   (사진 안쪽 지시선 끝의 진갈색 알약)으로, 좌우 알약이 맞부딪치지 않게 사진 폭 46% 안에서 접는다 */
:root:not(:lang(ko)) .fs-p-149 .fs-laser-lifting-zone__pin {
  padding-block: 2px; font-size: var(--fs-t-xs); color: var(--fs-white); background: var(--fs-teal-dk);
  white-space: normal; inline-size: max-content; max-inline-size: 46%; line-height: 1.2;
}
:root:not(:lang(ko)) .fs-p-149 .fs-laser-lifting-zone__pin--l { inset-inline: 0 auto; padding-inline: var(--fs-sp-2); }
:root:not(:lang(ko)) .fs-p-149 .fs-laser-lifting-zone__pin--r { inset-inline: auto 0; padding-inline: var(--fs-sp-2); text-align: end; }
:root:not(:lang(ko)) .fs-p-149 .fs-laser-lifting-zone__pin::after { display: none; }
/* 이름표가 사진 안으로 들어왔으니 사진을 키워 알약이 얼굴을 덜 덮게(원래 상한 374 는 바깥 이름표 자리 때문이었다) */
@media (min-width: 760px) {
  :root:not(:lang(ko)) .fs-p-149 .fs-laser-lifting-zone { --fs-zone-w: min(100%, clamp(260px, 180px + 12vw, 400px)); }
}

/* 82 리프팅 재수술 «안면리프팅 부위» 도해 오른쪽 이름표 열(8.2em) — 번역 술식명이 3~4줄로 접혀 서로 겹쳤다(th·mn 1024) → 열을 10em 으로 */
:root:not(:lang(ko)) .fs-p-82 .fs-lifting-revision-zonemap__lab { width: 10em; line-height: 1.2; }
@media (min-width: 768px) {
  :root:not(:lang(ko)) .fs-p-82 .fs-lifting-revision-zonemap__stage { padding-inline-end: 10.4em; }
  :root:not(:lang(ko)) .fs-p-82 .fs-lifting-revision-zonemap { grid-template-columns: minmax(0, 1fr) 10.4em; }
}
