@charset "UTF-8";
/* 푸터 전용 — 서브페이지에서도 사용 */
.site_footer {
		background: #000;
		color: #f5f5f5;
		font-family: Arial, "Malgun Gothic", sans-serif;
		font-size: 14px;
		line-height: 1.6;
		word-break: keep-all;
		overflow-wrap: anywhere;
	}

	.site_footer *,
	.site_footer *::before,
	.site_footer *::after {
		box-sizing: border-box;
	}

	.site_footer a {
		color: inherit;
		text-decoration: none;
	}

	.site_footer a:focus-visible {
		outline: 2px solid #00e1ca;
		outline-offset: 5px;
		border-radius: 3px;
	}

	.site_footer__inner {
		width: min(100% - 48px, 1340px);
		margin-inline: auto;
	}

	.site_footer__top {
		padding: 44px 0 58px;
		border-bottom: 1px solid #161616;
	}

	.site_footer__top_grid {
		display: grid;
		/* 브랜드 + 메뉴 4열(사이트정보·커뮤니티·고객센터·운영정보) + 공식채널 */
		grid-template-columns: minmax(260px, 2.2fr) repeat(4, minmax(110px, 1fr)) minmax(200px, 1.1fr);
		gap: 24px;
		align-items: start;
	}

	.site_footer__logo {
		display: inline-flex;
		align-items: center;
		min-height: 60px;
		font-size: 40px;
		font-weight: 900;
		letter-spacing: -2px;
		line-height: 1.2;
	}

	.site_footer__logo img {
		display: block;
		width: 220px;
		max-width: 100%;
		height: auto;
	}

	.site_footer__description {
		max-width: 300px;
		margin: 18px 0 0;
		color: #8e8e8e;
		font-size: 13px;
		line-height: 1.75;
	}

	.site_footer__heading {
		margin: 0 0 26px;
		font-size: 16px;
		font-weight: 700;
		line-height: 24px;
	}

	.site_footer__links {
		display: grid;
		gap: 8px;
		margin: 0;
		padding: 0;
		list-style: none;
		color: #c6c6c6;
	}

	.site_footer__links a {
		display: inline-block;
		min-height: 24px;
	}

	.site_footer__links a:hover {
		color: #00e1ca;
		text-decoration: underline;
		text-underline-offset: 4px;
	}

	.site_footer__telegram {
		display: flex;
		flex-direction: column;
		justify-content: center;
		gap: 3px;
		width: 220px;
		max-width: 100%;
		min-height: 80px;
		padding: 12px 20px;
		border-radius: 11px;
		background: linear-gradient(180deg, #24a3d6, #00678e);
		color: #fff;
	}

	.site_footer__telegram:hover {
		background: linear-gradient(180deg, #30afe2, #08779f);
	}

	.site_footer__telegram_label {
		font-size: 13px;
	}

	.site_footer__telegram_account {
		display: flex;
		align-items: center;
		gap: 6px;
		font-size: 24px;
		font-weight: 700;
		letter-spacing: -1px;
		line-height: 1.2;
		white-space: nowrap;
	}

	.site_footer__telegram_icon {
		flex: 0 0 24px;
		width: 24px;
		height: 24px;
	}

	.site_footer__policies {
		padding: 50px 0 60px;
	}

	.site_footer__policy_grid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 18px 15px;
	}

	.site_footer__card {
		min-width: 0;
		min-height: 210px;
		padding: 38px 32px;
		border-radius: 11px;
		background: linear-gradient(145deg, #101010, #191919);
	}

	.site_footer__card_heading {
		display: flex;
		flex-wrap: wrap;
		align-items: baseline;
		gap: 4px 15px;
		margin: 0 0 20px;
		font-size: 16px;
		font-weight: 700;
		letter-spacing: -0.5px;
	}
	.site_footer__card_title {
		font-size: 18px;
	}

	.site_footer__number {
		color: #00e1ca;
		font-size: 18px;
	}

	.site_footer__subtitle {
		color: #929292;
		font-size: 14px;
		letter-spacing: -0.4px;
		opacity: 0.7;
	}

	.site_footer__text {
		margin: 0;
		color: #a0a0a0;
		font-size: 14px;
		line-height: 1.55;
		letter-spacing: -0.3px;
	}

	.site_footer__bottom {
		padding: 30px 0 36px;
		border-top: 1px solid #161616;
	}

	.site_footer__bottom_inner {
		padding-inline: 30px;
	}

	.site_footer__copyright {
		display: block;
		font-size: 13px;
		font-weight: 700;
	}

	.site_footer__tagline {
		margin: 8px 0 0;
		color: #8e8e8e;
		font-size: 13px;
		font-weight: 700;
	}

	.footer_tips {
		background-color: #fff;

		ul {
			display: flex;
			justify-content: flex-start;
			align-items: stretch;
			padding: 40px 0;
		}

		li {
			flex: 1;
			background-color: #fff;
			padding: 20px 25px;

			display: flex;
			justify-content: flex-start;
			align-items: center;
			gap: 18px;

			b {
				display: block;
				font-size: 20px;
				font-family: var(--font-family-title);
				margin-bottom: 5px;
				color: #000;
			}
			p {
				font-size: 14px;
				line-height: 1.3;
			}
		}
	}
/* ─────────────────────────────────────────────────────────
   GNB 하위 카테고리 드롭다운
   ───────────────────────────────────────────────────────── */
.header_gnb > li { position: relative; }
.header_gnb > li > a { display: inline-flex; align-items: center; gap: 5px; }

.gnb_arw {
	width: 11px; height: 11px;
	opacity: .45;
	transition: transform .2s, opacity .2s;
}
.header_gnb > li.has_sub:hover > a .gnb_arw,
.header_gnb > li.has_sub:focus-within > a .gnb_arw { transform: rotate(180deg); opacity: .9; }

.header_gnb > li.on > a { color: var(--primary-dark); }

.header_sub {
	position: absolute;
	left: 50%;
	top: 100%;
	transform: translateX(-50%) translateY(6px);
	min-width: 152px;
	padding: 8px;
	margin: 0;
	background: #fff;
	border: 1px solid #E5E5E5;
	border-radius: 12px;
	box-shadow: 0 10px 28px rgba(17, 17, 17, .12);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity .18s ease, transform .18s ease, visibility .18s;
	z-index: 9100;
}
/* 마우스가 메뉴와 서브 사이를 지날 때 끊기지 않도록 여백 확보 */
.header_gnb > li.has_sub::after {
	content: "";
	position: absolute;
	left: 0; right: 0; top: 100%;
	height: 14px;
}
.header_gnb > li.has_sub:hover > .header_sub,
.header_gnb > li.has_sub:focus-within > .header_sub {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translateX(-50%) translateY(0);
}
.header_sub li { list-style: none; }
.header_sub li + li { margin-top: 2px; }
.header_sub a {
	display: block;
	padding: 9px 12px;
	border-radius: 8px;
	font-size: 14px;
	font-weight: 500;
	color: #444;
	white-space: nowrap;
	transition: background .15s, color .15s;
}
.header_sub a:hover { background: #F2FBFA; color: var(--primary-dark); }
.header_sub a.on { background: var(--primary); color: #0b3b38; font-weight: 700; }

@media (max-width: 1280px) {
	.header_sub { min-width: 136px; }
	.header_sub a { padding: 8px 10px; font-size: 13.5px; }
}

/* ─────────────────────────────────────────────────────────
   푸터 사칭 주의 안내
   ───────────────────────────────────────────────────────── */
.site_footer__warn {
	border-top: 1px solid rgba(255, 255, 255, .08);
	background: rgba(226, 84, 70, .09);
}
.site_footer__warn > .site_footer__inner {
	padding-top: 15px;
	padding-bottom: 15px;
}
.site_footer__warn p {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	gap: 9px;
	flex-wrap: wrap;
	margin: 0;
	font-size: 13.5px;
	line-height: 1.7;
	color: #E9B4AC;
	text-align: center;
	word-break: keep-all;
}
.site_footer__warn b {
	color: #FF9C8E;
	font-weight: 700;
}
.site_footer__warn a {
	color: #7FE7DA;
	font-weight: 700;
	border-bottom: 1px solid rgba(127, 231, 218, .4);
}
.site_footer__warn a:hover { color: #A8F2E8; }
.site_footer__warn .sfw_ico {
	flex: 0 0 auto;
	display: inline-grid;
	place-items: center;
	width: 19px;
	height: 19px;
	margin-top: 2px;
	color: #FF9C8E;
}
.site_footer__warn .sfw_ico svg { width: 18px; height: 18px; }

@media (max-width: 768px) {
	.site_footer__warn p { font-size: 12.5px; text-align: left; justify-content: flex-start; }
}
