body {
	font-family: 'Noto Sans TC', sans-serif;
	color: #2d2d2d;
	background: #fafaf9;
}

.font-serif {
	font-family: 'Noto Serif TC', serif;
}

/* Elegant underline */
.elegant-line::after {
	content: '';
	display: block;
	width: 60px;
	height: 1px;
	background: #9c7f5c;
	margin-top: 1.5rem;
}

.elegant-line-center::after {
	margin-left: auto;
	margin-right: auto;
}

/* Subtle hover effect */
.hover-lift {
	transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.hover-lift:hover {
	transform: translateY(-4px);
	box-shadow: 0 20px 40px -15px rgba(0, 0, 0, 0.1);
}

/* Button style */
.btn-primary {
	background: #1a1a1a;
	color: white;
	transition: all 0.3s ease;
}

.btn-primary:hover {
	background: #9c7f5c;
}

.btn-outline {
	border: 1px solid #1a1a1a;
	color: #1a1a1a;
	transition: all 0.3s ease;
}

.btn-outline:hover {
	background: #1a1a1a;
	color: white;
}

/* Card styles */
.card {
	background: white;
	border: 1px solid #e8e6e1;
	transition: all 0.4s ease;
}

.card:hover {
	border-color: #9c7f5c;
}

/* Swiper custom */
.swiper-button-next,
.swiper-button-prev {
	color: #1a1a1a !important;
	background: white;
	width: 48px !important;
	height: 48px !important;
	border-radius: 0;
	border: 1px solid #e8e6e1;
}

.swiper-button-next:hover,
.swiper-button-prev:hover {
	background: #1a1a1a;
	color: white !important;
	border-color: #1a1a1a;
}

.swiper-button-next:after,
.swiper-button-prev:after {
	font-size: 14px !important;
}

.swiper-pagination-bullet {
	background: #d4d0c7 !important;
	opacity: 1 !important;
}

.swiper-pagination-bullet-active {
	background: #1a1a1a !important;
}

/* Section divider */
.section-divider {
	width: 100%;
	height: 1px;
	background: linear-gradient(90deg, transparent, #d4d0c7 20%, #d4d0c7 80%, transparent);
}

/* Mobile bar */
.mobile-bar {
	box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.08);
}

/* Number styling */
.number-display {
	font-variant-numeric: tabular-nums;
	letter-spacing: -0.02em;
}

/* ===== 手機版響應式 ===== */
@media (max-width: 767.98px) {
	.elegant-line::after {
		margin-left: auto;
		margin-right: auto;
	}

	.swiper-button-next,
	.swiper-button-prev {
		width: 40px !important;
		height: 40px !important;
	}

	.number-display {
		font-size: 2rem;
	}
}