/* 丑小鸦官网 · 共享样式表
   色板/字体/间距 token 承自设计稿，未改动；移动端断点(<=640px)在设计稿"移动首屏"基础上
   延伸补齐"完整页面"响应式（设计稿只给了首屏截取，完整滚动区域的移动规则为本次建站新增）。 */

:root{
  --frame:#FAF8F4; --panel:#F1EDE4; --panel-2:#ECE7DD;
  --ink:#241F17; --ink-2:#6E6759; --ink-3:#A79F8F;
  --brand:#E8955A; --brand-strong:#B8632B; --ok:#2E9E5B;
  --line:rgba(36,31,23,.08); --line-strong:rgba(36,31,23,.14);
  --card:rgba(255,255,255,.68);
  --serif:"Noto Serif SC","Songti SC","STSong",serif;
  --sans:"Noto Sans SC",-apple-system,"PingFang SC","Helvetica Neue",Arial,sans-serif;
  --mono:"SF Mono","JetBrains Mono",ui-monospace,Menlo,monospace;
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{background:var(--frame);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased;}
.container{max-width:1160px;margin:0 auto;padding:0 48px;}
a{color:inherit;text-decoration:none;}
img,svg{max-width:100%;}

/* ---- 导航 ---- */
.topnav{display:flex;align-items:center;justify-content:space-between;padding:26px 0;border-bottom:1px solid var(--line);position:relative;}
.topnav.center{justify-content:center;}
.brand{display:flex;align-items:center;gap:10px;transition:opacity .2s ease;}
.brand:hover,.brand:focus-visible{opacity:.72;}
.brand:focus-visible{outline:2px solid var(--brand);outline-offset:4px;border-radius:6px;}
.brand svg{width:26px;height:26px;display:block;}
.brand-name{font-size:16px;font-weight:600;letter-spacing:.01em;}
.brand-name .en{font-family:var(--mono);font-weight:500;font-size:11.5px;color:var(--ink-3);margin-left:7px;letter-spacing:.02em;}
.navlinks{display:flex;align-items:center;gap:36px;list-style:none;font-size:14px;color:var(--ink-2);margin:0;padding:0;}
.navlinks a.active{color:var(--ink);position:relative;}
.navlinks a.active::after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:2px;background:var(--brand);}
.nav-right{display:flex;align-items:center;gap:28px;}

/* 移动端汉堡菜单：纯 CSS checkbox hack，零 JS */
.nav-toggle{display:none;}
.hamburger{display:none;flex-direction:column;gap:4px;width:20px;cursor:pointer;}
.hamburger span{height:1.5px;background:var(--ink);display:block;}
.mobile-menu{display:none;}

/* ---- 按钮 ---- */
.btn{display:inline-flex;align-items:center;gap:8px;font-size:14.5px;padding:12px 26px;border-radius:10px;transition:.2s;border:none;cursor:pointer;font-family:var(--sans);}
.btn-primary{background:var(--ink);color:var(--frame);}
.btn-primary:hover{background:#3a3225;}
.btn-primary:active{background:var(--ink);opacity:.85;}
.btn-ghost{border:1px solid var(--line-strong);color:var(--ink);background:transparent;}
.btn-ghost:hover{border-color:var(--ink);}
.btn-ghost:active{background:var(--line);}
.btn-sm{padding:9px 18px;font-size:13px;border-radius:8px;}
.btn-disabled{opacity:.5;cursor:not-allowed;}
.btn-disabled:hover{background:inherit;border-color:inherit;}

/* ---- Hero：首页（双栏，含鸦签名） ---- */
.hero-split{padding:52px 0 36px;display:flex;align-items:center;justify-content:space-between;gap:56px;}
.hero-split .hero-text{flex:1;min-width:0;}
.hero-raven{flex-shrink:0;display:flex;align-items:center;justify-content:center;}
.hero-raven svg{width:288px;height:288px;display:block;}

/* ---- Hero：首屏动画（stage2 矢量关键帧，11 层硬切 + 头部/身体 transform 微动；
   末帧与 raven_svg() 字节级一致，图形数据源=hero_v6_anim.html stage2 定稿） ---- */
.hero-raven .raven-stage{position:relative;width:288px;height:288px;cursor:pointer;}
.hero-raven .raven-stage svg.rv-frame{position:absolute;inset:0;width:100%;height:100%;display:block;
  opacity:0;animation-duration:5200ms;animation-timing-function:linear;
  animation-iteration-count:1;animation-fill-mode:both;}
#pkHead{animation:pkMotion 5200ms linear 1;animation-fill-mode:both;}
#bodyDip{animation:bdMotion 5200ms linear 1;animation-fill-mode:both;}
@keyframes rvL1{0.0000%{opacity:1;} 5.7692%{opacity:1;} 5.7992%{opacity:0;} 100.0000%{opacity:0;}}
@keyframes rvL2{0.0000%{opacity:0;} 5.7392%{opacity:0;} 5.7692%{opacity:1;} 10.5769%{opacity:1;} 10.6069%{opacity:0;} 100.0000%{opacity:0;}}
@keyframes rvL3{0.0000%{opacity:0;} 10.5469%{opacity:0;} 10.5769%{opacity:1;} 14.4231%{opacity:1;} 14.4531%{opacity:0;} 100.0000%{opacity:0;}}
@keyframes rvL4{0.0000%{opacity:0;} 14.3931%{opacity:0;} 14.4231%{opacity:1;} 17.3077%{opacity:1;} 17.3377%{opacity:0;} 100.0000%{opacity:0;}}
@keyframes rvL5{0.0000%{opacity:0;} 17.2777%{opacity:0;} 17.3077%{opacity:1;} 19.6154%{opacity:1;} 19.6454%{opacity:0;} 100.0000%{opacity:0;}}
@keyframes rvL6{0.0000%{opacity:0;} 19.5854%{opacity:0;} 19.6154%{opacity:1;} 22.3077%{opacity:1;} 22.3377%{opacity:0;} 100.0000%{opacity:0;}}
@keyframes rvL7{0.0000%{opacity:0;} 22.2777%{opacity:0;} 22.3077%{opacity:1;} 45.0000%{opacity:1;} 45.0300%{opacity:0;} 100.0000%{opacity:0;}}
@keyframes rvL8a{0.0000%{opacity:0;} 44.9700%{opacity:0;} 45.0000%{opacity:1;} 47.8846%{opacity:1;} 47.9146%{opacity:0;} 100.0000%{opacity:0;}}
@keyframes rvL8b{0.0000%{opacity:0;} 47.8546%{opacity:0;} 47.8846%{opacity:1;} 50.3846%{opacity:1;} 50.4146%{opacity:0;} 100.0000%{opacity:0;}}
@keyframes rvL9a{0.0000%{opacity:0;} 50.3546%{opacity:0;} 50.3846%{opacity:1;} 53.2692%{opacity:1;} 53.2992%{opacity:0;} 100.0000%{opacity:0;}}
@keyframes rvL9b{0.0000%{opacity:0;} 53.2392%{opacity:0;} 53.2692%{opacity:1;} 55.7692%{opacity:1;} 55.7992%{opacity:0;} 100.0000%{opacity:0;}}
@keyframes rvL10{0.0000%{opacity:0;} 55.7392%{opacity:0;} 55.7692%{opacity:1;} 59.6154%{opacity:1;} 61.9231%{opacity:0;} 100.0000%{opacity:0;}}
@keyframes rvL11{0.0000%{opacity:0;} 59.6154%{opacity:0;} 61.9231%{opacity:1;} 100.0000%{opacity:1;}}
@keyframes pkMotion{0%{transform:translate(0px,0px) rotate(0deg);transform-origin:256px 210px;} 25.7692%{transform:translate(0px,-8px) rotate(-6deg);transform-origin:256px 210px;} 27.7692%{transform:translate(0px,68px) rotate(30deg);transform-origin:256px 210px;} 28.3846%{transform:translate(0px,68px) rotate(30deg);transform-origin:256px 210px;} 29.2308%{transform:translate(0px,-5px) rotate(-4deg);transform-origin:256px 210px;} 30.7692%{transform:translate(0px,0px) rotate(0deg);transform-origin:256px 210px;} 34.2308%{transform:translate(0px,0px) rotate(0deg);transform-origin:256px 210px;} 35.7692%{transform:translate(0px,-8px) rotate(-6deg);transform-origin:256px 210px;} 37.7692%{transform:translate(0px,68px) rotate(30deg);transform-origin:256px 210px;} 38.3846%{transform:translate(0px,68px) rotate(30deg);transform-origin:256px 210px;} 39.2308%{transform:translate(0px,-5px) rotate(-4deg);transform-origin:256px 210px;} 40.7692%{transform:translate(0px,0px) rotate(0deg);transform-origin:256px 210px;} 100%{transform:translate(0px,0px) rotate(0deg);}}
@keyframes bdMotion{0%{transform:translate(0px,0px);} 25.7692%{transform:translate(0px,0px);} 27.7692%{transform:translate(0px,5px);} 28.3846%{transform:translate(0px,5px);} 30.7692%{transform:translate(0px,0px);} 35.7692%{transform:translate(0px,0px);} 37.7692%{transform:translate(0px,5px);} 38.3846%{transform:translate(0px,5px);} 40.7692%{transform:translate(0px,0px);} 100%{transform:translate(0px,0px);}}
@media (prefers-reduced-motion: reduce){
    .raven-stage svg.rv-frame{animation:none !important;opacity:0 !important;}
    .raven-stage svg.rv-frame[data-frame="L11"]{opacity:1 !important;}
    #pkHead{animation:none !important;transform:none !important;}
    #bodyDip{animation:none !important;transform:none !important;}
  }

/* ---- Hero：首屏动画 v3（Rive runtime 版"活的鸦签名"，取代上方 stage2；旧 stage2 CSS/关键帧
   保留不删——生成函数仍保留、只是不再被首页引用，供以后单帧复用/对照回退）。
   默认可见 = 静态 SVG 兜底（raven-fallback-svg，无 JS 时保持 opacity:1，不闪烁不消失）；有 JS
   时脚本会先把它拉到 0 再靠 transition 淡回 1（一次性入场，reduce-motion/Rive 加载失败都停在
   这一步 = "退化为淡入"）。桌面+移动端一致尝试加载 Rive（懒加载+失败兜底，见下方脚本），加载
   成功后 canvas 与 fallback 走 opacity 交叉淡化（raven-is-visible/raven-is-hidden），避免旧版
   display 硬切的跳切感；.raven-stage 288px/140px 两档断点见下方 hero-raven 相关规则。 ---- */
.raven-stage-rive{position:relative;}
#raven-canvas,#raven-fallback-svg{position:absolute;inset:0;width:100%;height:100%;display:block;transition:opacity .5s ease;}
#raven-fallback-svg.raven-is-hidden{opacity:0 !important;pointer-events:none;}
#raven-canvas{opacity:0;pointer-events:none;}
#raven-canvas.raven-is-visible{opacity:1;pointer-events:auto;}
@media (prefers-reduced-motion: reduce){
  #raven-canvas,#raven-fallback-svg{transition:opacity .5s ease !important;}
}
/* ---- hero v12（第十二轮·TG6969"起飞点要用左上角导航logo"）新增：飞行轨迹画布不再局限于
   288px 小盒子内，要覆盖"导航栏 logo → 落地小盒子"整块区域，所以脱出 .raven-stage 挂在它
   外面、以 position:absolute 贴文档流（不是 fixed，随页面滚动自然移动，见 hero_v12.js 头注）。
   只作用于新 id，不改动上面 #raven-canvas/#raven-fallback-svg 规则（其余页面 hero_raven_rive()
   仍在用，零影响）。 ---- */
#raven-flight-canvas{position:absolute;top:0;left:0;pointer-events:none;z-index:5;opacity:0;transition:opacity .4s ease;}
.kicker{font-family:var(--mono);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--brand-strong);margin-bottom:22px;display:flex;align-items:center;gap:8px;}
.kicker .dot{width:6px;height:6px;border-radius:50%;background:var(--brand);}
h1{font-family:var(--serif);font-size:48px;line-height:1.3;color:var(--ink);max-width:840px;font-weight:600;letter-spacing:.005em;margin:0;text-wrap:balance;}
.lead{font-size:17.5px;color:var(--ink-2);max-width:600px;margin-top:26px;line-height:1.75;}
.hero-cta{display:flex;gap:16px;margin-top:44px;flex-wrap:wrap;}

/* ---- Hero：内页（单栏） ---- */
.hero-plain{padding:76px 0 56px;}
.hero-plain h1{font-size:42px;line-height:1.32;max-width:780px;}
.hero-plain .lead{font-size:17px;max-width:620px;margin-top:24px;}
.hero-plain .hero-cta{margin-top:38px;}
.hero-plain.with-raven{display:flex;align-items:center;justify-content:space-between;gap:56px;}
.hero-plain.with-raven .hero-text{flex:1;min-width:0;}
.hero-plain.with-raven .hero-raven{flex-shrink:0;display:flex;align-items:center;justify-content:center;}
.hero-plain.with-raven .hero-raven svg{width:173px;height:173px;display:block;}
.br-mobile{display:none;}

/* ---- 通用 section ---- */
section{padding:60px 0;}
h2{font-family:var(--serif);font-size:29px;color:var(--ink);font-weight:600;margin:0;}
.section-head{margin-bottom:38px;}
.section-head .kicker{margin-bottom:14px;}
.section-lead{color:var(--ink-2);font-size:15px;max-width:560px;margin-top:12px;}
.card{background:var(--card);backdrop-filter:blur(16px) saturate(140%);border:1px solid var(--line);border-radius:20px;padding:40px;}

/* ---- 首页：两条产品线入口 ---- */
.lanes{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line-strong);}
.lane-card{padding:40px 44px;border-left:1px solid var(--line);}
.lane-card:first-child{border-left:none;padding-left:0;}
.lane-card:last-child{padding-right:0;}
.lane-card .kicker{margin-bottom:18px;}
.lane-card h3{font-family:var(--serif);font-size:25px;font-weight:600;margin:0 0 14px;}
.lane-card p{color:var(--ink-2);font-size:14.5px;line-height:1.75;margin:0;}
.lane-card .more{margin-top:26px;display:block;font-size:13.5px;color:var(--ink);border-top:1px solid var(--line-strong);padding-top:14px;}

/* ---- 首页：活案例数字面板（示意占位）---- */
.stat-panel{border:1px dashed var(--line-strong);padding:40px 44px;background:none;}
.stat-panel-tag{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-style:italic;margin-bottom:18px;}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin-top:8px;}
.stat{border-left:1px solid var(--line-strong);padding-left:22px;}
.stat .tag{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:11px;color:var(--ok);margin-bottom:10px;}
.stat .tag .dot{width:5px;height:5px;border-radius:50%;background:var(--brand);}
.stat .num{font-family:var(--mono);font-size:32px;color:var(--ink);font-weight:600;}
.stat .num .ph{color:var(--ink-3);font-size:20px;font-style:italic;}
.stat .label{font-size:13px;color:var(--ink-3);margin-top:8px;font-style:italic;}
.stat-note{font-size:12px;color:var(--ink-3);margin-top:28px;font-style:italic;}

/* ---- 首页：洞察 ---- */
.insight-list{border-top:1px solid var(--line-strong);}
.insight-row{display:grid;grid-template-columns:120px 1fr 120px;gap:32px;align-items:baseline;padding:26px 0;border-bottom:1px solid var(--line);}
.insight-row .cat{font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:var(--brand-strong);text-transform:uppercase;}
.insight-row .body h4{font-size:17px;font-weight:600;margin:0 0 8px;line-height:1.5;}
.insight-row .body p{font-size:13.5px;color:var(--ink-2);line-height:1.65;margin:0;}
.insight-row .meta{font-family:var(--mono);font-size:11.5px;color:var(--ink-3);text-align:right;}

/* ---- to C：放大哲学 三条原则 ---- */
.principles{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line-strong);}
.principle{padding:32px 36px 8px;border-left:1px solid var(--line);}
.principle:first-child{border-left:none;padding-left:0;}
.principle:last-child{padding-right:0;}
.principle .n{font-family:var(--mono);font-size:12px;color:var(--ink-3);}
.principle h4{font-family:var(--serif);font-size:19px;font-weight:600;margin:14px 0 10px;}
.principle p{font-size:13.5px;color:var(--ink-2);line-height:1.7;margin:0;}

/* ---- to C：专业信源 四卡（复用 .principles 结构，四列变体）---- */
.principles.four{grid-template-columns:repeat(4,1fr);}
.section-foot{font-size:12.5px;color:var(--ink-3);margin-top:28px;line-height:1.7;}
@media (max-width:1024px){
  .principles.four{grid-template-columns:1fr 1fr;}
  .principles.four .principle:nth-child(3){border-left:none;border-top:1px solid var(--line);padding-left:0;}
}

/* ---- to C：服务形态 ---- */
.form-panel{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line-strong);}
.form-card{padding:32px 40px 8px;border-left:1px solid var(--line);}
.form-card:first-child{border-left:none;padding-left:0;}
.form-card:last-child{padding-right:0;}
.form-card h3{font-family:var(--serif);font-size:22px;margin:0 0 12px;}
.form-card .tag{font-family:var(--mono);font-size:11px;color:var(--brand-strong);text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px;display:block;}
.form-card p{font-size:14px;color:var(--ink-2);line-height:1.75;margin:0;}
.form-card ul{list-style:none;margin:20px 0 0;padding:0;}
.form-card li{font-size:13.5px;color:var(--ink-2);padding:10px 0;border-top:1px solid var(--line);}
.form-card li:first-child{border-top:none;}

/* ---- to C：三档服务卡片样式（v01 曾用，v02 起改为单段说明，保留供以后复用）---- */
.pricing{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line-strong);}
.price-card{padding:32px 36px 8px;display:flex;flex-direction:column;border-left:1px solid var(--line);position:relative;}
.price-card:first-child{border-left:none;padding-left:0;}
.price-card:last-child{padding-right:0;}
.price-card.mid::before{content:"";position:absolute;top:-1px;left:36px;right:36px;height:2px;background:var(--brand);}
.price-card .tier{font-family:var(--mono);font-size:11px;color:var(--ink-3);text-transform:uppercase;letter-spacing:.1em;}
.price-card.mid .tier{color:var(--brand-strong);}
.price-card h4{font-family:var(--serif);font-size:20px;margin:14px 0 6px;}
.price-card .price-note{font-family:var(--mono);font-size:13px;color:var(--ink-3);font-style:italic;margin:14px 0 4px;}
.price-card ul{list-style:none;margin:20px 0;padding:0;flex:1;}
.price-card li{font-size:13px;color:var(--ink-2);padding:9px 0;border-top:1px solid var(--line);}
.price-card li:first-child{border-top:none;}

/* ---- to C：定价区整段撤掉后的单段说明（v02·全站不放价格） ---- */
.pricing-note-panel{border-top:1px solid var(--line-strong);padding-top:40px;max-width:640px;}
.pricing-note-panel p{font-size:16px;color:var(--ink-2);line-height:1.75;margin:0 0 28px;}

/* ---- to C：数据边界承诺 ---- */
.guarantee{background:var(--panel);border-radius:24px;padding:48px;}
.guarantee-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;}
.guarantee h3{font-family:var(--serif);font-size:23px;margin:0 0 14px;}
.guarantee p{font-size:14px;color:var(--ink-2);line-height:1.75;margin:0;}
.guarantee ul{list-style:none;margin:0;padding:0;}
.guarantee li{display:flex;gap:12px;font-size:14px;color:var(--ink-2);padding:12px 0;border-top:1px solid var(--line-strong);}
.guarantee li:first-child{border-top:none;}
.guarantee li .check{color:var(--brand-strong);font-family:var(--mono);flex-shrink:0;}

/* ---- to B：三件事一起做 ---- */
.services{display:flex;flex-direction:column;border-top:1px solid var(--line-strong);}
.service{display:grid;grid-template-columns:80px 1fr;gap:28px;align-items:start;padding:32px 0;border-bottom:1px solid var(--line);}
.service .n{font-family:var(--mono);font-size:26px;color:var(--ink-3);font-weight:600;}
.service h3{font-family:var(--serif);font-size:22px;font-weight:600;margin:0 0 10px;}
.service p{font-size:14px;color:var(--ink-2);line-height:1.75;max-width:640px;margin:0;}
.service .sub{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;}
.service .sub span{font-family:var(--mono);font-size:11.5px;color:var(--ink-2);border:1px solid var(--line-strong);padding:5px 12px;border-radius:999px;}

/* ---- to B：转型路径时间线 ---- */
.timeline-wrap{border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);padding:36px 0;}
.timeline{display:flex;position:relative;margin-top:8px;}
.tl-step{flex:1;padding:0 22px;position:relative;}
.tl-step .n{width:34px;height:34px;border-radius:50%;border:1px solid var(--line-strong);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:13px;color:var(--ink-2);background:var(--frame);position:relative;z-index:2;}
.tl-step::before{content:"";position:absolute;top:17px;left:0;right:0;height:1px;background:var(--line-strong);z-index:1;}
.tl-step:first-child::before{left:34px;}
.tl-step:last-child::before{right:calc(100% - 34px);}
.tl-step h5{font-size:15px;font-weight:600;margin:16px 0 8px;}
.tl-step p{font-size:12.5px;color:var(--ink-2);line-height:1.6;margin:0;}

/* ---- 关于：叙事 ---- */
section.narrative-section{padding-top:24px;}
.narrative{max-width:680px;}
.narrative p{font-size:16px;color:var(--ink-2);line-height:1.9;margin:0 0 22px;}
.narrative p:first-child{font-family:var(--serif);font-size:19px;color:var(--ink);line-height:1.7;}

/* ---- 关于：AI 运营核心 ---- */
.avatar-card{display:flex;gap:40px;align-items:center;border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);padding:40px 0;}
.avatar-raven{flex-shrink:0;display:flex;align-items:center;justify-content:center;}
.avatar-raven svg{width:176px;height:176px;display:block;}
.avatar-card h3{font-family:var(--serif);font-size:22px;margin:0 0 6px;}
.avatar-card .role{font-family:var(--mono);font-size:12px;color:var(--brand-strong);text-transform:uppercase;letter-spacing:.06em;margin-bottom:14px;}
.avatar-card p{font-size:14.5px;color:var(--ink-2);line-height:1.75;max-width:560px;margin:0;}
.pending-badge{display:block;margin-top:16px;font-family:var(--mono);font-size:11.5px;color:var(--ink-3);font-style:italic;letter-spacing:.02em;}

/* ---- 关于：团队构成 ---- */
.roles{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line-strong);margin-top:8px;}
.role{padding:24px 22px 20px;border-left:1px solid var(--line);}
.role:first-child{border-left:none;padding-left:0;}
.role .n{font-family:var(--mono);font-size:11px;color:var(--ink-3);}
.role h6{font-size:14px;font-weight:600;margin:10px 0 0;}
.role p{font-size:12px;color:var(--ink-2);margin:6px 0 0;line-height:1.55;}

/* ---- 登录门 ---- */
.login-wrap{max-width:420px;margin:0 auto;padding:72px 0 48px;text-align:center;}
.login-wrap .kicker{margin-bottom:16px;justify-content:center;}
.login-wrap h1{font-family:var(--serif);font-size:28px;font-weight:600;}
.login-wrap .sub{font-size:13.5px;color:var(--ink-2);margin-top:12px;}
.login-card{padding:40px 36px;text-align:left;margin-top:32px;}
.field{margin-bottom:18px;}
.field label{font-size:12.5px;color:var(--ink-2);display:block;margin-bottom:8px;}
.field input{width:100%;padding:11px 14px;border:1px solid var(--line-strong);border-radius:8px;font-size:14px;background:var(--frame);color:var(--ink);font-family:var(--sans);}
.login-btn{width:100%;margin-top:8px;justify-content:center;}
.login-foot{margin-top:20px;font-size:12.5px;color:var(--ink-3);text-align:center;}

/* ---- 下载页·登录门内联控件（模式切换/状态提示，复用登录门同一色板与圆角语汇）---- */
.dl-mode-toggle{display:inline-flex;border:1px solid var(--line-strong);border-radius:999px;padding:4px;gap:4px;margin-top:18px;}
.dl-mode-toggle button{border:none;background:transparent;padding:9px 22px;border-radius:999px;font-size:13.5px;font-family:var(--sans);color:var(--ink-2);cursor:pointer;}
.dl-mode-toggle button.active{background:var(--ink);color:var(--frame);}
.dl-mode-field{margin-top:14px;max-width:360px;}
.dl-status-msg{font-size:12.5px;color:var(--ink-3);margin-top:14px;line-height:1.6;}
.dl-status-msg.err{color:var(--brand-strong);}

.dl-title{max-width:1160px;margin:0 auto;padding:0 48px 28px;}
.dl-title .kicker{margin-bottom:12px;}
.dl-pointer{display:flex;justify-content:space-between;align-items:center;padding:26px 32px;margin-bottom:20px;flex-wrap:wrap;gap:16px;}
.dl-pointer .left{display:flex;align-items:center;gap:18px;}
.dl-pointer .v{font-family:var(--mono);font-size:22px;color:var(--ink);}
.dl-pointer .label{font-size:12px;color:var(--ink-3);}
.dl-pointer .tag{font-family:var(--mono);font-size:11px;color:var(--ink-3);border:1px solid var(--line-strong);padding:5px 12px;border-radius:999px;display:inline-flex;align-items:center;gap:6px;}
.dl-pointer .tag .dot{width:5px;height:5px;border-radius:50%;background:var(--ink-3);}
.coming-soon-note{font-size:13px;color:var(--ink-2);max-width:520px;line-height:1.75;}
.demo-note{font-size:12px;color:var(--ink-3);margin-top:20px;text-align:center;}

/* ---- 页脚：首页（四列）---- */
footer{border-top:1px solid var(--line);padding:56px 0 36px;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;}
.footer-brand p{color:var(--ink-2);font-size:13.5px;max-width:280px;margin-top:14px;line-height:1.7;}
.footer-col h5{font-size:13px;color:var(--ink-3);margin:0 0 16px;letter-spacing:.04em;font-weight:500;}
.footer-col a{display:block;font-size:13.5px;color:var(--ink-2);margin-bottom:11px;}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:48px;padding-top:24px;border-top:1px solid var(--line);font-size:12px;color:var(--ink-3);}
.footer-bottom a{color:var(--ink-3);}
.footer-bottom .left{display:flex;align-items:center;gap:12px;}
.footer-bottom .sep{color:var(--line-strong);}

/* ---- 页脚：内页（仅一行）---- */
footer.footer-simple{padding:44px 0 32px;font-size:12px;color:var(--ink-3);}
footer.footer-simple .container{display:flex;justify-content:space-between;align-items:center;}

/* ---- 文章页 ---- */
.insight-row-link{display:block;color:inherit;text-decoration:none;}
.insight-row-link:hover .body h4{color:var(--brand-strong);}
.insights-index{padding:8px 0 72px;}
.insights-section{margin-top:56px;}
.insights-section h3{font-family:var(--mono);font-size:12px;letter-spacing:.08em;color:var(--brand-strong);text-transform:uppercase;font-weight:500;margin:0 0 14px;}
.back-link{display:inline-block;font-family:var(--mono);font-size:12px;color:var(--ink-3);text-decoration:none;margin:32px 0 8px;transition:.2s;}
.back-link:hover{color:var(--ink);}
.article-page{max-width:720px;margin:0 auto;padding:16px 0 72px;}
.article-page h1{font-size:32px;line-height:1.35;margin:0 0 12px;}
.article-meta{font-family:var(--mono);font-size:12px;color:var(--ink-3);margin-bottom:24px;}
.article-geo-summary{font-size:16px;line-height:1.75;color:var(--ink-2);margin:0 0 32px;padding:14px 18px;border-left:2px solid var(--line-strong);}
.article-content p{font-size:16px;line-height:1.8;color:var(--ink-2);margin:0 0 20px;}
.article-content h2{font-size:22px;margin:44px 0 16px;line-height:1.4;}
.article-content ol,.article-content ul{padding-left:1.4em;color:var(--ink-2);line-height:1.8;}
.article-content hr{border:0;border-top:1px solid var(--line);margin:40px 0;}
.article-content strong{color:inherit;}
.article-content em{color:var(--ink-3);}
.article-footer{margin-top:48px;padding-top:20px;border-top:1px solid var(--line);}
.article-credit{font-size:13px;color:var(--ink-3);margin:0;}

/* =======================================================================
   移动端断点（<=640px）：设计稿只给了各页"移动首屏"截图，本节把已确立的
   字号/间距/留白比例延伸覆盖到完整页面滚动区域（首屏部分与设计稿逐像素一致，
   首屏以下区域按同一视觉语言新增的响应式规则）。
   ======================================================================= */
@media (max-width:640px){
  .container{padding:0 22px;}
  body{font-size:15px;line-height:1.65;}

  .topnav{padding:20px 0;}
  .brand svg{width:24px;height:24px;}
  .brand-name{font-size:15px;}
  .navlinks{display:none;}
  .nav-right .btn-sm{display:none;}
  .hamburger{display:flex;}
  .nav-toggle:checked ~ .mobile-menu{display:flex;}
  .mobile-menu{position:absolute;top:100%;left:0;right:0;background:var(--frame);border-bottom:1px solid var(--line);flex-direction:column;padding:8px 22px 20px;z-index:20;}
  .mobile-menu a{padding:12px 0;font-size:15px;color:var(--ink-2);border-top:1px solid var(--line);}
  .mobile-menu a:first-child{border-top:none;}
  .mobile-menu a.active{color:var(--ink);font-weight:600;}
  .mobile-menu .btn{margin-top:12px;justify-content:center;}

  .hero-split{padding:44px 0 36px;flex-direction:column-reverse;gap:0;text-align:left;}
  .hero-split .hero-text{width:100%;}
  .hero-raven svg{width:140px;height:140px;}
  .hero-raven .raven-stage{width:140px;height:140px;}
  .hero-split .hero-raven{margin-bottom:34px;}
  .hero-plain{padding:40px 0 34px;}
  .hero-plain.with-raven{flex-direction:column-reverse;gap:0;}
  .hero-plain.with-raven .hero-text{width:100%;}
  .hero-plain.with-raven .hero-raven{margin-bottom:24px;}
  .br-desktop{display:none;}
  .br-mobile{display:inline;}
  .kicker{font-size:11px;letter-spacing:.1em;margin-bottom:16px;}
  h1{font-size:30px;line-height:1.38;max-width:none;}
  .hero-plain h1{font-size:27px;line-height:1.42;}
  .lead{font-size:14.5px;margin-top:18px;}
  .hero-plain .lead{font-size:14px;margin-top:16px;}
  .hero-cta{flex-direction:column;gap:12px;margin-top:26px;}
  .hero-cta .btn{width:100%;justify-content:center;}

  section{padding:40px 0;}
  h2{font-size:22px;}
  .section-head{margin-bottom:26px;}

  .lanes{grid-template-columns:1fr;}
  .lane-card{border-left:none;border-top:1px solid var(--line);padding:28px 0;}
  .lane-card:first-child{border-top:none;padding-top:0;}

  .stat-panel{padding:26px 24px;}
  .stat-grid{grid-template-columns:repeat(2,1fr);gap:24px 20px;}

  .insight-row{grid-template-columns:1fr;gap:8px;padding:20px 0;}
  .insight-row .meta{text-align:left;}

  .principles{grid-template-columns:1fr;}
  .principle{border-left:none;border-top:1px solid var(--line);padding:24px 0;}
  .principle:first-child{border-top:none;padding-top:0;}

  .form-panel{grid-template-columns:1fr;}
  .form-card{border-left:none;border-top:1px solid var(--line);padding:24px 0;}
  .form-card:first-child{border-top:none;padding-top:0;}

  .pricing{grid-template-columns:1fr;}
  .price-card{border-left:none;border-top:1px solid var(--line);padding:24px 0;}
  .price-card:first-child{border-top:none;padding-top:0;}
  .price-card.mid::before{left:0;right:0;}

  .guarantee{padding:28px 24px;border-radius:16px;}
  .guarantee-grid{grid-template-columns:1fr;gap:24px;}

  .service{grid-template-columns:44px 1fr;gap:16px;padding:24px 0;}
  .service h3{font-size:19px;}

  .timeline{flex-direction:column;gap:24px;}
  .tl-step{padding:0;}
  .tl-step::before{display:none;}

  .narrative p{font-size:14.5px;line-height:1.8;}
  .narrative p:first-child{font-size:16px;}

  .avatar-card{flex-direction:column;text-align:center;align-items:center;padding:28px 0;}
  .avatar-raven svg{width:120px;height:120px;}
  .avatar-card p{max-width:none;}

  .roles{grid-template-columns:repeat(2,1fr);}
  .role{border-left:none;border-top:1px solid var(--line);padding:18px 0;}
  .role:nth-child(odd){padding-right:12px;}
  .role:nth-child(-n+2){border-top:none;}

  .login-wrap{padding:44px 0 0;max-width:none;}
  .login-wrap h1{font-size:23px;}
  .login-card{padding:26px 22px;border-radius:18px;}

  .dl-title{padding:0 22px 22px;}
  .dl-pointer{padding:20px;}

  .article-page h1{font-size:26px;}

  .footer-grid{grid-template-columns:1fr 1fr;gap:28px;}
  .footer-brand{grid-column:1/-1;}
  .footer-bottom{flex-direction:column;align-items:flex-start;gap:10px;margin-top:32px;}

  footer.footer-simple .container{flex-direction:column;align-items:flex-start;gap:10px;}
}

/* =======================================================================
   动态一期（样稿·2026-09-10）：滚动进场 / 数字滚动 / 卡片 spotlight / 律师分屏对比
   全部退化优先——没有 .js-motion-ready（无 JS 或 prefers-reduced-motion）时，
   .reveal 恒可见（opacity:1），不依赖动效即可读到完整内容。
   ======================================================================= */

/* ---- 滚动进场：默认可见，仅当 JS 确认"可以动"才切换到隐藏起点 ---- */
.reveal{opacity:1;transform:none;}
.js-motion-ready .reveal{
  opacity:0;transform:translateY(14px);
  transition:opacity .6s cubic-bezier(.22,.61,.36,1),transform .6s cubic-bezier(.22,.61,.36,1);
  transition-delay:calc(var(--d,0) * 90ms);
}
.js-motion-ready .reveal.is-visible{opacity:1;transform:translateY(0);}

/* 首屏母句：逐行浮现（与设计方案第一幕"三行逐行浮出"对应，行内 <br class="br-*"> 位置不变，
   仅给纯文字部分包一层 span，响应式换行逻辑完全不受影响） */
.hero-text h1 .hline{display:inline-block;}
.js-motion-ready .hero-text h1 .hline{
  opacity:0;transform:translateY(10px);
  transition:opacity .5s ease,transform .5s ease;
  transition-delay:calc(var(--d,0) * 120ms);
}
.js-motion-ready .hero-text h1 .hline.is-visible{opacity:1;transform:none;}

/* ---- 卡片 spotlight 微光：全站橙色第一处，只在首页两张产品入口卡出现，
   悬停时光标处透出极淡橙光，移开即散；触屏/键盘导航不触发（JS 只在精细指针设备绑定）。 ---- */
.spotlight-card{position:relative;isolation:isolate;}
.spotlight-card::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;opacity:0;
  transition:opacity .25s ease;
  background:radial-gradient(240px circle at var(--mx,50%) var(--my,50%),rgba(232,149,90,.16),transparent 70%);
}
.spotlight-card:hover::before{opacity:1;}
@media (prefers-reduced-motion: reduce){.spotlight-card::before{display:none;}}

/* ---- B2 主按钮悬停上浮 ---- */
.btn-primary:hover,.btn-ghost:hover{transform:translateY(-2px);}
.btn-primary:hover{box-shadow:0 8px 18px rgba(36,31,23,.18);}
.btn-ghost:hover{box-shadow:0 6px 14px rgba(36,31,23,.08);}
.btn:active{transform:translateY(0);}

/* ---- B3 链接下划线生长 ---- */
.lane-card .more,.back-link,.article-content a{position:relative;}
.lane-card .more::after,.back-link::after,.article-content a::after{
  content:"";position:absolute;left:0;bottom:-2px;width:0;height:1px;
  background:currentColor;transition:width .16s ease;
}
.lane-card .more:hover::after,.back-link:hover::after,.article-content a:hover::after{width:100%;}

/* ---- C2 AI 推理点卡下钻（手风琴） ---- */
.drill-card{border-top:1px solid var(--line-strong);margin-top:32px;max-width:520px;cursor:pointer;user-select:none;}
.drill-head{display:flex;justify-content:space-between;align-items:center;padding:18px 2px;font-size:14.5px;font-weight:600;color:var(--ink);}
.drill-head .chev{color:var(--ink-3);transition:transform .25s ease;font-family:var(--mono);}
.drill-card.open .drill-head .chev{transform:rotate(180deg);}
.drill-body{max-height:0;overflow:hidden;transition:max-height .35s ease;}
.drill-card.open .drill-body{max-height:160px;}
.drill-step{font-size:13.5px;color:var(--ink-2);line-height:1.8;padding:2px 2px 14px;opacity:.4;}
.drill-card.open .drill-step{animation:drillReveal .4s ease forwards;opacity:0;}
.drill-card.open .drill-step:nth-child(1){animation-delay:.05s;}
.drill-card.open .drill-step:nth-child(2){animation-delay:.2s;}
.drill-card.open .drill-step:nth-child(3){animation-delay:.35s;color:var(--brand-strong);}
@keyframes drillReveal{to{opacity:1;}}

/* ---- D3 内页静态鸦原地点睛脉动 ---- */
.raven-d3 svg{opacity:0;animation:d3BodyIn .5s ease forwards .1s;}
.raven-d3 svg .d3-eye{opacity:0;animation:d3EyeIn .5s ease forwards .55s;transform-origin:320px 196px;}
@keyframes d3BodyIn{to{opacity:1;}}
@keyframes d3EyeIn{0%{opacity:0;transform:scale(.4);}70%{transform:scale(1.2);}100%{opacity:1;transform:scale(1);}}

/* ---- 统一 reduced-motion 兜底（覆盖 B2/C2/D3 新增动效） ---- */
@media (prefers-reduced-motion: reduce){
  .btn-primary:hover,.btn-ghost:hover{transform:none;box-shadow:none;}
  .drill-body{transition:none;}
  .drill-card.open .drill-step{animation:none;opacity:1;}
  .raven-d3 svg,.raven-d3 svg .d3-eye{animation:none;opacity:1;transform:none;}
}

