@charset "utf-8";

/* 의식하진정 임플란트 (/implant/sedation) — Figma PC 1920 / MO 390 기준 */
/* 고정 헤더(PC 73 / 태블릿 72 / 모바일 52)에 히어로 상단이 가려지지 않게 본문을 헤더 높이만큼 내린다 */
.ctt_sedation #ctt_con {margin-top: 73px;}
@media screen and (max-width: 1024px) { .ctt_sedation #ctt_con {margin-top: 72px;} }
@media screen and (max-width: 768px) { .ctt_sedation #ctt_con {margin-top: 52px;} }
.ctt_sedation section {width: 100%; box-sizing: border-box; font-family: 'Noto Sans KR', sans-serif; color: #1C1C1C; word-break: keep-all;}
.ctt_sedation section * {box-sizing: border-box;}
.ctt_sedation section h2, .ctt_sedation section h3, .ctt_sedation section p, .ctt_sedation section ul, .ctt_sedation section ol {margin: 0; padding: 0; list-style: none;}
.ctt_sedation .sd-mo {display: none;}

/* hero */
.ctt_sedation .sd-hero {height: 700px; background: #F4F6FB url(../images/pc_hero_bg.jpg) center / cover no-repeat; padding: 168px 0 0 17.97%;}
.ctt_sedation .sd-hero__inner {width: 701px; max-width: 100%; display: flex; flex-direction: column; align-items: flex-start;}
.ctt_sedation .sd-hero__lead {font-size: 30px; font-weight: 500; line-height: normal; letter-spacing: -0.6px; margin-bottom: 20px;}
.ctt_sedation .sd-hero__title {font-family: 'Pretendard', 'Noto Sans KR', sans-serif; font-size: 65px; font-weight: 700; line-height: normal; letter-spacing: -1.3px; color: #3D5796; white-space: nowrap; margin-bottom: 35px;}
.ctt_sedation .sd-hero__desc {font-size: 25px; font-weight: 400; line-height: 1.4; letter-spacing: -0.5px; white-space: nowrap; margin-bottom: 55px;}
.ctt_sedation .sd-hero__points {display: flex; align-items: center; gap: 30px;}
.ctt_sedation .sd-hero__points li {display: flex; align-items: center; gap: 20px;}
.ctt_sedation #ctt_con .sd-hero__points img {width: 70px; height: 70px; object-fit: cover; flex-shrink: 0;}
.ctt_sedation .sd-hero__points span {font-size: 22px; line-height: 1.4; letter-spacing: -0.44px; white-space: nowrap;}

/* therapy */
.ctt_sedation .sd-therapy {background: #fff; padding: 150px 0 183px; display: flex; flex-direction: column; align-items: center;}
.ctt_sedation .sd-therapy__tab {width: 804px; max-width: 100%; padding: 30px 0; border-radius: 30px 30px 0 0; background: #3D5796; color: #fff; font-size: 50px; font-weight: 700; line-height: 70px; letter-spacing: -1px; text-align: center;}
.ctt_sedation .sd-therapy__card {width: 804px; max-width: 100%; filter: drop-shadow(0 4px 7.5px rgba(0,0,0,0.15));}
.ctt_sedation #ctt_con .sd-therapy__img {display: block; width: 100%; height: 485px; object-fit: cover;}
.ctt_sedation .sd-therapy__list li {display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 50px 0; background: #F4F6FB; border-bottom: 1px dashed #90A4D7; text-align: center; letter-spacing: -0.7px; white-space: nowrap;}
.ctt_sedation .sd-therapy__list li:last-child {border-bottom: 0; border-radius: 0 0 30px 30px;}
.ctt_sedation .sd-therapy__list strong {font-size: 35px; font-weight: 600; line-height: 40px;}
.ctt_sedation .sd-therapy__list span {font-size: 30px; font-weight: 400; line-height: 40px;}

/* steps */
.ctt_sedation .sd-steps {background: #F5F5F5; padding: 150px 0; display: flex; flex-direction: column; align-items: center; gap: 70px;}
.ctt_sedation .sd-steps__title {font-size: 50px; font-weight: 700; line-height: 70px; letter-spacing: -1px; text-align: center;}
.ctt_sedation .sd-steps__title span {color: #3D5796;}
.ctt_sedation .sd-steps__list {display: flex; justify-content: center; gap: 31px;}
.ctt_sedation .sd-steps__list li {width: 286px; min-height: 359px; display: flex; flex-direction: column; align-items: center; text-align: center;}
.ctt_sedation #ctt_con .sd-steps__list img {display: block; width: 100%; height: 200px; object-fit: cover; border-radius: 10px; margin-bottom: 39px;}
.ctt_sedation .sd-steps__list h3 {font-size: 25px; font-weight: 600; line-height: 44px; letter-spacing: -0.5px; color: #3D5796; margin-bottom: 10px;}
.ctt_sedation .sd-steps__list p {font-size: 18px; font-weight: 400; line-height: normal; letter-spacing: -0.36px; white-space: nowrap;}

/* target */
.ctt_sedation .sd-target {background: #fff; padding: 150px 0 180px; display: flex; flex-direction: column; align-items: center; gap: 70px;}
.ctt_sedation .sd-target__head {display: flex; flex-direction: column; align-items: center; gap: 20px; text-align: center;}
.ctt_sedation .sd-target__lead {font-size: 35px; font-weight: 400; line-height: 50px; letter-spacing: -0.7px;}
.ctt_sedation .sd-target__title {font-size: 50px; font-weight: 700; line-height: 70px; letter-spacing: -1px; color: #3D5796;}
.ctt_sedation .sd-target__list {display: flex; flex-direction: column; align-items: center; gap: 20px; width: 100%;}
.ctt_sedation .sd-target__list li {display: flex; align-items: center; gap: 25px; width: 794px; max-width: 100%; height: 82px; padding-left: 34px; border-radius: 50px; background: linear-gradient(110.42deg, #3D5796 17.602%, #1E2B4B 98.149%); color: #fff;}
.ctt_sedation .sd-target__icon {flex-shrink: 0; width: 45px; height: 45px; background: url(../images/icon_check_pc.svg) center / 100% 100% no-repeat;}
.ctt_sedation .sd-target__list p {font-size: 34px; font-weight: 400; line-height: 56.16px; letter-spacing: -0.68px; white-space: nowrap;}
.ctt_sedation .sd-target__list strong {font-weight: 600;}
.ctt_sedation .sd-target__list .sd-bold {font-weight: 700;}

/* message */
.ctt_sedation .sd-message {background: #F4F6FB url(../images/pc_message_bg.jpg) center / cover no-repeat; padding: 140px 0 133px 400px;}
.ctt_sedation .sd-message__quote p {font-family: 'KoPubBatang_Pro', serif; font-size: 30px; font-weight: 500; line-height: 45px; letter-spacing: -0.6px; white-space: nowrap; margin-bottom: 50px;}
.ctt_sedation .sd-message__body {font-size: 18px; font-weight: 400; line-height: 28px; letter-spacing: -0.36px; white-space: nowrap;}
.ctt_sedation .sd-message__block {margin-bottom: 15px;}
.ctt_sedation .sd-message__block strong, .ctt_sedation .sd-message__body > .sd-message__block p strong {font-weight: 600;}
.ctt_sedation .sd-message__sign {margin-top: 30px; font-size: 18px; font-weight: 600; line-height: 50px; letter-spacing: -0.4px;}
.ctt_sedation .sd-message__sign strong {font-size: 20px; font-weight: 700;}

/*
 * 769~1919px: 인사말 글을 원장 사진(손 끝이 화면 폭의 약 50%+100px 지점)과 겹치지 않는
 * 왼쪽 단에 가두고 줄바꿈을 풀어 자연스럽게 흘린다. (1920px 시안은 위 기본값 그대로)
 */
@media screen and (min-width: 769px) and (max-width: 1919px) {
    .ctt_sedation .sd-message {padding-left: 20.83%;}
    .ctt_sedation .sd-message__quote p, .ctt_sedation .sd-message__body {white-space: normal; width: calc(29.17% + 60px);}
    .ctt_sedation .sd-message__quote br, .ctt_sedation .sd-message__body br {display: none;}
}

/* 태블릿·소형 노트북 (769~1280px): 시안 비율을 유지하며 글자·여백·카드를 유동 크기로 */
@media screen and (min-width: 769px) and (max-width: 1280px) {
    .ctt_sedation .sd-hero {height: auto; padding: clamp(90px, 13vw, 168px) 0 clamp(90px, 13vw, 168px) 8%;}
    .ctt_sedation .sd-hero__lead {font-size: clamp(22px, 2.35vw, 30px); margin-bottom: 16px;}
    .ctt_sedation .sd-hero__title {font-size: clamp(46px, 5.08vw, 65px); margin-bottom: clamp(24px, 2.7vw, 35px);}
    .ctt_sedation .sd-hero__desc {font-size: clamp(17px, 1.95vw, 25px); margin-bottom: clamp(36px, 4.3vw, 55px);}
    .ctt_sedation .sd-hero__points {gap: clamp(18px, 2.3vw, 30px);}
    .ctt_sedation .sd-hero__points li {gap: clamp(12px, 1.6vw, 20px);}
    .ctt_sedation #ctt_con .sd-hero__points img {width: clamp(52px, 5.47vw, 70px); height: clamp(52px, 5.47vw, 70px);}
    .ctt_sedation .sd-hero__points span {font-size: clamp(17px, 1.72vw, 22px);}

    .ctt_sedation .sd-therapy {padding: clamp(100px, 11.7vw, 150px) 24px clamp(120px, 14vw, 180px);}
    .ctt_sedation .sd-therapy__tab {padding: clamp(22px, 2.35vw, 30px) 0; font-size: clamp(34px, 3.9vw, 50px); line-height: 1.4;}
    .ctt_sedation #ctt_con .sd-therapy__img {height: clamp(300px, 37.9vw, 485px);}
    .ctt_sedation .sd-therapy__list li {padding: clamp(32px, 3.9vw, 50px) 0;}
    .ctt_sedation .sd-therapy__list strong {font-size: clamp(26px, 2.73vw, 35px); line-height: 1.15;}
    .ctt_sedation .sd-therapy__list span {font-size: clamp(22px, 2.34vw, 30px); line-height: 1.3;}

    .ctt_sedation .sd-steps {padding: clamp(100px, 11.7vw, 150px) 24px; gap: clamp(48px, 5.5vw, 70px);}
    .ctt_sedation .sd-steps__title {font-size: clamp(34px, 3.9vw, 50px); line-height: 1.4;}
    .ctt_sedation .sd-steps__list {--sd-gap: clamp(16px, 2.4vw, 31px); width: 100%; max-width: 1237px; gap: var(--sd-gap);}
    .ctt_sedation .sd-steps__list li {min-height: 0; width: calc((100% - 3 * var(--sd-gap)) / 4); max-width: 286px;}
    .ctt_sedation #ctt_con .sd-steps__list img {height: auto; aspect-ratio: 286 / 200; margin-bottom: clamp(20px, 3vw, 39px);}
    .ctt_sedation .sd-steps__list h3 {font-size: clamp(20px, 1.95vw, 25px); line-height: 1.5;}
    .ctt_sedation .sd-steps__list p {font-size: clamp(15px, 1.4vw, 18px);}

    .ctt_sedation .sd-target {padding: clamp(100px, 11.7vw, 150px) 24px clamp(120px, 14vw, 180px); gap: clamp(48px, 5.5vw, 70px);}
    .ctt_sedation .sd-target__lead {font-size: clamp(24px, 2.73vw, 35px); line-height: 1.45;}
    .ctt_sedation .sd-target__title {font-size: clamp(34px, 3.9vw, 50px); line-height: 1.4;}
    .ctt_sedation .sd-target__list li {height: clamp(64px, 6.4vw, 82px); padding-left: clamp(22px, 2.65vw, 34px); gap: clamp(16px, 1.95vw, 25px);}
    .ctt_sedation .sd-target__icon {width: clamp(34px, 3.5vw, 45px); height: clamp(34px, 3.5vw, 45px);}
    .ctt_sedation .sd-target__list p {font-size: min(34px, calc(4.9vw - 9px)); line-height: 1.4;}

    .ctt_sedation .sd-message {padding: clamp(90px, 10vw, 140px) 0 clamp(90px, 10vw, 130px) 5%;}
    .ctt_sedation .sd-message__quote p {font-size: clamp(22px, 2.34vw, 30px); line-height: 1.5; margin-bottom: clamp(32px, 3.9vw, 50px);}
    .ctt_sedation .sd-message__quote p, .ctt_sedation .sd-message__body {width: calc(45% + 20px);}
    .ctt_sedation .sd-message__body {font-size: clamp(15px, 1.4vw, 18px); line-height: 1.6;}
    .ctt_sedation .sd-message__sign {font-size: clamp(15px, 1.4vw, 18px);}
    .ctt_sedation .sd-message__sign strong {font-size: clamp(17px, 1.56vw, 20px);}
}

/* 769~1024px: 수술 과정 4칸 → 2×2 */
@media screen and (min-width: 769px) and (max-width: 1024px) {
    .ctt_sedation .sd-steps__list {flex-wrap: wrap; justify-content: center; max-width: 700px; row-gap: 40px;}
    .ctt_sedation .sd-steps__list li {min-height: 0; width: calc((100% - var(--sd-gap)) / 2); max-width: none;}
    .ctt_sedation .sd-steps__list p {font-size: 17px;}
}

/* mobile */
@media screen and (max-width: 768px) {
    .ctt_sedation .sd-pc {display: none;}
    .ctt_sedation .sd-mo {display: inline;}
    .ctt_sedation img.sd-mo {display: block;}

    .ctt_sedation .sd-hero {height: 666px; padding: 70px 0 0; background: #F4F6FB url(../images/mo_hero_bg.jpg) 85.5% 93.45% / 121.9% 154.51% no-repeat;}
    .ctt_sedation .sd-hero__inner {width: 100%; align-items: center; text-align: center;}
    .ctt_sedation .sd-hero__lead {font-size: 18px; letter-spacing: -0.36px; margin-bottom: 10px;}
    .ctt_sedation .sd-hero__title {font-size: 35px; letter-spacing: -0.7px; margin-bottom: 15px;}
    .ctt_sedation .sd-hero__desc {font-size: 14px; letter-spacing: -0.28px; margin-bottom: 20px;}
    .ctt_sedation .sd-hero__points {gap: 20px;}
    .ctt_sedation .sd-hero__points li {flex-direction: column; gap: 5px;}
    .ctt_sedation #ctt_con .sd-hero__points img {width: 40.514px; height: 40.514px;}
    .ctt_sedation .sd-hero__points span {font-size: 12px; font-weight: 600; letter-spacing: -0.24px;}

    .ctt_sedation .sd-therapy {padding: 80px 20px 42px;}
    .ctt_sedation .sd-therapy__tab {width: 326px; height: 57px; padding: 0; display: flex; align-items: center; justify-content: center; border-radius: 13.199px 13.199px 0 0; font-size: 21.998px; line-height: 30.797px; letter-spacing: -0.44px;}
    .ctt_sedation .sd-therapy__card {width: 326px; filter: drop-shadow(0 1.76px 3.3px rgba(0,0,0,0.15));}
    .ctt_sedation #ctt_con .sd-therapy__img {height: 210px;}
    .ctt_sedation .sd-therapy__list li {padding: 15px 0; border-bottom-width: 0.44px; letter-spacing: -0.3px;}
    .ctt_sedation .sd-therapy__list li:last-child {padding-bottom: 30px; border-radius: 0 0 13.199px 13.199px;}
    .ctt_sedation .sd-therapy__list strong {font-size: 15px; line-height: 17.598px;}
    .ctt_sedation .sd-therapy__list span {font-size: 13px; line-height: 17.598px;}

    .ctt_sedation .sd-steps {background: #fff; padding: 60px 0 80px; gap: 52px;}
    .ctt_sedation .sd-steps__title {font-size: 32.48px; line-height: 46.4px; letter-spacing: -0.6496px; padding: 9.28px;}
    .ctt_sedation .sd-steps__list {flex-direction: column; flex-wrap: nowrap; width: 100%; gap: 52px;}
    .ctt_sedation .sd-steps__list li {min-height: 0; width: 100%; margin-bottom: 0;}
    .ctt_sedation #ctt_con .sd-steps__list img {height: auto; aspect-ratio: 390 / 273; border-radius: 0; margin-bottom: 36px;}
    .ctt_sedation .sd-steps__list h3 {font-size: 22px; line-height: 27px; letter-spacing: -0.44px; margin-bottom: 6px;}

    .ctt_sedation .sd-target {background: #F5F5F5; padding: 100px 0 80px; gap: 40px;}
    .ctt_sedation .sd-target__head {gap: 15px;}
    .ctt_sedation .sd-target__lead {font-size: 15px; line-height: 22px; letter-spacing: -0.3px;}
    .ctt_sedation .sd-target__title {font-size: 35px; line-height: 50px; letter-spacing: -0.7px; color: #1C1C1C;}
    .ctt_sedation .sd-target__list {gap: 14.595px;}
    .ctt_sedation .sd-target__list li {width: 324px; height: 34px; padding-left: 13.874px; gap: 10px; border-radius: 20.403px; background: linear-gradient(110.12deg, #3D5796 17.602%, #1E2B4B 98.149%);}
    .ctt_sedation .sd-target__icon {width: 18px; height: 18px; background-image: url(../images/icon_check_mo.svg);}
    .ctt_sedation .sd-target__list p {font-size: 14px; line-height: normal; letter-spacing: -0.28px;}

    .ctt_sedation .sd-message {min-height: 963px; padding: 80px 0 0; background-image: url(../images/mo_message_bg.jpg);}
    .ctt_sedation .sd-message__inner {display: flex; flex-direction: column; align-items: center; gap: 40px;}
    .ctt_sedation .sd-message__quote {display: flex; flex-direction: column; align-items: center; gap: 20px; text-align: center;}
    .ctt_sedation .sd-message__quote p {font-size: 20px; font-weight: 700; line-height: 30px; letter-spacing: -0.4px; color: #1F2D4E; margin-bottom: 0;}
    .ctt_sedation .sd-message__body {width: 303px; max-width: 100%; display: flex; flex-direction: column; align-items: center; gap: 10px; font-size: 14px; line-height: 22px; letter-spacing: -0.28px; text-align: center;}
    .ctt_sedation .sd-message__block {margin-bottom: 0;}
    .ctt_sedation .sd-message__sign {margin-top: 0; font-size: 16px; letter-spacing: -0.4px;}
    .ctt_sedation .sd-message__sign strong {font-size: 18px;}
}

/* 391~768px: 히어로 배경을 가로 비율 유지(원본 450×974)로 아래 정렬 — 390px 시안은 위 값 그대로 */
@media screen and (min-width: 391px) and (max-width: 768px) {
    .ctt_sedation .sd-hero {height: auto; min-height: calc(340px + 75.3vw); background-size: 100% auto; background-position: center bottom;}
}

/* 481~768px (큰 폰·태블릿 세로): 390px 시안을 키워서 쓰지 않고 폭·글자를 한 단계 키운다 */
@media screen and (min-width: 481px) and (max-width: 768px) {
    .ctt_sedation .sd-hero {padding-top: 90px; min-height: calc(420px + 75.3vw);}
    .ctt_sedation .sd-hero__lead {font-size: 22px;}
    .ctt_sedation .sd-hero__title {font-size: 46px; margin-bottom: 20px;}
    .ctt_sedation .sd-hero__desc {font-size: 17px; margin-bottom: 28px;}
    .ctt_sedation .sd-hero__points {gap: 28px;}
    .ctt_sedation #ctt_con .sd-hero__points img {width: 52px; height: 52px;}
    .ctt_sedation .sd-hero__points span {font-size: 14px;}

    .ctt_sedation .sd-therapy {padding: 100px 24px 60px;}
    .ctt_sedation .sd-therapy__tab {width: min(560px, 100%); height: 72px; border-radius: 18px 18px 0 0; font-size: 28px; line-height: 40px;}
    .ctt_sedation .sd-therapy__card {width: min(560px, 100%);}
    .ctt_sedation #ctt_con .sd-therapy__img {height: 280px;}
    .ctt_sedation .sd-therapy__list li {padding: 20px 0;}
    .ctt_sedation .sd-therapy__list li:last-child {padding-bottom: 36px; border-radius: 0 0 18px 18px;}
    .ctt_sedation .sd-therapy__list strong {font-size: 19px; line-height: 26px;}
    .ctt_sedation .sd-therapy__list span {font-size: 16px; line-height: 26px;}

    .ctt_sedation .sd-steps {padding: 80px 24px 100px; gap: 64px;}
    .ctt_sedation .sd-steps__title {font-size: 40px; line-height: 56px;}
    .ctt_sedation .sd-steps__list {gap: 64px; align-items: center;}
    .ctt_sedation .sd-steps__list li {min-height: 0; width: min(100%, 520px);}
    .ctt_sedation #ctt_con .sd-steps__list img {border-radius: 12px;}
    .ctt_sedation .sd-steps__list h3 {font-size: 26px; line-height: 34px; margin-bottom: 10px;}
    .ctt_sedation .sd-steps__list p {font-size: 20px;}

    .ctt_sedation .sd-target {padding: 120px 24px 100px; gap: 48px;}
    .ctt_sedation .sd-target__lead {font-size: 18px; line-height: 26px;}
    .ctt_sedation .sd-target__title {font-size: 42px; line-height: 58px;}
    .ctt_sedation .sd-target__list {gap: 18px;}
    .ctt_sedation .sd-target__list li {width: min(560px, 100%); height: 52px; padding-left: 22px; gap: 14px; border-radius: 30px;}
    .ctt_sedation .sd-target__icon {width: 26px; height: 26px;}
    .ctt_sedation .sd-target__list p {font-size: 19px;}

    .ctt_sedation .sd-message {min-height: calc(860px + 55.5vw); padding-top: 100px; background-position: center bottom;}
    .ctt_sedation .sd-message__quote p {font-size: 24px; line-height: 36px;}
    .ctt_sedation .sd-message__body {width: min(520px, 100%); gap: 14px; font-size: 16px; line-height: 26px;}
    .ctt_sedation .sd-message__sign {font-size: 18px;}
    .ctt_sedation .sd-message__sign strong {font-size: 20px;}
}
