/* ==========================================================================
   죽전소개 리디자인 4페이지 (인사말 · 병원소개 · 죽전만의 특별함 · 오시는 길)
   2026-11 병원 확정 시안(Claude Design 번들)을 그대로 옮김. 이 4개 템플릿에서만 로드된다.
   시안 토큰: navy #0B1336, blue #3E6FB0 / #1F5BB5, line #E3E7EE, bg #F3F6FA, gold #FBC25A,
   본문 Noto Sans KR.
   ========================================================================== */

/* ---- 헤더: 사진 히어로가 없으므로 처음부터 남색 바 ---- */
body.jk-intro-page .jk-header,
body.jk-intro-page .jk-header.is-scrolled,
body.jk-intro-page .jk-header.is-open { background: #0B1336; }
body.jk-intro-page .jk-main { padding-top: var(--jk-header-h); }

/* ---- 공통 ---- */
.ji {
	font-family: 'Noto Sans KR', var(--jk-font-body);
	color: #0B1336;
	line-height: normal;
	word-break: keep-all;
	-webkit-font-smoothing: antialiased;
}
.ji h1, .ji h2, .ji h3 { font-family: inherit; }
.ji a { color: #0B1336; text-decoration: none; }
.ji a:hover { color: #3E6FB0; }
.ji img { max-width: none; }
.ji-wrap { max-width: 1600px; margin: 0 auto; padding-left: 6vw; padding-right: 6vw; }
.ji-eyebrow { color: #3E6FB0; font-size: 13px; letter-spacing: .4em; font-weight: 500; }
.ji-eyebrow--b { font-weight: 700; }
.ji-eyebrow--light { color: #8FB3E8; }
.ji-h2 {
	margin: 18px 0 16px;
	font-weight: 700;
	font-size: clamp(30px, 4vw, 52px);
	color: #0B1336;
	letter-spacing: -.03em;
	line-height: 1.3;
	text-wrap: pretty;
}
.ji-lead { margin: 0; font-size: 16px; color: #6B7280; line-height: 1.8; text-wrap: pretty; }
.ji-blue { color: #1F5BB5; }

/* 빵부스러기 */
.ji-crumbs { border-bottom: 1px solid #E3E7EE; background: #fff; font-family: 'Noto Sans KR', var(--jk-font-body); }
.ji-crumbs__inner {
	max-width: 1600px; margin: 0 auto; padding: 12px 6vw;
	display: flex; gap: 10px; align-items: center; flex-wrap: wrap;
	font-size: 14px; color: #7B8494; line-height: 1.5;
}
.ji-crumbs a { color: #7B8494; }
.ji-crumbs a:hover { color: #3E6FB0; }
.ji-crumbs__sep { color: #B8C0CC; }
.ji-crumbs [aria-current] { color: #0B1336; font-weight: 500; }

/* 버튼 줄 (문의 CTA · 지도 버튼) */
.ji-btns { margin-top: 36px; display: flex; justify-content: center; gap: 10px; flex-wrap: wrap; }
.ji .ji-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 6px;
	height: 54px; padding: 0 40px; border-radius: 3px;
	font-size: 15px; font-weight: 700;
	background: #fff; color: #0B1336; border: 1px solid #0B1336;
	transition: background .2s;
}
.ji .ji-btn:hover { background: #EEF2F8; color: #0B1336; }
.ji .ji-btn--navy { background: #0B1336; color: #fff; border-color: #0B1336; }
.ji .ji-btn--navy:hover { background: #1A2457; color: #fff; }

/* 문의 CTA 섹션 */
.ji-cta { max-width: 1600px; margin: 0 auto; padding: clamp(72px, 9vw, 120px) 6vw; width: 100%; text-align: center; }
.ji-cta__rule { width: 40px; height: 2px; background: #3E6FB0; margin: 0 auto 24px; }
.ji-cta .ji-h2 { margin: 18px 0 20px; }
.ji-cta p { margin: 0; font-size: 16px; color: #6B7280; line-height: 1.9; }
.ji-cta--narrow { max-width: 1200px; padding: clamp(64px, 10vw, 110px) 20px; }
.ji-cta--narrow .ji-h2 { margin: 20px 0 22px; font-size: clamp(30px, 4.4vw, 48px); line-height: 1.35; }

/* ==========================================================================
   인사말
   ========================================================================== */
.ji-gr-hero__inner {
	padding-top: clamp(48px, 7vw, 104px);
	display: flex; flex-wrap: wrap; align-items: flex-end; gap: clamp(32px, 4vw, 64px);
}
.ji-gr-hero__photo { flex: 1 1 380px; min-width: 0; aspect-ratio: 1 / 1; position: relative; overflow: hidden; }
.ji-gr-hero__photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center bottom; display: block; }
.ji-gr-hero__body { flex: .85 1 360px; min-width: 0; padding-bottom: clamp(40px, 6vw, 96px); }
.ji-gr-hero__eyebrow { color: #3E6FB0; font-size: 13px; letter-spacing: .3em; font-weight: 700; }
.ji-gr-hero h1 {
	margin: 18px 0 28px; font-weight: 700; font-size: clamp(36px, 4.4vw, 64px);
	color: #0B1336; letter-spacing: -.03em; line-height: 1.2; text-wrap: pretty;
}
.ji-gr-hero h1 em { font-style: normal; color: #1F5BB5; font-weight: 900; font-size: 1.25em; line-height: 1; }
.ji-gr-hero__strong { margin: 0 0 24px; font-weight: 700; font-size: clamp(18px, 1.6vw, 24px); color: #0B1336; line-height: 1.6; text-wrap: pretty; }
.ji-gr-hero__text { margin: 0; font-size: 16px; color: #4B5563; line-height: 1.9; text-wrap: pretty; }
.ji-gr-hero__sign { margin: 28px 0 0; font-size: 14px; color: #9AA1AE; }

.ji-gr-why { padding-top: clamp(72px, 9vw, 120px); padding-bottom: clamp(72px, 9vw, 120px); }
.ji-gr-why__head { text-align: center; }
.ji-gr-why__grid {
	margin-top: clamp(40px, 5vw, 64px);
	border-top: 1px solid #E3E7EE; border-bottom: 1px solid #E3E7EE;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(max(calc((100% - 2px) / 3), min(100%, calc((660px - 100%) * 999))), 1fr));
	gap: 1px; background: #E3E7EE;
}
.ji-gr-why__item { padding: clamp(28px, 3vw, 44px) clamp(24px, 2.6vw, 40px); background: #fff; }
.ji-gr-why__no { color: #3E6FB0; font-size: 15px; font-weight: 700; letter-spacing: .05em; }
.ji-gr-why__item h3 { margin: 20px 0 14px; font-weight: 700; font-size: clamp(18px, 1.5vw, 21px); color: #0B1336; letter-spacing: -.02em; line-height: 1.4; }
.ji-gr-why__item p { margin: 0; font-size: 15px; color: #4B5563; line-height: 1.8; text-wrap: pretty; }

.ji-gr-num { background: linear-gradient(135deg, #070D28 0%, #0B1336 100%); color: #fff; }
.ji-gr-num__inner { padding-top: clamp(64px, 8vw, 104px); padding-bottom: clamp(64px, 8vw, 104px); }
.ji-gr-num__head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 16px; }
.ji-gr-num__head .ji-h2 { margin: 18px 0 0; color: #fff; }
.ji-gr-num__note { font-size: 13px; color: rgba(255, 255, 255, .6); }
.ji-gr-num__grid {
	margin-top: clamp(36px, 4vw, 56px);
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(max(calc((100% - 3px) / 4), min(calc((100% - 1px) / 2), calc((720px - 100%) * 999)), min(100%, calc((400px - 100%) * 999))), 1fr));
	gap: 1px; background: rgba(255, 255, 255, .14); border: 1px solid rgba(255, 255, 255, .14);
}
.ji-gr-num__item {
	background: #0B1336; padding: clamp(32px, 3.4vw, 52px) 20px;
	display: flex; flex-direction: column; align-items: center; gap: 18px; text-align: center;
}
.ji-gr-num__item svg { width: 64px; height: 64px; }
.ji-gr-num__label { font-size: 16px; font-weight: 700; }
.ji-gr-num__value {
	font-family: 'Montserrat', 'Noto Sans KR', sans-serif;
	font-size: clamp(38px, 3.8vw, 60px); font-weight: 700; color: #FBC25A;
	letter-spacing: -.01em; line-height: 1; font-variant-numeric: tabular-nums;
}
.ji-gr-num__unit { font-family: 'Noto Sans KR', sans-serif; font-size: .5em; font-weight: 700; margin-left: .12em; letter-spacing: 0; }

.ji-gr-hist { background: #F3F6FA; }
.ji-gr-hist__inner { padding-top: clamp(64px, 8vw, 104px); padding-bottom: clamp(64px, 8vw, 104px); }
.ji-gr-hist__head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 24px; }
.ji-gr-hist__head > div:first-child { min-width: 0; }
.ji-gr-hist__head .ji-h2 { margin: 18px 0 14px; }
.ji-gr-hist__nav { display: flex; flex-direction: column; align-items: center; gap: 14px; }
.ji-gr-hist__btns { display: flex; gap: 12px; }
.ji-round {
	width: 56px; height: 56px; border-radius: 50%;
	border: 1px solid #0B1336; background: #fff; color: #0B1336;
	display: flex; align-items: center; justify-content: center; cursor: pointer; padding: 0;
	transition: background .2s, color .2s, opacity .2s;
}
.ji-round:hover { background: #0B1336; color: #fff; }
.ji-round[aria-disabled="true"] { opacity: .3; }
.ji-gr-hist__page { font-size: 14px; color: #6B7280; letter-spacing: .08em; font-variant-numeric: tabular-nums; }
.ji-gr-hist__track {
	margin-top: clamp(36px, 4vw, 56px);
	display: flex; gap: 16px; overflow-x: auto; padding-bottom: 24px;
	scroll-snap-type: x mandatory; scroll-behavior: smooth;
	scrollbar-width: none; -ms-overflow-style: none;
}
.ji-gr-hist__track::-webkit-scrollbar { display: none; }
.ji-gr-hist__card {
	flex: 0 0 max(260px, calc((100% - 48px) / 4)); scroll-snap-align: start;
	background: #fff; padding: clamp(28px, 2.4vw, 40px) clamp(24px, 2vw, 36px) 36px;
	box-shadow: 0 6px 20px rgba(20, 31, 59, .06); min-height: clamp(300px, 21vw, 380px);
}
.ji-gr-hist__no { font-family: 'Montserrat', 'Noto Sans KR', sans-serif; font-size: clamp(44px, 3.8vw, 64px); font-weight: 800; color: #0B1336; letter-spacing: -.03em; line-height: 1; }
.ji-gr-hist__title { margin-top: clamp(18px, 1.6vw, 26px); font-size: clamp(19px, 1.5vw, 24px); font-weight: 700; color: #0B1336; line-height: 1.45; letter-spacing: -.02em; }
.ji-gr-hist__card p { margin: clamp(14px, 1.2vw, 20px) 0 0; font-size: clamp(15px, 1.1vw, 17px); color: #4B5563; line-height: 1.75; }

/* ==========================================================================
   병원소개
   ========================================================================== */
.ji-ab-space { background: linear-gradient(180deg, #FFFFFF 0%, #F3F6FA 100%); }
.ji-ab-space__inner { padding-top: clamp(64px, 8vw, 110px); padding-bottom: clamp(72px, 9vw, 120px); }
.ji-ab-space h1 {
	margin: 18px 0 24px; font-weight: 700; font-size: clamp(36px, 4.4vw, 64px);
	color: #0B1336; letter-spacing: -.03em; line-height: 1.2; text-wrap: pretty;
}
.ji-ab-space__strong { margin: 0 0 12px; font-weight: 700; font-size: clamp(18px, 1.6vw, 22px); color: #0B1336; line-height: 1.6; text-wrap: pretty; }
.ji-ab-space__text { margin: 0; font-size: 16px; color: #4B5563; line-height: 1.9; text-wrap: pretty; }
.ji-ab-tabs { margin-top: clamp(36px, 4vw, 56px); display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(6px, .8vw, 12px); }
.ji-ab-tab {
	height: clamp(68px, 5.6vw, 88px); border: 1px solid #E3E7EE; background: #fff; color: #4B5563;
	display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px;
	cursor: pointer; padding: 0 8px; font-family: inherit; transition: background .2s, color .2s;
}
.ji-ab-tab.is-on { background: #0B1336; color: #fff; border-color: #0B1336; box-shadow: 0 10px 24px rgba(11, 19, 54, .18); }
.ji-ab-tab__name { font-size: clamp(16px, 1.3vw, 19px); font-weight: 700; line-height: 1; }
.ji-ab-tab__rooms { font-size: clamp(12px, .9vw, 14px); opacity: .85; line-height: 1.3; }
.ji-ab-stage {
	margin-top: clamp(12px, 1.2vw, 18px); position: relative; width: 100%;
	aspect-ratio: 1100 / 560; min-height: 300px; overflow: hidden; background: #D9DEE6;
	box-shadow: 0 18px 40px rgba(11, 19, 54, .12); border-bottom: 3px solid #0B1336;
}
.ji-ab-stage__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; opacity: 0; transition: opacity .45s ease; }
.ji-ab-stage__img.is-on { opacity: 1; }
.ji-ab-stage__shade { position: absolute; left: 0; right: 0; bottom: 0; height: 45%; background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.18) 45%, rgba(0,0,0,.6) 100%); pointer-events: none; z-index: 2; }
.ji-ab-arrow {
	position: absolute; top: 50%; transform: translateY(-50%);
	width: clamp(44px, 3.4vw, 56px); height: clamp(44px, 3.4vw, 56px); border-radius: 50%; border: 0;
	background: rgba(11, 19, 54, .78); color: #fff;
	display: flex; align-items: center; justify-content: center; cursor: pointer; padding: 0; z-index: 3;
	transition: background .2s;
}
.ji-ab-arrow:hover { background: #0B1336; }
.ji-ab-arrow--prev { left: clamp(12px, 1.6vw, 24px); }
.ji-ab-arrow--next { right: clamp(12px, 1.6vw, 24px); }
.ji-ab-stage__cap {
	position: absolute; left: clamp(20px, 3vw, 40px); right: clamp(20px, 3vw, 40px); bottom: clamp(18px, 2.4vw, 32px);
	display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; z-index: 3; pointer-events: none;
}
.ji-ab-stage__title { font-size: clamp(20px, 1.9vw, 28px); font-weight: 700; color: #fff; letter-spacing: -.02em; }
.ji-ab-stage__count { font-family: 'Montserrat', 'Noto Sans KR', sans-serif; font-size: 13px; letter-spacing: .15em; color: rgba(255, 255, 255, .85); }
.ji-ab-dots { margin-top: 20px; display: flex; justify-content: center; gap: 8px; }
.ji-ab-dot { width: 8px; height: 8px; border-radius: 4px; border: 0; padding: 0; background: #C3CAD5; cursor: pointer; transition: width .25s, background .25s; }
.ji-ab-dot.is-on { width: 28px; background: #0B1336; }
.ji-ab-dot[hidden] { display: none; }

.ji-ab-film { background: linear-gradient(180deg, #0B1336 0%, #132A4C 100%); color: #fff; }
.ji-ab-film__inner { padding-top: clamp(64px, 8vw, 110px); padding-bottom: clamp(64px, 8vw, 110px); }
.ji-ab-film__head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 24px 48px; }
.ji-ab-film__head > div:first-child { flex: 1 1 420px; min-width: 0; }
.ji-ab-film__head > div:last-child { flex: 1 1 380px; min-width: 0; }
.ji-ab-film h2 { margin: 18px 0 0; font-weight: 700; font-size: clamp(32px, 4vw, 56px); color: #fff; letter-spacing: -.03em; line-height: 1.25; text-wrap: pretty; }
.ji-ab-film h2 span { color: #8FB3E8; }
.ji-ab-film__strong { margin: 0 0 10px; font-weight: 700; font-size: clamp(17px, 1.4vw, 20px); color: #fff; line-height: 1.6; text-wrap: pretty; }
.ji-ab-film__text { margin: 0; font-size: 16px; color: rgba(255, 255, 255, .75); line-height: 1.9; text-wrap: pretty; }
.ji-ab-film__box { margin-top: clamp(36px, 4vw, 56px); position: relative; width: 100%; aspect-ratio: 16 / 9; overflow: hidden; background: #0A1230; box-shadow: 0 24px 60px rgba(0, 0, 0, .35); }
.ji-ab-film__box video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; cursor: pointer; }
.ji-ab-film__play {
	position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
	width: clamp(72px, 6vw, 96px); height: clamp(72px, 6vw, 96px); border-radius: 50%;
	border: 2px solid rgba(255, 255, 255, .85); background: rgba(11, 19, 54, .45);
	display: flex; align-items: center; justify-content: center; color: #fff; cursor: pointer; padding: 0;
	transition: background .2s, opacity .2s;
}
.ji-ab-film__play:hover { background: rgba(11, 19, 54, .75); }
.ji-ab-film__box.is-playing .ji-ab-film__play { opacity: 0; pointer-events: none; }

/* ==========================================================================
   죽전만의 특별함
   ========================================================================== */
.ji-sp-hero__inner {
	padding-top: clamp(56px, 8vw, 96px); padding-bottom: clamp(56px, 8vw, 96px);
	display: flex; flex-wrap: wrap; align-items: center; gap: clamp(32px, 5vw, 88px);
}
.ji-sp-hero__body { flex: 1 1 340px; min-width: 0; }
.ji-sp-hero h1 { margin: 20px 0 28px; font-weight: 700; font-size: clamp(36px, 5vw, 58px); color: #0B1336; letter-spacing: -.03em; line-height: 1.25; text-wrap: pretty; }
.ji-sp-hero h1 em { font-style: normal; color: #1F5BB5; font-weight: 900; }
.ji-sp-hero__text { margin: 0; color: #4B5563; font-size: 17px; line-height: 1.85; text-wrap: pretty; }
.ji-sp-hero__photo { flex: 1.7 1 420px; min-width: 0; aspect-ratio: 4 / 3; max-height: 640px; position: relative; border-radius: 4px; overflow: hidden; background: #E9EEF5; }
.ji-sp-hero__photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 55% 50%; display: block; }

.ji-sp-list { padding-top: clamp(56px, 7vw, 88px); padding-bottom: clamp(64px, 10vw, 110px); }
.ji-sp-list__head { text-align: center; padding-bottom: clamp(56px, 7vw, 88px); border-bottom: 1px solid #E3E7EE; }
.ji-sp-list__head h2 { margin: 20px 0 0; font-weight: 700; font-size: clamp(28px, 4vw, 44px); color: #0B1336; letter-spacing: -.03em; line-height: 1.35; text-wrap: pretty; }
.ji-sp-row {
	display: flex; flex-wrap: wrap; align-items: center; gap: clamp(28px, 7.2vw, 120px);
	padding: clamp(40px, 6vw, 88px) 0; border-bottom: 1px solid #E3E7EE;
}
.ji-sp-row--rev { flex-direction: row-reverse; }
.ji-sp-row:last-child { border-bottom: 0; padding-bottom: 0; }
.ji-sp-row__photo { flex: 1 1 340px; min-width: 0; aspect-ratio: 16 / 10; position: relative; border-radius: 4px; overflow: hidden; background: #F3F6FA; }
.ji-sp-row__photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.ji-sp-row__body { flex: 1 1 340px; min-width: 0; }
.ji-sp-row__no { color: #3E6FB0; font-size: clamp(40px, 4.6vw, 56px); font-weight: 700; letter-spacing: -.03em; line-height: 1; }
.ji-sp-row h2 { margin: 20px 0 22px; font-weight: 700; font-size: clamp(26px, 3vw, 34px); color: #0B1336; letter-spacing: -.02em; line-height: 1.35; text-wrap: pretty; }
.ji-sp-row p { margin: 0; color: #4B5563; font-size: 16px; line-height: 1.9; text-wrap: pretty; }
@media (min-width: 1200px) { .ji-nw { white-space: nowrap; } }
.ji-tags { margin-top: 28px; display: flex; flex-wrap: wrap; gap: 8px; }
.ji-tag {
	display: inline-flex; align-items: center; justify-content: center;
	height: 36px; padding: 0 16px 2px; line-height: 1;
	border: 1px solid #D5DCE6; border-radius: 2px; font-size: 14px; color: #4B5563; background: #fff;
}

/* ==========================================================================
   오시는 길
   ========================================================================== */
.ji-lo { max-width: 1200px; margin: 0 auto; padding: clamp(48px, 8vw, 88px) 20px 0; text-align: center; }
.ji-lo-eyebrow {
	display: flex; align-items: center; justify-content: center; gap: 12px;
	color: #3E6FB0; font-size: 13px; letter-spacing: .4em; font-weight: 500;
}
.ji-lo-eyebrow::before, .ji-lo-eyebrow::after { content: ""; width: 40px; height: 1px; background: #C9D3E3; }
.ji-lo h1 { margin: 16px 0 14px; font-weight: 700; font-size: clamp(40px, 6vw, 66px); color: #0B1336; letter-spacing: -.03em; line-height: 1.1; }
.ji-lo h2.ji-lo-title { margin: 16px 0 14px; font-weight: 700; font-size: clamp(34px, 4.6vw, 48px); color: #0B1336; letter-spacing: -.03em; line-height: 1.1; }
.ji-lo-sub { margin: 0; color: #7B8494; font-size: 17px; }
.ji-lo-info {
	margin-top: 48px; background: #fff; border: 1px solid #E3E7EE; border-radius: 14px; padding: 30px 16px;
	display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 20px;
}
.ji-lo-info__item { display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 8px 16px; }
.ji-lo-info__item + .ji-lo-info__item { border-left: 1px solid #E3E7EE; }
.ji-lo-ico { width: 56px; height: 56px; border-radius: 50%; background: #BF9B55; display: flex; align-items: center; justify-content: center; color: #fff; flex: none; }
.ji-lo-label { font-weight: 700; font-size: 18px; color: #0B1336; margin-top: 12px; }
.ji .ji-lo-value { font-size: 19px; font-weight: 700; color: #0B1336; line-height: 1.6; }
.ji-lo-value--col { display: flex; flex-direction: column; align-items: center; }
.ji-lo-nowrap { white-space: nowrap; }
.ji-lo .ji-btns { margin-top: 24px; }
.ji .ji-btn--map { width: 226px; height: 56px; padding: 0; }
.ji-lo-map {
	margin-top: 28px; border: 1px solid #E3E7EE; border-radius: 14px; overflow: hidden; background: #fff;
	width: 100%; aspect-ratio: 1044 / 480; min-height: 260px; position: relative;
}
.ji-lo-map__canvas { position: absolute; inset: 0; width: 100%; height: 100%; }
.ji-lo-map__fallback {
	position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px;
	background: #F3F6FA; font-size: 16px; color: #4B5563;
}
.ji-lo-way { margin-top: 40px; display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 0; }
.ji-lo-way__item { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 16px; }
.ji-lo-way__item + .ji-lo-way__item { border-left: 1px solid #E3E7EE; }
.ji-lo-way__text { font-size: 15px; color: #0B1336; line-height: 1.75; text-wrap: pretty; }
.ji-lo-way__text strong { font-weight: 700; color: #0B1336; }
.ji-lo-note {
	margin-top: 36px; background: #F3F6FA; border-radius: 6px; padding: 20px 24px;
	display: flex; justify-content: center; align-items: center; gap: 10px; flex-wrap: wrap;
	font-size: 15px; color: #0B1336; text-wrap: pretty;
}
.ji-lo-note__mark {
	width: 20px; height: 20px; border: 1.5px solid #0B1336; border-radius: 50%;
	display: inline-flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 700; flex: none;
}
.ji-lo-note strong { font-weight: 700; }
.ji-lo-divider { max-width: 1200px; margin: clamp(48px, 8vw, 80px) auto 0; padding: 0 20px; }
.ji-lo-divider div { height: 1px; background: #E3E7EE; }
.ji-lo--view { padding-top: clamp(48px, 8vw, 80px); }
.ji-lo-photo {
	margin-top: 40px; border: 1px solid #E3E7EE; border-radius: 14px; overflow: hidden; background: #fff;
	width: 100%; aspect-ratio: 1631 / 964; position: relative;
}
.ji-lo-photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }

/* ==========================================================================
   모바일 (시안의 640px 규칙)
   ========================================================================== */
@media (max-width: 640px) {
	.ji .ji-btns > a { flex: 1 1 100%; width: 100%; }
	.ji--greeting .ji-gr-hero__body { padding-bottom: 0; }
	.ji--greeting p br,
	.ji--about p br,
	.ji--special p br { display: none; }
	.ji .ji-gr-hist__card p br { display: inline; } /* 연혁 카드는 시안에서도 모바일 줄바꿈 유지 */
	.ji-ab-tab__rooms { display: none; }
	.ji-ab-stage { min-height: 220px; }
	.ji--special h2 { font-size: 24px; }
	.ji--special h1 { font-size: 32px; }
	.ji-lo-info > *, .ji-lo-way > * { border-left: 0 !important; border-top: 1px solid #E3E7EE; padding: 24px 0 !important; }
	.ji-lo-info > *:first-child, .ji-lo-way > *:first-child { border-top: 0; }
	.ji-lo-wrap { white-space: normal !important; }
	.ji .ji-lo-value { font-size: 16px; }
}
