/* ==================================================================
   陕西瑞泉水处理 · 渭南站  样式表
   设计语言：深蓝信任 + 青蓝科技 + 克制留白 + 微动效
   ================================================================== */

:root{
    --color-primary:#0a2540;       /* 深蓝 - 主色 */
    --color-accent:#00a6e2;        /* 青蓝 - 强调色 */
    --color-accent-dark:#0086b8;
    --color-warm:#ff6b35;          /* 暖橙 - CTA */
    --color-text:#1f2937;
    --color-text-soft:#52606d;
    --color-text-mute:#7b8794;
    --color-bg:#ffffff;
    --color-bg-soft:#f5f7fa;
    --color-bg-alt:#eef4f9;
    --color-border:#e3e8ef;
    --shadow-sm:0 2px 8px rgba(10,37,64,.06);
    --shadow-md:0 8px 24px rgba(10,37,64,.08);
    --shadow-lg:0 20px 50px rgba(10,37,64,.12);
    --radius-sm:6px;
    --radius:10px;
    --radius-lg:16px;
    --container:1240px;
    --transition:cubic-bezier(.4,0,.2,1);
}

/* ============== 基础 ============== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
    font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Source Han Sans CN","Noto Sans CJK SC","Helvetica Neue",Helvetica,Arial,sans-serif;
    line-height:1.7;
    color:var(--color-text);
    background:var(--color-bg);
    font-size:15px;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
    overflow-x:hidden;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none;transition:color .2s var(--transition)}
a:hover{color:var(--color-accent)}
button{font-family:inherit;cursor:pointer;border:none;background:none}
ul,ol{list-style:none}
h1,h2,h3,h4{font-weight:600;line-height:1.35;color:var(--color-primary);letter-spacing:-.01em}

.container{max-width:var(--container);margin:0 auto;padding:0 20px}

/* ============== 通用 ============== */
.eyebrow{
    display:inline-block;
    color:var(--color-accent);
    font-size:13px;
    font-weight:500;
    letter-spacing:.18em;
    text-transform:uppercase;
    margin-bottom:12px;
    position:relative;
    padding-left:24px;
}
.eyebrow::before{
    content:"";
    position:absolute;
    left:0;top:50%;
    width:16px;height:2px;
    background:var(--color-accent);
    transform:translateY(-50%);
}

.section{padding:80px 0;position:relative}
.section__head{text-align:center;max-width:760px;margin:0 auto 56px}
.section__title{font-size:30px;color:var(--color-primary);margin-bottom:14px;font-weight:600}
.section__desc{color:var(--color-text-soft);font-size:15.5px;line-height:1.8}

.link-arrow{
    display:inline-flex;
    align-items:center;
    color:var(--color-accent);
    font-weight:500;
    font-size:15px;
    margin-top:18px;
    border-bottom:1px solid currentColor;
    padding-bottom:2px;
}

/* ============== 按钮 ============== */
.btn{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:13px 26px;
    border-radius:var(--radius);
    font-size:15px;
    font-weight:500;
    transition:all .25s var(--transition);
    cursor:pointer;
    border:1px solid transparent;
    white-space:nowrap;
}
.btn--primary{background:var(--color-warm);color:#fff;box-shadow:0 6px 18px rgba(255,107,53,.28)}
.btn--primary:hover{background:#f25a23;color:#fff;transform:translateY(-2px);box-shadow:0 10px 24px rgba(255,107,53,.36)}
.btn--ghost{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.5);backdrop-filter:blur(6px)}
.btn--ghost:hover{background:rgba(255,255,255,.22);color:#fff}

/* ============== 顶部条 ============== */
.topbar{
    background:var(--color-primary);
    color:rgba(255,255,255,.85);
    font-size:13px;
    line-height:1.2;
}
.topbar__inner{
    display:flex;
    justify-content:space-between;
    align-items:center;
    height:36px;
    flex-wrap:wrap;
    gap:8px;
}
.topbar__welcome{font-weight:300}
.topbar__nav{display:flex;align-items:center;gap:8px}
.topbar__nav a:hover{color:#fff}
.topbar__divider{color:rgba(255,255,255,.3)}

/* ============== 头部导航 ============== */
.header{
    background:#fff;
    position:sticky;top:0;z-index:80;
    box-shadow:0 1px 0 var(--color-border);
    transition:box-shadow .25s var(--transition),background .25s var(--transition);
}
.header.is-scrolled{box-shadow:var(--shadow-md)}
.header__inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    height:80px;
    gap:24px;
}

/* LOGO：瑞泉水处理 | 水处理设备制造商（两边同字号） */
.logo{
    display:flex;
    align-items:center;
    color:var(--color-primary);
    flex-shrink:0;
}
.logo__brand,
.logo__tagline{
    font-size:22px;
    font-weight:700;
    letter-spacing:.02em;
    line-height:1.2;
}
.logo__divider{
    font-size:22px;
    font-weight:300;
    color:var(--color-accent);
    margin:0 14px;
    transform:translateY(-1px);
}

/* 导航 */
.nav{flex:1;display:flex;justify-content:center}
.nav__list{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}
.nav__link{
    display:inline-block;
    padding:8px 14px;
    font-size:15px;
    color:var(--color-text);
    font-weight:500;
    position:relative;
    border-radius:6px;
    transition:all .2s var(--transition);
}
.nav__link:hover{color:var(--color-accent);background:var(--color-bg-soft)}
.nav__link--active{color:var(--color-accent)}
.nav__link--active::after{
    content:"";
    position:absolute;
    bottom:-2px;left:14px;right:14px;
    height:2px;
    background:var(--color-accent);
    border-radius:2px;
}

/* 头部电话 */
.header__phone{
    display:flex;align-items:center;gap:10px;
    color:var(--color-primary);
    flex-shrink:0;
}
.header__phone-icon{
    width:38px;height:38px;
    display:flex;align-items:center;justify-content:center;
    background:var(--color-bg-soft);
    color:var(--color-accent);
    border-radius:50%;
    font-size:18px;
}
.header__phone-text{display:flex;flex-direction:column;line-height:1.2}
.header__phone-text small{font-size:11px;color:var(--color-text-mute);letter-spacing:.05em}
.header__phone-text strong{font-size:17px;color:var(--color-primary);font-weight:700;letter-spacing:.01em}

/* 汉堡菜单 */
.hamburger{
    display:none;
    width:38px;height:38px;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:5px;
    border-radius:6px;
}
.hamburger span{
    width:22px;height:2px;background:var(--color-primary);
    transition:all .3s var(--transition);
    border-radius:2px;
}
.hamburger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hamburger[aria-expanded="true"] span:nth-child(2){opacity:0}
.hamburger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ============== Banner ============== */
.banner{
    position:relative;
    height:560px;
    overflow:hidden;
    color:#fff;
}
.banner__bg{position:absolute;inset:0;z-index:1}
.banner__slide{
    position:absolute;inset:0;
    opacity:0;
    transition:opacity 1.2s var(--transition);
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
}
.banner__slide--active{opacity:1}
.banner__slide[data-slide="0"]{
    background-image:linear-gradient(135deg,rgba(10,37,64,.78),rgba(0,76,120,.55)),url('https://www.sxrq.cn/img/ruiquan.12.jpg');
}
.banner__slide[data-slide="1"]{
    background-image:linear-gradient(135deg,rgba(10,37,64,.78),rgba(0,166,226,.4)),url('https://www.sxrq.cn/img/ruiquan.17.jpg');
}
.banner__slide[data-slide="2"]{
    background-image:linear-gradient(135deg,rgba(0,76,120,.7),rgba(10,37,64,.6)),url('https://www.sxrq.cn/img/ruiquan.19.jpg');
}
.banner__overlay{
    position:absolute;inset:0;z-index:2;
    background:
        radial-gradient(ellipse at 80% 20%,rgba(0,166,226,.18),transparent 60%),
        radial-gradient(ellipse at 10% 90%,rgba(255,255,255,.05),transparent 50%);
    pointer-events:none;
}
.banner__content{
    position:relative;z-index:3;
    height:100%;
    display:flex;align-items:center;
}
.banner__text{max-width:720px}
.banner__eyebrow{
    display:inline-block;
    color:rgba(255,255,255,.85);
    font-size:14px;
    letter-spacing:.2em;
    margin-bottom:18px;
    padding:6px 16px;
    background:rgba(0,166,226,.18);
    border:1px solid rgba(0,166,226,.4);
    border-radius:30px;
    backdrop-filter:blur(4px);
}
.banner__title{
    color:#fff;
    font-size:48px;
    line-height:1.2;
    font-weight:700;
    margin-bottom:20px;
    letter-spacing:-.01em;
}
.banner__title-accent{
    background:linear-gradient(120deg,#7ed4f5,#00a6e2);
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
}
.banner__desc{
    color:rgba(255,255,255,.85);
    font-size:16.5px;
    line-height:1.8;
    margin-bottom:32px;
    max-width:620px;
}
.banner__cta{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:36px}
.banner__points{
    display:flex;flex-wrap:wrap;gap:0;
    border-top:1px solid rgba(255,255,255,.15);
    padding-top:24px;
    max-width:560px;
}
.banner__points li{
    flex:1 1 120px;
    color:rgba(255,255,255,.85);
    font-size:14px;
    position:relative;
    padding-left:18px;
    margin:6px 0;
}
.banner__points li::before{
    content:"✓";
    position:absolute;left:0;top:0;
    color:var(--color-accent);
    font-weight:700;
}

.banner__dots{
    position:absolute;
    bottom:24px;left:50%;
    transform:translateX(-50%);
    z-index:4;
    display:flex;gap:10px;
}
.banner__dot{
    width:30px;height:4px;
    background:rgba(255,255,255,.4);
    border-radius:4px;
    transition:all .3s var(--transition);
}
.banner__dot--active{background:#fff;width:46px}

/* ============== 公司介绍 ============== */
.about{background:var(--color-bg)}
.about__grid{
    display:grid;
    grid-template-columns:1fr 1.1fr;
    gap:64px;
    align-items:center;
}
.about__media{position:relative}
.about__img{
    border-radius:var(--radius-lg);
    overflow:hidden;
    box-shadow:var(--shadow-lg);
    aspect-ratio:4/3;
}
.about__img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--transition)}
.about__img:hover img{transform:scale(1.05)}
.about__badge{
    position:absolute;
    bottom:-24px;right:-24px;
    background:linear-gradient(135deg,var(--color-accent),#0086b8);
    color:#fff;
    padding:18px 26px;
    border-radius:var(--radius);
    box-shadow:0 12px 30px rgba(0,166,226,.3);
    text-align:center;
    line-height:1.1;
}
.about__badge strong{font-size:32px;display:block;font-weight:700}
.about__badge span{font-size:13px;opacity:.92}

.about__content .section__title{font-size:30px;margin-bottom:18px}
.about__lead{
    color:var(--color-primary);
    font-size:17px;
    font-weight:500;
    margin-bottom:14px;
    line-height:1.7;
}
.about__text{
    color:var(--color-text-soft);
    font-size:15px;
    line-height:1.85;
    margin-bottom:14px;
}
.about__features{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:8px 18px;
    margin:24px 0 8px;
}
.about__features li{
    display:flex;align-items:center;gap:10px;
    color:var(--color-text);
    font-size:14.5px;
}
.dot{
    display:inline-block;
    width:8px;height:8px;
    background:var(--color-accent);
    border-radius:50%;
    flex-shrink:0;
}

/* ============== 服务特色 ============== */
.features{background:var(--color-bg-soft)}
.feature-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
}
.feature-card{
    background:#fff;
    padding:36px 28px;
    border-radius:var(--radius-lg);
    border:1px solid var(--color-border);
    transition:all .35s var(--transition);
    position:relative;
    overflow:hidden;
}
.feature-card::before{
    content:"";
    position:absolute;
    top:0;left:0;right:0;height:3px;
    background:linear-gradient(90deg,var(--color-accent),#7ed4f5);
    transform:scaleX(0);
    transform-origin:left;
    transition:transform .4s var(--transition);
}
.feature-card:hover{
    transform:translateY(-6px);
    box-shadow:var(--shadow-lg);
    border-color:transparent;
}
.feature-card:hover::before{transform:scaleX(1)}
.feature-card__icon{
    width:56px;height:56px;
    display:flex;align-items:center;justify-content:center;
    background:linear-gradient(135deg,rgba(0,166,226,.1),rgba(0,166,226,.05));
    color:var(--color-accent);
    border-radius:14px;
    font-size:26px;
    margin-bottom:18px;
    transition:all .3s var(--transition);
}
.feature-card:hover .feature-card__icon{
    background:linear-gradient(135deg,var(--color-accent),#0086b8);
    color:#fff;
    transform:scale(1.05);
}
.feature-card h3{font-size:18px;margin-bottom:8px;color:var(--color-primary)}
.feature-card p{color:var(--color-text-soft);font-size:14.5px;line-height:1.75}

/* ============== 产品 ============== */
.products{background:#fff}
.product-tabs{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:10px;
    margin-bottom:48px;
}
.product-tab{
    padding:10px 22px;
    background:#fff;
    border:1px solid var(--color-border);
    color:var(--color-text);
    font-size:14.5px;
    font-weight:500;
    border-radius:30px;
    transition:all .25s var(--transition);
}
.product-tab:hover{
    color:var(--color-accent);
    border-color:var(--color-accent);
    background:var(--color-bg-soft);
}
.product-tab--active{
    color:#fff;
    background:var(--color-accent);
    border-color:var(--color-accent);
    box-shadow:0 6px 16px rgba(0,166,226,.3);
}

.product-pane[hidden]{display:none}
.product-pane__title{font-size:24px;color:var(--color-primary);margin-bottom:8px;text-align:center}
.product-pane__desc{
    text-align:center;
    color:var(--color-text-soft);
    font-size:14.5px;
    margin-bottom:36px;
    max-width:760px;
    margin-left:auto;margin-right:auto;
}

.product-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
}
.product-card{
    background:#fff;
    border:1px solid var(--color-border);
    border-radius:var(--radius);
    overflow:hidden;
    transition:all .3s var(--transition);
    display:flex;
    flex-direction:column;
}
.product-card:hover{
    transform:translateY(-4px);
    box-shadow:var(--shadow-md);
    border-color:transparent;
}
.product-card__img{
    aspect-ratio:4/3;
    overflow:hidden;
    background:var(--color-bg-soft);
    cursor:zoom-in;
    position:relative;
}
.product-card__img::after{
    content:"🔍";
    position:absolute;inset:0;
    display:flex;align-items:center;justify-content:center;
    color:#fff;font-size:24px;
    background:rgba(10,37,64,.45);
    opacity:0;
    transition:opacity .25s var(--transition);
}
.product-card__img:hover::after{opacity:1}
.product-card__img img{
    width:100%;height:100%;object-fit:cover;
    transition:transform .5s var(--transition);
}
.product-card__img:hover img{transform:scale(1.06)}
.product-card__body{
    padding:14px 16px 18px;
    flex:1;
    display:flex;
    flex-direction:column;
}
.product-card__name{
    font-size:14.5px;
    color:var(--color-primary);
    font-weight:600;
    line-height:1.45;
    margin-bottom:6px;
    min-height:42px;
}
.product-card__desc{
    font-size:12.5px;
    color:var(--color-text-mute);
    line-height:1.6;
    flex:1;
}
.products__more{text-align:center;margin-top:48px}

/* ============== 应用场景 ============== */
.cases{background:var(--color-bg-soft)}
.case-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
}
.case-card{
    background:#fff;
    border-radius:var(--radius-lg);
    overflow:hidden;
    box-shadow:var(--shadow-sm);
    transition:all .35s var(--transition);
}
.case-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.case-card__img{
    aspect-ratio:16/10;
    overflow:hidden;
    position:relative;
}
.case-card__img::after{
    content:"";
    position:absolute;inset:0;
    background:linear-gradient(180deg,transparent 50%,rgba(10,37,64,.55));
}
.case-card__img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--transition)}
.case-card:hover .case-card__img img{transform:scale(1.08)}
.case-card__body{padding:24px 24px 28px}
.case-card__body h3{font-size:18px;margin-bottom:8px}
.case-card__body p{color:var(--color-text-soft);font-size:14px;line-height:1.75}

/* ============== 渭南区域优势 ============== */
.local{background:#fff}
.local__grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
}
.local__block{
    background:var(--color-bg-soft);
    border-radius:var(--radius-lg);
    padding:32px 28px;
    border:1px solid var(--color-border);
}
.local__block h3{
    font-size:20px;
    color:var(--color-primary);
    margin-bottom:18px;
    padding-bottom:14px;
    border-bottom:2px solid var(--color-accent);
}
.check-list li{
    position:relative;
    padding-left:28px;
    margin-bottom:14px;
    color:var(--color-text-soft);
    font-size:14.5px;
    line-height:1.7;
}
.check-list li::before{
    content:"";
    position:absolute;
    left:0;top:8px;
    width:16px;height:8px;
    border-left:2px solid var(--color-accent);
    border-bottom:2px solid var(--color-accent);
    transform:rotate(-45deg);
}
.step-list{
    counter-reset:step;
}
.step-list li{
    position:relative;
    padding-left:42px;
    margin-bottom:14px;
    color:var(--color-text-soft);
    font-size:14.5px;
    line-height:1.7;
    counter-increment:step;
}
.step-list li::before{
    content:counter(step);
    position:absolute;
    left:0;top:2px;
    width:26px;height:26px;
    display:flex;align-items:center;justify-content:center;
    background:var(--color-accent);
    color:#fff;
    border-radius:50%;
    font-size:13px;
    font-weight:600;
}
.step-list strong{color:var(--color-primary)}

/* ============== FAQ ============== */
.faq{background:var(--color-bg-soft)}
.faq__list{
    max-width:920px;
    margin:0 auto;
    display:flex;
    flex-direction:column;
    gap:14px;
}
.faq-item{
    background:#fff;
    border:1px solid var(--color-border);
    border-radius:var(--radius);
    overflow:hidden;
    transition:all .25s var(--transition);
}
.faq-item[open]{border-color:var(--color-accent);box-shadow:var(--shadow-sm)}
.faq-item__q{
    list-style:none;
    cursor:pointer;
    padding:18px 56px 18px 22px;
    position:relative;
    color:var(--color-primary);
    font-size:15.5px;
    font-weight:600;
    line-height:1.55;
    transition:color .2s var(--transition);
}
.faq-item__q::-webkit-details-marker{display:none}
.faq-item__q::before{
    content:"Q";
    display:inline-flex;
    align-items:center;justify-content:center;
    width:28px;height:28px;
    background:var(--color-accent);
    color:#fff;
    border-radius:50%;
    font-size:13px;
    font-weight:700;
    margin-right:12px;
    flex-shrink:0;
}
.faq-item__q::after{
    content:"+";
    position:absolute;
    right:22px;top:50%;
    transform:translateY(-50%);
    font-size:22px;
    color:var(--color-text-mute);
    transition:transform .3s var(--transition);
    font-weight:300;
}
.faq-item[open] .faq-item__q::after{content:"−";color:var(--color-accent)}
.faq-item__q:hover{color:var(--color-accent)}
.faq-item__a{
    padding:0 22px 20px 62px;
    color:var(--color-text-soft);
    font-size:14.5px;
    line-height:1.85;
    position:relative;
}
.faq-item__a::before{
    content:"A";
    position:absolute;
    left:22px;top:0;
    width:28px;height:28px;
    display:flex;align-items:center;justify-content:center;
    background:var(--color-bg-soft);
    color:var(--color-accent);
    border-radius:50%;
    font-size:13px;
    font-weight:700;
}

/* ============== 友情链接 ============== */
.links{background:#fff;padding:64px 0}
.links__group{margin-bottom:36px}
.links__group:last-child{margin-bottom:0}
.links__group h3{
    font-size:18px;
    color:var(--color-primary);
    margin-bottom:18px;
    padding-left:14px;
    border-left:4px solid var(--color-accent);
}
.links__list{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
}
.links__list li a{
    display:inline-block;
    padding:9px 20px;
    background:var(--color-bg-soft);
    color:var(--color-text);
    border-radius:30px;
    font-size:14px;
    border:1px solid transparent;
    transition:all .25s var(--transition);
}
.links__list li a:hover{
    background:#fff;
    color:var(--color-accent);
    border-color:var(--color-accent);
    transform:translateY(-2px);
    box-shadow:var(--shadow-sm);
}
.links__list li a[aria-current="page"]{
    background:var(--color-accent);
    color:#fff;
    border-color:var(--color-accent);
}

/* ============== 联系方式 ============== */
.contact{background:var(--color-bg-soft)}
.contact-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
}
.contact-card{
    background:#fff;
    border-radius:var(--radius-lg);
    padding:32px 24px;
    text-align:center;
    border:1px solid var(--color-border);
    transition:all .3s var(--transition);
}
.contact-card:hover{
    transform:translateY(-4px);
    box-shadow:var(--shadow-md);
    border-color:transparent;
}
.contact-card__icon{
    width:54px;height:54px;
    display:flex;align-items:center;justify-content:center;
    background:linear-gradient(135deg,rgba(0,166,226,.12),rgba(0,166,226,.04));
    color:var(--color-accent);
    border-radius:50%;
    font-size:24px;
    margin:0 auto 14px;
}
.contact-card h3{
    font-size:16px;
    color:var(--color-primary);
    margin-bottom:10px;
}
.contact-card__main{
    color:var(--color-accent);
    font-size:22px;
    font-weight:700;
    margin-bottom:6px;
    letter-spacing:.01em;
    word-break:break-all;
}
.contact-card__main--text{
    color:var(--color-primary);
    font-size:15px;
    font-weight:500;
    line-height:1.6;
}
.contact-card__sub{
    color:var(--color-text-mute);
    font-size:13px;
}
.contact-card--wechat{
    background:linear-gradient(135deg,#fff,#f5fbfd);
}
.contact-card__qr{
    width:140px;height:140px;
    margin:0 auto 14px;
    border:5px solid #fff;
    border-radius:8px;
    box-shadow:var(--shadow-md);
    overflow:hidden;
}
.contact-card__qr img{width:100%;height:100%;object-fit:contain}

.contact__extra{
    text-align:center;
    margin-top:36px;
    color:var(--color-text-soft);
    font-size:14.5px;
    line-height:1.9;
}
.contact__extra strong{color:var(--color-primary)}

/* ============== 悬浮按钮 ============== */
.floating{
    position:fixed;
    right:18px;bottom:80px;
    z-index:60;
    display:flex;flex-direction:column;gap:10px;
}
.floating__btn{
    width:54px;height:54px;
    display:flex;flex-direction:column;
    align-items:center;justify-content:center;gap:2px;
    color:#fff;
    border-radius:50%;
    font-size:11px;
    font-weight:500;
    box-shadow:0 6px 20px rgba(0,0,0,.18);
    transition:all .25s var(--transition);
    cursor:pointer;
}
.floating__btn span:first-child{font-size:18px;line-height:1}
.floating__btn--phone{background:var(--color-warm)}
.floating__btn--phone:hover{background:#f25a23;color:#fff;transform:scale(1.05)}
.floating__btn--wx{background:#1aad19}
.floating__btn--wx:hover{background:#129611;color:#fff;transform:scale(1.05)}
.floating__btn--top{background:var(--color-primary);opacity:0;pointer-events:none}
.floating__btn--top.is-show{opacity:1;pointer-events:auto}
.floating__btn--top:hover{background:#143358;color:#fff;transform:scale(1.05)}

/* ============== 图片放大 ============== */
.lightbox{
    position:fixed;inset:0;z-index:100;
    background:rgba(10,37,64,.92);
    display:flex;flex-direction:column;
    align-items:center;justify-content:center;
    padding:30px;
    animation:fadeIn .25s var(--transition);
}
.lightbox[hidden]{display:none}
.lightbox__img{
    max-width:92%;max-height:80vh;
    border-radius:6px;
    box-shadow:0 30px 60px rgba(0,0,0,.5);
    animation:zoomIn .3s var(--transition);
}
.lightbox__caption{
    color:rgba(255,255,255,.85);
    margin-top:18px;
    font-size:15px;
    text-align:center;
}
.lightbox__close{
    position:absolute;
    top:24px;right:30px;
    width:42px;height:42px;
    color:#fff;
    font-size:30px;
    line-height:1;
    background:rgba(255,255,255,.12);
    border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    transition:background .2s var(--transition);
}
.lightbox__close:hover{background:rgba(255,255,255,.25)}

@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes zoomIn{from{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}

/* ============== 滚动入场动画 ============== */
[data-reveal]{
    opacity:0;
    transform:translateY(24px);
    transition:opacity .8s var(--transition),transform .8s var(--transition);
}
[data-reveal].is-visible{opacity:1;transform:translateY(0)}
[data-reveal="left"]{transform:translateX(-30px)}
[data-reveal="left"].is-visible{transform:translateX(0)}
[data-reveal="right"]{transform:translateX(30px)}
[data-reveal="right"].is-visible{transform:translateX(0)}

[data-anim]{
    opacity:0;
    transform:translateY(20px);
    transition:opacity .9s var(--transition),transform .9s var(--transition);
}
[data-anim].is-visible{opacity:1;transform:translateY(0)}

@media (prefers-reduced-motion:reduce){
    *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}
    [data-reveal],[data-anim]{opacity:1;transform:none}
}

/* ============== 页脚 ============== */
.footer{
    background:var(--color-primary);
    color:rgba(255,255,255,.78);
    padding:30px 0;
    text-align:center;
    font-size:13.5px;
    line-height:1.9;
}
.footer a{color:rgba(255,255,255,.9);border-bottom:1px dotted rgba(255,255,255,.4)}
.footer a:hover{color:#fff;border-bottom-color:#fff}
.footer__line + .footer__line{margin-top:6px}

/* ==================================================================
   响应式
   ================================================================== */

/* 平板 */
@media (max-width:1024px){
    .section{padding:64px 0}
    .section__title{font-size:26px}
    .banner__title{font-size:38px}
    .banner{height:500px}

    .about__grid{grid-template-columns:1fr;gap:48px}
    .about__media{max-width:560px;margin:0 auto}
    .about__badge{bottom:-18px;right:-8px;padding:14px 20px}
    .about__badge strong{font-size:26px}

    .feature-grid{grid-template-columns:repeat(2,1fr)}
    .case-grid{grid-template-columns:repeat(2,1fr)}
    .local__grid{grid-template-columns:1fr;gap:18px}
    .product-grid{grid-template-columns:repeat(3,1fr)}
    .contact-grid{grid-template-columns:repeat(2,1fr)}
}

/* 手机 */
@media (max-width:768px){
    body{font-size:14.5px}
    .container{padding:0 16px}
    .section{padding:48px 0}
    .section__head{margin-bottom:36px}
    .section__title{font-size:22px}
    .section__desc{font-size:14px}

    /* 顶部条 */
    .topbar{display:none}

    /* 头部 */
    .header__inner{height:62px;gap:12px}
    .header__phone{display:none}
    .hamburger{display:flex}

    /* LOGO 同字号缩小 */
    .logo__brand,.logo__tagline,.logo__divider{font-size:17px}
    .logo__divider{margin:0 8px}

    /* 导航变抽屉 */
    .nav{
        position:fixed;
        top:62px;left:0;right:0;
        background:#fff;
        flex-direction:column;
        padding:16px;
        box-shadow:var(--shadow-md);
        max-height:0;
        overflow:hidden;
        transition:max-height .35s var(--transition);
        z-index:79;
    }
    .nav.is-open{max-height:80vh;overflow-y:auto}
    .nav__list{flex-direction:column;gap:0;width:100%}
    .nav__link{
        display:block;
        padding:14px 12px;
        border-bottom:1px solid var(--color-border);
        border-radius:0;
    }
    .nav__link--active::after{display:none}
    .nav__link--active{background:var(--color-bg-soft)}

    /* Banner */
    .banner{height:auto;min-height:480px;padding:80px 0 60px}
    .banner__title{font-size:30px}
    .banner__desc{font-size:14.5px;margin-bottom:24px}
    .banner__cta{flex-direction:column;align-items:stretch}
    .banner__cta .btn{justify-content:center}
    .banner__points{padding-top:18px;gap:8px}
    .banner__points li{flex:1 1 45%;font-size:13px}
    .banner__dots{bottom:14px}

    /* 公司介绍 */
    .about__features{grid-template-columns:1fr;gap:6px}
    .about__media{margin:0 12px}

    /* 服务特色 */
    .feature-grid{grid-template-columns:1fr;gap:14px}
    .feature-card{padding:24px 20px}

    /* 产品 */
    .product-tabs{gap:8px;overflow-x:auto;flex-wrap:nowrap;justify-content:flex-start;padding-bottom:6px;-webkit-overflow-scrolling:touch}
    .product-tab{flex-shrink:0;padding:8px 16px;font-size:13.5px}
    .product-grid{grid-template-columns:repeat(2,1fr);gap:12px}
    .product-card__name{font-size:13.5px;min-height:38px}
    .product-card__desc{font-size:12px}
    .product-pane__title{font-size:20px}

    /* 案例 */
    .case-grid{grid-template-columns:1fr;gap:16px}
    .case-card__body{padding:18px 20px}

    /* 区域 */
    .local__block{padding:24px 20px}
    .local__block h3{font-size:18px}

    /* FAQ */
    .faq-item__q{padding:16px 50px 16px 18px;font-size:14.5px}
    .faq-item__q::before{width:24px;height:24px;font-size:12px;margin-right:8px}
    .faq-item__a{padding:0 18px 18px 52px;font-size:14px}
    .faq-item__a::before{width:24px;height:24px;font-size:12px}

    /* 联系 */
    .contact-grid{grid-template-columns:1fr;gap:14px}
    .contact-card{padding:24px 20px}
    .contact-card__main{font-size:18px}

    /* 悬浮按钮 */
    .floating{right:12px;bottom:60px;gap:8px}
    .floating__btn{width:46px;height:46px;font-size:10px}
    .floating__btn span:first-child{font-size:16px}
    .floating__btn-text{display:none}

    /* 友情链接 */
    .links{padding:48px 0}
    .links__list{gap:8px}
    .links__list li a{padding:7px 14px;font-size:13px}

    /* 页脚 */
    .footer{padding:22px 0;font-size:12.5px}
}

@media (max-width:380px){
    .logo__brand,.logo__tagline,.logo__divider{font-size:15px}
    .product-grid{grid-template-columns:1fr}
    .banner__title{font-size:26px}
}

/* 打印 */
@media print{
    .header,.banner__dots,.floating,.lightbox,.topbar,.hamburger{display:none !important}
    .section{padding:20px 0;page-break-inside:avoid}
    body{color:#000;background:#fff}
    a{color:#000;text-decoration:underline}
}
