.admission-steps {
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:20px;
	margin-bottom:72px;
}

.admission-step {
	position:relative;
	min-width:0;
	padding:34px 20px 28px;
	border:1px solid var(--border);
	border-radius:22px;
	background:#fff;
	text-align:center;
	box-shadow:0 8px 24px rgba(28,43,61,.04);
	transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease;
}

.admission-step:hover {
	transform:translateY(-5px);
	border-color:var(--section-light);
	box-shadow:0 16px 36px rgba(28,43,61,.08);
}

.step-number {
	position:absolute;
	top:16px;
	left:18px;
	color:var(--section-light);
	font-size:11px;
	font-weight:800;
	letter-spacing:.08em;
}

.step-icon {
	width:52px;
	height:52px;
	display:flex;
	align-items:center;
	justify-content:center;
	margin:18px auto 16px;
	border-radius:16px;
	background:var(--section-soft);
	color:var(--section-main);
}

.step-icon svg {
	width:25px;
	height:25px;
}

.admission-step h3 {
	margin:0 0 8px;
	color:var(--section-text);
	font-size:19px;
	font-weight:800;
}

.admission-step p {
	margin:0;
	color:var(--section-sub);
	font-size:13px;
	line-height:1.65;
	word-break:keep-all;
}

.admission-step:nth-child(1) .step-icon {
	background:color-mix(in srgb,var(--section-step1) 20%,white);
	color:var(--section-step1);
}

.admission-step:nth-child(2) .step-icon {
	background:color-mix(in srgb,var(--section-step2) 18%,white);
	color:var(--section-step2);
}

.admission-step:nth-child(3) .step-icon {
	background:color-mix(in srgb,var(--section-step3) 16%,white);
	color:var(--section-step3);
}

.admission-step:nth-child(4) .step-icon {
	background:color-mix(in srgb,var(--section-step4) 14%,white);
	color:var(--section-step4);
}

.admission-detail {
	display:grid;
	gap:18px;
}

.detail-card {
	display:grid;
	grid-template-columns:260px 1fr;
	gap:32px;
	align-items:center;
	padding:30px 34px;
	border:1px solid var(--border);
	border-radius:20px;
	background:#fff;
	transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}

.detail-card:hover {
	transform:translateY(-3px);
	border-color:var(--section-light);
	box-shadow:0 12px 30px rgba(28,43,61,.06);
}

.detail-card-head {
	display:flex;
	align-items:center;
	gap:14px;
}

.detail-number {
	flex:0 0 44px;
	width:44px;
	height:44px;
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:50%;
	background:var(--section-soft);
	color:var(--section-main);
	font-size:13px;
	font-weight:800;
}

.detail-label {
	display:block;
	margin-bottom:4px;
	color:var(--section-light);
	font-size:9px;
	font-weight:800;
	letter-spacing:.12em;
}

.detail-card-head h3 {
	margin:0;
	color:var(--section-text);
	font-size:20px;
	font-weight:800;
}

.detail-card-body {
	min-width:0;
}

.detail-card-body p {
	margin:0;
	color:var(--section-sub);
	font-size:14px;
	line-height:1.75;
	word-break:keep-all;
}

.detail-list {
	margin:12px 0 0;
	padding:0;
	list-style:none;
}

.detail-list li {
	position:relative;
	margin-bottom:6px;
	padding-left:14px;
	color:#727d89;
	font-size:13px;
	line-height:1.6;
	word-break:keep-all;
}

.detail-list li:last-child {
	margin-bottom:0;
}

.detail-list li::before {
	content:"";
	position:absolute;
	top:8px;
	left:0;
	width:5px;
	height:5px;
	border-radius:50%;
	background:var(--section-light);
}

.admission-action {
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:40px;
	margin-top:60px;
	padding:32px 36px;
	border-radius:22px;
	background:linear-gradient(135deg,var(--section-main),var(--section-light));
	color:#fff;
	box-shadow:0 14px 35px rgba(28,43,61,.10);
}

.action-text>span {
	display:block;
	margin-bottom:7px;
	color:rgba(255,255,255,.68);
	font-size:9px;
	font-weight:800;
	letter-spacing:.14em;
}

.action-text h3 {
	margin:0;
	font-size:22px;
	font-weight:800;
}

.action-text p {
	margin:7px 0 0;
	color:rgba(255,255,255,.78);
	font-size:13px;
}

.action-buttons {
	flex-shrink:0;
	display:flex;
	gap:10px;
}

.admission-action .action-btn {
	width:170px;
	min-width:170px;
	height:52px;
	flex-shrink:0;
	min-height:46px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	padding:0 18px;
	border-radius:10px;
	font-size:13px;
	font-weight:700;
	text-decoration:none;
	transition:transform .2s ease,background .2s ease,box-shadow .2s ease;
}

.action-btn.primary {
	background:#fff;
	color:var(--section-main);
}

.action-btn.secondary {
	border:1px solid rgba(255,255,255,.45);
	background:rgba(255,255,255,.08);
	color:#fff;
}

.action-btn.kakao {
	background:#fee500;
	color:#191919;
}

.action-btn:hover {
	transform:translateY(-2px);
	box-shadow:0 7px 18px rgba(15,23,42,.12);
}

@media(max-width:1024px) {
	.admission-steps {
		grid-template-columns:repeat(2,minmax(0,1fr));
		gap:18px;
	}

	.detail-card {
		grid-template-columns:220px 1fr;
	}
}

@media(max-width:700px) {
	.admission-page {
		padding:36px 0 70px;
	}

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

	.admission-step {
		padding:27px 12px 20px;
		border-radius:16px;
	}

	.admission-step:hover {
		transform:none;
		box-shadow:0 8px 24px rgba(28,43,61,.04);
	}

	.step-number {
		top:11px;
		left:12px;
		font-size:9px;
	}

	.step-icon {
		width:42px;
		height:42px;
		margin:15px auto 12px;
		border-radius:12px;
	}

	.step-icon svg {
		width:20px;
		height:20px;
	}

	.admission-step h3 {
		margin-bottom:6px;
		font-size:15px;
	}

	.admission-step p {
		font-size:11px;
		line-height:1.55;
	}

	.admission-detail {
		gap:12px;
	}

	.detail-card {
		display:block;
		padding:22px 18px;
		border-radius:16px;
	}

	.detail-card:hover {
		transform:none;
		box-shadow:none;
	}

	.detail-card-head {
		margin-bottom:16px;
	}

	.detail-number {
		width:38px;
		height:38px;
		flex-basis:38px;
		font-size:11px;
	}

	.detail-card-head h3 {
		font-size:17px;
	}

	.detail-card-body p {
		font-size:13px;
		line-height:1.7;
	}

	.detail-list {
		margin-top:10px;
	}

	.detail-list li {
		font-size:12px;
	}

	.admission-action {
		flex-direction:column;
		align-items:flex-start;
		gap:22px;
		margin-top:40px;
		padding:25px 20px;
		border-radius:17px;
	}

	.action-text h3 {
		font-size:19px;
	}

	.action-text p {
		font-size:12px;
		line-height:1.6;
	}

	.admission-action .action-buttons {
		width:100%;
		display:grid;
		grid-template-columns:repeat(2,minmax(0,1fr));
	}

	.admission-action .action-btn {
		width:100%;
		min-width:0;
		padding:0 10px;
		font-size:12px;
	}

	.admission-action .action-btn.primary {
		grid-column:1 / -1;
	}
}

@media(max-width:380px) {
	.admission-step {
		padding-left:9px;
		padding-right:9px;
	}

	.admission-step h3 {
		font-size:14px;
	}

	.admission-step p {
		font-size:10px;
	}
}
