/* =========================================================
서브 공통
========================================================= */
.sub-wrapper{padding-top: 64px;}

/* =========================================================
소개
========================================================= */
/* 한방침구과 소개 */
.cl-about { background:#fff; }
.cl-about__inner { width:min(var(--max),100%); margin:0 auto; padding-inline:36px; padding-top:84px; padding-bottom:0; text-align:center;}
.cl-about__kicker { margin:0; font-size:33.33px; color:var(--pointcolor2); font-weight:600; line-height:1.3; }
.cl-about__title { margin:10px 0 0; font-size:50.67px; color:var(--text); font-weight:800; line-height:1.25; letter-spacing:-0.02em;}
.cl-about__desc { margin:0; font-size:30px; color:var(--text); font-weight:400; line-height:1.75; }
.cl-about__desc strong { font-weight:700;}
.cl-about__spacer { height:0; }
.cl-about__spacer--38 { height:38px;}
.cl-about__spacer--99 { height:99px;}
.cl-about__spacer--147 { height:147px;}
.cl-about__line { width:25px; height:1px; margin:0 auto; background:#c4c4c4;}
.cl-about__cards { display:flex; justify-content:center; gap:25px; flex-wrap:nowrap;}
.cl-about__card { width:526px; height:332px; border-radius:26px; overflow:hidden; margin:0; background:#f2f2f2; }
.cl-about__card img { width:100%; height:100%; object-fit:cover; display:block}
.cl-about__bottom { display:flex; justify-content:center; align-items:stretch; gap:0;}
.cl-about-slider { width:1128px; height:582px; background:#000; position:relative; overflow:hidden;}
.cl-about-slider__viewport { width:100%; height:100%; overflow:hidden; touch-action:pan-y; }
.cl-about-slider__track { display:flex; height:100%; transform:translate3d(0,0,0); transition:transform 260ms ease; will-change:transform;}
.cl-about-slider__slide { flex:0 0 100%; height:100%; background:#000;}
.cl-about-slider__slide img { width:100%; height:100%; object-fit:cover; display:block; opacity:.2;}
.cl-about-slider__dots { position:absolute; top:18px; right:18px; display:flex; gap:8px; z-index:3; opacity: .5;}
.cl-about-slider__dot { width:6px; height:6px; border-radius:999px; background:rgba(255,255,255,.35); border:0; padding:0; cursor:pointer;}
.cl-about-slider__dot.is-active { background:rgba(255,255,255,.9); }
.cl-about-slider__text { position:absolute; left:65px; bottom:84px; z-index:2; text-align:left; max-width:calc(100% - 130px);}
.cl-about-slider__text-kicker { font-size:28px; font-weight:600; color:#ffcda4; line-height:1.2;}
.cl-about-slider__text-gap { height:28px; }
.cl-about-slider__text-title { font-size:53.33px; font-weight:800; color:#fff; line-height:1.25; letter-spacing:-0.02em;}
.cl-about-info { width:778px; height:582px; background:#fcf1e8; display:flex; align-items:center; justify-content:center;}
.cl-about-info__inner { width:100%; height:100%; display:flex; flex-direction:column; align-items:center; text-align:center;}
.cl-about-info__icon { width:64px; height:64px; object-fit:contain; display:block; }
.cl-about-info__title { font-size:30.9px; font-weight:600; color:var(--pointcolor2); line-height:1.25;}
.cl-about-info__desc { font-size:24.3px; font-weight:300; color:var(--text); line-height:1.5;}
.cl-about-info__divider { width:50px; height:1px; background:#c4c4c4; }
.cl-about-info__spacer { height:0; }
.cl-about-info__spacer--75 { height:75px; }
.cl-about-info__spacer--32 { height:32px; }
.cl-about-info__spacer--16 { height:16px; }
.cl-about-info__spacer--50 { height:50px; }
@media (max-width:1200px) {
  .cl-about__inner { padding-inline:16px; }
  .cl-about__kicker { font-size:clamp(18px,4.6vw,28px); }
  .cl-about__title { font-size:clamp(22px,6.2vw,38px); }
  .cl-about__desc { font-size:clamp(14px,3.8vw,18px); }
  .cl-about__cards { flex-direction:column; align-items:center; gap:16px; }
  .cl-about__card { width:min(526px,100%); height:auto; aspect-ratio:526 / 332; }
  .cl-about__bottom { flex-direction:column; gap:16px; align-items:center; }
  .cl-about-slider { width:100%; height:auto; aspect-ratio:1128 / 525; }
  .cl-about-slider__text { left:16px; right:16px; bottom:16px; max-width:none; }
  .cl-about-slider__text-kicker { font-size:clamp(16px,4.2vw,22px); }
  .cl-about-slider__text-title { font-size:clamp(20px,5.8vw,28px); }
  .cl-about-slider__text-gap { height:12px; }
  .cl-about-info { width:100%; height:auto; }
  .cl-about-info__inner { padding:18px 12px; }
  .cl-about-info__title { font-size:clamp(18px,4.6vw,24px); }
  .cl-about-info__desc { font-size:clamp(14px,3.8vw,18px); }
}
/* 시설 */
.cl-fac { text-align:center; padding:141px 0 160px; }
.cl-fac__top { padding:0 16px; }
.cl-fac__intro { margin:0 auto; max-width:1200px; font-size:33pt; font-weight:600; line-height:45pt; color:var(--navy); }
.cl-fac-tabs{margin-top:82px; display:flex; justify-content:center; flex-wrap:wrap; gap:12px 27px; padding:0 16px; }
.cl-fac-tab{padding:10px 25px 12px; border-radius:999px; border:1px solid #898989; background:#fff; color:#898989; font-size:23.2pt; font-weight:400; cursor:pointer; }
.cl-fac-tab.is-active { background:var(--navy); border-color:var(--navy); color:#fff; font-weight:700; }
.cl-fac__break { flex-basis:100%; height:0; }
.cl-fac-titlebar { margin-top:107px; padding:0 16px; display:grid; grid-template-columns:54px 1fr 54px; align-items:center; column-gap:107px; width:min(820px,100%); margin-left:auto; margin-right:auto; }
.cl-fac-title { margin:0; font-size:30pt; font-weight:600; color:var(--text); }
.cl-fac-arrow { width:54px; height:54px; border-radius:999px; border:0; background:var(--navy); display:grid; place-items:center; cursor:pointer; }
.cl-fac-arrow__ico { width:10px; height:10px; border-right:2px solid #fff; border-bottom:2px solid #fff; display:block; }
.cl-fac-arrow__ico--left { transform:rotate(135deg); }
.cl-fac-arrow__ico--right { transform:rotate(-45deg); }
.cl-fac-media { margin-top:31px; display:flex; flex-direction:column; align-items:center; gap:19px; padding:0 16px; }
.cl-fac-big { width:820px; height:462px; background:var(--border); overflow:hidden; }
.cl-fac-big img { width:100%; height:100%; object-fit:cover; display:block; }
.cl-fac-thumbs { width:820px; display:flex; gap:7px; }
.cl-fac-thumb { width:269px; height:195px; border:0; padding:0; cursor:pointer; background:var(--border); overflow:hidden; opacity:.6; }
.cl-fac-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.cl-fac-text { width:820px; margin:39px auto 0; text-align:left; padding:0 16px; }
.cl-fac-desc p { margin:0; font-size:22pt; font-weight:400; color:var(--text); line-height:1.6; }
.cl-fac-desc p + p { margin-top:6px; }
.cl-fac-note { margin:39px 0 0; font-size:18pt; font-weight:600; color:var(--navy); line-height:1.6; }
.cl-fac-contactwrap { margin-top:135px; display:flex; justify-content:center; padding:0 16px; }
.cl-fac-contact { width:1004px; max-width:100%; height:204px; background:#f2f5fb; border-radius:23px; position:relative; display:flex; align-items:center; justify-content:center; text-align:center; }
.cl-fac-contact__inner { padding:0 24px; }
.cl-fac-contact__kicker { font-size:20px; font-weight:800; color:var(--navy); margin-bottom:10px; }
.cl-fac-contact__text { font-size:24.5px; font-weight:500; color:var(--text); line-height:1.55; }
.cl-fac-contact__down { position:absolute; left:50%; bottom:-18px; transform:translateX(-50%); width:44px; height:44px; border-radius:999px; border:0; background:var(--navy); display:grid; place-items:center; cursor:pointer; }
.cl-fac-contact__down-ico { width:10px; height:10px; border-right:2px solid #fff; border-bottom:2px solid #fff; transform:rotate(45deg); display:block; }
.cl-fac { padding-bottom:80px; }
.cl-fac img { max-width:100%; height:auto; display:block; }
@media (max-width:900px) {
  .cl-fac-big,.cl-fac-thumbs,.cl-fac-text { width:min(820px,100%); }
  .cl-fac__top { padding:18px 0 6px; }
  .cl-fac__intro { font-size:14px; line-height:1.6; word-break:keep-all; }
  .cl-fac-tabs { display:flex; flex-wrap:wrap; gap:8px; justify-content:center; margin:14px 0 16px; }
  .cl-fac__break { display:none; }
  .cl-fac-tab {font-size:13px; line-height:1.2; padding:10px 12px; border-radius:999px; white-space:nowrap; }
  .cl-fac-titlebar { display:grid; grid-template-columns:40px 1fr 40px; align-items:center; gap:8px; margin:8px 0 14px; }
  .cl-fac-title { font-size:18px; line-height:1.2; text-align:center; margin:0; }
  .cl-fac-arrow { width:40px; height:40px; border-radius:999px; }
  .cl-fac-text { max-width:560px; margin:16px auto 0; text-align:left; }
  .cl-fac-desc p { font-size:14px; line-height:1.7; margin:0 0 10px; word-break:keep-all; }
  .cl-fac-note { font-size:12px; line-height:1.6; margin-top:10px; opacity:.85; word-break:keep-all; }
  .cl-fac-contactwrap { margin-top:20px; }
  .cl-fac-contact { border-radius:14px; }
  .cl-fac-contact__inner { padding:18px 16px 22px; }
  .cl-fac-contact__kicker { font-size:13px; letter-spacing:.06em; }
  .cl-fac-contact__text { margin-top:8px; font-size:13px; line-height:1.55; word-break:keep-all; }
  .cl-fac-contact__down { width:42px; height:42px; bottom:-18px; }
  .cl-fac { padding:0 16px; padding-bottom:72px; }
  .cl-fac-media { margin:0 auto; max-width:560px; display:block !important; }
  .cl-fac-big { height:auto; aspect-ratio:820 / 462; background:#f3f3f3; width:100% !important; max-width:100% !important; overflow:hidden; border-radius:14px; }
  .cl-fac-big img { display:block; aspect-ratio:16 / 10; width:100% !important; height:auto !important; object-fit:cover; }
  .cl-fac-thumbs { margin-top:12px; display:grid !important; grid-template-columns:repeat(3,1fr); gap:10px; }
  .cl-fac-thumb { height:auto; aspect-ratio:269 / 195; background:#f3f3f3; width:100%; overflow:hidden; border-radius:12px; }
  .cl-fac-thumb img { object-fit:cover; aspect-ratio:4 / 3; opacity:.7; width:100%; height:auto; display:block; }
}
@media (max-width:380px) {
  .cl-fac-thumbs { grid-template-columns:repeat(2,1fr); }
}
/* 의료진 */
.cl-doc { width:100%; }
.cl-doc-top { width:100%; padding:56px 16px 34px; text-align:center; }
.cl-doc-top__inner { max-width:1004px; margin:0 auto; }
.cl-doc-top__kicker { margin:0 0 10px; font-size:25px; font-weight:500; color:var(--pointcolor2); line-height:1.2; }
.cl-doc-top__title { margin:0; font-size:38px; font-weight:800; color:#000; line-height:1.25; }
.cl-doc__top { margin:0; padding:0; line-height:0; }
.cl-doc__top img { display:block; width:60%; height:auto; margin:0 auto; }
.cl-doc__banner { margin:0; padding:0; line-height:0; }
.cl-doc__banner img { display:block; width:100%; height:auto; }
@media (max-width:740px) {
  .cl-doc-top { padding:40px 16px 24px; }
  .cl-doc-top__kicker { font-size:clamp(16px,4.5vw,25px); }
  .cl-doc-top__title { font-size:clamp(22px,7vw,38px); }
}

/* =========================================================
진료콘텐츠
========================================================= */
/* 공통 */
.cl-op__container { width:min(1004px,calc(100% - 32px)); margin:0 auto; }
.cl-op { margin-left:auto; margin-right:auto; }
.cl-op { width:100%; }
.cl-op__container { width:min(1004px,calc(100% - 32px)); margin:0 auto; }
.cl-op__wrap { width:100%; }
@media (max-width:900px) {
  .cl-op * { word-break:keep-all; }
}
/* 진료 배너 히어로 */
.cl-op-hero--banner { width:100%; }
.cl-op-hero--banner .cl-op-hero__inner { width:100%; height:325px; position:relative; overflow:hidden; background:#fff; }
.cl-op-hero--banner .cl-op-hero__media { position:absolute; inset:0; }
.cl-op-hero--banner .cl-op-hero__media img { width:100%; height:100%; object-fit:cover; display:block; }
.cl-op-hero--banner .cl-op-hero__text { position:absolute; left:70px; top:52px; right:320px; text-align:left; z-index:2; }
.cl-op-hero--banner .cl-op-hero__title { margin:0 0 14px; font-size:28px; font-weight:800; color:var(--pointcolor2); }
.cl-op-hero--banner .cl-op-hero__p18 { margin:0 0 12px; font-size:18px; font-weight:400; color:#000; line-height:1.6; }
.cl-op-hero--banner .cl-op-hero__p16 { margin:0 0 16px; font-size:16px; font-weight:500; color:#000; line-height:1.6; }
.cl-op-hero--banner .cl-op-hero__note { margin:0; font-size:14px; font-weight:600; color:#000; opacity:.8; }
@media (max-width:1100px) {
  .cl-op-hero--banner .cl-op-hero__inner { height:auto; aspect-ratio:1004 / 325; }
  .cl-op-hero--banner .cl-op-hero__text { left:16px; right:16px; top:16px; }
  .cl-op-hero--banner .cl-op-hero__title { font-size:clamp(18px,4.8vw,28px); }
  .cl-op-hero--banner .cl-op-hero__p18 { font-size:clamp(13px,3.5vw,18px); }
  .cl-op-hero--banner .cl-op-hero__p16 { font-size:clamp(12px,3.2vw,16px); }
}
@media (max-width:900px) {
  .cl-op-hero__title { font-size:22px !important; line-height:1.25 !important; }
  .cl-op-hero__p18 { font-size:14px !important; line-height:1.65 !important; }
  .cl-op-hero__p16 { font-size:13px !important; line-height:1.65 !important; }
  .cl-op-hero__note { font-size:12px !important; line-height:1.55 !important; }
  .cl-op-hero.cl-op-hero--banner,.cl-op-hero.cl-op-hero--banner .cl-op-hero__inner,.cl-op-hero.cl-op-hero--banner .cl-op-hero__text { height:auto !important; min-height:0 !important; overflow:visible !important; }
  .cl-op-hero.cl-op-hero--banner .cl-op-hero__title { font-size:20px !important; line-height:1.25 !important; margin:0 0 10px !important; }
  .cl-op-hero.cl-op-hero--banner .cl-op-hero__p18 { font-size:12.5px !important; line-height:1.7 !important; margin:0 0 10px !important; }
  .cl-op-hero.cl-op-hero--banner .cl-op-hero__p16 { font-size:12px !important; line-height:1.7 !important; margin:0 0 10px !important; }
  .cl-op-hero.cl-op-hero--banner .cl-op-hero__note { font-size:11px !important; line-height:1.6 !important; margin:8px 0 0 !important; }
  .cl-op-hero.cl-op-hero--banner .cl-op-hero__text p { display:block !important; -webkit-line-clamp:unset !important; -webkit-box-orient:unset !important; overflow:visible !important; white-space:normal !important; }
  .cl-op-hero.cl-op-hero--banner { position:relative; overflow:hidden; }
  .cl-op-hero.cl-op-hero--banner .cl-op-hero__media { width:100% !important; order:2; position:absolute !important; inset:0 !important; z-index:0 !important; pointer-events:none; }
  .cl-op-hero.cl-op-hero--banner .cl-op-hero__media img { max-height:220px !important; width:100% !important; height:100% !important; object-fit:cover !important; }
  .cl-op-hero.cl-op-hero--banner .cl-op-hero__inner { flex-direction:column !important; gap:14px !important; position:relative; z-index:1; display:block !important; padding:18px 16px 18px !important; }
  .cl-op-hero.cl-op-hero--banner .cl-op-hero__text { width:100% !important; height:auto !important; overflow:visible !important; background:rgba(255,255,255,.82); border-radius:14px; padding:14px 14px; }
}
@media (max-width:380px) {
  .cl-op-hero.cl-op-hero--banner .cl-op-hero__title { font-size:18px !important; }
  .cl-op-hero.cl-op-hero--banner .cl-op-hero__p18 { font-size:12px !important; }
  .cl-op-hero.cl-op-hero--banner .cl-op-hero__p16 { font-size:11.5px !important; }
  .cl-op-hero.cl-op-hero--banner .cl-op-hero__note { font-size:10.5px !important; }
}
/* 이미지+텍스트 행 */
.cl-op-row { width:100%; margin:0; display:flex; justify-content:center; gap:32px; align-items:flex-start; }
.cl-op-row__img { width:302px; flex:0 0 302px; }
.cl-op-row__img img { width:100%; height:207px; object-fit:cover; display:block; }
.cl-op-row__text { flex:0 1 540px; max-width:420px; min-width:0; text-align:left; }
.cl-op-row__text p { margin:0; font-size:18.5px; font-weight:400; color:#000; line-height:1.3; }
.cl-op-row__accent { color:var(--pointcolor2); font-weight:600; }
.cl-op-gap--100 { height:100px; }
.cl-op-gap--150 { height:150px; }
@media (max-width:900px) {
  .cl-op-row__img { width:min(302px,100%); flex:0 0 auto; }
  .cl-op-row__img img { height:auto; aspect-ratio:302 / 207; }
  .cl-op-row { flex-direction:column; gap:16px; display:block !important; }
  .cl-op-row__img,.cl-op-row__text { width:100% !important; }
  .cl-op-row__text p { font-size:14px !important; line-height:1.7 !important; }
}
/* 치료 방법 카드 */
.cl-op-method { width:100%; display:flex; justify-content:center; }
.cl-op-method__box { width:630px; height:639px; background:#f8f4ec; border-radius:0; box-sizing:border-box; padding:44px 56px 36px; }
.cl-op-method__title { margin:0 0 34px; font-size:28px; font-weight:800; color:var(--text); text-align:center; }
.cl-op-method__list { display:flex; flex-direction:column; gap:28px; }
.cl-op-method__item { display:flex; gap:24px; align-items:center; }
.cl-op-method__icon { width:85px; height:85px; border-radius:999px; background:var(--pointcolor2); display:flex; align-items:center; justify-content:center; flex:0 0 85px; }
.cl-op-method__icon img { width:48px; height:48px; object-fit:contain; display:block; }
.cl-op-method__text { min-width:0; }
.cl-op-method__name { font-size:20px; font-weight:800; color:var(--pointcolor2); margin:2px 0 6px; }
.cl-op-method__desc { font-size:17px; font-weight:400; color:#000; line-height:1.3; }
.cl-op-method__note { margin-top:34px; font-size:16.8px; font-weight:500; color:#968a76; line-height:1.3; }
@media (max-width:900px) {
  .cl-op-method__title { font-size:20px !important; line-height:1.25 !important; }
}
@media (max-width:760px) {
  .cl-op-method__box { width:100%; height:auto; aspect-ratio:630 / 639; padding:28px 20px 22px; }
  .cl-op-method__title { font-size:clamp(18px,4.6vw,28px); }
  .cl-op-method__name { font-size:clamp(16px,4.2vw,20px); }
  .cl-op-method__desc { font-size:clamp(13px,3.6vw,17px); }
  .cl-op-method__note { font-size:clamp(12px,3.4vw,16.8px); }
  .cl-op-method__list { gap:18px; }
  .cl-op-method__item { gap:16px; }
  .cl-op-method__icon { width:72px; height:72px; flex:0 0 72px; }
  .cl-op-method__icon img { width:40px; height:40px; }
}
/* 증상 탭 */
.cl-op-symptom { width:100%; text-align:center; }
.cl-op-symptom__head { display:flex; flex-direction:column; align-items:center; gap:10px; margin-bottom:16px; }
.cl-op-symptom__icon { width:34px; height:34px; object-fit:contain; display:block; }
.cl-op-symptom__title { margin:0; font-size:28px; font-weight:800; color:var(--pointcolor2); }
.cl-op-symptom__tabs { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:10px; margin:14px 0 18px; }
.cl-op-symptom__tab { appearance:none; border:0; background:transparent; padding:6px 6px; cursor:pointer; font-size:23px; font-weight:400; color:#000; line-height:1.2; }
.cl-op-symptom__tab.is-active { color:var(--pointcolor2); font-weight:800; }
.cl-op-symptom__sep { color:#000; opacity:.55; font-size:18px; line-height:1; }
.cl-op-symptom__panel { width:100%; }
.cl-op-symptom__media { width:630px; max-width:100%; margin:0 auto; overflow:hidden; background:var(--line-light); }
.cl-op-symptom__media img { width:100%; height:359px; object-fit:cover; display:block; }
.cl-op-symptom__desc { margin:18px auto 0; width:630px; max-width:100%; font-size:18.5px; font-weight:500; color:var(--text); line-height:1.6; text-align:center; }
.cl-op-symptom__panel { display:none; }
.cl-op-symptom__panel.is-active { display:block; }
.cl-op-symptom__panel[hidden] { display:none !important; }
@media (max-width:900px) {
  .cl-op-symptom__tabs { flex-wrap:wrap !important; row-gap:8px; }
  .cl-op-symptom__tab { font-size:13px !important; line-height:1.2 !important; padding:10px 10px !important; height:auto !important; white-space:nowrap; }
  .cl-op-symptom__desc { font-size:13px !important; line-height:1.7 !important; }
  .cl-op-symptom__title { font-size:20px !important; line-height:1.25 !important; }
}
@media (max-width:740px) {
  .cl-op-symptom__tab { font-size:clamp(15px,4.2vw,23px); }
  .cl-op-symptom__media img { height:auto; aspect-ratio:630 / 359; }
  .cl-op-symptom__desc { font-size:clamp(14px,3.8vw,18.5px); }
}
/* 보험/안내 설명 */
.cl-op-ins { width:100%; text-align:center; }
.cl-op-ins__head { display:flex; flex-direction:column; align-items:center; gap:10px; margin-bottom:22px; }
.cl-op-ins__icon { width:34px; height:34px; object-fit:contain; display:block; }
.cl-op-ins__title { margin:0; font-size:28px; font-weight:800; color:var(--pointcolor2); }
.cl-op-ins__body { max-width:980px; margin:0 auto 40px; }
.cl-op-ins__p { margin:0 0 22px; font-size:23px; font-weight:400; color:#000; line-height:1.5; }
.cl-op-ins__p:last-child { margin-bottom:0; }
.cl-op-ins__accent { color:var(--pointcolor2); font-weight:600; }
.cl-op-ins__media { width:630px; max-width:100%; margin:0 auto; background:var(--line); overflow:hidden; }
.cl-op-ins__media img { width:100%; height:359px; object-fit:cover; display:block; }
@media (max-width:900px) {
  .cl-op-ins__title { font-size:20px !important; line-height:1.25 !important; }
  .cl-op-ins__p { font-size:13px !important; line-height:1.75 !important; }
}
@media (max-width:740px) {
  .cl-op-ins__p { font-size:clamp(14px,3.9vw,23px); }
  .cl-op-ins__media img { height:auto; aspect-ratio:630 / 359; }
}
/* 상담문의 CTA 박스 */
.cl-op-inq { width:100%; }
.cl-op-inq__inner { width:1004px; max-width:100%; margin:0 auto; min-height:247px; background:#f2f5fb; border-radius:26px; padding:34px 24px 26px; text-align:center; display:flex; flex-direction:column; align-items:center; justify-content:center; }
.cl-op-inq__inner--313 { min-height:313px; }
.cl-op-inq__title { margin:0 0 10px; font-size:26px; font-weight:800; color:var(--navy); }
.cl-op-inq__desc { margin:0 0 15px; font-size:20.5px; font-weight:400; color:var(--navy); line-height:1.4; }
.cl-op-inq__desc2 { margin:0 0 5px; font-size:20.5px; font-weight:400; color:var(--navy); line-height:1.4; }
.cl-op-inq__btns { display:flex; justify-content:center; gap:18px; flex-wrap:wrap; margin:10px 0 10px; }
.cl-op-inq__btn { height:56px; padding:0 26px; border-radius:999px; display:inline-flex; align-items:center; justify-content:center; gap:10px; text-decoration:none; font-size:18px; font-weight:700; }
.cl-op-inq__ico { width:22px; height:22px; object-fit:contain; display:block; }
.cl-op-inq__btn--call { background:var(--btn-call); color:#fff; }
.cl-op-inq__btn--kakao { background:var(--btn-kakao); color:#1b1b1b; }
.cl-op-inq__btn--naver { background:var(--btn-naver); color:#fff; }
@media (max-width:900px) {
  .cl-op-inq__title { font-size:20px !important; line-height:1.25 !important; }
  .cl-op-inq__btn,.cl-op-inq__btn span { font-size:14px !important; line-height:1.1 !important; }
  .cl-op-inq__btn { height:auto !important; padding:12px 14px !important; }
}
@media (max-width:740px) {
  .cl-op-inq__inner { padding:24px 16px 18px; border-radius:20px; }
  .cl-op-inq__title { font-size:clamp(18px,4.8vw,26px); }
  .cl-op-inq__desc { font-size:clamp(14px,3.8vw,20.5px); }
  .cl-op-inq__btns { flex-wrap:nowrap !important; gap:8px !important; }
  .cl-op-inq__btn { flex:1 1 0 !important; min-width:0 !important; padding:10px 10px !important; height:46px !important; font-size:13px !important; gap:6px !important; justify-content:center; }
  .cl-op-inq__ico { width:18px !important; height:18px !important; }
  .cl-op-inq__btn span { white-space:nowrap !important; font-size:13px !important; line-height:1 !important; }
}
@media (max-width:380px) {
  .cl-op-inq__btns { gap:6px !important; }
  .cl-op-inq__btn { padding:9px 8px !important; font-size:12px !important; }
  .cl-op-inq__btn span { font-size:12px !important; }
}
/* 피부 가이드 안내문 */
.cl-op-skin-guide { text-align:center; padding:0 16px; }
.cl-op-skin-guide__icon { display:flex; justify-content:center; margin:0 0 14px; }
.cl-op-skin-guide__icon img { width:44px; height:44px; object-fit:contain; display:block; }
.cl-op-skin-guide__title { margin:0 0 18px; font-size:28px; font-weight:800; color:var(--pointcolor2); }
.cl-op-skin-guide__desc { margin:0 0 22px; font-size:23px; font-weight:400; color:#000; line-height:1.5; }
.cl-op-skin-guide__note { margin:0; font-size:16.8px; font-weight:400; color:#8c8c8b; line-height:1.5; }
@media (max-width:900px) {
  .cl-op-skin-guide__title { font-size:20px !important; line-height:1.25 !important; }
  .cl-op-skin-guide__desc,.cl-op-skin-guide__note { font-size:13px !important; line-height:1.75 !important; }
}
/* 피부증상 탭 */
.cl-op-symskin { width:100%; }
.cl-op-symskin__inner { width:1004px; max-width:100%; margin:0 auto; text-align:center; }
.cl-op-symskin__head { display:flex; align-items:center; justify-content:center; gap:10px; margin-bottom:16px; }
.cl-op-symskin__ico { width:28px; height:28px; object-fit:contain; display:block; }
.cl-op-symskin__title { margin:0; font-size:28px; font-weight:800; color:var(--text); }
.cl-op-symskin__tabs { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:14px; margin:0 auto 22px; }
.cl-op-symskin__tab { border:0; background:transparent; cursor:pointer; padding:0; font-size:23px; font-weight:400; color:#000; line-height:1.2; }
.cl-op-symskin__tab.is-active { color:var(--pointcolor2); font-weight:800; }
.cl-op-symskin__sep { color:#c9c3ba; font-size:23px; line-height:1; user-select:none; }
.cl-op-symskin__panel { display:none; }
.cl-op-symskin__panel.is-active { display:flex; justify-content:center; gap:44px; align-items:flex-start; text-align:left; }
.cl-op-symskin__panel[hidden] { display:none !important; }
.cl-op-symskin__media { width:312.5px; flex:0 0 312.5px; margin:0; }
.cl-op-symskin__media img { width:100%; height:178px; object-fit:cover; display:block; }
.cl-op-symskin__text { max-width:520px; }
.cl-op-symskin__desc { margin:0; font-size:18.5px; font-weight:400; color:#000; line-height:1.5; }
@media (max-width:900px) {
  .cl-op-symskin__tabs { flex-wrap:wrap !important; row-gap:8px; }
  .cl-op-symskin__tab { font-size:13px !important; line-height:1.2 !important; padding:10px 10px !important; height:auto !important; white-space:nowrap; }
  .cl-op-symskin__desc { font-size:13px !important; line-height:1.7 !important; }
  .cl-op-symskin__title { font-size:20px !important; line-height:1.25 !important; }
}
@media (max-width:740px) {
  .cl-op-symskin__panel.is-active { flex-direction:column; align-items:center; text-align:center; gap:16px; }
  .cl-op-symskin__text { max-width:100%; text-align:left; }
  .cl-op-symskin__media { width:min(312.5px,100%); flex:0 0 auto; }
  .cl-op-symskin__media img { height:auto; aspect-ratio:312.5 / 178; }
}
/* 비교 카드 */
.cl-op-compare { width:100%; }
.cl-op-compare__card { width:min(803px,100%); margin:0 auto; background:#f8f4ec; padding:56px 56px 54px; text-align:center; }
.cl-op-compare__title { margin:0 0 38px; font-size:28px; font-weight:800; color:var(--text); }
.cl-op-compare__cols { display:flex; justify-content:center; gap:70px; align-items:flex-start; }
.cl-op-compare__col { width:333px; max-width:100%; }
.cl-op-compare__img { width:333px; height:250px; margin:0 auto 26px; background:#fff; overflow:hidden; }
.cl-op-compare__img img { width:100%; height:100%; object-fit:cover; display:block; }
.cl-op-compare__h { margin:0 0 12px; font-size:20px; font-weight:700; color:var(--pointcolor2); }
.cl-op-compare__p { margin:0; font-size:18px; font-weight:400; color:#000; line-height:1.4; }
.cl-op-compare__noteBox { width:min(708px,100%); margin:42px auto 0; background:#f1e8d7; padding:28px 28px 22px; text-align:center; }
.cl-op-compare__noteMain { margin:0 0 14px; font-size:19px; font-weight:500; color:#000; line-height:1.4; }
.cl-op-compare__noteSub { margin:0; font-size:16.8px; font-weight:400; color:#968a76; line-height:1.5; }
@media (max-width:900px) {
  .cl-op-compare__card { padding:32px 16px 32px; }
  .cl-op-compare__cols { flex-direction:column; gap:26px; }
  .cl-op-compare__col { width:min(333px,100%); margin:0 auto; }
  .cl-op-compare__img { width:min(333px,100%); height:auto; aspect-ratio:333 / 250; }
  .cl-op-compare__title { font-size:20px !important; line-height:1.25 !important; }
  .cl-op-compare__p,.cl-op-compare__noteMain,.cl-op-compare__noteSub { font-size:13px !important; line-height:1.75 !important; }
}
/* 공법/시술 소개 */
.cl-op-gongintro { width:100%; margin:0 auto; }
.cl-op-gongintro__head { text-align:center; margin-bottom:34px; }
.cl-op-gongintro__icon { width:44px; height:auto; display:block; margin:0 auto 14px; }
.cl-op-gongintro__title { margin:0; font-size:28px; font-weight:800; color:var(--pointcolor2); }
.cl-op-gongintro__row { display:flex; align-items:flex-start; justify-content:center; gap:48px; }
.cl-op-gongintro__img { width:302px; height:207px; margin:0; flex:0 0 302px; background:var(--line); overflow:hidden; }
.cl-op-gongintro__img img { width:100%; height:100%; object-fit:cover; display:block; }
.cl-op-gongintro__text { flex:1 1 auto; min-width:0; max-width:480px; text-align:left; }
.cl-op-gongintro__text p { margin:0; font-size:18.5px; font-weight:400; color:#000; line-height:1.5; }
.cl-op-gongintro__text p + p { margin-top:18px; }
.cl-op-gongintro__accent { color:var(--pointcolor2); font-weight:600; }
@media (max-width:900px) {
  .cl-op-gongintro__row { flex-direction:column; align-items:center; gap:18px; }
  .cl-op-gongintro__img { width:min(302px,100%); height:auto; aspect-ratio:302 / 207; flex:0 0 auto; }
  .cl-op-gongintro__text { max-width:100%; }
  .cl-op-gongintro__title { font-size:20px !important; line-height:1.25 !important; }
  .cl-op-gongintro__text p { font-size:13px !important; line-height:1.75 !important; }
}
/* 한 줄 강조문 */
.cl-op-one-liner { margin:0; text-align:center; font-size:24px; font-weight:600; color:#000; line-height:1.6; }
@media (max-width:900px) {
  .cl-op-one-liner { font-size:13px !important; line-height:1.75 !important; }
}
/* 케이스 카드 */
.cl-op-case { width:100%; display:flex; justify-content:center; }
.cl-op-case__box { width:630px; height:334px; max-width:100%; background:#f8f4ec; padding:36px 32px 36px; text-align:center; display:flex; flex-direction:column; justify-content:space-between; }
.cl-op-case__title { margin:0; font-size:22.5px; font-weight:800; color:var(--pointcolor2); text-decoration:underline; text-underline-offset:6px; text-decoration-thickness:2px; }
.cl-op-case__list { margin:18px 0 0; padding:0; list-style:none; display:flex; flex-direction:column; gap:12px; }
.cl-op-case__list li { font-size:18.5px; font-weight:600; color:#000; line-height:1.2; }
.cl-op-case__list li::before { content:"· "; }
.cl-op-case__note { margin:18px 0 0; font-size:16.8px; font-weight:400; color:#968a76; line-height:1.45; }
@media (max-width:900px) {
  .cl-op-case__title { font-size:20px !important; line-height:1.25 !important; }
  .cl-op-case__list li { font-size:13px !important; line-height:1.75 !important; }
}
/* cl-op-post / postimg / priceimg / posthead : 콘텐츠 마무리 블록 */
.cl-op-inq__box { width:100%; height:313px; background:#f2f5fb; border-radius:28px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; }
.cl-op-post { padding:0; }
.cl-op-post__box { width:min(1004px,100%); margin:0 auto; text-align:center; }
.cl-op-post__title { margin:0 0 18px; font-size:28px; font-weight:700; color:var(--pointcolor2); letter-spacing:-0.02em; }
.cl-op-post__p { margin:0; color:#000; line-height:1.7; letter-spacing:-0.02em; }
.cl-op-post__p--lg { font-size:23px; font-weight:400; margin-bottom:10px; }
.cl-op-post__p--md { font-size:20.5px; font-weight:400; margin-bottom:18px; }
.cl-op-post__listbox { display:inline-block; text-align:left; border-top:1px solid #000; border-bottom:1px solid #000; padding:18px 28px; }
.cl-op-post__list { margin:0; padding:0; list-style:none; }
.cl-op-post__list li { font-size:20.5px; color:#000; line-height:1.7; letter-spacing:-0.02em; margin:6px 0; }
.cl-op-post__ico { display:block; margin:0 auto 10px; width:44px; height:auto; }
.cl-op-postimg { width:min(803px,100%); margin:0 auto; }
.cl-op-postimg__figure { margin:0; }
.cl-op-postimg__img { display:block; width:100%; height:auto; }
.cl-op-priceimg { width:min(600px,100%); margin:0 auto; }
.cl-op-priceimg__title { margin:0 0 18px; text-align:center; font-size:28px; font-weight:700; color:#000; }
.cl-op-priceimg__figure { margin:0; }
.cl-op-priceimg__img { display:block; width:100%; height:auto; }
.cl-op-posthead { width:min(1004px,100%); margin:0 auto; }
.cl-op-posthead__inner { text-align:center; padding:26px 16px; }
.cl-op-posthead__ico { display:block; margin:0 auto 10px; width:28px; height:auto; }
.cl-op-posthead__title { margin:0 0 14px; font-size:28px; font-weight:700; color:var(--pointcolor2); }
.cl-op-posthead__desc { margin:0; font-size:23px; font-weight:400; color:#000; line-height:1.6; }
.cl-op-posthead__desc + .cl-op-posthead__desc { margin-top:10px; }
@media (max-width:900px) {
  .cl-op-post__title { font-size:20px !important; line-height:1.25 !important; }
  .cl-op-post__p { font-size:13px !important; line-height:1.75 !important; }
  .cl-op-posthead__inner { padding:18px 14px !important; }
  .cl-op-posthead__title { font-size:18px !important; line-height:1.25 !important; margin:0 0 10px !important; word-break:keep-all; }
  .cl-op-posthead__desc { font-size:13px !important; line-height:1.6 !important; margin:0 !important; word-break:keep-all; }
  .cl-op-posthead__desc + .cl-op-posthead__desc { margin-top:8px !important; }
}
@media (max-width:600px) {
  .cl-op-post__title { font-size:22px; }
  .cl-op-post__p--lg { font-size:16px; }
  .cl-op-post__p--md { font-size:15px; }
  .cl-op-post__listbox { padding:14px 16px; }
  .cl-op-post__list li { font-size:14.5px; }
}
/* 부가 시술 안내 */
.cl-op-addon { width:min(1004px,100%); margin:0 auto; padding:0 16px; }
.cl-op-addon__head { text-align:center; padding:30px 0 8px; }
.cl-op-addon__ico { width:44px; height:auto; display:block; margin:0 auto 10px; }
.cl-op-addon__title { margin:0; font-size:28px; font-weight:700; color:var(--pointcolor2); }
.cl-op-addon__item { padding:30px 0; }
.cl-op-addon__h4 { margin:0 0 8px; font-size:25px; font-weight:700; color:#000; text-align:center; }
.cl-op-addon__p { margin:0 0 30px; font-size:20px; font-weight:400; color:#000; line-height:1.65; text-align:center; }
.cl-op-addon__img { margin:40px auto 0; width:min(680px,100%); }
.cl-op-addon__img img { display:block; width:100%; height:auto; }
.cl-op-addon__bullets { width:min(270px,100%); margin:0 auto 14px; padding:14px 0; list-style:none; border-top:1px solid #000; border-bottom:1px solid #000; }
.cl-op-addon__bullets li { position:relative; padding-left:14px; margin:8px 0; font-size:20.5px; font-weight:500; color:#000; }
.cl-op-post__listbox { display:inline-block; text-align:left; border-top:1px solid #000; border-bottom:1px solid #000; padding:18px 28px; }
.cl-op-addon__bullets li::before { content:"·"; position:absolute; left:0; top:0; }
.cl-op-addon__note { margin:14px 0 0; font-size:18px; font-weight:500; color:#000; text-align:center; }
@media (max-width:900px) {
  .cl-op-addon__p,.cl-op-addon__bullets li { font-size:13px !important; line-height:1.75 !important; }
}
@media (max-width:640px) {
  .cl-op-addon__title { font-size:22px; }
  .cl-op-addon__h4 { font-size:19px; }
  .cl-op-addon__p { font-size:16px; }
  .cl-op-addon__bullets li { font-size:16px; }
  .cl-op-addon__note { font-size:14px; }
}
/* 유의사항 */
.cl-op-note { padding:0; }
.cl-op-note__inner { max-width:1004px; margin:0 auto; text-align:center; }
.cl-op-note__icon { display:flex; justify-content:center; margin-bottom:14px; }
.cl-op-note__icon img { height:44px; width:auto; }
.cl-op-note__title { margin:0 0 18px; font-size:35pt; font-weight:700; color:#000; }
.cl-op-note__desc { margin:0 0 10px; font-size:24px; font-weight:500; color:#000; line-height:1.6; }
.cl-op-em { color:var(--pointcolor2); font-weight:600; }
.cl-op-note__desc:last-child { margin-bottom:0; }
@media (max-width:1100px) {
  .cl-op-note__inner { padding:0 16px; }
  .cl-op-note__title { font-size:clamp(22px,5vw,44px); }
  .cl-op-note__desc { font-size:clamp(14px,2.6vw,24px); }
}
@media (max-width:900px) {
  .cl-op-note__title { font-size:20px !important; line-height:1.25 !important; }
  .cl-op-note__desc { font-size:13px !important; line-height:1.75 !important; }
}

/* =========================================================
다이어트
========================================================= */
/* 다이어트 공통 */
.diet__container { width:min(1200px,100%); margin:0 auto; padding:0 16px; }
.diet-gap { height:30px; }
.diet-sec { padding:60px 0 40px; margin-bottom:120px; }
.diet-sec__title { margin:0 0 18px; text-align:center; font-size:35px; font-weight:800; color:#000; letter-spacing:-0.02em; }
.diet-sec__badge { display:inline-flex; align-items:center; justify-content:center; height:39px; padding:0 22px; border-radius:0; background:var(--navy); color:#fff; font-size:20px; font-weight:600; margin:0 auto 22px; }
.diet-sec { text-align:center; }
.diet-sec__desc { margin:0 auto 34px; max-width:900px; font-size:20px; font-weight:400; color:#000; line-height:1.65; }
.diet-sec__price { margin:0 auto 56px; max-width:700px; }
.diet-sec__priceimg { width:100%; height:auto; display:block; max-width:100%; }
.diet-rec { margin:0 auto; max-width:1000px; text-align:center; }
.diet-rec__title { margin:0 0 10px; font-size:27px; font-weight:800; color:#000; }
.diet-rec__sub { margin:0 0 26px; font-size:18px; font-weight:400; color:#000; }
.diet-rec__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:26px; align-items:start; }
.diet-card__img { width:100%; aspect-ratio:186 / 121; overflow:hidden; background:#f2f2f2; }
.diet-card__img img { width:100%; height:100%; object-fit:cover; display:block; }
.diet-card__txt { margin:12px 0 0; font-size:16px; font-weight:500; color:#000; line-height:1.45; }
.diet-note { padding:70px 0 30px; text-align:center; }
.diet-note__icon img { width:48px; height:auto; display:block; margin:0 auto 14px; }
.diet-note__title { margin:0 0 14px; font-size:35px; font-weight:800; color:#000; }
.diet-note__desc { margin:0 auto; max-width:860px; font-size:24px; font-weight:500; color:#000; line-height:1.75; }
.diet-em { color:var(--pointcolor2); font-weight:800; }
.diet-callout,.diet-callout * { text-align:left; }
.diet-callout { width:min(684px,100%); background:#fbf6f2; padding:clamp(16px,3.6vw,34px); margin:clamp(22px,5vw,54px) auto; }
.diet-callout__title { margin:0 0 clamp(10px,2.2vw,18px); font-weight:700; color:#000; font-size:clamp(18px,4.2vw,28px); line-height:1.25; }
.diet-callout__list { list-style:none; padding:0; margin:0; }
.diet-callout__list li { position:relative; padding-left:clamp(10px,2.4vw,14px); margin:clamp(6px,1.8vw,10px) 0; font-size:clamp(14px,3.6vw,21px); font-weight:500; color:#000; line-height:1.4; }
.diet-callout__list li::before { content:"·"; position:absolute; left:0; top:0; }
:root { --header-offset:110px; }
#detox,#standard,#premium,#line,#yoyo { scroll-margin-top:var(--header-offset); }
.cl-anchor { display:block; height:1px; width:1px; overflow:hidden; }
@media (max-width:900px) {
  .diet-rec__grid { grid-template-columns:1fr; gap:18px; }
  .diet-sec { padding:46px 0 30px; }
  .diet-sec__title { font-size:30px; }
  .diet-sec__desc { font-size:18px; }
  .diet-note__title { font-size:30px; }
  .diet-note__desc { font-size:18px; }
  .diet-sec__badge { height:36px; font-size:16px; padding:0 14px; }
  .diet-card__img { aspect-ratio:auto; overflow:visible; background:transparent; }
  .diet-card__img img { height:auto; object-fit:contain; }
  .diet-sec__price,.diet-sec__figure,.diet-sec__table { max-width:100%; overflow:visible; }
  .diet-sec__priceimg,.diet-sec__figure img,.diet-sec__table img { width:100%; height:auto; object-fit:contain; }
}
