@charset "utf-8";

/* 의미 단위 줄바꿈 — PC는 공백으로 이어짐, 모바일만 줄바꿈 */
br.cd-br-m{
	display: none !important;
}
span.cd-br-m{
	display: inline !important;
}
span.cd-br-m::before{
	content: " ";
}
@media all and (max-width: 900px){
	br.cd-br-m{
		display: block !important;
	}
	span.cd-br-m{
		display: block !important;
	}
	span.cd-br-m::before{
		content: none;
	}
}

.subject_page{
	background:#fff;
	padding-top:56px;
	padding-bottom:0;
}
.subject_page.has-banner{padding-top:0;}
.subject_page_banner{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:flex-start;
	width:100%;
	min-height:min(52vh, 520px);
	max-height:640px;
	overflow:hidden;
	background:#e8e4de;
}
.subject_page_banner_img{
	position:absolute;
	inset:0;
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:center right;
}
.subject_page_banner_ph{
	position:absolute;
	inset:0;
	display:flex;
	align-items:center;
	justify-content:center;
	color:#7A7670;
	font-size:14px;
	text-align:center;
}
/* 왼쪽 텍스트 가독용 — 전체 암막 대신 좌측 그라데이션 */
.subject_page_banner_shade{
	position:absolute;
	inset:0;
	background:linear-gradient(
		90deg,
		rgba(247,245,241,0.88) 0%,
		rgba(247,245,241,0.72) 28%,
		rgba(247,245,241,0.28) 52%,
		rgba(247,245,241,0) 72%
	);
	pointer-events:none;
}
.subject_page_banner .subject_head{
	position:relative;
	z-index:2;
	box-sizing:border-box;
	padding-top:72px;
	padding-bottom:72px;
	/* .wrap 중앙 정렬 유지 — margin:0으로 왼쪽 끝에 붙지 않게 */
	margin-left:auto;
	margin-right:auto;
}
.subject_page_banner .heading{
	margin:0;
	max-width:680px;
	padding-left:0;
	text-align:left;
}
.subject_page_banner .heading h3{
	margin:0;
	font-family:'Pretendard',sans-serif;
	font-size:clamp(36px, 4.5vw, 56px);
	line-height:1.2;
	font-weight:700;
	letter-spacing:-0.03em;
	color:#4D4A45;
	text-align:left;
	word-break:keep-all;
}
.subject_page_banner .heading h3 .blue{
	display:block;
	margin-top:14px;
	font-size:clamp(15px, 1.6vw, 18px);
	font-weight:600;
	letter-spacing:0.18em;
	color:#5A7FA8;
}
.subject_page_banner .heading .text{
	max-width:none;
	margin:28px 0 0;
	font-size:clamp(16px, 1.55vw, 18px);
	line-height:1.85;
	font-weight:400;
	color:#5C5955;
	text-align:left;
	word-break:keep-all;
	letter-spacing:-0.01em;
}
.subject_page_banner .heading .text .text_keep{
	white-space:nowrap;
}
.subject_page_banner.is-empty .subject_head .heading h3{color:#4D4A45;}
.subject_page_banner.is-empty .subject_head .heading h3 .blue{color:#5A7FA8;}
.subject_page_banner.is-empty .subject_head .heading .text{color:#5C5955;}
.subject_page_banner.is-empty .subject_page_banner_shade{
	background:linear-gradient(
		90deg,
		rgba(255,255,255,0.92) 0%,
		rgba(255,255,255,0.55) 45%,
		rgba(255,255,255,0) 70%
	);
}
.subject_page .heading .text{
	font-size:20px; line-height:1.5; font-weight:400;
}

/* 헤더는 전 페이지 고정. 스크롤 시 본문이 헤더 아래로 지나감 */
body.is-subject-page #header,
body:has(.subject_page) #header{
	position:fixed;
	top:0;
	left:0;
	right:0;
	width:100%;
	z-index:100;
}

/* 2차 메뉴 — A안: 텍스트 라인 탭 */
.subject_nav{
	--subject-tab-ink: #4D4A45;
	--subject-tab-muted: #8A8680;
	--subject-tab-point: #5A7FA8;
	margin:0;
	padding:36px 0 0;
	border-bottom:1px solid #E8E6E2;
	position:relative;
	top:auto;
	z-index:15;
	background:#fff;
}
.subject_nav .subject_tabs.wrap{
	width:100%;
}
.subject_tabs{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	align-items:stretch;
	gap:0;
	width:100%;
}
.subject_tab{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	flex:1 1 0;
	min-width:0;
	margin:0;
	padding:18px 10px 16px;
	min-height:0;
	height:auto;
	border:0;
	border-bottom:2px solid transparent;
	border-radius:0;
	background:transparent;
	color:var(--subject-tab-muted);
	font-family:'Pretendard', sans-serif;
	font-size:16px;
	line-height:1.35;
	font-weight:500;
	letter-spacing:-0.02em;
	text-align:center;
	word-break:keep-all;
	white-space:normal;
	cursor:pointer;
	transition:color 0.2s ease, border-color 0.2s ease, font-weight 0.2s ease;
	box-sizing:border-box;
	margin-bottom:-1px;
}
.subject_tab .tab_icon{display:none !important;}
.subject_tab .tab_short{display:none;}
.subject_tab:hover,
.subject_tab:focus-visible{
	color:var(--subject-tab-ink);
	border-bottom-color:rgba(90,127,168,0.35);
	font-weight:600;
	outline:none;
	background:transparent;
}
.subject_tab.is-active{
	color:var(--subject-tab-ink);
	border-bottom-color:var(--subject-tab-point);
	font-weight:700;
	background:transparent;
}

@media all and (max-width:1200px) and (min-width:901px){
	.subject_tab{
		font-size:15px;
		padding:16px 8px 14px;
	}
}

.subject_panels{min-height:420px; overflow:visible;}
.subject_panel{display:none;}
.subject_panel.is-active{display:block;}

/* B안 — 풀폭 히어로 */
.subject_hero{
	position:relative;
	width:100%;
	min-height:min(54vh, 560px);
	max-height:620px;
	overflow:hidden;
	background:#2a2826;
}
/* 보약: AI 이미지 하단 그라데이션 + cover 크롭 충돌 방지 — 낮은 와이드 배너 */
.subject_hero.is-herb{
	min-height:0;
	max-height:none;
	height:auto;
	aspect-ratio:21/8;
	max-height:400px;
	background:#E8E2DA;
}
.subject_hero_img{
	display:block;
	width:100%;
	height:100%;
	min-height:min(54vh, 560px);
	object-fit:cover;
	object-position:center 44%;
}
.subject_hero.is-herb .subject_hero_img{
	min-height:0;
	height:100%;
	object-fit:cover;
	object-position:center 28%;
}
.subject_hero.is-herb .subject_hero_shade{
	background:linear-gradient(180deg, rgba(26,24,22,0) 45%, rgba(26,24,22,0.42) 100%);
}
.subject_hero_ph{
	display:flex;
	align-items:center;
	justify-content:center;
	min-height:min(56vh, 520px);
	background:#F0EEE9;
	color:#8A847A;
	font-size:15px;
}
.subject_hero_shade{
	position:absolute;
	inset:0;
	background:linear-gradient(180deg, rgba(26,24,22,0.02) 0%, rgba(26,24,22,0.34) 100%);
	pointer-events:none;
}
.subject_hero_copy{
	position:absolute;
	left:0; right:0; bottom:0;
	padding:36px 0 42px;
	color:#fff;
	text-align:left;
}
.subject_hero_title{
	margin:0;
	font-family:'Pretendard', sans-serif;
	font-size:clamp(28px, 4vw, 48px);
	font-weight:800;
	line-height:1.25;
	letter-spacing:-0.03em;
	word-break:keep-all;
	color:#fff;
}
.subject_hero_lead{
	margin:10px 0 0;
	max-width:34em;
	font-size:clamp(16px, 1.6vw, 20px);
	line-height:1.65;
	font-weight:400;
	color:rgba(255,255,255,0.92);
	word-break:keep-all;
}

/* B안 — 교차 스토리 */
.subject_story{
	width:100%;
	background:#fff;
}
.subject_story.is-band{background:#F7F5F1;}
.subject_story_inner{
	display:grid;
	grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
	align-items:center;
	gap:0;
	max-width:var(--content-max);
	margin:0 auto;
	min-height:340px;
}
.subject_story.is-reverse .subject_story_inner{
	grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
}
.subject_story.is-reverse .subject_story_media{order:2;}
.subject_story.is-reverse .subject_story_copy{order:1;}

.subject_story_media{
	min-height:340px;
	height:100%;
	overflow:hidden;
	background:#EDE9E2;
}
.subject_story_media img{
	display:block;
	width:100%;
	height:100%;
	min-height:340px;
	object-fit:cover;
}
.subject_story_ph{
	display:flex;
	align-items:flex-end;
	justify-content:flex-start;
	min-height:340px;
	padding:28px;
	box-sizing:border-box;
	background:#EDE9E2;
	color:#5C574F;
	font-size:18px;
	font-weight:600;
	word-break:keep-all;
}
.subject_story_copy{
	padding:44px 56px;
	box-sizing:border-box;
}
.subject_story_title{
	margin:0 0 18px;
	font-size:clamp(22px, 2.4vw, 30px);
	font-weight:700;
	line-height:1.35;
	letter-spacing:-0.02em;
	color:#282828;
	word-break:keep-all;
}
.subject_story_text{
	margin:0;
	font-size:17px;
	line-height:1.75;
	color:#555;
	word-break:keep-all;
	letter-spacing:-0.02em;
}

/* 본문 밴드 */
.subject_body_band{
	background:#fff;
	padding:56px 0 84px;
}
.subject_body_band.is-solo{
	background:#F7F5F1;
}
.subject_body_band .subject_body{
	max-width:820px;
}
.subject_body p{
	margin:0;
	font-size:18px;
	line-height:1.85;
	font-weight:400;
	color:#333;
	word-break:keep-all;
	letter-spacing:-0.02em;
}
.subject_body p + p{margin-top:1.1em;}
.subject_caption{
	margin-top:1.5em !important;
	font-size:15px !important;
	color:#7A7670 !important;
}

/* 보약 전용 — 클리닉 톤 + 교차 프로세스·사례 유지 */
.subject_panel.is-herb-layout{padding-bottom:0;}
.subject_herb_process_list{
	display:flex;
	flex-direction:column;
	gap:20px;
	margin-top:40px;
}
.subject_herb_process_row_inner{
	display:grid;
	grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
	align-items:stretch;
	gap:0;
	min-height:320px;
	background:#fff;
	border:1px solid var(--disc-line, #e6e2db);
	border-radius:12px;
	overflow:hidden;
}
.subject_herb_process_row.is-reverse .subject_herb_process_media{order:2;}
.subject_herb_process_row.is-reverse .subject_herb_process_txt{order:1;}
.subject_herb_process_media{
	position:relative;
	min-height:0;
	aspect-ratio:4 / 3;
	overflow:hidden;
	background:var(--disc-bg, #f6f4f0);
}
.subject_herb_process_media img{
	position:absolute;
	inset:0;
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:center;
}
.subject_herb_process_ph{
	display:flex;
	align-items:flex-end;
	justify-content:flex-start;
	min-height:0;
	aspect-ratio:4 / 3;
	padding:28px;
	box-sizing:border-box;
	background:var(--disc-bg, #f6f4f0);
	color:#5C574F;
	font-size:18px;
	font-weight:600;
	word-break:keep-all;
}
.subject_herb_process_txt{
	display:flex;
	flex-direction:column;
	justify-content:center;
	padding:40px 44px;
	box-sizing:border-box;
	background:#fff;
}
.subject_herb_process_txt .disc_h3{margin:0;}
.subject_herb_process_txt .disc_body{margin-top:18px;}
.subject_case_diti_wide{
	background:#1a1a1a;
	border-color:#1a1a1a;
	padding:14px;
	box-sizing:border-box;
}
.subject_case_diti_wide .disc_ph.is-wide{
	min-height:0;
	aspect-ratio:1200 / 750;
	background:#222;
	border:none;
}
.subject_case_diti_grid.is-wide{
	display:grid;
	grid-template-columns:repeat(2, minmax(0, 1fr));
	gap:10px;
	line-height:normal;
}
.subject_case_diti_item{
	position:relative;
	background:#111;
	border-radius:6px;
	overflow:hidden;
}
.subject_case_diti_item img{
	display:block;
	width:100%;
	aspect-ratio:3 / 4;
	object-fit:cover;
}
.subject_case_diti_ph{
	display:flex;
	align-items:center;
	justify-content:center;
	aspect-ratio:3 / 4;
	background:#222;
	color:#888;
	font-size:15px;
	text-align:center;
	padding:12px;
	box-sizing:border-box;
	word-break:keep-all;
}
.subject_case_diti_label{
	display:block;
	padding:8px 0 2px;
	font-size:14px;
	line-height:1.4;
	font-weight:500;
	color:rgba(255,255,255,0.78);
	text-align:center;
	word-break:keep-all;
}
.subject_case_patient_line{
	margin:32px 0 8px;
	text-align:center;
	font-size:20px;
	line-height:1.5;
	color:var(--disc-ink, #282828);
	word-break:keep-all;
}
.subject_case_patient_line strong{
	font-size:clamp(28px, 3vw, 36px);
	font-weight:800;
	letter-spacing:-0.03em;
}
.subject_case_patient_line span{
	display:inline-block;
	margin-left:10px;
	font-size:18px;
	font-weight:500;
	color:var(--main-color-soft, #7A7670);
}
.subject_case_conclusion_plain{
	max-width:42em;
	margin:40px auto 0;
	text-align:center;
}
.subject_case_conclusion_plain .disc_h3{margin:0 0 14px;}
.subject_case_conclusion_plain .disc_body{margin:0;}

/* 입원실 전용 — 클리닉 톤 + 포인트·산재 유지 */
.subject_panel.is-ward-layout{padding-bottom:0;}
.clinic_page.is-ward .subject_ward_points{margin-top:40px;}
.clinic_page.is-ward .subject_ward_point .disc_h3{margin:16px 0 0;text-align:left;}
.clinic_page.is-ward .disc_consult_inner.is-copy-only{
	grid-template-columns:1fr;
	max-width:820px;
}
.clinic_page.is-ward .subject_ward_need_cards{margin-top:40px;}
.clinic_page.is-ward .subject_ward_need_note{margin-top:28px;}
.clinic_page.is-ward .subject_ward_industrial{padding-top:96px;padding-bottom:96px;}

/* 병실 시설 — 아이콘 카드 그리드 */
.subject_ward_facility .disc_h2{text-align:center;}
.subject_ward_facility .disc_body.is-center{max-width:42em;margin-left:auto;margin-right:auto;}
.subject_ward_facility_grid{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	gap:24px;
	margin:48px 0 0;
	padding:0;
	list-style:none;
}
.subject_ward_facility_card{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:flex-start;
	flex:0 1 calc(33.333% - 16px);
	width:calc(33.333% - 16px);
	max-width:calc(33.333% - 16px);
	box-sizing:border-box;
	gap:18px;
	margin:0;
	padding:36px 20px 32px;
	background:#fff;
	border:2px solid #e8e4de;
	border-radius:16px;
	text-align:center;
	transition:border-color 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
}
.subject_ward_facility_card:hover{
	border-color:var(--disc-accent, #4d4a45);
	transform:translateY(-4px);
	box-shadow:0 12px 28px rgba(40, 36, 30, 0.08);
}
.subject_ward_facility_icon{
	display:flex;
	align-items:center;
	justify-content:center;
	width:88px;
	height:88px;
	border-radius:50%;
	background:var(--disc-bg, #f6f4f0);
}
.subject_ward_facility_icon img{
	display:block;
	width:48px;
	height:48px;
	object-fit:contain;
}
.subject_ward_facility_icon_ph{
	display:block;
	width:28px;
	height:28px;
	border-radius:6px;
	background:#d7d0c6;
}
.subject_ward_facility_label{
	margin:0;
	font-size:18px;
	line-height:1.45;
	font-weight:700;
	letter-spacing:-0.02em;
	color:var(--disc-ink, #1f1f1f);
	word-break:keep-all;
}
@media all and (max-width:1023px){
	.subject_ward_facility_grid{gap:16px;}
	.subject_ward_facility_card{
		flex:0 1 calc(50% - 8px);
		width:calc(50% - 8px);
		max-width:calc(50% - 8px);
		padding:28px 16px 24px;
	}
	.subject_ward_facility_icon{width:72px;height:72px;}
	.subject_ward_facility_icon img{width:40px;height:40px;}
}
@media all and (max-width:560px){
	.subject_ward_facility_card{
		flex:0 1 calc(50% - 8px);
		width:calc(50% - 8px);
		max-width:calc(50% - 8px);
	}
	.subject_ward_facility_label{font-size:16px;}
}

.subject_ward_points{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	gap:36px 28px;
	margin:0;
	padding:0;
	list-style:none;
	text-align:left;
}
.subject_ward_points > *{
	flex:0 1 calc(33.333% - 19px);
	width:calc(33.333% - 19px);
	max-width:calc(33.333% - 19px);
	box-sizing:border-box;
	min-width:0;
}
.subject_ward_points:has(> :nth-child(2):last-child) > *{
	flex:0 1 calc(50% - 14px);
	width:calc(50% - 14px);
	max-width:420px;
}
.subject_ward_point_media{
	overflow:hidden;
	background:#eceae6;
	aspect-ratio:16 / 10;
}
.subject_ward_point_media img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
}
.subject_ward_point_ph{
	display:flex;
	align-items:center;
	justify-content:center;
	min-height:120px;
	padding:12px;
	font-size:13px;
	color:#7A7670;
	text-align:center;
}
.clinic_page.is-ward .subject_ward_intensive{
	background:linear-gradient(180deg, #1a3157 0%, #152846 100%);
}
.clinic_page.is-ward .subject_ward_intensive .disc_h2{color:#fff;}
.clinic_page.is-ward .subject_ward_intensive .disc_body.is-center{color:rgba(255,255,255,.92);}
.clinic_page.is-ward .subject_ward_need_note{color:rgba(255,255,255,.88);}
.subject_ward_media_ph{
	display:flex;
	width:100%;
	height:100%;
	min-height:320px;
	align-items:center;
	justify-content:center;
	overflow:hidden;
	background:#e8e4de;
	color:#7A7670;
	font-size:15px;
}
.subject_ward_intensive{background:#fff;}
.subject_ward_need_cards{
	display:grid;
	grid-template-columns:repeat(3, minmax(0, 1fr));
	gap:28px;
	margin:0;
	padding:0;
	list-style:none;
}
.subject_ward_need_card{
	display:flex;
	flex-direction:column;
	align-items:center;
	min-height:280px;
	padding:40px 24px 32px;
	border-radius:28px 28px 18px 18px;
	background:#5f7fa8;
	color:#fff;
	text-align:center;
}
.subject_ward_need_card.is-white{background:#fff;color:#1a3157;}
.subject_ward_need_card .disc_h3{margin:0;color:inherit;}
.subject_ward_need_card .disc_body{margin-top:12px;color:inherit;opacity:0.95;}
.subject_ward_need_icon{
	display:flex;
	align-items:center;
	justify-content:center;
	width:88px;
	height:88px;
	margin-bottom:22px;
}
.subject_ward_need_icon img{
	display:block;
	width:72px;
	height:72px;
	object-fit:contain;
}
.subject_ward_need_note{
	margin:40px 0 0;
	font-size:17px;
	line-height:1.7;
	color:rgba(255,255,255,0.82);
	text-align:center;
	word-break:keep-all;
}
.subject_ward_industrial{
	padding:88px 0 104px;
	background:#fff;
	border-top:1px solid #eceae6;
}
.subject_ward_industrial_inner{
	display:grid;
	grid-template-columns:minmax(0, 0.9fr) minmax(0, 1.15fr) minmax(0, 0.95fr);
	min-height:420px;
	background:#d4b896;
	overflow:hidden;
	box-shadow:0 12px 40px rgba(26, 49, 87, 0.08);
}
.subject_ward_industrial_quote{
	display:flex;
	align-items:center;
	justify-content:center;
	padding:36px 24px;
	background:#efe6d8;
	border-right:1px solid rgba(77,74,69,0.12);
}
.subject_ward_industrial_quote_box{
	max-width:100%;
	text-align:left;
}
.subject_ward_industrial_quote .quote_mark{
	display:block;
	margin:0 0 -4px;
	font-size:clamp(48px, 5vw, 64px);
	line-height:0.75;
	font-weight:700;
	color:#4d4a45;
	font-family:'KoPubWorldBatang','Pretendard',serif;
	letter-spacing:-0.04em;
}
.subject_ward_industrial_quote .quote_mark.is-end{
	margin:-6px 0 0;
	text-align:right;
}
.subject_ward_industrial_quote_text{
	margin:0;
	padding:0 2px;
	font-size:20px;
	line-height:1.85;
	font-weight:500;
	color:#4a4038;
	word-break:keep-all;
}
.subject_ward_industrial_media{overflow:hidden;background:#e8e4de;}
.subject_ward_industrial_media img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
}
.subject_ward_industrial_copy{
	display:flex;
	flex-direction:column;
	justify-content:center;
	gap:10px;
	padding:40px 32px;
	background:#8f7358;
	color:#fff;
}
.subject_ward_industrial_clinic{
	margin:0;
	font-size:20px;
	opacity:0.9;
	word-break:keep-all;
}
.subject_ward_industrial_title{
	margin:0;
	font-size:clamp(32px, 3.5vw, 44px);
	line-height:1.2;
	font-weight:800;
	word-break:keep-all;
}
.subject_ward_industrial_badge{
	margin:10px 0 0;
	font-size:18px;
	opacity:0.92;
	word-break:keep-all;
}

/* ── 디스크·협착증 타이포·UI (8섹션) ── */
.disc_page{
	--disc-ink: #2a2826;
	--disc-mute: #7a7670;
	--disc-line: #e5e2dc;
	--disc-bg: #f7f5f1;
	--disc-accent: #4d4a45;
	--disc-accent-soft: #ebeae8;
	--disc-accent-dark: #3a3733;
	font-family:'Pretendard', sans-serif;
	color:var(--disc-ink);
	padding-bottom:48px;
}
.disc_kicker{
	margin:0 0 14px;
	font-size:16px;
	line-height:1.45;
	font-weight:500;
	letter-spacing:0.06em;
	color:var(--disc-mute);
	word-break:keep-all;
}
.disc_h1{
	margin:0;
	font-family:'KoPubWorldBatang','Pretendard',serif;
	font-size:clamp(34px, 4vw, 44px);
	line-height:1.35;
	font-weight:400;
	letter-spacing:-0.02em;
	color:var(--disc-ink);
	text-align:center;
	word-break:keep-all;
}
.disc_h1::before,
.disc_h2::before{
	content:'';
	display:block;
	width:40px;
	height:6px;
	margin:0 auto 18px;
	border-radius:999px;
	background:var(--disc-accent);
}
.disc_h1.is-left{text-align:left;}
.disc_h1.is-left::before,
.disc_h2.is-left::before{
	margin-left:0;
	margin-right:auto;
}
.disc_h2{
	margin:0 0 18px;
	font-family:'KoPubWorldBatang','Pretendard',serif;
	font-size:clamp(30px, 3.4vw, 38px);
	line-height:1.4;
	font-weight:400;
	letter-spacing:-0.02em;
	color:var(--disc-ink);
	text-align:center;
	word-break:keep-all;
}
.disc_h2.is-left{text-align:left;}
.clinic_page.is-ward .subject_ward_intensive .disc_h2::before{
	background:rgba(255,255,255,0.88);
}
.disc_h3{
	margin:0;
	font-size:22px;
	line-height:1.4;
	font-weight:700;
	letter-spacing:-0.02em;
	color:var(--disc-ink);
	word-break:keep-all;
}
.disc_h3.is-left{text-align:left;}
.disc_lead{
	margin:18px 0 0;
	font-family:'Pretendard', sans-serif;
	font-size:22px;
	line-height:1.7;
	font-weight:500;
	color:var(--disc-mute);
	text-align:center;
	word-break:keep-all;
}
.disc_lead.is-left{text-align:left;}
.disc_body{
	margin:16px 0 0;
	font-size:19px;
	line-height:1.85;
	font-weight:400;
	color:#444;
	letter-spacing:-0.02em;
	word-break:keep-all;
}
.disc_body.is-center{
	max-width:820px;
	margin-left:auto;
	margin-right:auto;
	text-align:center;
}
.disc_footnote{
	margin:36px 0 0;
	font-size:16px;
	line-height:1.7;
	color:var(--disc-mute);
	text-align:center;
	word-break:keep-all;
}
.disc_sec{padding:96px 0;}
.disc_sec.is-band{background:var(--disc-bg);}

.disc_ph{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	gap:8px;
	width:100%;
	height:100%;
	min-height:220px;
	box-sizing:border-box;
	padding:24px;
	background:linear-gradient(160deg, #efebe4 0%, #e4dfd6 100%);
	border:1px dashed #cfc8bd;
	border-radius:12px;
	color:var(--disc-mute);
	text-align:center;
}
.disc_ph_label{
	display:block;
	font-size:12px;
	font-weight:700;
	letter-spacing:0.08em;
	color:#6f6a63;
}
.disc_ph_use{
	display:block;
	font-size:14px;
	line-height:1.5;
	font-weight:500;
	color:#555;
	word-break:keep-all;
}
.disc_ph.is-portrait{aspect-ratio:4 / 5;min-height:0;}
.disc_ph.is-landscape{aspect-ratio:4 / 3;min-height:0;}
.disc_ph.is-wide{aspect-ratio:16 / 10;min-height:0;}

.disc_hero{
	padding:64px 0 56px;
	background:#fff;
}
.disc_hero.is-stack{
	padding:72px 0 64px;
}
.disc_hero_stack{
	width:100%;
	margin:0 auto;
	text-align:center;
}
.disc_hero_stack_copy{
	width:100%;
	max-width:none;
	margin:0 auto 48px;
}
.disc_hero_stack_copy .disc_h1{
	text-align:center;
	font-family:'KoPubWorldBatang','Pretendard',serif;
	font-size:clamp(34px, 4vw, 44px);
	line-height:1.35;
	font-weight:400;
	color:var(--disc-ink);
}
.disc_hero_stack_copy .disc_lead{
	text-align:center;
	margin:18px auto 0;
	max-width:none;
	width:100%;
	font-family:'Pretendard', sans-serif;
	font-size:22px;
	line-height:1.7;
	font-weight:500;
	color:var(--disc-mute);
}
.disc_hero_stack_media{
	width:100%;
	max-width:none;
	margin:0 auto;
	border-radius:16px;
	overflow:hidden;
	aspect-ratio:16 / 10;
	background:var(--disc-bg);
}
.disc_hero_stack_media img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
}
.disc_hero_stack_media .disc_ph{
	border-radius:0;
	border:0;
	min-height:280px;
}
.disc_hero_stack_body{
	width:100%;
	max-width:none;
	margin:40px auto 0;
}
.disc_hero_stack_body .disc_body{
	margin:0 auto;
	max-width:1200px;
	text-align:left;
	font-size:19px;
	line-height:1.85;
	font-weight:400;
	color:#444;
	word-break:keep-all;
}
.disc_hero_stack_body .disc_body + .disc_body{
	margin-top:1.05em;
}
.disc_hero_stack_body .disc_em{
	color:#3b82c4;
	font-weight:600;
}
.clinic_page.is-rium-tone .disc_body.is-center{
	max-width:1200px;
}
.disc_flow_item.has-media .disc_body{
	font-size:19px;
}
.disc_hero_inner{
	display:grid;
	grid-template-columns:minmax(0, 1.1fr) minmax(0, 0.9fr);
	gap:48px;
	align-items:center;
}
.disc_hero_copy .disc_body{max-width:34em;}

.disc_card_row{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	gap:20px;
	margin:40px 0 0;
	padding:0;
	list-style:none;
}
.disc_card_row > .disc_card,
.disc_card_row > li{
	box-sizing:border-box;
	min-width:0;
}
.disc_card_row.is-2 > .disc_card,
.disc_card_row.is-2 > li{
	flex:0 1 calc(50% - 10px);
	width:calc(50% - 10px);
	max-width:calc(50% - 10px);
}
.disc_card_row.is-3 > .disc_card,
.disc_card_row.is-3 > li{
	flex:0 1 calc(33.333% - 14px);
	width:calc(33.333% - 14px);
	max-width:calc(33.333% - 14px);
}
.disc_card_row.is-4 > .disc_card,
.disc_card_row.is-4 > li{
	flex:0 1 calc(25% - 15px);
	width:calc(25% - 15px);
	max-width:calc(25% - 15px);
}
.disc_card{
	padding:28px 22px;
	background:#fff;
	border:1px solid var(--disc-line);
	border-radius:12px;
	text-align:center;
}
.disc_icon{
	display:flex;
	align-items:center;
	justify-content:center;
	width:52px;
	height:52px;
	margin:0 auto 14px;
	border-radius:12px;
	background:var(--disc-bg);
	line-height:0;
}
.disc_icon img{
	display:block;
	width:36px;
	height:36px;
	object-fit:contain;
}
.disc_icon.is-emoji{
	font-size:28px;
	line-height:1;
}
.disc_card .disc_icon,
.disc_flow_item .disc_icon{margin-bottom:14px;}
.disc_card.is-point .disc_icon{margin-left:0;margin-right:auto;}
.disc_card .disc_h3{margin:0;}
.disc_card .disc_body{margin-top:12px;font-size:18px;line-height:1.75;}
.disc_card.is-point{
	text-align:left;
	background:var(--disc-bg);
	border-color:transparent;
}
.disc_card.is-outcome{background:#fff;}

/* 세 가지 포인트 — 숫자 자리에 아이콘 */
.disc_card.is-icon-head{
	text-align:left;
}
.disc_card.is-icon-head .disc_h3{
	display:flex;
	align-items:center;
	gap:12px;
	justify-content:flex-start;
}
.disc_card.is-icon-head .disc_icon{
	width:44px;
	height:44px;
	margin:0;
	flex:0 0 44px;
	border-radius:10px;
}
.disc_card.is-icon-head .disc_icon img{
	width:28px;
	height:28px;
}
.disc_card.is-icon-head .disc_icon.is-emoji{
	font-size:22px;
}
.disc_card.is-icon-head .disc_h3_txt{
	flex:1 1 auto;
	min-width:0;
}
.disc_flow_item.is-no-icon{
	padding-top:24px;
}

.disc_flow{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	gap:16px;
	margin:40px 0 0;
	padding:0;
	list-style:none;
	counter-reset:none;
}
.disc_flow_item{
	position:relative;
	flex:0 1 calc(25% - 12px);
	width:calc(25% - 12px);
	max-width:calc(25% - 12px);
	box-sizing:border-box;
	padding:28px 18px;
	background:#fff;
	border-radius:12px;
	border:1px solid var(--disc-line);
	text-align:center;
}
.disc_flow:has(> :nth-child(3):last-child) .disc_flow_item{
	flex:0 1 calc(33.333% - 11px);
	width:calc(33.333% - 11px);
	max-width:calc(33.333% - 11px);
}
.disc_flow:has(> :nth-child(2):last-child) .disc_flow_item{
	flex:0 1 calc(50% - 8px);
	width:calc(50% - 8px);
	max-width:420px;
}
.disc_flow:has(> :nth-child(1):last-child) .disc_flow_item{
	flex:0 1 100%;
	width:100%;
	max-width:420px;
}
.disc_flow_item.has-media{
	padding:0 0 22px;
	overflow:hidden;
	display:flex;
	flex-direction:column;
	align-items:stretch;
}
.disc_flow_item.has-media .disc_flow_media{
	margin:0 0 16px;
	aspect-ratio:4 / 3;
	overflow:hidden;
	background:var(--disc-bg);
}
.disc_flow_item.has-media .disc_flow_media img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
}
.disc_flow_item.has-media .disc_flow_copy{
	padding:0 16px;
}
.disc_flow_item.has-media.is-no-icon{padding-top:0;}
.disc_flow_item .disc_h3{margin:0;font-size:20px;}
.disc_flow_item .disc_body{margin-top:12px;font-size:19px;line-height:1.7;}
.disc_flow_item.has-media .disc_body{margin-top:12px;font-size:19px;}

.disc_consult_inner{
	display:grid;
	grid-template-columns:minmax(0, 1.05fr) minmax(0, 0.95fr);
	gap:40px;
	align-items:center;
}
.disc_check{
	display:grid;
	grid-template-columns:repeat(2, minmax(0, 1fr));
	gap:10px 14px;
	margin:22px 0 0;
	padding:0;
	list-style:none;
}
.disc_check li{
	padding:14px 16px;
	background:var(--disc-bg);
	border-radius:8px;
	font-size:17px;
	line-height:1.45;
	font-weight:500;
	color:#333;
	word-break:keep-all;
}
.disc_check.is-icon li{
	display:flex;
	align-items:center;
	gap:12px;
	padding:14px 16px;
}
.disc_check_icon{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	flex:0 0 28px;
	width:28px;
	height:28px;
	line-height:0;
}
.disc_check_icon img{
	display:block;
	width:28px;
	height:28px;
	object-fit:contain;
}
.disc_check_text{flex:1 1 auto;min-width:0;}

/* A안: 박스 대신 한 줄 리스트 */
.disc_check.is-list{
	display:flex;
	flex-direction:column;
	gap:0;
	margin-top:20px;
}
.disc_check.is-list li{
	position:relative;
	padding:12px 0 12px 18px;
	background:transparent;
	border-radius:0;
	border-bottom:1px solid var(--disc-line);
	font-size:17px;
	line-height:1.55;
	font-weight:500;
}
.disc_check.is-list li:first-child{border-top:1px solid var(--disc-line);}
.disc_check.is-list li::before{
	content:"";
	position:absolute;
	left:0;
	top:1.15em;
	width:6px;
	height:6px;
	border-radius:50%;
	background:var(--disc-accent);
}
.disc_hero_media{
	position:relative;
	overflow:hidden;
	border-radius:12px;
	background:#efebe4;
	line-height:0;
	aspect-ratio:640 / 800;
}
.disc_hero_media img{
	position:absolute;
	inset:0;
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:center;
}
.disc_consult_media{
	position:relative;
	overflow:hidden;
	border-radius:12px;
	background:#efebe4;
	line-height:0;
	aspect-ratio:960 / 720;
}
.disc_consult_media img{
	position:absolute;
	inset:0;
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:center;
}
.disc_types_media{
	max-width:960px;
	margin:36px auto 0;
	position:relative;
	overflow:hidden;
	border-radius:12px;
	background:#fff;
	border:1px solid var(--disc-line);
	line-height:0;
	aspect-ratio:1200 / 750;
}
.disc_types_media img{
	position:absolute;
	inset:0;
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:center;
}

.disc_treat_points{margin-top:36px;}
.disc_treat_list{
	display:grid;
	grid-template-columns:repeat(2, minmax(0, 1fr));
	gap:28px;
	margin:36px 0 0;
	padding:0;
	list-style:none;
}
.disc_treat_item{
	padding:28px 22px 24px;
	background:var(--disc-bg);
	border-radius:12px;
	border:1px solid var(--disc-line);
	text-align:center;
}
.disc_pill{
	display:inline-block;
	margin:0 0 14px;
	padding:10px 22px;
	border-radius:999px;
	background:var(--disc-accent);
	color:#fff;
	font-size:17px;
	font-weight:600;
	word-break:keep-all;
}
.disc_treat_item .disc_body{margin-top:0;font-size:18px;line-height:1.75;}
.disc_rx{margin-top:20px;text-align:left;}
.disc_rx_table{
	width:100%;
	border-collapse:collapse;
	table-layout:fixed;
	border:1px solid #d2cdc4;
}
.disc_rx_table th,
.disc_rx_table td{
	padding:12px 8px;
	border:1px solid #d2cdc4;
	font-size:15px;
	line-height:1.4;
	font-weight:400;
	text-align:center;
	color:#222;
	vertical-align:middle;
	background:#fff;
	word-break:keep-all;
}
.disc_rx_table .disc_rx_head th,
.disc_rx_table .disc_rx_sub th{
	background:var(--disc-accent-soft);
	font-weight:600;
}
.disc_rx_table .disc_rx_vol{
	width:18%;
	font-size:17px;
	font-weight:700;
}

.disc_decide_card{
	padding:28px 24px;
	border-radius:12px;
	background:#fff;
	border:1px solid var(--disc-line);
	text-align:left;
}
.disc_decide_card.is-soft{border-color:var(--disc-accent);}
.disc_decide_card.is-alert{
	background:#2f2c29;
	border-color:#2f2c29;
	color:#fff;
}
.disc_decide_card.is-alert .disc_h3{color:#fff;}
.disc_decide_list{
	margin:16px 0 0;
	padding:0;
	list-style:none;
}
.disc_decide_list li{
	position:relative;
	padding:12px 0 12px 14px;
	border-top:1px dashed rgba(0,0,0,0.12);
	font-size:17px;
	line-height:1.6;
	color:#444;
	word-break:keep-all;
}
.disc_decide_list li:first-child{border-top:none;}
.disc_decide_list li::before{
	content:'';
	position:absolute;
	left:0;
	top:1.15em;
	width:5px;
	height:5px;
	border-radius:50%;
	background:var(--disc-accent);
}
.disc_decide_card.is-alert .disc_decide_list li{
	border-top-color:rgba(255,255,255,0.18);
	color:rgba(255,255,255,0.9);
}
.disc_decide_card.is-alert .disc_decide_list li::before{background:#c4b39a;}

.disc_outcome .disc_card{background:var(--disc-bg);border-color:transparent;}

@media (prefers-reduced-motion: reduce){
	.subject_page [data-aos]{
		opacity:1 !important;
		transform:none !important;
		transition:none !important;
	}
}

@media all and (max-width:1200px){
	.subject_story_copy{padding:44px 40px;}
	.subject_story_inner,
	.subject_story_media,
	.subject_story_media img,
	.subject_story_ph{min-height:360px;}
}

@media all and (max-width:1000px){
	.fullpage:has(.subject_page){padding-top:210px !important;}
	/* 헤더 실측 높이(--cd-header-h)에 맞춰 흰 틈 0 */
	.fullpage:has(.subject_page.has-banner){padding-top:var(--cd-header-h, 191px) !important;}
	.subject_nav{top:auto; position:relative;}
}

@media all and (max-width:900px){
	.fullpage:has(.subject_page){padding-top:210px !important;}
	.fullpage:has(.subject_page.has-banner){padding-top:var(--cd-header-h, 191px) !important;}
	.subject_page{padding-top:20px;}
	.subject_page.has-banner{padding-top:0;}
	.subject_page_banner,
	.subject_page_banner_img{
		min-height:min(46vh, 380px);
		max-height:480px;
	}
	.subject_page_banner_img{
		object-position:70% center;
	}
	.subject_page_banner_shade{
		background:linear-gradient(
			90deg,
			rgba(247,245,241,0.96) 0%,
			rgba(247,245,241,0.92) 48%,
			rgba(247,245,241,0.55) 72%,
			rgba(247,245,241,0.12) 100%
		);
	}
	.subject_page_banner .subject_head{
		padding-top:48px;
		padding-bottom:48px;
		padding-left:3%;
		padding-right:3%;
		box-sizing:border-box;
	}
	.subject_page_banner .heading{
		max-width:100%;
		text-align:left;
	}
	.subject_page_banner .heading h3,
	.subject_page_banner .heading h3 .blue,
	.subject_page_banner .heading .text{
		text-align:left;
	}
	.subject_page_banner .heading h3{
		font-size:clamp(30px, 8vw, 40px);
		font-weight:800;
		color:#2A2826;
	}
	.subject_page_banner .heading h3 .blue{
		margin-top:10px;
		font-size:15px;
		font-weight:700;
		letter-spacing:0.14em;
		color:#4A6F98;
	}
	.subject_page_banner .heading .text{
		max-width:100%;
		margin-top:20px;
		font-size:16px;
		line-height:1.75;
		font-weight:500;
		color:#3A3733;
	}
	.subject_page_banner .heading .text .text_keep{
		white-space:normal;
	}
	.subject_page .heading{
		margin-bottom:20px;
		text-align:left;
	}
	.subject_page .heading h3{
		font-size:24px;
		letter-spacing:0.1em;
		text-align:left;
	}
	.subject_page .heading h3 .blue{
		margin-top:6px;
		font-size:14px;
		letter-spacing:0.24em;
		text-align:left;
	}
	.subject_page .heading .text{
		margin-top:10px;
		font-size:15px;
		line-height:1.5;
		text-align:left;
	}

	.subject_nav{
		margin:0;
		padding:16px 0 0;
		border-bottom:1px solid #E8E6E2;
	}
	.subject_nav .subject_tabs.wrap{
		width:auto;
		padding-left:3%;
		padding-right:3%;
	}
	/* 모바일: 가로 스크롤 대신 2×4 그리드 — 문구 유지·한눈에 노출 */
	.subject_tabs{
		display:grid;
		grid-template-columns:repeat(2, minmax(0, 1fr));
		justify-content:stretch;
		flex-wrap:unset;
		overflow:visible;
		gap:0;
		padding:0;
		scrollbar-width:auto;
		-webkit-overflow-scrolling:auto;
	}
	.subject_tabs::-webkit-scrollbar{display:none;}
	.subject_tab{
		flex:unset;
		width:auto;
		max-width:none;
		padding:14px 10px 12px;
		min-height:0;
		height:auto;
		font-size:16px;
		line-height:1.35;
		letter-spacing:-0.03em;
		white-space:normal;
		border:0;
		border-bottom:2px solid transparent;
		border-radius:0;
		background:transparent;
	}
	.subject_tab .tab_full{display:none;}
	.subject_tab .tab_short{display:inline;}
	.subject_tab.is-active{
		border-bottom-color:var(--subject-tab-point, #5A7FA8);
	}

	.subject_hero,
	.subject_hero_img{
		min-height:min(52vh, 420px);
		max-height:520px;
	}
	.subject_hero.is-herb{
		aspect-ratio:16/7;
		max-height:300px;
	}
	.subject_hero.is-herb .subject_hero_img{
		object-position:center 24%;
	}
	.subject_hero_copy{padding:28px 0 32px;}
	.subject_hero_title{font-size:26px;}
	.subject_hero_lead{font-size:15px; margin-top:12px;}

	.subject_story_inner,
	.subject_story.is-reverse .subject_story_inner{
		grid-template-columns:1fr;
		min-height:0;
	}
	.subject_story.is-reverse .subject_story_media,
	.subject_story.is-reverse .subject_story_copy{order:initial;}
	.subject_story_media,
	.subject_story_media img,
	.subject_story_ph{min-height:260px;}
	.subject_story_copy{padding:28px 3% 40px;}
	.subject_story_title{font-size:22px; margin-bottom:12px;}
	.subject_story_text{font-size:16px; line-height:1.75;}

	.subject_body_band{padding:48px 0 72px;}
	.subject_body p{font-size:15px; line-height:1.75;}

	.subject_herb_intro{padding:36px 0 20px;}
	.subject_herb_title{font-size:26px;}
	.subject_herb_lead{font-size:18px;}
	.subject_herb_highlight{font-size:17px;}
	.subject_herb_keycopy{padding-bottom:36px;}
	.subject_herb_keycopy_text{font-size:17px;line-height:1.7;}
	.subject_herb_process_list{margin-top:28px;gap:16px;}
	.subject_herb_process_row_inner{
		grid-template-columns:1fr;
		min-height:0;
	}
	.subject_herb_process_row.is-reverse .subject_herb_process_media,
	.subject_herb_process_row.is-reverse .subject_herb_process_txt{order:initial;}
	.subject_herb_process_media,
	.subject_herb_process_ph{min-height:0;aspect-ratio:4 / 3;}
	.subject_herb_process_media img{min-height:0;}
	.subject_herb_process_txt{padding:28px 22px 32px;}
	.subject_herb_process_txt .disc_h3{font-size:20px;}
	.subject_herb_process_txt .disc_body{margin-top:14px;font-size:17px;}
	.subject_case_patient_line{margin-top:24px;font-size:18px;}
	.subject_case_patient_line strong{font-size:26px;}
	.subject_case_conclusion_plain{margin-top:28px;}

	.subject_ward_feature_inner{grid-template-columns:1fr;gap:32px;align-items:start;}
	.subject_ward_feature_media{display:block;min-height:0;}
	.subject_ward_feature_media img{height:auto;min-height:0;object-fit:cover;}
	.subject_ward_feature_title{font-size:28px;}
	.subject_ward_feature_text{font-size:19px;line-height:1.85;}
	.subject_ward_intro{padding:36px 0 36px;}
	.subject_ward_points_band{padding:52px 0 60px;}
	.subject_ward_feature.is-hero{padding:0 0 56px;}
	.subject_ward_intro .subject_ward_section_title{font-size:34px;}
	.subject_ward_intro .subject_ward_eyebrow{font-size:18px;margin-top:12px;}
	.subject_ward_section_desc{font-size:19px;}
	.subject_ward_point_title{font-size:19px;}
	.subject_ward_intensive_intro .subject_ward_eyebrow{font-size:22px;}
	.subject_ward_need_card_title{font-size:22px;}
	.subject_ward_need_card_desc{font-size:17px;}
	.subject_ward_industrial_title{font-size:30px;}
	.subject_ward_industrial_quote_text{font-size:19px;}
	.subject_ward_points{gap:28px;}
	.subject_ward_points > *,
	.subject_ward_points:has(> :nth-child(2):last-child) > *{
		flex:0 1 100%;
		width:100%;
		max-width:100%;
	}
	.subject_ward_intensive{padding-top:52px;}
	.subject_ward_intensive_intro{padding-bottom:36px;}
	.subject_ward_need_panel{padding:44px 0 64px;}
	.subject_ward_need_cards{grid-template-columns:1fr;gap:20px;}
	.subject_ward_need_card{min-height:0;padding:28px 20px 24px;border-radius:22px;}
	.subject_ward_industrial{padding:60px 0 72px;}
	.subject_ward_industrial_inner{grid-template-columns:1fr;min-height:0;}
	.subject_ward_industrial_quote{padding:28px 20px;}
	.subject_ward_industrial_quote .quote_mark{font-size:44px;}
	.subject_ward_industrial_copy{padding:28px 24px 36px;}

	.disc_hero{padding:44px 0 36px;}
	.disc_hero.is-stack{padding:44px 0 36px;}
	.disc_hero_stack_copy{margin-bottom:28px;}
	.disc_hero_stack_media{border-radius:14px;aspect-ratio:4 / 3;}
	.disc_hero_stack_body{margin-top:24px;}
	.disc_hero_inner,
	.disc_consult_inner{grid-template-columns:1fr;gap:24px;}
	.disc_h1{font-size:32px;font-weight:400;}
	.disc_h1.is-left,
	.disc_h2.is-left,
	.disc_lead.is-left{text-align:center;}
	.disc_h2{font-size:28px;margin-bottom:14px;font-weight:400;}
	.disc_h3{font-size:20px;}
	.disc_lead{font-size:20px;}
	.disc_hero_stack_copy .disc_lead{font-size:20px;}
	.disc_body{font-size:18px;line-height:1.8;}
	.disc_hero_stack_body .disc_body{font-size:18px;}
	.disc_sec{padding:64px 0;}
	.disc_card_row.is-2 > .disc_card,
	.disc_card_row.is-2 > li,
	.disc_card_row.is-3 > .disc_card,
	.disc_card_row.is-3 > li,
	.disc_card_row.is-4 > .disc_card,
	.disc_card_row.is-4 > li,
	.disc_flow_item,
	.disc_flow:has(> :nth-child(3):last-child) .disc_flow_item,
	.disc_flow:has(> :nth-child(2):last-child) .disc_flow_item,
	.disc_flow:has(> :nth-child(1):last-child) .disc_flow_item{
		flex:0 1 100%;
		width:100%;
		max-width:100%;
	}
	.disc_card_row.is-2,
	.disc_card_row.is-3,
	.disc_card_row.is-4,
	.disc_flow,
	.disc_treat_list{gap:14px;margin-top:28px;}
	.disc_treat_list{display:grid;grid-template-columns:1fr;}
	.disc_check{grid-template-columns:1fr;}
	.disc_card .disc_body,
	.disc_flow_item .disc_body,
	.disc_treat_item .disc_body{font-size:18px;}
	.disc_rx_table th,
	.disc_rx_table td{font-size:14px;padding:10px 6px;}
}

@media all and (max-width:480px){
	.fullpage:has(.subject_page){padding-top:210px !important;}
	.fullpage:has(.subject_page.has-banner){padding-top:var(--cd-header-h, 191px) !important;}
	.subject_page{padding-top:16px;}
	.subject_page.has-banner{padding-top:0;}
	.subject_page_banner,
	.subject_page_banner_img{
		min-height:min(42vh, 320px);
		max-height:400px;
	}
	.subject_page_banner .subject_head{padding-top:40px;padding-bottom:40px;padding-left:5%;padding-right:5%;}
	.subject_page_banner .heading h3{font-size:28px;letter-spacing:-0.03em;font-weight:800;color:#1F1E1C;}
	.subject_page_banner .heading h3 .blue{font-size:14px;letter-spacing:0.12em;font-weight:700;color:#3F628A;}
	.subject_page_banner .heading .text{font-size:15px;margin-top:16px;line-height:1.7;font-weight:500;color:#2A2826;}
	.subject_page .heading h3{font-size:22px;}
	.subject_page .heading .text{font-size:14px;}
	.subject_tab{font-size:15px; padding:13px 8px 11px; min-height:0; height:auto;}
	.subject_hero_title{font-size:24px;}
	.subject_story_media,
	.subject_story_media img,
	.subject_story_ph{min-height:220px;}

	.subject_herb_process_media,
	.subject_herb_process_media img,
	.subject_herb_process_ph{min-height:0;}
	.subject_case_diti{padding:10px;}
	.subject_case_patient_name strong{font-size:22px;}
}

@supports not selector(:has(*)){
	@media all and (max-width:1000px){
		.subject_page{padding-top:210px;}
		.subject_page.has-banner{padding-top:0;}
	}
}

/* ── 진료과목 FAQ 아코디언 (탭 공통, 샘플) ── */
.subject_faq{
	--disc-ink:#2a2826;
	--disc-mute:#7a7670;
	--disc-line:#e5e2dc;
	--disc-bg:#f7f5f1;
	--disc-accent:#4d4a45;
	margin-top:8px;
	padding-top:72px;
	padding-bottom:88px;
}
.subject_faq .disc_kicker{text-align:center;}
.subject_faq .disc_lead{margin-bottom:36px;}
.subject_faq_note{
	display:inline-block;
	margin-top:8px;
	font-size:0.88em;
	color:var(--disc-mute);
}
.subject_faq_list{
	max-width:860px;
	margin:0 auto;
}
.subject_faq_item{
	border-top:1px solid var(--disc-line);
	background:transparent;
	overflow-anchor:none;
}
.subject_faq_item:last-child{border-bottom:1px solid var(--disc-line);}
.subject_faq_q{
	appearance:none;
	-webkit-appearance:none;
	width:100%;
	margin:0;
	border:0;
	background:transparent;
	text-align:left;
	font:inherit;
	list-style:none;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:16px;
	padding:22px 4px;
	cursor:pointer;
	font-size:18px;
	font-weight:700;
	line-height:1.45;
	letter-spacing:-0.02em;
	color:var(--disc-ink);
	word-break:keep-all;
	-webkit-tap-highlight-color:transparent;
	user-select:none;
}
.subject_faq_q:focus{outline:none;}
.subject_faq_q:focus-visible{outline:2px solid var(--disc-accent);outline-offset:2px;}
.subject_faq_q_label{
	display:flex;
	align-items:flex-start;
	gap:12px;
	min-width:0;
}
.subject_faq_badge{
	flex:0 0 auto;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:1.2em;
	font-size:17px;
	font-weight:800;
	color:var(--disc-accent);
	line-height:1.45;
}
.subject_faq_badge.is-a{margin-top:1px;}
.subject_faq_icon{
	position:relative;
	flex:0 0 auto;
	width:18px;
	height:18px;
	margin-top:2px;
}
.subject_faq_icon::before,
.subject_faq_icon::after{
	content:'';
	position:absolute;
	left:50%;
	top:50%;
	width:14px;
	height:2px;
	background:var(--disc-mute);
	transform:translate(-50%, -50%);
	transition:transform 0.2s ease, background 0.2s ease;
}
.subject_faq_icon::after{transform:translate(-50%, -50%) rotate(90deg);}
.subject_faq_item.is-open .subject_faq_icon::after{transform:translate(-50%, -50%) rotate(0deg);}
.subject_faq_item.is-open .subject_faq_icon::before,
.subject_faq_item.is-open .subject_faq_icon::after{background:var(--disc-accent);}
.subject_faq_a{
	padding:0 4px 24px 4px;
}
.subject_faq_a[hidden]{display:none !important;}
.subject_faq_a p{
	display:flex;
	align-items:flex-start;
	gap:12px;
	margin:0;
	padding:4px 0 0;
	font-size:16px;
	line-height:1.75;
	font-weight:400;
	color:#444;
	word-break:keep-all;
}

@media all and (max-width:768px){
	.subject_faq{padding-top:56px;padding-bottom:64px;margin-top:8px;}
	.subject_faq_q{font-size:16px;padding:18px 2px;}
	.subject_faq_a p{font-size:15px;line-height:1.7;}
}

/* ========== 진료과목 리움톤 공통: 타이포·여백·커튼·교차 과정 ========== */
.clinic_page.is-rium-tone{
	--pharma-title: clamp(40px, 5vw, 56px);
	--pharma-h2: clamp(36px, 4.2vw, 48px);
	/* 제목(작음) ↔ 원장원고 본문(큼) 사이: 핵심 한 줄 */
	--pharma-lead: clamp(26px, 3vw, 32px);
	--pharma-body: clamp(18px, 1.8vw, 20px);
}
.clinic_page.is-rium-tone .disc_hero.is-stack{
	padding:100px 0 80px;
}
.clinic_page.is-rium-tone .disc_hero_stack_copy{
	margin-bottom:56px;
}
.clinic_page.is-rium-tone .disc_hero_stack_copy .disc_h1,
.clinic_page.is-rium-tone .disc_h1{
	font-family:'KoPubWorldBatang','Pretendard',serif;
	font-size:var(--pharma-title);
	line-height:1.3;
	font-weight:400;
	letter-spacing:-0.025em;
}
.clinic_page.is-rium-tone .disc_h1::before,
.clinic_page.is-rium-tone .disc_h2::before{
	width:48px;
	height:6px;
	margin-bottom:22px;
	border-radius:0;
	background:var(--disc-accent);
}
.clinic_page.is-rium-tone .disc_hero_stack_copy .disc_lead,
.clinic_page.is-rium-tone .disc_lead{
	margin-top:24px;
	max-width:28em;
	margin-left:auto;
	margin-right:auto;
	font-family:'Pretendard', sans-serif;
	font-size:var(--pharma-lead);
	line-height:1.55;
	font-weight:500;
	letter-spacing:-0.015em;
	color:var(--disc-mute, #7a7670);
	word-break:keep-all;
}

/* 질환·디스크 히어로 — 보조타이틀 포인트 블루(1인실과 동일) */
.subject_panel.is-disc-layout .disc_hero_stack_copy .disc_lead,
.subject_panel.is-disc-layout .clinic_page.is-rium-tone .disc_lead,
.subject_panel.is-disease-layout .disc_hero_stack_copy .disc_lead,
.subject_panel.is-disease-layout .clinic_page.is-rium-tone .disc_lead,
.subject_panel.is-ward-layout .disc_hero_stack_copy .disc_lead,
.subject_panel.is-ward-layout .clinic_page.is-rium-tone .disc_lead{
	color:#5A7FA8;
	font-weight:600;
}
.clinic_page.is-rium-tone .disc_hero_stack_body{
	margin-top:56px;
}
.clinic_page.is-rium-tone .disc_hero_stack_body .disc_body,
.clinic_page.is-rium-tone .disc_body{
	font-size:var(--pharma-body);
	line-height:1.85;
}
.clinic_page.is-rium-tone .disc_h2{
	font-family:'KoPubWorldBatang','Pretendard',serif;
	font-size:var(--pharma-h2);
	margin-bottom:24px;
	font-weight:400;
	letter-spacing:-0.02em;
}
.clinic_page.is-rium-tone .disc_h3{
	font-size:clamp(22px, 2.2vw, 28px);
	line-height:1.35;
}
.clinic_page.is-rium-tone .disc_sec{
	padding:120px 0;
}
.clinic_page.is-rium-tone .disc_card_row{
	margin-top:56px;
	gap:28px;
}
.clinic_page.is-rium-tone .disc_card{
	padding:40px 28px;
	border-width:2px;
	border-radius:16px;
	transition:border-color 0.35s ease;
}
.clinic_page.is-rium-tone .disc_card:hover{
	border-color:var(--disc-accent);
}
.clinic_page.is-rium-tone .disc_card .disc_body{
	margin-top:16px;
	font-size:18px;
	line-height:1.75;
}
.clinic_page.is-rium-tone .disc_card.is-icon-head .disc_icon{
	width:52px;
	height:52px;
	flex-basis:52px;
}
.clinic_page.is-rium-tone .disc_card.is-icon-head .disc_icon img{
	width:32px;
	height:32px;
}
.clinic_page.is-rium-tone .disc_consult_inner{
	gap:56px;
}
.clinic_page.is-rium-tone .disc_check.is-list li{
	font-size:18px;
	padding:16px 18px;
}
.clinic_page.is-rium-tone .disc_types_media{
	margin-top:48px;
}
.clinic_page.is-rium-tone .disc_footnote{
	margin-top:28px;
	font-size:17px;
}

/* 히어로 커튼 — 스크롤 비율로 width 조절 (JS) */
.clinic_page.is-rium-tone .disc_hero_stack_media.has-curtain{
	position:relative;
	overflow:hidden;
	border-radius:0;
}
.clinic_page.is-rium-tone .disc_curtain{
	position:absolute;
	top:0;
	height:100%;
	width:30%;
	background:#fff;
	z-index:2;
	pointer-events:none;
	will-change:width;
}
.clinic_page.is-rium-tone .disc_curtain.is-left{left:0;}
.clinic_page.is-rium-tone .disc_curtain.is-right{right:0;}
@media (prefers-reduced-motion: reduce){
	.clinic_page.is-rium-tone .disc_curtain{display:none;}
}

/* 진료과정: 텍스트 좌 · 사진 우 (짧은 카피 → 이미지 비중 확대) */
.clinic_page.is-rium-tone .clinic_step_list{
	list-style:none;
	margin:72px 0 0;
	padding:0;
}
.clinic_page.is-rium-tone .clinic_step_item{
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;
	align-items:center;
	gap:40px 48px;
	width:100%;
	box-sizing:border-box;
}
.clinic_page.is-rium-tone .clinic_step_item + .clinic_step_item{
	margin-top:120px;
}
.clinic_page.is-rium-tone .clinic_step_copy{
	flex:0 1 36%;
	min-width:0;
	width:36%;
	max-width:420px;
	box-sizing:border-box;
	text-align:left;
}
.clinic_page.is-rium-tone .clinic_step_media{
	flex:1 1 64%;
	min-width:0;
	width:64%;
	max-width:none;
	box-sizing:border-box;
	position:relative;
	aspect-ratio:16 / 10;
	overflow:hidden;
	background:var(--disc-bg);
	border-radius:12px;
}
.clinic_page.is-rium-tone .clinic_step_badge{
	display:inline-block;
	padding:12px 28px;
	border:2px solid var(--disc-accent);
	border-radius:6px;
	color:var(--disc-accent);
	font-size:18px;
	font-weight:800;
	line-height:1;
}
.clinic_page.is-rium-tone .clinic_step_copy .disc_h3{
	margin:20px 0 0;
	font-size:clamp(28px, 3vw, 36px);
	font-weight:700;
	text-align:left;
}
.clinic_page.is-rium-tone .clinic_step_copy .disc_body{
	margin-top:28px;
	font-size:var(--pharma-body);
	line-height:1.7;
	text-align:left;
}
.clinic_page.is-rium-tone .clinic_step_media img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
}

@media all and (max-width:1023px){
	.clinic_page.is-rium-tone .disc_sec{padding:88px 0;}
	.clinic_page.is-rium-tone .clinic_step_item{
		flex-direction:column;
		align-items:stretch;
		gap:28px;
	}
	.clinic_page.is-rium-tone .clinic_step_media,
	.clinic_page.is-rium-tone .clinic_step_copy{
		width:100%;
		max-width:none;
		flex:1 1 auto;
	}
	.clinic_page.is-rium-tone .clinic_step_item + .clinic_step_item{margin-top:72px;}
}
@media all and (max-width:768px){
	.clinic_page.is-rium-tone .disc_hero.is-stack{padding:64px 0 48px;}
	.clinic_page.is-rium-tone{
		--pharma-title: clamp(32px, 8vw, 40px);
		--pharma-h2: clamp(28px, 7vw, 36px);
		--pharma-lead: 22px;
		--pharma-body: 17px;
	}
	.clinic_page.is-rium-tone .disc_sec{padding:64px 0;}
	.clinic_page.is-rium-tone .clinic_step_copy .disc_h3{font-size:24px;}
}

/* ── 프로그램형(보약·건강보험 한약): 구간 정리 ── */
.subject_panel.is-program-layout .clinic_page.is-program-page,
.subject_panel.is-program-layout .clinic_page.is-herb{
	--program-sec-gap: 96px;
}
.subject_panel.is-program-layout .cd-program-highlight{
	padding-top: var(--program-sec-gap, 96px);
	padding-bottom: var(--program-sec-gap, 96px);
}
.subject_panel.is-program-layout .cd-program-highlight .disc_card_row.is-3{
	margin-top: 40px;
}
.subject_panel.is-program-layout .cd-program-cta{
	display: block;
}
.subject_panel.is-program-layout .cd-program-cta .cd-disc-detail__sec--cta{
	padding-top: 72px;
	padding-bottom: 72px;
}
.subject_panel.is-program-layout .subject_faq{
	margin-top: 0;
}
@media all and (max-width:768px){
	.subject_panel.is-program-layout .clinic_page.is-program-page,
	.subject_panel.is-program-layout .clinic_page.is-herb{
		--program-sec-gap: 64px;
	}
	.subject_panel.is-program-layout .cd-program-cta .cd-disc-detail__sec--cta{
		padding-top: 48px;
		padding-bottom: 48px;
	}
}
