*, *::before, *::after {
    box-sizing: border-box;
}

html, body {
    overflow-x: hidden;
    max-width: 100%;
}

body { 
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; 
    background-color: #F5F6F8; 
    -webkit-tap-highlight-color: transparent;
    margin: 0;
}

/* 弹窗打开时锁定页面滚动，保持当前视觉位置不跳动 */
html.page-scroll-lock {
    overflow: hidden !important;
    overscroll-behavior: none;
}
body.page-scroll-lock {
    position: fixed;
    left: 0;
    right: 0;
    width: 100%;
    overflow: hidden !important;
    overscroll-behavior: none;
}

/* 全局移动端字体及间距缩小 */
html {
    font-size: 14px; /* 移动端默认基础字体从 16px 减小到 14px，所有 rem 单位同步缩小 */
}
@media (min-width: 768px) {
    html {
        font-size: 16px; /* PC端恢复默认 16px */
    }
}

/* 隐藏横向滚动条 */
.hide-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.hide-scrollbar::-webkit-scrollbar {
    display: none;
}

/* 玻璃态导航栏 */
.glass-nav { 
    background: rgba(255, 255, 255, 0.95); 
    backdrop-filter: blur(10px); 
    -webkit-backdrop-filter: blur(10px);
}

/* 首页大图背景 */
.hero-bg {
    background: linear-gradient(135deg, rgba(26,58,92,0.85) 0%, rgba(45,90,39,0.85) 100%), 
                url('https://images.unsplash.com/photo-1579546929518-9e396f3cc809?ixlib=rb-4.0.3&auto=format&fit=crop&w=1920&q=80') center/cover no-repeat;
}

/* 导航栏滚动阴影 */
.shadow-md {
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
}

/* 卡片悬浮动画 */
.card-hover { transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); }
.card-hover:hover { 
    transform: translateY(-4px); 
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04); 
}

/* 隐藏滚动条 */
.hide-scrollbar::-webkit-scrollbar { display: none; }
.hide-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }
