/*
Theme Name: Alia Child
Template: alia
*/
@font-face {
	font-family: 'SDGothicNeo';
	font-style: normal;
	font-weight: 400;
	src: url('/font/SDGothicNeo-400.eot');
	src:
		local(※),
		url('/font/SDGothicNeo-400.woff') format('woff');
	font-display: swap;
}
@font-face {
	font-family: 'SDGothicNeo';
	font-style: normal;
	font-weight: 700;
	src: url('/font/SDGothicNeo-700.eot');
	src:
		local(※),
		url('/font/SDGothicNeo-700.woff') format('woff');
	font-display: swap;
}
@font-face {
	font-family: 'SDGothicNeo';
	font-style: normal;
	font-weight: 900;
	src: url('/font/SDGothicNeo-900.eot');
	src:
		local(※),
		url('/font/SDGothicNeo-900.woff') format('woff');
	font-display: swap;
}

@font-face {
	font-family: 'TTHakgyoansimJiugaeR';
	src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2402_keris@1.0/TTHakgyoansimJiugaeR.woff2')
		format('woff2');
	font-weight: normal;
	font-style: normal;
}

body {
	font-family: 'SDGothicNeo', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: 15px;
	background-color: #fdfdfd;
}

.hide {
	display: none;
}

/* (삭제) header_nav 레거시: KCF 헤더(.kcf-site-header/.kcf-header)로 대체 */

/* =========================
 * KCF 헤더 네비게이션 CSS (반응형 포함) - 완전 재구축
 * - 기존 ul.navbar 전역 규칙은 헤더(top-menu)에만 적용되도록 스코프 제한
 * - 모바일은 드로어(kcf-drawer) 사용: header 내 main_menu는 숨김
 * ========================= */

/* (삭제) header_nav 레거시 네비 */

/* (삭제) header_nav 레거시 활성 표시: KCF 사이트 헤더 블록으로 통합 */

.grid_list .entry-summary {
	font-size: 15px;
}

.post_title a:hover {
	color: #ff374a;
}

.grid_list .post_title {
	margin-bottom: 12px;
	font-size: 17px;
	position: relative;
	padding-bottom: 18px;
	line-height: 1.65em;
	font-weight: 400;
}

.full_width_post_single > div > .blog_post_container .post_title,
.post_title {
	margin-top: 0;
	margin-bottom: 14px;
	font-size: 25px;
	line-height: 1.45em;
	letter-spacing: -0.4px;
	font-weight: 400;
	padding: 0;
}
.entry-content {
	font-size: 15px;
	letter-spacing: 0;
	line-height: 1.5;
	letter-spacing: -0.4px;
}

.blog_post_container .post_body {
	margin-left: 0px;
	margin-right: 0px;
}

/* (삭제) header .header_nav 레거시 */

/* (삭제) 상단 네비 dropdown/grid 관련 레거시 CSS: 현재 top-menu는 depth=1 + 커스텀 2차 레이어 사용 */

/* (삭제) header_nav 레거시 레이아웃 */

/* (삭제) ul.navbar 전역/상단 grid 레거시 */

/* (정리) kcf-drawer/kcf-mega 관련 CSS는 파일 하단 "KCF 사이트 헤더" 블록에서 일괄 관리 */

/* 오픈 상태 */
/* (이동) KCF 전역 설정 섹션으로 이동 */

/* 관리자바 오프셋은 "고정(fixed)일 때만" 적용해야 해서 JS에서 동기화합니다. */

.main_content_area {
	margin-top: 0;
}


/* (삭제) 알리아 sticky 헤더 의존 규칙: KCF는 footer.php의 kcfSyncStickyHeader로 독립 동작 */

.expanded_search.header_search > form.search .search_text {
	width: 100px;
	padding-right: 22px;
	/* border: 1px solid #eaeaea; */
	background-color: #f1f1f1;
}

.header_search > form.search > .search_form_icon {
	position: absolute;
	right: 0;
	line-height: 19px;
	height: 100%;
	border: none;
	width: 24px;
	text-align: right;
	cursor: pointer;
	top: 50%;
	right: 5px;
	margin-top: -8px;
}
.blog_post_container .single_post_body {
	margin-left: 0;
	margin-right: 0;
	margin-bottom: 66px;
}

/* 리스트(그리드) 카드: 제목/날짜/요약/버튼 가독성 개선 */
.grid_list .blog_post_container {
	background: #ffffff;
	border: 1px solid rgba(0, 0, 0, 0.06);
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 10px 28px rgba(0, 0, 0, 0.06);
	height: 100%;
	margin-bottom: 0; /* 세로 gap은 col(그리드 아이템)에서 통일 */
}
.grid_list .blog_post_container:hover {
	box-shadow: 0 14px 34px rgba(0, 0, 0, 0.08);
}

.grid_list .blog_post_container {
	--kcf-card-pad-x: 16px; /* 카드 내부 버튼/텍스트와 같은 기준 여백 */
}

.grid_list .blog_post_container .post_body {
	padding: 16px 16px 16px; /* 카드 하단 여백 축소 */
}

/* grid_list(2열/3열) 가로 gap을 15px로 통일 */
.grid_list.row {
	margin-left: -7.5px;
	margin-right: -7.5px;
}
.grid_list.row > .col6,
.grid_list.row.grid_list_3_col > .col4 {
	padding-left: 7.5px;
	padding-right: 7.5px;
	margin-bottom: 15px; /* 세로 gap 15px 통일 */
}

.grid_list .post_title {
	margin: 0;
	padding: 0;
	font-size: 18px;
	line-height: 1.4;
	font-weight: 500;
	letter-spacing: -0.4px;
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap; /* 제목 1줄 고정 */
}

.grid_list .post_header .post-date {
	display: block;
	margin: 8px 0;
	font-size: 12px;
	line-height: 1.2;
	color: #6b7280;
	letter-spacing: -0.2px;
}

/* 카드 CTA 영역: 버튼(좌) + 카테고리 리본(우, 카드 오른쪽에 붙임) */
.grid_list .kcf-card-cta {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 0;
	margin-right: 0;
}

.grid_list .kcf-card-ribbon {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0 18px;
	border-radius: 0;
	background: #3b5bff; /* 요청: 파랑색 */
	color: #ffffff;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: -0.2px;
	text-decoration: none;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 55%;
}
.grid_list .kcf-card-ribbon:hover {
	background: #2f4cff;
	text-decoration: none;
}

/* 이미지 위(좌측) 오버레이 리본 + TailAdmin "Ribbon With Shape" 느낌(우측 V 컷) */
.grid_list .kcf-card-ribbon--overlay {
	position: absolute;
	top: var(--kcf-card-pad-x, 16px);
	right: var(--kcf-card-pad-x, 16px);
	z-index: 2;
	height: 32px; /* 버튼과 비슷한 높이 */
	min-height: 32px;
	padding: 0 12px;
	max-width: 70%;
	border-radius: 5px; /* 버튼처럼 사각 + 라운드 */
	clip-path: none; /* 리본 컷 제거 */
}

.grid_list .post_banner {
	position: relative;
	height: 220px !important;
	overflow: hidden;
	margin-bottom: 0;
	border-radius: 0;
}

.grid_list .post_banner img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover; /* 가로에 맞춰 채우고, 넘치는 부분은 크롭 */
	object-position: center; /* 중앙을 우선 노출 */
	transform: none;
	max-width: none;
}

.grid_list .entry-summary {
	font-size: 15px;
	color: #374151;
	line-height: 1.65;
	display: block; /* 하단 큰 공백(버튼 밀림) 방지 */
}

.grid_list .entry-summary p {
	display: -webkit-box;
	line-clamp: 3;
	-webkit-line-clamp: 3; /* 표시할 줄 수 */
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	margin: 0;
}

.grid_list .blog_post_readmore {
	margin-top: 14px; /* 버튼 위 간격만 유지 */
}

@media screen and (max-width: 900px) {
	.grid_list .post_banner {
		height: 200px !important;
	}
	.grid_list .blog_post_container .post_body {
		padding: 14px 14px 14px;
	}
	.grid_list .blog_post_container {
		--kcf-card-pad-x: 14px;
	}
}

@media screen and (max-width: 520px) {
	.grid_list .post_banner {
		height: 180px !important;
	}
	.grid_list .post_title {
		font-size: 17px;
	}
	.grid_list .post_header .post-date {
		font-size: 12px;
	}
}

.widget_content ul li a.wp-block-latest-posts__post-title {
	white-space: nowrap; /* 한 줄로 표시 */
	overflow: hidden; /* 넘치는 텍스트 숨김 */
	text-overflow: ellipsis; /* 말줄임표(...) 추가 */
	width: 100%; /* 필요에 따라 너비 조정 */
	display: block; /* 블록 요소로 표시 */
}
.widget_content ul li .wp-block-latest-posts__post-excerpt {
	display: -webkit-box;
	line-clamp: 4;
	-webkit-line-clamp: 4; /* 표시할 줄 수 */
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	/* 한글 문장 간격이 과도하게 벌어지는 현상 방지 */
	text-align: left;
	letter-spacing: normal;
	word-spacing: normal;
	word-break: keep-all;
	overflow-wrap: anywhere;
}

.site_footer {
	margin-top: 0;
}

main.site-content {
	margin-top: 0;
	margin-bottom: 0;
}

.post_share_container {
	margin: 30px 0;
}

#description {
	margin-top: 0;
	padding: 0;
	letter-spacing: -1px;
}

#description h2 {
	font-size: 19px;
	font-weight: 400;
}

#description h3 {
	font-size: 16px;
	font-weight: 400;
}

/* 푸터 안내 섹션: H2/H3 → 비헤딩 요소 시각 동일 유지 */
#description .footer-guide-title {
	font-size: inherit;
	font-weight: 400;
	margin: 0;
	padding: 0;
	color: inherit;
	line-height: 1.2;
}
#description .footer-guide-subtitle {
	display: block;
	font-size: 16px;
	font-weight: 400;
	margin: 0;
	padding: 0;
	color: inherit;
}

#description .item p {
	text-align: justify;
}

#description .item p,
#description .item li {
	color: #737373;
}

#description .item_header {
	padding: 0;
	position: relative;
	background: #00224d;
	width: 100%;
	height: 100%;
}

.archive_header {
	margin: 0;
}

/* 단일글/페이지 헤더도 아카이브 헤더처럼 가로 100% 풀블리드로 보이도록 처리 */
.single_post_body > .archive_header.page-header,
.single_page_body > .archive_header.page-header {
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

.archive_header .h_line1 {
	padding: 15px 0;
	background-color: #eff1f4;
	border-top: 1px solid rgba(0, 0, 0, 0.03);
	border-bottom: 1px solid rgba(0, 0, 0, 0.03);
}

.rank-math-breadcrumb {
	font-size: 13px;
	letter-spacing: -1px;
	margin-bottom: 5px;
}

.rank-math-breadcrumb .separator {
	margin: 0 5px;
	color: #999;
}

.rank-math-breadcrumb a {
	color: #666;
}

.rank-math-breadcrumb a:hover {
	color: #000;
	text-decoration: underline;
}

.archive_header .h_line1 h1.title {
	color: #000;
	font-weight: 500;
	font-size: 26px;
	letter-spacing: -1px;
	margin: 0;
	padding: 0;
}

.archive_header .h_line2 {
	padding: 25px 0;
	background-color: #f4f6f7;
	border-bottom: 1px solid rgba(0, 0, 0, 0.03);
}

.archive_header .h_line2 figure {
	margin-bottom: 25px;
}

.archive_header .h_line2 figcaption {
	display: none;
}

.archive_header .h_line2 h2,
.archive_header .h_line2 h3 {
	font-size: 20px;
	font-weight: 500;
	letter-spacing: -1px;
	color: #111111;
	line-height: 1.7;
}

.archive_header .h_line2 h3 {
	font-size: 18px;
}

.archive_header .h_line2 p,
.archive_header .h_line3 p {
	font-weight: 400;
	font-size: 15px;
	letter-spacing: -1px;
	color: #222222;
	text-align: justify;
}

.archive_header .h_line3 p {
	margin-top: 0;
	padding-top: 0;
}

.archive_header .h_line2 p a {
	color: #ff374a;
}

.archive_header .h_line2 p a:hover {
	text-decoration: underline;
}

.archive_header .h_line2 ul,
.archive_header .h_line2 ol {
	padding: 0;
	margin-left: 20px;
	font-size: 15px;
	letter-spacing: -1px;
	color: #222222;
}

.archive_header .h_line2 ul li,
.archive_header .h_line2 ol li {
	line-height: 1.7;
}

.archive_header .h_line3 {
	background-color: #f9fafb;
	border-bottom: 1px solid rgba(0, 0, 0, 0.03);
	/* margin-bottom: 35px; */
}

.archive_header p.intro-text {
	margin-top: 20px;
}
/* 상단 이미지 스타일 */
.archive_header .header-img {
	width: 100%; /* 너비를 컨테이너에 맞춤 */
	height: auto;
	max-height: 350px; /* 이미지 높이 제한 */
	object-fit: cover; /* 이미지 비율 유지 및 꽉 채우기 */
	border-radius: 12px; /* 이미지 모서리 둥글게 */
	margin-top: 20px;
}

/* 프론트페이지 헤더 버튼(CTA 링크) */
.archive_header.page-header .frontpage-cta-links {
	list-style: none;
	padding: 0;
	margin: 25px 0 25px;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

.archive_header.page-header .frontpage-cta-links li {
	margin: 0;
	padding: 0;
	display: flex;
}

.archive_header.page-header .frontpage-cta-links a {
	width: 100%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 12px 14px;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 12px;
	background: #fff;
	color: #222;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: -0.4px;
	text-decoration: none;
	transition:
		transform 0.15s ease,
		box-shadow 0.2s ease,
		border-color 0.2s ease,
		color 0.2s ease,
		background-color 0.2s ease;
}

.archive_header.page-header .frontpage-cta-links a::before {
	content: "›";
	color: rgba(24, 144, 255, 0.85);
	font-size: 18px;
	line-height: 1;
}

.archive_header.page-header .frontpage-cta-links a:hover {
	transform: translateY(-1px);
	border-color: rgba(24, 144, 255, 0.35);
	box-shadow: 0 8px 18px rgba(0, 0, 0, 0.08);
	color: #0b62c3;
	background-color: rgba(24, 144, 255, 0.04);
}

.archive_header.page-header .frontpage-note {
	margin-top: 10px;
	color: #555;
}

@media (max-width: 1024px) {
	.archive_header.page-header .frontpage-cta-links {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 768px) {
	.archive_header.page-header .frontpage-cta-links {
		grid-template-columns: 1fr;
	}

	.archive_header.page-header .frontpage-cta-links a {
		justify-content: flex-start;
	}
}

.list-title,
.archive_header .h_line3 h2 {
	font-size: 20px;
	font-weight: 500;
	letter-spacing: -1px;
	color: #222222;
	padding: 10px 0;
	margin-bottom: 0;
}

.list-title {
	margin: 0;
	padding: 30px 0 10px 0;
	font-size: 24px;
	display: flex;
	align-items: center;
}

.list-title img {
	width: 24px;
	margin-right: 3px;
}

.list-description {
	padding-bottom: 20px;
	letter-spacing: -1px;
	text-align: justify;
}

.list-description.md {
	padding-bottom: 0px;
}

.archive_header .h_line3 h3 {
	font-size: 18px;
	font-weight: 500;
	letter-spacing: -1px;
	color: #111111;
	line-height: 1.7;
}

.archive_header .h_line3 .btn {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px 24px;
	background: linear-gradient(90deg, #1890ff 0%, #40a9ff 100%); /* 주요 컬러에 그라데이션 적용 */
	color: #ffffff; /* 글자 색상 */
	font-size: 16px;
	font-weight: 400;
	border: none;
	border-radius: 6px; /* 버튼 둥글기 설정 */
	text-decoration: none;
	margin-bottom:20px;
	transition:
		background 0.3s ease,
		box-shadow 0.3s ease;
}

/* 호버 효과 */
.archive_header .h_line3 .btn:hover {
	background: linear-gradient(90deg, #40a9ff 0%, #69c0ff 100%); /* 밝은 블루 계열로 변화 */
	box-shadow: 0 6px 14px rgba(0, 0, 0, 0.18);
}

/* 클릭 효과 */
.archive_header .h_line3 .btn:active {
	background: linear-gradient(90deg, #096dd9 0%, #40a9ff 100%); /* 어두운 블루 계열로 변화 */
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
}

/* 아이콘 스타일 */
.archive_header .h_line3 .btn i {
	margin-right: 8px;
	font-size: 18px;
}

.archive_header .h_line3 .cta-box {
	padding-bottom: 10px;
}

.archive_header.page-footer {
	margin: 20px 0 0 0;
}

.archive_header.page-footer .h_line2 {
	padding: 5px 0;
	border: none;
	border-top: 1px solid rgba(0, 0, 0, 0.03);
	border-bottom: 1px solid rgba(0, 0, 0, 0.03);
}

.archive_header.page-footer .h_line3 {
	border: none;
	/* border-top: 1px solid rgba(0, 0, 0, 0.03); */
	margin-bottom: 0;
}

.archive_header.page-footer .h_line2 h2 {
	margin: 25px 0 8px;
	line-height: 1.25;
}

.archive_header.page-footer .h_line2 p {
	margin: 8px 0 12px;
	color: #555;
}

/* 프론트페이지(종합 안내) 퀵 링크/기준 리스트 */
.archive_header.page-footer .frontpage-quick-links {
	list-style: none;
	padding: 0;
	margin: 25px 0 25px;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
}

.archive_header.page-footer .frontpage-quick-links li {
	margin: 0;
	padding: 0;
	display: flex;
}

.archive_header.page-footer .frontpage-quick-links a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	width: 100%;
	justify-content: center;
	padding: 12px 14px;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 14px;
	background: linear-gradient(180deg, #ffffff 0%, rgba(0, 0, 0, 0.015) 100%);
	color: #222;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: -0.3px;
	text-decoration: none;
	transition:
		transform 0.15s ease,
		box-shadow 0.2s ease,
		border-color 0.2s ease,
		color 0.2s ease,
		background 0.2s ease;
}

.archive_header.page-footer .frontpage-quick-links a::before {
	content: "›";
	font-size: 18px;
	line-height: 1;
	color: rgba(40, 167, 69, 0.8);
}

.archive_header.page-footer .frontpage-quick-links a:hover {
	transform: translateY(-1px);
	border-color: rgba(40, 167, 69, 0.35);
	box-shadow: 0 6px 14px rgba(0, 0, 0, 0.08);
	color: #1f7a37;
	background: linear-gradient(180deg, rgba(40, 167, 69, 0.06) 0%, rgba(40, 167, 69, 0.02) 100%);
}

.archive_header.page-footer .frontpage-criteria-title {
	margin: 25px 0 10px;
	font-size: 18px;
	letter-spacing: -0.5px;
	color: #222;
}

.archive_header.page-footer .frontpage-criteria {
	counter-reset: kcf_criteria;
	list-style: none;
	padding: 0;
	margin: 0 0 25px;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 15px;
}

.archive_header.page-footer .frontpage-criteria li {
	position: relative;
	margin: 0;
	padding: 12px 12px 12px 46px;
	background: rgba(0, 0, 0, 0.025);
	border: 1px solid rgba(0, 0, 0, 0.06);
	border-radius: 12px;
	color: #333;
	font-size: 14px;
	line-height: 1.45;
	letter-spacing: -0.3px;
}

.archive_header.page-footer .frontpage-criteria li::before {
	counter-increment: kcf_criteria;
	content: counter(kcf_criteria);
	position: absolute;
	left: 12px;
	top: 12px;
	width: 26px;
	height: 26px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	background: rgba(40, 167, 69, 0.12);
	border: 1px solid rgba(40, 167, 69, 0.25);
	color: #1f7a37;
	font-weight: 700;
}

.archive_header.page-footer .h_line3 .cta-box {
	padding: 20px 0;
}

.archive_header.page-footer .flex-box {
	display: flex;
	align-items: flex-start;
}
.archive_header.page-footer .list-container,
.archive_header.page-footer .photo-container {
	width: 50%;
}

.archive_header.page-footer .grid-container ul {
	padding: 0;
	margin: 0 10px 20px 20px;
}

.archive_header.page-footer .grid-container ul li {
	font-size: 14px;
	color: #666;
	letter-spacing: -1px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.archive_header.page-footer .grid-container {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
	margin-top: 35px;
	margin-bottom: 35px;
	align-items: stretch;
}

/* 개별 아이템 설정 */
.archive_header.page-footer .grid-item {
	background-color: #ffffff;
	padding: 10px 20px;
	border: 1px solid #ddd;
	border-radius: 8px;
	display: flex;
	flex-direction: column;
	transition:
		transform 0.2s ease,
		box-shadow 0.2s ease;
}

.archive_header.page-footer .grid-item .sbtn {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 14px 5px;
	background: linear-gradient(90deg, #28a745 0%, #43b66f 100%); /* 딥 그린 + 포레스트 그린 */
	letter-spacing: -1px;
	color: #ffffff;
	font-size: 14px;
	font-weight: 600;
	border: none;
	border-radius: 6px;
	text-decoration: none;
	margin-bottom: 20px;
	margin-top: auto;
	transition:
		background 0.3s ease,
		box-shadow 0.3s ease;
}

/* 호버 효과 */
.archive_header.page-footer .grid-item .sbtn:hover {
	background: linear-gradient(90deg, #43b66f 0%, #6bcf8e 100%);
	box-shadow: 0 6px 14px rgba(0, 0, 0, 0.18);
}

/* 클릭 효과 */
.archive_header.page-footer .grid-item .sbtn:active {
	background: linear-gradient(90deg, #1f7a37 0%, #3da65c 100%);
	box-shadow: 0 3px 6px;
}

.archive_header.page-footer .grid-item .icon {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px 0;
}

.archive_header.page-footer .grid-item .icon img {
	display: block;
	width: 70px;
}

.archive_header.page-footer .grid-item h3 {
	font-size: 20px;
	margin: 10px 0;
	color: #333;
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 35px;
}

.archive_header.page-footer .grid-item p {
	font-size: 15px;
	line-height: 1.6;
	color: #666;
	text-align: justify;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
	line-clamp: 4;
	overflow: hidden;
}

/* 마우스 호버 효과 */
.archive_header.page-footer .grid-item:hover {
	transform: translateY(-5px);
	box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}
/* 호버 효과 */
.archive_header.page-footer .cta-box .btn:hover {
	background-color: #40a9ff; /* 밝은 블루 계열로 변화 */
	box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}

/* 클릭 효과 */
.archive_header.page-footer .cta-box .btn:active {
	background-color: #096dd9; /* 눌렸을 때 색상 변경 */
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
}

/* 반응형 처리 */
@media (max-width: 1024px) {
	.archive_header.page-footer .grid-container {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 768px) {
	.archive_header.page-footer .grid-container {
		grid-template-columns: 1fr;
	}

	.archive_header.page-footer .frontpage-quick-links {
		grid-template-columns: 1fr;
		gap: 10px;
	}

	.archive_header.page-footer .frontpage-quick-links a {
		width: 100%;
		justify-content: flex-start;
	}

	.archive_header.page-footer .frontpage-criteria {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 1024px) {
	.archive_header.page-footer .frontpage-quick-links {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* 반응형 설정 */
@media (max-width: 768px) {
	.archive_header .h_line3 .btn {
		padding: 15px 20px;
		font-size: 15px;
		width: 100%;
		justify-content: center;
	}
}

@media screen and (max-width: 900px) {
	.archive_header .h_line1 h1.title {
		font-size: 20px;
		letter-spacing: -1px;
	}

	.archive_header .h_line3 h2 {
		font-size: 18px;
	}
	.list-title {
		font-size: 18px;
		letter-spacing: -1px;
	}
}

#description .item_header .line1 {
	padding: 10px 0;
	background-color: #ff204e;
	color: #ffffff;
	font-weight: 400;
	font-size: 25px;
}

#description .item_header .line1 .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
}
#description .item_header .line1 .container::before,
#description .item_header .line1 .container::after {
	display: none;
}

#description .item_header .line2 {
	padding: 20px 0;
	background-color: #a0153e;
	color: #ffffff;
	font-weight: 400;
	font-size: 15px;
	text-align: justify;
}

#description .item_header .line3 {
	padding: 20px 0;
	background-color: #5d0e41;
	color: #ffffff;
	font-weight: 400;
	font-size: 21px;
	text-align: justify;
}

#description .item_header .line4 {
	padding: 20px 0;
	background-color: #00224d;
	color: #ffffff;
	font-weight: 400;
	font-size: 15px;
}

#description .item_header .line2 a,
#description .item_header .line4 a {
	color: #ffffff;
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 3px;
}

#description .item_header .line2 a:visited,
#description .item_header .line4 a:visited {
	color: #ffffff;
}

#description .item_header .line2 a:hover,
#description .item_header .line4 a:hover {
	color: #ffe1b8;
}

#description .item_header .line2 a:focus-visible,
#description .item_header .line4 a:focus-visible {
	outline: 2px solid #ffffff;
	outline-offset: 3px;
	border-radius: 3px;
}

#description .item_header .line4 ol {
	margin: 0;
	padding: 15px 0;
	padding-left: 15px;
}

#description .grid-2set {
	width: 100%;
	border-radius: 3px;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 50px;
	list-style-type: none;
	padding: 0px;
	margin: 0;
	margin: 20px 0;
}

#description .item h3 {
	font-size: 18px;
}

#description .item .images {
	display: block;
	border-radius: 7px;
	height: 200px;
	overflow: hidden;
	position: relative;
	margin-bottom: 10px;
}

#description .item .images img {
	width: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

#description .item p {
	display: -webkit-box;
	line-clamp: 5;
	-webkit-line-clamp: 5; /* 표시할 줄 수 */
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}
.telegram-button {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 180px;
	height: 60px;
	background-color: #5d0e41;
	color: #ffffff;
	font-size: 13px;
	font-weight: 400;
	text-decoration: none;
	border-radius: 25px;
	transition: background-color 0.3s ease;
}

.telegram-button:hover {
	background: #00224d;
	color: #ffffff;
}
.telegram-button div span {
	margin-bottom: 5px;
}
.telegram-button div span,
.telegram-button div strong {
	display: block;
	line-height: 1;
}

.telegram-icon {
	width: 34px;
	height: 34px;
	margin-right: 10px;
}
.site_footer {
	background-color: #15191a;
}
#footer-menus {
	border-top: 1px solid #1a1a1a;
	background-color: #1f2324;
	padding: 5px 0;
}

#footer-menus-2nd {
	border-top: 1px solid #191919;
	background-color: #121515;
	padding: 5px 0;
}

#footer-menu {
	border-top: none;
	background-color: #1f2324;
}

#footer-2nd-menu {
	border-top: none;
	background-color: #121515;
}

/* 푸터 메뉴(1줄/2줄) 레이아웃: 모바일 2열, PC 1줄(가로 나열) */
#footer-menus ul.navbar,
#footer-menus-2nd ul.navbar {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 0px 20px;
	align-items: center;
}

/* 모바일: 한 줄에 2열(그리드 2컬럼) */
@media (max-width: 900px) {
	#footer-menus ul.navbar,
	#footer-menus-2nd ul.navbar {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* PC: 1줄에 모두 표시(가로 나열, 필요 시 가로 스크롤로 보존) */
@media (min-width: 901px) {
	#footer-menus ul.navbar,
	#footer-menus-2nd ul.navbar {
		grid-auto-flow: column;
		grid-auto-columns: max-content;
		justify-content: center;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
}

#footer-menus ul.navbar > li.menu-item,
#footer-menus-2nd ul.navbar > li.menu-item {
	margin: 0;
	padding: 0;
}

#footer-menus ul.navbar > li.menu-item > a {
	color: #fff;
	display: block;
	font-size: 15px;
	font-weight: 400;
	letter-spacing: -1px;
	padding: 10px 0;
	text-decoration: none;
	transition: color 0.2s ease;
}

#footer-menus-2nd ul.navbar > li.menu-item > a {
	color: #fff;
	display: block;
	font-size: 15px;
	font-weight: 400;
	letter-spacing: -1px;
	padding: 10px 0;
	text-decoration: none;
	transition: color 0.2s ease;
}

#footer-menus ul.navbar > li.menu-item > a:hover,
#footer-menus-2nd ul.navbar > li.menu-item > a:hover {
	color: #ff214e;
}

#footer-menus ul.navbar > li.menu-item > a:focus-visible,
#footer-menus-2nd ul.navbar > li.menu-item > a:focus-visible {
	outline: 2px solid rgba(255, 33, 78, 0.55);
	outline-offset: 2px;
}

#footer_credits {
	background-color: #0c0e0f;
	padding: 10px 0;
}

.kcf-domain-move {
	margin: 30px auto 20px;
	padding: 20px;
	border: 1px solid color-mix(in oklab, #f04438 30%, transparent);
	border-radius: 10px;
	background-color: color-mix(in oklab, #f04438 15%, transparent);
	border-color: color-mix(in oklab, #f04438 30%, transparent);
	text-align: left;
	position: relative;
	display: flex;
	gap: 20px;
	align-items: flex-start;
}

.kcf-domain-move__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border-radius: 999px;
	color: #F04438;
	border: 2px solid #F04438;
	background: rgba(255, 33, 78, 0.10);
	flex: 0 0 34px;
	font-weight: 900;
	line-height: 1;
	margin-top: 2px;
}

.kcf-domain-move__content {
	flex: 1 1 auto;
	min-width: 0;
}

.kcf-domain-move__title{
	display: inline-block;
	margin: 0 0 5px 0;
	color: #ffffff;
	font-weight: 400;
	font-size: 18px;
	letter-spacing: -0.5px;
}

.kcf-domain-move__text {
	margin: 0;
	font-size: 14px;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.7);
	font-weight: 700;
	letter-spacing: -0.5px;
}

.kcf-domain-move__from {
	color: rgba(255, 255, 255, 0.92);
}

.kcf-domain-move__to {
	color: #ffffff;
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 3px;
}

.kcf-domain-move__to:hover {
	color: #ffe1b8;
}

.kcf-domain-move__to:focus-visible {
	outline: 2px solid #ffffff;
	outline-offset: 3px;
	border-radius: 4px;
}

.kcf-domain-move__desc {
	margin: 5px 0 0;
	font-size: 12px;
	letter-spacing: -0.5px;
	color: rgba(255, 255, 255, 0.5);
}

@media (max-width: 768px) {
	.kcf-domain-move {
		padding: 18px 16px;
		gap: 12px;
	}
	.kcf-domain-move__text {
		font-size: 14px;
	}
	.kcf-domain-move__desc {
		font-size: 12.5px;
	}
}

.DMCA {
	padding: 0 0 30px 0;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}

.DMCA a.dmca-badge img {
	display: inline-block;
	margin-left: -2px;
}

.DMCA a.cloudflare-badge {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size:13px;
	letter-spacing: -1px;
	color:#aaa;
}

.DMCA a.cloudflare-badge:hover {
	color: #ff374a;
}

.DMCA a.cloudflare-badge img {
	display: inline-block;
	width:110px;
	margin-left: 5px;
	margin-right: 3px;
	background-color: #272727;

}

.DMCA a.cloudflare-badge strong {
	letter-spacing: 0;
}

@media (max-width: 768px) {
	.DMCA {
		flex-direction: column;
		justify-content: center;
	}
	.DMCA a.cloudflare-badge {
		flex-direction: column;
	}
}

.footer_sns {
	padding: 10px 0 15px 0;
}

.footer_sns a {
	display: inline-flex;
	margin-right: 1px;
}
.footer_sns a img {
	width: 28px;
	opacity: 0.4;
	transition: all 0.3s ease;
}

.footer_sns a:hover img {
	opacity: 1;
}

@media screen and (max-width: 910px) {
	ul.navbar > li {
		position: relative;
	}
	.expanded_search.header_search > form.search .search_text {
		width: 160px;
	}

	#description .grid-2set {
		grid-template-columns: repeat(1, 1fr);
	}

	.telegram-button {
		width: auto;
		min-width: 160px;
	}
}
@media screen and (max-width: 580px) {
	ul.navbar > li {
		position: relative;
	}

	.footer_sns {
		padding-right: 80px;
	}

	.footer_sns a {
		padding-bottom: 5px;
	}
	.footer_sns a img {
		width: 32px;
	}
}

@font-face {
	font-family: sdgothicneo;
	font-style: normal;
	font-weight: 400;
	src: url(/font/SDGothicNeo-400.eot);
	src:
		local(※),
		url(/font/SDGothicNeo-400.woff) format('woff');
	font-display: swap;
}

@font-face {
	font-family: sdgothicneo;
	font-style: normal;
	font-weight: 700;
	src: url(/font/SDGothicNeo-700.eot);
	src:
		local(※),
		url(/font/SDGothicNeo-700.woff) format('woff');
	font-display: swap;
}

@font-face {
	font-family: sdgothicneo;
	font-style: normal;
	font-weight: 900;
	src: url(/font/SDGothicNeo-900.eot);
	src:
		local(※),
		url(/font/SDGothicNeo-900.woff) format('woff');
	font-display: swap;
}

@font-face {
	font-family: tthakgyoansimjiugaer;
	src: url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2402_keris@1.0/TTHakgyoansimJiugaeR.woff2)
		format('woff2');
	font-weight: 400;
	font-style: normal;
}

body {
	font-family:
		sdgothicneo,
		helvetica neue,
		Helvetica,
		Arial,
		sans-serif;
	font-size: 15px;
}

/* 단일 글 하단 추천 리스트(콘텐츠 내 #reviewList) - 카드형으로 정리 */
#reviewList {
	width: 100%;
	max-width: 880px;
	padding: 0;
	margin: 42px auto 0;
	font-family:
		sdgothicneo,
		helvetica neue,
		Helvetica,
		Arial,
		sans-serif;
}

#reviewList h2 {
	padding: 0;
	margin: 0 0 14px;
	font-size: 26px;
	font-weight: 700;
	letter-spacing: -0.6px;
}

#reviewList ol {
	padding: 0;
	margin: 0;
	list-style: none;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 15px;
}

#reviewList li {
	margin: 0;
}

#reviewList li .siteCard {
	height: 100%;
	padding: 12px;
	border-radius: 16px;
	border: 1px solid rgba(0, 0, 0, 0.06);
	box-shadow: 0 10px 28px rgba(0, 0, 0, 0.06);
	background: #fff;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

#reviewList li .siteCard a > video,
#reviewList li .siteCard a > img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 12px;
}

#reviewList li .siteCard .siteInfo {
	margin: 0;
	flex: none;
}

#reviewList li .siteCard .siteInfo strong {
	display: -webkit-box;
	line-clamp: 2;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	font-size: 16px;
	letter-spacing: -0.4px;
	font-weight: 600;
	line-height: 1.4;
}

#reviewList li .siteCard .siteInfo span {
	display: inline-flex;
	margin-right: 5px;
}
#reviewList li .siteCard .siteInfo span img {
	width: 18px;
	margin-right: 2px;
}

#reviewList li .siteCard .siteInfo p {
	margin: 0;
	padding: 0;
	margin-top: 5px;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: -1px;
	line-height: 1.5;
	color: #777;
}

/* (있을 경우) reviewList 내부 버튼 스타일을 사이트 톤에 맞게 정리 */
#reviewList li .siteCard .bonusButton {
	--primary-color: #ff5c57;
	--secondary-color: #fff;
	--hover-color: #ff374a;
	--arrow-width: 10px;
	--arrow-stroke: 2px;
	box-sizing: border-box;
	border: 0;
	border-radius: 10px;
	color: var(--secondary-color);
	background: var(--primary-color);
	display: inline-flex;
	transition: 0.2s background;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 44px;
	font-size: 14px;
	font-weight: 500;
	text-decoration: none;
	letter-spacing: -0.6px;
}

#reviewList li .siteCard .bonusButton .arrow-wrapper {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-left: 5px;
}

#reviewList li .siteCard .bonusButton .arrow {
	margin-top: -1px;
	width: var(--arrow-width);
	background: var(--primary-color);
	height: var(--arrow-stroke);
	position: relative;
	transition: 0.2s;
}

#reviewList li .siteCard .bonusButton .arrow::before {
	content: '';
	box-sizing: border-box;
	position: absolute;
	border: solid var(--secondary-color);
	border-width: 0 var(--arrow-stroke) var(--arrow-stroke) 0;
	display: inline-block;
	top: -3px;
	right: 3px;
	transition: 0.2s;
	padding: 3px;
	transform: rotate(-45deg);
}

#reviewList li .siteCard .bonusButton:hover {
	background-color: var(--hover-color);
}

#reviewList li .siteCard .bonusButton:hover .arrow {
	background: var(--secondary-color);
}

#reviewList li .siteCard .bonusButton:hover .arrow:before {
	right: 0;
}

#rating-form .alia_select_container {
    position: relative;
    background: #fff;
    padding: 0;
    height: auto;
    border-radius: 4px;
}
#rating-form .alia_select_container > i, #rating-form .alia_select_container form i {
    position: absolute;
    line-height: 54px;
    right: 10px;
    color: inherit;
    z-index: 1;
}

@media screen and (max-width: 900px) {
	#reviewList ol {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media screen and (max-width: 520px) {
	#reviewList ol {
		grid-template-columns: 1fr;
	}
}

/* 문서 테이블 설정 CSS */

table.table_casino79 {
	border-collapse: collapse;
}

table.table_casino79 tbody tr:nth-child(even) {
	background-color: #fbfbfb;
}

table.table_casino79.table_td_center thead tr th,
table.table_casino79.table_td_center tbody tr td,
table.table_casino79.table_td_center tfoot tr td {
	text-align: center;
	vertical-align: middle;
}

table.table_casino79.table_td_left thead tr th,
table.table_casino79.table_td_left tbody tr td,
table.table_casino79.table_td_left tfoot tr td {
	text-align: left;
	vertical-align: middle;
}

table.table_casino79 caption {
	caption-side: bottom;
	padding-top: 10px;
	border: none;
}

/* YARPP */
.yarpp-related {
	margin-bottom: 1em;
	margin-top: 1em;
}

.yarpp-related h3 {
	font-size: 130%;
	font-weight: 700;
	margin: 0;
	padding: 0;
	margin-bottom: 10px !important;
	text-transform: capitalize;
}

.yarpp-thumbnails-horizontal {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(4, 1fr); /* 5개의 동일한 너비의 컬럼 */
	gap: 10px; /* 그리드 아이템 사이 간격 */
}

.yarpp-thumbnails-horizontal .yarpp-thumbnail {
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	display: flex !important;
	align-items: left;
	justify-content: center;
	flex-direction: column;
	box-sizing: border-box;
	padding: 10px !important;
}

.yarpp-thumbnails-horizontal .yarpp-thumbnail {
	border: 1px solid hsla(0, 0%, 50%, 0.2) !important;
	vertical-align: top;
}

.yarpp-thumbnail > img,
.yarpp-thumbnail-default {
	width: 100% !important;
	margin: 0 !important;
}

.yarpp-thumbnails-horizontal .yarpp-thumbnail-title {
	margin: 0 !important;
	margin-top: 10px !important;
	width: 100% !important;
}

@media screen and (max-width: 900px) {
	.yarpp-thumbnails-horizontal {
		width: 100%;
		display: grid;
		grid-template-columns: repeat(2, 1fr); /* 5개의 동일한 너비의 컬럼 */
		gap: 10px; /* 그리드 아이템 사이 간격 */
	}
}

body.custom-background .site {
	background-color: #fff;
	max-width: 100%;
	margin: 0 auto;
}

.widget_content ul li a {
	color: #fff;
	font-size: 14px;
	font-weight: bold;
}

.widget_content {
	font-size: 14px;
	color: #eee;
	line-height: 1.6em;
}

.footer_credits,
.footer_credits_info {
	font-size: 12px;
	color: #ddd;
	letter-spacing: 0;
	padding: 12px 0;
}

.blog_post_readmore a.more-link {
	display: inline-flex;
	align-items: center;
	padding: 8px 20px;
	background-color: #ff5c57; /* 최적화된 주요 컬러 설정 */
	color: #ffffff; /* 글자 색상 */
	font-size: 14px;
	font-weight: 400;
	letter-spacing: -1px;
	border: none;
	border-radius: 6px;
	text-decoration: none;
	transition:
		background-color 0.3s ease,
		box-shadow 0.2s ease;
}

/* 호버 효과 */
.blog_post_readmore a.more-link:hover {
	background-color: #ff867d; /* 최적화된 밝은 빨강 계열 */
	box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}

/* 클릭 효과 */
.blog_post_readmore a.more-link:active {
	background-color: #cc2e35; /* 눌렸을 때 색상 변경 */
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
}

/* 아이콘 스타일 */
.blog_post_readmore a.more-link i {
	margin-left: 8px;
	font-size: 14px;
}

.casino79-list,
.casino79-list li {
	list-style: none;
	padding: 0;
	margin: 0;
}

.grid_list .post_title a:before,
.grid_list .post_title a::after {
	content: none;
	visibility: hidden;
}

/* FAQ 섹션 스타일 */
#faq-section {
	background-color: #ffffff;
}

#faq-section .header-line {
	padding: 5px 0;
	background-color: #f4f6f7;
	border-top: 1px solid rgba(0, 0, 0, 0.03);
	border-bottom: 1px solid rgba(0, 0, 0, 0.03);
}

#faq-section .header-line p {
	font-weight: 400;
	font-size: 15px;
	letter-spacing: -1px;
	color: #222222;
	text-align: justify;
}

/* FAQ 제목 스타일 */
#faq-section h2 {
	font-size: 20px;
	font-weight: 400;
	color: #111111;
}

#faq-section .body-line {
	padding: 40px 0;
	background-color: #f9fafb;
}

/* 개별 FAQ 항목 스타일 */
#faq-section .faq-item {
	margin-top: 20px;
	background-color: #ffffff;
	padding: 20px;
	border: 1px solid #ddd;
	border-radius: 8px;
	transition:
		transform 0.2s ease,
		box-shadow 0.2s ease;
}

#faq-section .faq-item:first-child {
	margin-top: 0;
}
/* 마우스 호버 효과 */
#faq-section .faq-item:hover {
	transform: translateY(-5px);
	box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}

/* 질문 스타일 */
#faq-section .faq-item h3 {
	font-size: 18px;
	font-weight: 400;
	color: #222222;
	display: flex;
	align-items: center;
	cursor: pointer;
	margin-bottom: 12px;
	padding: 0;
	margin: 0;
	letter-spacing: -1px;
}

/* 이모지 간격 조정 */
#faq-section .faq-item h3::before {
	margin-right: 8px;
}

/* 답변 스타일 */
#faq-section .faq-item p {
	font-weight: 400;
	font-size: 15px;
	letter-spacing: -1px;
	color: #666;
	text-align: justify;
	margin: 10px 0 0 0;
}

#faq-section .item-box {
	display: flex;
	padding: 0 10px;
}

#faq-section .item-box .icon_f {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	padding-right: 25px;
	margin-right: 25px;
	border-right: 1px solid #eee;
}

#faq-section .item-box .icon_f img {
	width: 50px;
}

#faq-section .item-box .content_f {
	flex: 1;
}

/* 모바일 최적화 */
@media (max-width: 768px) {
	#faq-section h2 {
		font-size: 24px;
	}

	#faq-section .faq-item h3 {
		font-size: 18px;
	}

	#faq-section .faq-item p {
		font-size: 14px;
	}
}

.site_footer .title-flex {
	display: flex;
}

.site_footer .title-flex h2 {
	font-size: 18px;
	font-weight: 400;
	letter-spacing: -1px;
	margin: 0 0 10px 0;
	padding: 0;
}

.site_footer .title-flex a {
	letter-spacing: -1px;
	margin-left: auto;
	color: #fff;
}

.site_footer .title-flex a:hover {
	color: #ff374a;
}

.wp-block-latest-posts__featured-image img {
	height: auto;
	max-width: 100% !important;
	width: 100% !important;
}

.widget_content ul li a {
	display: flex;
	width: 100%;
}

#review-section {
	margin-top: 36px;
	padding: 22px;
	border-radius: 16px;
	border: 1px solid rgba(0, 0, 0, 0.06);
	background: #ffffff;
	box-shadow: 0 10px 28px rgba(0, 0, 0, 0.06);
}

#review-section h2 {
	font-size: 18px;
	font-weight: 700;
	line-height: 1.4;
	margin: 0 0 14px;
	letter-spacing: -0.4px;
}

#review-section .review-summary {
	display: flex;
	align-items: center;
	gap: 10px;
	background-color: #f8fafc;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 12px;
	padding: 14px 16px;
	color: #374151;
}

#review-section .review-summary > div:first-child {
	margin-right: 0;
}

#review-section form {
	margin-top: 14px;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 12px;
	align-items: center; /* PC에서 세로 중앙 정렬 */
}

#review-section form select,
#review-section form button {
	height: 52px; /* 라인 정렬을 위해 동일 높이 */
	border: 1px solid rgba(0, 0, 0, 0.12);
	border-radius: 10px;
	box-sizing: border-box;
}

#review-section form select {
	width: 100%;
	min-width: 0;
	padding: 0 14px;
	background: #ffffff;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	background-image:
		linear-gradient(45deg, transparent 50%, #6b7280 50%),
		linear-gradient(135deg, #6b7280 50%, transparent 50%);
	background-position:
		calc(100% - 18px) 50%,
		calc(100% - 12px) 50%;
	background-size:
		6px 6px,
		6px 6px;
	background-repeat: no-repeat;
}

#review-section form button {
	margin-left: 0;
	padding: 0 20px;
	min-width: 160px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	background-color: #ff5c57; /* 최적화된 주요 컬러 설정 */
	color: #ffffff; /* 글자 색상 */
	font-size: 14px;
	font-weight: 600;
	letter-spacing: -0.6px;
	border: none;
	border-radius: 10px;
	text-decoration: none;
	transition:
		background-color 0.3s ease,
		box-shadow 0.2s ease;
}

#review-section form select:focus-visible,
#review-section form button:focus-visible {
	outline: 3px solid rgba(255, 92, 87, 0.25);
	outline-offset: 2px;
}

#review-section #rating-result {
	margin-top: 10px;
	font-size: 14px;
	color: #374151;
	letter-spacing: -0.4px;
}

@media screen and (max-width: 520px) {
	#review-section {
		padding: 18px;
	}
	#review-section form {
		grid-template-columns: 1fr; /* 모바일: 겹침 방지 */
		align-items: stretch;
	}
	#review-section form button {
		width: 100%;
		min-width: 0;
	}
}

/* 호버 효과 */
#review-section form button:hover {
	background-color: #ff867d; /* 최적화된 밝은 빨강 계열 */
	box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}

/* 클릭 효과 */
#review-section form button:active {
	background-color: #cc2e35; /* 눌렸을 때 색상 변경 */
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
}

.author-box {
	display: flex;
	align-items: flex-start;
	background: #f9f9f9;
	border: 1px solid #e2e2e2;
	border-radius: 5px;
	padding: 30px;
	margin-top: 40px;
	font-family: 'Pretendard', sans-serif;
	color: #333;
	gap: 30px;
	flex-wrap: wrap;
}

.author-box img {
	width: 100px;
	height: 100px;
	border-radius: 40px;
	object-fit: cover;
	flex-shrink: 0;
}

.author-info {
	flex: 1;
	min-width: 200px;
}

.author-info div.author-name {
	margin: 0 0 6px 0;
	font-size: 18px;
	font-weight: 600;
}

.author-info p {
	margin: 0;
	font-size: 15px;
	color: #666;
	line-height: 1.6;
	letter-spacing: -1px;
	text-align: justify;
}

.meta-info {
	margin-top: 10px;
	font-size: 13px;
	color: #888;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
}

.meta-info .meta_separator {
	color: #ccc;
}

.post_banner.page_banner {
	margin-top: 25px;
}

.full_width_post_single > div > .blog_post_container .post_title:after,
.full_width_post_single > div > .blog_post_container .post_title:before {
	content: none;
	visibility: hidden;
}

.blog_post_container .single_post_body {
	margin: 0;
}

.full_width_post_single .post_banner {
	margin-top: 25px;
}

.full_width_post_single .thepost_row .post_banner {
	margin-top: 0;
}

/* ✅ 반응형 스타일 */
@media screen and (max-width: 500px) {
	.author-box {
		flex-direction: column;
		align-items: center;
		text-align: center;
	}

	.author-box img {
		margin-bottom: 10px;
	}

	.author-info h4 {
		font-size: 16px;
	}

	.author-info p {
		font-size: 13px;
	}

	.meta-info {
		justify-content: center;
		font-size: 12px;
	}
}

/* 메인 하단 색션**/

/* 메인 컨테이너 */
.main-section-content {
	padding: 30px 20px;
	background-color: #ffffff;
	border-radius: 12px;
}

.main-section-content.casino-trend-section {
	border-top: 1px solid rgba(0, 0, 0, 0.05);
}

.main-section-content.bgcolor {
	border-top: 1px solid rgba(0, 0, 0, 0.05);
	border-bottom: 1px solid rgba(0, 0, 0, 0.05);
	background-color: #f9fafb;
}

.main-section-content h2 {
	font-size: 20px;
	font-weight: 500;
	letter-spacing: -1px;
	color: #222222;
	padding: 0;
	margin: 0;
}

.main-section-content p {
	font-size: 15px;
	line-height: 1.6;
	color: #666;
	text-align: justify;
}

/* 리스트 */
.main-section-content ul.trend-list,
.main-section-content ul.verify-flow,
.main-section-content ul.checklist,
.main-section-content ol.safety-step-list {
	padding-left: 10px;
	margin: 10px 0 0 15px;
}

.main-section-content ul.checklist {
	margin-top: 20px;
}

.main-section-content ul.trend-list li,
.main-section-content ul.verify-flow li,
.main-section-content ul.checklist li,
.main-section-content ol.safety-step-list li {
	font-size: 15px;
	color: #666;
	letter-spacing: -1px;
	line-height: 1.5;
	margin-top: 10px;
}

.main-section-content ul li:first-child,
.main-section-content ol li:first-child {
	margin-top: 0;
}

/* 테이블 스타일 */
.main-section-content table.support-table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	margin: 24px 0;
	font-size: 14px;
	border-radius: 8px; /* 전체 테이블 둥글게 */
	overflow: hidden; /* border-radius 적용 위해 필요 */
	border: none;
}

/* 헤더 스타일 */
.main-section-content .support-table thead {
	background: linear-gradient(90deg, #0052cc 0%, #2684ff 100%);
	color: #fff;
	text-align: center;
}

.main-section-content .support-table th {
	padding: 14px 12px;
	font-weight: 600;
	letter-spacing: -0.5px;
	white-space: nowrap;
	border: none;
	text-align: center;
}

/* 셀 스타일 - 가로줄만 있음 */
.main-section-content .support-table td {
	padding: 12px 10px;
	color: #333;
	text-align: center;
	border: none;
	border-bottom: 1px solid rgba(0, 0, 0, 0.05);
	background-color: #fff;
	border-left: none;
	border-right: none;
}

/* 사이트명 강조 */
.main-section-content .support-table td:first-child {
	font-weight: 600;
	color: #003366;
}

/* 마지막 행 하단선 제거 (선택사항) */
.main-section-content .support-table tr:last-child td {
	border-bottom: none;
}

/* 반응형 */
@media (max-width: 768px) {
	.support-table {
		display: block;
	}

	.support-table thead {
		display: none;
	}

	.support-table tbody {
		display: flex;
		flex-wrap: wrap;
		gap: 12px;
	}

	.support-table tr {
		display: block;
		width: calc(50% - 8px); /* 한 줄에 2개 */
		background: #ffffff;
		border-radius: 12px;
		padding: 0;
		box-sizing: border-box;
		overflow: hidden; /* 테두리 둥글게 적용 시 오버플로 제거 */
		box-shadow: 0 4px 10px rgba(0, 0, 0, 0.04); /* 약간의 그림자 */
	}

	.support-table td {
		display: block;
		width: 100%;
		padding: 8px 10px;
		position: relative;
		font-size: 14px;
		line-height: 1.5;
		color: #333;
		border-bottom: 1px solid rgba(0, 0, 0, 0.05);
	}

	/* 사이트 이름 스타일 (첫 번째 td) */
	.support-table td:first-child {
		background: linear-gradient(90deg, #0052cc 0%, #2684ff 100%);
		font-weight: 700;
		font-size: 15px;
		text-align: center;
		padding: 12px 10px;
	}

	.support-table td:first-child a {
		color: #ffffff;
	}

	/* data-label 레이블 (다른 항목만) */
	.support-table td:not(:first-child)::before {
		content: attr(data-label);
		display: block;
		font-weight: 600;
		color: #0070f3;
		margin-bottom: 4px;
		font-size: 13px;
	}

	.support-table td:last-child {
		border-bottom: none;
	}

	.main-section-content .support-table tr:last-child td {
		border-bottom: 1px solid rgba(0, 0, 0, 0.05);
	}
}

/* 작은 화면에서는 한 줄에 1개 카드로 */
@media (max-width: 480px) {
	.support-table tbody {
		flex-direction: column;
	}

	.support-table tr {
		width: 100%;
	}
}

/* 출처 */
.main-section-content .source-note {
	font-size: 14px;
	color: #666;
	margin: 12px 0 0 0;
}

.main-section-content .source-note a {
	color: #007c5a;
	text-decoration: underline;
}

/* CTA 버튼 */
.main-section-content .sbtn {
	display: inline-block;
	background: linear-gradient(90deg, #28a745 0%, #43b66f 100%);
	color: #fff;
	padding: 12px 20px;
	border-radius: 8px;
	text-decoration: none;
	font-size: 14px;
	font-weight: 500;
	margin-top: 20px;
	transition:
		background 0.3s ease,
		box-shadow 0.3s ease;
}

.main-section-content .sbtn:hover {
	background: linear-gradient(90deg, #43b66f 0%, #6bcf8e 100%);
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.15);
}

/* CTA 버튼 - 파란 계열 */
.main-section-content .sbbtn {
	display: inline-block;
	background: linear-gradient(90deg, #1976d2 0%, #42a5f5 100%);
	color: #fff;
	padding: 12px 20px;
	border-radius: 8px;
	text-decoration: none;
	font-size: 14px;
	font-weight: 500;
	margin-top: 20px;
	transition:
		background 0.3s ease,
		box-shadow 0.3s ease;
}

.main-section-content .sbbtn:hover {
	background: linear-gradient(90deg, #42a5f5 0%, #90caf9 100%);
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.15);
}

/* CTA 버튼 - 빨강 계열 */
.main-section-content .srbtn {
	display: inline-block;
	background: linear-gradient(90deg, #e53935 0%, #f0625d 100%);
	color: #fff;
	padding: 12px 20px;
	border-radius: 8px;
	text-decoration: none;
	font-size: 14px;
	font-weight: 500;
	margin-top: 20px;
	transition:
		background 0.3s ease,
		box-shadow 0.3s ease;
}

.main-section-content .srbtn:hover {
	background: linear-gradient(90deg, #f0625d 0%, #ff8a80 100%);
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.15);
}

/* 푸터(프론트페이지) 공통 리스트 그리드 표준화 */
.main-section-content .trend-grid,
.main-section-content .checklist-grid,
.main-section-content .verify-grid,
.safety-step-grid {
	/* 기본 컬러셋(필요 시 각 리스트에서 변수만 덮어쓰기) */
	--kcf_grid_bg: #f8f8f8;
	--kcf_grid_border: rgba(0, 0, 0, 0.06);
	--kcf_grid_accent: #52c41a;
	--kcf_grid_text: #444;
	--kcf_grid_hover_bg: rgba(82, 196, 26, 0.06);

	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px 24px;
	list-style: none;
	padding: 0;
	margin: 24px 0;
}

.main-section-content .verify-grid {
	--kcf_grid_bg: #fdf6f6;
	--kcf_grid_accent: #e53935;
	--kcf_grid_hover_bg: rgba(229, 57, 53, 0.06);
}

/* 섹션별 컬러 오버라이드: 온라인카지노 트렌드(블루) */
.main-section-content.casino-trend-section .trend-grid {
	--kcf_grid_accent: #1890ff;
	--kcf_grid_hover_bg: rgba(24, 144, 255, 0.06);
}

/* 섹션별 컬러 오버라이드: 토토 체크리스트(퍼플) */
.main-section-content.toto-safety-guide .safety-step-grid {
	--kcf_grid_accent: #722ed1;
	--kcf_grid_hover_bg: rgba(114, 46, 209, 0.06);
}

/* 섹션별 컬러 오버라이드: 슬롯 이용 가이드(옐로우) */
.main-section-content.slot-safety-guide .checklist-grid {
	--kcf_grid_accent: #faad14;
	--kcf_grid_hover_bg: rgba(250, 173, 20, 0.08);
}

.main-section-content .trend-grid li,
.main-section-content .checklist-grid li,
.main-section-content .verify-grid li,
.safety-step-grid li {
	position: relative;
	padding: 16px 18px;
	background-color: var(--kcf_grid_bg);
	border: 1px solid var(--kcf_grid_border);
	border-left: 4px solid var(--kcf_grid_accent);
	border-radius: 8px;
	font-size: 14px;
	color: var(--kcf_grid_text);
	line-height: 1.6;
	letter-spacing: -0.5px;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04);
	transition:
		transform 0.3s ease,
		box-shadow 0.3s ease,
		background-color 0.3s ease;

	/* 높이 통일(2줄 기준). 넘치면 2줄에서 잘림 */
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow: hidden;
	min-height: 3.2em;
}

.main-section-content .trend-grid li strong,
.main-section-content .checklist-grid li strong,
.main-section-content .verify-grid li strong {
	color: var(--kcf_grid_accent);
	font-weight: 700;
}

.main-section-content .trend-grid li:hover,
.main-section-content .checklist-grid li:hover,
.main-section-content .verify-grid li:hover,
.safety-step-grid li:hover {
	background-color: var(--kcf_grid_hover_bg);
	transform: translateY(-3px);
	box-shadow: 0 6px 12px rgba(0, 0, 0, 0.08);
}

/* 애니메이션 정의 */
@keyframes fadeSlideUp {
	from {
		opacity: 0;
		transform: translateY(20px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* 반응형 */
@media screen and (max-width: 768px) {
	.main-section-content h2 {
		font-size: 22px;
	}

	.main-section-content .sbtn {
		width: 100%;
		text-align: center;
	}

	.main-section-content table.support-table {
		font-size: 14px;
	}
	.main-section-content .trend-grid,
	.main-section-content .checklist-grid,
	.main-section-content .verify-grid,
	.safety-step-grid {
		grid-template-columns: 1fr;
	}
}

/* 기사 버튼 */
a.wp-block-button__link {
	background-color: transparent !important;
	border: 2px solid #333;
}

/* 하단 링크 footer-featured-links */

.footer-featured-links {
	padding: 10px 0;
	background-color: #f9f9f9;
}

.footer-featured-links h2 {
	font-size: 21px;
	font-weight: 400;
	letter-spacing: -1px;
}

.footer-featured-links .grid-3set {
	margin-top: 10px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

.footer-featured-links .item {
	background: #fff;
	overflow: hidden;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
	padding-bottom: 20px;
	transition:
		transform 0.2s ease,
		box-shadow 0.2s ease;
}

.footer-featured-links .item:hover {
	transform: translateY(-4px);
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.08);
}

.footer-featured-links .item h3 {
	font-size: 18px;
	font-weight: 400;
	letter-spacing: -1px;
	margin: 16px;
	color: #333;
}

.footer-featured-links .images img {
	width: 100%;
	height: auto;
	display: block;
	object-fit: cover;
}

.footer-featured-links h3 {
	font-size: 1.2rem;
	margin: 16px;
	color: #1e1e1e;
}

.footer-featured-links h3 a {
	color: inherit;
	text-decoration: none;
}

.footer-featured-links p {
	font-size: 0.95rem;
	color: #555;
	margin: 0 20px 15px 20px;
	line-height: 1.6;
}

.footer-featured-links .blog_post_control_item {
	padding: 0 16px 20px;
}

.footer-featured-links .more-link {
	display: inline-flex;
	align-items: center;
	color: #0073e6;
	font-weight: bold;
	text-decoration: none;
}

.footer-featured-links .more-link:hover {
	text-decoration: underline;
}

.footer-featured-links .readmore_icon {
	margin-left: 6px;
	font-size: 0.9em;
}

.footer-featured-links .cta-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 15px;
	padding: 15px 18px;
	background: linear-gradient(90deg, #e53935 0%, #f0625d 100%);
	color: #fff;
	font-weight: bold;
	font-size: 0.95rem;
	border-radius: 8px;
	text-decoration: none;
	transition: background-color 0.2s ease;
}

.footer-featured-links .cta-btn:hover {
	background: linear-gradient(90deg, #f0625d 0%, #ff8a80 100%);
}

/* 모바일 대응 */
@media screen and (max-width: 768px) {
	.footer-featured-links .grid-3set {
		grid-template-columns: 1fr;
		gap: 20px;
	}
}

.post_related {
    margin: 30px 0;
}

.post_related .post_title {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.post_related__header {
	margin: 32px 0 14px;
}
.post_related__title {
	margin: 0 0 6px;
	font-size: 22px;
	font-weight: 700;
	letter-spacing: -0.4px;
	line-height: 1.3;
}
.post_related__desc {
	margin: 0;
	font-size: 14px;
	line-height: 1.6;
	letter-spacing: -0.4px;
	color: #6b7280;
}

.two_coloumns_list .post_title a {
	position: relative !important;
}

.two_coloumns_list .post_title a:before {
	bottom: -15px;
}

.two_coloumns_list .post_title a:after {
	bottom: -13px;
}

.bc-table-of-contents {
	background: #ffffff;
	border-bottom: 1px solid #eee;
	padding: 20px 25px;
}

.bc-table-of-contents .toc-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.bc-table-of-contents .toc-title {
	font-size: 100%;
	font-weight: 500;
	margin: 0;
}

.bc-table-of-contents .toc-toggle {
	font-size: 0.9em;
	background: none;
	border: none;
	color: #ff6600;
	cursor: pointer;
	transition: color 0.2s;
}

.bc-table-of-contents .toc-toggle:hover {
	color: #cc5200;
}

.bc-table-of-contents .toc-list {
	list-style: none;
	margin: 5px 0 0 0;
	padding: 0;
}

.bc-table-of-contents .toc-list li {
	margin: 6px 0 0 6px;
	padding-left: 10px;
	position: relative;
}

.bc-table-of-contents .toc-list li::before {
	content: "•";
	color: #ff6600;
	position: absolute;
	left: 0;
}

.bc-table-of-contents .toc-list a {
	color: #333;
	text-decoration: none;
	transition: color 0.2s;
	letter-spacing: -1px;
}

.bc-table-of-contents .toc-list a:hover {
	color: #ff6600;
	text-decoration: underline;
}

/* 접힘 상태 */
.bc-table-of-contents .toc-list.hidden {
	display: none;
}


.footer-line {
	padding: 40px 0;
}

.footer-line .author-box {
	margin:0;
}

/* ======================================================================
 * KCF 전역 설정
 *
 * - 목적: KCF 네임스페이스(body#kcf / body.kcf) 기반으로 전역 변수/상태 클래스를 일괄 관리
 * - 규칙: KCF 관련 전역 값은 body#kcf(변수), 상태는 body.kcf-*(클래스)에서만 정의
 * ====================================================================== */

body#kcf {
	--container-max-width: 880px;
}

/* KCF 상태 클래스(전역): body_class('kcf')로 항상 부여됨 */

/* 드로어 오픈 상태 */
body.kcf-drawer-open {
	overflow: hidden;
}
body.kcf-drawer-open .kcf-drawer-overlay {
	opacity: 1;
	pointer-events: auto;
}

body.kcf-drawer-open .kcf-drawer {
	transform: translateX(0);
}

/* 메가 레이어 오픈 상태 */
body.kcf-mega-open .kcf-mega {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
	/* CloudTail Services 느낌: 오픈은 ease-out + 300ms */
	transition: opacity 300ms ease-out, transform 300ms ease-out;
}
/* 메가 레이어 오픈 시에도 스크롤바는 유지(레이아웃 밀림 방지)
 * 배경 스크롤 차단은 JS에서 wheel/touchmove를 제어 */

/* PC: 메가 레이어 오픈 시 스크롤바 제거로 인한 레이아웃 흔들림 방지 */
html.kcf-mega-scrolllock {
	scrollbar-gutter: stable;
}

/* 드로어 오픈 시(모바일) 본문 스크롤 잠금: JS에서 html/body에 클래스 토글 */
html.kcf-scrolllock,
body.kcf-scrolllock {
	overflow: hidden;
	height: 100%;
}
/* 스크롤바가 사라지면서 가로폭이 변하는 현상 방지 */
html.kcf-scrolllock {
	padding-right: var(--kcf-scrollbar-gap, 0px);
	scrollbar-gutter: stable;
}

/* KCF 스티키 헤더(알리아 의존 제거) */
body.kcf-header-stuck {
	padding-top: var(--kcf-header-h, 0px);
}
.kcf-site-header {
	background: #ffffff;
	border-bottom: 1px solid rgba(0, 0, 0, 0.10);
}
.kcf-site-header.kcf-site-header--stuck {
	position: fixed;
	left: 0;
	right: 0;
	z-index: 99990; /* admin-bar(99999)보다 아래, 드로어/오버레이(100000+)보다 아래 */
	background: #ffffff;
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.06);
}

/* PC: 스크롤 시 헤더 반투명/블러 효과 제거(요청) */

/* ======================================================================
 * KCF 사이트 헤더
 *
 * - 목적: 알리아 테마와 간섭 없이(kcf- 네임스페이스) 헤더/메뉴를 독립적으로 구성
 * - 포함: 헤더 공통/로고/PC 네비/모바일 드로어/PC 메가 레이어/현재 메뉴 스타일
 *
 * 관련 요소(주요 클래스)
 * - 헤더 래퍼: .kcf-site-header, .kcf-header
 * - 로고: .kcf-header__branding, .kcf-header__logo, .kcf-header__logo-icon, .kcf-header__logo-text
 * - 네비(PC/공통): .kcf-nav, .kcf-nav__list, .kcf-nav__item, .kcf-nav__link, .kcf-nav__text, .is-current
 * - 모바일 드로어: #kcf-drawer, .kcf-drawer, .kcf-drawer-overlay, .kcf-nav__toggle, .kcf-nav__submenu
 * - PC 메가 레이어: #kcf-mega, .kcf-mega, .kcf-mega__list
 * ====================================================================== */

/* 1) 헤더 공통 CSS */

/* 공통 레이아웃 래퍼 */
.kcf-container {
	max-width: var(--container-max-width);
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}

.kcf-header {
	height: 70px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.kcf-header__nav-slot {
	flex: 1 1 auto;
	display: flex;
	justify-content: center; /* 요청: 메뉴 정중앙 */
}

.kcf-header__controls {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
}

/* 공통 아이콘 버튼(햄버거/닫기/토글) */
.kcf-icon-btn {
	appearance: none;
	width: 44px;
	height: 44px;
	min-width: 44px;
	border-radius: 12px;
	border: 1px solid rgba(0, 0, 0, 0.06);
	background: #ffffff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

/* 2) 헤더 로고영역 */
.kcf-header__branding {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	height: 100%;
}

.kcf-header__logo {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	text-decoration: none;
	color: #111827;
	height: 100%;
}

.kcf-header__logo-icon {
	width: auto;
	height: 26px;
	display: block;	
}

.kcf-header__logo-text {
	font-size: 21px;
	font-weight: 600;
	letter-spacing: -1px;
	font-family: 'TTHakgyoansimJiugaeR';
}

/* 3) 헤더 nav 영역 */

/* 공통: 현재 메뉴 밑줄(텍스트 폭만큼) - 요청: 밑줄 제거 */
.kcf-nav__text {
	position: relative;
	display: inline-block;
}

.kcf-mobile-nav-toggle__icon,
.kcf-drawer__close-icon,
.kcf-drawer__title-icon-img {
	width: 16px;
	height: 16px;
	display: block;
}

.kcf-mobile-nav-toggle__icon,
.kcf-drawer__close-icon {
	opacity: 0.5;
}

/* 공통: 현재 메뉴 텍스트 컬러 */
.kcf-nav__item.is-current > .kcf-nav__link,
.kcf-nav__submenu-link.is-current {
	color: #ff374a;
}

/* =========================
 * PC 헤더 네비
 * ========================= */
.kcf-site-header .kcf-nav__list {
	display: flex;
	align-items: center;
	justify-content: center; /* 요청: 메뉴 정중앙 */
	gap: 10px;
	list-style: none;
	margin: 0;
	padding: 0;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.kcf-site-header .kcf-nav__item {
	margin: 0;
	padding: 0;
}

.kcf-site-header .kcf-nav__link {
	display: inline-flex;
	align-items: center;
	gap: 3px;
	padding: 10px;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: -1px;
	color: rgba(17, 24, 39, 0.6);
	text-decoration: none;
	white-space: nowrap;
	transition: color 160ms ease;
}

.kcf-site-header .kcf-nav__chevron {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	/* 요청: PC 화살표 크기를 모바일(드로어 토글 아이콘)과 일치 */
	width: 12px;
	height: 12px;
	/* 색상 투명도는 link의 rgba로 처리 */
	color: inherit;
	opacity: 1;
	transform: rotate(0deg);
	transform-origin: 50% 50%;
	/* 요청: 2차메뉴 오픈 속도(300ms)와 동일하게 */
	transition: transform 300ms ease-out;
}

.kcf-site-header .kcf-nav__chevron svg {
	width: 12px;
	height: 12px;
}

.kcf-site-header .kcf-nav__item--has-sub > .kcf-nav__link:hover .kcf-nav__chevron,
.kcf-site-header .kcf-nav__item--has-sub > .kcf-nav__link:focus-visible .kcf-nav__chevron {
	transform: rotate(180deg);
	opacity: 1;
}

/* 메가 레이어가 열린 상태에서는 화살표가 열린 방향을 유지 */
.kcf-site-header .kcf-nav__item.is-mega-open > .kcf-nav__link .kcf-nav__chevron {
	transform: rotate(180deg);
	opacity: 1;
}

.kcf-site-header .kcf-nav__link:hover,
.kcf-site-header .kcf-nav__item.is-current > .kcf-nav__link {
	/* 요청: 호버/선택 시 #111827(불투명) */
	font-weight: 600;
	color: #111827;
}

.kcf-site-header .kcf-nav__link:focus-visible {
	outline: 2px solid rgba(255, 33, 78, 0.55);
	outline-offset: 2px;
	border-radius: 8px;
}

/* PC에서는 아이콘/토글/2차 숨김(PC 2차는 레이어로만 노출) */
.kcf-site-header .kcf-nav__icon,
.kcf-site-header .kcf-nav__toggle,
.kcf-site-header .kcf-nav__submenu {
	display: none;
}

/* 4) 반응형(미디어쿼리)은 KCF 블록 최하단에서 일괄 관리 */

/* PC 헤더 텔레그램 버튼 */
.kcf-header__telegram-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	height: 40px;
	padding: 0 16px;
	border-radius: 9999px;
	border: 1px solid rgba(0, 0, 0, 0.10);
	background: #ffffff;
	color: #111827;
	text-decoration: none;
	font-size: 14px;
	font-weight: 500;
	line-height: 1;
}

.kcf-header__telegram-btn:hover {
	border-color: rgba(0, 0, 0, 0.16);
	background: rgba(0, 0, 0, 0.02);
}

.kcf-header__telegram-icon {
	width: 18px;
	height: 18px;
	display: block;
	opacity: 0.7; /* 요청: 평소 투명도 */
	transition: opacity 160ms ease;
}

.kcf-header__telegram-btn:hover .kcf-header__telegram-icon {
	opacity: 0.8; /* 요청: 호버 시 투명도 */
}

/* ======================================================================
 * KCF Top Banner (header.php의 <section class="kcf-top-banner">)
 *
 * - 목적: 헤더 바로 아래(상단 배너) 그리드/타일 스타일을 한곳에서 관리
 * - 구성: 기본 레이아웃 + 텔레그램 타일 CTA + 모바일(<=580px) 높이 조정
 * ====================================================================== */
.kcf-top-banner {
	padding: 0;
}

.kcf-top-banner__inner {
	padding: 0;
}

.kcf-top-banner__list {
	padding: 0;
	margin: 0;
	list-style-type: none;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: 0;
}

.kcf-top-banner__tile {
	position: relative;
	display: flex;
	height: 105px;
	background-color: #ffffff;
	justify-content: center;
	align-items: center;
	font-size: 12px;
	text-align: center;
	color: #999999;
	cursor: pointer;
}

.kcf-top-banner__tile--telegram {
	background-color: #4a95cc;
	transition: background-color 0.3s ease;
}

.kcf-top-banner__tile--telegram:hover {
	background-color: #3877a6;
}

/* 일반 배너: 이미지가 타일 전체를 채움 */
.kcf-top-banner__tile:not(.kcf-top-banner__tile--telegram) img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* 배너 내부 텔레그램 CTA */
.kcf-top-banner__telegram-link {
	position: relative;
	top: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 180px;
	height: 60px;
	background-color: #4a95cd;
	color: #ffffff;
	font-size: 14px;
	font-weight: 400;
	text-decoration: none;
	border-radius: 25px;
}

.kcf-top-banner__telegram-text {
	text-align: left;
}

.kcf-top-banner__telegram-title,
.kcf-top-banner__telegram-handle {
	display: block;
	line-height: 1;
}

.kcf-top-banner__telegram-icon {
	position: relative;
	width: 40px;
	height: 40px;
	margin-right: 10px;
}

.kcf-top-banner__item--span2 {
	grid-column: span 2;
}

.kcf-top-banner__item--span4 {
	grid-row: span 2;
}

.kcf-top-banner__item--span4 .kcf-top-banner__tile {
	height: 210px;
}

/* 싱글 페이지 전체보기 버튼 */
.kcf-top-banner__view-all {
	display: block;
	width: 100%;
	padding: 13px 0;
	text-align: center;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: -0.5px;
	color: #666;
	background: #f4f4f5;
	border-top: 1px solid rgba(0, 0, 0, 0.06);
	text-decoration: none;
	transition: background 160ms ease, color 160ms ease;
}

.kcf-top-banner__view-all:hover {
	background: #eaeaeb;
	color: #ff374a;
}

/* ======================================================================
 * KCF 모바일 드로어 네비 (#kcf-drawer)
 *
 * - 트리거: 모바일 헤더 햄버거 버튼(.kcf-mobile-nav-toggle)
 * - 레이아웃: overlay(배경) + drawer(우측 슬라이드)
 * - 메뉴: 기존 top-menu DOM을 .kcf-drawer__menu-slot으로 이동해 재사용
 * - 상태 클래스: body.kcf-drawer-open / html.kcf-scrolllock / body.kcf-scrolllock
 * ====================================================================== */

/* 1) overlay: 드로어 오픈 시 클릭/블러 처리 */
.kcf-drawer-overlay {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.45);
	opacity: 0;
	pointer-events: none;
	transition: opacity 220ms ease;
	z-index: 100000; /* admin-bar(99999)보다 위 */
}

/* 2) drawer 컨테이너: 우측에서 슬라이드 */
.kcf-drawer {
	position: fixed;
	top: 0;
	right: 0;
	height: 100%;
	width: 70vw;
	/* 요청: 모바일 메뉴 오픈 시 바디(빈 영역) 흰색 방지 */
	background: #f9fafb;
	transform: translateX(100%);
	transition: transform 240ms ease;
	z-index: 100001;
	box-shadow: -18px 0 40px rgba(0, 0, 0, 0.16);
	display: flex;
	flex-direction: column;
}

/* 3) drawer 헤더: 타이틀/닫기 버튼 */
.kcf-drawer__header {
	height: 70px;
	flex: 0 0 70px; /* 하위메뉴 펼침/스크롤 변화와 무관하게 헤더 높이 고정 */
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 14px;
	border-bottom: 1px solid rgba(0, 0, 0, 0.06);
	background: #ffffff;
}

.kcf-drawer__title {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding-left:10px;
}

.kcf-drawer__title-icon {
	width: 28px;
	height: 28px;
	border-radius: 8px;
	background: #ff374a;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
}

.kcf-drawer__title-icon-img {
	width: 16px;
	height: 16px;
	display: block;
}

.kcf-drawer__title-text {
	color: #333333;
	font-size: 14px;
	font-weight: 800;
	font-family: 'TTHakgyoansimJiugaeR';
	display: block;
	height: 30px;      /* 아이콘 박스(30px) 기준으로 맞춤 */
	line-height: 30px; /* 텍스트를 정확히 세로 중앙 정렬 */
	/* 폰트 메트릭(베이스라인)로 인한 시각적 오차 보정 */
	transform: translateY(var(--kcf-drawer-title-text-offset-y, 2px));
}

.kcf-drawer__close {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	border: 1px solid rgba(0, 0, 0, 0.06);
	background: #ffffff;
	color: #111827;
	line-height: 1;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.kcf-drawer__close:focus-visible {
	outline: 2px solid rgba(255, 55, 74, 0.55);
	outline-offset: 2px;
}

.kcf-drawer__body {
	flex: 1 1 auto;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	padding: 0;
	background: #f9fafb;
	/* 스크롤바로 인한 흔들림 방지 + 스크롤바 숨김(스크롤은 유지) */
	scrollbar-gutter: stable;
	scrollbar-width: none;        /* Firefox */
	-ms-overflow-style: none;     /* IE/Edge legacy */
}

.kcf-drawer__body::-webkit-scrollbar {
	width: 0;
	height: 0;
}

/* 4) drawer 하단 CTA(텔레그램): 모바일에서만 노출 */
.kcf-drawer__footer {
	display: none;
}

.kcf-drawer .kcf-nav__list {
	display: flex;
	flex-direction: column;
	list-style: none;
	margin: 0;
	padding: 0;
}

.kcf-drawer .kcf-nav__item {
	position: relative;
	display: flex;
	flex-wrap: wrap; /* 2차를 아래 줄로 */
	align-items: center;
	border-bottom: 1px solid rgba(0, 0, 0, 0.06);
	background: #ffffff; /* 1차 메뉴 배경 */
}

.kcf-drawer .kcf-nav__link,
.kcf-drawer .kcf-nav__submenu-link {
	display: flex;
	align-items: center;
	gap: 5px;
	text-decoration: none;
}

.kcf-drawer .kcf-nav__link {
	padding: 15px 15px 15px 25px;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: -0.5px;
	color: #111827;
	flex: 1 1 auto;
}

.kcf-drawer .kcf-nav__toggle {
	/* 우측 여백을 상단 닫기 버튼(padding: 0 14px)과 일치 */
	margin-right: 14px;
	align-self: center;
	border: 0;
}

.kcf-drawer .kcf-nav__icon {
	display: block;
	flex: 0 0 auto;
}

.kcf-drawer .kcf-nav__toggle-icon {
	display: block;
	width: 12px;
	height: 12px;
	transform: rotate(0deg);
	transition: transform 220ms ease;
}

/* 요청: 모바일 드로어에서 화살표 2중 노출 방지(링크 내부 chevron 숨김) */
.kcf-drawer .kcf-nav__chevron {
	display: none;
}

.kcf-drawer .kcf-nav__item.is-subopen > .kcf-nav__toggle .kcf-nav__toggle-icon {
	transform: rotate(180deg);
}

.kcf-drawer .kcf-nav__submenu {
	display: none;
	width: 100%;
	flex: 0 0 100%;
	background: #f9fafb;
	border-top: 1px solid rgba(0, 0, 0, 0.06);
}

.kcf-drawer .kcf-nav__item.is-subopen > .kcf-nav__submenu {
	display: block;
}

.kcf-drawer .kcf-nav__submenu-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.kcf-drawer .kcf-nav__submenu-item {
	border-bottom: 1px solid rgba(0, 0, 0, 0.04);
}

.kcf-drawer .kcf-nav__submenu-item:last-child {
	border-bottom: 0;
}

.kcf-drawer .kcf-nav__submenu-link {
	padding: 12px 15px 12px 35px;
	color: #515d77;
	font-size: 13px;
	font-weight: 400;
	letter-spacing: -0.5px;
}

/* 드로어에서 현재 메뉴 색상(밑줄/아이콘과 동일하게) */
.kcf-drawer .kcf-nav__item.is-current > .kcf-nav__link,
.kcf-drawer .kcf-nav__submenu-link.is-current {
	color: #ff374a;
}

/* PC 메가 레이어 */

.kcf-mega {
	position: fixed;
	opacity: 0;
	pointer-events: none;
	/* CloudTail Services 느낌: 클로즈는 ease-in + 200ms + translateY(16px) */
	transform: translateY(16px);
	transition: opacity 200ms ease-in, transform 200ms ease-in;
	background: #ffffff;
	border: 1px solid rgba(0, 0, 0, 0.10);
	border-radius: 14px;
	box-shadow: 0 18px 48px rgba(0, 0, 0, 0.14);
	z-index: 100003;
	max-height: min(560px, 70vh);
	overflow: hidden;
}

.kcf-mega__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 12px 14px;
	border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.kcf-mega__title {
	font-size: 14px;
	font-weight: 700;
	color: #111111;
}

.kcf-mega__close {
	appearance: none;
	border: 1px solid rgba(0, 0, 0, 0.06);
	background: #ffffff;
	color: #111111;
	width: 34px;
	height: 34px;
	border-radius: 10px;
	cursor: pointer;
	line-height: 1;
	font-size: 20px;
}

.kcf-mega__search {
	padding: 10px 14px;
	border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.kcf-mega__input {
	width: 100%;
	height: 40px;
	border-radius: 10px;
	border: 1px solid rgba(0, 0, 0, 0.10);
	background: #ffffff;
	padding: 0 12px;
	font-size: 14px;
	outline: none;
}

.kcf-mega__input:focus {
	border-color: rgba(255, 33, 78, 0.55);
	box-shadow: 0 0 0 3px rgba(255, 33, 78, 0.12);
}

.kcf-mega__list {
	padding: 10px 0;
	max-height: min(460px, 58vh);
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	overscroll-behavior: contain; /* 서브메뉴 스크롤이 본문 스크롤과 간섭되는 현상 방지 */
}

.kcf-mega__list .kcf-nav__submenu-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.kcf-mega__list .kcf-nav__submenu-link {
	display: flex;
	align-items: center;
	justify-content: center; /* 요청: 하위 메뉴를 메뉴 정중앙으로 정렬 */
	padding: 10px 14px;
	color: #111111;
	text-decoration: none;
	transition: color 160ms ease, background-color 160ms ease;
}

.kcf-mega__list .kcf-nav__submenu-link:hover {
	color: #ff214e;
	background: rgba(255, 33, 78, 0.06);
}

.kcf-mega__list .kcf-nav__submenu-link.is-hit {
	color: #ff214e;
	background: rgba(255, 33, 78, 0.08);
	font-weight: 700;
}

/* ======================================================================
 * KCF 반응형(미디어쿼리) - 최하단 일괄 관리
 *
 * - 원칙: 기본(공통) 규칙은 위에 두고, 기기별 분기는 여기에서만 처리
 * ====================================================================== */

/* 1) 헤더: PC/모바일 표시 규칙 */
@media (min-width: 801px) {
	.kcf-site-header .kcf-mobile-nav-toggle {
		display: none;
	}
}

@media (max-width: 800px) {
	/* 모바일 드로어: overlay 블러(모바일에서만) */
	body.kcf-drawer-open .kcf-drawer-overlay {
		-webkit-backdrop-filter: blur(12px);
		backdrop-filter: blur(12px);
	}

	/* 모바일 헤더 좌우 여백 */
	.kcf-site-header .kcf-header {
		padding-left: 15px;
		padding-right: 15px;
	}
	.kcf-site-header .kcf-header__nav-slot {
		display: none;
	}
	.kcf-site-header .kcf-header__telegram-btn {
		display: none;
	}
	.kcf-site-header .kcf-mobile-nav-toggle {
		display: inline-flex;
	}

	/* 드로어 하단 CTA(텔레그램) */
	.kcf-drawer__footer {
		display: block;
		padding: 0;
	}

	.kcf-drawer__footer .kcf-telegram-button {
		position: static;
		display: flex;
		align-items: center;
		justify-content: flex-start;
		gap: 8px;
		padding: 5px 25px;
		background: #ff374a;
		border: 0;
		border-radius: 0;
		color: #ffffff;
		text-decoration: none;
		width: 100%;
		height: 55px;
	}

	.kcf-drawer__footer .kcf-telegram-button__icon-wrap {
		width: 24px;
		height: 24px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 auto;
	}

	.kcf-drawer__footer .kcf-telegram-button__icon {
		width: 24px;
		height: 24px;
		display: block;
	}

	.kcf-drawer__footer .kcf-telegram-button__label {
		display: block;
		line-height: 1;
	}

	.kcf-drawer__footer .kcf-telegram-button__title {
		font-family: 'TTHakgyoansimJiugaeR';
		font-size: 13px;
		font-weight: 400;
		letter-spacing: -0.5px;
	}
	/* 2줄 표기는 제거되어 title만 노출 */
}

/* 3) Top Banner: 모바일(초소형) 높이 조정 */
@media screen and (max-width: 580px) {
	.kcf-top-banner__list {
		grid-template-columns: repeat(2, 1fr);
	}
	.kcf-top-banner__tile {
		height: 71px;
	}
	.kcf-top-banner__item--span4 .kcf-top-banner__tile {
		height: 142px;
	}
}

/* ======================================================================
 * 무료슬롯 상세 페이지 (single-free_slot.php)
 *
 * - 게임 iframe 컨테이너, 게임 정보 박스, 설명 영역 스타일
 * - 템플릿이 테마 container를 사용하므로 별도 너비 오버라이드 불필요
 * ====================================================================== */

/* iframe 래퍼 */
.ssd-game-frame-container {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	height: 0;
	overflow: hidden;
	background: #000;
	margin-top: 24px;
	margin-bottom: 24px;
	border-radius: 8px;
}
.ssd-game-frame-container iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

/* 게임 정보 박스 */
.ssd-game-info-box {
	margin: 20px 0;
	background: #f9f9f9;
	padding: 15px 20px;
	border-radius: 8px;
	border: 1px solid #eee;
}
.ssd-game-info-box h3 {
	margin-top: 0;
	font-size: 1.2em;
	border-bottom: 1px solid #ddd;
	padding-bottom: 10px;
	margin-bottom: 15px;
}
.ssd-specs-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
	gap: 15px;
}

/* 게임 설명 */
.ssd-game-description {
	margin-top: 30px;
	padding: 20px;
	background: #f9f9f9;
	border-radius: 8px;
	font-size: 16px;
	line-height: 1.6;
	color: #333;
}

/* ======================================================================
 * KCF free_slot 구조적 링크 블록
 * - free_slot 싱글 페이지 하단: 제공사 게임 / 카지노 / 가이드
 * ====================================================================== */
.kcf-freeslot-related {
	margin: 32px 0 0;
	padding: 24px;
	background: #f8f9fa;
	border-radius: 12px;
	border: 1px solid rgba(0, 0, 0, 0.06);
}

.kcf-freeslot-section {
	margin-bottom: 20px;
}

.kcf-freeslot-section:last-child {
	margin-bottom: 0;
}

.kcf-freeslot-section__title {
	font-size: 16px;
	font-weight: 600;
	letter-spacing: -0.4px;
	color: #1e1e1e;
	margin: 0 0 10px;
	padding-bottom: 8px;
	border-bottom: 2px solid #0073e6;
}

.kcf-freeslot-related ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.kcf-freeslot-related ul li {
	flex: 0 0 auto;
}

.kcf-freeslot-related ul li a {
	display: inline-block;
	padding: 6px 14px;
	background: #ffffff;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 20px;
	font-size: 13px;
	color: #333;
	text-decoration: none;
	transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.kcf-freeslot-related ul li a:hover {
	background: #0073e6;
	border-color: #0073e6;
	color: #fff;
}

@media screen and (max-width: 768px) {
	.kcf-freeslot-related {
		padding: 16px;
	}
	.kcf-freeslot-related ul {
		gap: 6px;
	}
	.kcf-freeslot-related ul li a {
		font-size: 12px;
		padding: 5px 10px;
	}
}

/* ======================================================================
 * KCF 관련 포스트 블록 (agy 파이프라인: Gemini 링크 부족 시 보충)
 * ====================================================================== */
.kcf-related-posts {
	margin: 24px 0 0;
	padding: 20px 24px;
	background: #f0f6ff;
	border-left: 4px solid #0073e6;
	border-radius: 8px;
}

.kcf-related-posts h3 {
	font-size: 15px;
	font-weight: 600;
	color: #1e1e1e;
	margin: 0 0 12px;
}

.kcf-related-posts ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.kcf-related-posts ul li {
	margin-bottom: 6px;
	padding-left: 16px;
	position: relative;
	font-size: 14px;
	line-height: 1.6;
}

.kcf-related-posts ul li::before {
	content: "→";
	position: absolute;
	left: 0;
	color: #0073e6;
}

.kcf-related-posts ul li:last-child {
	margin-bottom: 0;
}

.kcf-related-posts ul li a {
	color: #333;
	text-decoration: none;
	transition: color 0.2s ease;
}

.kcf-related-posts ul li a:hover {
	color: #0073e6;
	text-decoration: underline;
}