/* 网站140 - 渐变背景布局 */
:root { --primary: #9D174D; --secondary: #EC4899; --accent: #F472B6; --text: #1e293b; --text-light: #64748b; --bg: #fdf2f8; --white: #ffffff; --radius: 16px; }
* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: "PingFang SC", sans-serif; background: var(--bg); color: var(--text); }
.container { max-width: 1150px; margin: 0 auto; padding: 0 22px; }

/* 头部 */
.header { background: var(--white); box-shadow: 0 4px 20px rgba(157,23,77,0.1); position: sticky; top: 0; z-index: 100; }
.navbar { padding: 16px 0; display: flex; justify-content: space-between; align-items: center; }
.logo { font-size: 23px; font-weight: 700; color: var(--primary); letter-spacing: 1px; }
.nav-menu { display: flex; gap: 6px; list-style: none; }
.nav-menu a { padding: 10px 18px; color: var(--text); text-decoration: none; border-radius: 25px; transition: all 0.3s; font-size: 14px; font-weight: 500; }
.nav-menu a:hover { background: rgba(157,23,77,0.08); color: var(--primary); }
.nav-menu a.active { background: linear-gradient(135deg, var(--primary), var(--secondary)); color: var(--white); }

/* 顶部条 */
.top-bar { background: linear-gradient(90deg, var(--primary), var(--secondary)); color: var(--white); padding: 8px 0; font-size: 13px; }
.top-bar .container { display: flex; justify-content: center; gap: 35px; }
.top-bar a { color: var(--white); text-decoration: none; opacity: 0.95; }

/* 英雄区 */
.hero { background: linear-gradient(135deg, var(--primary), var(--secondary)); padding: 75px 0; text-align: center; color: var(--white); border-radius: 0 0 30px 30px; }
.hero h1 { font-size: 35px; margin-bottom: 14px; font-weight: 700; }
.hero p { font-size: 17px; opacity: 0.95; }

/* 功能区 - 3列 */
.features { padding: 55px 0; }
.section-title { text-align: center; font-size: 27px; margin-bottom: 42px; color: var(--text); font-weight: 600; }
.feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.feature-card { background: var(--white); padding: 32px 26px; border-radius: var(--radius); text-align: center; box-shadow: 0 5px 20px rgba(157,23,77,0.08); transition: all 0.3s; }
.feature-card:hover { transform: translateY(-6px); box-shadow: 0 12px 35px rgba(157,23,77,0.15); }
.feature-icon { width: 60px; height: 60px; background: linear-gradient(135deg, var(--primary), var(--secondary)); border-radius: 18px; display: flex; align-items: center; justify-content: center; margin: 0 auto 16px; color: var(--white); font-size: 26px; box-shadow: 0 6px 15px rgba(157,23,77,0.3); }
.feature-card h3 { font-size: 18px; margin-bottom: 10px; color: var(--text); }
.feature-card p { font-size: 14px; color: var(--text-light); line-height: 1.7; }

/* 内容区 */
.content-area { padding: 48px 0; }
.content-section { background: var(--white); padding: 32px; border-radius: var(--radius); margin-bottom: 20px; box-shadow: 0 4px 15px rgba(157,23,77,0.06); }
.content-section h2 { font-size: 21px; color: var(--primary); margin-bottom: 12px; font-weight: 600; }
.content-section p { font-size: 15px; color: var(--text-light); line-height: 1.8; }

/* CTA */
.cta { background: linear-gradient(135deg, var(--primary), var(--secondary)); padding: 58px 0; text-align: center; color: var(--white); border-radius: 30px 30px 0 0; }
.cta h2 { font-size: 27px; margin-bottom: 12px; }
.cta .btn { display: inline-block; padding: 13px 38px; background: var(--white); color: var(--primary); border-radius: 30px; font-weight: 600; text-decoration: none; margin-top: 15px; }

/* 底部 */
.footer { background: #4a044e; color: var(--white); padding: 45px 0 20px; border-radius: 30px 30px 0 0; }
.footer-content { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 35px; text-align: center; }
.footer-section h4 { font-size: 16px; margin-bottom: 15px; color: var(--accent); }
.footer-section p { color: #f9a8d4; font-size: 13px; margin-bottom: 8px; }
.footer-bottom { text-align: center; padding-top: 25px; border-top: 1px solid #7c2d6b; color: #f472b6; font-size: 12px; }

.mobile-toggle { display: none; flex-direction: column: gap: 4px; background: none; border: none; cursor: pointer; }
.mobile-toggle span { width: 22px; height: 2px; background: var(--primary); }

@media (max-width: 992px) { .feature-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 768px) {
    .navbar { flex-wrap: wrap; }
    .nav-menu { display: none; width: 100%; flex-direction: column; margin-top: 15px; }
    .nav-menu.active { display: flex; }
    .mobile-toggle { display: flex; }
    .hero, .cta, .footer { border-radius: 0; }
    .hero h1 { font-size: 24px; }
    .top-bar .container { flex-direction: column; gap: 8px; }
}
