/* ========== 全站统一内页头部横幅 inner-banner 所有列表页共用 ========== */
.inner-banner {
    width: 100%;
    height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: linear-gradient(135deg, #a855f7 0%, #ec4899 30%, #f59e0b 60%, #10b981 100%) !important;
}
.inner-banner .container,
.inner-banner .banner-text {
    text-align: center;
}
.inner-banner h1 {
    font-size: 32px;
    margin-bottom: 10px;
    font-weight: 600;
}
.inner-banner p {
    font-size: 15px;
    opacity: 0.95;
}

/* ========== 通用板块标题 title-head ========== */
.title-head{
    text-align:center;
    margin-bottom:50px;
}
.title-head h2{
    font-size:32px;
    color:#ec4899;
    margin-bottom:10px;
    font-weight:600;
}
.title-head p{
    color:#64748b;
    font-size:15px;
}

/* ========== 通用分页 page-box（service/news/case列表共用） ========== */
.page-box {
    margin-top: 50px;
    text-align: center;
}
.page-box a, .page-box span {
    display: inline-block;
    padding: 8px 16px;
    margin: 0 4px;
    border-radius: 6px;
}
.page-box a {
    border: 1px solid rgba(236, 72, 153, 0.15);
    color: #ec4899;
    background: #fff;
}
.page-box a:hover {
    background: rgba(236, 72, 153, 0.08);
}
.page-box span.current {
    background: #ec4899;
    color: #fff;
    border: 1px solid #ec4899;
}

/* ========== 底部统一咨询横幅 contact-banner ========== */
.contact-banner {
    width: 100%;
    padding:60px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: linear-gradient(135deg, #a855f7 0%, #ec4899 30%, #f59e0b 60%, #10b981 100%) !important;
    text-align:center;
}
.contact-banner h2 {
    font-size:30px;
    margin-bottom:15px;
    font-weight:600;
}
.contact-banner p {
    font-size:16px;
    opacity:0.95;
    margin-bottom:30px;
}
.contact-banner .btn{
    display:inline-block;
    background:rgba(255,255,255,0.12);
    color:#fff;
    padding:12px 32px;
    border-radius:30px;
    transition:all 0.3s;
    border:1px solid rgba(255,255,255,0.35);
}
.contact-banner .btn:hover{
    background:rgba(255,255,255,0.22);
    color:#fff;
}

/* ========== 通用白色卡片hover动画（faq/case/news/contact/about共用） ========== */
.news-item,.case-item,.faq-item,.contact-info-item,.contact-map-item,.about-card{
    background:#fff;
    padding:32px;
    border-radius:12px;
    box-shadow:0 3px 15px rgba(0,0,0,0.04);
    margin-bottom:20px;
    transition:all 0.3s;
}
.news-item:hover,.case-item:hover,.faq-item:hover,.contact-info-item:hover,.contact-map-item:hover,.about-card:hover {
    transform:translateY(-4px);
    box-shadow:0 10px 30px rgba(236, 72, 153, 0.12);
}

/* ========== 通用图片样式（faq/about配图） ========== */
.faq-img,.about-map{
    max-width:100%;
    max-height:320px;
    margin:12px 0 0;
    border-radius:6px;
}

/* ========== 列表页面统一主体容器背景 ========== */
.service-page-section,.news-page-section,.faq-page-section,.case-page-section,.contact-page-section {
    padding: 80px 0;
    background: #f8fafc;
}

/* ========== 通用卡片小标题 h4/h3 粉色统一 ========== */
.faq-item h4,.contact-item h4,.about-card h4,.news-item h3,.case-item h3{
    color:#ec4899;
    margin-bottom:12px;
    font-size:18px;
    font-weight:600;
}

/* ========== 通用正文文字颜色 ========== */
.faq-item p,.contact-item p,.about-card p,.news-item p,.case-item p{
    color:#64748b;
    line-height:1.8;
    margin:8px 0;
}

/* ========== 移动端基础通用适配 ========== */
@media(max-width:768px){
    .news-list,.case-list {
        grid-template-columns:1fr;
    }
    .contact-wrap{
        grid-template-columns:1fr;
    }
    .contact-info-item,.contact-map-item,.about-card,.faq-item{
        padding:20px 16px;
    }
    .inner-banner h1{
        font-size:28px;
    }
}