/* ============================================================
   DIVINE PLASTIC SURGERY - Main Stylesheet
   디바인성형외과 메인 스타일시트
   ============================================================ */
  
  /* 영문폰트 - 헤드에 링크로 넣어도 렌더링하면 notosans로 변경됨 */
  @import url('https://fonts.googleapis.com/css2?family=Italiana&display=swap');

/* ===================== CSS VARIABLES ===================== */
:root {
  --color-white:#ffffff;
  --color-black:#111111;
  --color-brown:#b07f80;
  --color-brown-dark:#8f6364;
  --color-brown-light:#dfc5c5;
  --color-bg-light:#f5f5f5;
  --color-bg-section:#faf9f8;
  --color-text-main:#111111;
  --color-text-sub:#555555;
  --color-text-muted:#888888;
  --color-text-light:#aaaaaa;
  --color-border:#e8e2de;
  --color-border-light:#f0ebe8;
  --color-overlay:rgba(17,17,17,0.55);
  --color-overlay-light:rgba(17,17,17,0.35);
  --font-kr:'Pretendard Variable', 'Malgun Gothic', sans-serif;
  --font-en:'Cormorant Garamond', 'Montserrat', serif;
  --font-en-sans:'Montserrat', sans-serif;
  --font-title:'Abhaya Libre', 'Cormorant Garamond', serif;
  --font-en-title:'Italiana', sans-serif !important;
  --font-size-base:17px;
  --font-size-sm:15px;
  --font-size-xs:13px;
  --font-size-lg:19px;
  --font-size-xl:22px;
  --font-size-2xl:28px;
  --font-size-3xl:36px;
  --font-size-4xl:48px;
  --font-size-hero:72px;
  --transition-base:all 0.3s ease;
  --transition-slow:all 0.5s ease;
  --shadow-sm:0 2px 10px rgba(0,0,0,0.08);
  --shadow-md:0 4px 20px rgba(0,0,0,0.12);
  --shadow-lg:0 8px 40px rgba(0,0,0,0.16);
  --max-width:1920px;
  --inner-width:1200px;
}

/* ===================== BASE RESET OVERRIDE ===================== */
body {font-family:var(--font-kr);font-size:var(--font-size-base);color:var(--color-text-main);background:var(--color-white);overflow-x:hidden;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5,h6 {font-family:var(--font-kr);font-weight:600;color:var(--color-text-main);line-height:1.3}
a {color:inherit;text-decoration:none;transition:var(--transition-base)}
a:hover {color:var(--color-brown)}
img {max-width:100%;height:auto;display:block}
*, *::before, *::after {box-sizing:border-box}
button {font-family:var(--font-kr);cursor:pointer;border:none;background:transparent}

/* ===================== UTILITY ===================== */
.sr-only {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.inner-wrap {max-width:1560px;margin:0 auto;padding:0 80px;width:100%}

/* ===================== SECTION COMMON ===================== */
.section-wrap {padding:120px 0}
.bg-light {background:var(--color-bg-light)}

.sec-header {margin-bottom:64px}
.sec-header.center-align {text-align:center}
.sec-label {font-family:var(--font-en-sans);font-size:var(--font-size-sm);font-weight:500;color:var(--color-brown);text-transform:uppercase;display:block;margin-bottom:14px}
.sec-title {font-size:52px;font-weight:700;line-height:1.15;color:var(--color-text-main);margin-bottom:16px;font-family:var(--font-kr)}
.sec-title strong {color:var(--color-brown)}
.sec-title-prefix {font-family:var(--font-en-title);font-style:normal;color:var(--color-brown);font-weight:400;font-size:1.08em;letter-spacing:0.5px}
.sec-title .sec-title-kr {font-family:var(--font-kr);font-size:0.72em;font-weight:600;vertical-align:baseline}
.sec-desc {font-size:var(--font-size-base);color:var(--color-text-sub);line-height:1.7}

/* Common Buttons */
.btn-more {display:inline-flex;align-items:center;gap:10px;padding:14px 32px;border:1px solid var(--color-white);color:var(--color-white);font-family:var(--font-en-sans);font-size:var(--font-size-sm);font-weight:500;text-transform:uppercase;transition:var(--transition-base)}
.btn-more:hover {background:var(--color-white);color:var(--color-black)}
.btn-more .btn-arrow {transition:var(--transition-base)}
.btn-more:hover .btn-arrow {transform:translateX(4px)}

.btn-outline {display:inline-block;padding:14px 36px;border:1px solid var(--color-brown);color:var(--color-brown);font-size:var(--font-size-sm);font-weight:500;transition:var(--transition-base);background:transparent}
.btn-outline:hover {background:var(--color-brown);color:var(--color-white)}

.btn-fill {display:inline-block;padding:14px 36px;background:var(--color-brown);color:var(--color-white);font-size:var(--font-size-sm);font-weight:500;transition:var(--transition-base)}
.btn-fill:hover {background:var(--color-brown-dark);color:var(--color-white)}

/* Slider Common */
.slider-controls {display:flex;justify-content:flex-end;gap:8px;margin-top:30px}
.slider-btn {width:48px;height:48px;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-border);background:var(--color-white);color:var(--color-text-sub);font-size:14px;transition:var(--transition-base);cursor:pointer}
.slider-btn:hover {background:var(--color-brown);border-color:var(--color-brown);color:var(--color-white)}

/* ===================== HEADER ===================== */
#site-header {position:fixed;top:0;left:0;width:100%;z-index:1000;transition:var(--transition-slow)}
#site-header.scrolled {box-shadow:var(--shadow-md)}

/* Top Bar - 삭제됨 (상단바 통합) */
#top-bar {display:none}

/* Header Main */
#header-main {background:var(--color-white);border-bottom:1px solid var(--color-border-light)}
/* #header-main .inner-wrap {display:grid;grid-template-columns:280px 1fr auto;align-items:stretch;height:100px;max-width:1800px} */
#header-main .inner-wrap { display: flex; align-items: center; width: 100%; max-width: 1640px; height: 100px; margin: 0 auto; padding: 0; } 

/* Logo — 헤더 전체 높이 기준 완전 수직 중앙 정렬 */
/* #logo {display:flex;align-items:center;justify-content:flex-start;height:100%;align-self:stretch;padding:0} */
#logo { flex: 0 0 auto; margin-right: clamp(20px, 3vw, 50px); } 
#logo h1 {margin:0;padding:0;display:flex;align-items:center;justify-content:flex-start;height:100%;line-height:1;flex:none}
#logo a {display:flex;align-items:center;justify-content:center;text-decoration:none;height:100%;padding:0;line-height:0}
/* 헤더 로고 기본 — 흰 배경 위: invert(1)로 검정 로고 표시 */
.logo-img {height:44px;width:auto;display:block;transition:var(--transition-base);vertical-align:middle;filter:invert(1)}
#logo a:hover .logo-img {opacity:0.8}
/* 히어로 섹션 위(어두운 배경): brightness(10)으로 흰 로고 표시 */
.hero-header .logo-img {filter:brightness(10)}

/* GNB */
/* #gnb {background:transparent;border:none;display:flex;justify-content:center}
#gnb-list {display:flex;align-items:center;gap:0;list-style:none;padding:0;margin:0} */
.gnb-item {position:relative}
.gnb-link {display:block;padding:0 32px;height:100px;line-height:100px;font-size:18px;font-weight:500;color:var(--color-text-main);white-space:nowrap;transition:var(--transition-base)}
.gnb-link:hover {color:var(--color-brown)}
.gnb-highlight {color:var(--color-brown);font-weight:600}
.gnb-highlight:hover {color:var(--color-brown-dark)}
#gnb { flex: 1 1 auto; min-width: 0; display: flex; justify-content: center; } 
#gnb-list { display: flex; align-items: center; justify-content: center; width: 100%; }

/* Sub Menu */
.sub-menu {display:none;position:absolute;top:100px;left:0;min-width:180px;background:var(--color-white);border-top:2px solid var(--color-brown);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-md);z-index:999;list-style:none;padding:10px 0;border-radius:0 0 14px 14px}
.gnb-item.has-sub:hover .sub-menu {display:block}
.sub-menu li {padding:0}
.sub-menu a {display:block;padding:13px 24px;font-size:16px;color:var(--color-text-sub);transition:var(--transition-base);white-space:nowrap;line-height:1.8}
.sub-menu a:hover {color:var(--color-brown);background:var(--color-bg-light);padding-left:28px}

/* Header Right Util */
/* #header-util {display:flex;flex-direction:row;align-items:center;gap:0;justify-content:flex-end;flex-wrap:nowrap} */
#header-util {display:flex; flex: 0 0 auto; align-items: center;}

/* 헤더 내 언어 아이콘 */
.header-lang-nav ul {display:flex;align-items:center;gap:2px;list-style:none;padding:0;margin:0}
.header-lang-nav li {line-height:1}
.flag-icon {width:28px;height:28px;border-radius:50%;object-fit:cover;display:block;opacity:0.75;transition:var(--transition-base)}
.header-lang-nav a {display:flex;align-items:center;padding:0 4px;transition:var(--transition-base)}
.header-lang-nav a:hover .flag-icon {opacity:1;transform:scale(1.15)}

/* 헤더 내 구분선 — 삭제 */
.header-util-divider {display:none}

/* 헤더 내 로그인/회원가입 */
.header-member-nav ul {display:flex;flex-direction:row;align-items:center;gap:0;list-style:none;padding:0;margin:0;flex-wrap:nowrap}
.header-member-nav li {display:inline-flex;align-items:center}
.header-member-nav li+li::before {content:'|';color:var(--color-border);margin:0 8px;font-size:11px;line-height:1}
.header-member-nav a {color:var(--color-text-muted);font-size:13px;font-weight:400;transition:var(--transition-base);white-space:nowrap;display:inline-block}
.header-member-nav a:hover {color:var(--color-brown)}

/* Mobile Menu Toggle */
#mobile-menu-btn {display:none;flex-direction:column;gap:5px;width:36px;padding:8px 0;margin-left:16px}
#mobile-menu-btn span {display:block;width:100%;height:2px;background:var(--color-black);transition:background 0.3s ease}

/* 모바일 전용 요소 — 데스크톱에서 숨김 */
#mobile-tel-btn {display:none}
.yt-mobile-bottom {display:none}

/* Header scroll transparent for hero */
.hero-header #site-header {background:transparent}
.hero-header #header-main {background:rgba(255,255,255,0.05);backdrop-filter:blur(8px);border-bottom-color:rgba(255,255,255,0.1)}
.hero-header .logo-img {filter:brightness(10)}
.hero-header .gnb-link {color:rgba(255,255,255,0.85)}
.hero-header .gnb-link:hover {color:var(--color-white)}
.hero-header .gnb-highlight {color:var(--color-brown-light)}
.hero-header .header-member-nav a {color:rgba(255,255,255,0.65)}
.hero-header .header-member-nav a:hover {color:var(--color-white)}
.hero-header .header-member-nav li+li::before {color:rgba(255,255,255,0.2)}
.hero-header .lang-globe-btn {color:rgba(255,255,255,0.75)}
.hero-header .lang-globe-btn:hover {color:var(--color-white)}
/* 히어로 위에서 햄버거 버튼 → 흰색 */
.hero-header #mobile-menu-btn span {background:rgba(255,255,255,0.9)}

/* ===================== LANG SELECTOR (지구본 드롭다운) ===================== */
.lang-selector {/*position:static;*/position:relative;display:inline-flex;align-items:center;margin-right:16px}
.lang-globe-btn {background:transparent;border:none;cursor:pointer;padding:6px 8px;transition:var(--transition-base);display:flex;align-items:center;justify-content:center;opacity:0.8}
.lang-globe-btn:hover {opacity:1;transform:scale(1.08)}
.lang-globe-img {width:28px;height:28px;object-fit:contain;display:block;transition:filter 0.3s ease}
/* 히어로 위 (투명 헤더): 지구본 흰색 */
.hero-header .lang-globe-img {filter:brightness(0) invert(1)}
/* 스크롤 후 흰 배경 헤더일 때: body에서 hero-header 클래스 제거되면 포인트 컬러 */
body:not(.hero-header) .lang-globe-img {filter:invert(55%) sepia(30%) saturate(800%) hue-rotate(330deg) brightness(0.85)}
/* 지구본 드롭다운: GNB 서브메뉴처럼 헤더 하단끝(100px)에서 시작 */
.lang-dropdown {/*position:fixed*/position:absolute;left:50%;transform:translate(-50%, -8px);top:calc(100% + 30px);background:var(--color-white);border:1px solid var(--color-border);box-shadow:var(--shadow-md);z-index:1100;opacity:0;visibility:hidden;/*transform:translateY(-8px);*/transition:opacity 0.25s ease, transform 0.25s ease, visibility 0.25s ease;border-top:2px solid var(--color-brown);border-radius:0 0 12px 12px;padding:8px;display:flex;flex-direction:column;gap:4px;min-width:auto}
.lang-dropdown.open {opacity:1;visibility:visible;transform: translate(-50%, 0);}
.lang-item {display:flex;align-items:center;justify-content:center;padding:6px;transition:var(--transition-base);border-radius:8px}
.lang-item:hover {background:var(--color-bg-light)}
/* 국기 아이콘: 정사각 비율 강제 + 원형 클리핑 */
.lang-item .flag-icon {width:32px;height:32px;min-width:32px;min-height:32px;border-radius:50%;object-fit:cover;object-position:center;opacity:0.85;transition:var(--transition-base);display:block;flex-shrink:0}
.lang-item:hover .flag-icon {opacity:1;transform:scale(1.1)}

/* ===================== FAB QUICK MENU ===================== */
/* FAB wrap: 토글 아래, 아이템 위로 펼침. right:32px 기준으로 top-btn과 정확히 정렬 */
#fab-wrap {position:fixed;right:32px;bottom:106px;z-index:900;display:flex;flex-direction:column;align-items:flex-end;gap:10px}

/* 점점점 bounce 애니메이션 */
@keyframes fabDotsAnim {
  0%,100% {letter-spacing:3px;opacity:1}
  50% {letter-spacing:7px;opacity:0.7}
}

/* FAB 토글 버튼 */
#fab-toggle {width:64px;height:64px;border-radius:50%;background:#c9a0a1;color:var(--color-white);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 24px rgba(201,160,161,0.45);transition:var(--transition-base);flex-shrink:0;position:relative;z-index:2}
#fab-toggle:hover {background:#b98788;transform:scale(1.07)}
/* ··· 완전 수직 중앙 정렬 */
.fab-dots {font-size:20px;font-weight:900;line-height:1;letter-spacing:3px;display:flex;align-items:center;justify-content:center;width:100%;height:100%;position:absolute;top:0;left:0;padding-bottom:4px;animation:fabDotsAnim 1.6s ease-in-out infinite}
#fab-wrap.open #fab-toggle {background:#b98788}

/* FAB 메뉴 아이템 컨테이너 */
#fab-items {display:flex;flex-direction:column-reverse;gap:10px;align-items:flex-end;opacity:0;visibility:hidden;transform:translateY(16px);transition:opacity 0.3s ease, transform 0.3s ease, visibility 0.3s ease;pointer-events:none}
#fab-wrap.open #fab-items {opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}

/* FAB 아이템 (pill 형태) */
.fab-item {display:flex;align-items:center;gap:10px;background:#c9a0a1;color:var(--color-white);padding:12px 22px;border-radius:50px;font-size:14px;font-weight:500;white-space:nowrap;text-decoration:none;box-shadow:0 3px 14px rgba(201,160,161,0.35);transition:var(--transition-base);min-width:130px;justify-content:flex-start}
.fab-item:hover {background:#b98788;color:var(--color-white);transform:translateX(-4px)}
.fab-item i {font-size:15px;flex-shrink:0;width:18px;text-align:center}

/* ===================== HERO ===================== */
#sec-hero {position:relative;width:100%;height:100vh;min-height:700px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.hero-bg {position:absolute;inset:0;z-index:0;background:#111}
/* 폴백 이미지: 항상 배경에 있고 video가 덮음 */
.hero-fallback-img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0;display:block}
.hero-img {width:100%;height:100%;object-fit:cover;object-position:center}
/* 비디오: 폴백 이미지 위에 렌더링, 로드 성공 시 이미지를 가림 */
.hero-video {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block;z-index:1}
/* 비디오 숨김 상태 (파일 없을 때 JS로 제어) */
.hero-video.hidden {display:none}
.hero-overlay {position:absolute;inset:0;background:rgba(17,17,17,0.48);z-index:2}
.hero-content {position:relative;z-index:3;width:100%;height:100%;padding:0 80px;display:flex;justify-content:center;align-items:center}
.hero-text-wrap {text-align:center;max-width:900px}
.hero-sub-text {font-family:var(--font-kr);font-size:var(--font-size-lg);color:rgba(255,255,255,0.75);margin-bottom:20px;font-weight:300;letter-spacing:2px}
.hero-brand {font-family:'Abhaya Libre', serif;font-style:normal;font-size:140px;font-weight:700;color:var(--color-white);line-height:0.9;margin-bottom:16px;letter-spacing:2px}
.hero-title-en {font-family:var(--font-en-sans);font-size:var(--font-size-xl);font-weight:300;color:var(--color-brown-light);text-transform:uppercase;letter-spacing:6px}

/* ─── 스크롤 인디케이터 ─── */
.hero-scroll-indicator {position:absolute;bottom:48px;left:50%;transform:translateX(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:10px}
.scroll-line {width:1px;height:60px;background:linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,0.7) 100%);animation:scrollLineAnim 2s ease-in-out infinite}
.scroll-text {font-family:var(--font-en-sans);font-size:10px;font-weight:600;color:rgba(255,255,255,0.55);letter-spacing:4px;text-transform:uppercase}
@keyframes scrollLineAnim {
  0%   {transform:scaleY(0);transform-origin:top;opacity:0}
  50%  {transform:scaleY(1);transform-origin:top;opacity:1}
  100% {transform:scaleY(1);transform-origin:bottom;opacity:0}
}

/* ===================== SIGNATURE (SPLIT LAYOUT) ===================== */
#sec-signature {display:flex;width:100%;min-height:680px;overflow:hidden}

/* 좌측 비주얼 패널 */
.sig-split-left {flex:0 0 58%;position:relative;overflow:hidden}
.sig-visual-area {position:relative;width:100%;height:100%;min-height:680px}
.sig-bg-img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;transition:opacity 0.6s ease, transform 0.8s ease;transform:scale(1.02)}
.sig-visual-overlay {position:absolute;inset:0;background:linear-gradient(to right, rgba(17,17,17,0.62) 0%, rgba(17,17,17,0.25) 65%, rgba(17,17,17,0.08) 100%)}
.sig-visual-content {position:absolute;top:50%;left:0;transform:translateY(-50%);width:100%;padding:60px 88px;z-index:2}
.sig-visual-sub {font-family:var(--font-en-sans);font-size:11px;font-weight:600;color:rgba(255,255,255,0.6);margin-bottom:14px;text-transform:uppercase;letter-spacing:3px;transition:var(--transition-slow)}
.sig-visual-title {font-size:52px;font-weight:700;color:var(--color-white);line-height:1.1;margin-bottom:16px;transition:var(--transition-slow)}
.sig-visual-desc {font-size:var(--font-size-base);color:rgba(255,255,255,0.78);line-height:1.75;margin-bottom:36px;font-weight:300;transition:var(--transition-slow)}
.sig-view-more-btn {display:inline-flex;align-items:center;gap:10px;padding:10px 24px;border:1px solid rgba(255,255,255,0.55);color:var(--color-white);font-family:var(--font-en-sans);font-size:var(--font-size-xs);font-weight:500;text-transform:uppercase;transition:var(--transition-base);background:transparent}
.sig-view-more-btn:hover {background:var(--color-white);color:var(--color-black);border-color:var(--color-white)}
.sig-view-more-btn i {font-size:12px;transition:var(--transition-base)}
.sig-view-more-btn:hover i {transform:translateX(4px)}

/* 우측 포인트컬러 패널 */
.sig-split-right {flex:1;background:var(--color-brown);display:flex;align-items:center}
.sig-right-inner {padding:80px 72px 80px 72px;width:100%}
.sig-right-label {font-family:var(--font-en-title);font-style:normal;font-size:52px;font-weight:400;color:var(--color-white);display:block;margin-bottom:12px;line-height:1.1;letter-spacing:1px}
.sig-right-title {font-size:23px;font-weight:500;color:rgba(255,255,255,0.92);line-height:1.45;margin-bottom:48px}

/* 시그니처 리스트 */
.sig-list {list-style:none;padding:0;margin:0}
.sig-list-item {border-bottom:1px solid rgba(255,255,255,0.18)}
.sig-list-item:first-child {border-top:1px solid rgba(255,255,255,0.18)}
.sig-list-btn {width:100%;display:flex;align-items:center;gap:0;padding:22px 0;background:transparent;border:none;cursor:pointer;text-align:left;transition:var(--transition-base)}
.sig-list-num {font-family:var(--font-en-sans);font-size:var(--font-size-xs);font-weight:500;color:rgba(255,255,255,0.5);min-width:36px;transition:var(--transition-base)}
.sig-list-bar {display:block;width:1px;height:18px;background:rgba(255,255,255,0.3);margin:0 20px;flex-shrink:0}
/* sig-list-name: flex 없음 (고정), sig-list-en이 나머지 공간 차지하며 오른쪽 정렬 */
.sig-list-name {font-size:var(--font-size-lg);font-weight:600;color:rgba(255,255,255,0.7);transition:var(--transition-base)}
.sig-list-desc-short {font-size:var(--font-size-xs);color:rgba(255,255,255,0.5);font-weight:400;margin-left:16px;transition:var(--transition-base)}
/* sig-list-en: 화살표 좌측에 위치, flex:1로 남은 공간 차지 후 오른쪽 끝 정렬 */
.sig-list-en {font-family:var(--font-en-sans);font-size:11px;font-weight:400;color:rgba(255,255,255,0.45);letter-spacing:0.5px;white-space:nowrap;transition:var(--transition-base);flex:1;text-align:right;padding-right:12px}
.sig-list-arrow {font-size:13px;color:transparent;transition:var(--transition-base);flex-shrink:0}
.sig-list-item.active .sig-list-en {color:rgba(255,255,255,0.65)}
.sig-list-btn:hover .sig-list-en {color:rgba(255,255,255,0.7)}
.sig-list-item.active .sig-list-num {color:var(--color-white);font-weight:700}
.sig-list-item.active .sig-list-name {color:var(--color-white);font-weight:700}
.sig-list-item.active .sig-list-arrow {color:var(--color-white)}
.sig-list-item.active .sig-list-btn {border-left:3px solid rgba(255,255,255,0.8);padding-left:12px}
.sig-list-btn:hover .sig-list-name {color:var(--color-white)}
.sig-list-btn:hover .sig-list-arrow {color:rgba(255,255,255,0.7)}

/* ===================== SPECIAL REVIEW (중앙 나란히 + 우측 썸네일) ===================== */

/* 탭 메뉴: 스페셜리뷰용 탭 폰트 크게 */
.sr-tab-menu {margin-bottom:32px}
.sr-tab-btn {font-size:18px !important;padding:14px 36px !important;font-weight:500}

/* 본문 래퍼: 중앙(전후사진) + 우측(썸네일) */
/* 데스크톱: flex-wrap으로 center+bottom-outer가 세로로 쌓이고 right가 우측 고정 */
.special-review-body {display:flex;flex-wrap:wrap;gap:28px 28px;align-items:flex-start}

/* 중앙 영역 */
.special-review-center {flex:1;min-width:0;order:1}

/* 텍스트/버튼 외부 래퍼: 데스크톱에서 center와 같은 폭으로 아래에 */
/* calc(100% - 썸네일폭192px - gap28px) = center와 동일 너비 */
.sr-bottom-outer {flex:0 0 calc(100% - 220px);min-width:0;order:3}

/* BEFORE/AFTER 나란히 배치 */
.sr-pair {display:flex;gap:0;width:100%;border-radius:4px;overflow:hidden;box-shadow:var(--shadow-md)}
.sr-pair-item {flex:1;position:relative;overflow:hidden}
.sr-pair-item img {width:100%;aspect-ratio:4/3;object-fit:cover;display:block;transition:transform 0.4s ease}
.sr-pair-item:hover img {transform:scale(1.03)}

/* BEFORE / AFTER 라벨 배지 */
.sr-pair-label {
  position:absolute;top:12px;left:12px;z-index:3;
  font-family:var(--font-en-sans);font-size:11px;font-weight:600;
  letter-spacing:1.5px;text-transform:uppercase;
  padding:5px 12px;color:var(--color-white);
  background:rgba(17,17,17,0.68);backdrop-filter:blur(2px)
}
.sr-pair-after-label {background:var(--color-brown)}

/* 두 사진 사이 구분선 */
.sr-pair-item + .sr-pair-item {border-left:2px solid rgba(255,255,255,0.5)}

/* 버튼 + 수술명 텍스트 영역 */
.sr-bottom-area {margin-top:20px;display:flex;align-items:center;gap:24px;flex-wrap:nowrap}
.sr-bottom-left {display:flex;align-items:baseline;gap:14px;flex-shrink:0}
.sr-surgery-name-main {font-size:34px;font-weight:700;color:var(--color-brown);line-height:1.2;margin-bottom:2px;white-space:nowrap}
.sr-surgery-name-sub {font-size:23px;font-weight:500;color:var(--color-text-main);line-height:1.4;white-space:nowrap}
.special-review-btns {display:flex;flex-direction:row;gap:10px;flex-shrink:0;margin-left:auto}
.special-review-btns .btn-outline,
.special-review-btns .btn-fill {display:inline-flex;align-items:center;justify-content:center;padding:14px 28px;font-size:15px;white-space:nowrap;font-weight:500}
.special-review-disclaimer {font-size:11px;color:var(--color-text-light);line-height:1.8;margin-top:12px}

/* 우측: 썸네일 목록 */
.special-review-right {width:192px;flex-shrink:0;order:2;align-self:stretch}
.sr-thumb-list {display:flex;flex-direction:column;gap:10px;width:100%}
.sr-thumb-item {
  cursor:pointer;border:2px solid transparent;
  border-radius:4px;overflow:hidden;
  transition:var(--transition-base);background:var(--color-white);
}
.sr-thumb-item:hover {border-color:rgba(201,158,142,0.5);box-shadow:var(--shadow-sm)}
.sr-thumb-item.active {border-color:var(--color-brown);box-shadow:var(--shadow-sm)}

/* 썸네일 내 두 이미지 가로 반반 */
.sr-thumb-pair {display:flex;gap:0;width:100%;overflow:hidden}
.sr-thumb-pair img {flex:1;width:50%;aspect-ratio:4/3;object-fit:cover;display:block;transition:transform 0.3s ease}
.sr-thumb-pair img + img {border-left:1px solid rgba(255,255,255,0.6)}
.sr-thumb-item:hover .sr-thumb-pair img {transform:scale(1.04)}

/* 썸네일 캡션 */
.sr-thumb-caption {
  font-size:11px;color:var(--color-text-sub);
  padding:6px 8px 7px;text-align:center;line-height:1.4;
  background:var(--color-white)
}

/* ===================== BEFORE & AFTER ===================== */
.tab-menu {display:flex;gap:0;border-bottom:2px solid var(--color-border);margin-bottom:48px}
.tab-btn {padding:14px 32px;font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-muted);background:transparent;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;transition:var(--transition-base);cursor:pointer}
.tab-btn.active {color:var(--color-brown);border-bottom-color:var(--color-brown);font-weight:600}
.tab-btn:hover {color:var(--color-text-main)}

.tab-panel {display:none}
.tab-panel.active {display:block}

.ba-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:48px}
.ba-card {background:var(--color-white);overflow:hidden}
.ba-imgs {display:grid;grid-template-columns:1fr 1fr;gap:0}
.ba-img-wrap {position:relative;overflow:hidden;aspect-ratio:1/1}
.ba-img-wrap img {width:100%;height:100%;object-fit:cover;transition:var(--transition-slow)}
.ba-card:hover .ba-img-wrap img {transform:scale(1.04)}
.ba-label {position:absolute;bottom:10px;left:10px;background:rgba(17,17,17,0.7);color:var(--color-white);font-family:var(--font-en-sans);font-size:11px;font-weight:500;padding:4px 10px;text-transform:uppercase}
.ba-label.after {background:var(--color-brown)}
.ba-caption {padding:14px 16px;font-size:var(--font-size-sm);color:var(--color-text-sub);font-weight:500;border-top:1px solid var(--color-border-light)}

.ba-cta {display:flex;justify-content:center;gap:16px;padding-top:12px}

/* ===================== PHOTO REVIEW — 3컬럼 Before/After 카드 ===================== */
#sec-photo-review {overflow:visible}
#sec-photo-review .inner-wrap {margin-bottom:0}
.slider-wrap {position:relative;overflow:hidden}
.review-slider {display:flex;gap:20px;padding:0 40px;transition:transform 0.5s ease;will-change:transform}
.review-slide-item {flex:0 0 calc(25% - 15px);min-width:0;position:relative;overflow:hidden;border-radius:0}
.review-slide-item img {width:100%;aspect-ratio:3/4;object-fit:cover;display:block;transition:var(--transition-slow)}
.review-slide-item:hover img {transform:scale(1.04)}
.review-slide-info {padding:16px 0;background:var(--color-white)}
.review-tag {display:inline-block;background:var(--color-brown);color:var(--color-white);font-size:11px;font-weight:500;padding:4px 10px;margin-bottom:6px}
.review-slide-info p {font-size:var(--font-size-xs);color:var(--color-text-muted)}
/* 슬라이더 화살표는 slider-wrap 내부에서만 절대 배치 */
.slider-wrap .slider-btn.prev,
.slider-wrap .slider-btn.next {position:absolute;top:40%;transform:translateY(-50%);z-index:10}
.slider-wrap .slider-btn.prev {left:10px}
.slider-wrap .slider-btn.next {right:10px}

/* 포토리뷰 3컬럼 그리드 */
.pr-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:0}
.pr-card {background:var(--color-white);overflow:hidden;cursor:pointer;transition:var(--transition-base)}
.pr-card:hover {box-shadow:var(--shadow-md);transform:translateY(-4px)}
/* BEFORE/AFTER 이미지 좌우 배치 */
.pr-card-imgs {display:grid;grid-template-columns:1fr 1fr;gap:0;position:relative}
.pr-card-img-wrap {position:relative;overflow:hidden}
.pr-card-img-wrap img {width:100%;aspect-ratio:4/3;object-fit:cover;display:block;transition:transform 0.4s ease}
.pr-card:hover .pr-card-img-wrap img {transform:scale(1.04)}
/* Before/After 배지 — 이미지 아래 (이미지 밖) */
.pr-card-img-wrap {display:flex;flex-direction:column}
.pr-card-img-badge {display:block;width:100%;padding:7px 10px;font-size:11px;font-weight:700;font-family:var(--font-en-sans);letter-spacing:2px;text-transform:uppercase;text-align:center;color:var(--color-white);position:static}
.pr-card-img-badge.before {background:rgba(34,34,34,0.90)}
.pr-card-img-badge.after {background:var(--color-brown)}
/* 카드 하단 정보 */
.pr-card-info {padding:14px 16px;border-top:1px solid var(--color-border-light)}
.pr-card-tag {display:inline-block;background:var(--color-brown);color:var(--color-white);font-size:11px;font-weight:500;padding:3px 10px;margin-bottom:6px}
.pr-card-meta {font-size:12px;color:var(--color-text-muted)}

/* ===================== REAL REVIEW BOARD ===================== */
.review-board-slider {overflow:hidden}
.review-board-inner {display:flex;gap:24px;transition:transform 0.5s ease;will-change:transform}
.review-board-card {flex:0 0 calc(50% - 12px);background:var(--color-white);padding:36px 32px;border-bottom:2px solid transparent;transition:var(--transition-base)}
.review-board-card:hover {border-bottom-color:var(--color-brown);transform:translateY(-4px);box-shadow:var(--shadow-sm)}
.review-board-top {display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.review-board-tag {display:inline-block;background:var(--color-bg-light);color:var(--color-brown);font-size:var(--font-size-xs);font-weight:600;padding:4px 12px;border:1px solid var(--color-brown-light)}
.review-board-date {font-size:var(--font-size-xs);color:var(--color-text-muted)}
.review-board-title {font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-main);margin-bottom:12px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.review-board-text {font-size:var(--font-size-sm);color:var(--color-text-sub);line-height:1.7;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:20px}
.review-board-meta {display:flex;justify-content:space-between;font-size:var(--font-size-xs);color:var(--color-text-muted);padding-top:16px;border-top:1px solid var(--color-border-light)}

/* ===================== REAL REVIEW — 전후사진 3개 가로 나열 ===================== */
/* ====== 리얼리뷰: 자동 무한루프 슬라이더 ====== */
.rr-slider-wrap {margin-top:16px}
/* 뷰포트: 넘침 숨김 */
.rr-slider-viewport {overflow:hidden;width:100%}
/* 트랙: JS가 translateX 직접 제어. flex-nowrap으로 한 줄 유지 */
.rr-slider-track {display:flex;flex-wrap:nowrap;gap:16px;will-change:transform;flex-wrap:wrap;}
/* 카드: 너비는 JS가 viewport.clientWidth 기준으로 px 직접 주입 (CSS는 폴백만) */
.rr-review-card {flex:0 0 auto;width:180px;cursor:default;background:transparent;flex:1 1 14%;}
.rr-review-photo {width:100%;aspect-ratio:3/4;border-radius:12px;overflow:hidden;margin-bottom:12px}
.rr-review-photo img {width:100%;height:100%;object-fit:cover;object-position:top;display:block}
.rr-review-tags {font-size:14px;color:#888;line-height:1.65;word-break:keep-all}

/* ===================== YOUTUBE (2컬럼 레이아웃) ===================== */
.yt-section-header {display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;flex-wrap:wrap;gap:16px}
.yt-section-header .sec-title {margin-bottom:0}
.yt-header-right {display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.yt-more-btn,.yt-channel-btn {display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border:1px solid var(--color-border);font-size:13px;font-weight:600;color:var(--color-text-sub);font-family:var(--font-en-sans);transition:var(--transition-base);white-space:nowrap}
.yt-more-btn:hover,.yt-channel-btn:hover {border-color:var(--color-brown);color:var(--color-brown)}
/* 유튜브 탭: 스페셜리뷰 탭과 동일한 크기 (18px) */
.yt-tab-menu {margin-bottom:32px;margin-top:8px}
.yt-tab-menu .tab-btn {font-size:18px !important;padding:14px 36px !important;font-weight:500}
.yt-layout {display:grid;grid-template-columns:1fr 360px;gap:32px;align-items:start;margin-bottom:40px}
.yt-main-thumb {position:relative;overflow:hidden;aspect-ratio:16/9;background:#111;cursor:pointer}
.yt-main-thumb img {width:100%;height:100%;object-fit:cover;transition:var(--transition-slow)}
.yt-main-thumb:hover img {transform:scale(1.03)}
.yt-play-btn-lg {position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:80px;height:80px;background:rgba(255,0,0,0.9);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:34px;color:var(--color-white);transition:var(--transition-base);pointer-events:none}
.yt-main-thumb:hover .yt-play-btn-lg {transform:translate(-50%,-50%) scale(1.1)}
.yt-main-title {padding:16px 0 0;font-size:var(--font-size-base);font-weight:600;color:var(--color-text-main);line-height:1.55}
.yt-list-panel {display:flex;flex-direction:column;gap:0;border-top:1px solid var(--color-border)}
.yt-list-item {display:grid;grid-template-columns:130px 1fr;gap:12px;padding:14px 0;border-bottom:1px solid var(--color-border-light);cursor:pointer;transition:var(--transition-base)}
.yt-list-item:hover {background:var(--color-bg-light);padding-left:8px;padding-right:8px}
.yt-list-item.active {border-left:3px solid var(--color-brown);padding-left:8px}
.yt-list-thumb {overflow:hidden;aspect-ratio:16/9;background:#111}
.yt-list-thumb img {width:100%;height:100%;object-fit:cover;display:block}
.yt-list-info {display:flex;align-items:center}
.yt-list-title {font-size:13px;font-weight:500;color:var(--color-text-main);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.yt-list-item.active .yt-list-title {color:var(--color-brown);font-weight:600}

.yt-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px}
.yt-card {overflow:hidden}
.yt-thumb-wrap {position:relative;overflow:hidden;aspect-ratio:16/9}
.yt-thumb-wrap img {width:100%;height:100%;object-fit:cover;transition:var(--transition-slow)}
.yt-card:hover .yt-thumb-wrap img {transform:scale(1.05)}
.yt-play-btn {position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:60px;height:60px;background:rgba(255,255,255,0.9);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;color:#ff0000;transition:var(--transition-base)}
.yt-card:hover .yt-play-btn {background:var(--color-white);transform:translate(-50%,-50%) scale(1.1)}
.yt-title {padding:16px 0 0;font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-main);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* ===================== SHORTS ===================== */
.shorts-grid {display:flex;gap:12px;width:100%}
.shorts-card {flex:1 1 0;min-width:0}
.shorts-thumb-wrap {position:relative;overflow:hidden;aspect-ratio:9/16}
.shorts-thumb-wrap img {width:100%;height:100%;object-fit:cover;object-position:center top;transition:var(--transition-slow)}
.shorts-card:hover .shorts-thumb-wrap img {transform:scale(1.05)}
.shorts-card:hover .yt-play-btn {background:var(--color-white)}

/* ===================== DOCTOR REVIEW ===================== */
.doctor-review-slider {overflow:hidden;margin-bottom:0}
.doctor-review-inner {display:flex;gap:24px;transition:transform 0.5s ease;will-change:transform}
.doctor-review-card {flex:0 0 100%;display:grid;grid-template-columns:340px 1fr;gap:0;background:var(--color-bg-light);overflow:hidden}
.doctor-review-thumb img {width:340px;height:340px;object-fit:cover;object-position:center top}
.doctor-review-content {padding:48px}
.doctor-review-tag {display:inline-block;background:var(--color-brown);color:var(--color-white);font-size:var(--font-size-xs);font-weight:500;padding:4px 12px;margin-bottom:20px}
.doctor-review-title {font-size:var(--font-size-2xl);font-weight:600;color:var(--color-text-main);margin-bottom:20px;line-height:1.35}
.doctor-review-text {font-size:var(--font-size-sm);color:var(--color-text-sub);line-height:1.8;margin-bottom:28px}
.doctor-name {font-family:var(--font-kr);font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:500;display:block;padding-top:20px;border-top:1px solid var(--color-border)}

/* ===================== BLOG REVIEW ===================== */
.blog-review-slider {overflow:hidden}
.blog-review-inner {display:flex;gap:20px;transition:transform 0.5s ease;will-change:transform}
.blog-review-card {flex:0 0 calc(25% - 15px);background:var(--color-white);overflow:hidden;transition:var(--transition-base)}
.blog-review-card:hover {transform:translateY(-6px);box-shadow:var(--shadow-md)}
.blog-review-thumb {overflow:hidden}
.blog-review-thumb img {width:100%;height:auto;object-fit:cover;object-position:center;display:block;transition:var(--transition-slow)}
.blog-review-card:hover .blog-review-thumb img {transform:scale(1.05)}
.blog-review-content {padding:24px}
.blog-review-tag {display:inline-block;background:var(--color-bg-light);color:var(--color-brown);font-size:11px;font-weight:600;padding:3px 10px;margin-bottom:12px;border:1px solid var(--color-brown-light)}
.blog-review-title {font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-main);margin-bottom:10px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.blog-review-text {font-size:var(--font-size-sm);color:var(--color-text-sub);line-height:1.7;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:16px}
.blog-review-meta {display:flex;justify-content:space-between;align-items:center;font-size:var(--font-size-xs);color:var(--color-text-muted);padding-top:14px;border-top:1px solid var(--color-border-light)}
.blog-review-meta a {color:var(--color-brown);font-weight:500}
.blog-review-meta a:hover {color:var(--color-brown-dark)}

/* ===================== BANNER CROSSFADE SLIDER ===================== */

/* ─── 래퍼: 650px 고정 높이, 세로 스냅 없음 ─── */
#sec-banner-wrap {
  position: relative;
  width: 100%;
  height: 650px;
  overflow: hidden;
  background: #0a0a0a;
}

/* ─── 트랙: 전체 채움 ─── */
#bn-track {
  position: absolute;
  inset: 0;
}

/* ─── 각 슬라이드: 절대위치로 겹쳐 쌓기 ─── */
.banner-slide {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
  transform: scale(1.03) translateY(10px);
  transition:
    opacity 0.9s cubic-bezier(0.4, 0, 0.2, 1),
    transform 0.9s cubic-bezier(0.4, 0, 0.2, 1);
}
.banner-slide.is-active {
  opacity: 1;
  pointer-events: auto;
  transform: scale(1) translateY(0);
  z-index: 2;
}
.banner-slide.is-leaving {
  opacity: 0;
  transform: scale(0.97) translateY(-8px);
  z-index: 1;
}

/* ─── 배경 이미지 ─── */
.banner-slide-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.banner-slide-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transform: scale(1.06);
  transition: transform 6s linear;
}
.banner-slide.is-active .banner-slide-bg img {
  transform: scale(1);
}
.banner-slide-bg .banner-mo{display:none;}
.banner-slide-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to right,
    rgba(8,8,8,0.75) 0%,
    rgba(8,8,8,0.45) 50%,
    rgba(8,8,8,0.10) 100%
  );
}

/* ─── 콘텐츠 영역: 텍스트 + 인라인 컨트롤 포함 ─── */
.banner-slide-content {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 1560px;
  margin: 0 auto;
  padding: 0 80px;
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.7s ease 0.3s, transform 0.7s ease 0.3s;
}
.banner-slide.is-active .banner-slide-content {
  opacity: 1;
  transform: translateY(0);
}

/* ─── keyword ─── */
.banner-slide-keyword {
  display: block;
  font-family:var(--font-en-title);
  font-size: 88px;
  font-weight: 400;
  color: rgba(255,255,255,0.95);
  line-height: 1;
  margin-bottom: 14px;
  letter-spacing: 1px;
}

/* ─── 한 줄 타이틀 ─── */
.banner-slide-title {
  font-family: var(--font-kr);
  font-size: 30px;
  font-weight: 500;
  color: rgba(255,255,255,0.82);
  line-height: 1.3;
  margin-bottom: 18px;
  letter-spacing: -0.3px;
  white-space: nowrap;
}

/* ─── 설명 텍스트 ─── */
.banner-slide-text {
  font-size: 17px;
  color: rgba(255,255,255,0.50);
  line-height: 1.9;
  font-weight: 300;
  margin-bottom: 44px;  /* 컨트롤 더 아래로 */
}

.banner-slide-en { display: none; }

/* ─── 인라인 컨트롤: 텍스트 바로 아래, 콘텐츠 좌측 정렬 ─── */
.bn-inline-ctrl {
  display: flex;
  align-items: center;
  gap: 0;
}

/* 화살표 버튼: 심플 라인 (배경·테두리 없음) */
.bn-ctrl-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  background: none;
  border: none;
  border-radius: 0;
  cursor: pointer;
  padding: 0;
  color: rgba(255,255,255,0.55);
  transition: color 0.2s ease;
  flex-shrink: 0;
}
.bn-ctrl-arrow svg {
  width: 22px;
  height: 22px;
  display: block;
}
.bn-ctrl-arrow:hover {
  color: rgba(255,255,255,0.95);
}
/* 첫 번째 화살표(←): 버튼 박스 좌측 여백(버튼width-SVGwidth)/2 만큼 당겨서 텍스트 좌측 기준선에 정확히 맞춤 */
.bn-ctrl-arrow:first-child { margin-left: -7px; }

/* 숫자 카운터 */
.bn-inline-cur {
  font-family: var(--font-en-sans);
  font-size: 18px;
  font-weight: 600;
  color: rgba(255,255,255,0.90);
  line-height: 1;
  margin: 0 6px;
  min-width: 22px;
  text-align: center;
}
.bn-inline-sep {
  font-family: var(--font-en-sans);
  font-size: 16px;
  color: rgba(255,255,255,0.28);
  margin: 0 6px;
  line-height: 1;
}
.bn-inline-tot {
  font-family: var(--font-en-sans);
  font-size: 16px;
  font-weight: 300;
  color: rgba(255,255,255,0.38);
  line-height: 1;
  margin: 0 6px;
  min-width: 22px;
  text-align: center;
}

/* 공통 페이지네이션 버튼 */
.sec-pagination {display:flex;align-items:center;justify-content:center;gap:10px;margin-top:64px}
.page-btn {width:10px;height:10px;border-radius:50%;border:none;background:var(--color-border);cursor:pointer;transition:var(--transition-base);padding:0;font-size:0;overflow:hidden}
.page-btn:hover {background:rgba(201,158,142,0.6)}
.page-btn.active {background:var(--color-brown);width:28px;border-radius:6px}
.sec-add-btn {position:absolute;top:0;right:0;width:44px;height:44px;border-radius:50%;background:var(--color-brown);color:var(--color-white);font-size:22px;font-weight:300;display:flex;align-items:center;justify-content:center;border:none;cursor:pointer;transition:var(--transition-base);box-shadow:0 2px 10px rgba(201,158,142,0.35);z-index:10}
.sec-add-btn:hover {background:var(--color-brown-dark)}
.pr-add-btn {top:-88px;right:0;z-index:10;box-shadow:0 2px 8px rgba(0,0,0,0.18)}
.sec-header .sec-add-btn {top:50%;right:0;transform:translateY(-50%);bottom:auto}

/* 배너 반응형 - 1200px */
@media (max-width:1200px) {
  #sec-banner-wrap { height: 560px; }
  .banner-slide-content { padding: 0 60px; }
  .banner-slide-keyword { font-size: 72px; }
  .banner-slide-title { font-size: 26px; }
  .banner-slide-bg .banner-pc{display: none;}
  .banner-slide-bg .banner-mo{display: block;}
}

/* 배너 반응형 - 768px */
@media (max-width:768px) {
  #sec-banner-wrap { height: 600px; }
  /* 텍스트를 아래쪽으로: align-items flex-end + padding-bottom */
  .banner-slide { align-items: flex-end; }
  .banner-slide-content {
    padding: 0 28px 60px;   /* 좌우 28px, 하단 60px 여백으로 아래 배치 */
  }
  .banner-slide-keyword { font-size: 42px; margin-bottom: 10px; }
  .banner-slide-title { font-size: 20px; white-space: normal; margin-bottom: 14px; }
  .banner-slide-text { font-size: 15px; line-height: 1.75; margin-bottom: 28px; }
  .bn-ctrl-arrow { width: 32px; height: 32px; }
  .bn-ctrl-arrow svg { width: 20px; height: 20px; }
  .bn-inline-cur { font-size: 14px; }
  .bn-inline-sep, .bn-inline-tot { font-size: 13px; }
}

/* ===================== FAQ ===================== */
.faq-list {max-width:840px;margin:0 auto}
.faq-item {border-bottom:1px solid var(--color-border)}
.faq-item:first-child {border-top:1px solid var(--color-border)}
.faq-q {width:100%;display:flex;justify-content:space-between;align-items:center;padding:28px 0;font-size:19px;font-weight:600;color:var(--color-text-main);background:transparent;border:none;cursor:pointer;text-align:left;gap:16px;transition:var(--transition-base)}
.faq-q:hover {color:var(--color-brown)}
.faq-q span {flex:1}
.faq-icon {font-size:14px;color:var(--color-brown);transition:var(--transition-base);flex-shrink:0}
.faq-item.open .faq-icon {transform:rotate(45deg)}
.faq-a {padding:0 0 24px;display:none}
.faq-a.open {display:block}
.faq-a p {font-size:17px;color:var(--color-text-sub);line-height:1.9;padding:24px 32px;background:var(--color-bg-light);border-left:3px solid var(--color-brown)}

/* ===================== INFO SPLIT LAYOUT ===================== */
#sec-info {padding:0}
.info-split {display:grid;grid-template-columns:1fr 1fr;min-height:560px}

/* 좌측 지도 */
.info-map-side {position:relative;overflow:hidden;min-height:560px}
.info-map-side iframe {width:100%;height:100%;min-height:560px;display:block;border:0}

/* 우측 정보 */
.info-detail-side {background:var(--color-white);padding:64px 72px;display:flex;flex-direction:column;justify-content:flex-start;gap:0;align-items:stretch}
.info-detail-block {padding-bottom:36px;margin-bottom:36px;border-bottom:1px solid var(--color-border-light)}
.info-detail-block:last-child {border-bottom:none;padding-bottom:0;margin-bottom:0}

.info-detail-label {font-family:var(--font-en-sans);font-size:13px;font-weight:600;color:var(--color-text-muted);letter-spacing:3px;text-transform:uppercase;margin-bottom:10px}
.info-brand-label {color:var(--color-brown) !important}
.info-icon {color:var(--color-brown);margin-right:10px;font-size:18px;flex-shrink:0;width:20px;text-align:center}
.info-detail-tel {font-family:var(--font-en-sans);font-size:52px;font-weight:700;line-height:1.1;margin-bottom:12px}
.info-detail-tel a {color:var(--color-text-main);transition:var(--transition-base)}
.info-detail-tel a:hover {color:var(--color-brown)}
.info-detail-tel-sub {font-size:var(--font-size-base);color:var(--color-text-muted);margin-top:8px}

.info-detail-title {font-size:24px;font-weight:600;color:var(--color-text-main);margin-bottom:20px;display:flex;align-items:center;gap:0}
.info-hours-split {display:flex;flex-direction:column;gap:14px;margin-bottom:28px}
.info-hours-row {display:flex;align-items:center;gap:20px}
.info-hours-row dt {font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-main);min-width:70px}
.info-hours-row dd {font-size:var(--font-size-lg);color:var(--color-text-sub);display:flex;align-items:center;gap:8px}
.info-hours-row .arrow {color:var(--color-text-muted);font-size:18px}

.info-detail-side address {font-style:normal;margin-bottom:24px}
.info-detail-side address p {font-size:var(--font-size-lg);color:var(--color-text-sub);line-height:1.9}
/* 진료안내 - 지하철 텍스트 굵게 + 포인트컬러 */
.info-subway {font-weight:700;color:var(--color-brown)}

/* 진료안내 - 목요일 공휴일 휴진 주석 */
.info-hours-note {font-size:14px;color:var(--color-text-muted);margin-top:-6px;margin-bottom:0;line-height:1.6}
.info-hours-note-lg {font-size:17px !important;color:var(--color-text-sub) !important;font-weight:500;margin-top:-12px}

.info-btn {display:inline-block;padding:12px 28px;background:var(--color-text-main);color:var(--color-white);font-size:var(--font-size-sm);font-weight:500;transition:var(--transition-base);text-align:center;align-self:flex-start;width:auto}
.info-btn:hover {background:var(--color-brown);color:var(--color-white)}
.info-btn-outline {background:transparent;border:1px solid var(--color-border);color:var(--color-text-sub);margin-left:0;margin-top:8px}
.info-btn-outline:hover {border-color:var(--color-brown);background:transparent;color:var(--color-brown)}

/* ===================== FOOTER ===================== */
#site-footer {position:relative;overflow:hidden;min-height:420px}

/* 배경 이미지 + 오버레이 */
.footer-bg-wrap {position:absolute;inset:0;z-index:0}
.footer-bg-img {width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.footer-bg-overlay {position:absolute;inset:0;background:rgba(8,8,8,0.72)}

/* 콘텐츠 래퍼 */
.footer-content-wrap {position:relative;z-index:1;padding:128px 0 88px}
/* 푸터 inner-wrap: 좌우 패딩 제거 → 로고 왼쪽 끝 정렬 */
.footer-inner {display:flex;align-items:flex-start;justify-content:space-between;gap:40px}
.footer-content-wrap .inner-wrap {padding-left:0 !important;padding-right:0 !important}

/* 좌측: 로고 + 주소 */
.footer-left {flex:1;min-width:0;padding-left:0 !important;margin-left:0 !important}
.footer-logo-area {margin-left:0 !important;padding-left:0 !important}
/* 푸터 로고 — 어두운 배경: brightness(10)으로 흰 로고 표시 */
.footer-logo-img {height:44px;width:auto;filter:brightness(10);opacity:0.92;margin-bottom:28px;display:block;margin-left:0 !important;padding-left:0}
.footer-address {font-style:normal;margin-bottom:20px}
.footer-address p {font-size:17px;color:rgba(255,255,255,0.65);line-height:2.4;display:flex;flex-wrap:wrap;gap:0 4px;align-items:center}
.footer-address a {color:rgba(255,255,255,0.5);transition:var(--transition-base)}
.footer-address a:hover {color:var(--color-brown)}
.footer-address .sep {color:rgba(255,255,255,0.25);margin:0 8px}
.footer-copy {font-family:var(--font-en-sans);font-size:14px;color:rgba(255,255,255,0.35);margin-top:10px;text-transform:uppercase}

/* 우측: SNS + 링크 */
.footer-right {flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;gap:20px}
.footer-sns-nav ul {display:flex;align-items:center;gap:10px;list-style:none;padding:0;margin:0}
.footer-sns-nav a {display:flex;align-items:center;justify-content:center;width:52px;height:52px;border:none;color:rgba(255,255,255,0.65);font-size:30px;transition:var(--transition-base)}
.footer-sns-nav a:hover {color:var(--color-brown)}
.footer-sns-text {font-family:var(--font-en);font-size:13px;font-weight:600;font-style:italic}
.footer-cafe-icon {width:28px;height:28px;object-fit:contain;display:block;filter:brightness(0) invert(1);opacity:0.65;transition:var(--transition-base)}
/* 블로그 hover: #b07f80 색상 */
.footer-sns-cafe:hover .footer-cafe-icon {opacity:1;filter:invert(62%) sepia(18%) saturate(500%) hue-rotate(308deg) brightness(0.92) contrast(1)}
/* 카카오 이미지 아이콘 */
.footer-blog-icon {width:30px;height:30px;object-fit:contain;display:block;filter:brightness(0) invert(1);opacity:0.65;transition:var(--transition-base)}
/* 카카오 hover: #b07f80 색상 */
.footer-sns-blog:hover .footer-blog-icon {opacity:1;filter:invert(62%) sepia(18%) saturate(500%) hue-rotate(308deg) brightness(0.92) contrast(1)}
.footer-link-nav ul {display:flex;align-items:center;gap:0;list-style:none;padding:0;margin:0}
.footer-link-nav li+li::before {content:'|';color:rgba(255,255,255,0.15);margin:0 12px;font-size:12px}
.footer-link-nav a {color:rgba(255,255,255,0.55);font-size:15px;transition:var(--transition-base)}
.footer-link-nav a:hover {color:var(--color-white)}

/* ===================== TOP BUTTON ===================== */
/* top-btn: FAB(bottom:32px,h:64px) 바로 위 gap:10px → bottom:106px, right:32px 동일 */
#top-btn {position:fixed;bottom:32px;right:32px;width:64px;height:64px;background:var(--color-white);border:1px solid var(--color-border);color:var(--color-text-sub);font-size:16px;display:none;align-items:center;justify-content:center;z-index:890;transition:var(--transition-base);box-shadow:var(--shadow-sm);border-radius:50%}
#top-btn.visible {display:flex}
#top-btn:hover {background:var(--color-brown);border-color:var(--color-brown);color:var(--color-white)}

/* ===================== SCROLL ANIMATION ===================== */
.fade-in {opacity:0;transform:translateY(30px);transition:opacity 0.7s ease, transform 0.7s ease}
.fade-in.visible {opacity:1;transform:translateY(0)}
.fade-in-left {opacity:0;transform:translateX(-40px);transition:opacity 0.7s ease, transform 0.7s ease}
.fade-in-left.visible {opacity:1;transform:translateX(0)}
.fade-in-right {opacity:0;transform:translateX(40px);transition:opacity 0.7s ease, transform 0.7s ease}
.fade-in-right.visible {opacity:1;transform:translateX(0)}
.sig-list-item:nth-child(1) {transition-delay:0s}
.sig-list-item:nth-child(2) {transition-delay:0.08s}
.sig-list-item:nth-child(3) {transition-delay:0.16s}
.sig-list-item:nth-child(4) {transition-delay:0.24s}

/* ===================== MOBILE MENU ===================== */
#mobile-nav-overlay {display:none;position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:1990;opacity:0;transition:opacity 0.3s ease}
#mobile-nav-overlay.open {display:block;opacity:1}
#mobile-nav-panel {position:fixed;top:0;right:-100%;width:85%;max-width:360px;height:100%;background:var(--color-white);z-index:2000;overflow-y:auto;transition:right 0.35s ease;padding:0}
#mobile-nav-panel.open {right:0}
.mobile-nav-header {display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--color-border-light)}
.mobile-logo-text {font-family:var(--font-en);font-size:22px;font-weight:400;color:var(--color-black)}
.mobile-close-btn {width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--color-text-sub)}
.mobile-nav-list {list-style:none;padding:16px 0}
.mobile-nav-item {border-bottom:1px solid var(--color-border-light)}
.mobile-nav-link {display:flex;justify-content:space-between;align-items:center;padding:16px 24px;font-size:var(--font-size-base);font-weight:500;color:var(--color-text-main)}
.mobile-nav-link.highlight {color:var(--color-brown)}
.mobile-nav-sub {display:none;background:var(--color-bg-light);padding:8px 0}
.mobile-nav-sub.open {display:block}
.mobile-nav-sub a {display:block;padding:10px 36px;font-size:var(--font-size-sm);color:var(--color-text-sub)}

/* ===================== RESPONSIVE ===================== */

/* 1600px */
@media (max-width:1600px) {
  .inner-wrap {padding:0 60px}
  .footer-content-wrap .inner-wrap {padding-left:0 !important;padding-right:0 !important}
  /* rr-slider 1600px: 카드 크기 유지 */
  .sig-right-inner {padding:52px 44px 52px 52px}
  .sig-visual-content {padding:50px 72px}
  .sig-right-label {font-size:44px}
}

/* 1440px ~ 1200px */
@media (max-width:1440px) {
  .inner-wrap {padding:0 48px}
  .footer-content-wrap .inner-wrap {padding-left:0 !important;padding-right:0 !important}
  /* rr-slider 1440px: 카드 크기 유지 */
  /* #header-main .inner-wrap {grid-template-columns:220px 1fr auto;height:92px}
  .gnb-link {height:92px;line-height:92px;font-size:17px;padding:0 20px} */
  .sub-menu {top:92px}
  .hero-content {padding:0 64px}
  .hero-brand {font-size:64px}
  .sec-title {font-size:44px}
  .sig-visual-title {font-size:44px}
  .sig-right-label {font-size:40px}
  .sig-right-title {font-size:22px}
  .sig-right-inner {padding:44px 44px 44px 52px}
  .sig-visual-content {padding:48px 64px}
}

/* 1200px ~ 1024px */
@media (max-width:1200px) {
  :root {--font-size-hero:52px;--font-size-4xl:40px}
  .inner-wrap {padding:0 40px}
  .footer-content-wrap .inner-wrap {padding-left:0 !important;padding-right:0 !important}
  /* rr-slider 1200px: JS가 카드 너비 직접 계산 */
  /* .rr-review-card 너비는 JS 제어 */
  /* #header-main .inner-wrap {grid-template-columns:180px 1fr auto;height:84px}
  .gnb-link {height:84px;line-height:84px;padding:0 14px;font-size:16px} */
  .sub-menu {top:84px}
  .lang-dropdown {top:84px}
  .info-split {grid-template-columns:1fr 1fr}
  .info-detail-side {padding:48px 48px}
  .hero-content {padding:0 48px}
  .sec-title {font-size:38px}
  /* Signature split stacks vertically */
  #sec-signature {flex-direction:column}
  .sig-split-left {flex:0 0 auto;height:480px}
  .sig-visual-area {height:480px;min-height:unset}
  .sig-visual-content {padding:40px 48px}
  .sig-split-right {flex:none}
  .sig-right-inner {padding:48px 40px}
  .sig-right-label {font-size:36px}
  .sig-right-title {font-size:20px;margin-bottom:36px}
  .ba-grid {grid-template-columns:repeat(2,1fr)}
  .doctor-review-card {grid-template-columns:260px 1fr}
  .doctor-review-thumb img {width:260px;height:260px}
}

/* 1024px ~ 768px */
@media (max-width:1024px) {
  :root {--font-size-hero:44px}
  .section-wrap {padding:90px 0}
  .inner-wrap {padding:0 32px}
  .footer-content-wrap .inner-wrap {padding-left:0 !important;padding-right:0 !important}
  /* rr-slider 1024px: 3개 표시 */
  .sec-title {font-size:34px}
  .gnb-link {padding:0 8px;font-size:15px}
  .review-board-inner {flex-wrap:nowrap}
  .review-board-card {flex:0 0 calc(100% - 0px)}
  .blog-review-card {flex:0 0 calc(50% - 10px)}
  .banner-item {padding:48px 32px}
  .doctor-review-card {grid-template-columns:1fr;grid-template-rows:auto 1fr}
  .doctor-review-thumb {height:280px;overflow:hidden}
  .doctor-review-thumb img {width:100%;height:280px;object-fit:cover;object-position:center top}
  .info-grid {grid-template-columns:1fr}
}

/* 768px ~ 0px (Tablet / Mobile) */
@media (max-width:768px) {
  :root {--font-size-hero:36px;--font-size-4xl:30px;--font-size-2xl:22px;--font-size-xl:20px;--font-size-lg:18px;--font-size-base:16px}
  .inner-wrap {padding:0 20px}
  .footer-content-wrap .inner-wrap {padding-left:0 !important;padding-right:0 !important}
  /* rr-slider 768px: JS가 카드 너비 직접 계산 */
  /* .rr-review-card 너비는 JS 제어 */
  .rr-review-card{flex:1 1 30%;}
  .section-wrap {padding:64px 0}
  .sec-header {margin-bottom:40px}
  /* 1·2. 공통: 모바일 타이틀 크기 키우기 */
  .sec-title {font-size:36px;white-space:normal}

  /* Header Mobile — 전화(좌) | 로고(중앙) | 지구본+햄버거(우) */
  /* #header-main .inner-wrap {position:relative;height:72px;padding:0 16px;display:flex;align-items:center;justify-content:space-between;max-width:100%} */
  /* GNB 숨김 */
  /* #gnb {display:none} */
  /* 전화 아이콘: 좌측 (order:1) — 아이콘 크기 22px */
  #mobile-tel-btn {display:flex;order:1;align-items:center;justify-content:center;width:44px;height:44px;font-size:22px;color:var(--color-text-main);flex-shrink:0;transition:color 0.3s ease}
  #mobile-tel-btn:hover {color:var(--color-brown)}
  /* 히어로 위(어두운 배경): 흰색 */
  .hero-header #mobile-tel-btn {color:rgba(255,255,255,0.85)}
  /* 흰 헤더 영역(히어로 벗어난 후): 검정 */
  body:not(.hero-header) #mobile-tel-btn {color:var(--color-text-main)}
  /* 로고: absolute로 완벽 중앙 고정 (order 무관) */
  #logo {order:2;flex:0 0 auto;position:absolute;left:50%;transform:translateX(-50%)}
  /* 헤더유틸(지구본+햄버거): 우측 (order:3) */
  /* #header-util {order:3}
  #mobile-menu-btn {display:flex} */
  /* .logo-img {height:38px} */
  /* 지구본 모바일 표시 — margin-left로 햄버거와 간격 벌려 우측으로 이동 */
  /* .lang-selector {display:inline-flex;margin-right:0}
  .lang-globe-btn {padding:4px 4px}
  .lang-globe-img {width:24px;height:24px}
  #mobile-menu-btn {margin-left:10px} */
  /* 모바일 lang-dropdown: 헤더 하단에서 */
  /* .lang-dropdown {top:72px}
  .header-util-divider {display:none}
  .header-member-nav {display:none} */
  /* 모바일 햄버거: 히어로 위(어두운 배경) 흰색, 흰 헤더 영역 검정 */
  /* .hero-header #mobile-menu-btn span {background:rgba(255,255,255,0.9)}
  body:not(.hero-header) #mobile-menu-btn span {background:var(--color-black)} */

  /* Hero Mobile */
  #sec-hero {min-height:580px}
  .hero-content {padding:0 20px}
  .hero-sub-text {font-size:var(--font-size-sm)}
  .hero-brand {font-size:44px}
  .hero-title-en {font-size:var(--font-size-base)}
  /* scroll-indicator removed */

  /* Signature Mobile */
  #sec-signature {flex-direction:column}
  .sig-split-left {flex:0 0 auto;height:380px}
  .sig-visual-area {height:380px;min-height:unset}
  .sig-visual-content {padding:32px 24px}
  .sig-visual-title {font-size:32px}
  .sig-split-right {flex:none}
  .sig-right-inner {padding:36px 24px}
  .sig-right-label {font-size:28px}
  .sig-right-title {font-size:18px;margin-bottom:28px}
  .sig-list-btn {padding:18px 0}
  .sig-list-name {font-size:var(--font-size-base)}

  /* Tab Menu */
  /* .tab-menu {overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap}
  .tab-menu::-webkit-scrollbar {display:none}
  .tab-btn {white-space:nowrap;padding:12px 20px;font-size:var(--font-size-sm)} */

  /* Before After */
  .ba-grid {grid-template-columns:1fr}

  /* 3. 스페셜 리뷰: 큰사진(order1) → 썸네일(order2) → 텍스트/버튼(order3) */
  .special-review-body {flex-direction:column;flex-wrap:nowrap;gap:0}
  /* 큰 전후사진 블록: 가장 위 */
  .special-review-center {order:1;flex:unset;width:100%}
  /* 썸네일 블록: 가운데 */
  .special-review-right {order:2;width:100%;flex-shrink:unset;margin-top:12px;align-self:auto}
  /* 텍스트/버튼 블록: 가장 아래 */
  .sr-bottom-outer {order:3;flex:unset;width:100%}
  .sr-thumb-list {flex-direction:row;flex-wrap:nowrap;overflow-x:auto;gap:10px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .sr-thumb-list::-webkit-scrollbar {display:none}
  .sr-thumb-item {flex:0 0 120px}
  .sr-bottom-area {flex-direction:column;gap:10px;margin-top:14px}
  /* 수술명 텍스트: 한 줄 + 크기 축소 */
  .sr-surgery-name-main {font-size:20px;white-space:nowrap}
  .sr-surgery-name-sub {font-size:15px;white-space:nowrap}
  .sr-bottom-left {gap:8px;flex-wrap:nowrap;align-items:baseline}
  .special-review-btns {width:100%;margin-left:0}
  .special-review-btns .btn-outline,
  .special-review-btns .btn-fill {width:100%;max-width:none}
  .special-review-disclaimer {min-width:unset;width:100%}

  /* CTA */
  .ba-cta {flex-direction:column;align-items:center}
  .btn-outline, .btn-fill {width:100%;max-width:320px;text-align:center}

  /* Photo Review — 모바일: 1컬럼 */
  .pr-grid {grid-template-columns:1fr;gap:20px}
  .review-slide-item {flex:0 0 calc(80% - 10px)}
  .review-slider {padding:0 24px}

  /* Real Review Pair Grid — 모바일: 1컬럼 */
  .rr-pair-grid {grid-template-columns:1fr;gap:20px}

  /* Real Review Board */
  .review-board-card {flex:0 0 calc(100%)}
  .review-board-card {padding:24px}

  /* Special Review 하단 버튼 모바일 */
  .sr-bottom-area {flex-wrap:wrap;gap:14px}
  .sr-bottom-left {flex-wrap:wrap}
  .special-review-btns {margin-left:0;flex-direction:column;width:100%}
  .special-review-btns .btn-outline,
  .special-review-btns .btn-fill {width:100%}

  /* 4. 유튜브: 헤더 타이틀 가운데 정렬 + 우측 버튼 숨기고 최하단 버튼 표시 */
  /* .yt-section-header {flex-wrap:nowrap;justify-content:center}
  .yt-section-header .sec-title {text-align:center;width:100%}
  .yt-header-right {display:none}
  .yt-header-right .yt-channel-btn {display:none}
  .yt-mobile-bottom {display:flex;justify-content:center;margin-top:24px}
  .yt-channel-btn-mobile {width:100%;justify-content:center}
  .yt-layout {grid-template-columns:1fr}
  .yt-list-panel {display:none}
  .yt-grid {grid-template-columns:1fr} */

  /* Special Review 3컬럼 → 1컬럼 */
  .special-review-layout {grid-template-columns:1fr;gap:24px}

  /* Shorts — 모바일: 가로 스크롤 (JS가 overflow-x:auto 활성화) */
  .shorts-grid {gap:10px}
  .shorts-card {flex:0 0 140px;flex-shrink:0}

  /* Doctor Review — 타이틀+버튼 겹침 방지 */
  #sec-doctor-review .sec-header {margin-bottom:56px;padding-bottom:12px}
  .doctor-review-content {padding:24px}
  .doctor-review-title {font-size:var(--font-size-xl)}

  /* ── 대표원장 리뷰 & 블로그 리뷰: 모바일 scroll-snap 스와이프 ──
     overflow-x:scroll + scroll-snap:center → 카드가 뷰포트 정중앙에 snap
     카드 너비와 트랙 패딩은 JS(initMobileSwipes)가 clientWidth 기준으로 계산해 px로 주입 */
  .doctor-review-slider,
  #blog-review-slider {
    overflow-x: scroll;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    cursor: default;
  }
  .doctor-review-slider::-webkit-scrollbar,
  #blog-review-slider::-webkit-scrollbar { display: none; }

  /* 트랙: flex nowrap, JS가 gap·padding·카드너비 주입 */
  #doctor-review-slider .blog-review-inner,
  #blog-review-slider   .blog-review-inner {
    flex-wrap: nowrap;
    transition: none;
    transform: none !important;
  }

  /* 카드: snap align start (pad 방식으로 중앙 정렬) */
  #doctor-review-slider .blog-review-card,
  #blog-review-slider   .blog-review-card {
    flex: 0 0 auto;   /* 너비는 JS 주입 */
    scroll-snap-align: start;
    scroll-snap-stop: always;width:100%;
  }

  .faq-q,.faq-a p{font-size:16px;}

  /* Banner */
  .banner-grid {grid-template-columns:1fr}
  .banner-item {padding:40px 24px}
  .banner-en {font-size:36px}
  .banner-tagline {font-size:var(--font-size-lg)}

  /* Info split mobile */
  .info-split {grid-template-columns:1fr;min-height:auto}
  .info-map-side {min-height:300px}
  .info-map-side iframe {min-height:300px}
  .info-detail-side {padding:40px 24px}
  /* 9. 진료안내: 전화번호 크기 키우기 */
  .info-detail-tel {font-size:38px}

  /* +버튼 공통: 모바일에서 크기 축소 (44px → 36px, 폰트 18px → 16px) */
  .sec-add-btn {width:36px;height:36px;font-size:16px}

  /* 10. 푸터: 가운데 정렬 */
  .footer-inner {flex-direction:column;gap:32px;align-items:center;text-align:center}
  .footer-left {display:flex;flex-direction:column;align-items:center;width:100%}
  .footer-logo-area {display:flex;justify-content:center;width:100%}
  .footer-logo-img {margin-left:auto !important;margin-right:auto;display:block}
  .footer-address {text-align:center;margin-bottom:12px}
  .footer-address p {flex-direction:column;gap:0;justify-content:center;line-height:1.7;font-size:15px}
  .footer-copy {text-align:center}
  .footer-right {align-items:center;width:100%}
  .footer-sns-nav ul {justify-content:center}
  .footer-link-nav ul {justify-content:center}
  .footer-address .sep {display:none}

  /* FAB 위치 모바일: right:16px, bottom:20px */
  #fab-wrap {right:16px;bottom:88px}
  #fab-toggle {width:56px;height:56px}

  /* Top Btn 모바일: FAB 바로 위 (76+12=88px) + right 동일 */
  #top-btn {right:16px;bottom:24px;width:56px;height:56px;font-size:14px}

  /* Slider Controls */
  .slider-controls {justify-content:center}
}

/* 480px ~ 0px (Small Mobile) */
@media (max-width:480px) {
  :root {--font-size-hero:36px;--font-size-3xl:24px}
  .hero-brand {font-size:80px}
  .hero-sub-text {font-size:var(--font-size-sm)}
  .review-slide-item {flex:0 0 calc(90% - 10px)}
  .review-slider {padding:0 16px}
  .sig-number {font-size:42px}
}





/* 추가 css */

/* 260916 head.php */
.lang-globe-img{max-width: fit-content;}
@media (max-width:1800px) {
  #header-main .inner-wrap{width: 95%;}
}
@media (max-width:1600px) {
  #header-main .inner-wrap {height:92px}
  .gnb-link {height:92px;line-height:92px;font-size:17px;padding:0 20px;}
  .lang-dropdown{top: calc(100% + 27px);}
}
@media (max-width:1440px) {  
  #header-main .inner-wrap {height:84px}
  .logo-img {height:38px}
  .gnb-link {height:84px;line-height:84px;padding:0 14px;font-size:16px}
  .lang-dropdown{top: calc(100% + 23px);}
}
@media (max-width:1200px) {
  #gnb {display:none}
  #header-main .inner-wrap {width:calc(100% - 32px);position:relative;height:72px;padding:0;display:flex;align-items:center;justify-content:space-between;max-width:100%;}
  .lang-dropdown{top: calc(100% + 21px);}
  #mobile-tel-btn {display:flex;order:1;align-items:center;justify-content:center;width:44px;height:44px;font-size:22px;color:var(--color-text-main);flex-shrink:0;transition:color 0.3s ease}
  #mobile-tel-btn:hover {color:var(--color-brown)}
  .hero-header #mobile-tel-btn {color:rgba(255,255,255,0.85)}
  body:not(.hero-header) #mobile-tel-btn {color:var(--color-text-main)}
  #logo {order:2;flex:0 0 auto;position:absolute;left:50%;transform:translateX(-50%)}
  #header-util {order:3}
  #mobile-menu-btn {display:flex}
  .lang-selector {display:inline-flex;margin-right:0}
  .lang-globe-btn {padding:4px 4px}
  .lang-globe-img {width:24px;height:24px}
  #mobile-menu-btn {margin-left:10px}
  .header-util-divider {display:none;}
  .header-member-nav {display:none;}
  .hero-header #mobile-menu-btn span {background:rgba(255,255,255,0.9)}
  body:not(.hero-header) #mobile-menu-btn span {background:var(--color-black)}
}

/* 260916 tail.php */
.footer-link-nav ul{justify-content: flex-end;}
@media screen and (max-width:1600px){
  .footer-content-wrap .inner-wrap{width: 95%;}
}
@media (max-width:768px) {
  .footer-link-nav ul{justify-content: center;}
}


/* 260916 index.php */
@media (max-width:1024px){
  /* Tab Menu */
  .tab-menu {overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap}
  .tab-menu::-webkit-scrollbar {display:none}
  .tab-btn {white-space:nowrap;padding:12px 20px;font-size:var(--font-size-sm)}
  .yt-section-header {flex-wrap:nowrap;justify-content:center}
  .yt-section-header .sec-title {text-align:center;width:100%}
  .yt-header-right {display:none}
  .yt-header-right .yt-channel-btn {display:none}
  .yt-mobile-bottom {display:flex;justify-content:center;margin-top:24px}
  .yt-channel-btn-mobile {width:100%;justify-content:center}
  .yt-layout {grid-template-columns:1fr}
  .yt-list-panel {display:none}
  .yt-grid {grid-template-columns:1fr}
}
@media (max-width:768px) {
  .sec-title{word-break:keep-all;}
}