/*!
 * yunjianxin 域名展示页样式
 * 字体说明:仅使用系统自带中文字体(微软雅黑/苹方/黑体/宋体),不嵌入或外链任何商用字体文件
 */

:root{
    --font-cn: "Microsoft YaHei","微软雅黑","PingFang SC","苹方","Hiragino Sans GB",
               "Source Han Sans CN","Noto Sans CJK SC","黑体",SimHei,"宋体",SimSun,sans-serif;
    --bg:#071016;
    --card:rgba(255,255,255,.035);
    --card-hover:rgba(255,255,255,.06);
    --border:rgba(120,200,220,.14);
    --border-strong:rgba(80,200,220,.35);
    --text:#e6f0f4;
    --muted:#93a9b4;
    --cyan:#2dd4bf;
    --blue:#3b82f6;
    --violet:#0ea5e9;
    --grad:linear-gradient(120deg,#2dd4bf 0%,#3b82f6 55%,#0ea5e9 100%);
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
    font-family:var(--font-cn);
    background:var(--bg);
    color:var(--text);
    line-height:1.7;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
}

/* 背景装饰 */
body::before{
    content:"";
    position:fixed;
    inset:0;
    z-index:0;
    pointer-events:none;
    background:
        radial-gradient(900px 600px at 80% -10%, rgba(59,130,246,.20), transparent 60%),
        radial-gradient(700px 500px at 10% 20%, rgba(45,212,191,.13), transparent 55%),
        radial-gradient(800px 600px at 50% 110%, rgba(14,165,233,.15), transparent 60%);
}
body::after{
    content:"";
    position:fixed;
    inset:0;
    z-index:0;
    pointer-events:none;
    opacity:.5;
    background-image:
        linear-gradient(rgba(120,200,220,.05) 1px, transparent 1px),
        linear-gradient(90deg, rgba(120,200,220,.05) 1px, transparent 1px);
    background-size:46px 46px;
    -webkit-mask-image:radial-gradient(circle at 50% 30%, #000 0%, transparent 80%);
    mask-image:radial-gradient(circle at 50% 30%, #000 0%, transparent 80%);
}

.wrap{position:relative;z-index:2;max-width:1160px;margin:0 auto;padding:0 24px}
section,header,footer{position:relative;z-index:2}
/* 吸顶导航高 66px：锚点跳转留出余量，避免目标区块标题贴住/被压住 */
section[id]{scroll-margin-top:82px}

/* 键盘可见焦点统一（表单输入类另有更醒目的焦点光环，见 .inq-field） */
a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible,
input:focus-visible,textarea:focus-visible{
    outline:2px solid var(--cyan);outline-offset:2px;
}

/* 导航 */
header{
    position:sticky;
    top:0;
    z-index:50;
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    background:rgba(7,16,22,.72);
    border-bottom:1px solid var(--border);
}
.nav{display:flex;align-items:center;justify-content:space-between;height:66px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text)}
.logo .dot{
    width:34px;height:34px;border-radius:9px;background:var(--grad);
    display:grid;place-items:center;font-size:13px;color:#04141a;font-weight:900;
    box-shadow:0 0 18px rgba(45,212,191,.45);
}
.logo-text{display:flex;flex-direction:column;line-height:1.25}
.logo-text b{font-size:17px;font-weight:800;letter-spacing:.5px}
.logo-text b i{font-style:normal;font-weight:600;color:var(--muted)}
.logo-text em{font-style:normal;font-size:12px;color:var(--muted)}
.nav-links{display:flex;gap:26px}
.nav-links a{color:var(--muted);text-decoration:none;font-size:14px;transition:.2s}
.nav-links a:hover{color:var(--text)}
.nav-links a.active{color:var(--cyan);font-weight:700}
.nav-cta{
    padding:9px 18px;border-radius:999px;background:var(--grad);color:#04141a;
    font-weight:700;font-size:14px;text-decoration:none;
    box-shadow:0 6px 20px rgba(59,130,246,.32);
}
.nav-cta-m{display:none}

/* 汉堡按钮(仅手机端显示) */
.nav-toggle{
    display:none;
    width:42px;height:42px;padding:0;
    border:1px solid var(--border);border-radius:11px;
    background:var(--card);cursor:pointer;
    flex-direction:column;align-items:center;justify-content:center;gap:5px;
}
.nav-toggle span{
    display:block;width:18px;height:2px;border-radius:2px;
    background:var(--text);transition:.25s;
}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

@media(max-width:760px){
    .nav-toggle{display:flex}
    .nav-cta{display:none}
    .logo-text em{display:none}
    .nav-links{
        display:flex;flex-direction:column;gap:0;
        position:absolute;top:calc(100% + 1px);left:-24px;right:-24px;
        padding:4px 24px 16px;
        background:rgba(7,16,22,.97);
        backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
        border-bottom:1px solid var(--border);
        max-height:0;overflow:hidden;opacity:0;pointer-events:none;
        transition:max-height .3s ease,opacity .25s ease;
    }
    .nav-links.open{max-height:480px;opacity:1;pointer-events:auto}
    .nav-links a{
        padding:14px 0;font-size:16px;
        border-bottom:1px solid rgba(120,200,220,.08);
    }
    .nav-links a:last-of-type{border-bottom:0}
    .nav-cta-m{
        display:block;margin-top:16px;text-align:center;
        padding:13px 18px;border-radius:999px;background:var(--grad);
        color:#04141a;font-weight:700;font-size:15px;text-decoration:none;
        box-shadow:0 6px 20px rgba(59,130,246,.32);
    }
}

/* Hero */
.hero{padding:88px 0 70px;text-align:center}
.eyebrow{
    display:inline-flex;align-items:center;gap:8px;
    padding:7px 16px;border-radius:999px;border:1px solid var(--border-strong);
    background:var(--card);color:var(--cyan);font-size:13px;letter-spacing:2px;
    margin-bottom:26px;
}
.eyebrow i{width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 10px var(--cyan)}
.hero-tags{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:26px}
.hero-tags .eyebrow{margin-bottom:0}
.sale-tag{
    display:inline-flex;align-items:center;gap:8px;
    padding:7px 16px;border-radius:999px;
    background:rgba(45,212,191,.14);border:1px solid rgba(45,212,191,.5);
    color:var(--cyan);font-size:13px;font-weight:700;letter-spacing:1px;
}
.sale-tag i{width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 10px var(--cyan);animation:pulse 1.8s infinite}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.85)}}
@media (prefers-reduced-motion: reduce){.sale-tag i{animation:none}}
.domain{
    font-size:clamp(38px,8vw,96px);
    font-weight:900;letter-spacing:-1px;line-height:1.05;
    background:var(--grad);
    -webkit-background-clip:text;background-clip:text;color:transparent;
    margin-bottom:8px;word-break:break-all;
    filter:drop-shadow(0 8px 30px rgba(45,212,191,.22));
}
.domain .tld{font-size:.45em;font-weight:800;vertical-align:super;opacity:.9}
.slogan{font-size:clamp(18px,3vw,26px);font-weight:700;margin:18px 0 6px}
.slogan-cn{color:var(--muted);font-size:clamp(14px,2.2vw,17px);margin-bottom:22px}

/* 口语报读 */
.spell{
    display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center;
    padding:8px 18px;border-radius:999px;
    border:1px dashed var(--border-strong);background:rgba(45,212,191,.06);
    margin-bottom:30px;font-size:14px;
}
.spell-tag{color:var(--cyan);font-weight:700;letter-spacing:1px}
.spell-text{color:var(--text);letter-spacing:2px;font-weight:700;font-family:Consolas,Monaco,"Courier New",monospace}

.hero-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.btn{
    padding:14px 30px;border-radius:12px;font-weight:700;font-size:15px;
    text-decoration:none;transition:.25s;cursor:pointer;border:0;display:inline-block;
}
.btn-primary{background:var(--grad);color:#04141a;box-shadow:0 10px 28px rgba(59,130,246,.36)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(45,212,191,.5)}
.btn-ghost{border:1px solid var(--border-strong);color:var(--text);background:var(--card)}
.btn-ghost:hover{background:var(--card-hover);border-color:var(--cyan)}

/* 数据条 */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:64px}
.stat{
    background:var(--card);border:1px solid var(--border);border-radius:16px;
    padding:26px 18px;text-align:center;
    backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
}
.stat dt{
    display:block;font-size:32px;font-weight:900;line-height:1.2;
    background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.stat dd{margin:0;color:var(--muted);font-size:13.5px}
@media(max-width:760px){.stats{grid-template-columns:repeat(2,1fr)}}

/* 区块通用 */
section{padding:72px 0}
.sec-head{text-align:center;max-width:760px;margin:0 auto 48px}
.sec-tag{color:var(--cyan);font-size:13px;letter-spacing:3px;font-weight:700;text-transform:uppercase}
.sec-title{font-size:clamp(26px,4vw,38px);font-weight:900;margin:12px 0 14px}
.sec-sub{color:var(--muted);font-size:16px}

/* 域名释义（三字成义） */
.meaning{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.meaning-card{
    background:var(--card);border:1px solid var(--border);border-radius:18px;
    padding:38px 28px 32px;position:relative;overflow:hidden;text-align:center;
}
.meaning-card::before{
    content:"";position:absolute;top:-40px;right:-40px;width:130px;height:130px;
    border-radius:50%;background:var(--grad);opacity:.16;filter:blur(20px);
}
.meaning-card .big{
    position:relative;
    width:92px;height:92px;margin:0 auto 20px;border-radius:24px;
    display:grid;place-items:center;
    font-size:46px;font-weight:900;line-height:1;
    color:var(--cyan);
    background:rgba(45,212,191,.10);
    border:1px solid var(--border-strong);
}
.meaning-card h3{font-size:22px;font-weight:800;margin-bottom:6px}
.meaning-card .en{color:var(--cyan);font-weight:700;letter-spacing:1px;font-size:13px;margin-bottom:14px}
.meaning-card p{color:var(--muted);font-size:15px;text-align:left}
@media(max-width:900px){.meaning{grid-template-columns:1fr}}

/* 适配业务矩阵 */
.products{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.pcard{
    background:var(--card);border:1px solid var(--border);border-radius:18px;
    padding:28px 22px;transition:.25s;
}
.pcard:hover{transform:translateY(-6px);border-color:var(--border-strong);background:var(--card-hover)}
.pcard .ico{
    width:48px;height:48px;border-radius:12px;display:grid;place-items:center;
    background:rgba(45,212,191,.12);border:1px solid var(--border-strong);margin-bottom:18px;
}
.pcard .ico svg{width:24px;height:24px;stroke:var(--cyan);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.pcard h3{font-size:18px;font-weight:800;margin-bottom:8px}
.pcard p{color:var(--muted);font-size:14px}
.pcard .tag{
    display:inline-block;margin-top:14px;font-size:12px;color:var(--cyan);
    border:1px solid var(--border-strong);border-radius:999px;padding:3px 11px;
}
@media(max-width:980px){.products{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.products{grid-template-columns:1fr}}

/* 分行业 Slogan（适用行业）：一行一个横向长条卡 */
.industries{display:grid;gap:16px}
.icard{
    background:var(--card);border:1px solid var(--border);border-radius:18px;
    padding:24px 28px;transition:.25s;
    display:grid;grid-template-columns:48px 1fr;column-gap:22px;align-items:start;
}
.icard:hover{transform:translateY(-4px);border-color:var(--border-strong);background:var(--card-hover)}
.icard .ico{
    width:48px;height:48px;border-radius:12px;display:grid;place-items:center;
    background:rgba(45,212,191,.12);border:1px solid var(--border-strong);
    grid-column:1;grid-row:1 / span 4;
}
.icard .ico svg{width:24px;height:24px;stroke:var(--cyan);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.icard .icat{grid-column:2;color:var(--muted);font-size:12px;font-weight:700;letter-spacing:1px;margin-bottom:6px}
.icard h3{grid-column:2;font-size:19px;font-weight:800;margin-bottom:6px;line-height:1.4}
.icard .isub{grid-column:2;color:var(--cyan);font-size:14px;font-style:italic;margin-bottom:10px}
.icard .idesc{grid-column:2;color:var(--muted);font-size:13.5px;line-height:1.7}
@media(max-width:560px){
    .icard{grid-template-columns:40px 1fr;column-gap:16px;padding:20px 18px}
    .icard .ico{width:40px;height:40px;border-radius:10px}
}

/* 核心优势 */
.why{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.why-item{
    display:flex;gap:16px;background:var(--card);border:1px solid var(--border);
    border-radius:16px;padding:24px 22px;
}
.why-item .num{
    flex:0 0 auto;width:42px;height:42px;border-radius:11px;background:var(--grad);
    color:#04141a;font-weight:900;display:grid;place-items:center;font-size:17px;
}
.why-item h3{font-size:17px;font-weight:800;margin-bottom:6px}
.why-item p{color:var(--muted);font-size:14.5px}
@media(max-width:760px){.why{grid-template-columns:1fr}}

/* 域名档案（可核查硬指标） */
.specs{
    display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0 44px;border-top:1px solid var(--border);
}
.spec-row{
    display:grid;grid-template-columns:118px minmax(0,1fr);gap:16px;align-items:baseline;
    padding:15px 0;border-bottom:1px solid var(--border);
}
.spec-row dt{color:var(--muted);font-size:13.5px;font-weight:600;letter-spacing:.5px}
.spec-row dd{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;min-width:0}
.spec-row dd b{font-size:16px;font-weight:700;color:var(--text);letter-spacing:.2px}
.spec-row dd span{color:var(--muted);font-size:12.5px;line-height:1.6}
@media(max-width:900px){.specs{grid-template-columns:1fr;gap:0}}
@media(max-width:560px){
    .spec-row{grid-template-columns:92px minmax(0,1fr);gap:12px;padding:13px 0}
    .spec-row dd b{font-size:15px}
}

/* FAQ（可折叠面板） */
.faq-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
.faq-count{color:var(--muted);font-size:13.5px;letter-spacing:.5px}
.faq-toggle{
    appearance:none;-webkit-appearance:none;background:transparent;cursor:pointer;
    font-family:inherit;font-size:13.5px;font-weight:600;letter-spacing:.5px;line-height:1;
    color:var(--cyan);border:1px solid var(--border-strong);border-radius:999px;
    padding:9px 16px;transition:.25s;
}
.faq-toggle:hover{background:rgba(45,212,191,.10);border-color:var(--cyan)}
.faq-toggle:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}

.faq{counter-reset:faq;display:grid;gap:14px}
.faq-item{
    counter-increment:faq;overflow:hidden;
    border:1px solid var(--border);border-radius:16px;
    background:var(--card);transition:.25s;
}
.faq-item:hover{border-color:var(--border-strong);background:var(--card-hover)}
.faq-item[open]{border-color:var(--border-strong);background:var(--card-hover)}

/* 问题行（summary）：序号 | 问题 | 指示器 */
.faq-q{
    list-style:none;cursor:pointer;
    display:grid;grid-template-columns:34px 1fr 26px;align-items:start;
    column-gap:16px;padding:20px 24px;
}
.faq-q::-webkit-details-marker{display:none}
.faq-q::marker{content:""}
.faq-q:focus-visible{outline:2px solid var(--cyan);outline-offset:-2px}

.faq-num{
    font-size:13px;font-weight:800;letter-spacing:1px;line-height:1.95;
    font-variant-numeric:tabular-nums;
    color:transparent;background:var(--grad);
    -webkit-background-clip:text;background-clip:text;
}
.faq-num::before{content:counter(faq,decimal-leading-zero)}
.faq-qt{font-size:17.5px;font-weight:700;color:var(--text);line-height:1.55}

/* 展开/收起指示器：+ → − */
.faq-icon{
    position:relative;width:26px;height:26px;border-radius:50%;
    border:1px solid var(--border-strong);background:rgba(45,212,191,.08);
    margin-top:1px;transition:.3s;
}
.faq-icon::before,.faq-icon::after{
    content:"";position:absolute;left:50%;top:50%;width:11px;height:2px;border-radius:2px;
    background:var(--cyan);transform:translate(-50%,-50%);transition:.3s;
}
.faq-icon::after{transform:translate(-50%,-50%) rotate(90deg)}
.faq-item[open] .faq-icon{background:var(--cyan);border-color:var(--cyan);transform:rotate(180deg)}
.faq-item[open] .faq-icon::before,.faq-item[open] .faq-icon::after{background:#04141a}
.faq-item[open] .faq-icon::after{transform:translate(-50%,-50%) rotate(0deg)}

/* 答案：左内边距与问题文字对齐（24 + 34 + 16 = 74） */
.faq-a{
    color:var(--muted);font-size:15px;line-height:1.85;
    padding:0 24px 22px 74px;
    animation:faqIn .3s cubic-bezier(.2,.7,.2,1);
}
@keyframes faqIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}

@media(max-width:640px){
    .faq-bar{margin-bottom:12px}
    .faq{gap:11px}
    .faq-q{grid-template-columns:28px 1fr 24px;column-gap:10px;padding:16px}
    .faq-num{font-size:12px;line-height:2.1}
    .faq-qt{font-size:16px}
    .faq-icon{width:24px;height:24px}
    .faq-icon::before,.faq-icon::after{width:10px}
    .faq-a{padding:0 16px 16px 54px;font-size:14.5px}
}

/* 询价区：左侧文案 + 右侧询价表单 */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
.cta{
    text-align:left;border:1px solid var(--border-strong);border-radius:24px;
    padding:44px 34px;
    background:radial-gradient(600px 300px at 15% 0%, rgba(45,212,191,.16), transparent 70%), var(--card);
    overflow:hidden;
}
.cta h2{font-size:clamp(23px,2.6vw,31px);font-weight:900;margin-bottom:12px;line-height:1.35}
.cta p{color:var(--muted);margin-bottom:20px;font-size:15px;line-height:1.8}
.cta-list{list-style:none;display:grid;gap:10px;margin-bottom:26px}
.cta-list li{position:relative;padding-left:20px;color:var(--text);font-size:14.5px;line-height:1.6}
.cta-list li::before{
    content:"";position:absolute;left:0;top:7px;width:7px;height:7px;border-radius:50%;
    background:var(--grad);
}
.cta .hero-btns{justify-content:flex-start;flex-wrap:wrap}
.cta .qr-box{margin-top:30px}

/* 在线询价表单 */
.inq{border:1px solid var(--border);border-radius:24px;padding:34px 30px;background:var(--card)}
.inq-head{margin-bottom:20px}
.inq-head h3{font-size:20px;font-weight:800;margin-bottom:8px}
.inq-head p{color:var(--muted);font-size:13.5px;line-height:1.7}
.inq-field{display:flex;flex-direction:column;gap:7px;margin-bottom:14px}
.inq-field label{color:var(--muted);font-size:13px;font-weight:600;letter-spacing:.3px}
.inq-field label i{color:var(--cyan);font-style:normal}
.inq-field input,.inq-field select,.inq-field textarea{
    width:100%;font-family:inherit;font-size:14.5px;line-height:1.5;color:var(--text);
    background:rgba(255,255,255,.03);border:1px solid var(--border-strong);
    border-radius:11px;padding:11px 13px;transition:.2s;
}
.inq-field textarea{resize:vertical;min-height:78px;line-height:1.7}
.inq-field select{
    appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:34px;
    background-image:linear-gradient(45deg,transparent 50%,#93a9b4 50%),linear-gradient(135deg,#93a9b4 50%,transparent 50%);
    background-position:calc(100% - 17px) 50%,calc(100% - 12px) 50%;
    background-size:5px 5px,5px 5px;background-repeat:no-repeat;
}
.inq-field option{background:#0d1a21;color:#e6f0f4}
.inq-field input::placeholder,.inq-field textarea::placeholder{color:rgba(147,169,180,.62)}
/* 表单焦点：用 3px 主题色光环替代 outline，键盘/鼠标聚焦均清晰可见 */
.inq-field input:focus,.inq-field select:focus,.inq-field textarea:focus{
    outline:none;border-color:var(--cyan);background:rgba(45,212,191,.06);
    box-shadow:0 0 0 3px rgba(45,212,191,.2);
}
.inq-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}
/* 询价验证码：只负责把系统「验证码」应用直出的 输入框 + 图片 排成一行，
   不附加任何自定义控件（刷新按钮/遮罩等一律不加），行为与外观完全来自验证码应用本身 */
.inq-cap{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}
.inq-cap input{width:100%;min-width:0}
.inq-cap img{display:block;height:auto;max-width:120px;border-radius:6px;cursor:pointer;transition:filter .15s,box-shadow .15s}
.inq-cap img:hover{filter:brightness(1.05);box-shadow:0 0 0 2px rgba(45,212,191,.35)}
.inq-cap img:focus-visible{outline:none;box-shadow:0 0 0 2px rgba(45,212,191,.6)}
.inq-submit{width:100%;justify-content:center;margin-top:4px}
.inq-submit[disabled]{opacity:.6;cursor:not-allowed}
.inq-tip{margin-top:12px;font-size:13px;line-height:1.6}
.inq-tip.ok{color:var(--cyan)}
.inq-tip.err{color:#ff9a9a}

@media(max-width:900px){
    .contact-grid{grid-template-columns:1fr}
    .cta{padding:36px 26px}
    .inq{padding:28px 22px}
}
/* iOS Safari：输入框字号 < 16px 时聚焦会自动放大页面，手机上提到 16px 避免抖动 */
@media(max-width:640px){
    .inq-field input,.inq-field select,.inq-field textarea{font-size:16px}
}

/* 移动端吸底 CTA（仅窄屏显示） */
.sticky-cta{display:none}
@media(max-width:640px){
    .sticky-cta{
        display:flex;align-items:center;justify-content:center;
        position:fixed;left:14px;right:14px;bottom:14px;z-index:60;
        height:48px;border-radius:14px;
        font-size:15px;font-weight:700;letter-spacing:.5px;text-decoration:none;
        color:#04141a;background:var(--grad);
        box-shadow:0 10px 26px rgba(0,0,0,.5);
        transition:opacity .25s,transform .25s;
    }
    .sticky-cta.hide{opacity:0;transform:translateY(120%);pointer-events:none}
}

/* 页脚 */
footer{border-top:1px solid var(--border);padding:34px 0;color:var(--muted);font-size:13.5px;text-align:center}
footer .copy{margin-top:6px;opacity:.75}
/* 吸底胶囊高 48px + 底距 14px → 页脚需补足内边距，否则会被遮住最后两行。
   注意：必须写在通用 footer 规则之后，否则 padding 简写会覆盖掉这里的 padding-bottom。 */
@media(max-width:640px){footer{padding-bottom:88px}}

/* 入场动画：渐进增强——无 JS 时内容默认可见，仅 JS 启用(html.js)时先隐藏再动画 */
.reveal{opacity:1;transform:none}
html.js .reveal{opacity:0;transform:translateY(24px);transition:.7s cubic-bezier(.2,.7,.2,1)}
html.js .reveal.show{opacity:1;transform:none}

/* 降低动效偏好 */
@media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto}
    html.js .reveal{opacity:1;transform:none;transition:none}
    *{animation-duration:.01ms !important;transition-duration:.01ms !important}
}

/* 联系二维码 */
.qr-box{margin-top:34px;display:inline-flex;flex-direction:column;align-items:center;gap:10px}
.qr-box .qr{
    width:160px;height:160px;object-fit:cover;border-radius:14px;
    background:#fff;padding:8px;border:1px solid var(--border-strong);
}
.qr-box .qr-tip{color:var(--muted);font-size:13px}
