/* ============================================================
   UTILITY CLASSES (ported from original 2000pain.com CSS)
   ============================================================ */

/* Color utilities */
.bh_color_main { color: #eb6100 !important }
.bh_color_sub { color: #00215b !important }
.bh_color_white { color: #fff !important }
.bh_color_gray_900 { color: #111 !important }
.bh_color_gray_700 { color: #444 !important }
.bh_color_gray_600 { color: #666 !important }
.bh_color_gray_500 { color: #888 !important }

/* Background color utilities */
.bh_bg_color_main { background-color: #eb6100 !important }
.bh_bg_color_sub { background-color: #00215b !important }
.bh_bg_color_white { background: #fff !important }
.bh_bg_color_main_300 { background-color: rgba(235,97,0,0.3) !important }
.bh_bg_color_main_700 { background-color: rgba(235,97,0,0.7) !important }
.bh_bg_color_main_900 { background-color: rgba(235,97,0,0.9) !important }
.bh_bg_color_gray_50 { background: #fafafa !important }
.bh_bg_color_gray_100 { background: #f5f5f5 !important }
.bh_bg_color_gray_200 { background: #eee !important }
.bh_bg_color_gray_300 { background: #e0e0e0 !important }

/* Font size utilities (px-based) */
.fs-10 { font-size: 10px !important }
.fs-12 { font-size: 12px !important }
.fs-14 { font-size: 14px !important }
.fs-16 { font-size: 16px !important }
.fs-17 { font-size: 17px !important }
.fs-18 { font-size: 18px !important }
.fs-19 { font-size: 19px !important }
.fs-20 { font-size: 20px !important }
.fs-23 { font-size: 23px !important }
.fs-24 { font-size: 24px !important }
.fs-28 { font-size: 28px !important }
.fs-30 { font-size: clamp(20px,3vw,30px) !important }
.fs-32 { font-size: 32px !important }
.fs-36 { font-size: clamp(20px,2.4vw,30px) !important }
.fs-40 { font-size: clamp(24px,2.6vw,34px) !important }
.fs-48 { font-size: clamp(24px,2.8vw,37px) !important }
.fs-58 { font-size: clamp(24px,3.2vw,44px) !important }
.fs-64 { font-size: clamp(28px,3.6vw,48px) !important }

/* Font weight */
.fw-bb { font-weight: 900 !important }
.fw-b  { font-weight: 700 !important }
.fw-m  { font-weight: 500 !important }
.fw-r  { font-weight: 400 !important }

/* Display */
.ds-b  { display: block !important }
.ds-n  { display: none !important }
.ds-f  { display: flex !important }
.ds-ib { display: inline-block !important }
.ds-if { display: inline-flex !important }

/* Position */
.po-r  { position: relative !important }
.po-a  { position: absolute !important }

/* Sizing */
.w-100 { width: 100% !important }
.h-100 { height: 100% !important }

/* Text align */
.ta-c  { text-align: center !important }
.ta-r  { text-align: right !important }
.ta-l  { text-align: left !important }

/* Align items / justify content */
.ai-c  { align-items: center !important }
.ai-s  { align-items: flex-start !important }
.ai-e  { align-items: flex-end !important }
.jc-c  { justify-content: center !important }
.jc-e  { justify-content: flex-end !important }
.jc-sb { justify-content: space-between !important }

/* Margin top */
.mt-0   { margin-top: 0 !important }
.mt-5   { margin-top: 5px !important }
.mt-10  { margin-top: 10px !important }
.mt-15  { margin-top: 15px !important }
.mt-20  { margin-top: 20px !important }
.mt-25  { margin-top: 25px !important }
.mt-30  { margin-top: 30px !important }
.mt-40  { margin-top: 40px !important }
.mt-50  { margin-top: 50px !important }
.mt-60  { margin-top: 60px !important }
.mt-65  { margin-top: 65px !important }
.mt-80  { margin-top: 80px !important }
.mt-100 { margin-top: 100px !important }

/* Margin bottom */
.mb-0   { margin-bottom: 0 !important }
.mb-5   { margin-bottom: 5px !important }
.mb-10  { margin-bottom: 10px !important }
.mb-15  { margin-bottom: 15px !important }
.mb-20  { margin-bottom: 20px !important }
.mb-30  { margin-bottom: 30px !important }
.mb-40  { margin-bottom: 40px !important }
.mb-50  { margin-bottom: 50px !important }

/* Padding */
.pt-30  { padding-top: 30px !important }
.pt-50  { padding-top: 50px !important }
.pt-80  { padding-top: 80px !important }
.pt-100 { padding-top: 100px !important }
.pb-30  { padding-bottom: 30px !important }
.pb-50  { padding-bottom: 50px !important }
.pb-100 { padding-bottom: 100px !important }
.pl-0   { padding-left: 0 !important }
.pl-10  { padding-left: 10px !important }
.pl-20  { padding-left: 20px !important }
.pr-0   { padding-right: 0 !important }
.pr-10  { padding-right: 10px !important }
.pd-0   { padding: 0 !important }
.pd-10  { padding: 10px !important }
.pd-15  { padding: 15px !important }
.pd-20  { padding: 20px !important }
.pd-30  { padding: 30px !important }

/* Border-radius */
.round-4  { border-radius: 4px !important }
.round-8  { border-radius: 8px !important }
.round-50 { border-radius: 50% !important }

/* BH Grid system */
.bh_row { display: flex; flex-wrap: wrap; }
.bh_row.no-gutters { margin-left: 0; margin-right: 0; }
.bh_row.no-gutters > [class*="col-"] { padding-left: 0; padding-right: 0; }
.bh_row.gutters-5  { margin-left: -2.5px; margin-right: -2.5px; }
.bh_row.gutters-5  > [class*="col-"] { padding-left: 2.5px; padding-right: 2.5px; }
.bh_row.gutters-15 { margin-left: -7.5px; margin-right: -7.5px; }
.bh_row.gutters-15 > [class*="col-"] { padding-left: 7.5px; padding-right: 7.5px; }
.bh_row.gutters-30 { margin-left: -15px; margin-right: -15px; }
.bh_row.gutters-30 > [class*="col-"] { padding-left: 15px; padding-right: 15px; }

.col    { flex: 1 0 0%; }
.col-1  { flex: 0 0 8.333%;  max-width: 8.333%; }
.col-2  { flex: 0 0 16.667%; max-width: 16.667%; }
.col-3  { flex: 0 0 25%;     max-width: 25%; }
.col-4  { flex: 0 0 33.333%; max-width: 33.333%; }
.col-5  { flex: 0 0 41.667%; max-width: 41.667%; }
.col-6  { flex: 0 0 50%;     max-width: 50%; }
.col-7  { flex: 0 0 58.333%; max-width: 58.333%; }
.col-8  { flex: 0 0 66.667%; max-width: 66.667%; }
.col-9  { flex: 0 0 75%;     max-width: 75%; }
.col-10 { flex: 0 0 83.333%; max-width: 83.333%; }
.col-11 { flex: 0 0 91.667%; max-width: 91.667%; }
.col-12 { flex: 0 0 100%;    max-width: 100%; }
.col-auto { flex: 0 0 auto; max-width: none; }

/* lg: responsive prefix — 992px+ */
@media (min-width: 992px) {
  .lg\:col    { flex: 1 0 0%; }
  .lg\:col-3  { flex: 0 0 25%;     max-width: 25%; }
  .lg\:col-4  { flex: 0 0 33.333%; max-width: 33.333%; }
  .lg\:col-5  { flex: 0 0 41.667%; max-width: 41.667%; }
  .lg\:col-6  { flex: 0 0 50%;     max-width: 50%; }
  .lg\:col-7  { flex: 0 0 58.333%; max-width: 58.333%; }
  .lg\:col-8  { flex: 0 0 66.667%; max-width: 66.667%; }
  .lg\:ds-b   { display: block !important }
  .lg\:ds-n   { display: none !important }
  .lg\:ds-f   { display: flex !important }
  .lg\:ds-ib  { display: inline-block !important }
  .lg\:ta-r   { text-align: right !important }
  .lg\:mt-0   { margin-top: 0 !important }
  .lg\:mt-0   { margin-top: 0 !important }
  .lg\:mt-50  { margin-top: 50px !important }
  .lg\:mt-80  { margin-top: 80px !important }
  .lg\:mt-100 { margin-top: 100px !important }
  .lg\:mb-20  { margin-bottom: 20px !important }
  .lg\:mb-50  { margin-bottom: 50px !important }
  .lg\:pt-100 { padding-top: 100px !important }
  .lg\:pb-100 { padding-bottom: 100px !important }
  .lg\:fs-20  { font-size: 20px !important }
  .lg\:fs-24  { font-size: 21px !important }
  .lg\:fs-36  { font-size: 28px !important }
  .lg\:fs-48  { font-size: 38px !important }
  .lg\:fs-58  { font-size: 46px !important }
  .lg\:fs-64  { font-size: 50px !important }
  .lg\:ds-ib  { display: inline-block !important }
  .lg\:h-100  { height: 100% !important }
}

/* md: prefix — 768px+ */
@media (min-width: 768px) {
  .md\:col { flex: 1 0 0%; }
}

/* Negative margin full-bleed */
.ml--bh_wrap { margin-left: calc(-50vw + 50%); margin-right: calc(-50vw + 50%); }

/* BH Tab component */
.bh_tab_wrap { position: relative; }
.bh_tab3 ul { display: flex; flex-wrap: wrap; list-style: none; padding: 0; margin: 0; border-bottom: 1px solid #ddd; }
.bh_tab3 ul li:not([class*="col"]) { flex: 1; }
.bh_tab_btn { display: block; padding: 15px 10px; text-align: center; cursor: pointer; border-bottom: 3px solid transparent; font-size: 2.1rem; font-weight: 700; color: #666; transition: all 0.2s; }
.bh_tab_btn.active, .bh_tab_btn:hover { color: #eb6100; border-bottom-color: #eb6100; }
.bh_tab_li { display: none; padding-top: 30px; }
.bh_tab_li.on { display: block; }

/* ============================================================
   2000PAIN.COM 완전 클론 CSS
   --bh_color_main: #eb6100 (오렌지)
   --bh_color_sub:  #00215b (네이비)
   배경 다크: #27211a
   ============================================================ */
:root {
  --main:    #eb6100;
  --main-300:#f3a066;
  --main-400:#ef8133;
  --main-600:#bc4e00;
  --main-700:#8d3a00;
  --sub:     #00215b;
  --point:   #f6ab00;
  --gray-900:#212121;
  --gray-700:#616161;
  --gray-600:#757575;
  --gray-500:#9e9e9e;
  --gray-200:#eeeeee;
  --dark-bg: #27211a;
  --wrap:    min(1600px, calc(100% - 64px));
  --header-h: 90px;
  --trans:   0.3s ease;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;overflow-x:hidden}
body{font-family:'Noto Sans KR',sans-serif;color:var(--gray-900);background:#fff;line-height:1.2;overflow-x:clip;word-break:keep-all;overflow-wrap:break-word}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
button{font:inherit;cursor:pointer;border:none;background:none}
ul{list-style:none}

.bh_wrap{width:var(--wrap);margin-inline:auto}
.ta-c{text-align:center}
.ta-r{text-align:right}
.fw-bb{font-weight:900}
.fw-b{font-weight:700}
.fw-m{font-weight:500}
.fs-14{font-size:.875rem}
.fs-18{font-size:1.125rem}
.fs-20{font-size:1.25rem}
.fs-24{font-size:1.5rem}
.fs-36{font-size:clamp(1.2rem,2.4vw,1.85rem)}
.fs-48{font-size:clamp(1.5rem,2.8vw,2.3rem)}
.fs-58{font-size:clamp(1.8rem,3.2vw,2.75rem)}
.fs-64{font-size:clamp(2rem,3.6vw,3rem)}
.mt-5{margin-top:.3rem}
.mt-10{margin-top:.625rem}
.mt-15{margin-top:.9375rem}
.mt-20{margin-top:1.25rem}
.mt-30{margin-top:1.875rem}
.mt-45{margin-top:2.8125rem}
.mt-50{margin-top:3.125rem}
.mt-65{margin-top:4.0625rem}
.mt-80{margin-top:5rem}
.mt-100{margin-top:6.25rem}
.mb-10{margin-bottom:.625rem}
.mb-20{margin-bottom:1.25rem}
.mb-30{margin-bottom:1.875rem}
.mb-50{margin-bottom:3.125rem}
.ml-10{margin-left:.625rem}
.w-100{width:100%}
.d-block{display:block}
.mobile-only{display:none}
.color-main{color:var(--main)}
.color-sub{color:var(--sub)}
.color-point{color:var(--point)}
.color-white{color:#fff}
.color-gray-900{color:var(--gray-900)}
.color-gray-700{color:var(--gray-700)}
.color-gray-600{color:var(--gray-600)}
.color-gray-500{color:var(--gray-500)}
.bg-main-300{background:var(--main-300)}
.bg-main{background:var(--main)}
.bg-main-600{background:var(--main-600)}
.bg-main-700{background:var(--main-700)}

/* animate-in 기본 상태 */
.animate-in{opacity:0;transform:translateY(30px);transition:opacity .65s ease,transform .65s ease}
.animate-in.anim-done{opacity:1;transform:none}
.animate-in[data-anim-type="fade-in-left"]{transform:translateX(-30px)}
.animate-in[data-anim-type="fade-in-right"]{transform:translateX(30px)}
.animate-in[data-anim-type="fade-in-up"]{transform:translateY(30px)}
.animate-in.anim-done{transform:none!important}

/* ============================================================ HEADER */
.header_wrap{
  position:fixed;top:0;left:0;right:0;
  background:#fff;
  border-bottom:1px solid var(--gray-200);
  z-index:1000;
  transition:box-shadow var(--trans);
}
.header_wrap.scrolled{box-shadow:0 2px 20px rgba(0,0,0,.1)}
.header_inner{height:var(--header-h)}
.header_row{
  display:flex;align-items:center;gap:0;
  height:var(--header-h);
  width:var(--wrap);margin-inline:auto;
}
.logo{flex-shrink:0}
.logo a{display:inline-flex;align-items:center;gap:10px;text-decoration:none}
.logo img{height:52px;width:auto;transform:translateY(8px)}
.logo_text_link{display:inline-flex;align-items:center;flex-shrink:0;text-decoration:none;margin-left:10px}
.logo_text_group{display:flex;flex-direction:column;justify-content:center;line-height:1.1}
.logo_text_pretendard{
  font-family:'Noto Sans KR',sans-serif;
  font-weight:800;
  font-size:1.6rem;
  color:#4a2e1a;
  white-space:nowrap;
  letter-spacing:-.02em;
}
.logo_text_eng{
  font-family:'Noto Sans KR',sans-serif;
  font-size:.6rem;
  font-weight:600;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#9a7b5c;
  white-space:nowrap;
  margin-top:2px;
}
.main_menu{margin-left:auto}
.logo_name{font-family:'Playfair Display',Georgia,serif;font-size:1.35rem;font-weight:600;letter-spacing:.02em;color:#4a2e1a;white-space:nowrap}
.main_menu ul{display:flex;align-items:center}
.main_menu ul li a{
  display:block;
  padding:0 22px;
  height:var(--header-h);
  line-height:var(--header-h);
  font-size:20px;font-weight:500;
  color:#4a2e1a;
  white-space:nowrap;
  border-bottom:3px solid transparent;
  transition:color var(--trans),border-color var(--trans),background var(--trans);
}
.main_menu ul li a:hover,.main_menu ul li a.active{
  color:var(--main);
  border-bottom-color:var(--main);
  background:rgba(235,97,0,.08);
}
.main_menu ul li a.active{
  font-weight:700;
  background:rgba(235,97,0,.12);
}
.mobile_menu_btn{display:none;font-size:1.5rem;color:var(--gray-900);padding:8px;margin-left:12px}
.mobile_nav{display:none;background:#fff;border-top:1px solid var(--gray-200)}
.mobile_nav.open{display:block}
.mobile_nav ul li a{display:block;padding:14px 24px;font-size:.95rem;font-weight:500;border-bottom:1px solid var(--gray-200)}

/* ============================================================ HERO / SLIDER */
.slider_wrap{
  position:relative;
  height:100vh;min-height:600px;
  margin-top:0;
  overflow:hidden;
  scroll-snap-align:start;
}
.section{scroll-snap-align:start}
.swiper-main{height:100%}
.swiper-main .swiper-slide.item{
  background-size:cover;background-position:center;
  position:relative;overflow:hidden;
}
/* 켄번스(영상 같은) 배경 */
.slide_bg{
  position:absolute;inset:0;z-index:0;
  background-size:cover;background-position:center;
  transform:scale(1.02);
  will-change:transform;
}
.swiper-main .swiper-slide-active .slide_bg{
  animation:kenburnsZoomIn 8s ease-out forwards;
}
.swiper-main .swiper-slide-active .slide_bg.slide_bg--r{
  animation:kenburnsZoomPan 8s ease-out forwards;
}
@keyframes kenburnsZoomIn{
  from{transform:scale(1.02)}
  to{transform:scale(1.14)}
}
@keyframes kenburnsZoomPan{
  from{transform:scale(1.14) translate(2%,0)}
  to{transform:scale(1.02) translate(-1%,0)}
}
.slider_content_wrap{position:absolute;inset:0;display:flex;align-items:center;z-index:2}
.bh_wrap.slider_content{position:relative;z-index:1}
.slider_content{padding-top:var(--header-h)}
.slider_content_text_1{
  display:block;
  font-size:clamp(.8rem,1.5vw,1.1rem);
  font-weight:400;letter-spacing:.25em;
  color:rgba(255,255,255,.75);
  margin-bottom:1.5rem;
  opacity:0;transform:translateY(-20px);
  transition:opacity .8s .2s,transform .8s .2s;
}
.slider_content_text_1.aos-anim,
.swiper-slide-active .slider_content_text_1{opacity:1;transform:none}
.slider_content_text_2{
  display:block;
  opacity:0;transform:translateY(30px);
  transition:opacity .8s .6s,transform .8s .6s;
}
.slider_content_text_2.aos-anim,
.swiper-slide-active .slider_content_text_2{opacity:1;transform:none}
.slider_content_text_2 .text_special_num{
  font-size:clamp(.8rem,1.2vw,1rem);
  font-weight:500;color:rgba(255,255,255,.7);
  letter-spacing:.15em;text-transform:uppercase;
  margin-bottom:.6rem;
}
.slider_content_text_2 .text1{
  font-family:'Playfair Display',Georgia,serif;
  font-size:clamp(2.6rem,7vw,6rem);
  font-weight:600;font-style:italic;line-height:1.1;color:#fff;
  letter-spacing:.01em;
  text-shadow:0 4px 30px rgba(0,0,0,.35);
}
.slider_content_text_2 .text2{
  font-size:clamp(.85rem,1.5vw,1.1rem);
  font-weight:400;color:rgba(255,255,255,.8);
  margin-top:.8rem;line-height:1.2;
}
/* 오버레이 */
.swiper-main .swiper-slide.item::after{
  content:'';position:absolute;inset:0;z-index:1;
  background:linear-gradient(to right,rgba(13,22,40,.7) 0%,rgba(13,22,40,.45) 45%,rgba(13,22,40,.25) 100%);
}
.slider_content_wrap>.bh_wrap{position:relative;z-index:2}

/* 스크롤 다운 */
.main_scroll{
  position:absolute;bottom:36px;left:50%;transform:translateX(-50%);z-index:10;
}
.scroll_chevron{
  font-size:2.4rem;
  color:rgba(255,255,255,.75);
  display:block;
  animation:bounceArrow 1.6s ease-in-out infinite;
}
@keyframes bounceArrow{
  0%,100%{transform:translateY(0);opacity:.75}
  50%{transform:translateY(10px);opacity:1}
}

/* 페이지네이션 */
.bh_wrap:has(.main_slide_tools){position:absolute;bottom:30px;left:0;right:0;z-index:10}
.main_slide_tools{display:flex;align-items:center;gap:16px;padding-left:20px}
.main_slide_pagination{display:none}
.main_slide_pagination_bullet{
  display:flex;align-items:center;gap:8px;cursor:pointer;
  color:rgba(255,255,255,.5);font-size:.75rem;font-weight:700;
  transition:color var(--trans);
}
.main_slide_pagination_bullet .num{min-width:20px}
.main_slide_pagination_bullet .bar{
  width:40px;height:2px;background:rgba(255,255,255,.3);position:relative;overflow:hidden;
}
.main_slide_pagination_bullet .bar::after{
  content:'';position:absolute;left:0;top:0;height:100%;
  background:#fff;width:calc(var(--progress,0)*100%);transition:width .05s linear;
}
.main_slide_pagination_bullet.active{color:#fff}
.main_slide_btn{color:rgba(255,255,255,.7);font-size:1.4rem;line-height:1}

/* ============================================================ SECTION 공통 */
.section{padding:72px 0}

/* ============================================================ SECTION 1 병원소개 */
.section1{background:#fff}

.se1_wrap{padding:60px 0 80px}
.se1_wrap>p.fs-58{font-size:clamp(1.7rem,3vw,2.6rem)}

/* cycle animation — 3 items, 12s total (4s each) */
@keyframes se1-cycle {
  0%        { opacity:0; }
  4%        { opacity:1; }          /* 빠르게 등장 */
  30%       { opacity:1; }          /* 유지 */
  33%       { opacity:0; }          /* 빠르게 사라짐 */
  100%      { opacity:0; }
}
.se1_cycle_wrap{
  position:relative;
  width:100%;
  max-width:1180px;
  margin-inline:auto;
  aspect-ratio:16/6;
  max-height:480px;
  overflow:hidden;
  border-radius:6px;
}
.se1_cycle_item{
  position:absolute;inset:0;
  opacity:0;
  animation: se1-cycle 12s ease-in-out infinite;
}
.se1_cycle_item1{ animation-delay:0s; }
.se1_cycle_item2{ animation-delay:4s; }
.se1_cycle_item3{ animation-delay:8s; }
.se1_cycle_item img{
  width:100%;height:100%;object-fit:cover;display:block;
}
.se1_cycle_overlay{
  position:absolute;inset:0;
  background:linear-gradient(to top, rgba(0,0,0,.65) 0%, rgba(0,0,0,.15) 50%, transparent 100%);
  display:flex;flex-direction:column;justify-content:flex-end;
  padding:clamp(20px,5vw,60px);
  color:#fff;
}
.se1_cy_num{
  font-size:.9rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
  color:rgba(255,255,255,.7);margin-bottom:12px;
}
.se1_cy_title{
  font-size:clamp(1.4rem,3.5vw,2.6rem);font-weight:900;line-height:1.2;
  margin-bottom:16px;
}
.se1_cy_desc{
  font-size:clamp(.85rem,1.5vw,1.05rem);line-height:1.2;
  color:rgba(255,255,255,.85);max-width:600px;
}
@media(max-width:991.98px){
  .se1_cycle_wrap{ aspect-ratio:4/3; }
}

/* ============================================================ SECTION 2 치료원칙 */
/* 진료철학 / 진료원칙 인덱스 태그 */
.se2_index_label{margin-bottom:20px}
.se2_index_tag{
  display:inline-flex;align-items:center;gap:12px;
  font-size:3rem;font-weight:700;letter-spacing:.2em;
  color:rgba(255,255,255,.7);
}
.se2_index_tag::before{
  content:'';display:inline-block;width:36px;height:2px;background:var(--main);flex-shrink:0;
}
.se2_principle_label{margin-top:0;margin-bottom:30px}
.section2{background:var(--dark-bg);padding:0}
#section2>.bh_wrap{max-width:100%;padding:0}
#section2 .se2_principle{background:linear-gradient(180deg,#2E2519 0%,#241B11 100%);padding:100px 0;margin-top:100px}
#section2 .back{width:100vw;height:calc(100% + 200px);background-color:rgba(0,0,0,.2);position:absolute;top:-100px;left:calc(((100vw - 1170px) / 2) * -1);z-index:10}
#section2 .se2_wrap{position:relative;z-index:11}
#section2 .top_title{display:flex;justify-content:space-between}
#section2 .top_title .left{position:relative;padding-left:20px;white-space:nowrap}
#section2 .top_title .left .bar{display:inline-block;width:1px;height:calc(100% - 40px);position:absolute;top:20px;left:0;background-color:var(--main)}
#section2 .top_title .right{padding-top:22px}
#section2 .low_title .horizon_bar{display:block;width:100vw;height:1px;background-image:linear-gradient(to right,rgba(255,255,255,.4),rgba(255,255,255,0))}
#section2 .low_title .col_inner{position:relative;padding:22px}
#section2 .low_title .col_inner img{width:140px;height:140px}
#section2 .low_title .col_inner .title{margin:20px 0 30px 0}
#section2 .low_title .col_inner .cont{color:rgba(255,255,255,.8);font-size:1.05rem;line-height:1.2}
#section2 .low_title .col_inner .vertical_bar{width:1px;height:calc(100% + 100px);background-image:linear-gradient(to bottom,rgba(255,255,255,.4),rgba(255,255,255,0));position:absolute;top:0;left:0}
@media (max-width:1200px){#section2 .back{left:-15px}}
@media (max-width:991.98px){
  #section2 .se2_principle{padding:40px 0;margin-top:50px}
  #section2 .top_title{display:block}
  #section2 .top_title .left{position:relative;padding-left:20px}
  #section2 .top_title .right{padding-top:10px}
  #section2 .low_title .col_inner{position:relative;padding:15px;text-align:center}
  #section2 .low_title .col_inner img{max-width:70px}
  #section2 .low_title .col_inner .title{margin:15px 0}
  #section2 .low_title .col_inner .vertical_bar{display:none}
}
.se2_principle{color:rgba(255,255,255,.75)}
.se2_principles{position:relative}
.horizon_bar{display:block;height:1px;background:rgba(255,255,255,.15);margin:40px 0}
.se2_principle_grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.se2_item{padding:48px 32px;position:relative}
.vertical_bar{display:block;width:2px;height:40px;background:var(--main);margin-bottom:24px}
.se2_item img{width:48px;height:48px;margin-bottom:20px}
.se2_item .title{margin-bottom:16px}
.se2_item .cont{color:rgba(255,255,255,.65);font-size:1rem;line-height:1.2}

/* ============================================================ SECTION 3 의료진 */
.section3{background:#fff;padding:0}
#section3>.bh_wrap{max-width:100%;padding:0}
#section3 .member_content1{background:#fff;padding:100px 0 0 0}
#section3 .member_content2{background:#fff;padding:100px 0 0 0}
#section3 .bh_wrap.po-r{position:relative;padding-left:15px;padding-right:15px;max-width:1600px;margin:0 auto}
#section3 .profile{position:absolute;bottom:0;right:calc(-1 * (100vw - 1600px) / 2);z-index:1;width:460px;max-width:46vw;height:auto}
#section3 .profile.profile2{left:0;right:unset}
#section3 .member_content1 .profile{right:120px}
#section3 .member_content1 .member_history{width:min(760px,60%)}
#section3 .mo_profile{display:none}
#section3 .member_history{position:relative;z-index:2;width:min(850px,80%);background:rgba(255,255,255,0.82);backdrop-filter:blur(6px);margin-top:40px;padding:0}
#section3 .member_history.member_history2{margin-left:auto}
#section3 .career_header{font-size:13px;font-weight:700;letter-spacing:.15em;color:#bd9865;border-bottom:2px solid #bd9865;padding-bottom:14px;margin-bottom:0}
#section3 .career_row{display:flex;gap:0;border-bottom:1px solid #e8e8e8;padding:24px 0}
#section3 .career_row:last-child{border-bottom:none}
#section3 .career_label{font-size:13px;font-weight:700;color:#bd9865;letter-spacing:.08em;min-width:90px;padding-top:2px;flex-shrink:0}
#section3 .career_items{flex:1}
#section3 .career_items li{font-size:18px;font-weight:500;line-height:1.8;color:#333;padding:0;margin:0;list-style:none}
@media (max-width:1024px){
  #section3 .member_content1,#section3 .member_content2{background-position:right;padding:60px 0 0 0}
  #section3 .bh_wrap.po-r>p:first-child{text-align:center}
  #section3 .profile{display:none}
  #section3 .mo_profile{display:flex !important;justify-content:center;padding-top:30px;width:100%}
  #section3 .mo_profile img{max-width:59%}
  #section3 .mo_info{padding:10px 0;text-align:center;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap}
  #section3 .mo_info h3,#section3 .mo_info p{margin:0 !important}
  #section3 .mo_info p{background-color:rgba(235,97,0,.4);padding:2px 10px;border-radius:5px;color:#fff !important}
  #section3 .member_history,
  #section3 .member_content1 .member_history{width:100%}
  #section3 .bh_wrap.po-r{width:100%;max-width:100%;padding-left:0;padding-right:0}
  #section3 .career_row{flex-direction:column;gap:4px;padding:12px 0}
  #section3 .career_label{min-width:auto;font-size:11px;letter-spacing:.04em}
  #section3 .career_items li{font-size:13px;line-height:1.8;word-break:keep-all}
}

/* ============================================================ SECTION 4 클리닉 */
.section4{background:#fff}
.clinic_tabs ul{display:flex;border-bottom:2px solid var(--gray-200);overflow-x:auto;scrollbar-width:none}
.clinic_tabs ul::-webkit-scrollbar{display:none}
.clinic_tab_btn{
  display:block;padding:16px 28px;
  font-size:.95rem;font-weight:700;
  color:var(--gray-600);white-space:nowrap;
  border-bottom:3px solid transparent;margin-bottom:-2px;
  transition:color var(--trans),border-color var(--trans);cursor:pointer;
}
.clinic_tab_btn:hover{color:var(--main)}
.clinic_tab_btn.active{color:var(--main);border-bottom-color:var(--main)}
.clinic_tab_content{display:none}
.clinic_tab_content.active{display:block}

.tab_slider_wrap{margin-top:0}
.tab_slide_inner{
  display:grid;grid-template-columns:1fr 1fr;
  min-height:600px;
}
.tab_slide_inner .text_box{padding:48px 40px;display:flex;flex-direction:column}
.tab_slide_inner .text1{display:flex;align-items:flex-start;gap:20px;margin-bottom:0}
.num{
  font-size:3rem;font-weight:900;
  color:var(--gray-200);line-height:1;
  flex-shrink:0;min-width:56px;
}
.title_wrap{flex:1}
.title_wrap .part{font-size:1.2rem;color:var(--gray-500);margin-bottom:4px}
.title_wrap .disease{font-size:2.7rem;font-weight:900;color:var(--gray-900)}
.slide_nav{margin-left:auto;flex-shrink:0;text-align:right}
.bullet_nav{display:flex;flex-direction:column;gap:8px;align-items:flex-end;margin-bottom:14px}
.bullet_nav .bullet{
  font-size:1.4rem;color:var(--gray-500);cursor:pointer;
  padding:5px 0;border-bottom:1px solid transparent;
  transition:color var(--trans),border-color var(--trans);
}
.bullet_nav .bullet.active{color:var(--main);border-bottom-color:var(--main);font-weight:700}
.slide_arrows{display:flex;gap:8px;justify-content:flex-end}
.tab-prev,.tab-next{
  width:34px;height:34px;border:1px solid var(--gray-200);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;font-size:1rem;color:var(--gray-700);
  transition:background var(--trans),color var(--trans);
}
.tab-prev:hover,.tab-next:hover{background:var(--main);color:#fff;border-color:var(--main)}
.text2 p{font-size:1.3rem;line-height:1.2;color:var(--gray-700)}
.sub_title{font-size:1.7rem;font-weight:900;color:var(--sub);margin-bottom:12px}
.symptom_list{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.symptom_list li{
  background:var(--gray-200);
  padding:11px 16px;font-size:1.15rem;color:var(--gray-700);
  border-radius:2px;
}
.cause_list li{
  font-size:1.15rem;color:var(--gray-700);
  padding:9px 0 9px 18px;border-bottom:1px solid var(--gray-200);
  position:relative;line-height:1.85;
}
.cause_list li::before{content:'';position:absolute;left:0;top:50%;width:6px;height:1px;background:var(--main-400)}
.tab_slide_inner .img_box{overflow:hidden;background:var(--gray-200)}
.tab_slide_inner .img_box img{width:100%;height:100%;object-fit:cover}

/* ============================================================ SECTION 5 대상포진 */
.section5{background:#f8f8f8}
.shingles_banner{
  background:linear-gradient(135deg,#1a1a2e 0%,var(--sub) 100%);
  border-radius:4px;padding:60px;
  position:relative;overflow:hidden;
}
.shingles_banner::before{
  content:'';position:absolute;right:-60px;top:-60px;
  width:300px;height:300px;border-radius:50%;
  background:rgba(235,97,0,.15);
}
.shingles_banner_text{position:relative;z-index:1;max-width:680px;margin-left:50%}

.shingles_tabs{margin-top:50px}
.shingles_tab_btns{display:flex;border-bottom:2px solid var(--gray-200);overflow-x:auto;scrollbar-width:none}
.shingles_tab_btns::-webkit-scrollbar{display:none}
.shingles_tab_btn{
  display:block;padding:14px 22px;font-size:.88rem;font-weight:700;
  color:var(--gray-600);white-space:nowrap;
  border-bottom:3px solid transparent;margin-bottom:-2px;cursor:pointer;
  transition:color var(--trans),border-color var(--trans);
}
.shingles_tab_btn.active{color:var(--main);border-bottom-color:var(--main)}
.shingles_content{display:none;padding-top:50px}
.shingles_content.active{display:block}

.shingles_stage{display:flex;flex-direction:column;gap:0}
.stage_row{display:grid;grid-template-columns:300px 1fr;gap:40px;align-items:start;padding-bottom:20px}
.stage_img_wrap{position:relative}
.stage_img_wrap img{width:100%;border-radius:4px}
.step_badge{
  position:absolute;top:16px;left:16px;
  background:var(--main);color:#fff;
  font-size:.8rem;font-weight:700;
  padding:4px 12px;border-radius:2px;
}
.stage_arrow{text-align:center;font-size:2rem;color:var(--main);padding:8px 0 16px}

.risk_grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.risk_box{
  background:linear-gradient(135deg,var(--sub),var(--main));
  border-radius:4px;padding:24px;color:rgba(255,255,255,.85);
  font-size:.875rem;line-height:1.2;
  display:flex;flex-direction:column;gap:12px;
}
.risk_box img{width:48px;height:48px;margin-left:auto}

.shingles_comp_grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.comp_item img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:4px;margin-bottom:10px}
.comp_item p{font-size:.9rem;font-weight:700;color:var(--gray-900)}

.treat_items{display:flex;flex-direction:column;gap:0}
.treat_item{display:flex;gap:24px;padding:24px 0;border-bottom:1px solid var(--gray-200);align-items:flex-start}
.treat_num{
  font-size:2rem;font-weight:900;color:var(--gray-200);
  flex-shrink:0;min-width:50px;
}
.treat_item strong{display:block;font-size:1.1rem;font-weight:900;margin-bottom:6px}
.treat_item p{font-size:.9rem;color:var(--gray-700)}

.vaccine_points{display:flex;flex-direction:column;gap:20px}
.vaccine_point{display:flex;gap:20px;align-items:flex-start}
.vp_num{
  width:40px;height:40px;background:var(--main);color:#fff;
  border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-size:.85rem;font-weight:700;flex-shrink:0;
}
.vaccine_point strong{display:block;font-weight:700;margin-bottom:4px}
.vaccine_point p{font-size:.875rem;color:var(--gray-700)}

.qa_list{display:flex;flex-direction:column;gap:0}
.qa_item{border-bottom:1px solid var(--gray-200)}
.qa_q,.qa_a{display:flex;gap:16px;padding:20px 0;font-size:.95rem}
.qa_q{font-weight:700;color:var(--gray-900)}
.qa_a{color:var(--gray-700);background:#f8f8f8;padding:20px}
.qa_q span,.qa_a span{
  flex-shrink:0;width:28px;height:28px;
  display:flex;align-items:center;justify-content:center;
  border-radius:50%;font-weight:900;font-size:.85rem;
}
.qa_q span{background:var(--main);color:#fff}
.qa_a span{background:var(--sub);color:#fff}

/* ============================================================ SECTION 6 비수술 */
.section6{background:#fff;padding-bottom:0}
.navigation{
  position:sticky;top:var(--header-h);z-index:100;
  background:#fff;border-bottom:2px solid var(--gray-200);
  margin-top:60px;
}
.navigation_inner{max-width:var(--wrap);margin:0 auto;padding:0 15px}
@media(max-width:991.98px){.navigation_inner{max-width:100%;padding:0}}
/* 비수술치료법 5개 nav */
.se6_nav5{display:flex;flex-wrap:nowrap}
.col-nav5{flex:1;min-width:0}
.navcon{
  display:flex;align-items:center;justify-content:center;text-align:center;
  padding:22px 8px;font-size:clamp(0.98rem,1.32vw,1.2rem);font-weight:700;min-height:auto;height:auto;line-height:1.4;
  color:var(--gray-600);cursor:pointer;
  border-bottom:3px solid transparent;
  transition:color var(--trans),border-color var(--trans),background var(--trans);
}
.navcon:hover,.navcon.active{color:var(--main);border-bottom-color:var(--main)}
/* legacy grid class */
.se6_nav_grid{display:grid;grid-template-columns:repeat(5,1fr);width:var(--wrap);margin-inline:auto}
.se6_nav_btn{display:block;text-align:center;padding:18px 12px;font-size:.9rem;font-weight:700;color:var(--gray-600);border-bottom:3px solid transparent;margin-bottom:-2px;transition:color var(--trans),border-color var(--trans),background var(--trans);cursor:pointer;}
.se6_nav_btn:hover,.se6_nav_btn.active{color:var(--main);border-bottom-color:var(--main)}

.se6_content{padding:80px 0 100px}
#nav_target1{background:#fff}
#nav_target2{background:#f9f6f2}
#nav_target3{background:#fff}
#nav_target4{background:#f9f6f2}
.se6_cont_inner{display:grid;grid-template-columns:1fr 480px;gap:60px;align-items:start}
.se6_cont_inner .img_box{position:relative;flex-shrink:0}
.img_main{position:relative;z-index:1;width:100%;border-radius:4px}
.img_bg{
  position:absolute;bottom:-20px;right:-20px;z-index:0;
  width:80%;border-radius:4px;opacity:.5;
}

.tag_wrap{display:flex;flex-wrap:wrap;gap:8px}
.tag_wrap span{
  background:rgba(235,97,0,.08);color:var(--main);
  border:1px solid rgba(235,97,0,.2);
  padding:5px 14px;font-size:.82rem;font-weight:500;border-radius:2px;
}

.se6_steps .bar{display:inline-block;width:4px;height:24px;background:var(--main);vertical-align:middle;margin-right:14px}
.step_imgs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.step_imgs img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:4px}
.step_desc{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.step_box{
  padding:16px;color:#fff;font-size:.85rem;font-weight:700;
  display:flex;align-items:center;gap:8px;
}
.step_box i{margin-left:auto;font-size:1.2rem}

.benefit_grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.benefit_item{
  border:1px solid var(--gray-200);padding:28px 20px;
  position:relative;transition:box-shadow var(--trans);
}
.benefit_item:hover{box-shadow:0 8px 30px rgba(0,0,0,.08)}
.benefit_item .num{font-size:1.3rem;font-weight:700;color:var(--main);margin-bottom:12px}
.benefit_item .ttl{font-size:1.45rem;font-weight:700;line-height:1.4;margin-bottom:16px}
.benefit_item img{width:48px;height:48px;margin-left:auto}

/* ============================================================ SECTION 7 둘러보기 */
.section7{background:#f8f8f8;padding-top:64px;padding-bottom:90px;--tour-active-scale:1.16}
.tour_head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
}
.tour_controls{display:flex;gap:12px;justify-content:flex-end;flex-shrink:0}
.swiper-button-prev-se7,.swiper-button-next-se7{
  width:48px;height:48px;border:1px solid var(--gray-200);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;font-size:1.2rem;color:var(--gray-900);
  background:#fff;border-radius:50%;
  transition:background var(--trans),color var(--trans),border-color var(--trans);
}
.swiper-button-prev-se7:hover,.swiper-button-next-se7:hover{background:var(--main);color:#fff;border-color:var(--main)}
.tour_swiper_wrap{margin-top:12px;overflow:hidden;padding:54px 0 48px}
.swiper-tour{width:100%;overflow:visible}
.swiper-tour .swiper-wrapper{align-items:center}
.swiper-tour .swiper-slide{
  width:auto;line-height:0;margin-right:-2px!important;position:relative;z-index:1;
  opacity:.52;filter:saturate(.82) brightness(.72);
  transition:opacity .55s ease,filter .55s ease;
}
.swiper-tour .swiper-slide-active{z-index:5}
.swiper-tour .swiper-slide-active,
.swiper-tour .swiper-slide-prev,
.swiper-tour .swiper-slide-next{opacity:.86}
.swiper-tour .swiper-slide-active{opacity:1;filter:none}
.tour_photo{margin:0;height:100%;line-height:0}
.tour_img{
  width:max-content;
  height:clamp(300px, 43vh, 540px);
  background:transparent;
  display:flex;
  position:relative;overflow:hidden;
  border-radius:0;
  box-shadow:none;
  transform:translateZ(0);
  transform-origin:center center;
  transition:transform .6s cubic-bezier(.2,.7,.2,1),box-shadow .6s ease,filter .6s ease;
}
.swiper-tour .swiper-slide-active .tour_img{
  transform:scale(var(--tour-active-scale)) translateZ(0);
  box-shadow:0 30px 70px rgba(0,0,0,.22);
}
.tour_img img{
  width:auto;
  height:100%;
  max-width:none;
  display:block;
  position:relative;
  z-index:1;
  object-fit:contain;
  object-position:center;
}
.tour_img--portrait::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:var(--tour-bg);
  background-size:cover;
  background-position:center;
  filter:blur(18px) brightness(.8);
  transform:scale(1.08);
  display:none;
}
/* Coming Soon */
.tour_coming_wrap{position:relative;margin-top:50px;width:100%;height:500px;overflow:hidden}
.tour_coming_bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:blur(6px) brightness(0.45);transform:scale(1.06)}
.tour_coming_overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;gap:16px}
.tour_coming_overlay i{font-size:56px;opacity:.85}
.coming_label{font-size:42px;font-weight:800;letter-spacing:10px}
.coming_sub{font-size:17px;opacity:.75;letter-spacing:1px}
@media(max-width:768px){
  .tour_coming_wrap{height:320px}
  .coming_label{font-size:28px;letter-spacing:6px}
  .coming_sub{font-size:14px}
  .tour_coming_overlay i{font-size:40px}
}

/* ============================================================ SECTION 8 진료안내 */
.section8{background:var(--dark-bg);padding:64px 0 80px}
#section8>.bh_wrap>p{color:#fff !important}
.se8_grid{display:grid;grid-template-columns:6fr 7fr;gap:0;max-width:1200px;margin-inline:auto}
.se8_hours{padding:60px;background:var(--dark-bg);color:#fff}
.hours_list ul{display:flex;flex-direction:column;gap:0}
.hours_list ul li{
  display:flex;justify-content:space-between;
  padding:16px 0;border-bottom:1px solid rgba(255,255,255,.1);
  font-size:1rem;color:rgba(255,255,255,.75);
}
.hours_list ul li.no-border{border-bottom:none}
.hours_list ul li span:first-child{font-weight:700;color:#fff}
.hours_list ul li span b{color:var(--point)}
.phone_number{display:flex;flex-direction:column;gap:4px;color:#fff}
.se8_map{position:relative}
.map_embed{position:relative;display:block;width:100%;height:auto;overflow:hidden}
.map_embed .map_img{width:100%;height:auto;display:block}
.map_marker{position:absolute;top:53.5%;left:49%;transform:translate(-50%,-50%);pointer-events:none;z-index:2;
  display:flex;flex-direction:column;align-items:center;gap:5px}
.map_marker img{width:46px;height:46px;object-fit:contain;background:#fff;border-radius:50%;padding:7px;
  box-shadow:0 5px 14px rgba(0,0,0,.28)}
.map_marker::after{content:'릴리프정형외과';font-family:'Noto Sans KR',sans-serif;
  font-size:.9rem;font-weight:700;color:#4a2e1a;white-space:nowrap;
  background:rgba(255,255,255,.92);padding:2px 9px;border-radius:6px;box-shadow:0 2px 7px rgba(0,0,0,.18)}
.address_box{
  background:rgba(255,255,255,.95);
  padding:20px 28px;
  border-top:1px solid var(--gray-200);
}
.address_box p:first-child{display:flex;align-items:center;margin-bottom:6px}

/* ============================================================ FOOTER */
.site_footer{background:var(--dark-bg);border-top:1px solid rgba(255,255,255,.1)}
.footer_inner{
  display:flex;align-items:center;gap:40px;
  padding:40px 0;
}
.footer_logo img{height:40px;width:auto;filter:brightness(0) invert(1)}
.footer_info{flex:1}
.footer_nav{display:flex;gap:20px;margin-bottom:16px}
.footer_nav a{color:rgba(255,255,255,.7);font-size:.85rem;font-weight:700;transition:color var(--trans)}
.footer_nav a:first-child{color:#fff;text-decoration:underline}
.footer_nav a:hover{color:#fff}
.footer_cont{color:rgba(255,255,255,.45);font-size:.8rem;line-height:1.2}
.footer_cont .bar{margin:0 8px;opacity:.3}
.footer_cont b{color:rgba(255,255,255,.65)}
.footer_cont .copy{margin-top:6px;opacity:.3}

/* ============================================================ 모바일 하단 바 */
.mobile_bottom_bar{
  display:none;
  position:fixed;bottom:0;left:0;right:0;
  background:#fff;border-top:1px solid var(--gray-200);
  z-index:900;
  padding-bottom:env(safe-area-inset-bottom);
}
.mobile_bottom_bar a{
  flex:1;display:flex;flex-direction:column;align-items:center;
  gap:4px;padding:10px 0;
  font-size:.65rem;font-weight:600;color:var(--gray-600);
  border-right:1px solid var(--gray-200);
  transition:color var(--trans);
}
.mobile_bottom_bar a:last-child{border-right:none}
.mobile_bottom_bar a:hover{color:var(--main)}
.mobile_bottom_bar a i{font-size:1.2rem}

/* ============================================================ RESPONSIVE */
@media(max-width:1200px){
  .shingles_banner_text{margin-left:0}
  .shingles_banner{padding:40px}
  .risk_grid{grid-template-columns:repeat(3,1fr)}
}

@media(max-width:1024px){
  :root{--header-h:60px}
  .logo img{height:40px}
  .logo_text_img{height:34px}
  .tab_slide_inner .text_box{padding-left:0;padding-right:0}
  .main_menu{display:none}
  .mobile_menu_btn{display:block}
  .header_inner{width:100%;max-width:100%}
  .header_row{width:100%;padding:0 16px;position:relative}
  .logo_text_link{position:absolute;left:50%;transform:translateX(-50%);margin-left:0}
  .logo_text_pretendard{font-size:1.32rem}
  .main_menu{margin-left:0}
  .mobile_menu_btn{margin-left:auto}
  .section{padding:70px 0}
  .se2_principle_grid{grid-template-columns:1fr}
  .member_inner{flex-direction:column}
  .profile{width:100%;max-width:320px;margin:0 auto}
  .profile2{order:0}
  .member_right{text-align:left}
  .history_cols{grid-template-columns:1fr}
  .tab_slide_inner{grid-template-columns:1fr}
  .tab_slide_inner .img_box{aspect-ratio:16/7}
  .se6_cont_inner{grid-template-columns:1fr}
  .benefit_grid{grid-template-columns:repeat(2,1fr)}
  .step_desc{grid-template-columns:repeat(2,1fr)}
  .shingles_comp_grid{grid-template-columns:repeat(2,1fr)}
  .risk_grid{grid-template-columns:repeat(2,1fr)}
  .se8_grid{grid-template-columns:1fr}
  .footer_inner{flex-direction:column;align-items:flex-start}
}

/* 991px 이하 모바일/태블릿 - 원본 섹션별 CSS */
@media(max-width:991.98px){
  /* Section 4 탭 */
  #section4 .bh_tab_wrap .tab_content_slider{margin-left:-15px !important;overflow:hidden}
  #section4 .bh_tab3 .bh_tab_btn,#section5 .bh_tab3 .bh_tab_btn{padding:5px 0}
  #section4 .bh_tab3 .bh_tab_btn span,#section5 .bh_tab3 .bh_tab_btn span{font-size:24px;font-weight:800;color:#616161}
  #section4 .bh_tab3 .bh_tab_btn.active,#section5 .bh_tab3 .bh_tab_btn.active{border-radius:500px;background-color:#eb6100}
  #section4 .bh_tab3 .bh_tab_btn.active span,#section5 .bh_tab3 .bh_tab_btn.active span{color:#fff}
  /* Section 6 내비 */
  #section6 .navigation{top:63px}
  body:not(.subpage) #section6 .navigation{position:static}
  #section6 .navcon{min-height:90px;height:auto;padding:10px 6px}
  #section6 .navcon span{font-size:13px;font-weight:600;color:#757575;line-height:1.2}
  #section6 .navcon.active{background-color:#eb6100;border-bottom-color:#eb6100}
  #section6 .navcon.active span{color:#fff}
  /* Section 7 */
  #section7 .image_slide_btn>div i{width:30px;height:30px;line-height:30px;font-size:30px;color:#bdbdbd}
}

@media(max-width:768px){
  .mobile-only{display:block}
  .slider_wrap{height:100svh}
  .main_scroll{display:none}
  .se6_nav_grid{grid-template-columns:repeat(2,1fr)}
  .se6_nav_grid .navcon5{grid-column:1 / -1;max-width:50%;margin-inline:auto}
  .stage_row{grid-template-columns:1fr}
  .symptom_list{grid-template-columns:1fr}
  .section7{padding-bottom:80px;--tour-active-scale:1.1}
  #section7 .tour_head{flex-direction:column;align-items:flex-start;gap:18px}
  #section7 .tour_controls{align-self:flex-end}
  .tour_swiper_wrap{margin-top:18px;padding:34px 0 30px}
  .tour_img{height:clamp(230px, 38vh, 320px);aspect-ratio:auto}
  .se8_hours{padding:36px 24px}
  .section8{padding-bottom:calc(120px + env(safe-area-inset-bottom))}
  .benefit_grid{grid-template-columns:1fr 1fr}
  .step_imgs{grid-template-columns:repeat(2,1fr)}
  .mobile_bottom_bar{display:flex}
  body{padding-bottom:calc(60px + env(safe-area-inset-bottom))}
  /* 클리닉 글씨 확대분 모바일 조정 */
  .title_wrap .disease{font-size:1.9rem}
  .bullet_nav .bullet{font-size:1.05rem}
  .title_wrap .part{font-size:1rem}
  .text2 p{font-size:1.1rem}
  .sub_title{font-size:1.35rem}
  .symptom_list li,.cause_list li{font-size:1rem}
}

@media(max-width:480px){
  :root{--wrap:calc(100% - 32px)}
  .section{padding:50px 0}
  .se6_content{padding:40px 0 50px}
  .risk_grid{grid-template-columns:1fr}
  .shingles_comp_grid{grid-template-columns:1fr 1fr}
  .se6_nav_grid{grid-template-columns:1fr 1fr}
  .se6_nav_grid .navcon5{grid-column:1 / -1;max-width:50%;margin-inline:auto}
  #section4 .bh_tab3 .bh_tab_btn span{font-size:20px}
}

/* ============================================================ 환자의 권리와 의무 모달 */
.pr-modal{display:none;position:fixed;inset:0;z-index:9999;align-items:center;justify-content:center}
.pr-modal.open{display:flex}
.pr-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.55);backdrop-filter:blur(3px)}
.pr-modal__box{
  position:relative;z-index:1;
  background:#fff;
  width:min(680px,94vw);
  max-height:85vh;
  border-radius:12px;
  display:flex;flex-direction:column;
  box-shadow:0 24px 60px rgba(0,0,0,.18);
  overflow:hidden;
}
.pr-modal__header{
  display:flex;align-items:center;justify-content:space-between;
  padding:28px 32px 20px;
  border-bottom:2px solid #00215b;
  flex-shrink:0;
}
.pr-modal__title{font-size:1.3rem;font-weight:900;color:#00215b;margin:0}
.pr-modal__close{
  background:none;border:none;cursor:pointer;
  width:36px;height:36px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:1.4rem;color:#666;
  transition:background .2s,color .2s;
}
.pr-modal__close:hover{background:#f0f0f0;color:#111}
.pr-modal__body{overflow-y:auto;padding:28px 32px 32px;display:flex;flex-direction:column;gap:28px}
.pr-section__title{
  font-size:1.05rem;font-weight:900;color:#eb6100;
  padding-bottom:10px;margin-bottom:16px;
  border-bottom:1px solid #f0e8e0;
}
.pr-item{padding:0 0 14px 0;border-bottom:1px solid #f5f5f5}
.pr-item:last-child{border-bottom:none;padding-bottom:0}
.pr-item__label{font-size:.92rem;font-weight:700;color:#333;margin-bottom:6px}
.pr-item__desc{font-size:.88rem;line-height:1.2;color:#555}
.pr-item__desc a{color:#eb6100;text-decoration:underline}

/* ── 소식안내 팝업 ── */
.news-popup {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9999;
  align-items: center;
  justify-content: center;
}
.news-popup.open { display: flex; }

.news-popup__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.55);
  backdrop-filter: blur(4px);
}

.news-popup__box {
  position: relative;
  z-index: 1;
  background: #10213a;
  border-radius: 12px;
  overflow: hidden;
  width: min(300px, 82vw);
  box-shadow: 0 20px 60px rgba(0,0,0,.35);
}

.news-popup__close {
  position: absolute;
  top: 10px;
  right: 10px;
  background: rgba(0,0,0,.45);
  border: none;
  border-radius: 50%;
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: #fff;
  font-size: 1.3rem;
  z-index: 2;
  transition: background .2s;
}
.news-popup__close:hover { background: rgba(0,0,0,.7); }

.news-popup__img {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px 14px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,0) 18%, rgba(255,255,255,0) 82%, rgba(255,255,255,.08)),
    #10213a;
}

.news-popup__img img {
  width: auto;
  max-width: min(100%, 272px);
  max-height: min(62vh, 520px);
  height: auto;
  display: block;
  object-fit: contain;
  border-radius: 4px;
  box-shadow: 0 10px 24px rgba(0,0,0,.22);
}

.news-popup__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 18px;
  background: #f5f5f5;
  border-top: 1px solid #e0e0e0;
}

.news-popup__today {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: .9rem;
  color: #555;
  cursor: pointer;
  user-select: none;
}
.news-popup__today input { cursor: pointer; accent-color: #1a3a5c; }

.news-popup__btn-close {
  background: #1a3a5c;
  color: #fff;
  border: none;
  border-radius: 6px;
  padding: 7px 20px;
  font-size: .9rem;
  cursor: pointer;
  transition: background .2s;
}
.news-popup__btn-close:hover { background: #0f2540; }

@media (min-width: 1025px) {
  .section8{padding:90px 0 130px}
  #section8>.bh_wrap>p{color:#fff !important}
  .se8_grid{
    grid-template-columns:minmax(460px, 6fr) minmax(460px, 7fr);
    align-items:stretch;
  }
  .se8_hours{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:44px 48px;
  }
  .se8_hours .hours_list{margin-top:38px !important}
  .se8_hours .phone_number{margin-top:32px !important}
  .se8_map{
    display:flex;
    flex-direction:column;
    justify-content:center;
    background:#fff;
  }
  .map_embed{height:350px}
  .map_embed .map_img{height:100%;object-fit:cover;object-position:center}
  .address_box{min-height:112px}
}

/* ── PR 모달 모바일 대응 ── */
@media (max-width: 768px) {
  .pr-modal__box {
    width: 94vw;
    max-height: 88dvh;  /* dvh: 모바일 브라우저 주소창 포함 실제 높이 */
    border-radius: 10px;
  }
  .pr-modal__header {
    padding: 18px 18px 14px;
  }
  .pr-modal__title { font-size: 1.1rem; }
  .pr-modal__body {
    padding: 18px 18px 22px;
    gap: 18px;
  }
  .pr-section__title { font-size: .95rem; }
  .pr-item__label { font-size: .88rem; }
  .pr-item__desc { font-size: .83rem; }
}

/* ── 모바일: 진료철학·진료원칙 제목 30% 축소, Relief 문구 20% 확대 ── */
@media (max-width: 1024px) {
  .se2_index_tag { font-size: 2.1rem; }
  #section2 .top_title .left { font-size: 22px !important; }
}

@media (max-width: 768px) {
  #section2 .se2_wrap[style] > .se2_index_label .se2_index_tag {
    gap:8px;
    font-size:1.72rem;
    letter-spacing:.14em;
  }
  #section2 .se2_wrap[style] > .se2_index_label .se2_index_tag::before {
    width:24px;
  }
  #section2 .top_title .left {
    font-size:18px !important;
  }
  #section2 .se2_intro_text,
  #section2 .se2_intro_text p {
    font-size:15px !important;
    line-height:1.2;
  }
  #section2 .se2_intro_text p.fw-bb {
    font-size:16px !important;
    line-height:1.45;
  }
}

/* ── 웹: 원장 이력 + 사진이 한 화면에 들어오도록 압축 ── */
@media (min-width: 1024px) {
  /* 첫 블록은 위 section2 배경(아래로 100px 침범)과 겹치지 않게 충분히 내림 */
  #section3 .member_content1 { padding-top: 130px; }
  #section3 .member_content2 { padding-top: 50px; }
  /* 제목 블록과 이력 사이 간격 축소 */
  #section3 [class~="lg:mt-100"] { margin-top: 30px !important; }
  #section3 .member_history { border-top: 2px solid #bd9865; padding-top: 16px; margin-top: 24px; }
  #section3 .career_row { padding: 13px 0; }
  #section3 .career_items li { font-size: 17px; font-weight: 500; line-height: 1.8; }
  #section3 .career_label { font-size: 14px; min-width: 96px; }
  /* 사진이 콘텐츠 높이를 넘어 위 섹션과 겹치지 않도록 높이 제한 */
  #section3 .member_content1,
  #section3 .member_content2 { min-height: 660px; }
  #section3 .profile { width: auto; height: 580px; max-width: none; }
}

/* ============================================================ 서브페이지 (clinic / treatment) */
body.subpage{padding-top:var(--header-h)}
/* 서브페이지에서는 스크롤 스냅 비활성화 */
body.subpage .section{scroll-snap-align:none}

.subpage_hero{
  position:relative;
  background-size:cover;background-position:center;
  padding:34px 0 30px;
  color:#fff;
}
.subpage_hero_inner{text-align:center}
.subpage_hero_eng{
  font-size:.75rem;font-weight:600;letter-spacing:.28em;
  color:rgba(255,255,255,.7);margin-bottom:9px;text-transform:uppercase;
}
.subpage_hero_title{
  font-size:clamp(1.6rem,3.4vw,2.3rem);
  font-weight:900;line-height:1.2;letter-spacing:-.01em;
}
.subpage_crumb{
  display:flex;align-items:center;justify-content:center;gap:6px;
  margin-top:12px;font-size:.82rem;color:rgba(255,255,255,.65);
}
.subpage_crumb a{color:rgba(255,255,255,.65);transition:color var(--trans)}
.subpage_crumb a:hover{color:#fff}
.subpage_crumb i{font-size:1rem;opacity:.6}
.subpage_crumb span{color:#fff;font-weight:600}

/* 서브페이지에서 섹션 자체 대형 타이틀은 시각 중복이라 숨김 */
body.subpage .section4>.bh_wrap>p.fs-58,
body.subpage .section6>.bh_wrap>p.fs-58{display:none}
body.subpage .section4{padding-top:24px}
body.subpage .section6{padding-top:0}
body.subpage .section6 .navigation{margin-top:32px}
.section4 .slide_arrows{display:none!important}
body.subpage #section4,
body.subpage #section6{scroll-margin-top:var(--header-h)}

@media(min-width:1025px){
  body.subpage{
    --subpage-content-w:min(1360px, calc(100% - clamp(48px, 5vw, 96px)));
    --subpage-media-w:400px;
  }
  body.subpage .subpage_hero_inner,
  body.subpage #section4>.bh_wrap,
  body.subpage #section6>.bh_wrap,
  body.subpage #section6 .navigation_inner,
  body.subpage #section6 .se6_content>.bh_wrap{
    width:var(--subpage-content-w);
    max-width:var(--subpage-content-w);
    margin-inline:auto;
  }
}

@media(max-width:768px){
  .subpage_hero{padding:40px 0 36px}
  .subpage_hero_title{font-size:1.6rem}
}

/* ── 웹: 클리닉 질환 / 비수술 치료법을 한 화면에 하나씩 (콘텐츠 축소) ── */
@media(min-width:1024px){
  /* === 비수술치료: 치료법 1개 = 화면 1개 === */
  body.subpage .se6_content{
    min-height:0;
    padding:24px 0 56px;
    display:block;
  }
  body.subpage .se6_cont_inner{ grid-template-columns:1fr var(--subpage-media-w); gap:44px; }
  body.subpage .se6_content .fs-48{ font-size:30px !important; }
  body.subpage .se6_content .fs-36{ font-size:22px !important; }
  body.subpage .se6_content .fs-20{ font-size:18px !important; line-height:1.2; }
  body.subpage .se6_content .mt-50{ margin-top:22px !important; }
  body.subpage .se6_content .mt-30{ margin-top:16px !important; }
  body.subpage .se6_steps{ margin-top:28px !important; }
  body.subpage .benefit_item{ padding:18px 16px; }
  body.subpage .benefit_item .num{ font-size:1.05rem; margin-bottom:6px; }
  body.subpage .benefit_item img{ max-height:40px; }
  body.subpage .tag_wrap span{ font-size:.78rem; padding:4px 11px; }

  /* === 클리닉: 메뉴바 + 부위탭 + 슬라이드가 한 화면에 === */
  body.subpage .bh_tab_wrap{ margin-top:20px !important; }
  body.subpage .bh_tab_li{ padding-top:16px; }
  body.subpage .bh_tab_btn{ font-size:1.5rem; padding:10px 8px; }
  /* 모든 질환 슬라이드 동일 높이(고정) */
  body.subpage .tab_slide_inner{
    height:calc(100vh - 340px);
    min-height:480px;
    grid-template-columns:58% 42%;
  }
  body.subpage .tab_slide_inner .img_box{ height:100%; }
  body.subpage .tab_slide_inner .img_box img{ height:100%; }
  /* 질환 목차는 제목 위 메뉴로 배치 */
  body.subpage .tab_slide_inner .text_box{
    justify-content:flex-start;
    padding:20px 32px 24px;
    position:relative;
  }
  body.subpage .tab_slide_inner .text1{
    display:contents;
  }
  body.subpage .tab_slide_inner .title_wrap{
    order:2;
    width:100%;
    flex:0 0 auto;
  }
  body.subpage .slide_nav{
    display:contents;
    margin-left:0;
    text-align:left;
  }
  body.subpage .bullet_nav{
    order:1;
    flex-direction:row;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-start;
    gap:6px;
    margin-bottom:10px;
  }
  body.subpage .title_wrap .disease{ font-size:1.75rem; line-height:1.15; }
  body.subpage .bullet_nav .bullet{
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:5px 12px;
    border:1px solid #e6e6e6;
    border-radius:999px;
    background:#f8f8f8;
    font-size:.82rem;
    line-height:1.2;
    color:var(--gray-600);
    white-space:nowrap;
  }
  body.subpage .bullet_nav .bullet.active{
    color:#fff;
    background:var(--main);
    border-color:var(--main);
    font-weight:800;
  }
  body.subpage .text2{ order:3; max-width:100%; }
  body.subpage .text3{ order:4; }
  body.subpage .text4{ order:5; }
  body.subpage .text2 p{ font-size:1.03rem; line-height:1.2; }
  body.subpage .sub_title{ font-size:1.2rem; line-height:1.3; margin-bottom:7px; }
  body.subpage .symptom_list li,
  body.subpage .cause_list li{ font-size:.93rem; line-height:1.85; }
  body.subpage .symptom_list li{ padding:6px 14px; }
  body.subpage .cause_list li{ padding-top:5px; padding-bottom:5px; }
  body.subpage .symptom_list{ gap:6px; }
  body.subpage .tab_slide_inner .text2.mt-30{ margin-top:12px !important; }
  body.subpage .tab_slide_inner .text3.mt-30,
  body.subpage .tab_slide_inner .text4.mt-30{ margin-top:12px !important; }
}

/* ── 웹 해상도별 밀도 조정: 큰 모니터 / 일반 웹 / 작은 웹 ── */
@media (min-width:1600px){
  :root{--wrap:min(1680px, calc(100% - 96px))}
  body.subpage{
    --subpage-content-w:min(1680px, calc(100% - 120px));
    --subpage-media-w:520px;
  }
  .section{padding:88px 0}
  .header_row{gap:8px}
  .main_menu ul li a{padding:0 26px;font-size:20px}
  .slider_wrap{min-height:720px}
  .se1_wrap{padding:78px 0 100px}
  .se1_cycle_wrap{max-width:1360px}
  #section2 .se2_principle{padding:120px 0;margin-top:120px}
  #section3 .member_content1,
  #section3 .member_content2{min-height:720px}
  #section3 .profile{height:640px}
  .section7{--tour-active-scale:1.14}
  .tour_swiper_wrap{margin-top:24px;padding:62px 0 56px}
  .tour_img{height:clamp(390px, 44vh, 560px)}
  .section8{padding:110px 0 150px}
  .se8_grid{max-width:1340px}
  .map_embed{height:390px}
  body.subpage .subpage_hero{padding:46px 0 42px}
  body.subpage .tab_slide_inner{height:clamp(620px, calc(100vh - 420px), 820px);min-height:620px}
  body.subpage .se6_cont_inner{gap:68px}
  body.subpage .title_wrap .disease{font-size:2.08rem}
  body.subpage .bullet_nav .bullet{font-size:.9rem;min-height:31px;padding:6px 14px}
  body.subpage .text2 p{font-size:1.1rem;line-height:1.2}
  body.subpage .sub_title{font-size:1.32rem}
  body.subpage .symptom_list li,
  body.subpage .cause_list li{font-size:1rem;line-height:1.85}
  body.subpage .bullet_nav{margin-bottom:12px}
  body.subpage .tab_slide_inner .text2.mt-30{margin-top:18px !important}
  body.subpage .tab_slide_inner .text3.mt-30,
  body.subpage .tab_slide_inner .text4.mt-30{margin-top:14px !important}
  body.subpage .se6_content{padding:40px 0 72px}
  body.subpage .se6_content .fs-48{font-size:36px !important}
  body.subpage .se6_content .fs-36{font-size:26px !important}
  body.subpage .se6_content .fs-20{font-size:20px !important;line-height:1.2}
  body.subpage .tag_wrap span{font-size:.86rem;padding:5px 13px}
  body.subpage .benefit_item{padding:22px 20px}
  body.subpage .benefit_item .ttl{font-size:1.35rem}
}

@media (min-width:2560px){
  :root{--wrap:min(2160px, calc(100% - 160px));--header-h:104px}
  body.subpage{
    --subpage-content-w:min(2400px, calc(100% - 240px));
    --subpage-media-w:780px;
  }
  .section{padding:118px 0}
  .header_row{gap:14px}
  .logo img{height:60px}
  .logo_text_pretendard{font-size:1.85rem}
  .logo_text_eng{font-size:.7rem}
  .main_menu ul li a{padding:0 34px;font-size:22px}
  .slider_wrap{min-height:860px}
  .slider_content_text_2{font-size:clamp(5.4rem,5.2vw,7.4rem)}
  .slider_content_text_3{font-size:1.22rem;line-height:1.2}
  .se1_wrap{padding:100px 0 130px}
  .se1_cycle_wrap{max-width:1680px}
  #section2 .se2_principle{padding:150px 0;margin-top:140px}
  #section2 .low_title .col_inner{padding:42px}
  #section2 .low_title .col_inner .cont{font-size:1.14rem;line-height:1.2}
  #section3 .member_content1,
  #section3 .member_content2{min-height:820px}
  #section3 .profile{height:730px}
  #section3 .career_items li{font-size:19px;font-weight:500}
  .section7{--tour-active-scale:1.12}
  .tour_swiper_wrap{margin-top:28px;padding:72px 0 64px}
  .tour_img{height:620px}
  .swiper-button-prev-se7,
  .swiper-button-next-se7{width:56px;height:56px}
  .section8{padding:132px 0 180px}
  .se8_grid{max-width:1640px;grid-template-columns:minmax(700px, 6fr) minmax(800px, 7fr)}
  .se8_hours{padding:62px 72px}
  .hours_list ul li{font-size:1.08rem;padding:18px 0}
  .map_embed{height:470px}
  .address_box{padding:26px 34px;min-height:126px}
  body.subpage .subpage_hero{padding:58px 0 52px}
  body.subpage .subpage_hero_title{font-size:2.8rem}
  body.subpage .section4{padding-top:34px}
  body.subpage .bh_tab_wrap{margin-top:34px !important}
  body.subpage .bh_tab_btn{font-size:2.1rem;padding:18px 12px}
  body.subpage .tab_slide_inner{height:clamp(900px, calc(100vh - 620px), 1000px);min-height:0;grid-template-columns:58% 42%}
  body.subpage .tab_slide_inner .text_box{padding:54px 70px 58px}
  body.subpage .title_wrap .disease{font-size:3.1rem}
  body.subpage .bullet_nav{gap:10px;margin-bottom:18px}
  body.subpage .bullet_nav .bullet{font-size:1.08rem;min-height:40px;padding:8px 18px}
  body.subpage .text2 p{font-size:1.35rem;line-height:1.2}
  body.subpage .sub_title{font-size:1.72rem}
  body.subpage .symptom_list li,
  body.subpage .cause_list li{font-size:1.22rem;line-height:1.85}
  body.subpage .symptom_list{gap:10px}
  body.subpage .symptom_list li{padding:10px 20px}
  body.subpage .cause_list li{padding-top:9px;padding-bottom:9px}
  body.subpage .tab_slide_inner .text2.mt-30{margin-top:28px !important}
  body.subpage .tab_slide_inner .text3.mt-30,
  body.subpage .tab_slide_inner .text4.mt-30{margin-top:22px !important}
  body.subpage #section6 .navcon{font-size:clamp(1.35rem, .62vw, 1.55rem);padding:24px 12px}
  body.subpage .se6_content{padding:48px 0 84px}
  body.subpage .se6_cont_inner{gap:120px;align-items:start}
  body.subpage .se6_content .fs-48{font-size:52px !important}
  body.subpage .se6_content .fs-36{font-size:38px !important}
  body.subpage .se6_content .fs-20{font-size:24px !important;line-height:1.2}
  body.subpage .se6_content .mt-50{margin-top:38px !important}
  body.subpage .se6_content .mt-30{margin-top:26px !important}
  body.subpage .se6_steps{margin-top:56px !important}
  body.subpage .tag_wrap{gap:12px}
  body.subpage .tag_wrap span{font-size:1rem;padding:8px 18px}
  body.subpage .benefit_grid{gap:18px}
  body.subpage .benefit_item{padding:36px 32px}
  body.subpage .benefit_item .num{font-size:1.5rem;margin-bottom:12px}
  body.subpage .benefit_item .ttl{font-size:1.86rem}
  body.subpage .benefit_item img{width:64px;height:64px;max-height:none}
}

@media (min-width:1280px) and (max-width:1599px){
  :root{--wrap:min(1360px, calc(100% - 64px))}
  .section{padding:72px 0}
  .main_menu ul li a{padding:0 18px;font-size:18px}
  #section3 .profile{height:560px}
  .se8_grid{max-width:1240px}
  .map_embed{height:350px}
  body.subpage .tab_slide_inner{height:clamp(620px, calc(100vh - 280px), 700px);min-height:620px}
}

@media (min-width:1025px) and (max-width:1279px){
  :root{--wrap:calc(100% - 48px);--header-h:76px}
  .section{padding:56px 0}
  .header_row{gap:0}
  .logo img{height:44px;transform:translateY(6px)}
  .logo_text_link{margin-left:6px}
  .logo_text_pretendard{font-size:1.24rem}
  .logo_text_eng{font-size:.5rem}
  .main_menu ul li a{padding:0 10px;font-size:15.5px}
  .slider_wrap{min-height:560px}
  .slider_content_text_1{font-size:clamp(.75rem,1.15vw,.95rem)}
  .slider_content_text_2{font-size:clamp(2.2rem,6vw,4.8rem)}
  .se1_wrap{padding:48px 0 64px}
  #section2 .se2_principle{padding:76px 0;margin-top:72px}
  #section2 .low_title .col_inner{padding:22px}
  #section2 .low_title .col_inner .cont{font-size:.95rem;line-height:1.2}
  #section3 .member_content1{padding-top:92px}
  #section3 .member_content2{padding-top:42px}
  #section3 .member_content1,
  #section3 .member_content2{min-height:600px}
  #section3 .profile{height:520px}
  #section3 .career_items li{font-size:15px;font-weight:500;line-height:1.8}
  #section3 .career_row{padding:10px 0}
  .section7{--tour-active-scale:1.12}
  .tour_swiper_wrap{margin-top:18px;padding:42px 0 36px}
  .tour_img{height:clamp(280px, 40vh, 390px)}
  .swiper-button-prev-se7,
  .swiper-button-next-se7{width:42px;height:42px}
  .section8{padding:72px 0 108px}
  .se8_grid{max-width:1140px;grid-template-columns:minmax(430px, 6fr) minmax(420px, 7fr)}
  .se8_hours{padding:34px 36px}
  .se8_hours .hours_list{margin-top:28px !important}
  .hours_list ul li{font-size:.92rem;padding:12px 0}
  .map_embed{height:300px}
  .address_box{padding:16px 22px;min-height:100px}
  body.subpage .subpage_hero{padding:28px 0 24px}
  body.subpage .section4{padding-top:18px}
  body.subpage .bh_tab_wrap{margin-top:16px !important}
  body.subpage .bh_tab_btn{font-size:1.2rem;padding:8px 6px}
  body.subpage .tab_slide_inner{height:590px;min-height:590px;grid-template-columns:60% 40%}
  body.subpage .tab_slide_inner .text_box{padding:20px 24px 22px}
  body.subpage .title_wrap .disease{font-size:1.55rem}
  body.subpage .text2{max-width:100%}
  #section3 .member_history.member_history2{width:min(660px,68%)}
  body.subpage .bullet_nav{gap:5px;margin-bottom:8px}
  body.subpage .bullet_nav .bullet{font-size:.74rem;min-height:25px;padding:4px 9px}
  body.subpage .text2 p{font-size:.95rem;line-height:1.2}
  body.subpage .sub_title{font-size:1.08rem}
  body.subpage .symptom_list li,
  body.subpage .cause_list li{font-size:.84rem;line-height:1.85}
  body.subpage .se6_content{padding:20px 0 48px}
  body.subpage .se6_cont_inner{grid-template-columns:1fr 340px;gap:34px}
  body.subpage .se6_content .fs-48{font-size:27px !important}
  body.subpage .se6_content .fs-20{font-size:17px !important;line-height:1.2}
  body.subpage .benefit_item{padding:14px 12px}
  body.subpage .benefit_item .ttl{font-size:1.15rem}
}

@media (min-width:1025px){
  #section3 .member_content2 .profile.profile2{top:10px;bottom:auto}
}

@media (min-width:1600px){
  body.subpage .tab_slide_inner{height:clamp(620px, calc(100vh - 420px), 820px)}
  body.subpage .se6_content{min-height:0}
}

@media (min-width:2560px){
  body.subpage .tab_slide_inner{height:clamp(900px, calc(100vh - 620px), 1000px)}
  body.subpage .se6_content{min-height:0}
}

@media (min-width:1024px){
  body.subpage #section6 .navigation{
    margin-top:clamp(24px, 1.8vw, 32px);
  }
  body.subpage #section6 .navcon{
    min-height:clamp(66px, 3.6vw, 84px);
    padding:clamp(18px, .95vw, 24px) 12px;
    font-size:clamp(1.05rem, .95vw, 1.35rem);
    line-height:1.36;
  }
  body.subpage #section6 .se6_content{
    padding-top:clamp(22px, 1.4vw, 32px) !important;
    padding-bottom:clamp(52px, 3.6vw, 76px) !important;
  }
}

/* ── 웹: 원장 직함(이름/대표원장/전문의) 가로 한 줄 배치 ── */
@media(min-width:1024px){
  .doc_title_row{
    display:flex !important;
    align-items:baseline;
    flex-wrap:wrap;
    column-gap:20px;row-gap:4px;
  }
  .doc_title_row > h3,
  .doc_title_row > p{ margin:0 !important; }
  .doc_title_row--right{ justify-content:flex-end; text-align:right; }
}

/* ── 웹: 클리닉/비수술은 분리 페이지로 제공 → 메인(index) 데스크탑에서는 숨김 ── */
/* (모바일은 그대로 한 페이지에 노출, 모바일 메뉴는 #앵커로 이동) */
@media(min-width:1024px){
  body:not(.subpage) #section4,
  body:not(.subpage) #section6{ display:none !important; }
}
