@import url('./fonts.css');

/* SAEKIM / Surgical stories — shared site identity, expansive editorial motion. */
body.sk-surgery-page {
	background: #fff
}

body.sk-surgery-page #container,
body.sk-surgery-page #main {
	overflow: visible
}

body.sk-surgery-page #header {
	background: #ffffffeb;
	backdrop-filter: blur(20px);
	border-bottom: 1px solid #e9edf2
}

body.sk-surgery-page #header .ham>a>span {
	background: #172b49
}

body.sk-surgery-page #header,
body.sk-surgery-page #header * {
	font-family: 'Saekim Noto KR', 'Saekim Noto JP', sans-serif
}

.sk-surgery {
	--sk-blue: #094bad;
	--sk-ink: #172b49;
	--sk-muted: #667181;
	--sk-line: #dce3ed;
	--sk-tint: #f3f5f8;
	--sk-accent: #3b669e;
	--sk-ease: cubic-bezier(.2, .6, .35, 1);
	color: var(--sk-ink);
	padding: 110px 0 64px;
	background: #fff;
	isolation: isolate
}

.sk-surgery * {
	box-sizing: border-box;
	font-family: 'Saekim Noto KR', 'Saekim Noto JP', sans-serif;
	letter-spacing: -.035em;
	word-break: keep-all;
	overflow-wrap: anywhere
}

.sk-surgery :is(h1, h2, h3, h4, p, figure, dl, dd, ol, ul) {
	margin: 0
}

.sk-surgery a {
	color: inherit;
	text-decoration: none
}

.sk-surgery button {
	font: inherit;
	color: inherit;
	cursor: pointer
}

.sk-surgery :is(a, button):focus-visible {
	outline: 3px solid #4c84c9;
	outline-offset: 4px
}

.sk-surgery strong,
.sk-surgery b {
	font-weight: 750;
	color: var(--sk-ink)
}

.sk-surgery em {
	font-style: italic;
	color: var(--sk-blue)
}

.sk-surgery u {
	text-decoration-thickness: 2px;
	text-underline-offset: 5px;
	text-decoration-color: #86a8d3
}

.sk-shell {
	width: min(1720px, calc(100% - 96px));
	margin: auto
}

.sk-icon {
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	vertical-align: middle
}

.sk-breadcrumb {
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 11px;
	color: var(--sk-muted);
	margin: 18px 0
}

.sk-category-nav {
	display: flex;
	gap: 6px;
	padding-bottom: 14px;
	border-bottom: 1px solid var(--sk-line)
}

.sk-category-nav a {
	display: flex;
	align-items: center;
	gap: 9px;
	min-height: 42px;
	padding: 9px 22px;
	border-radius: 24px;
	font-size: 14px;
	font-weight: 600;
	transition: background var(--sk-hover-duration), color var(--sk-hover-duration), transform var(--sk-hover-duration) var(--sk-ease)
}

.sk-category-nav a[aria-current] {
	background: var(--sk-ink);
	color: #fff
}

.sk-category-nav a:hover {
	background: #eaf0f7;
	transform: translateY(-2px)
}

.sk-category-nav a[aria-current]:hover {
	background: var(--sk-blue)
}

.sk-category-nav .sk-icon {
	width: 19px;
	height: 19px;
	flex-basis: 19px
}

.sk-page-heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
	padding: 32px 0 28px
}

.sk-eyebrow {
	display: block;
	font-size: 11px !important;
	line-height: 1.4;
	font-weight: 650;
	letter-spacing: .13em !important;
	color: var(--sk-accent)
}

.sk-page-heading h1 {
	display: flex;
	align-items: center;
	gap: 18px;
	font-size: clamp(42px, 4.5vw, 72px);
	line-height: 1.12;
	font-weight: 750;
	letter-spacing: -.065em;
	margin: 10px 0 13px
}

.sk-page-heading h1>span {
	display: grid;
	place-items: center;
	background: var(--sk-tint);
	width: 54px;
	height: 54px;
	border-radius: 50%;
	color: var(--sk-accent)
}

.sk-page-heading p {
	font-size: 16px;
	line-height: 1.55;
	color: var(--sk-muted)
}

.sk-heading-side {
	max-width: 390px;
	text-align: right
}

.sk-heading-side .sk-script {
	display: block;
	font: 38px/1.2 'La Belle Aurore', cursive !important;
	letter-spacing: 0;
	color: var(--sk-accent);
	margin-bottom: 9px
}

.sk-selector-label {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 11px;
	color: var(--sk-muted);
	margin-bottom: 12px
}

.sk-selector-label>span:first-child {
	display: flex;
	gap: 8px;
	align-items: center;
	font-size: 13px;
	font-weight: 650;
	color: var(--sk-ink)
}

.sk-selector-label .sk-icon {
	width: 16px;
	height: 16px;
	flex-basis: 16px
}

.sk-primary-tabs {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 8px;
	padding: 9px;
	background: var(--sk-tint);
	border-radius: 18px;
	margin-bottom: 22px
}

.sk-theme-nose .sk-primary-tabs,
.sk-theme-young .sk-primary-tabs {
	grid-template-columns: repeat(3, minmax(0, 1fr))
}

.sk-theme-contouring .sk-primary-tabs {
	grid-template-columns: repeat(4, minmax(0, 1fr))
}

.sk-tab {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 17px;
	height: 58px;
	line-height: 1.35;
	font-size: 15px;
	font-weight: 600;
	border: 1px solid transparent;
	border-radius: 11px;
	background: transparent;
	transition: background var(--sk-hover-duration), color var(--sk-hover-duration), box-shadow var(--sk-hover-duration) var(--sk-ease), transform var(--sk-hover-duration) var(--sk-ease), border-color var(--sk-hover-duration)
}

.sk-tab-index {
	font: italic 24px/1 'Cormorant Garamond', Georgia, serif !important;
	color: #8b9ab0
}

.sk-tab .sk-icon {
	width: 16px;
	height: 16px;
	flex-basis: 16px;
	margin-left: auto;
	opacity: .35;
	transition: transform var(--sk-hover-duration) var(--sk-ease), opacity var(--sk-hover-duration)
}

.sk-tab:hover {
	background: #fff;
	transform: translateY(-2px)
}

.sk-tab:hover .sk-icon {
	transform: translateX(3px);
	opacity: 1
}

.sk-tab[aria-selected=true] {
	background: var(--sk-blue);
	color: #fff;
	box-shadow: 0 5px 14px #094bad22
}

.sk-tab[aria-selected=true] .sk-tab-index {
	color: #c6d7ef
}

.sk-tab[aria-selected=true] .sk-icon {
	opacity: 1
}

.sk-tab:active {
	transform: scale(.98)
}

.sk-tabpanel[hidden] {
	display: none !important
}

.sk-tabpanel:focus {
	outline: none
}

.sk-panels {
	position: relative
}

.sk-tabpanel {
	transform-origin: center top;
	min-width: 0
}

.sk-procedure-hero {
	position: relative;
	isolation: isolate;
	display: flex;
	align-items: center;
	min-height: 430px;
	border-radius: 24px;
	overflow: hidden;
	background: #edf1f6;
	margin-bottom: 16px
}

.sk-hero-photo {
	position: absolute;
	inset: 0;
	z-index: -2
}

.sk-hero-photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center
}

.sk-procedure-hero::after {
	content: '';
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(90deg, #f0f3f7f5 0%, #f0f3f7e0 30%, #f0f3f755 58%, transparent 75%);
	pointer-events: none
}

.sk-hero-copy {
	width: 58%;
	padding: 40px 5%;
	position: relative
}

.sk-hero-copy h2 {
	font-size: clamp(36px, 3.8vw, 62px);
	line-height: 1.2;
	font-weight: 750;
	letter-spacing: -.065em;
	margin: 11px 0 17px
}

.sk-fine-rule {
	display: block;
	width: 42px;
	height: 3px;
	background: var(--sk-blue);
	margin-bottom: 17px
}

.sk-hero-copy p {
	font-size: 17px;
	line-height: 1.6;
	max-width: 570px;
	color: #45566d
}

.sk-hero-copy .sk-text-link {
	margin-top: 23px
}

.sk-text-link {
	display: inline-flex;
	align-items: center;
	gap: 15px;
	font-size: 14px;
	font-weight: 650;
	padding-bottom: 7px;
	border-bottom: 1px solid #819abb;
	transition: gap var(--sk-hover-duration) var(--sk-ease), color var(--sk-hover-duration)
}

.sk-text-link:hover {
	gap: 24px;
	color: var(--sk-blue)
}

.sk-text-link .sk-icon {
	width: 17px;
	height: 17px;
	flex-basis: 17px
}

.sk-hero-signature {
	position: absolute;
	right: 36px;
	bottom: 24px;
	font: 44px/1 'La Belle Aurore', cursive !important;
	color: #ffffffcc;
	pointer-events: none;
	text-shadow: 0 2px 12px #172b4933
}

.sk-section {
	padding: 30px 0 32px;
	border-bottom: 1px solid #e9edf2;
	scroll-margin-top: 115px
}

.sk-section-head {
	display: flex;
	align-items: center;
	gap: 20px;
	margin-bottom: 22px
}

.sk-section-head h3 {
	font-size: clamp(26px, 2.5vw, 40px);
	font-weight: 720;
	letter-spacing: -.055em;
	line-height: 1.25;
	margin-top: 6px
}

.sk-section-head>.sk-icon {
	margin-left: auto;
	color: var(--sk-accent);
	width: 28px;
	height: 28px;
	flex-basis: 28px
}

.sk-section-no {
	font: italic 55px/.9 'Cormorant Garamond', Georgia, serif !important;
	transform: rotate(-9deg);
	color: var(--sk-accent);
	border-bottom: 1px solid #93aac9;
	padding: 0 6px 10px;
	min-width: 62px;
	text-align: center;
	align-self: flex-start
}

.sk-section>p,
.sk-copy-grid p {
	font-size: 17px;
	line-height: 1.65;
	color: var(--sk-muted);
	margin-bottom: 12px
}

.sk-section>p {
	max-width: 1100px
}

.sk-section>p:only-of-type {
	margin-bottom: 0
}

.sk-gallery {
	display: grid;
	gap: 18px;
	margin-top: 20px;
	align-items: start
}

.sk-cols-1 {
	grid-template-columns: 1fr;
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto
}

.sk-cols-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr))
}

.sk-cols-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr))
}

.sk-figure {
	min-width: 0;
	overflow: hidden;
	border-radius: 16px;
	background: var(--sk-tint)
}

.sk-zoom {
	display: block;
	position: relative;
	border: 0;
	padding: 0;
	width: 100%;
	background: transparent;
	cursor: zoom-in !important;
	overflow: hidden;
	border-radius: inherit
}

.sk-zoom img {
	width: 100%;
	height: auto;
	max-height: 680px;
	object-fit: contain;
	display: block;
	transition: transform var(--sk-hover-duration) var(--sk-ease), filter var(--sk-hover-duration)
}

.sk-zoom:hover img {
	transform: scale(1.035)
}

.sk-zoom>span {
	position: absolute;
	right: 12px;
	bottom: 12px;
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: #ffffffdd;
	backdrop-filter: blur(8px);
	opacity: .7;
	transition: opacity var(--sk-hover-duration), transform var(--sk-hover-duration) var(--sk-ease)
}

.sk-zoom:hover>span {
	opacity: 1;
	transform: scale(1.1)
}

.sk-zoom>span .sk-icon {
	width: 17px;
	height: 17px
}

.sk-figure figcaption {
	font-size: 13px;
	text-align: center;
	padding: 10px 12px;
	color: var(--sk-muted);
	line-height: 1.5
}

.sk-facts {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 0;
	background: var(--sk-tint);
	border-radius: 20px;
	padding: 23px 8px;
	margin-bottom: 10px !important
}
.sk-facts.sk-facts-4{
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}
.sk-facts>div {
	display: grid;
	justify-items: center;
	gap: 6px;
	text-align: center;
	border-right: 1px solid var(--sk-line);
	padding: 0 12px
}

.sk-facts>div:last-child {
	border: 0
}

.sk-facts .sk-icon {
	width: 28px;
	height: 28px;
	color: var(--sk-accent);
	margin-bottom: 4px
}

.sk-facts dt {
	font-size: 13px;
	font-weight: 450;
	color: var(--sk-muted)
}

.sk-facts dd {
	font-size: 22px;
	font-weight: 750;
	line-height: 1.4
}

.sk-disclaimer {
	font-size: 12px !important;
	color: #7a8696 !important;
	line-height: 1.5 !important
}

.sk-candidates {
	display: grid;
	grid-template-columns: 220px 1fr;
	gap: 20px;
	padding-top: 22px
}

.sk-candidates h4 {
	font-size: 18px;
	display: flex;
	gap: 9px;
	align-items: flex-start;
	line-height: 1.45;
	font-weight: 700
}

.sk-candidates h4 .sk-icon {
	color: var(--sk-accent);
	width: 20px;
	height: 20px;
	flex-basis: 20px
}

.sk-candidates ul {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px 24px;
	list-style: none;
	padding: 0
}

.sk-candidates li {
	font-size: 15px;
	line-height: 1.55;
	padding-left: 18px;
	position: relative;
	color: var(--sk-muted)
}

.sk-candidates li::before {
	content: '✓';
	position: absolute;
	left: 0;
	top: 0;
	color: var(--sk-accent);
	font-weight: 700
}

.sk-point-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 42px;
	align-items: center
}

.sk-point-layout>.sk-point-list:only-child {
	grid-column: 1/-1;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px
}

.sk-point-layout>.sk-figure {
	width: 100%
}

.sk-point-list article {
	display: flex;
	gap: 18px;
	border-bottom: 1px solid var(--sk-line);
	padding: 19px 0
}

.sk-point-list article:first-child {
	padding-top: 0
}

.sk-point-list article:last-child {
	border-bottom: 0
}

.sk-point-list h4 {
	font-size: 23px;
	font-weight: 720;
	line-height: 1.35;
	margin: 5px 0 8px
}

.sk-point-list p {
	font-size: 16px;
	line-height: 1.6;
	color: var(--sk-muted)
}

.sk-mini-icon {
	display: grid;
	place-items: center;
	background: #eaf0f8;
	width: 46px;
	height: 46px;
	border-radius: 14px;
	flex: 0 0 46px;
	color: var(--sk-accent)
}

.sk-mini-icon .sk-icon {
	width: 24px;
	height: 24px
}

.sk-steps {
	list-style: none;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
	gap: 16px;
	margin-top: 20px !important
}

.sk-steps li {
	min-width: 0;
	border-radius: 18px;
	padding: 18px;
	background: var(--sk-tint)
}

.sk-step-number {
	display: block;
	font: italic 23px/1 'Cormorant Garamond', Georgia, serif !important;
	color: var(--sk-accent);
	margin-bottom: 14px
}

.sk-steps p {
	font-size: 15px;
	line-height: 1.55;
	margin-top: 14px;
	color: #4a5b70
}

.sk-method-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 24px 0 0;
	padding: 6px;
	background: #eaf0f7;
	border-radius: 16px
}

.sk-method-tabs .sk-tab {
	flex: 1 1 140px;
	justify-content: center;
	height: 55px;
	font-size: 15px;
	text-align: center
}

.sk-method-tabs .sk-tab-index {
	display: none
}

.sk-nested-tabs>.sk-panels {
	padding: 0 26px;
	background: #fafbfc;
	border-radius: 0 0 20px 20px
}

.sk-nested-tabs .sk-section:last-child {
	border-bottom: 0
}

.sk-copy-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
	gap: 18px
}

.sk-copy-grid article {
	border-radius: 20px;
	padding: 26px;
	background: var(--sk-tint);
	min-width: 0
}

.sk-card-rule {
	display: block;
	width: 24px;
	height: 3px;
	background: var(--sk-accent);
	margin-bottom: 16px
}

.sk-copy-grid h4 {
	font-size: 23px;
	font-weight: 720;
	line-height: 1.35;
	margin-bottom: 12px
}

.sk-copy-grid p {
	font-size: 14px;
	line-height: 1.5;
	margin-bottom: 8px
}

.sk-copy-grid p:last-child {
	margin-bottom: 0
}

.sk-note-line {
	display: flex;
	align-items: flex-start;
	gap: 8px
}

.sk-note-line .sk-icon {
	color: var(--sk-accent);
	width: 18px;
	height: 18px;
	flex-basis: 18px;
	margin-top: 3px
}

.sk-vs {
	display: inline-block;
	font: italic 30px 'Cormorant Garamond', Georgia, serif !important;
	color: var(--sk-accent);
	margin: 10px 0
}

.sk-table-wrap {
	overflow: auto;
	border: 1px solid var(--sk-line);
	border-radius: 18px;
	overscroll-behavior-x: contain
}

.sk-table-wrap table {
	border-collapse: collapse;
	width: 100%;
	font-size: 15px;
	line-height: 1.6;
	table-layout: fixed
}

.sk-table-wrap :is(th, td) {
	padding: 18px 22px;
	text-align: left;
	border-bottom: 1px solid var(--sk-line)
}

.sk-table-wrap thead {
	background: var(--sk-ink);
	color: #fff
}

.sk-table-wrap tbody th {
	font-weight: 650;
	background: var(--sk-tint);
	width: 18%
}

.sk-table-wrap thead th:first-child {
	width: 18%
}

.sk-table-wrap td {
	width: auto;
	color: var(--sk-muted)
}

.sk-table-wrap tr:last-child :is(th, td) {
	border-bottom: 0
}

.sk-table-wide table {
	min-width: 650px
}

.sk-case-grid,
.sk-material-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px
}

.sk-case-grid article,
.sk-material-grid article {
	border-radius: 20px;
	background: var(--sk-tint);
	overflow: hidden
}

.sk-case-grid article {
	padding: 22px
}

.sk-case-grid h4,
.sk-material-grid h4 {
	font-size: 23px;
	font-weight: 720;
	line-height: 1.35;
	margin: 15px 0 10px
}

.sk-case-grid p,
.sk-material-grid p {
	font-size: 16px;
	line-height: 1.6;
	color: var(--sk-muted)
}

.sk-material-grid article>div {
	padding: 24px
}

.sk-material-grid .sk-figure {
	border-radius: 0
}

.sk-material-grid .sk-figure img {
	max-height: 280px;
	object-fit: cover
}

/* Category details retain a common family, with different silhouettes and compositions. */
.sk-theme-eye .sk-point-layout>.sk-figure {
	border-radius: 20px 70px 20px 20px
}

.sk-theme-nose .sk-material-grid article {
	background: #edf2f8
}

.sk-theme-young .sk-point-layout>.sk-figure {
	border-radius: 70px 20px 20px 20px
}

.sk-theme-young .sk-steps li {
	border-top: 3px solid #91a9ca
}

.sk-theme-contouring .sk-copy-grid article {
	border-top: 3px solid #94acce
}

.sk-ratio {
	padding: 38px 0
}

.sk-ratio-layout {
	display: grid;
	grid-template-columns: 1.1fr 1fr;
	align-items: center;
	gap: 44px;
	background: var(--sk-tint);
	padding: 32px;
	border-radius: 24px
}

.sk-ratio-layout>.sk-figure {
	background: #fff
}

.sk-ratio-copy h4 {
	font-size: clamp(27px, 2.4vw, 40px);
	line-height: 1.25;
	font-weight: 550;
	margin: 12px 0 20px
}

.sk-ratio-copy>p {
	font-size: 17px;
	line-height: 1.65;
	color: var(--sk-muted)
}

.sk-ratio-notes {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 22px;
	margin-top: 24px
}

.sk-ratio-notes article {
	border-top: 1px solid #bbcadd;
	padding-top: 16px
}

.sk-ratio-notes b {
	font-size: 17px
}

.sk-ratio-notes p {
	font-size: 15px;
	line-height: 1.6;
	color: var(--sk-muted);
	margin-top: 9px
}

/* Tactile editorial rails: native touch scroll + snap + progressive arrow controls. */
.sk-explore {
	padding: 48px 0 0
}

.sk-explore-heading {
	margin-bottom: 24px
}

.sk-explore-heading h2 {
	font-size: clamp(30px, 3.4vw, 52px);
	line-height: 1.17;
	letter-spacing: -.055em;
	font-weight: 750;
	margin-top: 10px
}

.sk-explore-heading h2>span {
	color: #7b8797
}

.sk-carousel {
	min-width: 0
}

.sk-rail {
	display: flex;
	gap: 22px;
	overflow-x: auto;
	overscroll-behavior-x: contain;
	scroll-snap-type: x mandatory;
	scroll-padding: 10px;
	scrollbar-width: none;
	margin: -10px;
	padding: 10px 10px 22px;
	-webkit-overflow-scrolling: touch
}

.sk-rail::-webkit-scrollbar {
	display: none
}

.sk-slide-card {
	display: block !important;
	position: relative;
	flex: 0 0 clamp(300px, 32vw, 490px);
	height: 475px;
	border-radius: 24px;
	overflow: hidden;
	scroll-snap-align: start;
	background: #edf1f6;
	isolation: isolate;
	box-shadow: 0 4px 16px #172b4908;
	transition: transform var(--sk-hover-duration) var(--sk-ease), box-shadow var(--sk-hover-duration) var(--sk-ease), background var(--sk-hover-duration)
}

.sk-slide-card:hover {
	transform: translateY(-6px) scale(1.008);
	box-shadow: 0 15px 32px #172b4918
}

.sk-slide-card:active {
	transform: scale(.99)
}

.sk-slide-copy {
	padding: 30px;
	position: relative;
	z-index: 2
}

.sk-slide-copy h4 {
	font-size: 30px;
	line-height: 1.25;
	font-weight: 750;
	margin: 10px 0 12px;
	letter-spacing: -.05em
}

.sk-slide-copy p {
	font-size: 15px;
	line-height: 1.6;
	color: #4e617a;
	max-width: 95%
}

.sk-slide-card>img {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 59%;
	object-fit: cover;
	object-position: center;
	transition: transform var(--sk-hover-duration) var(--sk-ease);
	z-index: -1
}

.sk-slide-card::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(#edf1f6 30%, #edf1f6df 45%, transparent 65%);
	z-index: 0;
	pointer-events: none
}

.sk-slide-card:hover>img {
	transform: scale(1.055)
}

.sk-card-open {
	position: absolute;
	right: 22px;
	bottom: 22px;
	z-index: 2;
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #fffdfd;
	color: var(--sk-blue);
	font-size: 23px;
	box-shadow: 0 2px 12px #172b4912;
	transition: background var(--sk-hover-duration), color var(--sk-hover-duration), transform var(--sk-hover-duration) var(--sk-ease)
}

.sk-slide-card:hover .sk-card-open {
	background: var(--sk-blue);
	color: #fff;
	transform: rotate(45deg)
}

.sk-rail-controls {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 9px;
	padding-top: 5px
}

.sk-rail-controls p {
	margin-right: auto;
	font-size: 12px;
	color: var(--sk-muted)
}

.sk-rail-controls button {
	border: 0;
	background: #e9edf3;
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	font-size: 22px;
	transition: background var(--sk-hover-duration), transform var(--sk-hover-duration) var(--sk-ease), opacity var(--sk-hover-duration)
}

.sk-rail-controls button:hover {
	background: #d8e3f1;
	transform: scale(1.08)
}

.sk-rail-controls button:disabled {
	opacity: .3;
	cursor: default;
	transform: none
}

.sk-related {
	padding-bottom: 24px
}

.sk-discovery-card>img {
	object-position: 70% center;
	height: 61%
}

.sk-related-links:not(.sk-rail) {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	margin-top: 20px
}

.sk-related-links:not(.sk-rail) a {
	padding: 13px 20px;
	background: var(--sk-tint);
	border-radius: 24px;
	font-size: 15px;
	transition: background var(--sk-hover-duration), color var(--sk-hover-duration), transform var(--sk-hover-duration) var(--sk-ease)
}

.sk-related-links:not(.sk-rail) a:hover {
	background: var(--sk-blue);
	color: #fff;
	transform: translateY(-3px)
}

.sk-consult {
	margin-top: 38px;
	padding: 36px 44px;
	background: var(--sk-ink);
	color: #fff;
	border-radius: 24px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 30px
}

.sk-consult .sk-eyebrow {
	color: #aec7ec
}

.sk-consult h2 {
	font-size: 34px;
	line-height: 1.3;
	font-weight: 650;
	margin: 10px 0 12px
}

.sk-consult p {
	font-size: 14px;
	line-height: 1.6;
	color: #bfcadd
}

.sk-consult>a {
	display: flex;
	align-items: center;
	gap: 42px;
	border: 1px solid #7e8da3;
	border-radius: 30px;
	padding: 17px 25px;
	font-size: 15px;
	white-space: nowrap;
	transition: background var(--sk-hover-duration), transform var(--sk-hover-duration) var(--sk-ease)
}

.sk-consult>a:hover {
	background: #ffffff20;
	transform: translateY(-3px)
}

.sk-end-note {
	font-size: 12px;
	color: #8490a2;
	line-height: 1.6;
	margin: 16px 0 0 !important
}

.sk-image-dialog {
	border: 0;
	border-radius: 20px;
	padding: 45px 18px 18px;
	width: min(1200px, 94vw);
	max-height: 90vh;
	background: #fff;
	color: var(--sk-ink);
	margin: auto;
	overflow: auto
}

.sk-image-dialog[open] {
	animation: sk-dialog-in var(--sk-hover-duration) var(--sk-ease)
}

@keyframes sk-dialog-in {
	from {
		opacity: 0;
		transform: scale(.96) translateY(12px)
	}

	to {
		opacity: 1;
		transform: none
	}
}

.sk-image-dialog::backdrop {
	background: #0d192ec9;
	backdrop-filter: blur(10px)
}

.sk-image-dialog>img {
	display: block;
	max-width: 100%;
	max-height: 72vh;
	width: auto;
	height: auto;
	margin: auto;
	object-fit: contain
}

.sk-image-dialog>p {
	font-size: 13px;
	text-align: center;
	margin-top: 12px
}

.sk-dialog-close {
	position: absolute;
	right: 10px;
	top: 4px;
	border: 0;
	background: none;
	font-size: 32px !important;
	line-height: 1;
	width: 40px;
	height: 40px;
	transition: transform var(--sk-hover-duration)
}

.sk-dialog-close:hover {
	transform: rotate(90deg)
}

.sk-ready .sk-reveal {
	opacity: 0;
	transform: translateY(24px);
	transition: opacity var(--sk-hover-duration) var(--sk-ease), transform var(--sk-hover-duration) var(--sk-ease)
}

.sk-ready .sk-reveal.is-visible {
	opacity: 1;
	transform: none
}

body.sk-surgery-page .btn_top {
	background: #094bad;
	width: 46px;
	height: 46px;
	right: 24px;
	border-radius: 50%;
	box-shadow: 0 5px 18px #172b4920;
	transition: transform var(--sk-hover-duration), background var(--sk-hover-duration)
}

body.sk-surgery-page .btn_top>s {
	background: none;
	width: 13px;
	height: 13px;
	border-left: 2px solid #fff;
	border-top: 2px solid #fff;
	transform: rotate(45deg);
	top: 3px;
	transition: top var(--sk-hover-duration)
}

body.sk-surgery-page .btn_top:hover>s {
	top: 0
}

@media(min-width:1800px) {
	.sk-procedure-hero {
		min-height: 520px
	}

	.sk-hero-copy p {
		font-size: 19px
	}

	.sk-section {
		padding: 36px 0
	}

	.sk-slide-card {
		height: 510px
	}
}

@media(max-width:1100px) {
	.sk-shell {
		width: calc(100% - 48px)
	}

	.sk-primary-tabs,
	.sk-theme-contouring .sk-primary-tabs {
		grid-template-columns: repeat(3, minmax(0, 1fr))
	}

	.sk-point-layout {
		gap: 26px
	}

	.sk-hero-copy {
		width: 65%
	}

	.sk-procedure-hero {
		min-height: 400px
	}

	.sk-facts dd {
		font-size: 19px
	}

	.sk-ratio-layout {
		gap: 24px;
		padding: 25px
	}

	.sk-ratio-notes {
		grid-template-columns: 1fr;
		gap: 16px
	}

	.sk-point-list h4 {
		font-size: 21px
	}

	.sk-case-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr))
	}
}

@media(max-width:900px) {
	.sk-surgery {
		padding-top: 85px
	}

	.sk-heading-side {
		max-width: 280px
	}

	.sk-heading-side p {
		font-size: 14px
	}

	.sk-page-heading h1 {
		font-size: 47px
	}

	.sk-page-heading h1>span {
		width: 44px;
		height: 44px
	}

	.sk-steps {
		grid-template-columns: repeat(3, minmax(0, 1fr))
	}

	.sk-candidates {
		grid-template-columns: 1fr;
		gap: 13px
	}

	.sk-point-layout>.sk-point-list:only-child {
		grid-template-columns: 1fr;
		gap: 0
	}

	.sk-ratio-layout {
		grid-template-columns: 1fr 1fr
	}

	.sk-ratio-copy h4 {
		font-size: 28px
	}

	.sk-ratio-copy>p {
		font-size: 15px
	}

	.sk-slide-card {
		flex-basis: 360px
	}

	.sk-material-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr))
	}
}

@media(max-width:600px) {
	.sk-surgery {
		padding-top: 72px;
		padding-bottom: 34px
	}

	.sk-shell {
		width: calc(100% - 36px)
	}

	.sk-breadcrumb {
		font-size: 10px;
		margin: 14px 0
	}

	.sk-category-nav {
		gap: 3px;
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		padding-bottom: 12px
	}

	.sk-category-nav a {
		gap: 6px;
		padding: 10px 3px;
		font-size: 11px;
		flex-direction: column;
		line-height: 1.3;
		border-radius: 13px
	}

	.sk-category-nav .sk-icon {
		width: 20px;
		height: 20px;
		flex-basis: 20px
	}

	.sk-page-heading {
		padding: 24px 0 20px;
		display: block
	}

	.sk-page-heading h1 {
		font-size: 42px;
		margin: 8px 0 10px;
		gap: 12px
	}

	.sk-page-heading h1>span {
		width: 36px;
		height: 36px
	}

	.sk-page-heading h1 .sk-icon {
		width: 20px;
		height: 20px
	}

	.sk-page-heading p {
		font-size: 14px;
		line-height: 1.5
	}

	.sk-heading-side {
		text-align: left;
		margin-top: 8px;
		max-width: none
	}

	.sk-heading-side .sk-script {
		font-size: 25px !important;
		margin: 0
	}

	.sk-heading-side p {
		display: none
	}

	.sk-eyebrow {
		font-size: 9px !important
	}

	.sk-selector-label {
		font-size: 9px;
		margin-bottom: 10px
	}

	.sk-selector-label>span:first-child {
		font-size: 12px
	}

	.sk-primary-tabs,
	.sk-theme-nose .sk-primary-tabs,
	.sk-theme-young .sk-primary-tabs,
	.sk-theme-contouring .sk-primary-tabs {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 5px;
		padding: 6px;
		border-radius: 14px;
		margin-bottom: 16px
	}

	.sk-tab {
		height: 52px;
		padding: 9px 10px;
		gap: 7px;
		font-size: 12px;
		line-height: 1.35;
		border-radius: 9px
	}

	.sk-tab-index {
		font-size: 19px !important
	}

	.sk-tab .sk-icon {
		width: 12px;
		height: 12px;
		flex-basis: 12px
	}

	.sk-procedure-hero {
		display: flex;
		align-items: flex-end;
		min-height: 460px;
		border-radius: 20px;
		margin-bottom: 8px
	}

	.sk-hero-photo {
		inset: 0 0 auto;
		height: 220px
	}

	.sk-hero-photo img {
		object-position: 72% center
	}

	.sk-procedure-hero::after {
		background: linear-gradient(0deg, #edf1f6 0%, #edf1f6 50%, #edf1f600 77%)
	}

	.sk-hero-copy {
		width: 100%;
		padding: 180px 23px 26px
	}

	.sk-hero-copy h2 {
		font-size: 32px;
		line-height: 1.2;
		margin: 8px 0 13px
	}

	.sk-hero-copy p {
		font-size: 14px;
		line-height: 1.55
	}

	.sk-fine-rule {
		width: 32px;
		margin-bottom: 13px;
		height: 2px
	}

	.sk-hero-copy .sk-text-link {
		margin-top: 18px
	}

	.sk-text-link {
		font-size: 12px
	}

	.sk-hero-signature {
		top: 134px;
		bottom: auto;
		right: 20px;
		font-size: 30px !important
	}

	.sk-section {
		padding: 24px 0
	}

	.sk-section-head {
		gap: 12px;
		margin-bottom: 18px
	}

	.sk-section-head h3 {
		font-size: 24px;
		line-height: 1.25
	}

	.sk-section-no {
		font-size: 41px !important;
		min-width: 43px;
		padding: 0 3px 8px
	}

	.sk-section-head>.sk-icon {
		width: 21px;
		height: 21px;
		flex-basis: 21px
	}

	.sk-section>p {
		font-size: 14px;
		line-height: 1.65
	}

	.sk-facts {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		padding: 10px 5px;
		border-radius: 16px
	}

	.sk-facts>div {
		padding: 11px 4px;
		border-right: 0;
		border-bottom: 1px solid var(--sk-line);
		gap: 4px
	}

	.sk-facts>div:nth-child(n+4) {
		border-bottom: 0
	}

	.sk-facts dt {
		font-size: 11px
	}

	.sk-facts dd {
		font-size: 15px
	}

	.sk-facts .sk-icon {
		width: 24px;
		height: 24px
	}

	.sk-disclaimer {
		font-size: 10px !important
	}

	.sk-candidates {
		padding-top: 17px
	}

	.sk-candidates h4 {
		font-size: 16px
	}

	.sk-candidates ul {
		grid-template-columns: 1fr;
		gap: 7px
	}

	.sk-candidates li {
		font-size: 13px;
		line-height: 1.5
	}

	.sk-point-layout {
		grid-template-columns: 1fr;
		gap: 22px
	}

	.sk-point-layout>.sk-figure img {
		max-height: 320px
	}

	.sk-point-list h4 {
		font-size: 20px
	}

	.sk-point-list p {
		font-size: 14px;
		line-height: 1.6
	}

	.sk-point-list article {
		gap: 13px;
		padding: 16px 0
	}

	.sk-mini-icon {
		width: 38px;
		height: 38px;
		flex-basis: 38px;
		border-radius: 12px
	}

	.sk-mini-icon .sk-icon {
		width: 21px;
		height: 21px
	}

	.sk-gallery {
		gap: 10px;
		margin-top: 17px
	}

	.sk-cols-3 {
		grid-template-columns: repeat(2, minmax(0, 1fr))
	}

	.sk-figure {
		border-radius: 12px
	}

	.sk-figure figcaption {
		font-size: 11px;
		padding: 9px
	}

	.sk-steps {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px
	}

	.sk-steps li {
		padding: 12px;
		border-radius: 14px
	}

	.sk-steps p {
		font-size: 12px;
		line-height: 1.55
	}

	.sk-step-number {
		font-size: 20px !important
	}

	.sk-copy-grid {
		grid-template-columns: 1fr;
		gap: 12px
	}

	.sk-copy-grid article {
		padding: 22px;
		border-radius: 16px
	}

	.sk-copy-grid h4 {
		font-size: 21px
	}

	.sk-copy-grid p {
		font-size: 14px;
		line-height: 1.6
	}

	.sk-card-rule {
		margin-bottom: 13px
	}

	.sk-method-tabs {
		margin-top: 18px;
		padding: 5px;
		gap: 5px;
		border-radius: 12px
	}

	.sk-method-tabs .sk-tab {
		flex: 1 1 100px;
		font-size: 12px;
		height: 50px
	}

	.sk-nested-tabs>.sk-panels {
		padding: 0 14px;
		border-radius: 0 0 16px 16px
	}

	.sk-table-wrap {
		border-radius: 12px
	}

	.sk-table-wrap :is(th, td) {
		padding: 12px 9px;
		font-size: 12px
	}

	.sk-case-grid {
		grid-template-columns: 1fr;
		gap: 12px
	}

	.sk-case-grid article {
		padding: 18px
	}

	.sk-case-grid h4,
	.sk-material-grid h4 {
		font-size: 20px
	}

	.sk-case-grid p,
	.sk-material-grid p {
		font-size: 14px;
		line-height: 1.6
	}

	.sk-material-grid {
		grid-template-columns: 1fr;
		gap: 13px
	}

	.sk-material-grid article>div {
		padding: 20px
	}

	.sk-material-grid .sk-figure img {
		max-height: 230px
	}

	.sk-ratio-layout {
		grid-template-columns: 1fr;
		gap: 22px;
		padding: 18px;
		border-radius: 20px
	}

	.sk-ratio-copy h4 {
		font-size: 27px
	}

	.sk-ratio-copy>p {
		font-size: 14px
	}

	.sk-ratio-notes {
		grid-template-columns: 1fr;
		gap: 17px
	}

	.sk-ratio-notes b {
		font-size: 16px
	}

	.sk-ratio-notes p {
		font-size: 13px
	}

	.sk-explore {
		padding-top: 30px
	}

	.sk-explore-heading h2 {
		font-size: 31px
	}

	.sk-slide-card {
		flex-basis: 86%;
		height: 435px;
		border-radius: 20px
	}

	.sk-rail {
		gap: 15px;
		padding-bottom: 18px
	}

	.sk-slide-copy {
		padding: 24px
	}

	.sk-slide-copy h4 {
		font-size: 26px
	}

	.sk-slide-copy p {
		font-size: 13px;
		line-height: 1.55
	}

	.sk-rail-controls p {
		font-size: 10px;
		max-width: 65%
	}

	.sk-rail-controls button {
		width: 36px;
		height: 36px;
		font-size: 20px
	}

	.sk-card-open {
		right: 18px;
		bottom: 18px;
		width: 36px;
		height: 36px;
		font-size: 20px
	}

	.sk-consult {
		display: block;
		padding: 28px 24px;
		margin-top: 27px;
		border-radius: 20px
	}

	.sk-consult h2 {
		font-size: 27px
	}

	.sk-consult p {
		font-size: 12px
	}

	.sk-consult>a {
		margin-top: 21px;
		justify-content: space-between;
		padding: 14px 20px;
		font-size: 13px
	}

	.sk-end-note {
		font-size: 10px
	}

	.sk-zoom>span {
		width: 28px;
		height: 28px;
		right: 8px;
		bottom: 8px
	}
}

.sk-editorial-icon {
	color: var(--sk-accent);
	width: 29px;
	height: 29px;
	margin-bottom: 17px
}

.sk-copy-grid .sk-eyebrow {
	margin-bottom: 8px
}

.sk-point-reverse>.sk-figure {
	order: 2
}

.sk-point-reverse>.sk-point-list {
	order: 1
}

.sk-point-layout {
	grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr)
}

.sk-point-reverse {
	grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr)
}

.sk-point-layout>.sk-point-list {
	padding: 12px 2%
}

.sk-transition-ghost {
	contain: layout paint;
	overflow: hidden;
	max-height: 1200px
}

.sk-ratio-copy strong {
	font-weight: 750
}

@media(max-width:600px) {

	.sk-point-layout,
	.sk-point-reverse {
		grid-template-columns: 1fr
	}

	.sk-point-reverse>.sk-figure,
	.sk-point-reverse>.sk-point-list {
		order: initial
	}

	.sk-point-layout>.sk-point-list {
		padding: 0
	}

	.sk-editorial-icon {
		width: 25px;
		height: 25px
	}
}

.sk-feature-list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	list-style: none;
	padding: 0;
	margin: 16px 0 !important
}

.sk-feature-list li {
	padding: 17px 20px 17px 40px;
	position: relative;
	background: var(--sk-tint);
	border-radius: 14px;
	font-size: 15px;
	line-height: 1.5;
	color: var(--sk-muted)
}

.sk-feature-list li::before {
	content: '✓';
	position: absolute;
	left: 17px;
	color: var(--sk-accent);
	font-weight: 700
}

.sk-thread-grid {
	grid-template-columns: repeat(5, minmax(0, 1fr));
	margin-top: 20px
}

.sk-thread-grid article>div {
	padding: 20px
}

.sk-thread-grid h4 {
	font-size: 21px
}

.sk-thread-grid ul {
	padding: 0;
	list-style: none;
	display: grid;
	gap: 6px
}

.sk-thread-grid li {
	font-size: 14px;
	line-height: 1.5;
	color: var(--sk-muted)
}

.sk-thread-grid .sk-figure img {
	height: 170px;
	object-fit: contain;
	background: #fff
}

@media(max-width:1100px) {
	.sk-thread-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr))
	}
}

@media(max-width:600px) {
	.sk-feature-list {
		grid-template-columns: 1fr;
		gap: 8px
	}

	.sk-feature-list li {
		font-size: 13px;
		padding: 13px 17px 13px 35px
	}

	.sk-feature-list li::before {
		left: 14px
	}

	.sk-thread-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px
	}

	.sk-thread-grid article>div {
		padding: 14px
	}

	.sk-thread-grid h4 {
		font-size: 18px
	}

	.sk-thread-grid li {
		font-size: 12px
	}

	.sk-thread-grid .sk-figure img {
		height: 130px
	}
}

body.sk-surgery-page #footer,
body.sk-surgery-page #footer * {
	font-family: 'Saekim Noto KR', 'Saekim Noto JP', sans-serif
}

/* Whole-image rendering and semantic diagrams. Motion is defined below. */
.sk-surgery {
	--sk-ease: cubic-bezier(.2, .6, .35, 1)
}

.sk-surgery .sk-zoom {
	overflow: visible;
	border-radius: 12px;
	transition: background var(--sk-hover-duration) ease, box-shadow var(--sk-hover-duration) ease
}

.sk-surgery .sk-zoom img {
	display: block;
	width: auto;
	height: auto;
	max-width: min(100%, var(--sk-source-width, 100%));
	max-height: 620px;
	margin: auto;
	object-fit: contain;
	transform: scale(1);
	transition: transform var(--sk-image-duration) var(--sk-ease), opacity var(--sk-hover-duration) ease
}

.sk-surgery .sk-zoom:hover {
	background: #e8eef6;
	box-shadow: 0 0 0 2px #c3d3e8
}

.sk-surgery .sk-figure {
	padding: 10px;
	overflow: visible;
	max-width: 100%;
	align-self: start
}

.sk-surgery .sk-figure figcaption {
	line-height: 1.5;
	padding: 10px 6px 3px
}

.sk-surgery .sk-zoom>span {
	right: 8px;
	bottom: 8px;
	opacity: .7;
	pointer-events: none
}

.sk-surgery .sk-zoom:hover>span {
	opacity: 1;
	transform: scale(1.08)
}

.sk-surgery .sk-material-grid .sk-figure img {
	object-fit: contain;
	max-height: 260px
}

.sk-surgery .sk-thread-grid .sk-figure img {
	height: auto;
	max-height: 170px
}

.sk-surgery .sk-slide-card>img {
	object-fit: contain;
	transform: scale(1)
}

.sk-surgery .sk-slide-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 10px 22px #172b4918
}

.sk-surgery .sk-slide-card:hover .sk-card-open {
	transform: rotate(35deg)
}

.sk-surgery .sk-point-layout>.sk-figure {
	border-radius: 18px
}

.sk-surgery .sk-rail {
	scroll-behavior: auto
}

.sk-surgery .sk-compact-gallery {
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	max-width: 1200px;
	margin-inline: auto
}

.sk-surgery .sk-compact-gallery .sk-figure {
	max-width: calc(var(--sk-source-width, 400px) + 20px);
	width: 100%;
	justify-self: center
}

.sk-editorial-split {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, .95fr);
	gap: clamp(24px, 4vw, 64px);
	align-items: center
}

.sk-editorial-copy,
.sk-editorial-visual {
	min-width: 0
}

.sk-editorial-copy>p,
.sk-editorial-copy>ul,
.sk-editorial-copy .sk-copy-grid p {
	font-size: 16px;
	line-height: 1.65;
	color: var(--sk-muted)
}

.sk-editorial-copy>p {
	margin-bottom: 14px
}

.sk-editorial-copy>p:last-child {
	margin: 0
}

.sk-editorial-visual .sk-gallery {
	margin: 0;
	max-width: 100%
}

.sk-editorial-copy .sk-copy-grid {
	grid-template-columns: 1fr;
	gap: 10px
}

.sk-editorial-copy .sk-copy-grid article {
	padding: 18px 22px
}

.sk-editorial-copy .sk-copy-grid h4 {
	font-size: 21px;
	margin-bottom: 7px
}

.sk-editorial-copy .sk-copy-grid .sk-editorial-icon {
	float: left;
	margin: 0 14px 6px 0;
	width: 22px;
	height: 22px
}

.sk-editorial-copy .sk-feature-list {
	grid-template-columns: 1fr;
	gap: 8px
}

.sk-editorial-copy .sk-lead {
	font-size: 25px;
	line-height: 1.4;
	color: var(--sk-ink);
	margin-bottom: 22px
}

.sk-anatomy {
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr)
}

.sk-explained-list {
	list-style: none;
	counter-reset: explanation;
	padding: 0;
	display: grid;
	gap: 16px
}

.sk-explained-list li {
	position: relative;
	counter-increment: explanation;
	padding-left: 48px
}

.sk-explained-list li::before {
	content: counter(explanation, decimal-leading-zero);
	position: absolute;
	left: 0;
	top: 0;
	display: grid;
	place-items: center;
	width: 33px;
	height: 33px;
	background: #e8eef8;
	color: var(--sk-blue);
	border-radius: 50%;
	font-size: 13px;
	font-weight: 700
}

.sk-explained-list b {
	display: block;
	font-size: 19px;
	line-height: 1.4;
	margin-bottom: 6px
}

.sk-explained-list p {
	font-size: 15px;
	line-height: 1.6;
	color: var(--sk-muted)
}

.sk-reading-list {
	padding: 0;
	list-style: none;
	display: grid;
	gap: 12px
}

.sk-reading-list li {
	padding-left: 22px;
	position: relative
}

.sk-reading-list li::before {
	content: '✓';
	position: absolute;
	left: 0;
	top: 0;
	color: var(--sk-accent);
	font-weight: 700
}

.sk-illustrated-cards {
	grid-template-columns: repeat(3, minmax(0, 1fr))
}

.sk-illustrated-cards article>.sk-figure {
	margin-bottom: 20px
}

.sk-illustrated-cards article>.sk-editorial-icon {
	display: none
}

/* Background assets originally lacked their independent HTML copy. */
.sk-story-banner {
	position: relative;
	display: grid;
	align-items: center;
	grid-template-columns: 27% 1fr 8%;
	background: #2c3d5b;
	border-radius: 20px;
	overflow: hidden;
	margin-top: 24px;
	min-height: 360px
}

.sk-story-banner>img {
	grid-column: 1/-1;
	grid-row: 1;
	width: 100%;
	height: auto;
	display: block;
	object-fit: contain
}

.sk-story-copy {
	grid-row: 1;
	grid-column: 2;
	position: relative;
	padding: 30px 0;
	color: #fff
}

.sk-story-copy .sk-eyebrow {
	color: #c2d7f4
}

.sk-story-copy h4 {
	font-size: clamp(26px, 2.4vw, 40px);
	font-weight: 500;
	line-height: 1.3;
	margin: 12px 0 16px
}

.sk-story-copy strong,
.sk-story-copy b {
	color: #fff
}

.sk-story-copy p {
	font-size: 16px;
	line-height: 1.6;
	color: #e2eaf5;
	margin-top: 10px
}

.sk-story-registration {
	display: inline-block;
	margin-top: 14px;
	border: 1px solid #9cb0cc;
	border-radius: 24px;
	padding: 6px 15px;
	font-size: 13px;
	color: #e5ecf6
}

.sk-story-certificate {
	grid-template-columns: 24% 1fr 27%
}

.sk-story-certificate h4 {
	font-size: clamp(22px, 2vw, 34px)
}

.sk-diagram {
	padding: 30px;
	background: linear-gradient(130deg, #f5f8fc, #eef2f8);
	border-radius: 24px;
	margin-top: 20px
}

.sk-concept-pair {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0;
	padding: 32px
}

.sk-concept-pair article {
	width: clamp(230px, 26vw, 350px);
	aspect-ratio: 1;
	border: 1px solid #c4d5ed;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	text-align: center;
	background: #e4eefc;
	padding: 35px;
	transition: transform var(--sk-hover-duration) var(--sk-ease), background var(--sk-hover-duration) ease
}

.sk-concept-pair article:last-child {
	background: #eeebfb;
	border-color: #d4cdee
}

.sk-concept-pair article:hover {
	transform: translateY(-4px);
	background: #dce8fa
}

.sk-concept-pair h4 {
	font-size: 30px;
	font-weight: 750;
	line-height: 1.25;
	margin: 10px 0 14px
}

.sk-concept-pair p {
	font-size: 17px;
	line-height: 1.6;
	color: #52667f
}

.sk-concept-plus {
	z-index: 1;
	flex: 0 0 54px;
	margin-inline: -15px;
	width: 54px;
	height: 54px;
	display: grid;
	place-items: center;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 4px 15px #213b6214;
	font-size: 33px;
	color: var(--sk-accent)
}

.sk-reason-layout {
	display: grid;
	grid-template-columns: .85fr 1.15fr;
	gap: 40px;
	align-items: center
}

.sk-donut {
	position: relative;
	width: min(100%, 340px);
	aspect-ratio: 1;
	justify-self: center
}

.sk-donut svg {
	display: block;
	width: 100%;
	height: 100%;
	transform: rotate(-90deg);
	overflow: visible
}

.sk-donut circle {
	fill: none;
	stroke-width: 24
}

.sk-donut-track {
	stroke: #e0e7f0
}

.sk-donut-segment {
	stroke: #3475c8;
	transition: opacity var(--sk-hover-duration) ease, stroke-width var(--sk-hover-duration) ease;
	stroke-linecap: butt
}

.sk-donut-segment[data-reason="1"] {
	stroke: #8e79cf
}

.sk-donut-segment[data-reason="2"] {
	stroke: #8f99a8
}

.sk-donut-segment.is-muted {
	opacity: .25
}

.sk-donut-segment.is-active {
	stroke-width: 29
}

.sk-donut-label {
	position: absolute;
	inset: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	pointer-events: none
}

.sk-donut-label>span {
	font-size: 17px;
	color: var(--sk-muted)
}

.sk-donut-label>strong {
	font-size: 59px;
	line-height: 1.15;
	letter-spacing: -.06em
}

.sk-donut-label small {
	font-size: 23px;
	margin-left: 3px
}

.sk-reason-options {
	display: grid;
	gap: 10px
}

.sk-reason-options button {
	display: grid;
	grid-template-columns: 12px 1fr auto;
	align-items: center;
	gap: 16px;
	text-align: left;
	padding: 18px 20px;
	background: #ffffff80;
	border: 1px solid transparent;
	border-radius: 15px;
	transition: background var(--sk-hover-duration), border-color var(--sk-hover-duration), transform var(--sk-hover-duration) var(--sk-ease)
}

.sk-reason-options button:hover {
	transform: translateX(3px);
	background: #fff
}

.sk-reason-options button[aria-pressed=true] {
	border-color: #b4c9e5;
	background: #fff
}

.sk-reason-dot {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: #3475c8
}

.sk-reason-options [data-reason="1"] .sk-reason-dot {
	background: #8e79cf
}

.sk-reason-options [data-reason="2"] .sk-reason-dot {
	background: #8f99a8
}

.sk-reason-options b {
	display: block;
	font-size: 22px;
	margin-bottom: 6px
}

.sk-reason-options button>span>span {
	display: block;
	font-size: 14px;
	line-height: 1.6;
	color: var(--sk-muted)
}

.sk-reason-options button>strong {
	font-size: 30px
}

.sk-reason-options small {
	font-size: 15px
}

.sk-reason-options .sk-disclaimer {
	padding: 4px
}

.sk-timing-heading {
	display: flex;
	align-items: center;
	gap: 24px;
	flex-wrap: wrap
}

.sk-timing-heading>.sk-eyebrow {
	width: 100%
}

.sk-timing-heading h4 {
	font-size: 26px;
	line-height: 1.35;
	font-weight: 500
}

.sk-timing-heading>p {
	margin-left: auto;
	font-size: 14px;
	line-height: 1.5;
	color: var(--sk-muted)
}

.sk-timing-heading b {
	display: block;
	font-size: 25px;
	color: var(--sk-blue);
	margin-top: 5px
}

.sk-time-track {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	list-style: none;
	padding: 0;
	margin: 34px 0 22px !important
}

.sk-time-track li {
	position: relative;
	padding: 30px 16px 0;
	border-top: 2px solid #b9cbe4
}

.sk-time-dot {
	position: absolute;
	left: 16px;
	top: -8px;
	width: 14px;
	height: 14px;
	background: #658dc2;
	border: 3px solid #e7eef9;
	border-radius: 50%;
	box-shadow: 0 0 0 5px #e3ebf6
}

.sk-time-track li:nth-child(n+3) .sk-time-dot {
	background: var(--sk-blue);
	box-shadow: 0 0 0 6px #cdddf4
}

.sk-time-track b {
	display: block;
	font-size: 23px;
	margin-bottom: 8px
}

.sk-time-track li>span:last-child {
	font-size: 15px;
	color: var(--sk-muted);
	line-height: 1.5
}

.sk-timing .sk-disclaimer {
	max-width: 1000px
}

.sk-balance-map {
	display: grid;
	grid-template-columns: .8fr 1.2fr;
	gap: 32px;
	align-items: center
}

.sk-balance-center {
	text-align: center;
	padding: 30px
}

.sk-balance-center strong {
	display: block;
	font-size: 31px;
	line-height: 1.25;
	margin: 14px 0
}

.sk-balance-center p {
	font-size: 15px;
	color: var(--sk-muted);
	line-height: 1.6
}

.sk-balance-map ol {
	list-style: none;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px
}

.sk-balance-map li {
	padding: 24px;
	background: #fff;
	border-radius: 20px;
	border: 1px solid #dde5f1;
	transition: transform var(--sk-hover-duration), box-shadow var(--sk-hover-duration)
}

.sk-balance-map li:hover {
	transform: translateY(-3px);
	box-shadow: 0 8px 18px #172b490c
}

.sk-balance-map li>span {
	font: italic 28px 'Cormorant Garamond', serif !important;
	color: var(--sk-accent)
}

.sk-balance-map h4 {
	font-size: 21px;
	line-height: 1.35;
	margin: 8px 0
}

.sk-balance-map li p {
	font-size: 14px;
	color: var(--sk-muted);
	line-height: 1.6
}

.sk-age-plan>p {
	font-size: 16px;
	line-height: 1.6;
	color: var(--sk-muted)
}

.sk-age-cards {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
	margin: 22px 0
}

.sk-age-cards article {
	background: #fff;
	border: 1px solid #dce5f1;
	border-radius: 18px;
	padding: 24px;
	transition: transform var(--sk-hover-duration), box-shadow var(--sk-hover-duration)
}

.sk-age-cards article:hover {
	transform: translateY(-4px);
	box-shadow: 0 8px 20px #172b4910
}

.sk-age-cards article>span {
	font: italic 28px 'Cormorant Garamond', serif !important;
	color: var(--sk-accent)
}

.sk-age-cards h4 {
	font-size: 27px;
	margin: 8px 0 16px
}

.sk-age-cards ul {
	padding: 0;
	list-style: none;
	display: grid;
	gap: 8px
}

.sk-age-cards li {
	font-size: 15px;
	color: var(--sk-muted);
	padding-left: 14px;
	position: relative
}

.sk-age-cards li::before {
	content: '';
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background: var(--sk-accent);
	position: absolute;
	left: 0;
	top: .7em
}

/* Accessible grouped image viewer. The caption is separate from the uncropped image. */
.sk-surgery .sk-image-dialog {
	width: min(1200px, 96vw);
	max-width: 96vw;
	height: min(880px, 94dvh);
	max-height: 94dvh;
	padding: 0;
	border-radius: 20px;
	overflow: hidden;
	background: #f6f8fb
}

.sk-surgery .sk-image-dialog[open] {
	display: grid;
	grid-template-rows: auto minmax(0, 1fr) auto auto;
	animation: none
}

.sk-viewer-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 18px 24px;
	gap: 20px;
	background: #fff;
	border-bottom: 1px solid var(--sk-line)
}

.sk-viewer-top h2 {
	font-size: 19px;
	line-height: 1.35;
	margin-top: 6px;
	max-width: 900px
}

.sk-surgery .sk-dialog-close {
	position: static;
	flex: 0 0 40px;
	border-radius: 50%;
	font-size: 30px !important;
	background: #eaf0f6;
	transition: background var(--sk-hover-duration), transform var(--sk-hover-duration)
}

.sk-dialog-close:hover {
	transform: none !important;
	background: #dce6f3
}

.sk-viewer-stage {
	position: relative;
	display: grid;
	place-items: center;
	min-height: 0;
	padding: 20px 24px;
	touch-action: pan-y pinch-zoom;
	overflow: hidden
}

.sk-viewer-stage .sk-viewer-image {
	grid-area: 1/1;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	display: block;
	border-radius: 0;
	min-height: 0;
	min-width: 0;
	user-select: none;
	-webkit-user-drag: none
}

.sk-viewer-stage[aria-busy=true]::after {
	content: '이미지를 불러오는 중…';
	position: absolute;
	bottom: 22px;
	background: #fffefc;
	padding: 7px 14px;
	border-radius: 20px;
	font-size: 12px;
	color: var(--sk-muted);
	box-shadow: 0 2px 12px #172b4910
}

.sk-viewer-error {
	padding: 30px;
	text-align: center;
	font-size: 15px;
	line-height: 1.6
}

.sk-viewer-error[hidden] {
	display: none
}

.sk-viewer-bottom {
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 14px 24px;
	background: #fff;
	border-top: 1px solid var(--sk-line)
}

.sk-viewer-bottom>button {
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	border: 0;
	border-radius: 50%;
	background: #e7edf6;
	font-size: 24px;
	transition: background var(--sk-hover-duration), opacity var(--sk-hover-duration), transform var(--sk-hover-duration)
}

.sk-viewer-bottom>button:hover {
	background: #ceddf0;
	transform: translateY(-2px)
}

.sk-viewer-bottom>button:disabled {
	opacity: .3;
	cursor: default;
	transform: none
}

.sk-viewer-caption {
	flex: 1;
	min-width: 0;
	text-align: center
}

.sk-viewer-count {
	font-size: 12px;
	letter-spacing: .1em !important;
	color: var(--sk-accent);
	font-weight: 700
}

.sk-viewer-caption p {
	font-size: 14px;
	line-height: 1.5;
	margin-top: 5px;
	max-height: 4.5em;
	overflow: auto
}

.sk-surgery .sk-viewer-hint {
	font-size: 11px;
	line-height: 1.5;
	text-align: center;
	padding: 0 16px 12px;
	background: #fff;
	color: var(--sk-muted)
}

@media(max-width:1000px) {
	.sk-editorial-split {
		gap: 25px
	}

	.sk-editorial-copy .sk-copy-grid h4 {
		font-size: 19px
	}

	.sk-story-banner {
		grid-template-columns: 25% 1fr 5%
	}

	.sk-story-certificate {
		grid-template-columns: 22% 1fr 26%
	}

	.sk-story-copy p {
		font-size: 14px
	}

	.sk-reason-layout {
		gap: 25px;
		grid-template-columns: .8fr 1.2fr
	}

	.sk-age-cards article {
		padding: 20px
	}

	.sk-age-cards h4 {
		font-size: 24px
	}

	.sk-illustrated-cards {
		grid-template-columns: repeat(2, minmax(0, 1fr))
	}
}

@media(max-width:700px) {

	.sk-editorial-split,
	.sk-anatomy {
		grid-template-columns: 1fr;
		gap: 20px
	}

	.sk-editorial-visual {
		max-width: 100%
	}

	.sk-editorial-copy>p,
	.sk-editorial-copy>ul,
	.sk-editorial-copy .sk-copy-grid p {
		font-size: 14px
	}

	.sk-editorial-copy .sk-lead {
		font-size: 22px
	}

	.sk-explained-list b {
		font-size: 17px
	}

	.sk-explained-list p {
		font-size: 14px
	}

	.sk-surgery .sk-figure {
		padding: 8px
	}

	.sk-surgery .sk-zoom img {
		max-height: 500px
	}

	.sk-surgery .sk-compact-gallery {
		grid-template-columns: repeat(2, minmax(0, 1fr))
	}

	.sk-illustrated-cards {
		grid-template-columns: 1fr
	}

	.sk-story-banner,
	.sk-story-certificate {
		display: block;
		min-height: 0
	}

	.sk-story-copy {
		padding: 24px
	}

	.sk-story-copy h4,
	.sk-story-certificate h4 {
		font-size: 26px
	}

	.sk-story-copy p {
		font-size: 14px
	}

	.sk-story-banner>img {
		width: 100%;
		height: auto
	}

	.sk-story-copy .sk-story-registration {
		font-size: 12px
	}

	.sk-diagram {
		padding: 22px 18px;
		border-radius: 20px
	}

	.sk-concept-pair {
		padding: 22px 10px;
		flex-direction: column
	}

	.sk-concept-pair article {
		width: 260px;
		max-width: 100%;
		padding: 26px
	}

	.sk-concept-pair h4 {
		font-size: 27px
	}

	.sk-concept-pair p {
		font-size: 15px
	}

	.sk-concept-plus {
		margin: -14px 0;
		flex-basis: 46px;
		width: 46px;
		height: 46px
	}

	.sk-reason-layout {
		grid-template-columns: 1fr;
		gap: 24px
	}

	.sk-donut {
		width: 240px
	}

	.sk-donut-label>strong {
		font-size: 51px
	}

	.sk-reason-options button {
		padding: 16px 13px;
		gap: 10px;
		grid-template-columns: 9px 1fr auto
	}

	.sk-reason-options b {
		font-size: 19px
	}

	.sk-reason-options button>span>span {
		font-size: 13px
	}

	.sk-reason-options button>strong {
		font-size: 26px
	}

	.sk-timing-heading {
		gap: 14px
	}

	.sk-timing-heading h4 {
		font-size: 23px
	}

	.sk-timing-heading>p {
		margin-left: 0
	}

	.sk-time-track {
		grid-template-columns: 1fr;
		margin: 24px 0 !important;
		padding-left: 8px
	}

	.sk-time-track li {
		border-top: 0;
		border-left: 2px solid #b9cbe4;
		padding: 0 0 25px 25px
	}

	.sk-time-track li:last-child {
		padding-bottom: 0
	}

	.sk-time-dot {
		left: -8px;
		top: 8px
	}

	.sk-time-track b {
		font-size: 21px;
		margin-bottom: 5px
	}

	.sk-time-track li>span:last-child {
		font-size: 14px
	}

	.sk-balance-map {
		grid-template-columns: 1fr;
		gap: 10px
	}

	.sk-balance-center {
		padding: 8px 0 18px
	}

	.sk-balance-center strong {
		font-size: 27px
	}

	.sk-balance-map ol {
		grid-template-columns: 1fr;
		gap: 10px
	}

	.sk-balance-map li {
		padding: 19px
	}

	.sk-balance-map h4 {
		font-size: 20px
	}

	.sk-age-cards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px
	}

	.sk-age-cards article {
		padding: 17px
	}

	.sk-age-cards h4 {
		font-size: 22px
	}

	.sk-age-cards li {
		font-size: 13px
	}

	.sk-age-plan>p {
		font-size: 14px
	}

	.sk-surgery .sk-image-dialog {
		width: 96vw;
		height: 92dvh;
		max-height: 92dvh;
		border-radius: 16px
	}

	.sk-viewer-top {
		padding: 15px;
		gap: 12px
	}

	.sk-viewer-top h2 {
		font-size: 15px
	}

	.sk-viewer-stage {
		padding: 12px
	}

	.sk-viewer-bottom {
		padding: 12px;
		gap: 10px
	}

	.sk-viewer-caption p {
		font-size: 12px
	}

	.sk-viewer-bottom>button {
		width: 38px;
		height: 38px;
		flex-basis: 38px
	}

	.sk-surgery .sk-viewer-hint {
		font-size: 10px
	}

	.sk-surgery .sk-dialog-close {
		width: 36px;
		height: 36px;
		flex-basis: 36px
	}
}

.sk-surgery .sk-tabpanel.is-leaving {
	position: absolute;
	inset: 0 0 auto;
	pointer-events: none;
	z-index: 1
}

.sk-surgery .sk-viewer-stage .sk-viewer-outgoing {
	pointer-events: none
}

.sk-surgery .sk-tabpanel.is-leaving {
	overflow: hidden;
	contain: paint
}

/* Revision 4: never turn an interaction into an instant state switch.
   Reduced motion uses shorter fades and smaller distances, not zero durations. */
.sk-surgery {
	--sk-hover-duration: 360ms;
	--sk-image-duration: 520ms;
	--sk-panel-duration: 420ms;
	--sk-scroll-duration: 520ms;
	--sk-viewer-duration: 360ms;
}

body.sk-surgery-page .btn_top,
body.sk-surgery-page .btn_top>s {
	--sk-hover-duration: 360ms;
}

.sk-surgery .sk-zoom:hover img {
	transform: scale(1.025);
}

.sk-surgery .sk-slide-card:hover>img {
	transform: scale(1.035);
}

.sk-surgery .sk-slide-card>img,
.sk-surgery .sk-hero-photo img {
	transition: transform var(--sk-image-duration) var(--sk-ease);
}

.sk-surgery .sk-tab-index {
	transition: color var(--sk-hover-duration) ease;
}

.sk-surgery :is(.sk-copy-grid article, .sk-case-grid article, .sk-material-grid article,
	.sk-steps li, .sk-feature-list li, .sk-thread-grid article, .sk-mini-icon) {
	transition: transform var(--sk-hover-duration) var(--sk-ease),
		box-shadow var(--sk-hover-duration) ease, background-color var(--sk-hover-duration) ease;
}

@media (hover: hover) and (pointer: fine) {
	.sk-surgery .sk-procedure-hero:hover .sk-hero-photo img {
		transform: scale(1.025);
	}

	.sk-surgery :is(.sk-copy-grid article, .sk-case-grid article, .sk-material-grid article,
		.sk-steps li, .sk-feature-list li, .sk-thread-grid article):hover {
		transform: translateY(-3px);
		box-shadow: 0 10px 24px #172b4910;
	}

	.sk-surgery .sk-point-list article:hover .sk-mini-icon {
		transform: translateY(-2px);
		background: #dce8f8;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sk-surgery {
		--sk-hover-duration: 180ms;
		--sk-image-duration: 220ms;
		--sk-panel-duration: 200ms;
		--sk-scroll-duration: 240ms;
		--sk-viewer-duration: 200ms;
	}

	.sk-surgery .sk-zoom:hover img,
	.sk-surgery .sk-slide-card:hover>img,
	.sk-surgery .sk-procedure-hero:hover .sk-hero-photo img {
		transform: scale(1.008);
	}

	.sk-surgery .sk-slide-card:hover {
		transform: translateY(-1px);
	}

	.sk-ready .sk-reveal {
		transform: none;
	}
}

/* Editorial image captions: scoped to the four surgery pages. */
.sk-surgery .sk-figure .sk-image-caption {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: clamp(16px, 1.15vw, 19px);
	font-style: italic;
	font-weight: 500;
	line-height: 1.45;
	letter-spacing: .015em;
	color: #586c89;
	text-wrap: balance;
}


/* v6: compact, left-aligned eligibility lists, scoped to surgery pages. */
.sk-surgery .sk-candidates {
	display: block;
	box-sizing: border-box;
	width: 100%;
	margin: 24px 0 0;
	padding: 22px 26px;
	border: 1px solid var(--sk-line);
	border-left: 3px solid #9cb4d2;
	border-radius: 0 12px 12px 0;
	background: #f7f9fc;
	text-align: left;
}

.sk-surgery .sk-candidates h4 {
	margin: 0 0 14px;
	font-size: 17px;
	line-height: 1.5;
}

.sk-surgery .sk-candidates ul {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px 30px;
	margin: 0;
	padding: 0;
}

.sk-surgery .sk-candidates li {
	min-width: 0;
	margin: 0;
	padding-left: 21px;
	line-height: 1.65;
	word-break: keep-all;
	overflow-wrap: anywhere;
}

.sk-surgery .sk-disclaimer {
	margin: 12px 0 0;
	line-height: 1.7;
}

.sk-surgery :is(.sk-viewer-hint, .sk-rail-controls p) {
	line-height: 1.65;
	word-break: keep-all;
}

@media (max-width: 760px) {
	.sk-surgery .sk-candidates {
		margin-top: 18px;
		padding: 18px;
	}

	.sk-surgery .sk-candidates h4 {
		font-size: 16px;
		margin-bottom: 12px;
	}

	.sk-surgery .sk-candidates ul {
		grid-template-columns: 1fr;
		gap: 9px;
	}

	.sk-surgery .sk-candidates li {
		font-size: 13px;
	}
}

/* v6: one alignment and spacing system, limited to surgery content. */
.sk-surgery {
	--sk-layout-gap: 24px;
	--sk-card-padding: 24px;
}

.sk-surgery .sk-shell {
	width: min(1440px, calc(100% - 80px));
}

.sk-surgery .sk-section {
	padding-block: 36px;
}

.sk-surgery .sk-section-head {
	align-items: flex-start;
	gap: 20px;
	margin-bottom: 24px;
}

.sk-surgery .sk-section-head>div {
	min-width: 0;
}

.sk-surgery .sk-section-head>.sk-icon {
	margin-top: 8px;
}

.sk-surgery .sk-section-no {
	flex: 0 0 56px;
	min-width: 56px;
	font-size: 48px !important;
}

.sk-surgery :is(.sk-point-layout, .sk-point-reverse, .sk-editorial-split, .sk-ratio-layout, .sk-reason-layout, .sk-balance-map) {
	align-items: start;
	gap: 32px;
}

.sk-surgery :is(.sk-point-layout, .sk-point-reverse, .sk-editorial-split, .sk-anatomy, .sk-ratio-layout) {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sk-surgery .sk-point-layout>.sk-point-list {
	padding: 0;
}

.sk-surgery .sk-point-list article {
	align-items: flex-start;
	gap: 16px;
	padding-block: 20px;
}

.sk-surgery .sk-point-list article:first-child {
	padding-top: 0;
}

.sk-surgery .sk-point-list article>div {
	min-width: 0;
}

.sk-surgery .sk-point-list h4 {
	margin-top: 0;
}

.sk-surgery .sk-point-list p {
	max-width: 60ch;
}

.sk-surgery .sk-editorial-copy>.sk-feature-list:first-child {
	margin-top: 0 !important;
}

.sk-surgery .sk-editorial-copy .sk-copy-grid .sk-editorial-icon {
	float: none;
	margin: 0 0 12px;
}

.sk-surgery :is(.sk-gallery, .sk-copy-grid, .sk-case-grid, .sk-material-grid, .sk-steps, .sk-age-cards) {
	align-items: stretch;
	gap: var(--sk-layout-gap);
}

.sk-surgery :is(.sk-gallery, .sk-compact-gallery) {
	margin-inline: 0;
	max-width: 100%;
}

.sk-surgery .sk-cols-1 {
	max-width: 900px;
}

.sk-surgery .sk-cols-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sk-surgery .sk-cols-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sk-surgery .sk-compact-gallery .sk-figure {
	width: 100%;
	max-width: 100%;
	justify-self: stretch;
}

.sk-surgery .sk-gallery>.sk-figure {
	align-self: stretch;
	display: flex;
	flex-direction: column;
}

.sk-surgery .sk-gallery:not(.sk-cols-1)>.sk-figure>.sk-zoom,
.sk-surgery :is(.sk-steps, .sk-case-grid, .sk-material-grid, .sk-illustrated-cards) .sk-figure>.sk-zoom {
	display: grid;
	place-items: center;
	aspect-ratio: 4 / 3;
	width: 100%;
	overflow: hidden;
}

.sk-surgery .sk-gallery:not(.sk-cols-1)>.sk-figure>.sk-zoom img,
.sk-surgery :is(.sk-steps, .sk-case-grid, .sk-material-grid, .sk-illustrated-cards) .sk-figure>.sk-zoom img {
	width: 100%;
	height: 100%;
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	object-position: center;
}

.sk-surgery .sk-figure .sk-image-caption {
	text-align: left;
	padding: 12px 4px 4px;
	text-wrap: pretty;
}

.sk-surgery :is(.sk-copy-grid, .sk-case-grid, .sk-material-grid, .sk-age-cards)>article {
	height: 100%;
	min-width: 0;
}

.sk-surgery :is(.sk-copy-grid, .sk-case-grid, .sk-age-cards)>article,
.sk-surgery .sk-material-grid>article>div {
	padding: var(--sk-card-padding);
}

.sk-surgery :is(.sk-copy-grid, .sk-case-grid, .sk-material-grid, .sk-age-cards) h4,
.sk-surgery .sk-slide-copy h4 {
	min-height: var(--sk-card-title-height, 0px);
}

.sk-surgery :is(.sk-copy-grid, .sk-case-grid, .sk-material-grid) h4 {
	line-height: 1.4;
	margin-bottom: 12px;
}

.sk-surgery .sk-case-grid>article>.sk-step-number {
	margin-bottom: 16px;
}

.sk-surgery .sk-illustrated-cards article>.sk-figure {
	margin-bottom: 16px;
}

.sk-surgery .sk-material-grid .sk-figure {
	padding: 12px;
}

.sk-surgery .sk-thread-grid .sk-figure>.sk-zoom {
	aspect-ratio: 8 / 5;
}

.sk-surgery .sk-steps {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.sk-surgery .sk-steps>li {
	padding: 20px;
}

.sk-surgery .sk-step-number {
	min-height: 24px;
	margin-bottom: 16px;
}

.sk-surgery .sk-steps p {
	margin-top: 16px;
}

.sk-surgery .sk-ratio-copy h4 {
	margin-top: 0;
}

.sk-surgery .sk-ratio-notes {
	gap: 20px;
}

.sk-surgery .sk-balance-center {
	padding: 0;
	text-align: left;
}

.sk-surgery .sk-timing-heading {
	justify-content: flex-start;
	align-items: flex-start;
	gap: 16px 32px;
}

.sk-surgery .sk-timing-heading>p {
	margin-left: 0;
}

.sk-surgery .sk-rail {
	align-items: stretch;
	gap: 24px;
}

.sk-surgery .sk-slide-card {
	display: flex !important;
	flex-direction: column;
	height: auto;
	min-height: 0;
	flex-basis: clamp(290px, 31vw, 430px);
}

.sk-surgery .sk-slide-copy {
	flex: 1;
	padding: 24px;
}

.sk-surgery .sk-slide-copy h4 {
	font-size: 26px;
	line-height: 1.35;
}

.sk-surgery .sk-slide-copy p {
	max-width: 100%;
}

.sk-surgery .sk-slide-card>img {
	position: static;
	width: 100%;
	height: 230px;
	flex: 0 0 230px;
	object-fit: contain;
	z-index: auto;
}

.sk-surgery .sk-slide-card::after {
	display: none;
}

.sk-surgery .sk-card-open {
	right: 18px;
	bottom: 18px;
}

.sk-surgery .sk-rail-controls {
	align-items: flex-start;
	padding-top: 8px;
}

.sk-surgery .sk-rail-controls button {
	flex-shrink: 0;
}

.sk-surgery .sk-rail-controls p {
	align-self: center;
}

.sk-surgery .sk-viewer-stage[aria-busy=true]::after {
	content: '※ 이미지를 불러오는 중…';
}

@media (max-width: 1100px) {
	.sk-surgery {
		--sk-layout-gap: 20px;
		--sk-card-padding: 20px;
	}

	.sk-surgery .sk-shell {
		width: calc(100% - 56px);
	}

	.sk-surgery :is(.sk-point-layout, .sk-point-reverse, .sk-editorial-split, .sk-ratio-layout, .sk-reason-layout, .sk-balance-map) {
		gap: 24px;
	}

	.sk-surgery .sk-steps {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.sk-surgery .sk-thread-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 760px) {
	.sk-surgery {
		--sk-layout-gap: 16px;
		--sk-card-padding: 18px;
	}

	.sk-surgery .sk-shell {
		width: calc(100% - 36px);
	}

	.sk-surgery .sk-section {
		padding-block: 28px;
	}

	.sk-surgery .sk-section-head {
		gap: 12px;
		margin-bottom: 20px;
	}

	.sk-surgery .sk-section-no {
		min-width: 40px;
		flex-basis: 40px;
		font-size: 38px !important;
	}

	.sk-surgery :is(.sk-point-layout, .sk-point-reverse, .sk-editorial-split, .sk-anatomy, .sk-ratio-layout, .sk-reason-layout, .sk-balance-map) {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.sk-surgery .sk-point-reverse> :is(.sk-figure, .sk-point-list) {
		order: initial;
	}

	.sk-surgery .sk-point-layout>.sk-point-list:only-child {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.sk-surgery .sk-cols-3 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sk-surgery :is(.sk-copy-grid, .sk-case-grid, .sk-illustrated-cards) {
		grid-template-columns: 1fr;
	}

	.sk-surgery :is(.sk-material-grid, .sk-thread-grid) {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sk-surgery .sk-steps {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
	}

	.sk-surgery .sk-steps>li {
		padding: 14px;
	}

	.sk-surgery .sk-figure .sk-image-caption {
		font-size: 16px;
		padding-top: 10px;
	}

	.sk-surgery .sk-slide-card {
		flex-basis: 86%;
	}

	.sk-surgery .sk-slide-copy {
		padding: 22px;
	}

	.sk-surgery .sk-slide-copy h4 {
		font-size: 24px;
	}

	.sk-surgery .sk-slide-card>img {
		height: 210px;
		flex-basis: 210px;
	}
}

@media (max-width: 420px) {
	.sk-surgery .sk-material-grid:not(.sk-thread-grid) {
		grid-template-columns: 1fr;
	}
}

/* A definite image box prevents portrait diagrams from being clipped by a grid track. */
.sk-surgery .sk-gallery:not(.sk-cols-1)>.sk-figure>.sk-zoom img,
.sk-surgery :is(.sk-steps, .sk-case-grid, .sk-material-grid, .sk-illustrated-cards) .sk-figure>.sk-zoom img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	max-width: 100%;
	max-height: 100%;
}

.sk-surgery .sk-table-wrap :is(th, td) {
	vertical-align: top;
}

.sk-surgery .sk-facts>div {
	grid-template-rows: 32px auto 1fr;
	align-content: start;
	align-items: start;
}

.sk-surgery .sk-facts dt {
	min-height: 20px;
}

@media (min-width: 1101px) {
	.sk-surgery .sk-gallery:has(> .sk-figure:nth-child(4):last-child) {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media (min-width: 901px) {
	.sk-surgery .sk-point-layout>.sk-point-list:only-child>article {
		padding-top: 0;
	}
}

@media (max-width: 760px) {
	.sk-surgery .sk-facts>div {
		grid-template-rows: 28px auto 1fr;
	}
}

/* v10: restrained framed illustrations; group heights prevent oversized portraits. */
.sk-surgery .sk-figure {
	padding: 12px;
	overflow: hidden;
	background: #f3f5f8;
	border-radius: 18px;
}

.sk-surgery .sk-figure .sk-image-caption {
	padding: 12px 4px 2px;
	text-align: center;
}

.sk-surgery .sk-zoom {
	border-radius: 10px;
	overflow: hidden;
}

.sk-surgery .sk-zoom img {
	display: block;
	position: static;
	inset: auto;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 440px;
	margin: auto;
	object-fit: contain;
	object-position: center;
}

.sk-surgery .sk-gallery>.sk-figure {
	padding: 12px;
	background: #f3f5f8;
	border-radius: 18px;
}

.sk-surgery .sk-gallery:not(.sk-cols-1)>.sk-figure>.sk-zoom {
	display: grid;
	place-items: center;
	aspect-ratio: auto;
	width: 100%;
	height: clamp(250px, 26vw, 380px);
}

.sk-surgery :is(.sk-steps, .sk-case-grid, .sk-material-grid, .sk-illustrated-cards) .sk-figure {
	padding: 8px;
	background: #fff;
	border-radius: 12px;
}

.sk-surgery :is(.sk-steps, .sk-case-grid, .sk-material-grid, .sk-illustrated-cards) .sk-figure>.sk-zoom {
	display: block;
	aspect-ratio: var(--sk-stage-ratio, 4 / 3);
	width: 100%;
	height: auto;
	max-height: 230px;
}

.sk-surgery .sk-gallery:not(.sk-cols-1)>.sk-figure>.sk-zoom img,
.sk-surgery :is(.sk-steps, .sk-case-grid, .sk-material-grid, .sk-illustrated-cards) .sk-figure>.sk-zoom img {
	position: absolute;
	inset: 0;
	width: auto;
	height: auto;
	max-width: min(100%, var(--sk-source-width, 100%));
	max-height: 100%;
	margin: auto;
	object-fit: contain;
}

.sk-surgery .sk-steps :is(.sk-step-number, p) {
	text-align: center;
}

.sk-surgery .sk-point-layout>.sk-figure {
	border-radius: 20px;
}

.sk-surgery .sk-cols-1 {
	max-width: 820px;
}

@media (max-width: 760px) {

	.sk-surgery .sk-figure,
	.sk-surgery .sk-gallery>.sk-figure {
		padding: 8px;
		border-radius: 14px;
	}

	.sk-surgery .sk-gallery:not(.sk-cols-1)>.sk-figure>.sk-zoom {
		height: clamp(150px, 35vw, 240px);
	}

	.sk-surgery :is(.sk-steps, .sk-case-grid, .sk-material-grid, .sk-illustrated-cards) .sk-figure>.sk-zoom {
		height: auto;
		max-height: 210px;
	}

	.sk-surgery .sk-figure .sk-image-caption {
		padding: 10px 2px 2px;
		font-size: 15px;
	}

	.sk-surgery .sk-zoom img {
		max-height: 360px;
	}
}

.sk-surgery .sk-steps {
	grid-template-columns: repeat(var(--sk-step-cols, 4), minmax(0, 1fr));
}

.sk-surgery .sk-steps:has(> li:nth-child(2):last-child) {
	max-width: 920px;
}

.sk-surgery .sk-steps:has(> li:nth-child(3):last-child) {
	max-width: 1120px;
}

.sk-surgery .sk-section>.sk-feature-list {
	max-width: 100%;
}

.sk-surgery .sk-section>.sk-section-lead {
	max-width: 1000px;
}

/* Shared right-edge carousel, including related cards inside surgery tabs. */
.sk-surgery .sk-carousel[data-carousel] {
	width: 100%;
	min-width: 0;
	overflow: visible;
}

.sk-surgery .sk-carousel[data-carousel]>.sk-rail {
	width: var(--sk-carousel-rail-width, 100%);
	max-width: none;
	margin: -10px 0 0;
	padding: 10px var(--sk-carousel-end-space, 0px) 24px 0;
	scroll-padding-inline: 0;
	overflow-x: auto;
}

.sk-surgery .sk-carousel[data-carousel]>.sk-rail>.sk-slide-card:last-child {
	margin-right: 0;
}

.sk-surgery .sk-carousel[data-carousel]>.sk-rail-controls {
	width: 100%;
	padding-right: 0;
}

.sk-surgery .sk-slide-card>img.sk-model-image {
	object-fit: cover;
	object-position: 65% 45%;
}

.sk-surgery .sk-consult {
	width: var(--sk-viewport-width, 100%);
	max-width: none;
	margin-left: calc(-1 * var(--sk-shell-offset, 0px));
	margin-right: 0;
	padding: 48px max(24px, var(--sk-shell-offset, 24px));
	border-radius: 0;
}

.sk-surgery .sk-consult>div {
	max-width: 820px;
}

@media (max-width: 1100px) {
	.sk-surgery .sk-steps {
		grid-template-columns: repeat(min(var(--sk-step-cols, 4), 3), minmax(0, 1fr));
	}
}

@media (max-width: 760px) {
	.sk-surgery .sk-steps {
		grid-template-columns: repeat(min(var(--sk-step-cols, 4), 2), minmax(0, 1fr));
	}

	.sk-surgery .sk-consult {
		padding-block: 32px;
		padding-inline: max(18px, var(--sk-shell-offset, 18px));
	}

	.sk-surgery .sk-carousel[data-carousel] .sk-slide-card {
		flex-basis: min(340px, calc(var(--sk-carousel-content-width, 100%) - 36px));
	}
}

/* Image refresh: reserve separate space for copy and the complete model portrait. */
.sk-surgery .sk-procedure-hero {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	min-height: 0;
	background: #f1f4f7;
}

.sk-surgery .sk-procedure-hero::after {
	display: none;
}

.sk-surgery .sk-hero-photo {
	position: relative;
	inset: auto;
	z-index: auto;
	grid-column: 2;
	grid-row: 1;
	width: 100%;
	height: auto;
	min-height: 0;
	align-self: stretch;
	display: grid;
	place-items: center;
	overflow: hidden;
}

.sk-surgery .sk-hero-photo img {
	width: 100%;
	height: auto;
	max-height: 460px;
	object-fit: contain;
	object-position: center;
}

.sk-surgery .sk-procedure-hero:hover .sk-hero-photo img {
	transform: none;
}

.sk-surgery .sk-hero-copy {
	grid-column: 1;
	grid-row: 1;
	width: auto;
	padding: clamp(22px, 3vw, 42px);
}

.sk-surgery .sk-hero-copy h2 {
	font-size: clamp(28px, 3vw, 46px);
}

.sk-surgery .sk-hero-copy p {
	font-size: clamp(14px, 1.3vw, 17px);
}

.sk-surgery .sk-hero-signature {
	display: none;
}

.sk-surgery .sk-slide-card>img.sk-model-image {
	object-position: center;
}

@media (max-width: 760px) {
	.sk-surgery .sk-procedure-hero {
		grid-template-columns: 1fr;
	}

	.sk-surgery .sk-hero-photo {
		grid-column: 1;
		grid-row: 2;
	}

	.sk-surgery .sk-hero-photo img {
		max-height: 310px;
	}

	.sk-surgery .sk-hero-copy {
		padding: 24px 22px;
	}

	.sk-surgery .sk-hero-copy h2 {
		font-size: 30px;
	}
}

/* 2026-10-14: supplied portraits are all 1536 x 1024 (3:2).
   Preserve the complete photo in heroes, explanations, cards and the viewer.
   Instructional diagrams keep their own intrinsic dimensions and layout. */
.sk-surgery .sk-hero-photo {
	background: #e8f0f8;
}

.sk-surgery .sk-hero-photo img.sk-model-image {
	width: 100%;
	height: auto;
	max-width: 760px;
	max-height: none;
	aspect-ratio: 3 / 2;
	object-fit: contain;
	object-position: center;
}

.sk-surgery .sk-figure:has(img.sk-model-image) {
	--sk-source-width: 1536px;
}

.sk-surgery .sk-figure:has(img.sk-model-image)>.sk-zoom:has(img.sk-model-image) {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 3 / 2;
	max-height: none;
	padding: 0;
	margin: 0 auto;
	max-width: 660px;
}

.sk-surgery .sk-figure:has(img.sk-model-image)>.sk-zoom>img.sk-model-image {
	display: block;
	position: static;
	inset: auto;
	width: 100%;
	height: auto;
	max-width: 100%;
	max-height: none;
	margin: 0;
	aspect-ratio: 3 / 2;
	object-fit: contain;
	object-position: center;
}

.sk-surgery .sk-zoom:hover img.sk-model-image {
	transform: none;
}

.sk-surgery .sk-slide-card>img.sk-model-image {
	width: 100%;
	height: auto;
	flex: 0 0 auto;
	aspect-ratio: 3 / 2;
	object-fit: contain;
	object-position: center;
	background: #e8f0f8;
}

.sk-surgery .sk-slide-card:hover>img.sk-model-image {
	transform: none;
}

.sk-surgery .sk-photo-notes ul {
	list-style: none;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
	margin: 0;
}

.sk-surgery .sk-photo-notes li {
	padding: 7px 12px;
	border-radius: 8px;
	background: #fff;
	color: var(--sk-ink);
	font-size: 14px;
	line-height: 1.5;
}

@media (max-width: 760px) {
	.sk-surgery .sk-hero-photo img.sk-model-image {
		max-width: 600px;
	}

	.sk-surgery .sk-photo-notes li {
		font-size: 13px;
		padding: 6px 10px;
	}
}