@charset "euc-kr";
/* ============================================================
   procedure-detail.css
   WEADD(2026년 8월): 시술 상세페이지(예: 사각턱 보톡스) 공통 디자인
   망고보드 PC 시안 기준. 색상은 시안 이미지에서 픽셀 직접 추출:
     - 상단배너      : #d5a58e
     - 포인트 세로바 : #d5b491  (시술안내 페이지 테두리색과 동일 - 색 체계 통일)
     - 박스 배경     : #faf9f4
     - FAQ 질문 배경 : #f7f7ef
     - 제목 텍스트   : #1e1e1e
   상세페이지가 여러 개 생겨도 이 파일 하나를 공유합니다.
   ============================================================ */

@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable-dynamic-subset.css");

.dt_page, .dt_page * {
    font-family: "Pretendard Variable", Pretendard, "Noto Sans KR", sans-serif;
    box-sizing: border-box;
}

/* ===== 공통 래퍼 ===== */
.dt_inner { max-width: 1100px; margin: 0 auto; padding: 0 24px; }

/* ===== 상단 배너 =====
   [WEADD 2026-09-04] 살구색 단색 띠 -> 허브(procedure.css .pd_banner)와 같은 원장님 사진 배너로 통일.
   수치(높이 440, 흰 그라데이션, 제목 40px/골드 밑줄, 영문 13px)는 허브와 동일. 사진만 카테고리별로 다름 */
.dt_banner {
    position: relative; height: 440px; box-sizing: border-box;
    display: flex; flex-flow: column-reverse; justify-content: center; align-items: flex-start;
    text-align: left;
    padding: 0 20px 0 max(24px, calc((100vw - 1400px) / 2 + 24px));
    background: url('/images/sub08/banner_treat.jpg') center 30% / cover no-repeat, #f5f1ea;
}
.dt_banner::before { content: ''; position: absolute; inset: 0;
    background: linear-gradient(90deg, rgba(255,255,255,0.96) 0%, rgba(255,255,255,0.90) 34%, rgba(255,255,255,0.24) 78%, rgba(255,255,255,0.05) 100%); }
.dt_banner .pg_tit {
    position: relative; font-family: 'Pretendard', "Pretendard Variable", 'Malgun Gothic', sans-serif !important;
    font-size: 40px; font-weight: 700 !important; color: #1e1e1e;
    letter-spacing: 0; margin: 0;
}
.dt_banner .pg_tit::after { content: ''; display: block; width: 44px; height: 2px; background: #b99a63; margin-top: 16px; }
.dt_banner .en {
    position: relative; font-family: 'Raleway', 'Pretendard', sans-serif !important;
    font-size: 13px; font-weight: 400 !important; color: #b99a63;
    letter-spacing: 4px; margin: 0 0 12px;
}
/* 카테고리별 배너 사진 (원장님 사진 5장을 구도 달리 잘라 사용. 새 사진 오면 여기 경로만 바꾸면 됨) */
.dt_banner_botox          { background-image: url('/images/sub08/banner_treat.jpg'); }
.dt_banner_filler         { background-image: url('/images/sub08/banner_dt_consult.jpg'); }
.dt_banner_laser-lifting  { background-image: url('/images/sub08/banner_dt_laser_wide.jpg'); }
.dt_banner_thread-lifting { background-image: url('/images/sub08/banner_dt_consult_tight.jpg'); }
.dt_banner_skin-booster   { background-image: url('/images/sub08/banner_dt_laser_mid.jpg'); }
.dt_banner_acne           { background-image: url('/images/sub08/banner_dt_consult_mid.jpg'); }
.dt_banner_hair-removal   { background-image: url('/images/sub08/banner_dt_laser_tight.jpg'); }
.dt_banner_pigmentation   { background-image: url('/images/sub08/banner_dt_consult_v.jpg'); }
.dt_banner_body-care      { background-image: url('/images/sub08/banner_about.jpg'); }

/* ===== 카테고리 탭 9개 (허브 .pd_tabs 와 동일) ===== */
.dt_tabs { background: #fff; border-bottom: 1px solid #eee; padding: 18px 24px 0 max(24px, calc((100vw - 1400px) / 2 + 24px)); }
.dt_tabs ul {
    display: flex; flex-wrap: nowrap; justify-content: flex-start;
    gap: 30px; margin: 0; overflow-x: auto;
    list-style: none; padding: 0;
}
.dt_tabs li { flex: 0 0 auto; }
.dt_tabs a {
    display: block; min-width: 0; text-align: left;
    padding: 0 2px 14px; border: 0; border-radius: 0;
    background: none; color: #555; font-size: 17px; font-weight: 400;
    font-family: 'NanumSquare', 'Pretendard', 'Malgun Gothic', sans-serif !important;
    text-decoration: none; transition: color 0.2s ease; white-space: nowrap;
}
.dt_tabs a:hover { background: none; color: #1e1e1e; }
.dt_tabs li.on a { background: none; color: #1e1e1e; font-weight: 700 !important; border-bottom: 2px solid #b99a63; }

/* ===== 브레드크럼 ===== */
.dt_bc { background: #fff; padding: 18px 0 0; }
.dt_bc .dt_inner { font-size: 13px; color: #999; max-width: 1400px; padding: 0 24px; } /* [2026-09-04] 허브 브레드크럼과 같은 폭(1400)으로 정렬 */
.dt_bc a { color: #999; text-decoration: none; }
.dt_bc a:hover { color: #666; text-decoration: underline; }
.dt_bc .sep { margin: 0 7px; color: #ccc; }
.dt_bc .current { color: #333; }

/* ===== 히어로 (좌 텍스트 / 우 모델사진) ===== */
.dt_hero { position: relative; background: #faf7f0; overflow: hidden; }
.dt_hero_inner {
    max-width: 1400px; margin: 0 auto;
    display: grid; grid-template-columns: 1fr 1fr; align-items: center;
    min-height: 430px;
}
.dt_hero_txt { padding: 56px 40px 56px 60px; }
.dt_hero_txt .brand { font-size: 20px; font-weight: 200; color: #444; letter-spacing: 0.08em; margin: 0 0 4px; }
.dt_hero_txt h1 { font-size: 46px; font-weight: 700; color: #1e1e1e; margin: 0 0 24px; line-height: 1.15; } /* [2026-09-04] h2 -> h1 */
.dt_hero_txt p { /* WEADD: 확정값 - 허브 페이지와 동일 (18.5px / 1.45) */ font-size: 18.5px; line-height: 1.45; color: #555; margin: 0; word-break: keep-all; }
.dt_hero_txt strong { font-weight: 700; color: #1e1e1e; }
.dt_hero_img { position: relative; align-self: stretch; min-height: 430px; }
.dt_hero_img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center top; }
.dt_hero_img.is_empty { background: #ece3d7; display: flex; align-items: center; justify-content: center; color: #b09a80; font-size: 15px; }

/* ===== 본문 섹션 공통 ===== */
.dt_body { background: #fff; padding: 60px 0 90px; }
.dt_sec { margin-bottom: 70px; }
.dt_sec:last-child { margin-bottom: 0; }

/* 섹션 제목 (왼쪽 세로 포인트바) */
.dt_sec > .eyebrow { font-size: 13px; color: #999; margin: 0 0 6px; padding-left: 16px; }
.dt_sec > h2 {
    position: relative; font-size: 30px; font-weight: 700; color: #1e1e1e;
    margin: 0 0 22px; padding-left: 16px; line-height: 1.35; word-break: keep-all;
}
.dt_sec > h2::before {
    content: ''; position: absolute; left: 0; top: 4px; bottom: 4px;
    width: 4px; background: #d5b491;
}
.dt_sec > h3 { font-size: 17px; font-weight: 700; color: #1e1e1e; margin: 0 0 12px; }

/* 리드 박스 (연한 배경 강조문) */
.dt_leadbox {
    background: #faf9f4; border: 1px solid #efeae0;
    padding: 24px 28px; margin: 0 0 20px;
    font-size: 15px; line-height: 1.8; color: #444; word-break: keep-all;
}
/* 일반 본문 */
.dt_txt { font-size: 14px; line-height: 1.9; color: #666; margin: 0 0 18px; word-break: keep-all; }
.dt_txt:last-child { margin-bottom: 0; }
.dt_txt strong { color: #1e1e1e; font-weight: 700; }

/* ===== 추천 대상 카드 (2열) ===== */
.dt_cards { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; list-style: none; padding: 0; margin: 0; }
.dt_cards li {
    background: #faf9f4; border: 1px solid #efeae0;
    padding: 22px 24px; font-size: 15px; line-height: 1.6; color: #444;
    word-break: keep-all;
}

/* ===== 번호 스텝 목록 ===== */
.dt_steps { list-style: none; padding: 0; margin: 0; border-top: 1px solid #e8e4dc; }
.dt_steps li {
    display: flex; gap: 22px; align-items: baseline;
    padding: 18px 10px; border-bottom: 1px solid #e8e4dc;
    font-size: 15px; line-height: 1.6; color: #555; word-break: keep-all;
}
.dt_steps li .no { flex: 0 0 auto; font-size: 13px; color: #b3a48f; font-weight: 600; letter-spacing: 0.05em; }
.dt_steps li strong { color: #1e1e1e; font-weight: 700; }

/* ===== Q&A 2열 박스 ===== */
.dt_qa { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; margin-top: 26px; }
.dt_qa .box { border: 1px solid #e5e0d6; padding: 24px 26px; }
.dt_qa .box .q { font-size: 16px; font-weight: 700; color: #1e1e1e; margin: 0 0 12px; }
.dt_qa .box .a { font-size: 14px; line-height: 1.75; color: #666; margin: 0; word-break: keep-all; }

/* ===== 유튜브 (16:9 반응형) ===== */
.dt_video { position: relative; width: 100%; padding-bottom: 56.25%; height: 0; overflow: hidden; background: #000; margin: 0 0 26px; }
.dt_video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
/* 링크 미입력 시 안내 자리 */
.dt_video.is_empty { padding-bottom: 0; height: 300px; display: flex; align-items: center; justify-content: center; color: #888; font-size: 14px; background: #f2f0eb; }

/* ===== 주의사항 박스 ===== */
.dt_caution { border: 1px solid #e5e0d6; padding: 26px 30px; margin-bottom: 16px; }
.dt_caution:last-child { margin-bottom: 0; }
.dt_caution h3 { font-size: 16px; font-weight: 700; color: #1e1e1e; margin: 0 0 16px; }
.dt_caution ul { list-style: none; padding: 0; margin: 0; }
.dt_caution li {
    position: relative; padding-left: 20px; margin-bottom: 11px;
    font-size: 14px; line-height: 1.7; color: #666; word-break: keep-all;
}
.dt_caution li:last-child { margin-bottom: 0; }
.dt_caution li::before {
    content: ''; position: absolute; left: 0; top: 8px;
    width: 7px; height: 7px; border: 1px solid #c9bda9; border-radius: 50%;
}

/* ===== FAQ ===== */
.dt_faq { border: 1px solid #efeae0; background: #faf9f4; padding: 26px; }
.dt_faq dl { margin: 0; }
.dt_faq dt {
    background: #f7f7ef; border: 1px solid #e8e4d8;
    padding: 16px 22px; font-size: 15px; font-weight: 600; color: #1e1e1e;
    word-break: keep-all;
}
.dt_faq dd {
    margin: 0 0 14px; padding: 18px 22px 22px;
    font-size: 14px; line-height: 1.8; color: #555; word-break: keep-all;
}
.dt_faq dd:last-child { margin-bottom: 0; }
.dt_faq dd strong { color: #1e1e1e; }

/* ===== 상담 버튼 ===== */
.dt_cta { display: flex; flex-wrap: wrap; gap: 12px; margin: 24px 0 0; }
.dt_cta a {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    min-width: 190px; padding: 15px 26px; border-radius: 30px;
    font-size: 15px; font-weight: 600; text-decoration: none;
}
.dt_cta .kakao { background: #fee500; color: #191600; }
.dt_cta .naver { background: #03c75a; color: #fff; }
.dt_cta a:hover { opacity: 0.88; }

/* ===== 해시태그 ===== */
.dt_tags { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; padding: 0; margin: 34px 0 0; }
.dt_tags li {
    border: 1px solid #e2ddd3; border-radius: 20px;
    padding: 8px 18px; font-size: 13px; font-weight: 550; color: #8a8071; /* WEADD: 확정값 550 */
}

/* ============================================================
   반응형
   ============================================================ */
@media (max-width: 1024px) {
    .dt_banner { height: 440px; }
    .dt_banner .pg_tit { font-size: 32px; }
    .dt_banner .en { font-size: 12px; }
    .dt_tabs { padding-top: 14px; }
    .dt_tabs ul { gap: 24px; }
    .dt_tabs a { font-size: 16px; padding-bottom: 12px; }

    /* 히어로: 사진 위 / 글 아래 세로 배치 */
    .dt_hero_inner { grid-template-columns: 1fr; min-height: 0; }
    .dt_hero_img { order: 1; min-height: 0; height: 46vw; max-height: 400px; }
    /* 모바일/태블릿은 세로 배치라 인물 얼굴이 아래로 밀리므로 크롭 기준을 위로 */
    .dt_hero_img img { object-position: center 25%; }
    .dt_hero_txt { order: 2; padding: 34px 24px 44px; }
    .dt_hero_txt h1 { font-size: 34px; margin-bottom: 18px; }

    .dt_body { padding: 44px 0 66px; }
    .dt_sec { margin-bottom: 52px; }
    .dt_sec > h2 { font-size: 24px; }
}

@media (max-width: 600px) {
    .dt_inner { padding: 0 16px; }
    .dt_banner { height: 260px; background-position: 68% 30%; }
    .dt_banner::before { background: linear-gradient(90deg, rgba(255,255,255,0.96) 0%, rgba(255,255,255,0.9) 45%, rgba(255,255,255,0.35) 100%); }
    .dt_banner .pg_tit { font-size: 25px; }
    .dt_banner .pg_tit::after { margin-top: 12px; }
    .dt_banner .en { font-size: 11px; letter-spacing: 3px; }
    .dt_tabs { padding: 12px 24px 0; }
    .dt_tabs ul { gap: 20px; }
    .dt_tabs a { font-size: 14.5px; padding-bottom: 11px; }

    .dt_hero_img { height: 62vw; max-height: 320px; }
    .dt_hero_txt { padding: 26px 16px 34px; }
    .dt_hero_txt .brand { font-size: 16px; }
    .dt_hero_txt h1 { font-size: 26px; margin-bottom: 14px; }
    .dt_hero_txt p { font-size: 15px; line-height: 1.45; }

    .dt_body { padding: 32px 0 50px; }
    .dt_sec { margin-bottom: 40px; }
    .dt_sec > .eyebrow { font-size: 12px; padding-left: 12px; }
    .dt_sec > h2 { font-size: 19px; padding-left: 12px; margin-bottom: 16px; }
    .dt_sec > h2::before { width: 3px; }
    .dt_sec > h3 { font-size: 15px; }

    .dt_leadbox { padding: 18px 18px; font-size: 14px; line-height: 1.75; }
    .dt_txt { font-size: 13px; line-height: 1.85; }

    /* 카드 1열 */
    .dt_cards { grid-template-columns: 1fr; gap: 10px; }
    .dt_cards li { padding: 16px 18px; font-size: 14px; }

    /* 스텝: 번호를 위로 올려 2줄 배치 */
    .dt_steps li { flex-direction: column; gap: 6px; padding: 15px 4px; font-size: 14px; }

    /* Q&A 1열 */
    .dt_qa { grid-template-columns: 1fr; gap: 12px; margin-top: 20px; }
    .dt_qa .box { padding: 18px 20px; }
    .dt_qa .box .q { font-size: 15px; margin-bottom: 9px; }
    .dt_qa .box .a { font-size: 13px; }

    .dt_video.is_empty { height: 200px; font-size: 13px; }

    .dt_caution { padding: 20px 20px; }
    .dt_caution h3 { font-size: 15px; margin-bottom: 13px; }
    .dt_caution li { font-size: 13px; padding-left: 17px; }

    .dt_faq { padding: 16px; }
    .dt_faq dt { padding: 13px 16px; font-size: 14px; }
    .dt_faq dd { padding: 14px 16px 18px; font-size: 13px; }

    /* 상담 버튼: 가로 꽉 채워 누르기 쉽게 */
    .dt_cta { flex-direction: column; gap: 10px; }
    .dt_cta a { width: 100%; min-width: 0; padding: 14px 20px; font-size: 15px; }

    .dt_tags { gap: 6px; margin-top: 26px; }
    .dt_tags li { font-size: 12px; padding: 7px 14px; }
}

/* 아주 좁은 화면 */
@media (max-width: 360px) {
    .dt_sec > h2 { font-size: 17px; }
    .dt_hero_txt h1 { font-size: 23px; }
}


/* ============================================================
   WEADD(2026년 8월): 신규 섹션 스타일 (요약표 / 시기별 변화 / 부작용 고지)
   ============================================================ */
/* 시술 정보 요약표 */
.dt_summary { border: 1px solid #efeae0; margin: 0 0 54px; }
.dt_summary table { width: 100%; border-collapse: collapse; }
.dt_summary th, .dt_summary td { padding: 14px 20px; font-size: 15px; text-align: left; border-bottom: 1px solid #f0ece2; word-break: keep-all; }
.dt_summary tr:last-child th, .dt_summary tr:last-child td { border-bottom: 0; }
.dt_summary th { width: 30%; font-weight: 600; color: #1e1e1e; background: #faf9f4; }
.dt_summary td { color: #555; }
.dt_summary td a { color: #a08a63; }

/* 시술 후 변화 - 전후사진 자리 + 타임라인 */
.dt_baph { display: flex; align-items: center; justify-content: center; aspect-ratio: 16 / 7; background: #f2f0eb; border: 1px dashed #cfc4b0; color: #a09580; font-size: 14px; letter-spacing: 1px; }
.dt_balink { display: inline-block; margin-top: 10px; font-size: 14px; color: #a08a63; text-decoration: none; }
.dt_balink:hover { text-decoration: underline; }
.dt_timeline { list-style: none; padding: 0; margin: 6px 0 0; border-top: 1px solid #e8e4dc; }
.dt_timeline li { display: flex; gap: 18px; padding: 14px 6px; border-bottom: 1px solid #e8e4dc; font-size: 15px; line-height: 1.7; word-break: keep-all; }
.dt_timeline li b { flex: 0 0 170px; font-weight: 600; color: #1e1e1e; }
.dt_timeline li span { color: #666; }
.dt_txt.dt_small { font-size: 13px; color: #8a8071; margin-top: 12px; }

/* 부작용 고지 (원장 확정 문구) */
.dt_sidenote { background: #faf9f4; border: 1px solid #e5e0d6; padding: 16px 20px; margin: 16px 0 0; font-size: 13.5px; line-height: 1.8; color: #6b6355; word-break: keep-all; }

@media (max-width: 600px) {
    .dt_summary th, .dt_summary td { font-size: 13px; padding: 11px 12px; }
    .dt_summary { margin-bottom: 38px; }
    .dt_timeline li { flex-direction: column; gap: 3px; font-size: 14px; }
    .dt_timeline li b { flex: none; }
    .dt_baph { aspect-ratio: 16 / 9; font-size: 13px; }
}


/* ============================================================
   WEADD(2026년 8월): 사이트 공통 폰트 체계 적용 (사용자 요청)
   - 큰 제목(배너·히어로·섹션 제목)은 프리텐다드 굵게 그대로
   - 본문·소제목·표·카드 = 나눔스퀘어, 글자 한 단계 키우고 행간 1.7대, 색 #444
   - 병원소개/의료진소개/시술안내 허브와 같은 느낌으로 통일
   ============================================================ */
/* [WEADD 2026-09-04] 배너 영문 라벨용 - 허브와 동일 (OFL 무료, /fonts/Raleway-Regular.woff2) */
@font-face { font-family: 'Raleway'; src: url('/fonts/Raleway-Regular.woff2') format('woff2'); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: 'NanumSquare'; src: url('/fonts/NanumSquareR.woff2') format('woff2'); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: 'NanumSquare'; src: url('/fonts/NanumSquareB.woff2') format('woff2'); font-weight: 700; font-style: normal; font-display: swap; }

/* WEADD: 자식 요소(strong·b 강조 포함)까지 같은 글꼴로 - 한 문장 안에서 폰트가 섞이지 않게.
   해시태그(.dt_tags)는 확정값(프리텐다드 550)이라 제외 */
.dt_hero_txt p:not(.brand), .dt_hero_txt p:not(.brand) *,
.dt_summary th, .dt_summary th *, .dt_summary td, .dt_summary td *,
.dt_leadbox, .dt_leadbox *, .dt_txt, .dt_txt *, .dt_cards li, .dt_cards li *,
.dt_steps li, .dt_steps li *, .dt_qa .box .q, .dt_qa .box .a, .dt_qa .box .a *,
.dt_caution h3, .dt_caution li, .dt_caution li *,
.dt_faq dt, .dt_faq dd, .dt_faq dd *, .dt_timeline li, .dt_timeline li *,
.dt_sidenote, .dt_sidenote *, .dt_sec > h3, .dt_balink, .dt_cta a {
    font-family: 'NanumSquare', "Pretendard Variable", Pretendard, 'Malgun Gothic', sans-serif !important;
}
/* 큰 제목 계열은 굵기 700으로 통일 (다른 페이지들과 동일) */
.dt_hero_txt h1 { font-weight: 700; }
.dt_cta a { font-weight: 700; }
.dt_steps li .no { font-weight: 700; }
/* 본문류: 크기 한 단계 업 + 행간·색 통일 */
.dt_hero_txt p { line-height: 1.7; color: #444; }
.dt_txt { font-size: 18px; line-height: 1.75; color: #444; }
.dt_leadbox { font-size: 18.5px; line-height: 1.75; color: #444; }
.dt_cards li { font-size: 18px; line-height: 1.7; color: #444; }
.dt_steps li { font-size: 18px; line-height: 1.7; color: #444; }
.dt_summary th, .dt_summary td { font-size: 18px; }
.dt_summary td { color: #444; }
.dt_qa .box .q { font-size: 19px; font-weight: 700; }
.dt_qa .box .a { font-size: 17.5px; line-height: 1.75; color: #444; }
.dt_caution h3 { font-size: 18.5px; font-weight: 700; }
.dt_caution li { font-size: 17.5px; line-height: 1.75; color: #444; }
.dt_faq dt { font-size: 18px; font-weight: 700; }
.dt_faq dd { font-size: 17.5px; line-height: 1.8; color: #444; }
.dt_timeline li { font-size: 18px; }
.dt_timeline li span { color: #444; }
.dt_sidenote { font-size: 16px; }
.dt_txt.dt_small { font-size: 15px; color: #8a8071; }
/* 소제목·강조는 나눔스퀘어 굵게 */
.dt_sec > h3 { font-size: 19.5px; font-weight: 700; }
.dt_summary th, .dt_faq dt, .dt_timeline li b { font-weight: 700; }

/* 모바일: 전체적으로 한 단계 큰 크기 유지 */
@media (max-width: 600px) {
    .dt_hero_txt p:not(.brand) { font-size: 16.5px; line-height: 1.7; }
    .dt_txt { font-size: 16.5px; }
    .dt_leadbox { font-size: 17px; }
    .dt_cards li { font-size: 17px; }
    .dt_steps li { font-size: 17px; }
    .dt_summary th, .dt_summary td { font-size: 15.5px; }
    .dt_qa .box .q { font-size: 17.5px; }
    .dt_qa .box .a { font-size: 16px; }
    .dt_caution h3 { font-size: 17.5px; }
    .dt_caution li { font-size: 16px; }
    .dt_faq dt { font-size: 17px; }
    .dt_faq dd { font-size: 16px; }
    .dt_timeline li { font-size: 16.5px; }
    .dt_sec > h3 { font-size: 18px; }
}
