/*     1170935 : BLANK 컨텐츠      */
.block_option__3691354__ {display:table;width:100%}
.block_option__3691354__ p {display:table-cell;height:100px;margin:0;color:#c40000;text-align:center;vertical-align:middle}
.row > div.white-space { padding:0 !important }
/* reset */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  color: #1f1a17;
  line-height: 1.7;
  letter-spacing: -0.02em;
  overflow-x: hidden;
}

ul,
ol {
  list-style: none;
}

a {
  text-decoration: none;
  color: inherit;
}

button {
  font: inherit;
  border: 0;
  background: none;
  cursor: pointer;
}

img {
  display: block;
  max-width: 100%;
}

.site-wrap {
  overflow: hidden;
}


/* layout */
.inner {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
}

.section {
  padding: 120px 0;
}

/* typography */
.eyebrow {
  display: inline-block;
  margin-bottom: 14px;
  color: #2c395e;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.2em;
}

.section-head {
  margin-bottom: 48px;
  text-align: center;
}

.section-head h3,
.location-info h3,
.cta-copy h3 {
  font-size: 48px;
  line-height: 1.2;
  font-weight: 500;
  letter-spacing: -0.05em;
  word-break: keep-all;
}

.section-desc {
  margin-top: 14px;
  color: #6d645c;
  font-size: 20px;
  word-break: keep-all;
}

/* button */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 156px;
  height: 54px;
  padding: 0 28px;
  border-radius: 999px;
  font-size: 15px;
  transition: background-color .3s ease, border-color .3s ease, color .3s ease, opacity .3s ease;
}

.btn--gold {
  background: #9b7a4d;
  color: #fff;
  border: 1px solid #9b7a4d;
}

.btn--gold:hover {
  background: #7f633c;
  border-color: #7f633c;
  color: #fff;
}

.btn--line {
  background: rgba(255, 255, 255, 0.86);
  color: #6d5538;
  border: 1px solid rgba(141, 109, 66, 0.28);
}

.btn--line:hover {
  background: #8d6d42;
  color: #fff;
  border-color: #8d6d42;
}

.btn--soft {
  background: transparent;
  color: #2c395e;
  border: 1px solid rgba(44, 57, 94, 0.22);
}

.btn--soft:hover {
  background: #2c395e;
  color: #fff;
  border-color: rgba(44, 57, 94, 0.36);
}


/* modal common */
.modal {
  position: fixed;
  inset: 0;
  z-index: 200;
  display: none;
}

.modal.is-open {
  display: block;
}

.modal__dim {
  position: absolute;
  inset: 0;
  background: rgba(10,10,10,.6);
}

.modal__box {
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(920px, calc(100% - 40px));
  padding: 30px;
  border-radius: 28px;
  background: #fff;
  transform: translate(-50%, -50%);
}

.modal__close {
  position: absolute;
  top: 18px;
  right: 18px;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #f3eee7;
  font-size: 14px;
}

.modal__content h4 {
  margin-bottom: 8px;
  font-size: 28px;
  font-weight: 500;
  word-break: keep-all;
}

.modal__content p {
  font-size: 15px;
}

/* image placeholder */
.img-placeholder {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(120, 104, 84, 0.12);
  background:
    linear-gradient(135deg, rgba(255,255,255,.48), rgba(0,0,0,.02)),
    linear-gradient(45deg, #e8e1d8, #d8cec2);
}



@media (max-width: 768px) {
.section { padding:70px 0 }
.inner{padding:0 20px;}
.section-head h3, .location-info h3, .cta-copy h3 { font-size:32px }
}

/*     1170995 : 슬라이드메뉴      */
.dn-hero-video{
position:relative;
height:80vh;
min-height:760px;
overflow:hidden;
background:#071018;
color:#fff;

/* PC 영상 확대 정도 */
--dn-video-zoom:1.04;

/* 영상 중심 위치 */
--dn-video-x:50%;
--dn-video-y:50%;
}

/* ==============================
유튜브 영상
================================= */
.dn-video-bg{
position:absolute;
inset:0;
z-index:1;
width:100%;
height:100%;
overflow:hidden;
background:#071018;
}

.dn-video-bg iframe{
position:absolute;
top:var(--dn-video-y);
left:var(--dn-video-x);
z-index:1;

/*
16:9 iframe을 부모 영역보다 크게 구성해
넘치는 부분은 부모에서 잘라냅니다.
*/
width:177.778vh;
height:100vh;

width:max(120vw, 177.778vh);
height:max(67.5vw, 100vh);

min-width:0;
min-height:0;

border:0;

transform:
translate(-50%, -50%)
scale(var(--dn-video-zoom));

transform-origin:center center;
pointer-events:none;

opacity:0;
transition:opacity .8s ease;
}

.dn-hero-video.is-video-ready .dn-video-bg iframe{
opacity:1;
}

/* ==============================
영상 오버레이
================================= */
.dn-video-cover{
position:absolute;
inset:0;
z-index:2;

background:
linear-gradient(
180deg,
rgba(5,12,18,.36) 0%,
rgba(5,12,18,.42) 45%,
rgba(5,12,18,.7) 100%
),
linear-gradient(
90deg,
rgba(5,12,18,.42) 0%,
rgba(5,12,18,.12) 52%,
rgba(5,12,18,.42) 100%
);

transition:background .8s ease;
}

.dn-hero-video.is-video-ready .dn-video-cover{
background:
linear-gradient(
180deg,
rgba(5,12,18,.3) 0%,
rgba(5,12,18,.38) 45%,
rgba(5,12,18,.68) 100%
),
linear-gradient(
90deg,
rgba(5,12,18,.38) 0%,
rgba(5,12,18,.1) 52%,
rgba(5,12,18,.38) 100%
);
}

/* ==============================
콘텐츠
================================= */
.dn-hero-video-inner{
position:relative;
z-index:3;
display:flex;
align-items:center;
justify-content:center;
height:100%;
text-align:center;
}

.dn-hero-video-copy{
width:100%;
max-width:1040px;
margin:0 auto;
padding-top:0px;
}

.dn-hero-video-small{
display:inline-flex;
align-items:center;
gap:14px;
margin-bottom:28px;

color:#6985d5;
font-size:15px;
font-weight:800;
letter-spacing:.22em;
}

.dn-hero-video-small:before,
.dn-hero-video-small:after{
content:"";
width:42px;
height:1px;
background:rgba(105,133,213,.7);
}

.dn-hero-video-copy h2{
margin:0;
color:#fff;
font-size:76px;
font-weight:800;
line-height:1.12;
letter-spacing:-.06em;
}

.dn-hero-video-copy h2 strong{
position:relative;
display:inline-block;
margin-top:8px;
color:#fff;
}

.dn-changing-text{
min-width:420px;
}

.js-changing-word{
position:relative;
display:inline-block;
padding:0 10px;
}

.js-changing-word:after{
content:"";
position:absolute;
right:0;
bottom:4px;
left:0;
z-index:-1;

height:18px;
background:rgba(105,133,213,.7);
}

.js-changing-word.is-out{
animation:wordOut .35s ease forwards;
}

.js-changing-word.is-in{
animation:wordIn .45s ease forwards;
}

@keyframes wordOut{
0%{
opacity:1;
transform:translateY(0);
}

100%{
opacity:0;
transform:translateY(-18px);
}
}

@keyframes wordIn{
0%{
opacity:0;
transform:translateY(18px);
}

100%{
opacity:1;
transform:translateY(0);
}
}

.dn-hero-video-copy p{
margin:34px 0 0;

color:rgba(255,255,255,.86);
font-size:22px;
font-weight:400;
line-height:1.75;
}

.dn-hero-video-btns{
display:flex;
align-items:center;
justify-content:center;
gap:14px;
margin-top:46px;
}

.dn-hero-video-btns .dn-btn{
min-width:178px;
height:58px;

border-radius:999px;
font-size:17px;
font-weight:800;
display:inline-flex; align-items:center; justify-content:center; gap:10px; padding: 0 28px
}

.dn-naver-btn{
background:#597c69;
color:#fff;
}

.dn-naver-btn:hover{
background:#02ad4f;
}

.dn-kakao-btn{
background:#fee500;
color:#251e1e;
}

.dn-kakao-btn:hover{
background:#f5d900;
color:#251e1e;
}

/* ==============================
스크롤 안내
================================= */
.dn-scroll-guide{
position:absolute;
bottom:34px;
left:50%;
z-index:4;

display:flex;
flex-direction:column;
align-items:center;
gap:10px;

color:rgba(255,255,255,.68);
font-size:11px;
font-weight:800;
letter-spacing:.18em;

transform:translateX(-50%);
}

.dn-scroll-guide span{
width:1px;
height:44px;

background:linear-gradient(
180deg,
#fff,
rgba(255,255,255,0)
);

animation:scrollLine 1.6s ease-in-out infinite;
}

@keyframes scrollLine{
0%{
opacity:.4;
transform:scaleY(.2);
transform-origin:top;
}

50%{
opacity:1;
transform:scaleY(1);
}

100%{
opacity:.4;
transform:scaleY(.2);
transform-origin:bottom;
}
}

/* 기존 모바일 이미지는 사용하지 않음 */
.dn-video-mobile-bg{
display:none !important;
}

/* ==============================
태블릿
================================= */
@media(max-width:1024px){
.dn-hero-video{
min-height:720px;
}

.dn-hero-video-copy h2{
font-size:56px;
}

.dn-hero-video-copy p{
font-size:19px;
}

.dn-changing-text{
min-width:auto;
}
}

/* ==============================
모바일
================================= */
@media(max-width:768px){
.dn-inner { padding:0 18px }
.dn-hero-video{
height:60vh;
height:60svh;
min-height:450px;
max-height:none;
overflow:hidden;

/*
모바일 영상 확대 정도입니다.
검은 부분이 보이면 1.25~1.35로 높이면 됩니다.
*/
--dn-video-zoom:2.3;

/*
영상에서 보여줄 중심 위치입니다.
인물이 오른쪽에 있으면 x값을 높일 수 있습니다.
*/
--dn-video-x:50%;
--dn-video-y:50%;
}

.dn-video-bg{
display:block;
position:absolute;
inset:0;

width:100%;
height:100%;
overflow:hidden;
}

.dn-video-bg iframe{
position:absolute;
top:var(--dn-video-y);
left:var(--dn-video-x);

/*
기본 세로 화면 대응
*/
width:177.778svh;
height:100svh;

/*
화면 비율에 따라 더 큰 값을 사용해
빈 공간이 생기지 않도록 합니다.
*/
width:max(130vw, 177.778svh);
height:max(73.125vw, 100svh);

min-width:0;
min-height:0;

transform:
translate(-50%, -50%)
scale(var(--dn-video-zoom));

transform-origin:center center;
}

.dn-video-cover{
background:
linear-gradient(
180deg,
rgba(5,12,18,.22) 0%,
rgba(5,12,18,.42) 48%,
rgba(5,12,18,.78) 100%
),
linear-gradient(
90deg,
rgba(5,12,18,.22),
rgba(5,12,18,.12)
);
}

.dn-hero-video.is-video-ready .dn-video-cover{
background:
linear-gradient(
180deg,
rgba(5,12,18,.18) 0%,
rgba(5,12,18,.38) 48%,
rgba(5,12,18,.76) 100%
),
linear-gradient(
90deg,
rgba(5,12,18,.2),
rgba(5,12,18,.1)
);
}

.dn-hero-video-inner{
align-items:flex-end;
justify-content:center;
padding-bottom:50px;
text-align:left;
}

.dn-hero-video-copy{
width:100%;
max-width:100%;
padding-top:0;
}

.dn-hero-video-small{
margin-bottom:18px;
font-size:12px;
letter-spacing:.16em;
}

.dn-hero-video-small:before,
.dn-hero-video-small:after{
width:24px;
}

.dn-hero-video-small:after{
display:none;
}

.dn-hero-video-copy h2{
font-size:30px;
line-height:1.2;
letter-spacing:-.055em;
word-break:keep-all;
}

.dn-hero-video-copy h2 strong{
margin-top:6px;
}

.dn-changing-text{
min-width:auto;
}

.js-changing-word{
padding:0 5px;
}

.js-changing-word:after{
bottom:3px;
height:10px;
}

.dn-hero-video-copy p{
margin-top:22px;

font-size:16px;
line-height:1.7;
word-break:keep-all;
}

.dn-hero-video-copy p br{
display:none;
}

.dn-hero-video-btns{
flex-direction:column;
align-items:stretch;
gap:10px;
margin-top:30px;
}

.dn-hero-video-btns .dn-btn{
width:100%;
min-width:0;
height:35px;
font-size:16px;
}

.dn-scroll-guide{
display:none;
}
}

/* 구형 모바일 브라우저 대응 */
@supports not (height:100svh){
@media(max-width:768px){
.dn-hero-video{
height:100vh;
}

.dn-video-bg iframe{
width:177.778vh;
height:100vh;

width:max(130vw, 177.778vh);
height:max(73.125vw, 100vh);
}
}
}

@media(max-width:640px){
.dn-hero-video-copy h2{
font-size:30px;
}

.dn-hero-video-btns{
margin-top:32px;
}
}

/*     1171035 : 한줄 텍스트      */
.safe-sticky-block{position:relative;background:linear-gradient( 180deg, rgba(34,45,77,.94) 0%, rgba(44,57,94,.92) 32%, rgba(68,82,120,.88) 68%, rgba(108,119,151,.84) 100% ),url('/img_up/shop_pds/kncpain11/build/option/bg021786071950.jpg') center top/cover no-repeat;color:#fff;overflow:visible;} .safe-sticky-section{ position:relative; height:260vh; background:transparent; color:#fff; overflow:visible } .safe-sticky-wrap{position:sticky;top:0;height:100vh;min-height:100vh;display:flex;align-items:center;padding:80px 0;overflow:hidden} .safe-sticky-inner{width:100%;max-width:1400px;margin:0 auto;padding:0 40px} .safe-sticky-grid{position:relative;display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:start;height:100%} .safe-sticky-copy{position:absolute;left:0;top:50%;z-index:3;width:calc((100% - 90px) * .45);transform:translateY(-50%);padding-top:0} .safe-sticky-eyebrow{display:block;margin-bottom:24px;color:#d7bf9e;font-family:Georgia,serif;font-size:18px;font-weight:500;letter-spacing:.12em} .safe-sticky-copy h2{margin:0;color:#fff;font-size:52px;line-height:1.18;font-weight:700;letter-spacing:-.06em;word-break:keep-all; color: #d7bf9e;} .safe-sticky-copy h3{margin:34px 0 0;color:#fff;font-size:28px;line-height:1.38;font-weight:500;letter-spacing:-.05em;word-break:keep-all} .safe-sticky-copy p{margin:34px 0 0;max-width:420px;color:rgba(255,255,255,.82);font-size:18px;line-height:1.85;font-weight:500;word-break:keep-all} .safe-sticky-scroll{display:inline-flex;align-items:center;gap:10px;margin-top:42px;color:#d7bf9e;font-family:Georgia,serif;font-size:18px;letter-spacing:.08em} .safe-sticky-scroll:before{content:"";display:block;width:42px;height:1px;background:#d7bf9e} .safe-sticky-photo-area{position:relative;grid-column:2;align-self:start;min-height:auto;padding-top:20px;padding-bottom:80px;will-change:transform} .safe-sticky-main{position:relative;width:100%;height:500px;margin-bottom:30px;overflow:hidden;background:#222;opacity:.25;transform:translateY(30px);transition:opacity .45s ease,transform .45s ease; border-radius: 10px;} .safe-sticky-list{display:grid;grid-template-columns:repeat(2,1fr);gap:30px} .safe-sticky-card{position:relative;height:300px;overflow:hidden;background:#222;opacity:.25;transform:translateY(35px);transition:opacity .45s ease,transform .45s ease; border-radius: 10px;} .safe-sticky-card.is-on,.safe-sticky-main.is-on{opacity:1;transform:translateY(0)} .safe-sticky-card:after,.safe-sticky-main:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,0,0,.01),rgba(0,0,0,.3))} .safe-sticky-card .img-box,.safe-sticky-main .img-box{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(255,255,255,.16),rgba(0,0,0,.1)),linear-gradient(135deg,#7b726a,#c8beb3);color:rgba(255,255,255,.5);font-size:14px;letter-spacing:.22em;background-repeat:no-repeat;background-size:cover} .safe-sticky-card strong,.safe-sticky-main strong{position:absolute;left:24px;bottom:22px;z-index:2;color:#fff;font-size:22px;line-height:1.32;font-weight:700;letter-spacing:-.05em;word-break:keep-all} .safe-sticky-main strong{font-size:28px} .safe-sticky-card:nth-child(2){transition-delay:.05s} .safe-sticky-card:nth-child(3){transition-delay:.08s} .safe-sticky-card:nth-child(4){transition-delay:.11s} .safe-sticky-card:nth-child(5){transition-delay:.14s} .safe-sticky-card:nth-child(6){transition-delay:.17s} @media(max-width:1200px){ .safe-sticky-inner{padding:0 32px} .safe-sticky-grid{gap:56px} .safe-sticky-copy{width:calc((100% - 56px) * .45)} .safe-sticky-copy h2{font-size:44px} .safe-sticky-copy h3{font-size:28px} } @media(max-width:900px){ .safe-sticky-section{height:auto} .safe-sticky-wrap{position:relative;height:auto;min-height:auto;padding:90px 0;overflow:visible} .safe-sticky-inner{padding:0 24px} .safe-sticky-grid{display:grid;grid-template-columns:1fr;gap:50px;height:auto} .safe-sticky-copy{position:relative;left:auto;top:auto;width:100%;transform:none} .safe-sticky-copy h2{font-size:36px} .safe-sticky-copy h3{font-size:24px} .safe-sticky-copy p{max-width:100%} .safe-sticky-photo-area{grid-column:1;transform:none!important;padding-top:0;padding-bottom:0} .safe-sticky-main{height:300px;opacity:1;transform:none} .safe-sticky-list{grid-template-columns:1fr} .safe-sticky-card{opacity:1;transform:none} } @media(max-width:560px){ .safe-sticky-inner{padding:0 20px} .safe-sticky-wrap{padding:70px 0} .safe-sticky-copy h2{font-size:31px} .safe-sticky-copy h3{font-size:22px} .safe-sticky-card strong,.safe-sticky-main strong{left:18px;bottom:18px;font-size:20px} .safe-sticky-main strong{font-size:23px} }

/*     1171095 : 타이틀 텍스트      */
.text__3691054__ .pc { display:block }

.program-integrated {
  background:#f7f4ef;
}
.program-integrated__head {
  display: flex;
  justify-content: space-between;
  gap: 30px;
  align-items: end;
  margin-bottom: 40px;
}
.program-integrated__head h3 {
  font-size: 50px;
  line-height: 1.15;
  font-weight: 500;
  letter-spacing: -0.05em;
  word-break: keep-all;
}

.program-mega {
  display: grid;
  grid-template-columns: 320px 1fr;
  gap: 24px;
  align-items: stretch;
}
.program-menu {
  height: 100%;
  padding: 28px;
  border-radius: 30px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(34,27,21,.06);
  align-self: stretch;
}
.program-menu-item + .program-menu-item { margin-top: 14px; }

.program-main-btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 18px 20px;
  border-radius: 18px;
  background: #2c395e;
  color: #fff;
  font-size: 20px;
  font-weight: 500;
  transition: background-color .3s ease, color .3s ease;
}

.program-main-btn.is-open,
.program-main-btn:hover {
  background: #2c395e;
  color: #fff;
}
.program-main-btn::after {
  content: "+";
  font-size: 22px;
  transition: transform .3s ease;
}
.program-main-btn.is-open::after {
  transform: rotate(45deg);
}

.program-sub-list {
  display: none;
  padding: 12px 8px 4px;
}
.program-sub-btn {
  display: block;
  width: 100%;
  text-align: left;
  padding: 12px 14px;
  border-radius: 14px;
  color: #333;
  font-size: 15px;
  transition: background-color .25s ease, color .25s ease;
}
.program-sub-btn.is-active,
.program-sub-btn:hover {
  background: #566ba8;
  color: #fff;
}

.program-content {
  height: 100%;
  position: relative;
  padding: 34px;
  border-radius: 30px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(34,27,21,.06);
  min-height: 640px;
  display: flex;
  align-items: center;
}
.program-pane {
  display: none;
  width: 100%;
}
.program-pane.is-active {
  display: block;
}
.program-pane__top {
  display: grid;
  grid-template-columns: 1fr 1.06fr;
  gap: 28px;
  align-items: center;
}
.program-pane__visual .img-placeholder {
  height: 450px;
  border-radius: 28px;
}
.program-pane__copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.program-pane__copy h4 {
  font-size: 44px;
  line-height: 1.16;
  font-weight: 500;
  letter-spacing: -0.04em;
  margin-bottom: 14px;
  word-break: keep-all;
}
.program-pane__copy p {
  color: #333;
  font-size: 18px;
  word-break: keep-all;
}
.program-inline-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 18px 0 24px;
}
.program-inline-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 18px;
  border-radius: 999px;
  background: #fbf9f9;
  color: #2c395e;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.12em;
}
.program-more {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 28px;
  font-size: 18px;
  font-weight: 700;
  color: #2c395e;
  transition: color .3s ease;
}
.program-more:hover {
  color: #2c395e;
}

@media (max-width: 1024px) {
.text__3691054__ .pc { display:none }
  .program-mega {
    grid-template-columns: 1fr;
  }

  .program-pane__top {
    grid-template-columns: 1fr;
  }

  .program-menu,
  .program-content {
    min-height: auto !important;
  }

  .program-content {
    min-height: auto;
    align-items: flex-start;
  }
}

@media (max-width: 768px) {
  .program-integrated__head {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  .program-integrated__head h3 {
    font-size: 32px;
  }

  .program-pane__visual div {
    width: 100%;
    height: auto !important;
    aspect-ratio: 4 / 3;
    border-radius: 18px;
  }

  .program-pane__copy {
    margin-top: 16px;
  }

  .program-pane__copy h4 {
    font-size: 26px;
  }

  .program-pane__copy p {
    font-size: 15px;
  }

  .program-inline-tag {
    font-size: 12px;
    min-height: 34px;
    padding: 0 12px;
  }

  .program-main-btn {
    font-size: 15px;
    padding: 14px;
  }

  .program-sub-btn {
    font-size: 14px;
  }

  .program-content {
    padding: 20px;
  }

  .program-menu {
    padding: 20px;
  }
}

/*     1171115 : 이미지      */
.doctor {
  background: #fff;
}
.doctor-layout {
  display: grid;
  grid-template-columns: .92fr 1.08fr;
  gap: 56px;
  align-items: center;
}
.doctor-copy h3 {
  font-size: 45px;
  line-height: 1.16;
  font-weight: 500;
  letter-spacing: -0.05em;
  margin-bottom: 18px;
  word-break: keep-all;
}
.doctor-copy p {
  color: #6d645c;
  font-size: 20px;
  word-break: keep-all;
}
.doctor-spec {
  margin: 28px 0;
  padding-top: 24px;
  border-top: 1px solid rgba(109,100,92,.12);
}
.doctor-spec li {
  position: relative;
  padding-left: 16px;
  color: #514740;
  font-size: 18px;
}
.doctor-spec li + li { margin-top: 10px; }
.doctor-spec li::before {
  content: "";
  position: absolute;
  top: 12px;
  left: 0;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #2c395e;
}
.doctor-quote {
  margin-bottom: 30px;
  padding: 26px 28px;
  border-radius: 22px;
  background: #2c395e;
  color: #6c5843;
  font-size: 15px;
  word-break: keep-all;
}
.doctor-quote p { color:#fff }
.img-placeholder--portrait {
  height: 780px;
  border-radius: 28px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* 반응형 */
@media (max-width: 1024px) {
  .doctor-layout {
    grid-template-columns: 1fr;
    gap: 36px;
  }

  .img-placeholder--portrait {
    height: 560px;
  }
}

@media (max-width: 768px) {
  .doctor-copy h3 {
    font-size: 32px;
  }

  .doctor-copy p {
    font-size: 16px;
  }

  .doctor-spec li {
    font-size: 16px;
  }

  .img-placeholder--portrait {
    height: 420px;
    border-radius: 22px;
  }
}

/*     1171135 : 슬라이드메뉴      */
.equipment {
  background: linear-gradient(180deg, #f7f2eb 0%, #fbf8f4 100%);
}
.equipment-head {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: 24px;
  margin-bottom: 34px;
}
.equipment-head h3 {
  font-size: 46px;
  line-height: 1.22;
  font-weight: 500;
  letter-spacing: -0.05em;
  word-break: keep-all;
}
.equipment-head__right {
  display: flex;
  align-items: center;
  gap: 16px;
}
.equipment-rail {
  position: relative;
  overflow: hidden;
  cursor: grab;
}
.equipment-rail.is-dragging {
  cursor: grabbing;
}
.equipment-track {
  display: flex;
  gap: 24px;
  width: max-content;
  user-select: none;
    padding: 30px 0;
}
.equipment-card {
  flex: 0 0 320px;
  width: 320px;
  border-radius: 28px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 12px 30px rgba(20,16,12,.06);
  transition: transform .4s ease, box-shadow .4s ease, background-color .35s ease;
}

/* hover 시 떠오르는 효과 */
.equipment-card:hover {
  background: #f5efe8;
  box-shadow: 0 20px 36px rgba(20,16,12,.12);
  transform: translateY(-10px);
}

.equipment-image {
  position: relative;
  height: 360px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.48), rgba(0,0,0,.02)),
    linear-gradient(45deg, #e8e1d8, #d8cec2);
  background-size: cover, cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* ???? 반짝임 효과 추가 */
.equipment-image::before {
  content: "";
  position: absolute;
  top: 0;
  left: -75%;
  width: 50%;
  height: 100%;
  background: linear-gradient(
    120deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.55) 50%,
    rgba(255,255,255,0) 100%
  );
  transform: skewX(-20deg);
  transition: left .7s ease;
  pointer-events: none;
}

.equipment-card:hover .equipment-image::before {
  left: 130%;
}

.equipment-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: var(--bg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.equipment-card__body {
  padding: 22px 22px 24px;
}
.equipment-card h4 {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.3;
  margin-bottom: 8px;
  word-break: keep-all;
}
.equipment-card p {
  color: #6d645c;
  font-size: 18px;
  word-break: keep-all;
}

@media (max-width: 768px) {
.equipment-head h3 { font-size:32px }
}

/*     1171165 : 슬라이드메뉴      */
.review {
}
.review-rail {
  position: relative;
  overflow: hidden;
  cursor: grab;
}
.review-rail.is-dragging {
  cursor: grabbing;
}
.review-track {
  display: flex;
  gap: 24px;
  width: max-content;
  user-select: none;
}
.review-card {
  flex: 0 0 360px;
  width: 360px;
  padding: 30px 35px;
  border-radius: 24px;
  background: #f5f8ff;
  border: 1px solid rgba(44, 57, 94,.12);
}
.review-card p {
  color: #5b5148;
  font-size: 18px;
  word-break: keep-all;
}
.review-card span {
  display: inline-block;
  margin-top: 22px;
  color: #2c395e;
  font-weight: 700;
  font-size: 14px;
}

/*     1171225 : BLANK 컨텐츠      */
.blank__3531556__ {box-sizing:border-box;display:block;position:relative;width:100%;height:120px}
.blank__3531556__.build_edit_mode {min-height:10px;border:1px dashed red;background:rgba(255,255,255,.1);}
.blank__3531556__.build_edit_mode:before {content:'Blank';display:block;position:absolute;top:50%;left:0;right:0;margin-top:-10px;padding:5px 0;font-size:13px;color:red;text-align:center;line-height:1}

@media all and (max-width:1023px){
	.blank__3531556__ {height:0px}
}

/*     1171235 : 지도 (주소 직접 입력)      */
.map__1171235__ iframe {width:100%;vertical-align:top}
.map__1171235__ p {display:none;margin:0;padding:1em 0;font-size:13px}
.map__1171235__ .build_preview__1171235__ {display:table;width:100%}
.map__1171235__ .build_preview__1171235__ .inner__1171235__ {display:table-cell;height:710px;border:1px solid #ddd;background:#f8f8f8;text-align:center;vertical-align:middle}
.map__1171235__ .build_preview__1171235__ .inner__1171235__ .subject__1171235__ {display:block;font-size:16px;font-weight:bold}
.map__1171235__ .build_preview__1171235__ .inner__1171235__ .exp_text__1171235__ {display:block;margin-top:10px;font-weight:normal;font-size:13px;color:#777}

@media all and (max-width:767px){
	.map__1171235__ iframe {height:300px  !important}
	.map__1171235__ .build_preview__1171235__ .inner__1171235__ {height:300px}
}

/*     1171245 : BLANK 컨텐츠      */
.blank__3531556__ {box-sizing:border-box;display:block;position:relative;width:100%;height:120px}
.blank__3531556__.build_edit_mode {min-height:10px;border:1px dashed red;background:rgba(255,255,255,.1);}
.blank__3531556__.build_edit_mode:before {content:'Blank';display:block;position:absolute;top:50%;left:0;right:0;margin-top:-10px;padding:5px 0;font-size:13px;color:red;text-align:center;line-height:1}

@media all and (max-width:1023px){
	.blank__3531556__ {height:0px}
}

/*     1171255 : BLANK 컨텐츠      */
.blank__3531556__ {box-sizing:border-box;display:block;position:relative;width:100%;height:120px}
.blank__3531556__.build_edit_mode {min-height:10px;border:1px dashed red;background:rgba(255,255,255,.1);}
.blank__3531556__.build_edit_mode:before {content:'Blank';display:block;position:absolute;top:50%;left:0;right:0;margin-top:-10px;padding:5px 0;font-size:13px;color:red;text-align:center;line-height:1}

@media all and (max-width:1023px){
	.blank__3531556__ {height:0px}
}

/*     1171265 : 타이틀 텍스트      */
.location {
  background: #fbf8f4;
  padding: 0 !important;
}
.location .inner {
  width: 100%;
  max-width: 100%;
  padding: 0;
}
.location-layout {
  display: block;
}

.location-info {
  width: 100%;
  padding: 30px 64px;
  background: #fff;
  border: 1px solid rgba(160,140,112,.12);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.location-info h3 {padding-bottom: 20px;}

.info-list li {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.info-list li + li {
  margin-top: 22px;
}

.info-list strong {
  font-size: 22px;
  color: #2c395e;
}

.info-list div,
.info-list span {
  font-size: 20px;
  color: #5b5148;
  word-break: keep-all;
}

.info-list div p{
  display:grid;
  grid-template-columns:90px 1fr;
  gap:10px;
  align-items:start;
}

.info-list div p span:first-child{
  display:block;
  white-space:nowrap;
}

.info-list div p span:last-child{
  display:block;
}

.location-btns {
  display: flex;
  gap: 12px;
  margin-top: 32px;
  flex-wrap: wrap;
}

.location-btns .btn {
  background: #2c395e;
  color: #fff;
  border: 1px solid #2c395e;
font-size:18px;
}

.location-btns .btn:hover {
  background: #3551a0;
  color: #fff;
  border-color: #3551a0;
}

@media(max-width:768px){
  .info-list div p{
    grid-template-columns:72px 1fr;
    gap:8px;
  }
.location-info { padding: 40px 20px }
}

/*     1171275 : BLANK 컨텐츠      */
.blank__3531556__ {box-sizing:border-box;display:block;position:relative;width:100%;height:120px}
.blank__3531556__.build_edit_mode {min-height:10px;border:1px dashed red;background:rgba(255,255,255,.1);}
.blank__3531556__.build_edit_mode:before {content:'Blank';display:block;position:absolute;top:50%;left:0;right:0;margin-top:-10px;padding:5px 0;font-size:13px;color:red;text-align:center;line-height:1}

@media all and (max-width:1023px){
	.blank__3531556__ {height:0px}
}

