/* Manufacturing (prefix mf-) */
:root{--mf-o:#FF5B1A;--mf-oi:#C2410C;--mf-pe:#FFA77F;--mf-ln:#22263A;--mf-mut:#A3A8B8;--mf-pl:#D6D6D2;--mf-dr:#E8E3DA}
[class^="mf-"] svg,[class*=" mf-"] svg{display:block}
@keyframes mfIn{from{opacity:0;transform:translateY(8px)}}

/* ── banner: blueprint */
.mf-bp{position:relative;background:rgba(11,13,20,.86);border:1px solid var(--mf-ln);border-radius:6px;max-height:560px;display:grid;grid-template-rows:auto 1fr auto;box-shadow:0 40px 80px -40px rgba(255,91,26,.35);background-image:linear-gradient(rgba(34,38,58,.6) 1px,transparent 1px),linear-gradient(90deg,rgba(34,38,58,.6) 1px,transparent 1px);background-size:20px 20px}
.mf-bp-hd{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--mf-ln);background:rgba(5,6,10,.7);font:500 12.5px var(--f-sans);color:var(--mf-mut);flex-wrap:wrap}
.mf-bp-hd b{color:var(--mf-pe);letter-spacing:.1em}.mf-bp-hd em{font-style:normal;color:#fff}
.mf-bp-tabs{display:flex;gap:4px}
.mf-bp-tabs button{background:none;border:1px solid var(--mf-ln);color:var(--mf-mut);padding:4px 10px;font:500 12px var(--f-sans);border-radius:3px}
.mf-bp-tabs button[aria-pressed="true"]{border-color:var(--mf-o);color:#fff;background:rgba(255,91,26,.15)}
.mf-bp-body{display:grid;grid-template-columns:1fr 200px;gap:8px;padding:12px 16px;min-height:0}
.mf-bp-svg{width:100%;height:auto;max-height:400px;overflow:visible}
.mf-bp-part{display:none}.mf-bp-part.mf-on{display:inline}
.mf-bp-ol *{fill:none;stroke:var(--mf-dr);stroke-width:1.8;stroke-linejoin:round}
.mf-bp-ol .mf-bp-hid{stroke-dasharray:5 4;stroke-width:1;stroke:#8A8E9E}
.mf-bp-cl *{fill:none;stroke:#6E7286;stroke-width:.9;stroke-dasharray:14 3 2 3}
.mf-bp-dm path{fill:none;stroke:var(--mf-o);stroke-width:1.1}
.mf-bp-dm .mf-bp-ex{stroke:#6E5040;stroke-width:.8}
.mf-bp-dm text{font:600 12px var(--f-sans);fill:var(--mf-pe);paint-order:stroke;stroke:#0B0D14;stroke-width:4px}
.mf-bp-dm{transition:opacity .4s;cursor:default}
.mf-bp-dm.mf-hot path{stroke:#fff;stroke-width:1.6}.mf-bp-dm.mf-hot text{fill:#fff}
.mf-bp.mf-run .mf-bp-part.mf-on .mf-bp-ol *{stroke-dasharray:var(--mf-len,800);animation:mfDraw 1.4s ease both}
.mf-bp.mf-run .mf-bp-part.mf-on .mf-bp-ol .mf-bp-hid{animation:none}
.mf-bp.mf-run .mf-bp-part.mf-on .mf-bp-dm{opacity:0}
.mf-bp.mf-run .mf-bp-part.mf-on .mf-bp-dm.mf-in{opacity:1}
@keyframes mfDraw{from{stroke-dashoffset:var(--mf-len,800)}}
.mf-bp-side{position:relative;display:flex;flex-direction:column;justify-content:center}
.mf-bp-spec{display:none;width:100%;border-collapse:collapse;font:500 12px/1.3 var(--f-sans)}
.mf-bp-spec.mf-on{display:table}
.mf-bp-spec caption{text-align:left;font:600 11px var(--f-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--mf-pe);padding-bottom:6px}
.mf-bp-spec th,.mf-bp-spec td{border:1px solid var(--mf-ln);padding:6px 7px;text-align:left;vertical-align:top}
.mf-bp-spec th{color:#6E7286;font-weight:500;width:42%;background:rgba(5,6,10,.6)}
.mf-bp-spec td{color:#fff;background:rgba(5,6,10,.4);transition:background .3s,color .3s}
.mf-bp.mf-run .mf-bp-spec td{color:transparent}
.mf-bp.mf-run .mf-bp-spec tr.mf-in td{color:#fff}
.mf-bp-spec tr.mf-hot td{background:rgba(255,91,26,.25)}
.mf-bp-stamp{position:absolute;right:-4px;bottom:-6px;border:2.5px solid var(--mf-o);color:var(--mf-o);padding:6px 12px;transform:rotate(-9deg);text-align:center;background:rgba(11,13,20,.85);opacity:0;pointer-events:none}
.mf-bp-stamp b{display:block;font:800 16px var(--f-sans);letter-spacing:.08em;text-transform:uppercase}
.mf-bp-stamp small{font:600 11px var(--f-sans)}
.mf-bp-stamp.mf-on{opacity:1;animation:mfStamp .35s cubic-bezier(.3,1.6,.5,1)}
@keyframes mfStamp{from{transform:rotate(-9deg) scale(1.8);opacity:0}}
.mf-bp-ft{display:flex;gap:16px;align-items:center;padding:10px 16px;border-top:1px solid var(--mf-ln);background:rgba(5,6,10,.7);flex-wrap:wrap}
.mf-bp-st{display:flex;gap:6px;align-items:center;font:500 12px var(--f-sans);color:#6E7286}
.mf-bp-st i{width:8px;height:8px;border-radius:50%;border:1.5px solid #6E7286}
.mf-bp-st.mf-on{color:#fff}.mf-bp-st.mf-on i{background:var(--mf-o);border-color:var(--mf-o)}
.mf-bp-ft small{margin-left:auto;font:500 11.5px var(--f-sans);color:var(--mf-mut)}
@media (max-width:640px){.mf-bp{max-height:none}.mf-bp-body{grid-template-columns:1fr;padding:10px}.mf-bp-ft small{display:none}.mf-bp-stamp{right:6px;bottom:6px}}

/* ── answers: title block */
.mf-tb-wrap{background:var(--night);padding:0 0 clamp(48px,6vw,80px)}
.mf-tb{display:grid;grid-template-columns:180px repeat(4,1fr) 110px;border:1.5px solid #E8E3DA;color:#fff;background:#0B0D14}
.mf-tb>*{border-right:1px solid #4A4F66;padding:14px 16px}
.mf-tb>*:last-child{border-right:0}
.mf-tb-logo span{font:700 20px var(--f-sans)}.mf-tb-logo i{color:var(--mf-o);font-style:normal}
.mf-tb-logo small{display:block;font:500 11px var(--f-sans);color:var(--mf-mut);margin-top:6px}
.mf-tb-c small{display:block;font:600 10.5px var(--f-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--mf-pe);margin-bottom:6px}
.mf-tb-c b{font:500 15px/1.4 var(--f-sans)}
.mf-tb-meta{display:grid;gap:6px;padding:10px 14px!important}
.mf-tb-meta span{font:600 13px var(--f-sans);display:flex;justify-content:space-between;border-bottom:1px solid var(--mf-ln);padding-bottom:4px}
.mf-tb-meta span:last-child{border:0}
.mf-tb-meta small{font:500 10.5px var(--f-sans);color:#6E7286;text-transform:uppercase;letter-spacing:.1em}
@media (max-width:1000px){.mf-tb{grid-template-columns:1fr 1fr}.mf-tb>*{border-bottom:1px solid #4A4F66}.mf-tb-logo{grid-column:1/-1}.mf-tb-meta{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}.mf-tb>*:nth-child(odd){border-right:0}.mf-tb-meta span{border-bottom:0}}
@media (max-width:520px){.mf-tb{grid-template-columns:1fr}.mf-tb>*{border-right:0!important}}

/* ── S1 turret */
.mf-tu{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(24px,4vw,56px);align-items:center}
.mf-tu-vis{position:relative;background:#0B0C10;border-radius:6px;padding:16px}
.mf-tu-vis svg{width:100%;height:auto}
.mf-tu-ring{fill:none;stroke:#2B2F44;stroke-dasharray:3 6}
.mf-tu-rot{transition:transform 1.1s cubic-bezier(.6,0,.2,1)}
.mf-tu-hub{fill:#151826;stroke:#E8E3DA;stroke-width:2}.mf-tu-hub2{fill:none;stroke:var(--mf-o);stroke-width:2}
.mf-tu-blk{fill:#151826;stroke:#E8E3DA;stroke-width:1.6}
.mf-tu-tool *{fill:none;stroke:#A3A8B8;stroke-width:1.6;stroke-linejoin:round}
.mf-tu-t text{font:600 11px var(--f-sans);fill:#6E7286}
.mf-tu-t.mf-on .mf-tu-tool *{stroke:var(--mf-o)}
.mf-tu-t.mf-on text{fill:var(--mf-pe)}
.mf-tu-axis{stroke:var(--mf-o);stroke-width:2;stroke-dasharray:3 3}
.mf-tu-job{fill:#151826;stroke:#4A4F66}
.mf-tu-w{opacity:0;transition:opacity .5s}
.mf-tu-w.mf-on{opacity:1}
.mf-tu-w *{fill:none;stroke:#E8E3DA;stroke-width:1.5}
.mf-tu-w .mf-o{stroke:var(--mf-o)}
.mf-tu-w text{stroke:none;fill:var(--mf-pe);font:600 11px var(--f-sans)}
.mf-tu-spark path{stroke:var(--mf-o);stroke-width:2;stroke-linecap:round;animation:mfSpark .5s steps(2) infinite}
@keyframes mfSpark{50%{opacity:.2}}
.mf-tu-ctl{position:absolute;left:16px;bottom:14px;display:flex;gap:6px}
.mf-tu-arrow{width:38px;height:38px;border-radius:50%;background:#151826;border:1px solid #4A4F66;color:#fff;font-size:18px}
.mf-tu-arrow:hover{background:var(--mf-o);border-color:var(--mf-o)}
.mf-tu-btns{display:grid;gap:6px}
.mf-tu-btns button{display:flex;gap:12px;align-items:center;text-align:left;background:#fff;border:1px solid var(--mf-pl);border-radius:4px;padding:11px 14px;font:500 15.5px/1.3 var(--f-sans);color:var(--ink-2)}
.mf-tu-btns button small{font:700 11.5px var(--f-sans);color:#8F8A80;border:1px solid var(--mf-pl);padding:3px 6px;border-radius:3px}
.mf-tu-btns button.mf-on{border-color:#0B0C10;color:#0B0C10;font-weight:600;box-shadow:inset 4px 0 0 var(--mf-o)}
.mf-tu-btns button.mf-on small{background:var(--mf-o);border-color:var(--mf-o);color:#fff}
.mf-tu-out{margin-top:18px;min-height:96px}
.mf-tu-l{display:none;font:400 clamp(17px,1.4vw,19.5px)/1.5 var(--f-sans);color:#0B0C10;border-left:3px solid var(--mf-o);padding-left:16px}
.mf-tu-l.mf-on{display:block;animation:mfIn .4s ease}
@media (max-width:900px){.mf-tu{grid-template-columns:1fr}}

/* ── S2 pipe */
.mf-pj{display:grid;gap:20px}
.mf-pj-svg{width:100%;height:auto}
.mf-pj-pipe{fill:none;stroke:#2B2F44;stroke-width:18;stroke-linecap:round}
.mf-pj-flow{fill:none;stroke:var(--mf-o);stroke-width:6;stroke-linecap:round;opacity:.55;transition:stroke-dashoffset 1.2s ease}
.mf-pj-dot{fill:#fff}
.mf-pj-t{font:600 12px var(--f-sans);fill:var(--mf-mut);letter-spacing:.1em;text-transform:uppercase}
.mf-pv{cursor:pointer;outline:none}
.mf-pv-body{fill:#151826;stroke:#A3A8B8;stroke-width:2;stroke-linejoin:round}
.mf-pv-stem{stroke:#A3A8B8;stroke-width:2}
.mf-pv-wheel{transition:transform .8s cubic-bezier(.4,0,.2,1)}
.mf-pv-wheel circle,.mf-pv-wheel path{fill:none;stroke:#A3A8B8;stroke-width:2.2}
.mf-pv text{font:700 12px var(--f-sans);fill:#6E7286}
.mf-pv.mf-open .mf-pv-body{stroke:var(--mf-o);fill:rgba(255,91,26,.18)}
.mf-pv.mf-open .mf-pv-wheel circle,.mf-pv.mf-open .mf-pv-wheel path,.mf-pv.mf-open .mf-pv-stem{stroke:var(--mf-o)}
.mf-pv.mf-open .mf-pv-wheel{transform:translate(0px,-40px) rotate(270deg)}
.mf-pv.mf-cur text{fill:#fff}
.mf-pv:hover .mf-pv-body,.mf-pv:focus-visible .mf-pv-body{stroke:#fff}
.mf-pj-out{min-height:150px}
.mf-pj-d{display:none;grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,48px);border-top:1px solid var(--mf-ln);padding-top:20px}
.mf-pj-d.mf-on{display:grid;animation:mfIn .4s ease}
.mf-pj-d small{display:block;font:600 12px var(--f-sans);letter-spacing:.12em;text-transform:uppercase;color:#6E7286;margin-bottom:8px}
.mf-pj-d p{font:400 clamp(17px,1.5vw,21px)/1.45 var(--f-sans);color:#DADCE3}
.mf-pj-d div:last-child small{color:var(--mf-pe)}
.mf-pj-d div:last-child p{color:#fff}
@media (max-width:700px){.mf-pj-d{grid-template-columns:1fr}.mf-pv text{font-size:22px}}

/* ── S3 cables */
.mf-cbx{display:grid;grid-template-columns:280px 1fr 170px;gap:16px;align-items:center}
.mf-cb-l{display:grid;gap:8px}
.mf-cb-b{display:flex;gap:10px;text-align:left;background:#fff;border:1px solid var(--mf-pl);border-radius:4px;padding:12px 14px;font:500 15px/1.35 var(--f-sans);color:var(--ink-2)}
.mf-cb-b small{font:700 11.5px var(--f-sans);color:#8F8A80}
.mf-cb-b.mf-on{border-color:var(--mf-o);color:#0B0C10;font-weight:600;box-shadow:inset 3px 0 0 var(--mf-o)}
.mf-cb-b.mf-fixed small{color:var(--mf-oi)}
.mf-cb-vis{background:#0B0C10;border-radius:6px;padding:10px}
.mf-cb-vis svg{width:100%;height:auto}
.mf-cb{fill:none;stroke:#4A4F66;stroke-width:3;stroke-linecap:round;transition:d .9s cubic-bezier(.5,0,.2,1),stroke .4s}
.mf-cb.mf-fixed{stroke:#A3A8B8}
.mf-cb.mf-on{stroke:var(--mf-o);stroke-width:4}
.mf-cb-pl rect{fill:#151826;stroke:#A3A8B8;stroke-width:1.5}
.mf-cb-pl rect.mf-r{fill:#151826}
.mf-cb-pl text{font:700 12px var(--f-sans);fill:#fff}
.mf-cb-pl.mf-on rect{stroke:var(--mf-o)}
.mf-cb-r{display:grid;gap:0;height:100%;grid-template-rows:repeat(4,1fr);align-items:center;padding:4% 0}
.mf-cb-f{font:600 13.5px/1.3 var(--f-sans);color:#8F8A80;padding-left:12px;border-left:2px solid var(--mf-pl);transition:.4s}
.mf-cb-f.mf-fixed{color:#0B0C10;border-left-color:#0B0C10}
.mf-cb-f.mf-on{color:var(--mf-oi);border-left-color:var(--mf-o)}
.mf-cb-out{grid-column:1/-1;min-height:120px}
.mf-cb-d{display:none;grid-template-columns:1fr 1fr;gap:16px}
.mf-cb-d.mf-on{display:grid;animation:mfIn .4s ease}
.mf-cb-d>div{background:#fff;border:1px solid var(--mf-pl);padding:16px 18px;border-radius:4px}
.mf-cb-d>div.mf-a{background:#0B0C10;border-color:#0B0C10}
.mf-cb-d small{display:block;font:600 11.5px var(--f-sans);letter-spacing:.12em;text-transform:uppercase;color:#8F8A80;margin-bottom:6px}
.mf-cb-d p{font-size:16px;color:var(--ink-2)}
.mf-cb-d .mf-a small{color:var(--mf-pe)}.mf-cb-d .mf-a p{color:#fff}
@media (max-width:1000px){.mf-cbx{grid-template-columns:1fr}.mf-cb-r{display:none}.mf-cb-l{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.mf-cb-b{font-size:13.5px;padding:10px}.mf-cb-d{grid-template-columns:1fr}}

/* ── S4 HMI */
.mf-hm{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(24px,4vw,56px);align-items:center}
.mf-hm-panel{background:linear-gradient(180deg,#2A2D38,#1A1C24);border:1px solid #3A3E4E;border-radius:10px;padding:18px;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 50px 90px -50px rgba(255,91,26,.5);display:grid;gap:16px}
.mf-hm-screen{position:relative;height:230px;background:#06070B;border:6px solid #111319;border-radius:6px;overflow:hidden;box-shadow:inset 0 0 30px rgba(255,91,26,.08)}
.mf-hm-sc{position:absolute;inset:0;display:none;flex-direction:column;font:500 13px/1.4 var(--f-sans);color:#DADCE3}
.mf-hm-sc.mf-on{display:flex;animation:mfScr .45s steps(4)}
@keyframes mfScr{from{opacity:0;filter:brightness(2)}}
.mf-hm-bar{display:flex;justify-content:space-between;padding:6px 12px;background:#151826;font-size:12px;color:var(--mf-pe)}
.mf-hm-bar i{font-style:normal;color:#fff;background:var(--mf-o);padding:0 6px;border-radius:2px;font-size:10.5px;letter-spacing:.1em}
.mf-hm-body{flex:1;padding:12px;display:flex;flex-direction:column;gap:8px;overflow:hidden}
.mf-h-chips{display:flex;gap:6px;flex-wrap:wrap}.mf-h-chips span{border:1px solid var(--mf-o);color:var(--mf-pe);border-radius:12px;padding:2px 9px;font-size:12px}
.mf-h-res{display:grid;gap:4px}.mf-h-res b{color:#fff}.mf-h-res i{font-style:normal;padding:4px 8px;background:#11131C;border-left:2px solid #4A4F66;font-size:12px}
.mf-h-files{display:grid;gap:5px;width:62%}.mf-h-files span{display:flex;gap:8px;align-items:center;font-size:12px;padding:5px 8px;background:#11131C}.mf-h-files b{font-size:10px;background:#4A4F66;color:#fff;padding:1px 5px;border-radius:2px}.mf-h-files .mf-o b{background:var(--mf-o)}
.mf-h-cube{position:absolute;right:30px;top:58px;width:60px;height:60px;transform-style:preserve-3d;animation:mfCube 8s linear infinite}
.mf-h-cube i{position:absolute;inset:0;border:1.5px solid var(--mf-o);background:rgba(255,91,26,.05)}
.mf-h-cube i:nth-child(1){transform:translateZ(30px)}.mf-h-cube i:nth-child(2){transform:rotateY(180deg) translateZ(30px)}.mf-h-cube i:nth-child(3){transform:rotateY(90deg) translateZ(30px)}.mf-h-cube i:nth-child(4){transform:rotateY(-90deg) translateZ(30px)}.mf-h-cube i:nth-child(5){transform:rotateX(90deg) translateZ(30px)}.mf-h-cube i:nth-child(6){transform:rotateX(-90deg) translateZ(30px)}
@keyframes mfCube{from{transform:rotateX(-20deg) rotateY(0)}to{transform:rotateX(-20deg) rotateY(360deg)}}
.mf-h-note{font-size:11.5px;color:var(--mf-mut);margin-top:auto}
.mf-h-tb{width:100%;border-collapse:collapse;font-size:12px}.mf-h-tb th,.mf-h-tb td{text-align:left;padding:5px 8px;border-bottom:1px solid #22263A}.mf-h-tb th{color:#6E7286;font-weight:500}.mf-h-tb td:nth-child(2){color:var(--mf-pe)}
.mf-h-btn{align-self:flex-start;background:var(--mf-o);color:#fff;padding:5px 12px;border-radius:3px;font-size:12px}
.mf-h-rfq{display:grid;gap:5px}.mf-h-rfq span{padding:6px 10px;background:#11131C;border-left:2px solid var(--mf-o);font-size:12.5px}
.mf-h-ref{margin-top:auto;align-self:flex-start;border:2px solid var(--mf-o);color:var(--mf-o);padding:4px 10px;font:800 14px var(--f-sans);letter-spacing:.06em;transform:rotate(-4deg)}
.mf-h-lang{display:flex;gap:4px}.mf-h-lang span{border:1px solid #4A4F66;padding:2px 10px;border-radius:3px;font-size:12px}.mf-h-lang .mf-on{background:var(--mf-o);border-color:var(--mf-o);color:#fff}
.mf-h-code{font:500 12px ui-monospace,Menlo,monospace;color:var(--mf-pe);background:#11131C;padding:6px 8px}
.mf-h-tk{display:grid;gap:5px}.mf-h-tk b{color:#fff;font-size:14px}.mf-h-tk span{font-size:12.5px;padding:5px 8px;background:#11131C}.mf-h-tk .mf-o{color:var(--mf-pe);border-left:2px solid var(--mf-o)}
.mf-h-bars{flex:1;display:flex;gap:14px;align-items:flex-end;padding:0 6px;border-bottom:1px solid #4A4F66}
.mf-h-bars span{flex:1;height:var(--h);background:#4A4F66;position:relative;animation:mfGrow .8s ease}
.mf-h-bars span.mf-o{background:var(--mf-o)}
.mf-h-bars i{position:absolute;top:-18px;left:0;font-style:normal;font-size:11px;color:#DADCE3;white-space:nowrap}
@keyframes mfGrow{from{height:0}}
.mf-h-serp{background:#F5F2EE;color:#0B0C10;padding:12px;border-radius:4px;display:grid;gap:3px}.mf-h-serp small{color:#4B4E58;font-size:11.5px}.mf-h-serp b{color:var(--mf-oi);font-size:14px}.mf-h-serp span{font-size:12px;color:#4B4E58}
.mf-hm-keys{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.mf-hm-b{display:flex;flex-direction:column;align-items:center;gap:6px;background:none;border:0;color:#DADCE3;padding:4px;text-align:center}
.mf-hm-lamp{width:46px;height:46px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#4A4F66,#22263A 70%);border:3px solid #111319;box-shadow:0 3px 0 #0A0B0F;transition:.2s}
.mf-hm-b small{font:700 10.5px var(--f-sans);color:#6E7286;letter-spacing:.1em}
.mf-hm-b b{font:500 12px/1.25 var(--f-sans)}
.mf-hm-b:hover .mf-hm-lamp{background:radial-gradient(circle at 40% 35%,#6E5040,#2B1A12 70%)}
.mf-hm-b.mf-on .mf-hm-lamp{background:radial-gradient(circle at 40% 35%,#FFD0B8,#FF5B1A 55%,#C2410C);box-shadow:0 1px 0 #0A0B0F,0 0 22px rgba(255,91,26,.7);transform:translateY(2px)}
.mf-hm-b.mf-on b{color:#fff}
.mf-hm-foot{display:flex;align-items:center;gap:14px;border-top:1px solid #3A3E4E;padding-top:12px}
.mf-hm-cyc{display:flex;gap:10px;align-items:center;background:none;border:0;color:#fff;font:600 13px var(--f-sans)}
.mf-hm-cyc span{width:30px;height:30px;border-radius:50%;background:#4A4F66;border:3px solid #111319;box-shadow:0 2px 0 #000}
.mf-hm-cyc[aria-pressed="true"] span{background:var(--mf-o);box-shadow:0 0 14px rgba(255,91,26,.7)}
.mf-hm-foot small{font-size:11.5px;color:#6E7286}
.mf-hm-out{min-height:340px}
.mf-hm-d{display:none}.mf-hm-d.mf-on{display:block;animation:mfIn .4s ease}
.mf-hm-d small{font:600 12px var(--f-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--mf-pe)}
.mf-hm-d h3{font:600 clamp(24px,2.2vw,30px)/1.2 var(--f-sans);color:#fff;margin:8px 0 12px}
.mf-hm-d>p{color:var(--mf-mut);font-size:16.5px}
.mf-hm-d dl{margin:20px 0 0;display:grid;gap:12px}
.mf-hm-d dt{font:600 12px var(--f-sans);letter-spacing:.12em;text-transform:uppercase;color:#6E7286}
.mf-hm-d dd{margin:2px 0 0;color:#fff;font-size:15.5px;padding-left:12px;border-left:2px solid var(--mf-o)}
@media (max-width:1000px){.mf-hm{grid-template-columns:1fr}.mf-hm-out{min-height:0}}
@media (max-width:520px){.mf-hm-panel{padding:12px}.mf-hm-keys{gap:6px}.mf-hm-lamp{width:36px;height:36px}.mf-hm-b b{font-size:10.5px}.mf-hm-screen{height:250px}.mf-h-cube{right:14px;top:auto;bottom:40px;width:44px;height:44px}.mf-h-files{width:70%}.mf-hm-foot small{display:none}}

/* ── S5 probe bench */
.mf-pb{display:grid;grid-template-columns:1fr 300px;gap:clamp(20px,3vw,40px);align-items:start}
.mf-pb-rig{background:#0B0C10;border-radius:6px;padding:20px;color:#fff;position:relative;--mf-x:0}
.mf-pb-read{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:center;min-height:120px;margin-bottom:10px}
.mf-pb-scr{background:#05060A;border:1px solid var(--mf-ln);border-radius:4px;padding:10px 12px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.mf-pb-scr small{font:600 11px var(--f-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--mf-mut)}
.mf-pb-res{font:700 30px var(--f-sans);color:var(--mf-o);letter-spacing:.06em}
.mf-pb-res.mf-wait{color:#6E7286}
.mf-pb-w{display:none;font-size:16px;color:#DADCE3}
.mf-pb-w.mf-on{display:block;animation:mfIn .4s ease}
.mf-pb-w b{display:block;font:600 19px/1.3 var(--f-sans);color:#fff;margin-bottom:4px}
.mf-pb-rail{position:relative;height:96px;border-top:6px solid #2B2F44;margin:0 calc(100% / 12)}
.mf-pb-arm{position:absolute;top:0;left:calc(var(--mf-x) * 100% / 5);transform:translateX(-50%);transition:left .9s cubic-bezier(.5,0,.2,1);display:flex;flex-direction:column;align-items:center}
.mf-pb-arm i{width:34px;height:16px;background:#4A4F66;border-radius:0 0 4px 4px}
.mf-pb-arm b{width:4px;height:36px;background:#A3A8B8;position:relative;transition:height .35s}
.mf-pb-arm b::after{content:"";position:absolute;left:50%;bottom:-8px;transform:translateX(-50%);border:6px solid transparent;border-top-color:var(--mf-o)}
.mf-pb-rig.mf-probe .mf-pb-arm b{height:62px}
.mf-pb-bench{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;border-bottom:6px solid #2B2F44;padding-bottom:10px}
.mf-pb-p{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;background:#151826;border:1px solid #2B2F44;border-radius:4px;padding:14px 6px 12px;color:#DADCE3;font:500 12.5px/1.3 var(--f-sans);text-align:center}
.mf-pb-p svg{width:38px;height:38px}
.mf-pb-p svg *{fill:none;stroke:#E8E3DA;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}
.mf-pb-p svg .mf-o{stroke:var(--mf-o)}
.mf-pb-led{position:absolute;top:6px;right:6px;width:7px;height:7px;border-radius:50%;background:#2B2F44}
.mf-pb-p.mf-pass .mf-pb-led{background:var(--mf-o);box-shadow:0 0 8px var(--mf-o)}
.mf-pb-p.mf-on{border-color:var(--mf-o);color:#fff;background:rgba(255,91,26,.1)}
.mf-pb-cert{background:#fff;border:1px solid var(--mf-pl);border-radius:4px;position:relative;padding:0 0 4px;box-shadow:0 20px 40px -24px rgba(0,0,0,.25);transform:rotate(1.2deg)}
.mf-pb-cert::before{content:"";position:absolute;top:-9px;left:50%;width:18px;height:18px;margin-left:-9px;border-radius:50%;background:var(--mf-o);box-shadow:0 2px 0 var(--mf-oi)}
.mf-pb-ch{padding:18px 18px 10px;border-bottom:1px dashed var(--mf-pl)}
.mf-pb-ch b{display:block;font:600 17px var(--f-sans)}.mf-pb-ch span{font:600 11px var(--f-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--mf-oi)}
.mf-pb-cert p{padding:12px 18px 14px;font-size:14.5px;line-height:1.6;color:var(--ink-2)}
@media (max-width:1000px){.mf-pb{grid-template-columns:1fr}.mf-pb-cert{transform:none}}
@media (max-width:640px){.mf-pb-read{grid-template-columns:1fr}.mf-pb-bench{grid-template-columns:repeat(3,1fr)}.mf-pb-rail{display:none}.mf-pb-rig{padding:14px}}

/* ── S6 gears */
.mf-gt{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(20px,3vw,48px);align-items:center}
.mf-gt-svg{width:100%;height:auto}
.mf-gr{cursor:pointer;outline:none}
.mf-gr-sp{animation:mfSpin var(--d) linear infinite;animation-direction:var(--dir)}
@keyframes mfSpin{to{transform:rotate(360deg)}}
.mf-gr path,.mf-gr circle{fill:none;stroke:#6E7286;stroke-width:1.8;stroke-linejoin:round}
.mf-gr text{font:600 12px var(--f-sans);fill:#6E7286}
.mf-gr.mf-done path,.mf-gr.mf-done circle{stroke:#E8E3DA}
.mf-gr.mf-on path:first-child{fill:rgba(255,91,26,.14);stroke:var(--mf-o);stroke-width:2.2}
.mf-gr.mf-on circle,.mf-gr.mf-on path{stroke:var(--mf-o)}
.mf-gr.mf-on text{fill:var(--mf-pe)}
.mf-gr:hover path:first-child,.mf-gr:focus-visible path:first-child{stroke:#fff}
.mf-gt-st{grid-column:1/-1;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:6px;order:2}
.mf-gt-st button{width:100%;text-align:left;background:none;border:0;border-top:2px solid var(--mf-ln);padding:10px 0 0;color:var(--mf-mut);font:500 15px/1.3 var(--f-sans)}
.mf-gt-st button small{display:block;font-size:12px;color:#6E7286}
.mf-gt-st button.mf-on{border-top-color:var(--mf-o);color:#fff}
.mf-gt-out{min-height:300px}
.mf-gr-d{display:none}.mf-gr-d.mf-on{display:block;animation:mfIn .4s ease}
.mf-gr-d h3{font:600 24px/1.25 var(--f-sans);color:#fff;margin-bottom:14px}
.mf-gr-c{display:grid;gap:14px}
.mf-gr-c small{font:600 11.5px var(--f-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--mf-pe)}
.mf-gr-c p{color:#DADCE3;font-size:15.5px}
.mf-gr-c ul{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.mf-gr-c li{font:500 13px var(--f-sans);border:1px solid var(--mf-ln);border-radius:3px;padding:4px 10px;color:#fff}
@media (max-width:900px){.mf-gt{grid-template-columns:1fr}.mf-gt-out{min-height:0}.mf-gt-st{order:0}}
@media (max-width:560px){.mf-gt-st button{font-size:12px}.mf-gt-st button small{font-size:10.5px}}

/* ── S7 caliper */
.mf-vc{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,56px);align-items:start}
.mf-vc-vis{position:sticky;top:90px;background:#0B0C10;border-radius:6px;padding:20px;color:#fff}
.mf-vc-vis svg{width:100%;height:auto}
.mf-vc-vis>p{font-size:13px;color:var(--mf-mut);margin-top:10px}
.mf-vc-disp{display:inline-flex;align-items:baseline;gap:10px;background:#1A1D18;border:2px solid #3A3E4E;border-radius:4px;padding:8px 14px;margin-bottom:6px}
.mf-vc-disp small{font:600 10.5px var(--f-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--mf-mut)}
.mf-vc-disp b{font:600 34px/1 ui-monospace,Menlo,monospace;color:var(--mf-o);font-variant-numeric:tabular-nums}
.mf-vc-disp em{font-style:normal;font-size:13px;color:#DADCE3}
.mf-vc-beam{fill:#1C1F2B;stroke:#A3A8B8;stroke-width:1.5}
.mf-vc-tk path{stroke:#E8E3DA;stroke-width:1.2}
.mf-vc-tk text{font:600 11px var(--f-sans);fill:var(--mf-mut)}
.mf-vc-jaw{fill:#2B2F44;stroke:#A3A8B8;stroke-width:1.5}
.mf-vc-slide{transition:transform .8s cubic-bezier(.4,1.3,.5,1)}
.mf-vc-sl{fill:rgba(255,91,26,.18);stroke:var(--mf-o);stroke-width:1.8}
.mf-vc-zero{stroke:var(--mf-o);stroke-width:2.5}
.mf-vc-slide text{font:700 10px var(--f-sans);fill:var(--mf-pe);letter-spacing:.12em}
.mf-vc-cap{display:none}
.mf-vc-rows{display:grid;gap:4px}
.mf-vc-r{padding:14px 0;border-top:1px solid var(--mf-pl)}
.mf-vc-h{display:flex;justify-content:space-between;gap:10px;align-items:baseline}
.mf-vc-h b{font:600 16px var(--f-sans)}
.mf-vc-h output{font:700 13px var(--f-sans);color:var(--mf-oi);background:#FFF1EA;padding:2px 8px;border-radius:3px}
.mf-vc-r input{width:100%;margin:12px 0 8px;accent-color:var(--mf-o);height:22px;cursor:pointer}
.mf-vc-ends{display:grid;grid-template-columns:1fr 1fr;gap:16px;font-size:13.5px;line-height:1.4;color:#8F8A80}
.mf-vc-ends .mf-a{text-align:right}
.mf-vc-ends .mf-on{color:#0B0C10;font-weight:500}
@media (max-width:900px){.mf-vc{grid-template-columns:1fr}.mf-vc-vis{position:relative;top:0}}

/* ── S8 truck */
.mf-tk{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(20px,3vw,48px);align-items:start}
.mf-tk-svg{width:100%;height:auto;margin-bottom:14px}
.mf-tk-truck{transition:transform 1.2s cubic-bezier(.6,0,.4,1)}
.mf-tk.mf-go .mf-tk-truck{transform:translateX(520px)}
.mf-tk-box{fill:#0E1018;stroke:#E8E3DA;stroke-width:2}
.mf-tk-cab{fill:#151826;stroke:#E8E3DA;stroke-width:2}
.mf-tk-win{fill:rgba(255,167,127,.15);stroke:var(--mf-pe);stroke-width:1.4}
.mf-tk-wh{fill:#05060A;stroke:#E8E3DA;stroke-width:3}
.mf-tk-door{stroke:var(--mf-o);stroke-width:3;transform-origin:140px 40px;transform:rotateY(0);transition:opacity .4s}
.mf-tk-gr{stroke:#4A4F66;stroke-width:2;stroke-dasharray:10 8}
.mf-tk-lb{font:600 12.5px var(--f-sans);fill:var(--mf-mut)}.mf-tk-lb tspan{fill:var(--mf-o)}
.mf-tk-s rect{fill:none;stroke:#2B2F44;stroke-dasharray:3 4}
.mf-tk-s path{stroke:transparent}
.mf-tk-s text{font:700 14px var(--f-sans);fill:#2B2F44}
.mf-tk-s.mf-on rect{fill:#C9A57A;stroke:#7A5E40;stroke-dasharray:none;animation:mfDrop .5s cubic-bezier(.3,1.5,.5,1)}
.mf-tk-s.mf-on path{stroke:#7A5E40;stroke-width:1.2}
.mf-tk-s.mf-on text{fill:#0B0C10}
@keyframes mfDrop{from{transform:translateY(-30px);opacity:0}}
.mf-tk-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.mf-tk-c{width:100%;height:100%;display:flex;gap:10px;align-items:flex-start;text-align:left;background:#0E1018;border:1px solid var(--mf-ln);border-radius:4px;padding:10px 12px;color:#DADCE3;font:500 13.5px/1.4 var(--f-sans)}
.mf-tk-ic{flex:none;width:28px;height:24px;display:grid;place-items:center;background:#C9A57A;color:#0B0C10;font:700 12px var(--f-sans);border-radius:2px;box-shadow:inset 0 0 0 1.5px #7A5E40}
.mf-tk-c em{margin-left:auto;font-style:normal;font:600 11px var(--f-sans);color:var(--mf-pe);white-space:nowrap}
.mf-tk-c[aria-pressed="true"]{border-color:var(--mf-o);color:#fff}
.mf-tk-c[aria-pressed="true"] em{color:#fff}
.mf-tk-c[aria-pressed="true"] .mf-tk-ic{background:var(--mf-o);box-shadow:none;color:#fff}
.mf-tk-note{background:#F5F2EE;color:#0B0C10;border-radius:4px;padding:22px;position:relative;box-shadow:0 40px 80px -40px rgba(255,91,26,.5);background-image:repeating-linear-gradient(180deg,transparent 0 27px,rgba(0,0,0,.05) 27px 28px)}
.mf-tk-nh{display:flex;justify-content:space-between;align-items:baseline;border-bottom:2px solid #0B0C10;padding-bottom:10px;margin-bottom:12px}
.mf-tk-nh b{font:700 19px var(--f-sans)}.mf-tk-nh span{font:600 11px var(--f-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--mf-oi)}
.mf-tk-note ol{margin:0;padding-left:20px;display:grid;gap:9px}
.mf-tk-note li::marker{color:var(--mf-o);font-weight:700}
.mf-tk-note li b{display:block;font:600 15px var(--f-sans)}
.mf-tk-note li span{font-size:13.5px;color:var(--ink-2)}
.mf-tk-sig{display:flex;align-items:flex-end;gap:10px;margin-top:16px;font:600 11px var(--f-sans);color:#6B675F;text-transform:uppercase;letter-spacing:.1em}
.mf-tk-sig i{flex:1;height:22px;border-bottom:1.5px solid #0B0C10;background:linear-gradient(transparent,transparent)}
.mf-tk-sig i::after{content:"";display:block;width:0;height:20px;border-bottom:2px solid var(--mf-o);border-radius:0 0 40% 60%;transition:width 1s}
.mf-tk.mf-full .mf-tk-sig i::after{width:70%}
@media (max-width:900px){.mf-tk{grid-template-columns:1fr}}
@media (max-width:520px){.mf-tk-list{grid-template-columns:1fr}}

@media (prefers-reduced-motion:reduce){.mf-bp *,.mf-tu *,.mf-pj *,.mf-cbx *,.mf-hm *,.mf-pb *,.mf-gt *,.mf-vc *,.mf-tk *{animation:none!important;transition:none!important}}

/* QA: line each problem card up with its numbered plug, as the fixes on the right already are */
@media (min-width:1001px){
 .mf-cb-l,.mf-cb-r{align-self:stretch;grid-template-rows:.175fr repeat(4,1fr) .175fr;align-items:center;gap:0;padding:0}
 .mf-cb-l::before,.mf-cb-l::after,.mf-cb-r::before,.mf-cb-r::after{content:""}
}
/* QA: valve numbers and pipe labels were ~8px on phones */
@media (max-width:700px){.mf-pv text{font-size:30px}.mf-pj-t{font-size:22px;letter-spacing:.04em}}
/* QW laptop widths: stamp smaller so it covers less of the spec table */
@media (min-width:901px) and (max-width:1300px){.mf-bp-stamp{padding:4px 9px;bottom:-10px;right:-6px}.mf-bp-stamp b{font-size:13px}.mf-bp-stamp small{font-size:10px}}

/* phones, larger small text: single-column grids must be able to shrink (they pushed the control panel and probe rig past the screen edge); stage tabs in three columns */
@media (max-width:600px){.mf-hm,.mf-pb,.mf-gt{grid-template-columns:minmax(0,1fr)}.mf-hm-keys{grid-template-columns:repeat(4,minmax(0,1fr))}.mf-hm-b{min-width:0}.mf-hm-b b{overflow-wrap:break-word}.mf-pb-bench{grid-template-columns:repeat(3,minmax(0,1fr))}.mf-gt-st{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:14px}.mf-tk-note li span{display:block;line-height:1.5;margin-top:2px}.mf-hm-screen{height:290px}.mf-hm-panel{padding:10px}.mf-hm-keys{gap:4px}.mf-hm-b{padding:4px 1px}}
