/* Professional capability pages: shared system with distinct visual grammars. */
.capability-system{background:#050707}
.capability-intro{display:grid;grid-template-columns:minmax(480px,1fr) minmax(390px,.72fr);align-items:end;gap:clamp(54px,9vw,150px);margin-bottom:clamp(60px,7vw,104px)}
.capability-intro h2{margin:0;font-size:clamp(46px,5vw,80px);font-weight:500;line-height:1.06;letter-spacing:-.05em}
.capability-intro p{max-width:620px;margin:0 0 8px;color:var(--muted);font-size:clamp(17px,1.3vw,21px);line-height:1.9}
.dubbing-paths{margin:0 0 clamp(60px,7vw,104px);padding:clamp(38px,4.8vw,68px) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.dubbing-paths-head{display:grid;grid-template-columns:minmax(380px,.85fr) minmax(360px,.7fr);align-items:end;gap:clamp(48px,8vw,130px);margin-bottom:clamp(34px,4vw,58px)}
.dubbing-paths-head h3{max-width:620px;margin:0;font-size:clamp(32px,3.2vw,52px);font-weight:500;line-height:1.12;letter-spacing:-.04em}.dubbing-paths-head p{max-width:600px;margin:0;color:var(--muted);font-size:clamp(15px,1.15vw,18px);line-height:1.8}
.dubbing-path-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line);background:#080a0a}
.dubbing-path{position:relative;min-width:0;padding:clamp(30px,3.4vw,52px);overflow:hidden}.dubbing-path+.dubbing-path{border-left:1px solid var(--line)}.dubbing-path::before{content:"";position:absolute;top:0;left:0;width:34%;height:2px;background:var(--accent)}
.dubbing-path-top{display:flex;justify-content:space-between;gap:24px;margin-bottom:clamp(40px,5vw,76px);color:var(--accent);font-size:12px;letter-spacing:.15em}.dubbing-path-top strong{font-weight:500;text-align:right}
.dubbing-path h3{margin:0 0 16px;font-size:clamp(30px,2.5vw,42px);font-weight:500;line-height:1.18;letter-spacing:-.035em}.dubbing-path-question{max-width:620px;margin:0 0 18px!important;color:#f0f4f2!important;font-size:clamp(16px,1.25vw,19px)!important;line-height:1.65!important}.dubbing-path>p{max-width:650px;margin:0;color:var(--subtle);font-size:14px;line-height:1.8}
.dubbing-path ul{display:grid;grid-template-columns:1fr;gap:0;margin:30px 0 32px;padding:0;border-top:1px solid var(--line);list-style:none}.dubbing-path li{position:relative;padding:12px 0 12px 18px;border-bottom:1px solid var(--line);color:var(--muted);font-size:13px}.dubbing-path li::before{content:"";position:absolute;left:0;top:19px;width:5px;height:5px;background:var(--accent);transform:rotate(45deg)}
.dubbing-path a{display:inline-flex;align-items:center;gap:10px;color:var(--accent);font-size:13px}.dubbing-path a svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.4;transition:transform .25s}.dubbing-path a:hover svg{transform:translateX(4px)}
.dubbing-path{transition:background .3s}.dubbing-path.is-selected{background:rgba(80,228,178,.035)}.dubbing-path.is-selected::before{width:100%}.dubbing-path:not(.is-selected)::before{background:var(--line-strong)}
.capability-board{overflow:hidden;border:1px solid var(--line);background:#080a0a}
.capability-signal{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(580px,1.8fr) minmax(250px,.8fr);align-items:center;gap:clamp(28px,3vw,52px);min-height:260px;padding:44px clamp(30px,3.8vw,64px);border-bottom:1px solid var(--line);background:radial-gradient(circle at 50% 50%,rgba(80,228,178,.075),transparent 40%)}
.signal-terminal>span{display:block;margin-bottom:16px;color:var(--subtle);font-size:12px;letter-spacing:.17em}
.signal-terminal>strong{display:block;font-size:clamp(23px,1.85vw,31px);font-weight:500;line-height:1.3}
.signal-terminal.output{padding-left:28px;border-left:1px solid rgba(80,228,178,.34);color:var(--accent)}
.signal-track{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.signal-track::before{content:"";position:absolute;left:10%;right:10%;top:22px;height:1px;background:linear-gradient(90deg,var(--line-strong),var(--accent),var(--line-strong))}
.signal-track>div{position:relative;z-index:1;min-width:0;padding-top:48px;text-align:center}
.signal-track>div::before{content:"";position:absolute;left:50%;top:17px;width:10px;height:10px;border:1px solid var(--accent);background:#080a0a;transform:translateX(-50%) rotate(45deg)}
.signal-track span{display:block;margin-bottom:5px;color:var(--accent);font-size:12px;letter-spacing:.12em}
.signal-track strong{font-size:clamp(15px,1.12vw,18px);font-weight:500;white-space:nowrap}
.capability-controls{display:grid;grid-template-columns:230px 1fr;border-bottom:1px solid var(--line)}
.capability-controls-head{padding:34px 30px;border-right:1px solid var(--line)}
.capability-controls-head h3{margin:0 0 8px;font-size:20px;font-weight:500}.capability-controls-head p{margin:0;color:var(--subtle);font-size:12px}
.capability-control-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.capability-control-grid details{min-width:0;border-right:1px solid var(--line)}.capability-control-grid details:last-child{border-right:0}
.capability-control-grid summary{display:grid;grid-template-columns:28px 1fr 18px;gap:12px;align-items:start;min-height:128px;padding:28px 22px;cursor:pointer;list-style:none}.capability-control-grid summary::-webkit-details-marker{display:none}
.capability-control-grid summary>span{color:var(--accent);font-size:12px;letter-spacing:.12em}.capability-control-grid summary strong{display:block;font-size:18px;font-weight:500}.capability-control-grid summary small{display:block;margin-top:6px;color:var(--subtle);font-size:12px;line-height:1.55}
.capability-control-grid summary svg{width:18px;height:18px;fill:none;stroke:var(--accent);stroke-width:1.4;transition:transform .25s}.capability-control-grid details[open]{background:rgba(80,228,178,.035)}.capability-control-grid details[open] summary svg{transform:rotate(180deg)}
.capability-control-grid details>p{margin:0;padding:0 24px 28px 62px;color:var(--subtle);font-size:13px;line-height:1.75}
.capability-pipeline-head{display:grid;grid-template-columns:minmax(410px,.9fr) minmax(380px,.7fr);align-items:end;gap:clamp(50px,9vw,150px);padding:clamp(62px,6vw,94px) clamp(30px,3.8vw,64px) clamp(52px,5vw,78px);background:#030404}
.capability-pipeline-head h3{margin:0;font-size:clamp(38px,3.7vw,60px);font-weight:500;line-height:1.08;letter-spacing:-.04em}.capability-pipeline-head p{max-width:580px;margin:0;color:var(--muted);font-size:clamp(16px,1.2vw,19px);line-height:1.85}
.pipeline-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#030404}
.pipeline-switch button{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:18px;min-height:104px;padding:24px clamp(26px,3.2vw,52px);border:0;border-right:1px solid var(--line);background:transparent;color:var(--muted);font:inherit;text-align:left;cursor:pointer;transition:background .25s,color .25s}.pipeline-switch button:last-child{border-right:0}.pipeline-switch button::after{content:"";position:absolute;left:0;right:100%;bottom:-1px;height:2px;background:var(--accent);transition:right .3s}.pipeline-switch button[aria-pressed="true"]{background:rgba(80,228,178,.05);color:var(--text)}.pipeline-switch button[aria-pressed="true"]::after{right:0}.pipeline-switch button>span{color:var(--accent);font-size:12px;letter-spacing:.16em}.pipeline-switch strong{font-size:clamp(18px,1.4vw,23px);font-weight:500}.pipeline-switch small{color:var(--subtle);font-size:12px;letter-spacing:.04em}.pipeline-switch button:focus-visible{outline:1px solid var(--accent);outline-offset:-4px}
.poster-wall-switch{margin-bottom:0;border-right:1px solid var(--line);border-left:1px solid var(--line)}
.poster-flow-panel[hidden]{display:none}.poster-flow-head{display:grid;grid-template-columns:minmax(360px,.8fr) minmax(380px,.7fr);align-items:end;gap:clamp(48px,8vw,130px);padding:clamp(34px,4vw,56px) 0}.poster-flow-head h3{margin:0;font-size:clamp(30px,2.7vw,44px);font-weight:500;line-height:1.15;letter-spacing:-.035em}.poster-flow-head p{max-width:620px;margin:0;color:var(--muted);font-size:15px;line-height:1.8}
.capability-pipeline{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);background:#030404}
.capability-stage{min-width:0;min-height:320px;padding:34px 34px 38px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.capability-stage:nth-child(3n){border-right:0}.capability-stage:nth-child(n+4){border-bottom:0}
.capability-stage-icon{width:64px;height:64px;margin:0 0 32px auto;display:grid;place-items:center;border:1px solid rgba(80,228,178,.48);transform:rotate(45deg)}
.capability-stage-icon span{color:var(--accent);font-size:20px;transform:rotate(-45deg)}
.capability-stage>span{display:block;color:var(--accent);font-size:12px;letter-spacing:.16em}.capability-stage h3{max-width:280px;margin:12px 0;font-size:clamp(20px,1.45vw,24px);line-height:1.35;font-weight:500}.capability-stage p{max-width:360px;margin:0;color:var(--subtle);font-size:14px;line-height:1.78}.stage-copy{min-height:76px}.stage-copy p{animation:stage-copy-in .28s ease both}@keyframes stage-copy-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
.capability-stage:last-child{background:rgba(80,228,178,.045)}.capability-stage:last-child .capability-stage-icon{background:var(--accent);border-color:var(--accent)}.capability-stage:last-child .capability-stage-icon span{color:#04100c}
.capability-focus{display:grid;grid-template-columns:minmax(420px,1.12fr) minmax(380px,.88fr);margin-top:clamp(70px,8vw,120px);border:1px solid var(--line)}
.capability-focus figure{position:relative;margin:0;min-height:620px;overflow:hidden}.capability-focus figure::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 65%,rgba(3,4,4,.75))}.capability-focus img{width:100%;height:100%;object-fit:cover}.capability-focus figcaption{position:absolute;z-index:2;left:24px;bottom:20px;color:#c7cecb;font-size:12px;letter-spacing:.07em}
.capability-modules{padding:clamp(40px,5vw,82px);display:flex;flex-direction:column;justify-content:center;background:#080a0a}.capability-modules h3{margin:0 0 34px;font-size:clamp(28px,2.25vw,38px);line-height:1.3;font-weight:500}.capability-modules dl{margin:0}.capability-modules dl>div{display:grid;grid-template-columns:116px 1fr;gap:20px;padding:18px 0;border-top:1px solid var(--line)}.capability-modules dl>div:last-child{border-bottom:1px solid var(--line)}.capability-modules dt{color:var(--text)}.capability-modules dd{margin:0;color:var(--subtle);font-size:14px;line-height:1.75}
.service-related{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-related a{padding:28px 20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);transition:.25s}.service-related a:hover,.service-related a[aria-current="page"]{color:var(--accent);background:var(--surface)}

/* Existing service page bridge. */
.capability-hub{position:relative;z-index:2;padding:54px 4.7vw 60px;background:#050606;color:#f4f7f6;font-family: "PingFang SC", "Microsoft YaHei", Arial, sans-serif;border-bottom:1px solid rgba(255,255,255,.14)}
.capability-hub-inner{max-width:1500px;margin:auto}.capability-hub-head{display:grid;grid-template-columns:.72fr 1fr;align-items:end;gap:70px;margin-bottom:30px}.capability-hub h2{margin:0;font-size:clamp(34px,3vw,50px);font-weight:500;line-height:1.08;letter-spacing:-.04em}.capability-hub-head p{margin:0 0 3px;color:#9fa8a5;font-size:16px;line-height:1.7;max-width:720px}
.capability-hub-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.16);border-left:1px solid rgba(255,255,255,.16)}
.capability-hub-card{position:relative;min-height:245px;padding:25px 28px 23px;overflow:hidden;border-right:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16);color:#fff}.capability-hub-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.3;transition:.45s}.capability-hub-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,.94))}.capability-hub-card>*:not(img){position:relative;z-index:2}.capability-hub-card:hover img{transform:scale(1.035);opacity:.46}.capability-hub-card span{color:#50e4b2;font-size:12px;letter-spacing:.14em}.capability-hub-card h3{margin:76px 0 9px;font-size:26px;line-height:1.2;font-weight:500}.capability-hub-card p{margin:0;color:#b7bfbc;font-size:14px;line-height:1.55}.capability-hub-card b{display:block;margin-top:12px;color:#50e4b2;font-size:13px;font-weight:400}

@media(max-width:1050px){.capability-intro{grid-template-columns:1fr;gap:28px}.dubbing-paths-head{grid-template-columns:1fr;gap:22px}.capability-signal{grid-template-columns:1fr;gap:38px}.signal-terminal.output{max-width:480px;padding:26px 0 0;border-left:0;border-top:1px solid rgba(80,228,178,.34)}.capability-controls{grid-template-columns:1fr}.capability-controls-head{border-right:0;border-bottom:1px solid var(--line)}.capability-control-grid{grid-template-columns:1fr 1fr}.capability-control-grid details:nth-child(2){border-right:0}.capability-control-grid details:nth-child(-n+2){border-bottom:1px solid var(--line)}.capability-pipeline-head{grid-template-columns:1fr;gap:28px}.capability-pipeline{grid-template-columns:repeat(2,1fr)}.capability-stage:nth-child(3n){border-right:1px solid var(--line)}.capability-stage:nth-child(2n){border-right:0}.capability-stage:nth-child(n+4){border-bottom:1px solid var(--line)}.capability-stage:nth-child(n+5){border-bottom:0}.capability-focus{grid-template-columns:1fr}.capability-focus figure{min-height:420px}.capability-focus figure::after{background:linear-gradient(180deg,transparent 68%,rgba(3,4,4,.72))}.capability-hub-head{grid-template-columns:1fr;gap:12px;margin-bottom:24px}.capability-hub-grid{grid-template-columns:1fr}.capability-hub-card{min-height:190px}.capability-hub-card h3{margin-top:44px}}
@media(max-width:760px){.capability-intro h2{font-size:40px}.capability-intro p{font-size:16px;line-height:1.75}.dubbing-paths{padding:34px 0 0}.dubbing-paths-head{margin-bottom:30px}.dubbing-paths-head h3{font-size:34px}.dubbing-path-grid{grid-template-columns:1fr;border-right:0;border-left:0}.dubbing-path{padding:30px 22px 34px}.dubbing-path+.dubbing-path{border-top:1px solid var(--line);border-left:0}.dubbing-path-top{margin-bottom:42px}.dubbing-path h3{font-size:30px}.capability-signal{padding:30px 22px}.signal-track{grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}.signal-track::before,.signal-track>div::before{display:none}.signal-track>div{padding:24px 10px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.signal-track strong{font-size:16px}.capability-controls-head{padding:26px 22px}.capability-control-grid{grid-template-columns:1fr}.capability-control-grid details,.capability-control-grid details:nth-child(2){border-right:0;border-bottom:1px solid var(--line)}.capability-control-grid details:last-child{border-bottom:0}.capability-control-grid summary{min-height:0;padding:24px 20px}.capability-control-grid details>p{padding:0 22px 24px 60px}.capability-pipeline-head{padding:52px 22px 42px}.capability-pipeline-head h3{font-size:36px}.capability-pipeline{grid-template-columns:1fr}.capability-stage,.capability-stage:nth-child(n+4),.capability-stage:nth-child(n+5){min-height:0;border-right:0;border-bottom:1px solid var(--line);padding:28px 24px 32px}.capability-stage:last-child{border-bottom:0}.capability-stage-icon{width:56px;height:56px;margin-bottom:24px}.capability-focus figure{min-height:280px}.capability-modules{padding:34px 22px}.capability-modules dl>div{grid-template-columns:1fr;gap:5px}.service-related{grid-template-columns:1fr}.capability-hub{padding:48px 22px 52px}.capability-hub h2{font-size:34px}.capability-hub-head p{font-size:15px}.capability-hub-card{min-height:145px;padding:20px 22px}.capability-hub-card h3{margin:24px 0 8px;font-size:23px}.capability-hub-card p{display:none}.capability-hub-card b{margin-top:8px;font-size:12px}}
@media(max-width:760px){.pipeline-switch{grid-template-columns:1fr}.pipeline-switch button{grid-template-columns:34px minmax(0,1fr);min-height:88px;padding:20px 22px;border-right:0;border-bottom:1px solid var(--line)}.pipeline-switch button:last-child{border-bottom:0}.pipeline-switch small{grid-column:2}.stage-copy{min-height:0}}
@media(max-width:760px){.poster-flow-head{grid-template-columns:1fr;gap:16px;padding:34px 0}.poster-flow-head h3{font-size:30px}.poster-flow-head p{font-size:14px}.poster-wall-switch{margin-bottom:0}}
@media(prefers-reduced-motion:reduce){.stage-copy p,.dubbing-path,.pipeline-switch button,.pipeline-switch button::after{animation:none;transition:none}}
