@charset "UTF-8";

/* 파일 목적: 소개 페이지 주요 섹션 스타일을 관리한다. */

/* ============================================
   전문가 섹션
   ============================================ */

.experts-section {
	margin-top: var(--space-section-md);
}

/* ============================================
   소개 카드 목록
   ============================================ */

/* ----- 핵심 소개 목록 ----- */
.C-about-list {
	margin-top: var(--space-sm);
	padding-top: var(--space-sm);
	border-top: 1px solid var(--border-subtle-color);
	display: flex;
	flex-direction: column;
	gap: var(--gap-sm);
}

.C-about-list li {
	font-size: var(--font-base-plus);
	color: var(--text-muted);

	display: flex;
	align-items: flex-start;
	gap: var(--gap-sm);
	line-height: 1.5;
}

.C-about-list li strong {
	color: var(--text-body);

	font-weight: 600;
	white-space: nowrap;
}

.C-about-list li::before {
	content: "•";
	color: var(--color-slate-light);
	font-weight: bold;
}

.C-card--v1.accent-red:hover .C-card-icon {
	background: hsl(0 100.0% 66.1%);
	color: var(--ui-surface-card);
	box-shadow: 0 10px 20px hsl(0 100.0% 66.1% / 0.3);
}

.C-card--v1.accent-green:hover .C-card-icon {
	background: hsl(122 39.4% 49.2%);
	color: var(--ui-surface-card);
	box-shadow: 0 10px 20px hsl(122 39.4% 49.2% / 0.3);
}

.C-card--v1.accent-blue:hover .C-card-icon {
	background: hsl(207 89.7% 54.1%);
	color: var(--ui-surface-card);
	box-shadow: 0 10px 20px hsl(207 89.7% 54.1% / 0.3);
}

.C-card--v1.accent-purple:hover .C-card-icon {
	background: hsl(291 63.7% 42.2%);
	color: var(--ui-surface-card);
	box-shadow: 0 10px 20px hsl(291 63.7% 42.2% / 0.3);
}

.C-card--v1.accent-orange:hover .C-card-icon {
	background: hsl(36 100.0% 50.0%);
	color: var(--ui-surface-card);
	box-shadow: 0 10px 20px hsl(36 100.0% 50.0% / 0.3);
}

.C-card--v1.accent-cyan:hover .C-card-icon {
	background: hsl(187 100.0% 41.6%);
	color: var(--ui-surface-card);
	box-shadow: 0 10px 20px hsl(187 100.0% 41.6% / 0.3);
}

/* ============================================
   신뢰 배지
   ============================================ */

/* ----- 신뢰 배지 ----- */
.C-trust-badges {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--gap-lg);
	margin-bottom: var(--space-section-sm);
	padding: var(--space-xl-compact);
	background: var(--ui-surface-card);
	border-radius: var(--radius-card);
	border: 1px solid var(--ui-border-subtle);
}

.C-trust-badge {
	display: flex;
	align-items: center;
	gap: var(--gap-sm);
	color: var(--text-base);
	font-weight: 600;
	font-family: var(--font-display);
}

.C-trust-badge i {
	font-size: var(--font-xl);
	color: var(--brand-primary);
}

/* ============================================
   연혁 타임라인
   ============================================ */

/* ----- 연혁 타임라인 ----- */
.C-timeline {
	position: relative;
	margin: var(--space-3xl-compact) auto 0;
	padding: var(--space-xl-compact);
	background: var(--ui-surface-card);
	border: 1px solid var(--ui-border-subtle);
	border-radius: var(--radius-card);
}

.C-timeline::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 210px;

	width: 2px;
	background: var(--border-subtle-color);
}

.C-timeline-item {
	display: flex;
	gap: 60px;
	margin-bottom: var(--space-section-sm);
	position: relative;
}

.C-timeline-item:last-child {
	margin-bottom: 0;
}

.C-timeline-date {
	width: 130px;
	text-align: right;
	padding-top: var(--space-lg-compact);
	position: relative;
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: var(--gap-sm);
}

.C-timeline-date .year {
	font-family: var(--font-display);
	font-size: var(--font-3xl);
	font-weight: 800;
	color: var(--text-muted);
	line-height: 1;
	transition: color 0.2s ease;
}

.C-timeline-item.current .C-timeline-date .year {
	color: var(--brand-primary);
}

.C-timeline-date .badge {
	font-size: var(--font-sm);
	font-weight: 700;
	color: var(--ui-surface-card);
	background: var(--brand-primary);
	padding: var(--space-micro) var(--space-xs);
	border-radius: var(--radius-badge);
	display: inline-block;
}

.C-timeline-date::after {
	content: "";
	position: absolute;
	right: -61px;
	top: 28px;
	width: 14px;
	height: 14px;
	background: var(--ui-surface-card);
	border: 3px solid var(--color-slate-light);
	border-radius: var(--radius-circle);
	z-index: var(--z-raised);
	transition: all var(--transition-normal);
}

.C-timeline-item:hover .C-timeline-date::after,
.C-timeline-item.current .C-timeline-date::after {
	border-color: var(--brand-primary);
	background: var(--brand-primary);
	box-shadow: 0 0 0 4px hsl(340 82.2% 51.6% / 0.2);
}

.C-timeline-item.current .C-timeline-date .year {
	color: var(--brand-primary);
	transform: scale(1.1);
	transform-origin: right center;
}

/* ============================================
   연혁 내용 카드
   ============================================ */

.C-timeline-content {
	flex: 1;
	padding: var(--space-lg-compact) var(--space-2xl-compact) var(--space-lg) var(--space-2xl-compact);
	position: relative;
	border-color: var(--shadow-sm);

}

.C-timeline-title {
	font-size: var(--font-2xl);
	font-weight: 600;
	margin-bottom: var(--space-sm-plus);
	font-family: var(--font-display);
}

.C-timeline-item:hover .C-timeline-title {
	color: var(--brand-primary);
}

.C-timeline-desc {
	font-size: var(--font-base-plus);
	color: var(--text-body);
	margin-bottom: var(--space-lg-compact);
	line-height: 1.6;
}

/* ============================================
   반응형 규칙
   ============================================ */

@media (max-width: 600px) {

	.experts-section {
		margin-top: 0;
	}

	.C-about-list li {
		font-size: var(--font-base-sm);
	}

	.C-timeline::before {
		left: 26px;
	}

	.C-timeline-item {
		flex-direction: column;
		gap: 0;
		padding-left: var(--space-md-plus);
		margin-bottom: var(--space-2xl-compact);
	}

	.C-timeline-date {
		width: auto;
		text-align: left;
		align-items: center;
		justify-content: flex-start;
		flex-direction: row;
		padding-top: 0;
		padding-right: 0;
		margin-bottom: var(--space-sm);
		gap: var(--gap-sm);
	}

	.C-timeline-date .year {
		font-size: var(--font-2xl-sm);
	}

	.C-timeline-date::after {
		left: -37px;
		right: auto;
		top: 6px;

	}

	.C-timeline-content {
		padding: var(--space-md);
		background: var(--ui-surface-card);
		border-radius: var(--radius-surface);
		border: 1px solid hsl(220 16.7% 92.9%);
		box-shadow: 0 4px 6px -1px var(--shadow-xs), 0 2px 4px -1px var(--shadow-xs);
	}

	.C-timeline-content::before {
		display: none;
	}

	.C-timeline-title {
		font-size: var(--font-lg);
		margin-bottom: var(--space-xs);
	}

	.C-timeline-desc {
		font-size: var(--font-base);
		color: hsl(216 18.4% 34.1%);
		line-height: 1.6;
		margin-bottom: var(--space-sm);
	}

	.C-about-list--history {
		padding-left: 0;
		margin: 0;
		display: flex;
		flex-direction: column;
		gap: var(--gap-sm);
	}

	.C-about-list--history li {
		font-size: var(--font-base-sm);
		color: hsl(216 18.4% 34.1%);
		display: flex;
		align-items: flex-start;
		gap: var(--gap-sm);
	}

	.C-about-list--history li::before {
		content: "•";
		color: var(--brand-primary);
		font-weight: bold;
		flex-shrink: 0;
	}

	.C-trust-badges {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: var(--gap-md);
		padding: var(--space-lg-compact);
		margin-bottom: var(--space-2xl-compact);
	}

	.C-trust-badge {
		flex-direction: column;
		text-align: center;
		width: 100%;
		justify-content: center;
	}
}