/* ========== 全局重置与基础变量 ========== */
:root{
    --primary:#c8102e;          /* 中国红 高级感 */
    --primary-dark:#8b0a1f;
    --gold:#d4af37;             /* 鎏金 */
    --ink:#0b1f3a;              /* 墨蓝 */
    --ink-soft:#1a2b4a;
    --bg:#fafbfc;
    --bg-soft:#f1f3f7;
    --line:#e5e8ef;
    --text:#2c3344;
    --text-soft:#6b7488;
    --white:#fff;
    --shadow:0 8px 30px rgba(11,31,58,.08);
    --shadow-hover:0 16px 48px rgba(11,31,58,.16);
    --radius:14px;
    --grad-primary:linear-gradient(135deg,#c8102e 0%,#8b0a1f 100%);
    --grad-ink:linear-gradient(135deg,#0b1f3a 0%,#1a2b4a 100%);
    --grad-warm:linear-gradient(135deg,#c8102e 0%,#d4af37 100%);
    --grad-cool:linear-gradient(135deg,#0b1f3a 0%,#2b4a7a 100%);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
    font-family:"PingFang SC","Microsoft YaHei","Hiragino Sans GB","Source Han Sans CN",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    font-size:15px;line-height:1.75;color:var(--text);
    background:var(--bg);overflow-x:hidden;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none;transition:color .25s}
a:hover{color:var(--primary)}
ul,ol{list-style:none}
button{font-family:inherit;cursor:pointer;border:none;background:none}
input,textarea{font-family:inherit;outline:none}

.container{max-width:1280px;margin:0 auto;padding:0 24px}
.clearfix::after{content:"";display:block;clear:both}

/* ========== 顶部公告条 ========== */
.topbar{
    background:var(--ink);color:rgba(255,255,255,.85);font-size:13px;
    padding:8px 0;border-bottom:1px solid rgba(255,255,255,.06);
}
.topbar .container{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}
.topbar a{color:rgba(255,255,255,.85);margin-left:18px}
.topbar a:hover{color:var(--gold)}
.topbar .ico{display:inline-block;width:14px;height:14px;vertical-align:-2px;margin-right:4px}

/* ========== 导航+Banner 一体化 ========== */
.header{
    position:relative;background:var(--white);
    box-shadow:0 2px 20px rgba(11,31,58,.06);
    z-index:100;
}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;height:84px}
.logo{display:flex;align-items:center;gap:10px;font-size:24px;font-weight:800;color:var(--ink);letter-spacing:1px}
.logo .brand{position:relative;display:inline-flex;align-items:flex-start}
.logo .brand sup{font-size:11px;color:var(--primary);font-weight:700;margin-left:2px;margin-top:-6px}
.logo .sep{color:var(--line);font-weight:300;margin:0 8px;font-size:22px}
.logo .tag{font-size:15px;font-weight:500;color:var(--text-soft);letter-spacing:2px}
.main-nav{display:flex;align-items:center;gap:6px}
.main-nav > li{position:relative}
.main-nav > li > a{
    display:block;padding:0 18px;line-height:84px;font-size:15px;font-weight:500;
    color:var(--ink);position:relative;transition:color .25s;
}
.main-nav > li > a::after{
    content:"";position:absolute;left:50%;bottom:18px;width:0;height:2px;background:var(--grad-primary);
    transition:all .3s;transform:translateX(-50%);
}
.main-nav > li > a:hover,.main-nav > li > a.active{color:var(--primary)}
.main-nav > li > a:hover::after,.main-nav > a.active::after{width:60%}

.nav-cta{
    background:var(--grad-primary);color:var(--white)!important;padding:0 28px;height:46px;
    line-height:46px;border-radius:23px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:6px;
    box-shadow:0 6px 18px rgba(200,16,46,.32);transition:all .3s;flex-shrink:0;margin-left:10px;
    font-size:15px;letter-spacing:1px;
}
.nav-cta:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(200,16,46,.4)}

/* 顶部Banner(导航一体化) */
.hero{
    position:relative;min-height:560px;color:var(--white);overflow:hidden;
    background:linear-gradient(135deg,#0b1f3a 0%,#1a2b4a 50%,#2b4a7a 100%);
}
.hero::before{
    content:"";position:absolute;inset:0;
    background:
        radial-gradient(ellipse 600px 400px at 20% 30%,rgba(200,16,46,.35),transparent 60%),
        radial-gradient(ellipse 500px 500px at 80% 70%,rgba(212,175,55,.18),transparent 60%);
    animation:heroGlow 10s ease-in-out infinite alternate;
}
@keyframes heroGlow{
    0%{transform:translate(0,0) scale(1)}
    100%{transform:translate(20px,-10px) scale(1.05)}
}
.hero::after{
    content:"";position:absolute;inset:0;
    background-image:
        linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);
    background-size:50px 50px;opacity:.6;
}
.hero-inner{position:relative;z-index:2;padding:90px 0 110px}
.hero .breadcrumb{font-size:13px;color:rgba(255,255,255,.7);margin-bottom:24px}
.hero .breadcrumb a{color:rgba(255,255,255,.7)}
.hero .breadcrumb a:hover{color:var(--gold)}
.hero h1{font-size:54px;line-height:1.2;font-weight:800;letter-spacing:2px;margin-bottom:24px;max-width:900px}
.hero h1 .accent{background:linear-gradient(120deg,#d4af37 0%,#f4d77a 50%,#d4af37 100%);-webkit-background-clip:text;color:transparent;background-clip:text}
.hero .sub{font-size:20px;color:rgba(255,255,255,.85);margin-bottom:36px;max-width:780px;line-height:1.7}
.hero .badges{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:42px}
.hero .badges span{
    display:inline-flex;align-items:center;gap:6px;padding:8px 18px;
    background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);
    border-radius:30px;font-size:14px;backdrop-filter:blur(8px);
}
.hero .badges .dot{width:6px;height:6px;background:var(--gold);border-radius:50%;box-shadow:0 0 8px var(--gold)}
.hero-cta{display:flex;flex-wrap:wrap;gap:16px}
.btn{
    display:inline-flex;align-items:center;gap:8px;height:52px;padding:0 32px;
    border-radius:26px;font-size:16px;font-weight:600;letter-spacing:1px;
    transition:all .3s;cursor:pointer;
}
.btn-primary{background:var(--grad-primary);color:var(--white);box-shadow:0 10px 28px rgba(200,16,46,.4)}
.btn-primary:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(200,16,46,.5);color:#fff}
.btn-ghost{background:transparent;color:var(--white);border:1.5px solid rgba(255,255,255,.4)}
.btn-ghost:hover{background:rgba(255,255,255,.1);border-color:var(--white);color:#fff}

/* 装饰性元素 */
.hero-deco{
    position:absolute;right:-80px;top:50%;transform:translateY(-50%);
    width:520px;height:520px;border-radius:50%;
    background:radial-gradient(circle,rgba(200,16,46,.2) 0%,transparent 70%);
    z-index:1;animation:float 6s ease-in-out infinite;
}
@keyframes float{0%,100%{transform:translateY(-50%) translateX(0)}50%{transform:translateY(-55%) translateX(10px)}}
.hero-stats{
    position:absolute;right:0;top:50%;transform:translateY(-50%);
    background:rgba(255,255,255,.05);backdrop-filter:blur(20px);
    border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:32px 40px;
    z-index:3;display:grid;grid-template-columns:1fr 1fr;gap:30px 50px;min-width:380px;
}
.hero-stats .item{text-align:center}
.hero-stats .num{font-size:38px;font-weight:800;color:var(--gold);line-height:1;margin-bottom:6px;font-family:"DIN Alternate",-apple-system,sans-serif}
.hero-stats .lab{font-size:13px;color:rgba(255,255,255,.7);letter-spacing:1px}

@media(max-width:1100px){.hero-stats{display:none}}

/* ========== 通用Section ========== */
section{padding:90px 0;position:relative}
.section-head{text-align:center;margin-bottom:60px}
.section-head .eyebrow{
    display:inline-block;font-size:14px;font-weight:600;color:var(--primary);
    letter-spacing:4px;margin-bottom:14px;position:relative;padding:0 24px;
}
.section-head .eyebrow::before,.section-head .eyebrow::after{
    content:"";position:absolute;top:50%;width:18px;height:1px;background:var(--primary);
}
.section-head .eyebrow::before{left:0}
.section-head .eyebrow::after{right:0}
.section-head h2{font-size:38px;color:var(--ink);font-weight:800;margin-bottom:14px;letter-spacing:1px}
.section-head h2 em{font-style:normal;color:var(--primary)}
.section-head p{color:var(--text-soft);max-width:760px;margin:0 auto;font-size:16px}

/* ========== 业务板块卡片 ========== */
.biz-section{background:var(--bg-soft)}
.biz-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.biz-card{
    position:relative;background:var(--white);border-radius:var(--radius);
    padding:40px 28px;box-shadow:var(--shadow);transition:all .4s;
    overflow:hidden;border:1px solid var(--line);
}
.biz-card::before{
    content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--grad-primary);
    transform:scaleX(0);transform-origin:left;transition:transform .4s;
}
.biz-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-hover);border-color:transparent}
.biz-card:hover::before{transform:scaleX(1)}
.biz-card .icon{
    width:64px;height:64px;border-radius:14px;display:flex;align-items:center;justify-content:center;
    background:var(--grad-primary);color:var(--white);font-size:28px;margin-bottom:22px;
    box-shadow:0 8px 20px rgba(200,16,46,.25);
}
.biz-card h3{font-size:20px;color:var(--ink);margin-bottom:12px;font-weight:700}
.biz-card .desc{color:var(--text-soft);font-size:14px;line-height:1.8;margin-bottom:18px;height:74px;overflow:hidden}
.biz-card ul li{
    position:relative;padding:6px 0 6px 18px;font-size:13.5px;color:var(--text-soft);
}
.biz-card ul li::before{
    content:"";position:absolute;left:0;top:14px;width:6px;height:6px;border-radius:50%;
    background:var(--gold);
}
.biz-card .more{
    display:inline-flex;align-items:center;gap:4px;margin-top:18px;
    color:var(--primary);font-size:14px;font-weight:600;
}
.biz-card .more::after{content:"→";transition:transform .3s}
.biz-card:hover .more::after{transform:translateX(4px)}

@media(max-width:992px){.biz-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:576px){.biz-grid{grid-template-columns:1fr}}

/* ========== 优势/数据 ========== */
.adv-section{background:var(--white)}
.adv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-bottom:60px}
.adv-item{
    text-align:center;padding:30px 20px;background:var(--bg-soft);
    border-radius:var(--radius);transition:all .3s;position:relative;overflow:hidden;
}
.adv-item::after{
    content:"";position:absolute;bottom:0;left:0;right:0;height:3px;
    background:var(--grad-primary);transform:scaleX(0);transition:transform .4s;
}
.adv-item:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.adv-item:hover::after{transform:scaleX(1)}
.adv-item .num{font-size:46px;font-weight:800;color:var(--primary);line-height:1;margin-bottom:8px}
.adv-item .lab{font-size:14px;color:var(--text-soft);letter-spacing:1px}
.adv-item .plus{font-size:24px;color:var(--gold);vertical-align:super}

.adv-content{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.adv-content .txt h3{font-size:30px;color:var(--ink);margin-bottom:18px;font-weight:800;line-height:1.4}
.adv-content .txt h3 em{color:var(--primary);font-style:normal}
.adv-content .txt p{color:var(--text);font-size:15px;line-height:1.9;margin-bottom:14px}
.adv-content .pic{
    border-radius:var(--radius);overflow:hidden;position:relative;height:400px;
    background:var(--grad-ink);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.5);
    box-shadow:var(--shadow);
}
.adv-content .pic::before{
    content:"";position:absolute;inset:0;
    background:radial-gradient(circle at 30% 30%,rgba(200,16,46,.3),transparent 60%);
}
.adv-content .pic .badge{
    position:absolute;top:24px;left:24px;background:var(--grad-primary);color:#fff;
    padding:8px 18px;border-radius:20px;font-size:13px;font-weight:600;letter-spacing:1px;
    box-shadow:0 6px 16px rgba(200,16,46,.4);
}
.adv-content .pic .big{font-size:64px;font-weight:900;color:rgba(255,255,255,.08);position:absolute;bottom:30px;right:30px;letter-spacing:8px}

@media(max-width:992px){.adv-grid{grid-template-columns:repeat(2,1fr)}.adv-content{grid-template-columns:1fr;gap:30px}}

/* ========== 流程 ========== */
.flow-section{background:linear-gradient(180deg,var(--ink) 0%,var(--ink-soft) 100%);color:var(--white);position:relative;overflow:hidden}
.flow-section::before{
    content:"";position:absolute;inset:0;
    background:radial-gradient(ellipse 800px 500px at 50% 0%,rgba(200,16,46,.2),transparent 60%);
}
.flow-section .section-head h2,.flow-section .section-head p{color:#fff}
.flow-section .section-head .eyebrow{color:var(--gold)}
.flow-section .section-head .eyebrow::before,.flow-section .section-head .eyebrow::after{background:var(--gold)}
.flow-section .section-head p{color:rgba(255,255,255,.7)}
.flow-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:20px;position:relative;z-index:2}
.flow-item{text-align:center;position:relative;padding:20px 10px}
.flow-item .step{
    width:64px;height:64px;border-radius:50%;background:var(--grad-primary);color:#fff;
    font-size:26px;font-weight:800;display:flex;align-items:center;justify-content:center;
    margin:0 auto 18px;box-shadow:0 8px 20px rgba(200,16,46,.4);position:relative;z-index:2;
}
.flow-item h4{font-size:16px;margin-bottom:8px;color:#fff;font-weight:700}
.flow-item p{font-size:13px;color:rgba(255,255,255,.7);line-height:1.6}
@media(max-width:992px){.flow-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:576px){.flow-grid{grid-template-columns:repeat(2,1fr)}}

/* ========== 案例 ========== */
.case-section{background:var(--bg-soft)}
.case-tabs{display:flex;justify-content:center;gap:8px;margin-bottom:40px;flex-wrap:wrap}
.case-tabs li{
    padding:8px 22px;background:#fff;border:1px solid var(--line);border-radius:24px;
    cursor:pointer;font-size:14px;color:var(--text-soft);transition:all .3s;
}
.case-tabs li.active,.case-tabs li:hover{background:var(--grad-primary);color:#fff;border-color:transparent;box-shadow:0 6px 16px rgba(200,16,46,.3)}
.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.case-card{
    background:#fff;border-radius:var(--radius);overflow:hidden;
    box-shadow:var(--shadow);transition:all .4s;cursor:pointer;
}
.case-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-hover)}
.case-card .cover{
    height:200px;background:var(--grad-ink);position:relative;overflow:hidden;
    display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.4);
    font-size:64px;font-weight:900;letter-spacing:6px;
}
.case-card .cover::after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(135deg,rgba(200,16,46,.4) 0%,rgba(212,175,55,.2) 100%);
}
.case-card .cover .tag{
    position:absolute;top:14px;left:14px;background:rgba(0,0,0,.5);color:#fff;
    padding:4px 12px;border-radius:12px;font-size:12px;backdrop-filter:blur(8px);z-index:2;
}
.case-card .body{padding:24px}
.case-card h4{font-size:17px;color:var(--ink);margin-bottom:10px;font-weight:700;line-height:1.5}
.case-card .meta{display:flex;justify-content:space-between;color:var(--text-soft);font-size:13px;margin-top:14px;padding-top:14px;border-top:1px dashed var(--line)}
.case-card .meta .v{color:var(--primary);font-weight:700}
@media(max-width:992px){.case-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:576px){.case-grid{grid-template-columns:1fr}}

/* ========== 行业方案 ========== */
.industry-section{background:#fff}
.industry-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.industry-card{
    background:#fff;border:1px solid var(--line);border-radius:var(--radius);
    overflow:hidden;transition:all .3s;cursor:pointer;
}
.industry-card:hover{border-color:var(--primary);transform:translateY(-4px);box-shadow:var(--shadow)}
.industry-card .top{height:120px;background:var(--grad-cool);position:relative;display:flex;align-items:center;justify-content:center;color:#fff;font-size:36px}
.industry-card .top::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(200,16,46,.3),transparent)}
.industry-card .bottom{padding:20px}
.industry-card h4{font-size:17px;color:var(--ink);margin-bottom:8px;font-weight:700}
.industry-card p{color:var(--text-soft);font-size:13px;line-height:1.6}
@media(max-width:992px){.industry-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:576px){.industry-grid{grid-template-columns:1fr}}

/* ========== FAQ ========== */
.faq-section{background:var(--bg-soft)}
.faq-list{max-width:960px;margin:0 auto}
.faq-item{
    background:#fff;border-radius:var(--radius);margin-bottom:16px;
    box-shadow:0 2px 12px rgba(11,31,58,.04);overflow:hidden;transition:all .3s;
    border:1px solid transparent;
}
.faq-item:hover{border-color:rgba(200,16,46,.2)}
.faq-item.open{box-shadow:var(--shadow);border-color:rgba(200,16,46,.15)}
.faq-q{
    display:flex;align-items:center;gap:18px;padding:22px 28px;cursor:pointer;
    position:relative;transition:background .3s;
}
.faq-q:hover{background:rgba(200,16,46,.02)}
.faq-q .no{
    flex-shrink:0;width:42px;height:42px;border-radius:50%;background:var(--grad-primary);color:#fff;
    display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;
    box-shadow:0 4px 12px rgba(200,16,46,.25);
}
.faq-q .q{flex:1;font-size:16px;color:var(--ink);font-weight:600;line-height:1.5}
.faq-q .arr{
    width:32px;height:32px;border-radius:50%;background:var(--bg-soft);
    display:flex;align-items:center;justify-content:center;transition:all .3s;color:var(--primary);font-weight:700;
}
.faq-item.open .faq-q .arr{background:var(--grad-primary);color:#fff;transform:rotate(180deg)}
.faq-a{
    max-height:0;overflow:hidden;transition:max-height .5s ease;
}
.faq-a-inner{padding:0 28px 24px 88px;color:var(--text);font-size:14.5px;line-height:1.9;border-top:1px dashed var(--line);padding-top:18px;margin-top:0}
.faq-item.open .faq-a{max-height:600px}

/* ========== 西安特色板块 ========== */
.local-section{
    background:linear-gradient(135deg,#fafbfc 0%,#fff 100%);
    position:relative;overflow:hidden;
}
.local-section::before{
    content:"";position:absolute;top:0;left:0;right:0;height:6px;background:var(--grad-warm);
}
.local-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:50px;align-items:center}
.local-txt h2{font-size:36px;color:var(--ink);font-weight:800;line-height:1.3;margin-bottom:20px}
.local-txt h2 em{color:var(--primary);font-style:normal}
.local-txt p{color:var(--text);font-size:15px;line-height:2;margin-bottom:14px}
.local-txt .tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.local-txt .tags span{
    padding:8px 18px;background:#fff;border:1px solid var(--line);border-radius:24px;
    font-size:13.5px;color:var(--text-soft);
}
.local-txt .tags span strong{color:var(--primary);font-weight:700;margin-right:4px}
.local-pic{
    height:480px;border-radius:var(--radius);overflow:hidden;position:relative;
    background:var(--grad-ink);box-shadow:var(--shadow);
}
.local-pic::before{
    content:"";position:absolute;inset:0;
    background:radial-gradient(circle at 30% 30%,rgba(200,16,46,.4),transparent 60%),
               radial-gradient(circle at 70% 70%,rgba(212,175,55,.3),transparent 60%);
}
.local-pic .city{
    position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
    color:rgba(255,255,255,.95);font-size:120px;font-weight:900;letter-spacing:20px;
    text-shadow:0 6px 30px rgba(0,0,0,.4);
}
.local-pic .corner{position:absolute;left:30px;bottom:30px;color:#fff;z-index:2}
.local-pic .corner h4{font-size:24px;font-weight:800;margin-bottom:6px;letter-spacing:2px}
.local-pic .corner p{font-size:13px;color:rgba(255,255,255,.85);letter-spacing:1px}
@media(max-width:992px){.local-grid{grid-template-columns:1fr}}

/* ========== 联系方式板块 ========== */
.contact-section{background:#fff}
.contact-wrap{display:grid;grid-template-columns:1fr 1.2fr;gap:50px;align-items:stretch}
.contact-info{
    background:var(--grad-ink);color:#fff;border-radius:var(--radius);
    padding:50px 40px;position:relative;overflow:hidden;
}
.contact-info::before{
    content:"";position:absolute;inset:0;
    background:radial-gradient(circle at 100% 0%,rgba(200,16,46,.3),transparent 50%);
}
.contact-info > *{position:relative;z-index:1}
.contact-info h3{font-size:28px;margin-bottom:10px;font-weight:800;letter-spacing:1px}
.contact-info .sub{color:rgba(255,255,255,.7);font-size:14px;margin-bottom:36px;letter-spacing:1px}
.contact-info .item{display:flex;align-items:flex-start;gap:16px;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.1)}
.contact-info .item:last-child{border-bottom:none}
.contact-info .item .ico{
    flex-shrink:0;width:44px;height:44px;border-radius:12px;background:rgba(200,16,46,.25);
    display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:18px;
    border:1px solid rgba(255,255,255,.1);
}
.contact-info .item .lab{font-size:12px;color:rgba(255,255,255,.6);letter-spacing:2px;margin-bottom:4px}
.contact-info .item .val{font-size:15px;color:#fff;line-height:1.6}
.contact-info .item .val strong{color:var(--gold);font-weight:700;font-size:17px}

.contact-form{
    background:var(--bg-soft);border-radius:var(--radius);padding:50px 44px;
    border:1px solid var(--line);
}
.contact-form h3{font-size:26px;color:var(--ink);font-weight:800;margin-bottom:8px}
.contact-form .sub{color:var(--text-soft);font-size:14px;margin-bottom:32px}
.form-row{margin-bottom:20px}
.form-row label{display:block;font-size:13px;color:var(--ink);margin-bottom:8px;font-weight:600;letter-spacing:1px}
.form-row label em{color:var(--primary);font-style:normal;margin-right:2px}
.form-row .ipt{
    width:100%;height:48px;padding:0 16px;border:1px solid var(--line);background:#fff;
    border-radius:8px;font-size:14.5px;color:var(--text);transition:all .25s;
}
.form-row .ipt:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(200,16,46,.1)}
.form-row textarea.ipt{height:110px;padding:14px 16px;resize:vertical;line-height:1.7}
.form-row.submit{margin-bottom:0;margin-top:30px}
.form-row.submit .btn{width:100%;justify-content:center}
.qrcode-row{display:flex;align-items:center;gap:24px;margin-top:24px;padding:18px;background:#fff;border-radius:10px;border:1px solid var(--line)}
.qrcode-row img{width:96px;height:96px;border-radius:8px;border:1px solid var(--line);padding:4px;background:#fff}
.qrcode-row .info h5{font-size:15px;color:var(--ink);margin-bottom:6px;font-weight:700}
.qrcode-row .info p{font-size:13px;color:var(--text-soft);line-height:1.6}
@media(max-width:992px){.contact-wrap{grid-template-columns:1fr}}

/* ========== 城市分站 ========== */
.city-section{background:var(--bg-soft)}
.city-group{margin-bottom:30px}
.city-group h4{
    display:inline-flex;align-items:center;gap:10px;font-size:18px;color:var(--ink);
    font-weight:800;padding:10px 24px;background:#fff;border-radius:24px;
    box-shadow:0 2px 8px rgba(11,31,58,.05);margin-bottom:18px;
}
.city-group h4::before{content:"";width:4px;height:18px;background:var(--grad-primary);border-radius:2px}
.city-links{display:grid;grid-template-columns:repeat(8,1fr);gap:10px}
.city-links a{
    padding:10px 12px;background:#fff;border:1px solid var(--line);border-radius:8px;
    text-align:center;font-size:14px;color:var(--text);transition:all .25s;
}
.city-links a:hover{background:var(--grad-primary);color:#fff;border-color:transparent;transform:translateY(-2px);box-shadow:0 6px 16px rgba(200,16,46,.3)}
@media(max-width:992px){.city-links{grid-template-columns:repeat(5,1fr)}}
@media(max-width:576px){.city-links{grid-template-columns:repeat(3,1fr)}}

/* ========== Footer ========== */
.footer{
    background:var(--ink);color:rgba(255,255,255,.7);padding:70px 0 0;font-size:14px;position:relative;overflow:hidden;
}
.footer::before{
    content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--grad-warm);
}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:50px;padding-bottom:50px}
.footer h5{color:#fff;font-size:16px;margin-bottom:22px;font-weight:700;position:relative;padding-bottom:12px;letter-spacing:1px}
.footer h5::after{content:"";position:absolute;left:0;bottom:0;width:30px;height:2px;background:var(--grad-primary)}
.footer-about .logo{color:#fff;margin-bottom:18px}
.footer-about p{line-height:1.9;color:rgba(255,255,255,.65);margin-bottom:18px}
.footer-about .socials{display:flex;gap:10px}
.footer-about .socials a{
    width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.08);
    display:flex;align-items:center;justify-content:center;color:#fff;
    transition:all .3s;
}
.footer-about .socials a:hover{background:var(--grad-primary);transform:translateY(-3px)}
.footer ul li{padding:6px 0}
.footer ul li a{color:rgba(255,255,255,.65);transition:all .3s}
.footer ul li a:hover{color:var(--gold);padding-left:6px}
.footer-contact li{display:flex;gap:10px;padding:8px 0;align-items:flex-start;line-height:1.6}
.footer-contact li .lbl{flex-shrink:0;color:var(--gold);font-weight:600;font-size:13px;min-width:72px}
.footer-bottom{
    border-top:1px solid rgba(255,255,255,.1);padding:24px 0;text-align:center;
    color:rgba(255,255,255,.55);font-size:13px;line-height:1.9;
}
.footer-bottom a{color:rgba(255,255,255,.55)}
.footer-bottom a:hover{color:var(--gold)}
@media(max-width:992px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:576px){.footer-grid{grid-template-columns:1fr}}

/* ========== 侧边悬浮 ========== */
.float-tools{position:fixed;right:24px;bottom:30%;z-index:99;display:flex;flex-direction:column;gap:10px}
.float-tools a{
    width:54px;height:54px;border-radius:50%;background:#fff;color:var(--ink);
    display:flex;align-items:center;justify-content:center;font-size:22px;
    box-shadow:0 6px 20px rgba(0,0,0,.12);transition:all .3s;position:relative;
}
.float-tools a:hover{background:var(--grad-primary);color:#fff;transform:translateX(-4px)}
.float-tools a .tip{
    position:absolute;right:64px;top:50%;transform:translateY(-50%);
    background:var(--ink);color:#fff;padding:6px 12px;border-radius:6px;
    font-size:13px;white-space:nowrap;opacity:0;pointer-events:none;transition:all .3s;
}
.float-tools a:hover .tip{opacity:1;right:70px}
.float-tools .top{background:var(--grad-primary);color:#fff}

/* ========== 面包屑 ========== */
.crumbs{background:#fff;padding:18px 0;border-bottom:1px solid var(--line);font-size:13.5px;color:var(--text-soft)}
.crumbs a{color:var(--text-soft)}
.crumbs a:hover{color:var(--primary)}
.crumbs .sep{margin:0 8px;color:var(--line)}

/* ========== 内页Banner简化 ========== */
.page-banner{
    background:linear-gradient(135deg,#0b1f3a 0%,#1a2b4a 60%,#2b4a7a 100%);
    color:#fff;padding:80px 0 90px;position:relative;overflow:hidden;
}
.page-banner::before{
    content:"";position:absolute;inset:0;
    background:
        radial-gradient(ellipse 600px 400px at 20% 30%,rgba(200,16,46,.3),transparent 60%),
        radial-gradient(ellipse 500px 500px at 80% 70%,rgba(212,175,55,.15),transparent 60%);
}
.page-banner::after{
    content:"";position:absolute;inset:0;
    background-image:
        linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);
    background-size:50px 50px;opacity:.5;
}
.page-banner > .container{position:relative;z-index:2}
.page-banner h1{font-size:42px;font-weight:800;margin-bottom:14px;letter-spacing:1px}
.page-banner h1 em{font-style:normal;background:linear-gradient(120deg,#d4af37 0%,#f4d77a 50%,#d4af37 100%);-webkit-background-clip:text;color:transparent;background-clip:text}
.page-banner p{font-size:16px;color:rgba(255,255,255,.85);max-width:780px;line-height:1.8}

/* ========== 响应式 ========== */
@media(max-width:768px){
    .nav-wrap{height:64px}
    .main-nav{display:none}
    .hero-inner{padding:60px 0 70px}
    .hero h1{font-size:34px}
    .hero .sub{font-size:16px}
    .section-head h2{font-size:28px}
    section{padding:60px 0}
    .container{padding:0 16px}
    .page-banner{padding:50px 0 60px}
    .page-banner h1{font-size:28px}
    .contact-form,.contact-info{padding:32px 24px}
    .hero-cta{flex-direction:column;align-items:stretch}
    .hero-cta .btn{justify-content:center}
    .topbar{font-size:12px}
    .topbar a{margin-left:10px}
}

/* ========== 滚动动画 ========== */
.fade-up{opacity:0;transform:translateY(30px);transition:all .8s ease}
.fade-up.in{opacity:1;transform:translateY(0)}
