/* ==========================================================================
   KCC 자체 기사 템플릿 (partials/kcc/single.php)
   Elementor 단일 글 템플릿 21092 의 실측값(2026-10-07):
   - 컨테이너 1090px 가운데, 머리 영역 위 여백 180px(1024px 이하 100px), 요소 간격 20px(767px 이하 10px)
   - 카테고리 라벨: 배경 #3A5FCD, 흰색 16px/400(모바일 14px), 좌우 9px, 높이 24px
   - 날짜: 14px #777 (데스크톱은 라벨 오른쪽, 모바일은 제목 아래)
   - 제목: 42px/700/1.5, 자간 -0.4px (모바일 22px)  / 구분선: 1px #CCC, 위아래 15px
   - 본문: #000, 400, 1.5, 자간 -2%, 14px(모바일 16px) / 댓글: 위 100px(1024px 이하 50px), 상단선 1px rgba(0,0,0,.2)
   ========================================================================== */

.kcc-single {
	margin: 180px 0 0;
	font-family: "Pretendard", sans-serif;
	color: #000;
}

.kcc-single__head,
.kcc-single__body {
	box-sizing: border-box;
	max-width: 1090px;
	margin: 0 auto;
}

/* 머리 */
.kcc-single__head {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.kcc-single__meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}
.kcc-single__cat {
	display: inline-block;
	padding: 0 9px;
	background: #3a5fcd;
	color: #fff;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	text-decoration: none;
}
.kcc-single__cat:hover {
	color: #fff;
	background: #2f4fb0;
}
.kcc-single__date {
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
	color: #777;
	text-decoration: none;
}
.kcc-single__date--mobile {
	display: none;
}
.kcc-single__title {
	margin: 0;
	font-size: 42px;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: -0.4px;
	color: #000;
}
.kcc-single__divider {
	width: 100%;
	height: 0;
	margin: 15px 0;
	border: 0;
	border-top: 1px solid #ccc;
}

/* 본문 */
.kcc-single__body {
	padding-top: 20px;
}
.kcc-single__content {
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: -0.02em;
	color: #000;
}
.kcc-single__content img {
	max-width: 100%;
	height: auto;
}

/* 본문 아래 영역: 마일리지 클릭 이미지(.point_item, absolute)의 기준 박스 */
.kcc-single__after {
	position: relative;
}

/* 댓글 */
.kcc-single__comments {
	margin-top: 155px;
	border-top: 1px solid rgba(0, 0, 0, 0.2);
}

/* ---------- 반응형 ---------- */
@media screen and (max-width: 1140px) {
	.kcc-single__head,
	.kcc-single__body {
		padding-left: 20px;
		padding-right: 20px;
	}
}

@media screen and (max-width: 1024px) {
	.kcc-single {
		margin-top: 100px;
	}
	.kcc-single__body {
		padding-top: 20px;
		padding-left: 10px;
		padding-right: 10px;
	}
	.kcc-single__comments {
		margin-top: 105px;
	}
}

@media screen and (max-width: 767px) {
	.kcc-single__head {
		gap: 10px;
		padding-left: 20px;
		padding-right: 20px;
	}
	.kcc-single__cat {
		font-size: 14px;
	}
	.kcc-single__date--desktop {
		display: none;
	}
	.kcc-single__date--mobile {
		display: inline-block;
	}
	.kcc-single__title {
		font-size: 22px;
	}
	.kcc-single__body {
		padding: 0 20px;
	}
	.kcc-single__content {
		font-size: 16px;
	}
}
