/* ===== 设计变量 ===== */
:root {
    /* ===== 阿里红主色（全站核心） ===== */
    --primary: #E1251B;
    --primary-dark: #B71C1C;
    --primary-light: #FF5252;
    --primary-soft: #FDECEA;

    /* ===== 中性灰阶（承载大面积） ===== */
    --bg: #FFFFFF;
    --bg-alt: #F7F8FA;
    --bg-dark: #1A0E0E;   /* 深红墨：页脚/深色区 */
    --text: #1F2329;
    --text-soft: #5A6270;
    --text-light: #99A0AB;
    --border: #EAECEF;

    /* ===== 阴影：全部中性化（仅主按钮保留红阴影） ===== */
    --shadow-sm: 0 1px 3px rgba(0,0,0,.05), 0 1px 2px rgba(0,0,0,.03);
    --shadow-md: 0 4px 12px rgba(0,0,0,.07), 0 2px 4px rgba(0,0,0,.04);
    --shadow-lg: 0 12px 32px rgba(0,0,0,.10), 0 4px 8px rgba(0,0,0,.05);
    --shadow-primary: 0 8px 24px rgba(225,37,27,.22);

    --radius-xs: 6px;
    --radius-sm: 10px;
    --radius: 16px;
    --radius-md: 16px;
    --radius-lg: 24px;
    --radius-full: 9999px;

    --maxw: 1200px;
    --nav-h: 80px;
    --font: "PingFang SC", "Microsoft YaHei", "Hiragino Sans GB", system-ui, -apple-system, sans-serif;
}

/* ===== 基础重置 ===== */
* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: var(--nav-h); }
body {
    font-family: var(--font);
    color: var(--text);
    background: var(--bg);
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
}
img { max-width: 100%; display: block; }
a { text-decoration: none; color: inherit; }
.container { max-width: var(--maxw); margin: 0 auto; padding: 0 24px; }
.section { padding: 88px 0; }
/* 交错底色改为显式修饰类，避免多页结构下 nth-child 错位 */
.section--alt { background: var(--bg-alt); }

/* ===== 按钮 ===== */
.btn {
    display: inline-flex; align-items: center; justify-content: center;
    gap: 8px; padding: 12px 28px; border-radius: 50px;
    font-size: 15px; font-weight: 600; cursor: pointer; border: none;
    transition: all .3s ease; white-space: nowrap;
}
.btn-primary { background: linear-gradient(135deg, var(--primary) 0%, var(--primary-dark) 100%); color: #fff; box-shadow: var(--shadow-primary); }
.btn-primary:hover { background: linear-gradient(135deg, #F0352A 0%, var(--primary-dark) 100%); transform: translateY(-2px); box-shadow: 0 12px 28px rgba(225,37,27,.32), 0 4px 8px rgba(0,0,0,.10); }
.btn-outline { background: transparent; color: #fff; border: 1.5px solid rgba(255,255,255,.7); }
.btn-outline:hover { background: rgba(255,255,255,.12); border-color: #fff; }
.btn-lg { padding: 15px 38px; font-size: 16px; }
.btn-block { width: 100%; }

/* ===== 导航 ===== */
.header {
    position: fixed; top: 0; left: 0; right: 0; height: var(--nav-h);
    z-index: 1000; background: rgba(255,255,255,.92);
    backdrop-filter: blur(12px); border-bottom: 1px solid var(--border);
    transition: all .3s ease;
}
.header.scrolled { box-shadow: var(--shadow-sm); }
.header-inner { display: flex; align-items: center; justify-content: space-between; height: 100%; overflow: hidden; }
.logo-img { height: 80px; width: auto; display: block; }
.logo-text {
    font-size: 24px; font-weight: 800; letter-spacing: 1px; color: var(--primary);
    display: inline-flex; align-items: center; line-height: 1;
}
.nav { display: flex; gap: 4px; }
.nav-link {
    padding: 8px 18px; font-size: 15px; font-weight: 500; color: var(--text-soft);
    border-radius: var(--radius-full); transition: all .25s; position: relative;
}
.nav-link:hover { color: var(--text); background: var(--bg-alt); }
.nav-link.active { color: var(--primary); background: var(--primary-soft); font-weight: 600; }
.nav-link.active::after { display: none; }
.header-cta { padding: 9px 22px; font-size: 14px; }
.hamburger { display: none; flex-direction: column; gap: 5px; background: none; border: none; cursor: pointer; padding: 4px; }
.hamburger span { width: 24px; height: 2px; background: var(--text); border-radius: 2px; transition: .3s; }
.hamburger.active span:nth-child(1) { transform: rotate(45deg) translate(5px,5px); }
.hamburger.active span:nth-child(2) { opacity: 0; }
.hamburger.active span:nth-child(3) { transform: rotate(-45deg) translate(5px,-5px); }

/* ===== Hero ===== */
.hero {
    position: relative; min-height: 100vh; display: flex; align-items: center;
    padding-top: var(--nav-h); overflow: hidden;
    background: linear-gradient(135deg, #8E1B14 0%, #B71C1C 35%, #E1251B 75%, #FF5252 100%);
}
.hero-bg {
    position: absolute; inset: 0; z-index: 0;
    background-image:
        radial-gradient(circle at 80% 20%, rgba(255,255,255,.12) 0%, transparent 40%),
        radial-gradient(circle at 15% 80%, rgba(255,255,255,.08) 0%, transparent 35%);
}
.hero-bg::before {
    content: ''; position: absolute; inset: 0;
    background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='rgba(255,255,255,0.05)' stroke-width='1'%3E%3Cpath d='M0 30h60M30 0v60'/%3E%3C/g%3E%3C/svg%3E");
    opacity: .6;
}
.hero-inner { position: relative; z-index: 2; display: flex; align-items: center; justify-content: space-between; gap: 56px; }
.hero-content { color: #fff; max-width: 560px; padding: 60px 0; }
/* ===== Hero 右侧信息面板：品牌轮播 + 公司动态 + 拍卖公告 ===== */
.hero-panel { flex: 0 0 460px; display: flex; flex-direction: column; gap: 16px; }

/* 轮播：object-fit:contain 保证每张图片 100% 完整显示，不被裁剪 */
.hero-carousel { position: relative; width: 100%; aspect-ratio: 16 / 9; background: linear-gradient(135deg, #1A0E0E, #3A1410); border-radius: 16px; overflow: hidden; box-shadow: 0 24px 60px rgba(0,0,0,.30); }
.hc-track { display: flex; height: 100%; transition: transform .5s ease; will-change: transform; }
.hc-slide { flex: 0 0 100%; height: 100%; }
.hc-slide img { width: 100%; height: 100%; object-fit: contain; object-position: center; display: block; }
.hc-arrow { position: absolute; top: 50%; transform: translateY(-50%); width: 38px; height: 38px; border: none; border-radius: 50%; background: rgba(0,0,0,.35); color: #fff; font-size: 22px; line-height: 1; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background .2s; z-index: 3; }
.hc-arrow:hover { background: var(--primary); transform: translateY(-50%) scale(1.08); }
.hc-prev { left: 10px; }
.hc-next { right: 10px; }
.hc-dots { position: absolute; bottom: 10px; left: 50%; transform: translateX(-50%); display: flex; gap: 7px; z-index: 3; }
.hc-dot { width: 8px; height: 8px; border: none; padding: 0; border-radius: 50%; background: rgba(255,255,255,.5); cursor: pointer; transition: all .25s; }
.hc-dot:hover { background: rgba(255,255,255,.85); }
.hc-dot.active { width: 22px; border-radius: 5px; background: var(--primary); }

/* 公司动态 / 拍卖公告 模块 */
.hp-news, .hp-notices { background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12); border-radius: 14px; padding: 13px 15px; }
.hp-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 6px; }
.hp-head h3 { margin: 0; font-size: 15px; font-weight: 700; color: #fff; display: flex; align-items: center; gap: 8px; }
.hp-head .nh-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--primary); display: inline-block; }
.hp-head .nh-more { font-size: 12.5px; color: rgba(255,255,255,.7); text-decoration: none; }
.hp-head .nh-more:hover { color: #fff; }
.hp-list { display: flex; flex-direction: column; }
.hp-item { display: flex; align-items: baseline; gap: 10px; padding: 7px 0; border-bottom: 1px solid rgba(255,255,255,.07); }
.hp-item:last-child { border-bottom: none; }
.hp-date { flex: 0 0 auto; font-size: 12px; color: rgba(255,255,255,.5); font-variant-numeric: tabular-nums; }
.hp-title { flex: 1 1 auto; min-width: 0; font-size: 13.5px; color: rgba(255,255,255,.92); line-height: 1.5; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* ===== 知识中心面板（首页 Hero 右侧：公司动态 / 拍卖公告）—— 紧凑模式 ===== */
.hp-item.kb-item {
    display: flex; align-items: center; gap: 8px;
    padding: 6px 0; border-bottom: 1px solid rgba(255,255,255,.06);
    text-decoration: none; color: inherit;
    transition: background .18s ease; border-radius: 6px;
    margin: 0 -4px; padding-left: 4px; padding-right: 4px;
}
.hp-item.kb-item:hover { background: rgba(255,255,255,.05); }
.hp-item.kb-item:last-child { border-bottom: none; }
/* 日期：单行内联，无背景框 */
.kb-date { flex: 0 0 auto; font-size: 12.5px; font-weight: 600; color: rgba(255,255,255,.5);
    font-variant-numeric: tabular-nums; min-width: 34px; }
.kb-body { flex: 1 1 auto; min-width: 0; }
.kb-title-row { display: flex; align-items: center; gap: 5px; }
.kb-rec { font-size: 11px; flex-shrink: 0; line-height: 1; }
.kb-title { font-size: 13px; font-weight: 500; color: rgba(255,255,255,.9);
    line-height: 1.35; white-space: nowrap; overflow: hidden;
    text-overflow: ellipsis; transition: color .18s; }
.kb-item:hover .kb-title { color: #fff; }
/* 分类标签：内嵌标题行右侧，小圆角胶囊 */
.kb-cat-tag { display: inline-block; font-size: 10px; padding: 1px 6px;
    background: rgba(225,37,27,.22); color: #ff8a80; border-radius: 8px;
    font-weight: 500; white-space: nowrap; flex-shrink: 0; letter-spacing: .2px;
    line-height: 1.6; }
.kb-empty { text-align: center; padding: 14px 0; color: rgba(255,255,255,.3); font-size: 12.5px; }

/* 分页控件（紧凑） */
.kb-page-bar { padding: 5px 0 1px; }
.kb-pagination { display: flex; align-items: center; justify-content: center; gap: 10px; }
.kb-page-btn { font-size: 12px; padding: 3px 10px; background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.15); border-radius: 6px; color: rgba(255,255,255,.7);
    cursor: pointer; transition: all .2s; font-family: inherit; }
.kb-page-btn:hover:not(:disabled) { background: rgba(255,255,255,.15); color: #fff; }
.kb-page-btn:disabled { opacity: .3; cursor: default; }
.kb-page-info { font-size: 11.5px; color: rgba(255,255,255,.4); }
@keyframes floatY { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-12px); } }
.float-a { animation: floatY 6s ease-in-out infinite; }
.float-b { animation: floatY 5s ease-in-out infinite .5s; }
.float-c { animation: floatY 7s ease-in-out infinite 1s; }
.hero-badge {
    display: inline-flex; align-items: center; gap: 8px; padding: 7px 18px;
    background: rgba(255,255,255,.15); border: 1px solid rgba(255,255,255,.25);
    border-radius: 50px; font-size: 14px; font-weight: 500; margin-bottom: 24px;
    backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);
}
.hero-badge .dot { width: 8px; height: 8px; background: #4CAF50; border-radius: 50%; box-shadow: 0 0 0 3px rgba(76,175,80,.3); }
.hero-rotate { display: inline-block; transition: opacity .3s ease; }
.hero-title { font-size: 56px; font-weight: 800; line-height: 1.15; letter-spacing: -1px; margin-bottom: 20px; text-shadow: 0 2px 16px rgba(0,0,0,.18); }
.hero-subtitle { font-size: 19px; opacity: .92; margin-bottom: 36px; font-weight: 300; }
.hero-actions { display: flex; gap: 16px; margin-bottom: 56px; flex-wrap: wrap; }
.hero-stats { display: flex; gap: 48px; flex-wrap: wrap; }
.stat-num { font-size: 42px; font-weight: 800; line-height: 1; }
.stat-label { font-size: 14px; opacity: .85; margin-top: 6px; }
.hero-scroll {
    position: absolute; bottom: 28px; left: 50%; transform: translateX(-50%);
    width: 26px; height: 42px; border: 2px solid rgba(255,255,255,.5); border-radius: 14px; z-index: 3;
}
.hero-scroll span {
    position: absolute; top: 8px; left: 50%; transform: translateX(-50%);
    width: 4px; height: 8px; background: #fff; border-radius: 2px; animation: scroll 1.8s infinite;
}
@keyframes scroll { 0%{opacity:0;top:8px} 40%{opacity:1} 80%{opacity:0;top:22px} 100%{opacity:0} }

/* ===== Section Header ===== */
.section-header { text-align: center; max-width: 680px; margin: 0 auto 56px; }
.section-tag {
    display: inline-block; padding: 5px 16px; background: var(--primary-soft);
    color: var(--primary); font-size: 14px; font-weight: 600; border-radius: 50px; margin-bottom: 16px;
}
.section-title { font-size: 38px; font-weight: 800; letter-spacing: -.5px; margin-bottom: 12px; }
.section-desc { font-size: 17px; color: var(--text-soft); }

/* ===== 核心优势 ===== */
.features-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.feature-card {
    background: var(--bg); border: none; border-radius: var(--radius-md);
    padding: 36px 28px; text-align: center; transition: all .35s ease; box-shadow: var(--shadow-sm);
}
.feature-card:hover { transform: translateY(-8px); box-shadow: var(--shadow-lg); }
.feature-icon {
    width: 64px; height: 64px; border-radius: 18px; background: var(--primary-soft);
    color: var(--primary); display: flex; align-items: center; justify-content: center;
    margin: 0 auto 20px; transition: all .35s;
}
.feature-icon svg { width: 32px; height: 32px; }
.feature-card:hover .feature-icon { background: var(--primary); color: #fff; transform: rotate(-8deg) scale(1.05); }
.feature-card h3 { font-size: 20px; font-weight: 700; margin-bottom: 12px; }
.feature-card p { font-size: 14.5px; color: var(--text-soft); line-height: 1.7; }

/* ===== 服务流程（7 步） ===== */
.process-steps { display: grid; grid-template-columns: repeat(7, 1fr); gap: 14px; }
.step {
    position: relative; background: var(--bg); border-radius: var(--radius-md);
    padding: 28px 18px; text-align: center; border: none; box-shadow: var(--shadow-sm);
    transition: all .3s;
}
.step:hover { box-shadow: var(--shadow-md); transform: translateY(-4px); }
.step-num {
    font-size: 28px; font-weight: 800; color: var(--primary); opacity: .25;
    margin-bottom: 8px; font-style: italic;
}
.step h4 { font-size: 16px; font-weight: 700; margin-bottom: 8px; }
.step p { font-size: 13px; color: var(--text-soft); }
.step:not(:last-child)::after {
    content: ''; position: absolute; top: 50%; right: -10px; width: 20px; height: 2px;
    background: linear-gradient(90deg, var(--primary), transparent); transform: translateY(-50%);
}

/* ===== 案例展示 ===== */
.case-filters { display: flex; justify-content: center; gap: 12px; flex-wrap: wrap; margin-bottom: 40px; }
.filter-btn {
    padding: 9px 24px; border: 1.5px solid var(--border); background: var(--bg);
    border-radius: 50px; font-size: 14.5px; font-weight: 500; color: var(--text-soft);
    cursor: pointer; transition: all .25s;
}
.filter-btn:hover { border-color: var(--primary); color: var(--primary); }
.filter-btn.active { background: var(--primary); color: #fff; border-color: var(--primary); box-shadow: var(--shadow-primary); }
.cases-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }

.case-card {
    background: var(--bg); border-radius: var(--radius-lg); overflow: hidden;
    border: none; box-shadow: var(--shadow-sm); transition: all .35s ease; display: flex; flex-direction: column;
}
.case-card:hover { transform: translateY(-8px); box-shadow: var(--shadow-lg); }
.case-cover {
    position: relative; height: 210px; overflow: hidden; background: #eee;
    border-radius: var(--radius-lg) var(--radius-lg) 0 0;
}
.case-img {
    position: absolute; inset: 0; width: 100%; height: 100%;
    object-fit: cover; z-index: 0; transition: transform .6s ease;
}
.case-card:hover .case-img { transform: scale(1.08); }
.case-cover::before {
    content: ''; position: absolute; inset: 0; z-index: 1;
    background: linear-gradient(to top, rgba(0,0,0,.62) 0%, rgba(0,0,0,.12) 45%, rgba(0,0,0,.30) 100%);
}
.case-cover::after {
    content: ''; position: absolute; inset: 0; z-index: 1; opacity: .45;
    background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='rgba(255,255,255,0.12)' stroke-width='1'%3E%3Cpath d='M0 20h40M20 0v40'/%3E%3C/g%3E%3C/svg%3E");
}
.case-cover .cover-icon { position: absolute; top: 14px; right: 14px; z-index: 2; opacity: .92; color: #fff; filter: drop-shadow(0 2px 6px rgba(0,0,0,.45)); }
.case-cover .cover-icon svg { width: 38px; height: 38px; }
.case-badge {
    position: absolute; z-index: 2; left: 16px; bottom: 16px; display: inline-flex; align-items: center; gap: 6px;
    padding: 5px 14px; background: rgba(0,0,0,.42); border: 1px solid rgba(255,255,255,.28); border-radius: 50px;
    font-size: 13px; font-weight: 600; color: #fff; backdrop-filter: blur(6px);
}
/* 待开拍/预告 角标 —— 琥珀色，区别于已成交的红/深色徽标 */
.case-badge.badge-preview {
    background: linear-gradient(135deg, #FF8F00 0%, #F57C00 100%);
    border-color: rgba(255,255,255,.55);
    box-shadow: 0 4px 14px rgba(245,124,0,.45);
    color: #fff;
}
.case-badge.badge-preview::before {
    content: ''; width: 7px; height: 7px; border-radius: 50%;
    background: #fff; box-shadow: 0 0 0 3px rgba(255,255,255,.35);
    animation: pulse-dot 1.4s ease-in-out infinite;
}
@keyframes pulse-dot { 0%,100% { transform: scale(1); opacity: 1; } 50% { transform: scale(1.5); opacity: .55; } }
/* 预告卡片的整体弱化区分 */
.case-card.is-preview { border-color: rgba(245,124,0,.35); }
.case-card.is-preview:hover { border-color: rgba(245,124,0,.7); }
.preview-state { color: #F57C00 !important; }
.case-body { padding: 22px; flex: 1; display: flex; flex-direction: column; }
.case-title { font-size: 17px; font-weight: 700; line-height: 1.4; margin-bottom: 6px; min-height: 48px; }
.case-meta { font-size: 13px; color: var(--text-soft); margin-bottom: 10px; }
.case-date { font-size: 12px; color: var(--brand-2, #1565C0); margin: 0 0 16px; font-weight: 600; }
.case-prices { display: flex; gap: 16px; padding: 14px 0; border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); margin-bottom: 16px; }
.price-item { flex: 1; }
.price-item .pl { font-size: 12px; color: var(--text-light); margin-bottom: 4px; }
.price-item .pv { font-size: 20px; font-weight: 800; color: var(--primary); }
.price-item .pv small { font-size: 13px; font-weight: 600; }
.case-foot { display: flex; align-items: center; justify-content: space-between; margin-top: auto; }
.case-cycle { font-size: 13px; color: var(--text-soft); }
.case-cycle b { color: var(--text); font-size: 15px; }
.case-link {
    font-size: 14px; font-weight: 600; color: var(--primary); display: inline-flex; align-items: center; gap: 4px;
    transition: gap .25s;
}
.case-link:hover { gap: 8px; }

/* ===== 合作伙伴 ===== */
.partner-inner {
    display: flex; align-items: center; gap: 56px; background: var(--bg);
    border-radius: 24px; padding: 56px; border: 1px solid var(--border); box-shadow: var(--shadow-sm);
}
.partner-logo { flex-shrink: 0; }
.partner-logo-img { height: 150px; width: auto; }
.partner-text h2 { font-size: 28px; font-weight: 800; margin-bottom: 16px; }
.partner-text p { font-size: 16px; color: var(--text-soft); line-height: 1.8; margin-bottom: 20px; }
.partner-tags { display: flex; gap: 12px; flex-wrap: wrap; }
.tag { padding: 7px 18px; background: var(--primary-soft); color: var(--primary); font-size: 14px; font-weight: 500; border-radius: 8px; }

/* ===== 联系我们 ===== */
.contact-inner { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center; }
.contact-info h2 { font-size: 34px; font-weight: 800; margin-bottom: 16px; }
.contact-info > p { font-size: 16px; color: var(--text-soft); margin-bottom: 32px; }
.contact-items { display: flex; flex-direction: column; gap: 20px; }
.contact-item { display: flex; align-items: center; gap: 16px; }
.contact-item svg { width: 22px; height: 22px; color: var(--primary); flex-shrink: 0; }
.contact-item .label { display: block; font-size: 13px; color: var(--text-light); }
.contact-item .value { display: block; font-size: 16px; font-weight: 600; }
.contact-form {
    background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius);
    padding: 36px; box-shadow: var(--shadow-md);
}
.form-group { margin-bottom: 16px; }
.form-group input, .form-group select, .form-group textarea {
    width: 100%; padding: 13px 16px; border: 1.5px solid var(--border); border-radius: var(--radius-sm);
    font-size: 15px; font-family: inherit; transition: border-color .25s; background: var(--bg-alt);
}
.form-group input:focus, .form-group select:focus, .form-group textarea:focus {
    outline: none; border-color: var(--primary); background: #fff;
}
.form-group textarea { resize: vertical; }
.form-tip { font-size: 12.5px; color: var(--text-light); text-align: center; margin-top: 12px; }

/* ===== 页脚 ===== */
.footer { background: var(--bg-dark); color: rgba(255,255,255,.7); padding: 64px 0 24px; }
.footer-inner { display: flex; justify-content: space-between; gap: 48px; flex-wrap: wrap; padding-bottom: 40px; border-bottom: 1px solid rgba(255,255,255,.08); }
.footer-brand { max-width: 280px; }
.footer-logo { height: 44px; width: auto; margin-bottom: 16px; filter: brightness(0) invert(1); opacity: .9; }
.footer-logo-img { height: 180px; width: auto; margin-bottom: 20px; display: block; }
.footer-logo-text { color: #fff; font-size: 26px; font-weight: 800; letter-spacing: 1px; display: inline-block; margin-bottom: 12px; }
.footer-brand p { font-size: 14px; line-height: 1.7; }
.footer-links { display: flex; gap: 56px; flex-wrap: wrap; }
.footer-col h4 { font-size: 15px; font-weight: 700; color: #fff; margin-bottom: 16px; }
.footer-col a { display: block; font-size: 14px; padding: 5px 0; transition: color .25s; }
.footer-col a:hover { color: var(--primary-light); }

/* 页脚二维码 */
.footer-qrs { min-width: 200px; }
.footer-qr-group { display: flex; gap: 16px; }
.footer-qr-item { text-align: center; }
.footer-qr-item img {
    width: 90px; height: 90px; border-radius: 10px;
    background: #fff; padding: 4px;
    object-fit: contain;
}
.footer-qr-item span {
    display: block; font-size: 12px; color: rgba(255,255,255,.6);
    margin-top: 6px;
}
.footer-bottom { text-align: center; padding-top: 24px; font-size: 13px; color: rgba(255,255,255,.4); }

/* ===== 浮动按钮 ===== */
.float-btn {
    position: fixed; right: 24px; bottom: 96px; width: 54px; height: 54px; border-radius: 50%;
    background: var(--primary); color: #fff; display: flex; align-items: center; justify-content: center;
    box-shadow: 0 6px 20px rgba(211,47,47,.4); z-index: 900; transition: transform .25s;
}
.float-btn svg { width: 24px; height: 24px; }
.float-btn:hover { transform: scale(1.1); }
.back-top {
    position: fixed; right: 24px; bottom: 28px; width: 46px; height: 46px; border-radius: 50%;
    background: #fff; color: var(--text); border: 1px solid var(--border); display: flex; align-items: center;
    justify-content: center; box-shadow: var(--shadow-md); z-index: 900; cursor: pointer; opacity: 0;
    visibility: hidden; transition: all .3s;
}
.back-top svg { width: 22px; height: 22px; }
.back-top.show { opacity: 1; visibility: visible; }
.back-top:hover { background: var(--primary); color: #fff; }

/* ===== 动画 ===== */
.reveal { opacity: 0; transform: translateY(30px); transition: opacity .6s ease, transform .6s ease; }
.reveal.in { opacity: 1; transform: none; }

/* ===== 响应式 ===== */
@media (max-width: 1024px) {
    .features-grid { grid-template-columns: repeat(2, 1fr); }
    .process-steps { grid-template-columns: repeat(4, 1fr); }
    .step:not(:last-child)::after { display: none; }
    .cases-grid { grid-template-columns: repeat(2, 1fr); }
    .hero-title { font-size: 46px; }
}
@media (max-width: 768px) {
    .nav {
        position: fixed; top: var(--nav-h); left: 0; right: 0; flex-direction: column; gap: 0;
        background: #fff; padding: 12px; box-shadow: var(--shadow-md); transform: translateY(-150%);
        transition: transform .35s ease; border-top: 1px solid var(--border);
    }
    .nav.open { transform: translateY(0); }
    .nav-link { padding: 14px 16px; border-radius: 0; border-bottom: 1px solid var(--border); }
    .nav-link.active::after { display: none; }
    .nav-link.active { background: var(--primary-soft); }
    .hamburger { display: flex; }
    .header-cta { display: none; }
    .section { padding: 60px 0; }
    .section-title { font-size: 28px; }
    .hero-title { font-size: 34px; }
    .hero-subtitle { font-size: 16px; }
    .hero-stats { gap: 28px; }
    .hero-inner { flex-direction: column; gap: 32px; }
    .hero-content { max-width: 100%; padding: 40px 0 0; }
    .hero-panel { flex: none; width: 100%; max-width: 480px; margin: 0 auto; }
    .stat-num { font-size: 32px; }
    .features-grid { grid-template-columns: 1fr; }
    .org-types .feature-card { padding: 28px 22px 26px; }
    .org-types .feature-icon { width: 60px; height: 60px; border-radius: 16px; margin-bottom: 18px; }
    .org-types .feature-icon svg { width: 28px; height: 28px; }
    .org-types .feature-card h3 { font-size: 19px; }
    .org-types .section-title { font-size: 26px; }
    .process-steps { grid-template-columns: repeat(2, 1fr); }
    .cases-grid { grid-template-columns: 1fr; gap: 20px; }
    .partner-inner { flex-direction: column; text-align: center; padding: 36px 24px; gap: 28px; }
    .partner-tags { justify-content: center; }
    .contact-inner { grid-template-columns: 1fr; gap: 36px; }
    .hero-actions .btn { flex: 1; }
    .float-btn { bottom: 84px; }
}
@media (max-width: 480px) {
    .container { padding: 0 16px; }
    .hero-title { font-size: 28px; }
    .hero-panel { display: flex; }
    .hp-title { font-size: 13px; }
    .hero-stats { gap: 20px; }
    .stat-num { font-size: 26px; }
    .section-title { font-size: 24px; }
    .process-steps { grid-template-columns: 1fr; }
    .case-filters { gap: 8px; }
    .filter-btn { padding: 7px 16px; font-size: 13px; }
}

/* ===== 关于拍拍通 ===== */
.about-intro { max-width: 860px; margin: 0 auto 48px; text-align: center; }
.about-desc p { font-size: 16px; color: var(--text-soft); line-height: 1.9; margin-bottom: 16px; }
.about-desc strong { color: var(--primary); }

/* —— 图片轮播（Hero 通用）—— */
.carousel-track { display: flex; height: 100%; transition: transform .5s ease; will-change: transform; }
.carousel-slide { flex: 0 0 100%; height: 100%; }
.carousel-slide img { width: 100%; height: 100%; object-fit: cover; display: block; }
.carousel-arrow {
    position: absolute; top: 50%; transform: translateY(-50%);
    width: 46px; height: 46px; border-radius: 50%; border: none; cursor: pointer;
    background: rgba(26,14,14,.45); color: #fff; font-size: 26px; line-height: 1;
    display: flex; align-items: center; justify-content: center;
    transition: background .25s, transform .25s; backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px);
    z-index: 2;
}
.carousel-arrow:hover { background: var(--primary); transform: translateY(-50%) scale(1.08); }
.carousel-prev { left: 16px; }
.carousel-next { right: 16px; }
.carousel-dots {
    position: absolute; bottom: 14px; left: 50%; transform: translateX(-50%);
    display: flex; gap: 8px; z-index: 2;
}
.carousel-dot {
    width: 9px; height: 9px; padding: 0; border: none; border-radius: 50%;
    background: rgba(255,255,255,.55); cursor: pointer; transition: all .3s;
}
.carousel-dot:hover { background: rgba(255,255,255,.85); }
.carousel-dot.active { width: 26px; border-radius: 5px; background: var(--primary); }

/* —— 核心业务 / 公司优势 网格 —— */
.biz-block, .adv-block { margin-bottom: 56px; }
.biz-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.adv-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.biz-card, .adv-card {
    background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius-md);
    padding: 32px 24px; text-align: center; box-shadow: var(--shadow-sm); transition: all .35s ease;
}
.biz-card:hover, .adv-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-lg); border-color: transparent; }
.biz-icon, .adv-icon {
    width: 60px; height: 60px; margin: 0 auto 18px; border-radius: 16px;
    background: var(--primary-soft); color: var(--primary);
    display: flex; align-items: center; justify-content: center; transition: all .35s;
}
.biz-icon svg, .adv-icon svg { width: 30px; height: 30px; }
.biz-card:hover .biz-icon, .adv-card:hover .adv-icon { background: var(--primary); color: #fff; }
.biz-card h4, .adv-card h4 { font-size: 18px; font-weight: 700; margin-bottom: 10px; }
.biz-card p, .adv-card p { font-size: 13.5px; color: var(--text-soft); line-height: 1.7; }

/* 成长历程时间线 */
.timeline { display: flex; justify-content: space-between; position: relative; margin-bottom: 56px; padding: 0 10px; }
.timeline::before { content: ''; position: absolute; top: 7px; left: 24px; right: 24px; height: 2px; background: var(--border); }
.tl-item { position: relative; flex: 1; text-align: center; padding: 0 8px; }
.tl-dot { width: 16px; height: 16px; border-radius: 50%; background: var(--primary); border: 3px solid #fff; box-shadow: 0 0 0 3px var(--primary-soft); margin: 0 auto 16px; position: relative; z-index: 1; }
.tl-date { font-size: 15px; font-weight: 700; color: var(--primary); margin-bottom: 8px; }
.tl-text { font-size: 13px; color: var(--text-soft); line-height: 1.6; }

/* 成果数据 */
.about-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.astat { text-align: center; padding: 28px 16px; background: var(--bg-alt); border-radius: var(--radius); border: 1px solid var(--border); }
.astat-num { font-size: 40px; font-weight: 800; color: var(--primary); line-height: 1; }
.astat-label { font-size: 14px; color: var(--text-soft); margin-top: 10px; }

/* ===== 商拍模式 ===== */
.era-banner {
    display: flex; align-items: center; justify-content: space-between; gap: 32px;
    background: linear-gradient(135deg, #1A1A2E, #2D2D44); color: #fff;
    border-radius: var(--radius); padding: 40px 44px; margin-bottom: 48px;
}
.era-text h3 { font-size: 24px; font-weight: 800; margin-bottom: 10px; }
.era-text em { font-style: normal; color: var(--primary-light); }
.era-text p { font-size: 15px; opacity: .82; }
.era-stats { flex-shrink: 0; text-align: center; }
.era-stats span { display: block; font-size: 14px; opacity: .6; }
.era-stats strong { font-size: 30px; font-weight: 800; color: var(--primary-light); }

.sub-title { font-size: 22px; font-weight: 800; margin: 48px 0 28px; padding-left: 14px; border-left: 4px solid var(--primary); }

/* 传统痛点 */
.pain-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.pain-card { background: var(--bg); border: none; border-radius: var(--radius-md); padding: 28px 24px; box-shadow: var(--shadow-sm); transition: all .3s; }
.pain-card:hover { box-shadow: var(--shadow-md); transform: translateY(-4px); }
.pain-no { font-size: 30px; font-weight: 800; color: var(--border); font-style: italic; margin-bottom: 12px; }
.pain-card h4 { font-size: 18px; font-weight: 700; margin-bottom: 12px; color: var(--text); }
.pain-card p { font-size: 13.5px; color: var(--text-soft); line-height: 1.7; }

/* 阿里商拍4优势 */
.adv-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.adv-card { background: var(--bg); border: none; border-radius: var(--radius-md); padding: 32px 24px; text-align: center; box-shadow: var(--shadow-sm); transition: all .3s; }
.adv-card:hover { box-shadow: var(--shadow-lg); transform: translateY(-6px); border-color: transparent; }
.adv-char { width: 60px; height: 60px; margin: 0 auto 18px; border-radius: 16px; background: var(--primary); color: #fff; display: flex; align-items: center; justify-content: center; font-size: 32px; font-weight: 800; }
.adv-card h4 { font-size: 18px; font-weight: 700; margin-bottom: 10px; }
.adv-card p { font-size: 13.5px; color: var(--text-soft); line-height: 1.7; }
.adv-card b { color: var(--primary); }

/* ===== 新板块响应式 ===== */
@media (max-width: 1024px) {
    .timeline { flex-wrap: wrap; gap: 24px; }
    .timeline::before { display: none; }
    .tl-item { flex: 0 0 30%; }
    .about-stats { grid-template-columns: repeat(2, 1fr); }
    .pain-grid, .biz-grid, .adv-grid { grid-template-columns: repeat(2, 1fr); }
    .era-banner { flex-direction: column; text-align: center; }
}
@media (max-width: 768px) {
    .about-stats { grid-template-columns: repeat(2, 1fr); }
    .pain-grid, .biz-grid, .adv-grid { grid-template-columns: 1fr; }
    .timeline { flex-direction: column; gap: 0; }
    .tl-item { flex: 1; display: flex; align-items: flex-start; gap: 16px; text-align: left; padding: 12px 0; }
    .tl-dot { margin: 0; flex-shrink: 0; }
    .tl-text { font-size: 14px; }
    .era-banner { padding: 32px 24px; }
    .era-stats strong { font-size: 24px; }
    .sub-title { font-size: 19px; }
}

/* ====================================================== */
/* ===== 视觉精修：板块背景配图 / 玻璃拟态 / 装饰 ===== */
/* ====================================================== */

/* —— 浅色板块：真实照片 + 高透白遮罩，保证文字可读 —— */
.section.about,
.section.features,
.section.process,
.section.method,
.section.cases {
    background-color: var(--bg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}
.section.about    { background-image: linear-gradient(rgba(255,255,255,.93), rgba(255,255,255,.87)), url("images/bg-about.jpg"); }
.section.features { background-image: linear-gradient(rgba(255,255,255,.95), rgba(255,255,255,.91)), url("images/bg-hero.jpg"); }
.section.process  { background-image: linear-gradient(rgba(255,255,255,.95), rgba(255,255,255,.91)), url("images/bg-method.jpg"); }
.section.method   { background-image: linear-gradient(rgba(255,255,255,.94), rgba(255,255,255,.89)), url("images/bg-about.jpg"); }
.section.cases    { background-image: linear-gradient(rgba(255,255,255,.96), rgba(255,255,255,.92)), url("images/bg-partner.jpg"); }

/* —— 深色照片板块：合作伙伴 / 联系我们 —— */
.section.partner {
    background-color: #1A0E0E;
    background-image: linear-gradient(rgba(26,14,14,.80), rgba(26,14,14,.88)), url("images/bg-partner.jpg");
    background-size: cover; background-position: center; background-attachment: fixed;
}
.section.contact {
    background-color: #1A0E0E;
    background-image: linear-gradient(rgba(26,14,14,.82), rgba(26,14,14,.90)), url("images/bg-contact.jpg");
    background-size: cover; background-position: center; background-attachment: fixed;
    color: #fff;
}

/* —— 合作伙伴：玻璃卡片 —— */
.section.partner .partner-inner {
    background: rgba(255,255,255,.10); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px);
    border: 1px solid rgba(255,255,255,.18); box-shadow: 0 24px 60px rgba(0,0,0,.38); color: #fff;
}
.section.partner .partner-text h2 { color: #fff; }
.section.partner .partner-text p { color: rgba(255,255,255,.82); }
.section.partner .tag { background: rgba(255,255,255,.16); color: #fff; border: 1px solid rgba(255,255,255,.22); }
.section.partner .partner-logo-img { filter: brightness(0) invert(1); opacity: .95; }

/* —— 联系我们：白色文字 + 玻璃表单 —— */
.section.contact .contact-info h2 { color: #fff; }
.section.contact .contact-info > p { color: rgba(255,255,255,.82); }
.section.contact .contact-item .value { color: #fff; }
.section.contact .contact-item .label { color: rgba(255,255,255,.6); }
.section.contact .contact-form {
    background: rgba(255,255,255,.10); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px);
    border: 1px solid rgba(255,255,255,.22); box-shadow: 0 24px 60px rgba(0,0,0,.38);
}
.section.contact .form-group input,
.section.contact .form-group select,
.section.contact .form-group textarea {
    background: rgba(255,255,255,.12); color: #fff; border-color: rgba(255,255,255,.24);
}
.section.contact .form-group input::placeholder,
.section.contact .form-group textarea::placeholder { color: rgba(255,255,255,.6); }
.section.contact .form-group input:focus,
.section.contact .form-group select:focus,
.section.contact .form-group textarea:focus { background: rgba(255,255,255,.20); border-color: var(--primary-light); }
.section.contact .form-tip { color: rgba(255,255,255,.55); }
.section.contact .contact-item svg { color: var(--primary-light); }

/* —— Hero 浮动光斑装饰 —— */
.hero-floats { position: absolute; inset: 0; z-index: 1; overflow: hidden; pointer-events: none; }
.hero-float {
    position: absolute; border-radius: 50%;
    background: radial-gradient(circle at 30% 30%, rgba(255,255,255,.55), rgba(255,255,255,0) 70%);
    filter: blur(10px); opacity: .25;
}
.hero-float.f1 { width: 300px; height: 300px; top: -70px; right: 6%; }
.hero-float.f2 { width: 190px; height: 190px; bottom: 10%; right: 24%; opacity: .2; }
.hero-float.f3 { width: 130px; height: 130px; top: 28%; left: -36px; opacity: .18; }

/* —— 按钮微光扫过 —— */
.btn-primary { position: relative; overflow: hidden; }
.btn-primary::after {
    content: ''; position: absolute; top: 0; left: -130%; width: 60%; height: 100%;
    background: linear-gradient(120deg, transparent, rgba(255,255,255,.45), transparent);
    transform: skewX(-20deg); transition: left .6s ease;
}
.btn-primary:hover::after { left: 130%; }

/* —— 区块标题精致化 —— */
.section-header { position: relative; }
.section-title { background: linear-gradient(120deg, #1F2329 0%, var(--primary) 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.section.partner .section-title, .section.contact .section-title { -webkit-text-fill-color: #fff; background: none; }

/* —— 移动端：关闭 fixed 背景，避免性能/错位 —— */
@media (max-width: 768px) {
    .section.about, .section.features, .section.process, .section.method, .section.cases,
    .section.partner, .section.contact, .hero { background-attachment: scroll; }
    .hero-float.f3 { display: none; }
}

/* ============================================================
 * 机构招募页（partners.html）
 * ============================================================ */
.org-hero {
    position: relative;
    padding: 100px 0 72px;
    color: #fff;
    overflow: hidden;
    background: linear-gradient(135deg, #2A0B08 0%, #B41E13 55%, #E1251B 100%);
}
.org-hero-bg {
    position: absolute; inset: 0;
    background:
        radial-gradient(620px 380px at 82% 18%, rgba(255,255,255,.16), transparent 60%),
        radial-gradient(460px 300px at 12% 88%, rgba(255,255,255,.10), transparent 60%);
    pointer-events: none;
}
.org-hero-inner { position: relative; z-index: 2; max-width: 760px; }
.org-hero-deco {
    position: absolute;
    top: 0;
    right: 0;
    width: 48%;
    max-width: 540px;
    height: 100%;
    z-index: 1;
    pointer-events: none;
}
.org-hero-deco svg {
    width: 100%;
    height: 100%;
}
.org-badge {
    display: inline-flex; align-items: center; gap: 8px;
    background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.24);
    padding: 7px 16px; border-radius: 999px; font-size: 14px; font-weight: 600;
    margin-bottom: 22px;
}
.org-badge .dot { width: 8px; height: 8px; border-radius: 50%; background: var(--primary); box-shadow: 0 0 0 3px rgba(225,37,27,.35); animation: dot-pulse 2.4s ease-in-out infinite; }
@keyframes dot-pulse { 0%,100% { opacity: 1; } 50% { opacity: .5; } }
.org-hero-title { font-size: 52px; font-weight: 800; line-height: 1.15; letter-spacing: -1px; margin-bottom: 18px; }
.org-hero-sub { font-size: 18px; opacity: .92; line-height: 1.8; margin-bottom: 32px; max-width: 640px; }
.org-hero-actions { display: flex; gap: 16px; flex-wrap: wrap; margin-bottom: 36px; }
.btn-light { background: #fff; color: var(--primary); border: none; font-weight: 700; }
.btn-light:hover { transform: translateY(-2px); box-shadow: 0 12px 28px rgba(0,0,0,.22); }
.btn-outline-light { background: transparent; color: #fff; border: 1.5px solid rgba(255,255,255,.7); }
.btn-outline-light:hover { background: rgba(255,255,255,.12); border-color: #fff; }
.org-hero-stats { display: flex; gap: 48px; flex-wrap: wrap; }
.org-stat-num { font-size: 40px; font-weight: 800; line-height: 1; }
.org-hero .stat-num { color: #fff; }
.org-stat-label { font-size: 14px; opacity: .85; margin-top: 6px; }

/* 招募对象：复用 .features-grid / .feature-card */
.org-types { background: linear-gradient(180deg, #fff 0%, #FAFBFD 100%); }
.org-types .section-header { margin-bottom: 48px; }
.org-types .section-title { font-size: 32px; letter-spacing: .5px; }
.org-types .section-desc { max-width: 640px; margin: 0 auto; font-size: 16px; line-height: 1.8; }

.org-types .feature-card {
    text-align: left;
    background: #fff;
    border: 1px solid #F0EDEE;
    border-radius: var(--radius-lg);
    padding: 36px 30px 34px;
    box-shadow: 0 2px 12px rgba(0,0,0,.04), 0 1px 3px rgba(0,0,0,.03);
    position: relative;
    overflow: hidden;
    transition: all .4s cubic-bezier(.25,.46,.45,.94);
}
.org-types .feature-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 4px;
    background: linear-gradient(90deg, var(--primary), var(--primary-light));
    opacity: 0;
    transition: opacity .35s ease;
}
.org-types .feature-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 50px rgba(225,37,27,.12), 0 8px 20px rgba(0,0,0,.06);
    border-color: transparent;
}
.org-types .feature-card:hover::before { opacity: 1; }

.org-types .feature-icon {
    width: 72px; height: 72px;
    border-radius: 20px;
    background: linear-gradient(135deg, #FDECEA 0%, #FFF0F0 100%);
    color: var(--primary);
    margin: 0 auto 24px;
    display: flex; align-items: center; justify-content: center;
    transition: all .4s cubic-bezier(.25,.46,.45,.94);
    box-shadow: 0 4px 14px rgba(225,37,27,.10);
}
.org-types .feature-icon svg {
    width: 34px; height: 34px;
    stroke-width: 1.8;
    transition: all .35s ease;
}
.org-types .feature-card:hover .feature-icon {
    background: linear-gradient(135deg, var(--primary) 0%, var(--primary-dark) 100%);
    color: #fff;
    transform: rotate(-6deg) scale(1.08);
    box-shadow: 0 8px 24px rgba(225,37,27,.30);
}
.org-types .feature-card:hover .feature-icon svg {
    stroke-width: 1.6;
    filter: drop-shadow(0 2px 4px rgba(0,0,0,.15));
}

.org-types .feature-card h3 {
    font-size: 21px;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 14px;
    letter-spacing: .3px;
    position: relative;
    display: inline-block;
}
.org-types .feature-card h3::after {
    content: '';
    display: block;
    width: 28px; height: 3px;
    background: var(--primary);
    border-radius: 2px;
    margin-top: 10px;
    opacity: .7;
    transition: width .35s ease, opacity .35s ease;
}
.org-types .feature-card:hover h3::after {
    width: 48px;
    opacity: 1;
}

.org-types .feature-card p {
    font-size: 14.5px;
    color: var(--text-soft);
    line-height: 1.85;
    margin: 0;
}

/* ===== 四大服务支柱 ===== */
.pillar-grid {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px;
    margin-bottom: 60px;
}
.pillar-card {
    background: #fff; border: 1px solid #F0E3E1; border-radius: 16px;
    padding: 32px 24px; text-align: center;
    transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.pillar-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-lg); border-color: var(--primary); }
.pillar-icon {
    width: 64px; height: 64px; margin: 0 auto 18px;
    border-radius: 16px;
    background: var(--primary-soft, #fef2f1);
    color: var(--primary, #E1251B);
    display: flex; align-items: center; justify-content: center;
    transition: background .3s ease, color .3s ease, transform .3s ease;
}
.pillar-icon svg { width: 30px; height: 30px; }
.pillar-card:hover .pillar-icon { background: var(--primary); color: #fff; transform: scale(1.08) rotate(-4deg); }
.pillar-card h4 { font-size: 18px; font-weight: 700; margin-bottom: 10px; color: var(--text-dark); }
.pillar-card p { font-size: 14px; color: var(--text-soft); line-height: 1.7; }

/* ===== 收益结构菱形图 ===== */
.profit-diamond-section { margin-top: 50px; }
.diamond-title {
    text-align: center; font-size: 22px; font-weight: 700; color: var(--text-dark);
    margin-bottom: 36px;
}

.diamond-wrapper {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    grid-template-rows: auto auto;
    gap: 18px;
    align-items: center;
    justify-items: center;
    max-width: 880px;
    margin: 0 auto;
}

/* 四角详情卡片 */
.detail-card {
    background: #fff; border: 1px solid #E8E0DF; border-radius: 14px;
    padding: 22px 26px; width: 100%; max-width: 260px;
}
.detail-card ul { list-style: none; padding: 0; margin: 0; }
.detail-card li {
    position: relative; padding-left: 18px; font-size: 14px;
    line-height: 2; color: var(--text-body);
}
.detail-card li::before {
    content: '·'; position: absolute; left: 0;
    font-weight: 700; color: var(--primary); font-size: 18px;
}

.detail-left-top  { justify-self: end; }
.detail-right-top { justify-self: start; }
.detail-left-bottom  { justify-self: end; }
.detail-right-bottom { justify-self: start; }

/* 中央菱形四宫格 */
.diamond-grid {
    grid-column: 2; grid-row: 1 / 3;
    position: relative;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    gap: 6px;
    width: 220px; height: 220px;
    z-index: 1;
}

.diamond-cell {
    background: #fff; border: 2px solid var(--primary);
    border-radius: 12px;
    display: flex; align-items: center; justify-content: center;
    text-align: center;
    font-size: 15px; font-weight: 700;
    color: var(--primary);
    transition: background .25s, color .25s, box-shadow .25s;
}
.diamond-cell:hover {
    background: var(--primary); color: #fff;
    box-shadow: 0 4px 16px rgba(180, 50, 50, 0.2);
}

/* 菱形背景装饰（灰色菱形底） */
.diamond-bg {
    position: absolute;
    top: 50%; left: 50%;
    width: 260px; height: 260px;
    background: #F5F0EF;
    border: 1px solid #E8E0DF;
    transform: translate(-50%, -50%) rotate(45deg);
    z-index: 0;
    border-radius: 12px;
}

/* 合作流程：复用 .step 但改为网格排布 */
.org-steps {
    display: grid; grid-template-columns: repeat(6, 1fr); gap: 16px;
}
.org-steps .step { background: #fff; border: 1px solid #F0E3E1; border-radius: 16px; padding: 22px 14px; text-align: center; transition: transform .3s ease, box-shadow .3s ease; }
.org-steps .step:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); }
.org-steps .step-num {
    display: flex; align-items: center; justify-content: center;
    width: 44px; height: 44px; border-radius: 12px; margin-bottom: 14px;
    background: linear-gradient(135deg, var(--primary) 0%, var(--primary-dark) 100%);
    color: #fff; font-size: 18px; font-weight: 800;
}

/* ===== 资质 / 培训轮播 ===== */
.carousel-wrapper {
    overflow: hidden; border-radius: 16px; background: #fff;
    box-shadow: var(--shadow-sm); position: relative;
}
.carousel-track {
    display: flex; gap: 12px; padding: 20px 0;
    animation: scroll-left 40s linear infinite; width: max-content;
}
.carousel-track:hover { animation-play-state: paused; }
.carousel-track img {
    height: 320px; width: auto; object-fit: cover; border-radius: 10px;
    flex-shrink: 0; box-shadow: 0 2px 8px rgba(0,0,0,.08);
    transition: transform .3s, box-shadow .3s;
}
.carousel-track img:hover {
    transform: scale(1.03); box-shadow: 0 6px 20px rgba(0,0,0,.14);
}
/* 培训图片更大 */
.train-track img { height: 400px; }
@keyframes scroll-left {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

@media (max-width: 768px) {
    .carousel-track img { height: 200px; }
    .train-track img { height: 260px; }
}

/* 入驻申请 */
.org-apply-inner {
    display: grid; grid-template-columns: 1fr 1.05fr; gap: 48px; align-items: start;
}
.org-apply-info .section-title { background: linear-gradient(120deg, #1F2329 0%, var(--primary) 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.org-apply-points { list-style: none; padding: 0; margin: 18px 0 0; }
.org-apply-points li {
    position: relative; padding-left: 26px; margin-bottom: 12px;
    font-size: 15px; color: var(--text-soft); line-height: 1.6;
}
.org-apply-points li::before {
    content: '✓'; position: absolute; left: 0; top: 0;
    color: #fff; background: var(--primary); border-radius: 50%;
    width: 18px; height: 18px; font-size: 11px; line-height: 18px; text-align: center; font-weight: 700;
}
.org-form {
    background: #fff; border: 1px solid #F0E3E1; border-radius: 18px;
    padding: 30px; box-shadow: var(--shadow-md);
}
.form-row { display: flex; gap: 14px; }
.form-row .form-group { flex: 1; }

@media (max-width: 1024px) {
    .pillar-grid { grid-template-columns: repeat(2, 1fr); }
    .org-steps { grid-template-columns: repeat(3, 1fr); }
    .diamond-wrapper { grid-template-columns: 1fr; gap: 14px; }
    .diamond-grid { grid-column: 1; grid-row: auto; width: auto; height: auto; margin: 10px auto; }
    .diamond-bg { display: none; }
    .detail-card { max-width: none; justify-self: stretch; }
    .org-hero-title { font-size: 42px; }
    .org-hero-deco { width: 38%; max-width: 400px; opacity: .7; }
}
@media (max-width: 768px) {
    .pillar-grid { grid-template-columns: repeat(2, 1fr); }
    .pillar-icon { width: 52px; height: 52px; margin-bottom: 14px; }
    .pillar-icon svg { width: 26px; height: 26px; }
    .org-steps { grid-template-columns: 1fr 1fr; }
    .org-apply-inner { grid-template-columns: 1fr; gap: 28px; }
    .form-row { flex-direction: column; gap: 0; }
    .org-hero-title { font-size: 34px; }
    .org-hero-stats { gap: 28px; }
    .org-hero-deco { display: none; }
}

/* —— 委托表单增强（两列布局 + 提交反馈） —— */
.contact-form .form-row { display: flex; gap: 12px; }
.contact-form .form-row .form-group { flex: 1; margin-bottom: 0; }
.form-msg { margin-top: 12px; font-size: 13px; min-height: 18px; line-height: 1.5; }
.form-msg.ok { color: #2E7D32; }
.form-msg.err { color: #C62828; }
@media (max-width: 520px) {
    .contact-form .form-row { flex-direction: column; gap: 0; }
    .contact-form .form-row .form-group { margin-bottom: 14px; }
}

/* ====================================================== */
/* ===== 多页站点新增样式（复用设计令牌） ===== */
/* ====================================================== */

/* —— 子页通用页头横幅（红色渐变，预留导航高度） —— */
.page-banner {
    position: relative; overflow: hidden;
    padding: calc(var(--nav-h) + 56px) 0 56px;
    background: linear-gradient(135deg, #8E1B14 0%, #B71C1C 38%, #E1251B 78%, #FF5252 100%);
    color: #fff;
}
.page-banner::after {
    content: ''; position: absolute; inset: 0; opacity: .14; pointer-events: none;
    background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='rgba(255,255,255,0.6)' stroke-width='1'%3E%3Cpath d='M0 30h60M30 0v60'/%3E%3C/g%3E%3C/svg%3E");
}
.pb-inner { position: relative; z-index: 1; }
.pb-tag {
    display: inline-block; padding: 5px 16px; background: rgba(255,255,255,.16);
    border: 1px solid rgba(255,255,255,.28); border-radius: 50px;
    font-size: 13px; font-weight: 600; letter-spacing: 1px; margin-bottom: 18px;
}
.pb-title { font-size: 44px; font-weight: 800; letter-spacing: -.5px; margin-bottom: 12px; text-shadow: 0 2px 16px rgba(0,0,0,.18); }
.pb-sub { font-size: 17px; opacity: .9; max-width: 640px; font-weight: 300; }
.breadcrumb { font-size: 14px; opacity: .85; margin-top: 22px; }
.breadcrumb a { color: #fff; opacity: .9; }
.breadcrumb a:hover { opacity: 1; text-decoration: underline; }
.breadcrumb span { margin: 0 8px; opacity: .6; }

/* —— 区块「更多 / 查看」入口 —— */
.section-more { text-align: center; margin-top: 48px; }
.section-more .btn-outline { color: var(--primary); border-color: var(--primary); }
.section-more .btn-outline:hover { background: var(--primary); color: #fff; border-color: var(--primary); }

/* —— 关于 / 业务：承诺卡 —— */
.commit-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
.commit-card {
    background: var(--bg); border-radius: var(--radius-md); padding: 32px 26px;
    box-shadow: var(--shadow-sm); transition: all .35s ease; border: 1px solid var(--border);
}
.commit-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-lg); border-color: transparent; }
.commit-ico {
    width: 56px; height: 56px; border-radius: 16px; background: var(--primary-soft); color: var(--primary);
    display: flex; align-items: center; justify-content: center; margin-bottom: 18px; transition: all .35s;
}
.commit-ico svg { width: 28px; height: 28px; }
.commit-card:hover .commit-ico { background: var(--primary); color: #fff; }
.commit-card h4 { font-size: 18px; font-weight: 700; margin-bottom: 10px; }
.commit-card p { font-size: 14px; color: var(--text-soft); line-height: 1.7; }

/* —— 公司愿景 / 定位 深色带 —— */
.vision-band {
    position: relative; overflow: hidden; color: #fff; text-align: center;
    padding: 72px 24px; border-radius: var(--radius-lg);
    background: linear-gradient(135deg, #1A0E0E 0%, #3A1410 60%, #5A1410 100%);
}
.vision-band .vb-tag { color: var(--primary-light); font-size: 14px; font-weight: 600; letter-spacing: 1px; margin-bottom: 18px; }
.vision-band h3 { font-size: 34px; font-weight: 800; margin-bottom: 18px; }
.vision-band p { font-size: 17px; opacity: .85; max-width: 720px; margin: 0 auto; line-height: 1.9; }
.vision-band .pos { color: #FFD9D6; font-weight: 700; }

/* —— 资讯中心：双栏列表 —— */
.news-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; }
.news-col-head {
    display: flex; align-items: center; justify-content: space-between; margin-bottom: 24px;
    padding-bottom: 14px; border-bottom: 2px solid var(--primary);
}
.news-col-head h3 { font-size: 22px; font-weight: 800; display: flex; align-items: center; gap: 10px; }
.news-col-head h3 .nh-dot { width: 10px; height: 10px; border-radius: 3px; background: var(--primary); }
.news-col-head .nh-more { font-size: 14px; font-weight: 600; color: var(--primary); }
.news-list { display: flex; flex-direction: column; gap: 14px; }
.news-item {
    display: flex; gap: 18px; align-items: flex-start; background: var(--bg);
    border: 1px solid var(--border); border-radius: var(--radius-sm); padding: 18px 20px;
    transition: all .3s ease; text-decoration: none; color: inherit;
}
.news-item:hover { box-shadow: var(--shadow-md); transform: translateY(-3px); border-color: rgba(225,37,27,.3); }
.news-date {
    flex-shrink: 0; width: 64px; text-align: center; padding-top: 2px;
}
.news-date .nd-y { font-size: 12px; color: var(--text-light); }
.news-date .nd-d { font-size: 22px; font-weight: 800; color: var(--primary); line-height: 1.1; }
.news-body { flex: 1; }
.news-title { font-size: 16px; font-weight: 700; line-height: 1.5; margin-bottom: 8px; }
.news-summary { font-size: 13.5px; color: var(--text-soft); line-height: 1.7; }
.news-tag {
    display: inline-block; margin-top: 10px; padding: 3px 12px; font-size: 12px; font-weight: 600;
    color: var(--primary); background: var(--primary-soft); border-radius: 50px;
}
/* 摘要默认：可展开项隐藏，预览项直接显示 */
.news-summary { display: none; }
.news-item:not(.js-toggle) .news-summary { display: block; }
.news-item.js-toggle { cursor: pointer; }
.news-item.js-toggle .news-title { padding-right: 22px; position: relative; }
.news-item.js-toggle .news-title::after {
    content: '＋'; position: absolute; right: 0; top: 0; color: var(--primary); font-weight: 700;
}
.news-item.js-toggle.open .news-title::after { content: '－'; }
.news-item.open .news-summary { display: block; margin-top: 10px; }

/* —— 五大引擎 —— */
.engine-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 20px; }
.engine-card {
    position: relative; background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius-md);
    padding: 32px 22px; text-align: center; overflow: hidden; transition: all .35s ease;
}
.engine-card:hover { transform: translateY(-8px); box-shadow: var(--shadow-lg); border-color: transparent; }
.engine-num {
    position: absolute; top: 14px; right: 18px; font-size: 40px; font-weight: 800; font-style: italic;
    color: var(--border); line-height: 1; transition: color .35s;
}
.engine-card:hover .engine-num { color: var(--primary-soft); }
.engine-icon {
    width: 60px; height: 60px; margin: 0 auto 18px; border-radius: 16px;
    background: var(--primary-soft); color: var(--primary); display: flex; align-items: center; justify-content: center;
    transition: all .35s;
}
.engine-icon svg { width: 30px; height: 30px; }
.engine-card:hover .engine-icon { background: var(--primary); color: #fff; }
.engine-card h4 { font-size: 18px; font-weight: 700; margin-bottom: 10px; }
.engine-card p { font-size: 13.5px; color: var(--text-soft); line-height: 1.7; }

/* —— 传统中介 VS 阿里商拍 对比表 —— */
.compare { overflow: hidden; }
.compare-table {
    width: 100%; border-collapse: separate; border-spacing: 0; background: var(--bg);
    border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-md); border: 1px solid var(--border);
}
.compare-table th, .compare-table td {
    padding: 18px 22px; text-align: center; font-size: 15px; border-bottom: 1px solid var(--border);
}
.compare-table thead th { font-size: 17px; font-weight: 800; }
.compare-table thead th:first-child { text-align: left; color: var(--text-soft); font-weight: 600; font-size: 14px; }
.compare-table .col-dim { background: var(--bg-alt); color: var(--text-soft); }
.compare-table .col-ppt { background: var(--primary-soft); color: var(--primary); }
.compare-table tbody th {
    text-align: left; font-weight: 700; color: var(--text); background: var(--bg-alt); font-size: 15px;
}
.compare-table tbody tr:last-child td, .compare-table tbody tr:last-child th { border-bottom: none; }
.compare-table .yes { color: var(--primary); font-weight: 800; }
.compare-table .no { color: var(--text-light); }
.compare-table .vs-mark {
    display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px;
    margin: 0 auto; border-radius: 50%; background: var(--primary); color: #fff; font-weight: 800; font-size: 14px;
}
.compare-note { text-align: center; font-size: 13.5px; color: var(--text-light); margin-top: 18px; }

/* —— 联系页：卖点 + 信息 —— */
.sell-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-bottom: 56px; }
.sell-card {
    background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius-md);
    padding: 34px 28px; box-shadow: var(--shadow-sm); transition: all .35s;
}
.sell-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-lg); }
.sell-num { font-size: 44px; font-weight: 800; color: var(--primary); line-height: 1; margin-bottom: 12px; }
.sell-card h4 { font-size: 19px; font-weight: 700; margin-bottom: 10px; }
.sell-card p { font-size: 14px; color: var(--text-soft); line-height: 1.7; }

/* —— 机构合作：招募类型六宫格（与截图一致） —— */
.partner-type-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}
.partner-type-card {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 24px 22px;
    background: #fff;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    transition: all .3s ease;
}
.partner-type-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-md);
    border-color: transparent;
}
.ptc-icon {
    flex-shrink: 0;
    width: 48px; height: 48px;
    display: flex; align-items: center; justify-content: center;
    background: rgba(225,37,27,.06);
    border-radius: 12px;
}
.ptc-icon svg { width: 24px; height: 24px; }
.partner-type-card h4 {
    font-size: 16px; font-weight: 700; margin-bottom: 6px; color: var(--text);
}
.partner-type-card p {
    font-size: 13.5px; color: var(--text-soft); line-height: 1.65; margin: 0;
}

.contact-side h2 { font-size: 32px; font-weight: 800; margin-bottom: 16px; }
.contact-side > p { font-size: 16px; color: var(--text-soft); line-height: 1.8; margin-bottom: 28px; }
.contact-cta-box {
    margin-top: 32px; padding: 26px 28px; border-radius: var(--radius); background: var(--primary-soft);
    border: 1px solid rgba(225,37,27,.18);
}
.contact-cta-box h4 { font-size: 17px; font-weight: 700; color: var(--primary); margin-bottom: 8px; }
.contact-cta-box p { font-size: 14px; color: var(--text-soft); line-height: 1.7; }

/* —— 移动端：导航里的「委托拍卖」入口（桌面端 CTA 已显示，故隐藏） —— */
.nav-cta { display: none; }
@media (max-width: 768px) {
    .nav-cta { display: block; margin-top: 8px; text-align: center; color: var(--primary); font-weight: 700; background: var(--primary-soft); border-radius: 50px; }
    .header-cta { display: none; }
    .pb-title { font-size: 32px; }
    .pb-sub { font-size: 15px; }
    .commit-grid { grid-template-columns: repeat(2, 1fr); }
    .engine-grid { grid-template-columns: repeat(2, 1fr); }
    .news-grid { grid-template-columns: 1fr; gap: 32px; }
    .sell-grid { grid-template-columns: 1fr; }
    .partner-type-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
    .contact-split { grid-template-columns: 1fr; gap: 36px; }
    .compare-table { display: block; overflow-x: auto; white-space: nowrap; }
    .compare-table th, .compare-table td { padding: 14px 16px; font-size: 13px; }
}
@media (max-width: 480px) {
    .commit-grid { grid-template-columns: 1fr; }
    .engine-grid { grid-template-columns: 1fr; }
    .partner-type-grid { grid-template-columns: 1fr; }
    .pb-title { font-size: 26px; }
}

/* —— 业务页：七步流程详解 —— */
.flow-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
.flow-item {
    display: flex; gap: 20px; align-items: flex-start; background: var(--bg);
    border: 1px solid var(--border); border-radius: var(--radius-md); padding: 26px 28px;
    transition: all .3s ease; box-shadow: var(--shadow-sm);
}
.flow-item:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); border-color: rgba(225,37,27,.3); }
.flow-no {
    flex-shrink: 0; font-size: 34px; font-weight: 800; font-style: italic; color: var(--primary);
    opacity: .85; line-height: 1; min-width: 52px;
}
.flow-item h4 { font-size: 18px; font-weight: 700; margin-bottom: 8px; }
.flow-item p { font-size: 14px; color: var(--text-soft); line-height: 1.7; }
@media (max-width: 768px) {
    .flow-grid { grid-template-columns: 1fr; }
}

/* ===== 案例 ↔ 拍卖公告 联动标识 ===== */
.link-badge {
    display: inline-block; padding: 2px 9px; border-radius: 999px;
    font-size: 12px; line-height: 1.6; font-weight: 600; white-space: nowrap;
}
.link-badge.ok { background: #e8f6ee; color: #1f9254; border: 1px solid #bfe6cd; cursor: pointer; }
.link-badge.none { background: #f1f1f1; color: #999; border: 1px solid #e3e3e3; }
.case-notice-link {
    display: inline-block; margin-top: 12px; font-size: 13px; font-weight: 600;
    color: var(--primary, #c62828); text-decoration: none;
}
.case-notice-link:hover { text-decoration: underline; }
.news-src-link {
    display: inline-block; margin-top: 8px; font-size: 13px; font-weight: 600;
    color: var(--primary, #c62828); text-decoration: none;
}
.news-src-link:hover { text-decoration: underline; }


/* ===== 文章详情页（公司新闻 / 拍卖公告 共用） ===== */
.article-detail {
    max-width: 860px;
    margin: 0 auto;
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-sm);
    padding: 40px 48px;
}
.ad-title {
    font-size: 30px;
    font-weight: 800;
    line-height: 1.35;
    color: #1a1d24;
    margin-bottom: 18px;
    letter-spacing: -.3px;
}
.ad-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 22px;
    padding: 14px 18px;
    margin-bottom: 28px;
    background: #f7f8fa;
    border: 1px solid var(--border);
    border-radius: 10px;
    font-size: 13.5px;
    color: var(--text-soft);
}
.ad-meta-item b { color: #1a1d24; font-weight: 700; }
.ad-cover {
    width: 100%;
    max-height: 460px;
    object-fit: cover;
    border-radius: 12px;
    margin-bottom: 28px;
    background: #f0f1f3;
}
/* —— 正文排版 —— */
.ad-content { font-size: 16px; line-height: 1.9; color: #2b2f38; word-break: break-word; }
.ad-content p { margin: 0 0 18px; }
.ad-content h1, .ad-content h2, .ad-content h3, .ad-content h4 { color: #1a1d24; line-height: 1.4; margin: 30px 0 14px; font-weight: 700; }
.ad-content h1 { font-size: 26px; }
.ad-content h2 { font-size: 22px; }
.ad-content h3 { font-size: 19px; }
.ad-content h4 { font-size: 17px; }
.ad-content ul, .ad-content ol { margin: 0 0 18px; padding-left: 26px; }
.ad-content li { margin-bottom: 8px; }
.ad-content a { color: var(--primary); text-decoration: none; border-bottom: 1px solid rgba(225,37,27,.35); }
.ad-content a:hover { border-bottom-color: var(--primary); }
.ad-content img { max-width: 100%; height: auto; border-radius: 10px; margin: 10px 0; box-shadow: var(--shadow-sm); }
.ad-content blockquote { margin: 0 0 18px; padding: 12px 18px; border-left: 4px solid var(--primary); background: #fbf3f2; color: var(--text-soft); border-radius: 0 8px 8px 0; }
.ad-content hr { border: none; border-top: 1px solid var(--border); margin: 30px 0; }
.ad-content figure { margin: 18px 0; }
.ad-content figcaption { font-size: 13px; color: var(--text-soft); text-align: center; margin-top: 8px; }
/* —— 表格（后台富文本编辑器插入 / 粘贴导入） —— */
.ad-content table { width: 100%; border-collapse: collapse; margin: 18px 0; table-layout: fixed; word-break: break-word; }
.ad-content td, .ad-content th { border: 1px solid #d8dee9; padding: 9px 12px; vertical-align: top; min-width: 40px; line-height: 1.6; }
.ad-content th { background: #f3f5f9; font-weight: 600; color: #1a1d24; }
.ad-content caption { caption-side: top; font-size: 13px; color: var(--text-soft); padding-bottom: 6px; }
.ad-content tbody tr:nth-child(even) td { background: #fafbfc; }
/* 移动端：宽表格横向滚动，避免撑破版式 */
.ad-content { overflow-x: auto; }
.ad-content > table { min-width: 480px; }
/* —— 附件列表 —— */
.ad-attachments { margin-top: 36px; padding-top: 24px; border-top: 1px dashed var(--border); }
.ad-attachments h4 { font-size: 16px; font-weight: 700; color: #1a1d24; margin-bottom: 14px; }
.ad-attach-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.ad-attach-item { display: flex; align-items: center; gap: 12px; padding: 10px 14px; border: 1px solid var(--border); border-radius: 10px; background: #fff; font-size: 14px; transition: border-color .2s, box-shadow .2s; }
.ad-attach-item:hover { border-color: rgba(225,37,27,.35); box-shadow: var(--shadow-sm); }
.ad-attach-ico { width: 40px; height: 40px; border-radius: 8px; background: #e3f2fd; color: #1565c0; display: flex; align-items: center; justify-content: center; font-size: 11px; font-weight: 800; flex-shrink: 0; letter-spacing: .5px; }
.ad-attach-name { flex: 1; color: #2b2f38; text-decoration: none; word-break: break-all; font-weight: 500; }
.ad-attach-name:hover { color: var(--primary); }
.ad-attach-dl { color: var(--primary); font-weight: 600; text-decoration: none; white-space: nowrap; padding: 4px 10px; border: 1px solid rgba(225,37,27,.3); border-radius: 999px; }
.ad-attach-dl:hover { background: var(--primary); color: #fff; border-color: var(--primary); }
/* —— 返回 / 来源链接 —— */
.ad-back { margin-top: 36px; padding-top: 22px; border-top: 1px solid var(--border); }
.ad-back a { display: inline-block; color: var(--primary); font-weight: 600; text-decoration: none; }
.ad-back a:hover { text-decoration: underline; }
/* —— 错误态 —— */
.ad-error { padding: 40px; text-align: center; color: var(--text-soft); font-size: 16px; }

/* =====================================================================
   关于拍拍通（about.html）— 九屏重新设计
   ===================================================================== */

/* 第一屏｜品牌定位正文 */
.brand-intro-sec { padding: 76px 0; }
.brand-intro { max-width: 880px; margin: 0 auto; text-align: center; }
.brand-lead { font-size: 22px; font-weight: 700; color: #1F2329; line-height: 1.6; margin-bottom: 22px; }
.brand-lead strong { color: var(--primary); }
.brand-text { font-size: 17px; color: var(--text-soft); line-height: 1.95; margin-bottom: 22px; }
.brand-slogan { font-size: 19px; font-weight: 700; color: var(--primary); line-height: 1.6; }

/* 第二屏｜为什么创立拍拍通 */
.why-block { max-width: 860px; margin: 0 auto; }
.why-lead { font-size: 21px; font-weight: 700; color: #1F2329; text-align: center; line-height: 1.6; margin-bottom: 30px; }
.why-cols { display: grid; grid-template-columns: repeat(2, 1fr); gap: 28px; }
.why-cols p { font-size: 16px; color: var(--text-soft); line-height: 1.95; margin: 0; }
.why-emph { font-size: 17px; color: #1F2329; line-height: 1.9; margin-top: 28px; padding: 22px 26px; background: var(--primary-soft); border-left: 4px solid var(--primary); border-radius: 0 var(--radius) var(--radius) 0; }

/* 第三屏｜品牌成长（时间轴）—— 横向卡片式 */
.timeline {
    display: flex;
    align-items: stretch;
    gap: 0;
    position: relative;
    margin-top: 56px;
}
/* 顶部时间线连接线 */
.timeline::before {
    content: '';
    position: absolute;
    top: 12px;
    left: 40px;
    right: 40px;
    height: 2px;
    background: linear-gradient(90deg, var(--primary-soft), var(--border) 20%, var(--border) 80%, var(--primary));
    z-index: 1;
}
.tl-item {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
}
.tl-item:not(:last-child) {
    padding-right: 16px;
}
/* 圆点 —— 在连接线上 */
.tl-dot {
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: var(--primary);
    border: 3px solid #fff;
    box-shadow: 0 0 0 3px var(--primary-soft), 0 2px 8px rgba(225,37,27,.18);
    margin-bottom: 20px;
    position: relative;
    z-index: 2;
    flex-shrink: 0;
    transition: transform .3s ease, box-shadow .3s ease;
}
.tl-item:hover .tl-dot {
    transform: scale(1.25);
    box-shadow: 0 0 0 4px var(--primary-soft), 0 4px 14px rgba(225,37,27,.28);
}
/* 当前节点脉冲动画 */
.tl-item:last-child .tl-dot {
    animation: tl-pulse 2s ease-in-out infinite;
}
@keyframes tl-pulse {
    0%, 100% { box-shadow: 0 0 0 3px var(--primary-soft), 0 2px 8px rgba(225,37,27,.18); }
    50% { box-shadow: 0 0 0 7px rgba(225,37,27,.12), 0 4px 16px rgba(225,37,27,.3); }
}

/* 卡片 */
.tl-card {
    width: 100%;
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    padding: 24px 20px 28px;
    box-shadow: var(--shadow-sm);
    transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    position: relative;
    overflow: hidden;
}
.tl-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, transparent, var(--primary-soft), transparent);
    opacity: 0;
    transition: opacity .35s ease;
}
.tl-card:hover {
    transform: translateY(-6px);
    box-shadow: var(--shadow-md);
    border-color: transparent;
}
.tl-card:hover::before {
    opacity: 1;
}

/* "至今"当前卡片特殊样式 */
.tl-card--now {
    background: linear-gradient(180deg, #FFF 0%, var(--primary-soft) 100%);
    border: 1.5px solid var(--primary);
    border-left: 4px solid var(--primary);
    box-shadow: 0 8px 28px rgba(225,37,27,.12);
}
.tl-card--now::before {
    opacity: 1;
    background: linear-gradient(90deg, transparent, var(--primary), transparent);
}
.tl-card--now:hover {
    box-shadow: 0 12px 36px rgba(225,37,27,.2);
}

/* 日期标签 */
.tl-date {
    display: inline-block;
    font-size: 13px;
    font-weight: 700;
    color: var(--primary);
    background: var(--primary-soft);
    padding: 4px 14px;
    border-radius: 50px;
    margin-bottom: 14px;
    letter-spacing: .5px;
}
.tl-card--now .tl-date {
    background: var(--primary);
    color: #fff;
}

/* 标题 */
.tl-title {
    font-size: 17px;
    font-weight: 700;
    color: #1F2329;
    margin-bottom: 10px;
    line-height: 1.4;
}

/* 描述文字 */
.tl-desc {
    font-size: 13.5px;
    color: var(--text-soft);
    line-height: 1.8;
    margin: 0;
}

/* 第四屏｜品牌实力 */
.strength-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.strength-item { background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius); padding: 32px 22px; text-align: center; box-shadow: var(--shadow-sm); transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
.strength-item:hover { transform: translateY(-6px); box-shadow: 0 12px 30px rgba(225,37,27,.14); border-color: transparent; }
.strength-ico { width: 56px; height: 56px; margin: 0 auto 16px; border-radius: 50%; background: var(--primary-soft); color: var(--primary); display: flex; align-items: center; justify-content: center; }
.strength-ico svg { width: 28px; height: 28px; }
.strength-num { font-size: 34px; font-weight: 800; color: var(--primary); line-height: 1.1; }
.strength-unit { font-size: 18px; font-weight: 700; margin-left: 2px; }
.strength-label { font-size: 14px; color: var(--text-soft); margin-top: 10px; line-height: 1.6; }

/* 第五屏｜官方授权 */
.auth-block { max-width: 1000px; margin: 0 auto; }
.auth-text { font-size: 17px; color: var(--text-soft); line-height: 1.95; text-align: center; margin-bottom: 40px; }
.auth-photos { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.auth-photo { }
.ap-frame {
    aspect-ratio: 4 / 3;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: #F8F9FB;
    overflow: hidden;
    transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}
.ap-frame img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .5s ease;
}
/* 证书类图片：专属证书框（卡纸 + 金边 + 四角角标），完整展示不被裁切 */
.auth-photo--cert .ap-frame {
    background: #fff;
    padding: 14px;
    display: flex;
}
.cert-mat {
    position: relative;
    flex: 1;
    display: flex;
    padding: 16px;
    background: #FFFDF8;
    border: 1px solid #EBD9A8;
    border-radius: 3px;
    transition: transform .5s ease;
}
.cert-mat img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}
/* 四角金色角标 */
.cert-corner {
    position: absolute;
    width: 13px;
    height: 13px;
    border: 2px solid #C99A3F;
    pointer-events: none;
}
.cert-corner--tl { top: 6px; left: 6px; border-right: 0; border-bottom: 0; }
.cert-corner--tr { top: 6px; right: 6px; border-left: 0; border-bottom: 0; }
.cert-corner--bl { bottom: 6px; left: 6px; border-right: 0; border-top: 0; }
.cert-corner--br { bottom: 6px; right: 6px; border-left: 0; border-top: 0; }
.auth-photo--cert:hover .cert-mat { transform: scale(1.015); }
.auth-photo--cert:hover .ap-frame img { transform: none; }
.auth-photo--cert:hover .ap-frame {
    box-shadow: 0 12px 32px rgba(201,154,63,.18);
    border-color: transparent;
}
.auth-photo:hover .ap-frame {
    transform: translateY(-4px);
    box-shadow: var(--shadow-md);
    border-color: transparent;
}
.auth-photo:hover .ap-frame img { transform: scale(1.04); }
.ap-label { display: block; margin-top: 12px; text-align: center; font-size: 14px; color: var(--text-soft); font-weight: 500; }

/* 第六屏｜两大核心业务 */
.biz2-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 28px; max-width: 920px; margin: 0 auto; }
.biz2-card { background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 44px 36px; text-align: center; box-shadow: var(--shadow-sm); transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; position: relative; overflow: hidden; }
.biz2-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(90deg, var(--primary), var(--primary-light)); opacity: 0; transition: opacity .3s ease; }
.biz2-card:hover { transform: translateY(-8px); box-shadow: var(--shadow-lg); border-color: transparent; }
.biz2-card:hover::before { opacity: 1; }
.biz2-ico { width: 64px; height: 64px; margin: 0 auto 20px; border-radius: 18px; background: linear-gradient(135deg, var(--primary-soft), #FFF3F2); color: var(--primary); display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 16px rgba(225,37,27,.12); }
.biz2-ico svg { width: 30px; height: 30px; }
.biz2-title { font-size: 24px; font-weight: 800; color: #1F2329; margin-bottom: 14px; }
.biz2-text { font-size: 16px; color: var(--text-soft); line-height: 1.85; margin-bottom: 26px; }
.biz2-actions .btn { min-width: 180px; }

/* 第七屏｜六大核心能力 */
.core-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.core-cell { background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius); padding: 34px 28px; text-align: center; box-shadow: var(--shadow-sm); transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
.core-cell:hover { transform: translateY(-6px); box-shadow: 0 12px 30px rgba(225,37,27,.14); border-color: transparent; }
.core-ico { width: 56px; height: 56px; margin: 0 auto 16px; border-radius: 16px; background: var(--primary-soft); color: var(--primary); display: flex; align-items: center; justify-content: center; }
.core-ico svg { width: 27px; height: 27px; }
.core-cell h4 { font-size: 19px; font-weight: 700; color: #1F2329; margin-bottom: 10px; }
.core-cell p { font-size: 14.5px; color: var(--text-soft); line-height: 1.75; margin: 0; }

/* 第八屏｜品牌理念 */
.value-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; max-width: 1040px; margin: 0 auto; }
.value-card { background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius); padding: 38px 24px; text-align: center; box-shadow: var(--shadow-sm); transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
.value-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-md); border-color: transparent; }
.value-word { font-size: 30px; font-weight: 800; color: var(--primary); letter-spacing: 4px; margin-bottom: 14px; position: relative; display: inline-block; }
.value-word::after { content: ''; position: absolute; left: 50%; bottom: -6px; transform: translateX(-50%); width: 28px; height: 3px; border-radius: 3px; background: var(--primary); }
.value-desc { font-size: 14.5px; color: var(--text-soft); line-height: 1.75; margin: 0; }
.value-statement { margin: 48px auto 0; max-width: 760px; text-align: center; font-size: 22px; font-weight: 700; color: #1F2329; line-height: 1.6; padding-top: 32px; border-top: 1px solid var(--border); }

/* 第九屏｜未来愿景 */
.future-band { position: relative; overflow: hidden; padding: 92px 0; color: #fff; background: linear-gradient(135deg, #8E1B14 0%, #B71C1C 40%, #E1251B 100%); }
.future-band::after { content: ''; position: absolute; inset: 0; opacity: .12; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='rgba(255,255,255,0.6)' stroke-width='1'%3E%3Cpath d='M0 30h60M30 0v60'/%3E%3C/g%3E%3C/svg%3E"); }
.future-band .container { position: relative; z-index: 1; }
.fb-header { margin-bottom: 32px; }
.fb-header .section-tag { color: rgba(255,255,255,.85); background: rgba(255,255,255,.14); border-color: rgba(255,255,255,.28); }
.fb-title { color: #fff; -webkit-text-fill-color: #fff; background: none; }
.future-text { max-width: 820px; margin: 0 auto; font-size: 17px; line-height: 1.95; opacity: .92; text-align: center; }
.future-actions { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; margin-top: 36px; }

/* —— 移动端适配 —— */
@media (max-width: 768px) {
    .article-detail { padding: 26px 18px; border-radius: 12px; }
    .ad-title { font-size: 23px; }
    .ad-meta { font-size: 12.5px; gap: 6px 14px; padding: 12px 14px; }
    .ad-content { font-size: 15px; line-height: 1.85; }
    .ad-content h1 { font-size: 22px; }
    .ad-content h2 { font-size: 19px; }
    .ad-content h3 { font-size: 17px; }
    .ad-content img { border-radius: 8px; }
    .ad-attach-item { padding: 8px 10px; }
    .ad-attach-ico { width: 34px; height: 34px; }
}

/* —— 关于拍拍通 响应式 —— */
@media (max-width: 1024px) {
    .core-grid { grid-template-columns: repeat(2, 1fr); }
    .value-grid { grid-template-columns: repeat(2, 1fr); }
    .auth-photos { grid-template-columns: repeat(2, 1fr); }
    /* 时间轴：≤1024px → 换行为 3 列卡片 */
    .timeline { flex-wrap: wrap; gap: 28px 14px; justify-content: center; }
    .timeline::before { display: none; }
    .tl-item { flex: 0 0 calc(33.333% - 14px); padding-right: 0; }
}
@media (max-width: 768px) {
    .brand-intro-sec { padding: 52px 0; }
    .brand-lead { font-size: 19px; }
    .brand-text { font-size: 15.5px; }
    .brand-slogan { font-size: 17px; }
    .why-lead { font-size: 18px; }
    .why-cols { grid-template-columns: 1fr; gap: 18px; }
    .why-emph { font-size: 15.5px; padding: 18px 20px; }
    /* 时间轴：≤768px → 纵向时间线 */
    .timeline { flex-direction: column; gap: 0; align-items: stretch; padding-left: 8px; }
    .timeline::before { display: block; left: 19px; top: 8px; bottom: 8px; width: 2px; height: auto; background: linear-gradient(var(--primary-soft), var(--border)); right: auto; }
    .tl-item { flex: 1; display: flex; flex-direction: row; align-items: flex-start; gap: 16px; text-align: left; padding: 0 0 22px 0; }
    .tl-item:not(:last-child) { padding-right: 0; }
    .tl-dot { margin-bottom: 0; flex-shrink: 0; position: relative; left: 0; top: 4px; }
    .tl-card { align-items: flex-start; text-align: left; padding: 18px 20px; }
    .tl-card--now { border-left: 4px solid var(--primary); }
    .strength-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
    .strength-item { padding: 24px 14px; }
    .strength-num { font-size: 28px; }
    .auth-photos { gap: 12px; }
    .ap-label { font-size: 13px; }
    .biz2-grid { grid-template-columns: 1fr; gap: 18px; }
    .biz2-card { padding: 36px 24px; }
    .biz2-title { font-size: 21px; }
    .core-grid { grid-template-columns: 1fr; gap: 16px; }
    .value-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
    .value-card { padding: 28px 18px; }
    .value-word { font-size: 24px; letter-spacing: 3px; }
    .value-statement { font-size: 18px; margin-top: 36px; padding-top: 26px; }
    .future-band { padding: 64px 0; }
    .future-text { font-size: 15.5px; }
}

/* ============================================================
   业务介绍页 business.html 专属样式
   ============================================================ */

/* 按钮：白底区次级按钮（深色描边） */
.btn-ghost { background: #fff; color: var(--primary); border: 1.5px solid var(--primary); }
.btn-ghost:hover { background: var(--primary-soft); transform: translateY(-2px); box-shadow: var(--shadow-sm); }

/* 第一屏｜Hero */
.biz-hero {
    position: relative;
    padding: calc(var(--nav-h) + 92px) 0 96px;
    overflow: hidden;
    background: linear-gradient(135deg, #8E1B14 0%, #B71C1C 38%, #E1251B 78%, #FF5252 100%);
}
.biz-hero .hero-bg { position: absolute; inset: 0; z-index: 0;
    background-image:
        radial-gradient(circle at 82% 16%, rgba(255,255,255,.14) 0%, transparent 42%),
        radial-gradient(circle at 10% 84%, rgba(255,255,255,.08) 0%, transparent 38%); }
.biz-hero .hero-bg::before { content: ''; position: absolute; inset: 0;
    background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='rgba(255,255,255,0.05)' stroke-width='1'%3E%3Cpath d='M0 30h60M30 0v60'/%3E%3C/g%3E%3C/svg%3E");
    opacity: .5; }
.biz-hero-inner { position: relative; z-index: 2; max-width: 860px; color: #fff; }
.biz-hero .hero-badge { background: rgba(255,255,255,.16); border: 1px solid rgba(255,255,255,.28); }
.biz-hero .hero-badge .dot { width: 8px; height: 8px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 3px rgba(255,255,255,.3); }
.biz-hero-title { font-size: 52px; font-weight: 800; line-height: 1.18; letter-spacing: -.5px; margin-bottom: 22px; text-shadow: 0 2px 16px rgba(0,0,0,.18); }
.biz-hero-sub { font-size: 18px; line-height: 1.9; opacity: .94; margin-bottom: 18px; max-width: 760px; }
.biz-hero-sub b { font-weight: 700; }
.biz-hero-claim { font-size: 17px; opacity: .9; margin-bottom: 34px; padding-left: 14px; border-left: 3px solid rgba(255,255,255,.6); }

/* 第二屏｜为什么卖不掉 — 5张卡片均匀排列 */
.biz-why .why-grid,
.why-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 20px; margin-top: 48px; }
.why-item {
    position: relative; background: var(--bg); border: 1px solid var(--border);
    border-radius: var(--radius); padding: 26px 18px 22px; box-shadow: var(--shadow-sm);
    transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
    display: flex; flex-direction: column;
}
.why-item::before { content: ''; position: absolute; left: 18px; top: 0; width: 30px; height: 3px; background: var(--primary); border-radius: 0 0 3px 3px; }
.why-item:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); border-color: transparent; }
.why-no { font-size: 14px; font-weight: 800; color: var(--primary); margin-bottom: 10px; letter-spacing: 1px; }
.why-item h4 { font-size: 15.5px; font-weight: 700; color: var(--text); margin-bottom: 8px; line-height: 1.35; }
.why-item p { font-size: 13px; color: var(--text-soft); line-height: 1.7; margin: 0; flex: 1 1 auto; }
.why-statement { text-align: center; font-size: 22px; font-weight: 700; color: var(--text); margin-top: 44px; }
.why-statement b { color: var(--primary); }

/* 核心主张强调带 */
.biz-claim { background: var(--primary); padding: 40px 0; }
.biz-claim-text { text-align: center; color: #fff; font-size: 30px; font-weight: 800; letter-spacing: .5px; }

/* 第四屏｜四大核心能力 */
.core4-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; }
.core4-card { background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius); padding: 32px 26px; box-shadow: var(--shadow-sm); transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
.core4-card:hover { transform: translateY(-5px); box-shadow: var(--shadow-md); border-color: transparent; }
.core4-icon { width: 60px; height: 60px; border-radius: 16px; background: linear-gradient(135deg, var(--primary-soft), #fff); display: flex; align-items: center; justify-content: center; color: var(--primary); margin-bottom: 18px; transition: background .3s ease, color .3s ease; }
.core4-icon svg { width: 30px; height: 30px; }
.core4-card:hover .core4-icon { background: linear-gradient(135deg, var(--primary), var(--primary-dark)); color: #fff; }
.core4-card h4 { font-size: 19px; font-weight: 700; color: var(--text); margin-bottom: 10px; }
.core4-card p { font-size: 14.5px; color: var(--text-soft); line-height: 1.8; margin: 0; }
.core4-statement { text-align: center; font-size: 18px; color: var(--text-soft); margin: 40px auto 0; max-width: 760px; }

/* 第五屏｜四张价值卡 */
.value4-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; }
.value4-card { background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius); padding: 30px 24px; box-shadow: var(--shadow-sm); text-align: center; transition: transform .3s ease, box-shadow .3s ease; }
.value4-card:hover { transform: translateY(-5px); box-shadow: var(--shadow-md); }
.value4-mark { display: inline-flex; align-items: center; justify-content: center; width: 56px; height: 56px; border-radius: 50%; background: var(--primary-soft); color: var(--primary); font-size: 18px; font-weight: 800; margin-bottom: 16px; }
.value4-card h4 { font-size: 18px; font-weight: 700; color: var(--text); margin-bottom: 10px; }
.value4-card p { font-size: 14px; color: var(--text-soft); line-height: 1.8; margin: 0; }
.value4-statement { text-align: center; font-size: 19px; font-weight: 600; color: var(--text); margin-top: 40px; }
.value4-statement b { color: var(--primary); }

/* 第六屏｜七步服务流程（横向连接时间轴） */
.flow7 { padding: 10px 0 20px; overflow: hidden; }
.flow7-track { display: flex; gap: 0; position: relative;
    justify-content: flex-start; }
/* 顶部贯穿线 */
.flow7-track::before {
    content: ''; position: absolute; top: 28px; left: 40px; right: 40px;
    height: 3px; background: linear-gradient(90deg, var(--primary-soft), var(--border) 40%, var(--border) 60%, var(--primary-soft));
    border-radius: 2px; z-index: 0;
}
.flow7-step { display: flex; flex-direction: column; align-items: center;
    flex: 1; min-width: 0; position: relative; z-index: 1; }
.flow7-node { position: relative; display: flex; flex-direction: column; align-items: center; margin-bottom: 18px; }
.flow7-no {
    width: 56px; height: 56px; border-radius: 50%;
    background: linear-gradient(135deg, var(--primary), #C0392B);
    color: #fff; font-size: 17px; font-weight: 800;
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 4px 14px rgba(225,37,27,.35);
    position: relative; z-index: 2;
    transition: transform .3s ease, box-shadow .3s ease;
}
.flow7-step:hover .flow7-no { transform: scale(1.12); box-shadow: 0 6px 20px rgba(225,37,27,.45); }
/* 最后一步无连接线 */
.flow7-card {
    background: var(--bg); border: 1.5px solid var(--border);
    border-radius: var(--radius-lg); padding: 20px 16px 18px;
    text-align: center; width: calc(100% - 8px);
    box-shadow: var(--shadow-sm);
    transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.flow7-step:hover .flow7-card {
    transform: translateY(-6px); box-shadow: var(--shadow-md);
    border-color: transparent;
}
.flow7-card h4 { font-size: 15.5px; font-weight: 700; color: var(--text); margin-bottom: 6px; line-height: 1.4; }
.flow7-card p { font-size: 13px; color: var(--text-soft); line-height: 1.65; margin: 0; }

/* 第七屏｜专业营销六图标 */
.market6 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.market6-item { display: flex; align-items: center; gap: 16px; background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius); padding: 24px 26px; box-shadow: var(--shadow-sm); transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
.market6-item:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); border-color: transparent; }
.market6-icon { flex: 0 0 auto; width: 52px; height: 52px; border-radius: 14px; background: var(--primary-soft); color: var(--primary); display: flex; align-items: center; justify-content: center; transition: background .3s ease, color .3s ease; }
.market6-icon svg { width: 26px; height: 26px; }
.market6-item:hover .market6-icon { background: linear-gradient(135deg, var(--primary), var(--primary-dark)); color: #fff; }
.market6-item h4 { font-size: 17px; font-weight: 700; color: var(--text); margin: 0; }
.market6-statement { text-align: center; font-size: 18px; color: var(--text-soft); margin-top: 40px; }

/* 第八屏｜真实成交案例 */
.cases-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.case-card { background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-sm); transition: transform .3s ease, box-shadow .3s ease; }
.case-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-lg); }
.case-photo { aspect-ratio: 16 / 10; overflow: hidden; position: relative; background: #F0F2F5; }
.case-photo img {
    width: 100%; height: 100%; object-fit: cover;
    display: block; transition: transform .6s ease;
}
.case-card:hover .case-photo img { transform: scale(1.06); }
.case-info { padding: 20px 22px 22px; }
.case-meta { display: flex; align-items: baseline; gap: 10px; margin-bottom: 12px; }
.case-city { font-size: 13px; font-weight: 700; color: var(--primary); background: var(--primary-soft); padding: 2px 10px; border-radius: 50px; }
.case-name { font-size: 16px; font-weight: 700; color: var(--text); }
.case-price { font-size: 28px; font-weight: 800; color: var(--text); margin-bottom: 14px; }
.case-price span { font-size: 15px; font-weight: 600; color: var(--text-soft); margin-left: 2px; }
.case-stats { display: flex; flex-wrap: wrap; gap: 8px 16px; font-size: 13.5px; color: var(--text-soft); border-top: 1px solid var(--border); padding-top: 14px; }
.case-stats b { color: var(--text); font-weight: 700; }
.cases-more { text-align: center; margin-top: 40px; }

/* 第九屏｜为什么选择拍拍通 */
.choose-stats { display: flex; flex-wrap: wrap; justify-content: center; gap: 18px 40px; margin-bottom: 48px; }
.choose-stat { text-align: center; min-width: 150px; }
.cs-num { font-size: 30px; font-weight: 800; color: var(--primary); line-height: 1.1; margin-bottom: 6px; }
.cs-label { font-size: 14px; color: var(--text-soft); }
.choose-photos { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.choose-photo { }
.cp-frame { aspect-ratio: 4 / 3; border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; background: #F8F9FB; transition: transform .35s ease, box-shadow .35s ease; }
.choose-photo:hover .cp-frame { transform: translateY(-4px); box-shadow: var(--shadow-md); }
.cp-frame img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s ease; }
.choose-photo:hover .cp-frame img { transform: scale(1.04); }
.choose-photo:first-child .cp-frame { background: #fff; }
.choose-photo:first-child .cp-frame img { object-fit: contain; padding: 14px; }
.cp-label { display: block; margin-top: 12px; text-align: center; font-size: 14px; color: var(--text-soft); font-weight: 500; }

/* 第十屏｜适合哪些房源 */
.suit-list { list-style: none; max-width: 760px; margin: 0 auto; display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px 32px; }
.suit-list li { position: relative; padding: 16px 18px 16px 52px; background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius-sm); font-size: 16px; font-weight: 500; color: var(--text); box-shadow: var(--shadow-sm); }
.suit-list li::before { content: ''; position: absolute; left: 16px; top: 50%; transform: translateY(-50%); width: 22px; height: 22px; border-radius: 50%; background: var(--primary-soft); }
.suit-list li::after { content: ''; position: absolute; left: 22px; top: 50%; transform: translateY(-60%) rotate(45deg); width: 6px; height: 11px; border: solid var(--primary); border-width: 0 2.5px 2.5px 0; }
.suit-note { text-align: center; font-size: 16px; color: var(--text-soft); margin-top: 32px; }

/* 第十一屏｜FAQ */
.faq-list { max-width: 820px; margin: 0 auto; display: flex; flex-direction: column; gap: 16px; }
.faq-item { background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius); padding: 22px 26px; box-shadow: var(--shadow-sm); transition: border-color .3s ease, box-shadow .3s ease; }
.faq-item:hover { border-color: var(--primary-soft); box-shadow: var(--shadow-md); }
.faq-q { font-size: 17px; font-weight: 700; color: var(--text); margin-bottom: 10px; display: flex; align-items: center; gap: 10px; }
.faq-q::before { content: 'Q'; flex: 0 0 auto; width: 26px; height: 26px; border-radius: 7px; background: var(--primary); color: #fff; font-size: 14px; font-weight: 800; display: flex; align-items: center; justify-content: center; }
.faq-a { font-size: 15px; color: var(--text-soft); line-height: 1.85; margin: 0; padding-left: 36px; }

/* 第十二屏｜CTA */
.biz-cta { position: relative; padding: 88px 0; overflow: hidden; background: linear-gradient(135deg, #8E1B14 0%, #B71C1C 38%, #E1251B 78%, #FF5252 100%); }
.biz-cta .hero-bg { position: absolute; inset: 0; z-index: 0; background-image: radial-gradient(circle at 80% 20%, rgba(255,255,255,.12) 0%, transparent 40%), radial-gradient(circle at 18% 80%, rgba(255,255,255,.08) 0%, transparent 36%); }
.biz-cta-inner { position: relative; z-index: 2; max-width: 820px; margin: 0 auto; text-align: center; color: #fff; }
.biz-cta-tag { display: inline-block; font-size: 16px; font-weight: 600; opacity: .92; padding: 7px 18px; border: 1px solid rgba(255,255,255,.3); border-radius: 50px; margin-bottom: 20px; }
.biz-cta-title { font-size: 40px; font-weight: 800; line-height: 1.25; margin-bottom: 20px; text-shadow: 0 2px 16px rgba(0,0,0,.18); }
.biz-cta-sub { font-size: 17px; line-height: 1.9; opacity: .92; margin: 0 auto 34px; max-width: 720px; }
.biz-cta .hero-actions { justify-content: center; margin-bottom: 0; }

/* ===== 业务页 响应式 ===== */
@media (max-width: 1024px) {
    .biz-hero-title { font-size: 42px; }
    .why-grid { grid-template-columns: repeat(3, 1fr); }
    .core4-grid, .value4-grid, .market6, .cases-grid { grid-template-columns: repeat(2, 1fr); }
    .choose-photos { grid-template-columns: repeat(2, 1fr); }
    .suit-list { grid-template-columns: 1fr; }
    .biz-claim-text { font-size: 24px; }
    .biz-cta-title { font-size: 32px; }
    /* 流程：平板折行 */
    .flow7-track::before { left: 28px; right: 28px; }
    .flow7-no { width: 48px; height: 48px; font-size: 15px; }
    .flow7-card { padding: 16px 12px 14px; }
    .flow7-card h4 { font-size: 14px; }
    .flow7-card p { font-size: 12.5px; }
}
@media (max-width: 768px) {
    .biz-hero { padding: calc(var(--nav-h) + 56px) 0 64px; }
    .biz-hero-title { font-size: 32px; }
    .biz-hero-sub { font-size: 16px; }
    .biz-hero-claim { font-size: 15px; }
    .hero-actions { flex-direction: column; align-items: stretch; }
    .hero-actions .btn { width: 100%; }
    .why-grid { grid-template-columns: 1fr; }
    .why-statement { font-size: 19px; }
    .biz-claim { padding: 30px 0; }
    .biz-claim-text { font-size: 21px; }
    .core4-grid, .value4-grid, .market6, .cases-grid, .choose-photos { grid-template-columns: 1fr; }
    .value4-card { text-align: left; }
    .value4-mark { margin-left: 0; }
    /* 流程：移动端改为纵向时间轴 */
    .flow7 { padding: 4px 0; }
    .flow7-track {
        flex-direction: column;
        align-items: center;
        gap: 0;
    }
    .flow7-track::before {
        top: 28px; bottom: 28px; left: 27px; right: auto;
        width: 3px; height: auto;
        background: linear-gradient(180deg, var(--primary-soft), var(--border) 50%, var(--primary-soft));
    }
    .flow7-step {
        flex-direction: row;
        align-items: flex-start;
        width: 100%; max-width: 480px;
        margin-bottom: 8px;
    }
    .flow7-node { flex-direction: row; margin-bottom: 0; margin-right: 16px; }
    .flow7-no { width: 44px; height: 44px; font-size: 15px; }
    .flow7-card {
        text-align: left; padding: 16px 18px; flex: 1;
        min-width: 0;
    }
    .choose-stats { gap: 20px; }
    .suit-list li { font-size: 15px; }
    .biz-cta { padding: 64px 0; }
    .biz-cta-title { font-size: 26px; }
    .biz-cta-sub { font-size: 15px; }
}

/* ============================================================
   首页重构（8 屏）· 作用域 home-*，不影响 business/partners 共用的 .hero
   ============================================================ */

/* 第一屏 Hero：左侧文字 + 右侧轮播图 + 底部独立滚动字幕
   布局结构（严格按示意图）：
   ┌──────────────────┬──────────────────┐
   │                  │                  │
   │   左侧文字内容    │   右侧轮播图片    │
   │   （标题/描述/按钮）│   （图片+指示器）  │
   │                  │                  │
   └──────────────────┴──────────────────┘
   ┌──────────────────────────────────────┐
   │        底部滚动品牌词字幕条            │
   └──────────────────────────────────────┘ */
.home-hero {
  flex-direction: column;
  align-items: stretch;
  /* 覆盖基类 100vh：用自适应高度避免大片空白，同时保留合理最小高度 */
  min-height: auto;
  height: auto;
  padding-top: var(--nav-h);
  padding-bottom: 48px;
}
.home-hero .hero-inner {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  text-align: left;
}
/* 左侧文字区域 — 紧凑化 */
.home-hero .hero-content {
  flex: 0 0 auto;
  max-width: 520px;
  padding: 40px 0 28px;
}
.home-hero .hero-badge { margin-bottom: 16px; display: inline-flex; }
.home-hero .hero-title { font-size: 42px; line-height: 1.2; letter-spacing: -.5px; }
.home-hero .hero-subtitle { margin-bottom: 14px; font-weight: 500; font-size: 16px; color: rgba(255,255,255,.88); }
.home-hero-desc { font-size: 14px; line-height: 1.8; opacity: .85; max-width: 480px; margin-bottom: 26px; }
.home-hero .hero-actions { justify-content: flex-start; }

/* 右侧轮播图 — 放大填满右侧空间 */
.home-hero-carousel {
  position: relative;
  flex: 0 0 auto;
  width: 540px;
  height: 410px;
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.15);
  box-shadow:
    0 12px 40px rgba(0,0,0,.18),
    0 4px 12px rgba(0,0,0,.10),
    inset 0 1px 0 rgba(255,255,255,.10);
  background:
    linear-gradient(135deg, rgba(120,20,16,.55) 0%, rgba(180,40,30,.32) 50%, rgba(140,22,18,.45) 100%);
}
.home-hero-carousel:hover {
  border-color: rgba(255,255,255,.25);
  box-shadow:
    0 16px 48px rgba(0,0,0,.22),
    0 6px 16px rgba(0,0,0,.12),
    inset 0 1px 0 rgba(255,255,255,.14);
}
.hc-slides { position: relative; width: 100%; height: 100%; }
.hc-slides img {
  position: absolute; inset: 0; width: 100%; height: 100%;
  object-fit: contain;
  object-position: center;
  opacity: 0; transition: opacity .7s ease, transform .7s ease; transform: scale(1.03);
}
.hc-slides img.active { opacity: 1; transform: scale(1); z-index: 1; }

/* 轮播左右箭头 */
.hc-arrow-btn {
  position: absolute; top: 50%; transform: translateY(-50%);
  z-index: 4;
  width: 36px; height: 36px;
  border: none; border-radius: 50%;
  background: rgba(0,0,0,.35);
  color: #fff; font-size: 18px; line-height: 1;
  cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  transition: all .25s ease;
  opacity: 0;
}
.home-hero-carousel:hover .hc-arrow-btn { opacity: 1; }
.hc-arrow-btn:hover { background: rgba(225,37,27,.88); transform: translateY(-50%) scale(1.1); }
.hc-arrow-prev { left: 10px; }
.hc-arrow-next { right: 10px; }

/* 轮播指示器 — 底部居中，与页面红色风格协调 */
.hc-indicators {
  position: absolute;
  bottom: 16px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 7px;
  z-index: 3;
  padding: 5px 10px;
  border-radius: 20px;
  background: rgba(0,0,0,.22);
  backdrop-filter: blur(4px);
}
.hc-indicators span {
  width: 8px; height: 8px;
  border-radius: 50%;
  background: rgba(255,255,255,.50);
  cursor: pointer;
  transition: all .3s ease;
  border: none; padding: 0;
  display: block;
}
.hc-indicators span:hover { background: rgba(255,255,255,.80); transform: scale(1.2); }
.hc-indicators span.active {
  background: #fff;
  width: 22px;
  border-radius: 5px;
  box-shadow: 0 0 6px rgba(255,255,255,.40);
}

/* 底部滚动品牌词 — 专业级无缝滚动字幕条
   原理：track 内包含两份完全相同的内容，动画从 0 平移到 -50%，
   当第一份滚出视野时第二份恰好接上，形成无限循环。
   可通过 --marquee-speed 自定义滚动时长（秒），--marquee-dir 控制方向。 */
.home-brandmarquee {
  --marquee-speed: 22s;    /* 滚动一圈的时长，越小越快 */
  --marquee-dir: normal;    /* normal=从左到右, reverse=从右到左 */

  position: relative;
  overflow: hidden;
  margin-top: 0;
  padding: 10px 0;
  border-top: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.08);
  /* 左右边缘淡入淡出 */
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 10%, #000 90%, transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0%, #000 10%, #000 90%, transparent 100%);
}
.home-brandmarquee-track {
  display: inline-flex;
  align-items: center;
  gap: 24px;
  white-space: nowrap;
  will-change: transform;
  animation: brandScroll var(--marquee-speed) linear infinite var(--marquee-dir);
}
.home-brandmarquee-track span {
  font-size: 14px;
  letter-spacing: 3px;
  color: rgba(255,255,255,.72);
  font-weight: 500;
  flex-shrink: 0; /* 防止 flex 子项被压缩 */
}
.home-brandmarquee-track i {
  color: rgba(255,255,255,.30);
  font-style: normal;
  flex-shrink: 0;
}
@keyframes brandScroll {
  from { transform: translateX(0); }
  to { transform: translateX(-25%); }  /* 4份内容，每份25%，移一份即无缝衔接 */
}
/* 鼠标悬停暂停 */
.home-brandmarquee:hover .home-brandmarquee-track {
  animation-play-state: paused;
}

/* 第二屏 为什么选择拍拍通 */
.home-why .section-desc { max-width: 860px; margin: 18px auto 0; font-size: 16.5px; line-height: 1.9;
  opacity: .85; font-weight: 400; text-transform: none; letter-spacing: 0; }
/* 首页 WHY 区块卡片网格 */
.home-why .why-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; margin-top: 48px; }
.why-card { background: #fff; border: 1px solid #f0e3e2; border-radius: 16px; padding: 34px 26px; text-align: center;
  transition: transform .25s, box-shadow .25s, border-color .25s; }
.why-card:hover { transform: translateY(-6px); box-shadow: 0 18px 40px rgba(225,37,27,.10); border-color: rgba(225,37,27,.3); }
.why-icon { font-size: 38px; margin-bottom: 16px; }
.why-card h3 { font-size: 19px; margin-bottom: 10px; color: #1f1f1f; }
.why-card p { font-size: 14.5px; color: #6b6b6b; line-height: 1.7; }
.home-why-foot { text-align: center; margin-top: 40px; font-size: 17px; font-weight: 600; color: #E1251B; }

/* 第三屏 两大服务体系 */
.svc-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 26px; margin-top: 44px; }
.svc-card { background: #fff; border-radius: 18px; padding: 34px 32px; box-shadow: 0 10px 30px rgba(0,0,0,.05);
  border: 1px solid #f0e6e5; display: flex; flex-direction: column; }
.svc-card-head { display: flex; align-items: center; gap: 12px; margin-bottom: 22px; }
.svc-icon { font-size: 30px; }
.svc-card-head h3 { font-size: 22px; color: #1f1f1f; }
.svc-block { margin-bottom: 18px; }
.svc-block h4 { font-size: 14px; color: #E1251B; margin-bottom: 10px; font-weight: 600; letter-spacing: .5px; }
.svc-block ul { display: flex; flex-wrap: wrap; gap: 8px 10px; list-style: none; padding: 0; margin: 0; }
.svc-block li { font-size: 13.5px; color: #555; background: #faf3f2; border-radius: 20px; padding: 5px 14px; }
.svc-link { margin-top: auto; display: inline-block; color: #E1251B; font-weight: 600; font-size: 15px; text-decoration: none; }
.svc-link:hover { text-decoration: underline; }

/* 第四屏 对比表 */
.cmp-table-wrap { max-width: 880px; margin: 40px auto 0; }
.cmp-table { width: 100%; border-collapse: collapse; background: #fff; border-radius: 14px; overflow: hidden;
  box-shadow: 0 10px 30px rgba(0,0,0,.06); }
.cmp-table th, .cmp-table td { padding: 18px 22px; text-align: left; font-size: 15.5px; border-bottom: 1px solid #f1eaea; }
.cmp-table thead th { background: #faf3f2; font-size: 15px; color: #333; }
.cmp-table th { font-weight: 600; color: #444; width: 22%; white-space: nowrap; }
.cmp-table .col-dim { color: #999; }
.cmp-table .col-ppt { color: #E1251B; }
.cmp-table td.no { color: #b06a66; background: #fdf6f5; }
.cmp-table td.yes { color: #1f8a4c; background: #f3faf5; font-weight: 600; }
.cmp-table tbody tr:last-child th, .cmp-table tbody tr:last-child td { border-bottom: none; }
.home-cmp-foot { text-align: center; margin-top: 28px; font-size: 16.5px; color: #444; font-weight: 500; }

/* 第五屏 案例轮播 */
.home-cases-carousel { position: relative; margin-top: 44px; display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.home-cases-viewport { overflow: hidden; flex: 1 1 auto; min-width: 0; border-radius: 16px; }
.home-cases-track { display: flex; transition: transform .5s ease; }
.home-case-card { flex: 0 0 100%; display: grid; grid-template-columns: 1.1fr 1fr; background: #fff;
  border-radius: 16px; overflow: hidden; box-shadow: 0 10px 30px rgba(0,0,0,.06); min-height: 280px; }
.home-case-img { background: linear-gradient(135deg, #E1251B, #ff7a6e) center/cover no-repeat;
  display: flex; align-items: center; justify-content: center; min-height: 280px; }
.home-case-ph { color: #fff; font-size: 18px; font-weight: 600; opacity: .9; }
.home-case-body { padding: 30px 34px; display: flex; flex-direction: column; justify-content: center; }
.home-case-loc { font-size: 15px; color: #888; margin-bottom: 14px; }
.home-case-price { font-size: 16px; color: #333; margin-bottom: 18px; }
.home-case-price b { font-size: 28px; color: #E1251B; margin: 0 4px; }
.home-case-meta { display: flex; flex-wrap: wrap; gap: 8px 14px; font-size: 13.5px; color: #777; }
.home-case-meta span { background: #faf3f2; border-radius: 16px; padding: 5px 12px; }
.home-cases-carousel .hc-arrow { flex: 0 0 auto; width: 42px; height: 42px; border-radius: 50%; border: 1px solid #e7dada;
  background: #fff; color: #E1251B; font-size: 22px; line-height: 1; cursor: pointer; transition: all .2s; }
.home-cases-carousel .hc-arrow:hover { background: #E1251B; color: #fff; }
.home-cases-dots { display: flex; justify-content: center; gap: 8px; margin-top: 22px; width: 100%; }
.home-dot { width: 9px; height: 9px; border-radius: 50%; border: none; background: #e0cfce; cursor: pointer; padding: 0; transition: all .2s; }
.home-dot.active { background: #E1251B; width: 22px; border-radius: 6px; }

/* 第六屏 品牌实力 */
.stats-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; margin-top: 44px; }
.stat-card { background: linear-gradient(135deg, #fff, #fff8f7); border: 1px solid #f3e6e5; border-radius: 16px;
  padding: 34px 28px; text-align: center; transition: transform .25s, box-shadow .25s; }
.stat-card:hover { transform: translateY(-5px); box-shadow: 0 16px 36px rgba(225,37,27,.10); }
.stat-num { font-size: 34px; font-weight: 800; color: #E1251B; line-height: 1.2; margin-bottom: 8px; }
.stat-num span { font-size: 22px; }
.stat-label { font-size: 14.5px; color: #666; }
.home-stats-foot { text-align: center; margin-top: 36px; font-size: 16px; color: #777; }

/* 第七屏 知识中心 */
.kb-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; margin-top: 44px; }
.kb-card { display: flex; flex-direction: column; gap: 12px; background: #fff; border: 1px solid #f0e6e5; border-radius: 16px;
  padding: 26px 24px; text-decoration: none; color: inherit; transition: transform .25s, box-shadow .25s, border-color .25s; }
.kb-card:hover { transform: translateY(-5px); box-shadow: 0 16px 36px rgba(225,37,27,.10); border-color: rgba(225,37,27,.3); }
.kb-card-top { display: flex; align-items: center; gap: 10px; font-size: 13px; }
.kb-cat { background: rgba(225,37,27,.12); color: #E1251B; border-radius: 20px; padding: 3px 12px; font-weight: 500; }
.kb-rec { color: #f5a623; }
.kb-date { margin-left: auto; color: #aaa; font-variant-numeric: tabular-nums; }
.kb-card-title { font-size: 17px; color: #1f1f1f; line-height: 1.5; font-weight: 600; }
.kb-card-sum { font-size: 14px; color: #777; line-height: 1.7; margin: 0; }

/* 第八屏 CTA */
.home-cta { background: linear-gradient(135deg, #E1251B, #c01810); color: #fff; }
.home-cta-inner { text-align: center; max-width: 860px; margin: 0 auto; }
.home-cta-inner h2 { font-size: 30px; line-height: 1.6; margin-bottom: 20px; font-weight: 700; }
.home-cta-inner p { font-size: 16px; line-height: 1.9; opacity: .92; margin-bottom: 32px; }
.home-cta-actions { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }
.home-cta .btn-outline { color: #fff; border-color: rgba(255,255,255,.7); }
.home-cta .btn-outline:hover { background: rgba(255,255,255,.15); }

.home-empty { text-align: center; color: #999; padding: 30px 0; }

/* 响应式 */
@media (max-width: 980px) {
  .home-why .why-grid { grid-template-columns: repeat(2, 1fr); }
  .stats-grid, .kb-grid { grid-template-columns: repeat(2, 1fr); }
  .home-hero .hero-inner { flex-direction: column; text-align: center; gap: 28px; }
  .home-hero .hero-content { max-width: 600px; padding: 40px 0 16px; text-align: center; margin: 0 auto; }
  .home-hero .hero-badge { margin: 0 auto 16px; }
  .home-hero-desc { max-width: 540px; margin: 0 auto 22px; }
  .home-hero .hero-actions { justify-content: center; }
  .home-hero-carousel { width: 100%; max-width: 560px; height: 280px; margin: 0 auto; border-radius: 14px; }
  .home-hero .hero-title { font-size: 38px; }
}
@media (max-width: 640px) {
  .home-why .why-grid, .svc-grid, .stats-grid, .kb-grid { grid-template-columns: 1fr; }
  .home-hero .hero-content { padding: 36px 0 12px; }
  .home-hero .hero-title { font-size: 28px; }
  .home-hero-desc { font-size: 13.5px; }
  .home-hero-carousel { width: 100%; max-width: 100%; height: 220px; border-radius: 12px; }
  .home-case-card { grid-template-columns: 1fr; }
  .home-case-img { min-height: 180px; }
  .home-cta-inner h2 { font-size: 23px; }
  .cmp-table th, .cmp-table td { padding: 14px 14px; font-size: 14px; }
}



/* ============================================================
 * 成交案例页（cases.html）· 六屏结构
 * ============================================================ */

/* ---- 按钮变体：橙色主按钮 / 白色次按钮 / 深色描边 ---- */
.btn-orange {
    background: linear-gradient(135deg, #FF8A1E 0%, #F2640A 100%);
    color: #fff; box-shadow: 0 10px 26px rgba(242,100,10,.28);
}
.btn-orange:hover {
    background: linear-gradient(135deg, #FF9A3C 0%, #F2640A 100%);
    transform: translateY(-2px); box-shadow: 0 14px 32px rgba(242,100,10,.36);
}
.btn-white {
    background: #fff; color: var(--text); border: 1.5px solid #fff;
}
.btn-white:hover { background: #fff; color: var(--primary); transform: translateY(-2px); box-shadow: var(--shadow-md); }
.btn-outline-dark {
    background: transparent; color: var(--text); border: 1.5px solid var(--border);
}
.btn-outline-dark:hover { border-color: var(--primary); color: var(--primary); background: var(--primary-soft); }

/* ---- 第一屏｜Hero ---- */
.deal-hero {
    position: relative; overflow: hidden;
    padding: calc(var(--nav-h) + 64px) 0 84px;
    background: linear-gradient(135deg, #B71C1C 0%, #E1251B 55%, #C2160B 100%);
    color: #fff;
}
.deal-hero-bg {
    position: absolute; inset: 0;
    background:
        radial-gradient(620px 320px at 88% 8%, rgba(255,255,255,.16), transparent 60%),
        radial-gradient(520px 300px at 8% 92%, rgba(255,255,255,.10), transparent 60%);
    pointer-events: none;
}
.deal-hero .container { position: relative; z-index: 1; }
.deal-hero-inner { max-width: 880px; }
.deal-hero-tag {
    display: inline-block; padding: 6px 16px; border-radius: 50px;
    background: rgba(255,255,255,.16); color: #fff; font-size: 14px; font-weight: 600;
    margin-bottom: 22px;
}
.deal-hero-title {
    font-size: 46px; font-weight: 800; line-height: 1.25; letter-spacing: -.5px;
    margin-bottom: 20px;
}
.deal-hero-sub {
    font-size: 17px; line-height: 1.9; color: rgba(255,255,255,.92);
    max-width: 720px; margin-bottom: 34px;
}
.deal-hero-btns { display: flex; gap: 16px; flex-wrap: wrap; }

/* ---- 第二屏｜数据大屏 ---- */
.deal-stats { background: var(--bg-alt); }
.deal-stats-grid {
    display: grid; grid-template-columns: repeat(6, 1fr); gap: 20px;
}
.dstat-card {
    background: var(--bg); border-radius: var(--radius); padding: 30px 18px;
    text-align: center; box-shadow: var(--shadow-sm); border: 1px solid var(--border);
    transition: all .3s ease;
}
.dstat-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-lg); border-color: var(--primary-soft); }
.dstat-num {
    font-size: 40px; font-weight: 800; color: var(--primary); line-height: 1.1;
    font-family: "DIN Alternate", "PingFang SC", system-ui, sans-serif;
}
.dstat-num span { font-size: 20px; margin-left: 2px; }
.dstat-label { margin-top: 12px; font-size: 14px; color: var(--text-soft); line-height: 1.5; }
.deal-stats-foot {
    text-align: center; margin-top: 40px; font-size: 16px; color: var(--text-soft);
    font-weight: 500;
}

/* ---- 第三屏｜筛选 + 排序 ---- */
.deal-filter { padding-bottom: 0; }
.deal-filter-bar {
    display: flex; align-items: center; justify-content: space-between; gap: 20px;
    flex-wrap: wrap; margin-top: 8px;
}
.deal-filter-bar .case-filters { display: flex; flex-wrap: wrap; gap: 12px; flex: 1; }
.deal-sort { display: inline-flex; align-items: center; gap: 10px; }
.deal-sort-label { font-size: 14px; color: var(--text-soft); }
.sort-btn {
    padding: 8px 18px; border: 1.5px solid var(--border); background: var(--bg);
    border-radius: 50px; font-size: 14px; font-weight: 500; color: var(--text-soft);
    cursor: pointer; transition: all .25s;
}
.sort-btn:hover { border-color: var(--primary); color: var(--primary); }
.sort-btn.active { background: var(--primary); color: #fff; border-color: var(--primary); box-shadow: var(--shadow-primary); }

/* ---- 第四屏｜成交案例卡片 ---- */
.deal-cases { background: var(--bg); }
.deal-case-card {
    background: var(--bg); border-radius: var(--radius-lg); overflow: hidden;
    box-shadow: var(--shadow-sm); border: 1px solid var(--border);
    transition: all .35s ease; display: flex; flex-direction: column;
}
.deal-case-card:hover { transform: translateY(-8px); box-shadow: var(--shadow-lg); border-color: var(--primary-soft); }
.dcc-cover {
    position: relative; display: block; aspect-ratio: 4 / 3; overflow: hidden;
    background: linear-gradient(135deg, var(--primary-soft), #fff);
}
.dcc-img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.deal-case-card:hover .dcc-img { transform: scale(1.06); }
.dcc-ph {
    position: absolute; inset: 0; display: flex; align-items: center; justify-content: center;
    color: var(--primary); font-weight: 700; font-size: 18px;
}
.dcc-cover .cover-icon {
    position: absolute; top: 14px; right: 14px; z-index: 2; color: #fff; opacity: .92;
    filter: drop-shadow(0 2px 6px rgba(0,0,0,.45));
}
.dcc-cover .cover-icon svg { width: 38px; height: 38px; }
.dcc-badge {
    position: absolute; top: 14px; left: 14px; z-index: 2;
    background: rgba(225,37,27,.92); color: #fff; font-size: 13px; font-weight: 600;
    padding: 5px 12px; border-radius: 50px; backdrop-filter: blur(4px);
}
.dcc-body { padding: 20px 20px 22px; display: flex; flex-direction: column; flex: 1; }
.dcc-title { font-size: 18px; font-weight: 700; line-height: 1.45; margin-bottom: 14px; }
.dcc-title a:hover { color: var(--primary); }
.dcc-stats {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px;
    padding: 14px; background: var(--bg-alt); border-radius: var(--radius-sm); margin-bottom: 16px;
}
.dcc-stat { display: flex; flex-direction: column; gap: 4px; }
.dcc-stat span { font-size: 12.5px; color: var(--text-light); }
.dcc-stat b { font-size: 17px; font-weight: 700; color: var(--text); }
.dcc-stat b.hl { color: var(--primary); }
.dcc-foot {
    margin-top: auto; display: flex; align-items: center; justify-content: space-between;
    gap: 12px; padding-top: 4px;
}
.dcc-metrics { display: flex; flex-wrap: wrap; gap: 10px; font-size: 13px; color: var(--text-soft); }
.dcc-metrics b { color: var(--text); font-weight: 700; }
.dcc-detail { padding: 9px 18px; font-size: 13.5px; }
.deal-cases-empty { grid-column: 1 / -1; text-align: center; color: var(--text-soft); padding: 50px 0; }

/* ---- 第五屏｜专业服务 ---- */
.deal-services { background: var(--bg-alt); }
.deal-services-grid {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px;
}
.svc-card {
    background: var(--bg); border-radius: var(--radius); padding: 34px 26px;
    box-shadow: var(--shadow-sm); border: 1px solid var(--border);
    transition: all .3s ease; text-align: center;
}
.svc-card:hover { transform: translateY(-8px); box-shadow: var(--shadow-lg); border-color: var(--primary-soft); }
.svc-icon {
    width: 64px; height: 64px; border-radius: 18px; background: var(--primary-soft);
    color: var(--primary); display: flex; align-items: center; justify-content: center;
    margin: 0 auto 18px;
}
.svc-icon svg { width: 32px; height: 32px; }
.svc-card:hover .svc-icon { background: var(--primary); color: #fff; transform: rotate(-8deg) scale(1.05); }
.svc-title { font-size: 19px; font-weight: 700; margin-bottom: 10px; }
.svc-desc { font-size: 14px; color: var(--text-soft); line-height: 1.8; }
.deal-services-foot { text-align: center; margin-top: 38px; font-size: 16px; color: var(--text-soft); font-weight: 500; }

/* ---- 第六屏｜CTA ---- */
.deal-cta { background: linear-gradient(135deg, #B71C1C 0%, #E1251B 60%, #C2160B 100%); color: #fff; }
.deal-cta-inner { max-width: 760px; margin: 0 auto; text-align: center; }
.deal-cta-title { font-size: 34px; font-weight: 800; line-height: 1.4; margin-bottom: 18px; }
.deal-cta-text { font-size: 17px; line-height: 1.9; color: rgba(255,255,255,.92); margin-bottom: 32px; }
.deal-cta-btns { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }

/* ============================================================
 * 案例详情页（case-detail.html）
 * ============================================================ */
.breadcrumb { font-size: 14px; color: var(--text-soft); margin-bottom: 24px; }
.breadcrumb a { color: var(--text-soft); }
.breadcrumb a:hover { color: var(--primary); }
.breadcrumb span { margin: 0 8px; opacity: .55; }
.case-detail { background: var(--bg-alt); }
.cd-card {
    background: var(--bg); border-radius: var(--radius-lg); overflow: hidden;
    box-shadow: var(--shadow-md); border: 1px solid var(--border); padding: 28px;
}
.cd-hero { display: grid; grid-template-columns: 1.1fr 1fr; gap: 32px; align-items: center; }
.cd-img {
    position: relative; aspect-ratio: 4 / 3; border-radius: var(--radius); overflow: hidden;
    background: linear-gradient(135deg, var(--primary-soft), #fff);
    background-size: cover; background-position: center; min-height: 260px;
}
.cd-ph {
    position: absolute; inset: 0; display: flex; align-items: center; justify-content: center;
    color: var(--primary); font-weight: 700; font-size: 20px;
}
.cd-img .cover-icon {
    position: absolute; top: 14px; right: 14px; z-index: 2; color: #fff; opacity: .92;
    filter: drop-shadow(0 2px 6px rgba(0,0,0,.45));
}
.cd-img .cover-icon svg { width: 38px; height: 38px; }
.cd-img .dcc-badge { top: 14px; left: 14px; right: auto; }
.cd-title { font-size: 30px; font-weight: 800; line-height: 1.35; margin-bottom: 14px; }
.cd-sub { font-size: 15px; color: var(--text-soft); line-height: 1.8; margin-bottom: 24px; }
.cd-actions { display: flex; gap: 14px; flex-wrap: wrap; }
.cd-stats {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px;
    margin-top: 32px; padding: 26px; background: var(--bg-alt); border-radius: var(--radius);
}
.cd-stat { display: flex; flex-direction: column; gap: 6px; }
.cd-stat span { font-size: 13px; color: var(--text-light); }
.cd-stat b { font-size: 20px; font-weight: 800; color: var(--text); }
.cd-stat b.hl { color: var(--primary); }
.cd-back { margin-top: 26px; }
.cd-empty, .cd-loading { text-align: center; color: var(--text-soft); padding: 60px 0; font-size: 15px; }
.cd-empty a { color: var(--primary); margin-left: 6px; }

/* ---- 响应式 ---- */
@media (max-width: 1080px) {
    .deal-stats-grid { grid-template-columns: repeat(3, 1fr); }
    .deal-services-grid { grid-template-columns: repeat(2, 1fr); }
    .cd-stats { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 980px) {
    .deal-hero-title { font-size: 36px; }
    .cd-hero { grid-template-columns: 1fr; gap: 22px; }
}
@media (max-width: 760px) {
    .deal-stats-grid { grid-template-columns: repeat(2, 1fr); }
    .deal-hero-title { font-size: 30px; }
    .deal-hero-sub { font-size: 15px; }
    .deal-cta-title { font-size: 26px; }
    .deal-filter-bar { flex-direction: column; align-items: flex-start; }
    .deal-sort { width: 100%; justify-content: flex-start; }
}
@media (max-width: 560px) {
    .deal-stats-grid { grid-template-columns: 1fr; }
    .deal-services-grid { grid-template-columns: 1fr; }
    .cd-stats { grid-template-columns: 1fr 1fr; gap: 14px; }
    .cases-grid { grid-template-columns: 1fr; }
}
