@charset "UTF-8";

/* ==========================================================================
   §6. AI REFERENCE 섹션 전용 스타일 (ai-reference.css)
   - 다크 배경 (Reference 라이트 다음 임팩트 다크 톤)
   - 인트로 헤더: 시안색 라인 + 빛나는 점 (섹션 시작 마커)
   - 3개 프로젝트 alternating (1-좌, 2-우, 3-좌)
   - 백그라운드 큰 숫자 (200px, 시안 15% 투명) - 워터마크
   - 각 프로젝트마다 라디얼 글로우 위치/색상 차별화
   - 반응형 (1024px 이하 1단, 768px 이하 모바일)
   ========================================================================== */

#ai-reference {
	background: var(--dark);
	color: white;
	position: relative;
	overflow-x: hidden; /* 800px 글로우 가상요소 가로 넘침 방지 */
}

/* --------------------------------------------------------------------------
   인트로 헤더 (섹션 시작 마커)
   - 위에서 시안 라인이 내려와서 점이 빛나는 효과
   -------------------------------------------------------------------------- */
.ai-intro {
	text-align: center;
	padding: 70px 24px 50px;
	position: relative;
	background: transparent;
}

/* 위에서 내려오는 시안색 라인 */
.ai-intro::before {
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 1px;
	height: 40px;
	background: linear-gradient(180deg, transparent, var(--accent));
}

/* 라인 끝에 빛나는 점 (시안색 글로우) */
.ai-intro::after {
	content: '';
	position: absolute;
	top: 40px;
	left: 50%;
	transform: translateX(-50%);
	width: 8px;
	height: 8px;
	background: var(--accent);
	border-radius: 50%;
	box-shadow: 0 0 20px var(--accent);
}

.ai-intro-label {
	color: var(--accent);
	font-size: 13px;
	letter-spacing: 6px;
	font-weight: 700;
	margin-bottom: 18px;
	margin-top: 30px;
}

.ai-intro h2 {
	font-size: clamp(32px, 4.5vw, 48px);
	font-weight: 800;
	color: white;
	line-height: 1.2;
	letter-spacing: -1.5px;
	margin-bottom: 16px;
}

/* 'AI 연구' 부분 시안 그라데이션 텍스트 */
.ai-intro h2 .accent {
	background: linear-gradient(135deg, var(--accent) 0%, #66e6ff 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

.ai-intro p {
	color: rgba(255, 255, 255, 0.6);
	font-size: 15px;
	line-height: 1.7;
	max-width: 600px;
	margin: 0 auto;
}

/* --------------------------------------------------------------------------
   각 프로젝트 카드
   -------------------------------------------------------------------------- */
.ai-project {
	overflow-x: hidden;
	padding: 70px 0;
	position: relative;
	overflow: hidden;
	background: transparent;
}

/* 프로젝트 사이 100px 가로 구분선 (마지막 카드 제외) */
.ai-project:not(:last-child)::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100px;
	height: 1px;
	background: rgba(255, 255, 255, 0.1);
}

/* --------------------------------------------------------------------------
   프로젝트별 라디얼 글로우 (워터마크 효과)
   - 1번: 우상단 시안 글로우
   - 2번: 좌측 중앙 파랑 글로우
   - 3번: 우하단 시안 글로우 (약하게)
   -------------------------------------------------------------------------- */
.ai-project:nth-of-type(1)::before {
	content: '';
	position: absolute;
	width: 800px;
	height: 800px;
	background: radial-gradient(circle, rgba(0, 217, 255, 0.08) 0%, transparent 60%);
	top: -200px;
	right: -200px;
	border-radius: 50%;
	pointer-events: none;
}

.ai-project:nth-of-type(2)::before {
	content: '';
	position: absolute;
	width: 800px;
	height: 800px;
	background: radial-gradient(circle, rgba(0, 102, 204, 0.1) 0%, transparent 60%);
	top: 50%;
	left: -300px;
	transform: translateY(-50%);
	border-radius: 50%;
	pointer-events: none;
}

.ai-project:nth-of-type(3)::before {
	content: '';
	position: absolute;
	width: 800px;
	height: 800px;
	background: radial-gradient(circle, rgba(0, 217, 255, 0.06) 0%, transparent 60%);
	bottom: -300px;
	right: -100px;
	border-radius: 50%;
	pointer-events: none;
}

/* --------------------------------------------------------------------------
   프로젝트 컨테이너 (좌: 큰 숫자 / 우: 콘텐츠)
   -------------------------------------------------------------------------- */
.ai-project .container {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 80px;
	align-items: center;
}

/* reverse: 좌우 뒤집기 (좌: 콘텐츠 / 우: 큰 숫자) */
.ai-project.reverse .container {
	grid-template-columns: 1fr auto;
}

.ai-project.reverse .ai-num-side {
	order: 2;
	text-align: right;
}

.ai-project.reverse .ai-content-side {
	text-align: right;
}

.ai-project.reverse .ai-tech {
	justify-content: flex-end;
}

.ai-project.reverse .ai-content-side p {
	margin-left: auto;
	margin-right: 0;
}

/* --------------------------------------------------------------------------
   백그라운드 큰 숫자 (200px, 시안 15% 투명) - 워터마크 효과
   -------------------------------------------------------------------------- */
.ai-num-side {
	font-size: 200px;
	font-weight: 800;
	color: rgba(0, 217, 255, 0.15);
	line-height: 1;
	letter-spacing: -5px;
}

/* --------------------------------------------------------------------------
   콘텐츠 영역 (라벨 / 제목 / 설명 / 기술스택 / 결과)
   -------------------------------------------------------------------------- */
.ai-content-side .ai-section-label {
	color: var(--accent);
	font-size: 12px;
	letter-spacing: 4px;
	font-weight: 700;
	margin-bottom: 16px;
}

.ai-content-side h3 {
	font-size: 40px;
	font-weight: 800;
	color: white;
	line-height: 1.3;
	letter-spacing: -1px;
	margin-bottom: 22px;
}

.ai-content-side p {
	color: rgba(255, 255, 255, 0.7);
	font-size: 16px;
	line-height: 1.7;
	margin-bottom: 28px;
	max-width: 600px;
}

/* 기술 스택 박스 (시안색 테두리) */
.ai-tech {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
	margin-bottom: 28px;
}

.ai-tech span {
	color: var(--accent);
	font-size: 13px;
	font-weight: 600;
	border: 1px solid rgba(0, 217, 255, 0.3);
	padding: 6px 16px;
}

/* 결과 (큰 시안 숫자 + 시안 위쪽 1px 라인) */
.ai-result {
	display: inline-block;
	color: white;
	border-top: 1px solid var(--accent);
	padding-top: 12px;
}

.ai-result-num {
	font-size: 36px;
	font-weight: 800;
	color: var(--accent);
	letter-spacing: -1px;
	line-height: 1;
	margin-bottom: 8px;
}

.ai-result-label {
	font-size: 13px;
	color: rgba(255, 255, 255, 0.7);
}

/* --------------------------------------------------------------------------
   반응형 - 태블릿 (768px ~ 1023px: 1단 레이아웃)
   - 큰 숫자가 위, 콘텐츠가 아래로 떨어짐
   -------------------------------------------------------------------------- */
@media (min-width: 768px) and (max-width: 1023px) {
	.ai-project {
	overflow-x: hidden;
		padding: 50px 0;
	}

	.ai-project .container {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.ai-project.reverse .container {
		grid-template-columns: 1fr;
	}

	.ai-project.reverse .ai-num-side {
		order: 0;
		text-align: left;
	}

	.ai-num-side {
		font-size: 140px;
		letter-spacing: -3px;
	}

	.ai-content-side h3 {
		font-size: 32px;
	}
}

/* --------------------------------------------------------------------------
   반응형 - 모바일 (~767px)
   -------------------------------------------------------------------------- */
@media (max-width: 767px) {
	.ai-intro {
		padding: 50px 20px 40px;
	}

	.ai-intro-label {
		font-size: 11px;
		letter-spacing: 4px;
		margin-bottom: 14px;
	}

	.ai-intro p {
		font-size: 14px;
	}

	.ai-project {
	overflow-x: hidden;
		padding: 40px 0;
	}

	.ai-project .container {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.ai-project.reverse .container {
		grid-template-columns: 1fr;
	}

	.ai-project.reverse .ai-num-side {
		order: 0;
		text-align: left;
	}

	.ai-num-side {
		font-size: 100px;
		letter-spacing: -2px;
	}

	.ai-content-side h3 {
		font-size: 24px;
		margin-bottom: 16px;
	}

	.ai-content-side p {
		font-size: 14px;
		margin-bottom: 22px;
	}

	.ai-tech {
		gap: 8px;
		margin-bottom: 22px;
	}

	.ai-tech span {
		font-size: 11px;
		padding: 5px 12px;
	}

	.ai-result-num {
		font-size: 28px;
	}

	.ai-result-label {
		font-size: 11px;
	}
}