@charset "UTF-8";

#footer {
	--f-bg: #0e0e0e; /* 푸터 배경 */
	--f-border: #222; /* 구분선 */
	--f-text: #ddd; /* 기본 텍스트 */
	--f-white: #fff; /* 강조 텍스트 (로고, 제목) */
	--f-muted: #888; /* 설명 텍스트 */
	--f-dim: #999; /* 팀원 텍스트 */
	--f-faint: #777; /* 관리자 링크 */
	--f-nav: #aaa; /* 네비 링크 */
	--f-copy: #666; /* 카피라이트 */
	--f-gold: var(--point1); /* ← common.css --point1 (#C9A962) 참조 */
}


#footer {
	background-color: var(--f-bg);
	color: var(--f-text);
	padding: 80px 0 30px;
	font-family: 'Poppins', sans-serif;
	border-top: 1px solid var(--f-border);
}


.footer-top {
	max-width: 1600px;
	width: 90%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 60px;
}

.footer-left {
	flex: 1;
	min-width: 0;
}

.footer-logo {
	font-size: 30px;
	letter-spacing: 6px;
	color: var(--f-white);
	margin-bottom: 25px;
	word-break: keep-all;
}

.footer-desc {
	font-size: 14px;
	color: var(--f-muted);
	line-height: 1.9;
	word-break: keep-all;
}


.footer-right {
	display: flex;
	flex-direction: column;
	gap: 40px;
	text-align: right;
	flex-shrink: 0;
}


.footer-nav ul {
	display: flex;
	gap: 35px;
	list-style: none;
	justify-content: flex-end;
	align-items: center;
	flex-wrap: wrap;
}

.footer-nav a {
	text-decoration: none;
	font-size: 13px;
	letter-spacing: 1px;
	color: var(--f-nav);
	transition: 0.4s ease;
	position: relative;
	white-space: nowrap;
}

.footer-nav a::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -6px;
	width: 0;
	height: 1px;
	background: var(--f-gold); /* common.css --point1 참조 */
	transition: 0.4s ease;
}

.footer-nav a:hover {
	color: var(--f-white);
}

.footer-nav a:hover::after {
	width: 100%;
}


.footer-team h3 {
	font-size: 15px;
	letter-spacing: 2px;
	margin-bottom: 15px;
	color: var(--f-white);
}

.footer-team ul {
	list-style: none;
	padding: 0;
}

.footer-team li {
	font-size: 13px;
	margin-bottom: 8px;
	color: var(--f-dim);
}


.admin_login {
	margin-top: 20px;
}

.admin_login a {
	font-size: 11px;
	color: var(--f-faint);
	text-decoration: none;
	opacity: 0.3;
	transition: 0.4s ease;
}

.admin_login a:hover {
	opacity: 1;
	color: var(--f-white);
}


.footer-bottom {
	border-top: 1px solid var(--f-border);
	margin-top: 60px;
	padding-top: 25px;
	text-align: center;
	font-size: 12px;
	color: var(--f-copy);
}

@media ( min-width : 768px) and (max-width: 1024px) {
	#footer {
		padding: 60px 0 28px;
	}
	.footer-top {
		width: 92%;
		gap: 40px;
	}
	.footer-logo {
		font-size: 24px;
		letter-spacing: 4px;
	}
	.footer-nav ul {
		gap: 24px;
	}
	.footer-team h3 {
		font-size: 14px;
	}
}

@media ( max-width : 767px) {
	#footer {
		padding: 48px 0 24px;
	}
	.footer-top {
		flex-direction: column;
		width: 88%;
		gap: 40px;
	}
	.footer-left {
		width: 100%;
	}
	.footer-logo {
		font-size: 22px;
		letter-spacing: 4px;
		margin-bottom: 18px;
	}
	.footer-desc {
		font-size: 13px;
	}
	.footer-right {
		width: 100%;
		text-align: left;
		gap: 28px;
	}
	.footer-nav ul {
		flex-direction: column;
		align-items: flex-start;
		gap: 14px;
	}
	.footer-nav a {
		font-size: 14px;
	}
	.footer-team h3 {
		font-size: 13px;
		letter-spacing: 1.5px;
		margin-bottom: 12px;
	}
	.footer-team li {
		font-size: 13px;
	}
	.admin_login {
		margin-top: 12px;
	}
	.footer-bottom {
		margin-top: 36px;
		padding-top: 20px;
		font-size: 11px;
	}
}

@media ( max-width : 480px) {
	.footer-top {
		width: 86%;
	}
	.footer-logo {
		font-size: 18px;
		letter-spacing: 3px;
	}
	.footer-desc {
		font-size: 12px;
	}
	.footer-nav a {
		font-size: 13px;
	}
	.footer-team li {
		font-size: 12px;
	}
}