html {
	scroll-behavior: smooth;
}

body {
	font-family: 'Inter', system-ui, sans-serif;
}

/* 顶部导航 */
#navbar {
	background-color: rgba(0, 0, 0, 0.3);
	backdrop-filter: blur(5px);
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.navbar-scrolled {
	background-color: rgba(255, 255, 255, 0.9);
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
	backdrop-filter: blur(8px);
}

/* 二级页面半屏轮播容器 */
.half-screen-hero {
	height: 50vh;
	min-height: 50vh;
}

.half-screen-hero .hero-carousel {
	height: 100%;
	position: relative;
	overflow: hidden;
}

.half-screen-hero .hero-slide {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	transition: opacity 0.8s ease-in-out;
}

.half-screen-hero .hero-slide.active {
	opacity: 1;
}

.half-screen-hero .hero-slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/* 轮播导航与指示器（如果存在） */
.hero-carousel-prev,
.hero-carousel-next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	backdrop-filter: blur(8px);
	border: 1px solid rgba(255, 255, 255, 0.25);
	border-radius: 9999px;
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: transform .2s ease, border-color .2s ease;
}

.hero-carousel-prev {
	left: 12px;
}

.hero-carousel-next {
	right: 12px;
}

.hero-carousel-prev:hover,
.hero-carousel-next:hover {
	transform: translateY(-50%) scale(1.06);
	border-color: rgba(255, 255, 255, 0.45);
}

.hero-indicators {
	position: absolute;
	left: 50%;
	bottom: 12px;
	transform: translateX(-50%);
	display: flex;
	gap: 8px;
}

.hero-indicator {
	width: 8px;
	height: 8px;
	border-radius: 9999px;
	background-color: rgba(255, 255, 255, 0.6);
	transition: transform .2s ease, background-color .2s ease;
}

.hero-indicator.active {
	background-color: #ffffff;
	transform: scale(1.25);
}

/* 移动端菜单可用性增强 */
@media (max-width: 768px) {
	#menuBtn {
		min-height: 44px;
		min-width: 44px;
		touch-action: manipulation;
		user-select: none;
		-webkit-tap-highlight-color: transparent;
	}

	#mobileMenu {
		max-height: calc(100vh - 80px);
		-webkit-overflow-scrolling: touch;
	}
}

/* 页脚优化 */
footer {
  position: relative;
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  background: linear-gradient(135deg, #1f2937 0%, #111827 50%, #000000 100%) !important;
  box-shadow: 0 -10px 30px rgba(0, 0, 0, 0.3);
}

footer.bg-gradient-to-br.to-black {
  margin-bottom: -80px;
}

footer::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.1), transparent);
}

footer a {
  transition: color 0.3s ease;
}

footer a:hover {
  color: white;
}

/* 手机端隐藏指定页面的英雄轮播 */
@media (max-width: 768px) {
  .hide-hero-mobile { display: none !important; }
}