/* Compact mechanical studies, cut from the same navy / red / aluminum world. */
.support-services > .bench-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.support-services > .bench-card > p{flex:1}
.bench-mechanism{--bench-extension:0px;--bench-crank:0deg;--bench-load:0px;--bench-compression:1;--bench-led-opacity:.22;--bench-circuit:1;--bench-switch-travel:0px;position:relative;display:block;flex:none;width:100%;min-height:120px;max-height:205px;aspect-ratio:280/176;margin:21px 0 0;padding:0;overflow:hidden;border:1px solid #d0d9e1;border-bottom-color:#9badbe;background:linear-gradient(135deg,#f7f8f9 10%,#eaf0f3 100%);isolation:isolate;transition:border-color .3s,background .3s}
.bench-mechanism::before{content:'';position:absolute;left:-1px;top:-1px;width:28px;height:3px;background:var(--red);transform:scaleX(.42);transform-origin:left;transition:transform .4s var(--ease);z-index:1}
.bench-mechanism::after{content:'';position:absolute;left:8px;bottom:8px;width:8px;height:8px;border-left:1px solid #9badbe;border-bottom:1px solid #9badbe;pointer-events:none}
.bench-mechanism > .bench-drawing{display:block;width:100%;height:100%;max-height:205px;fill:none;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;pointer-events:none}
.bench-drawing *,.process-bench svg *{vector-effect:non-scaling-stroke}
.bench-mechanism[data-bench-state=preview]{--bench-extension:9px;--bench-crank:66deg;--bench-load:7px;--bench-compression:.9125;--bench-led-opacity:.66;--bench-circuit:.4;--bench-switch-travel:4px;border-color:#9badbe}
.bench-mechanism[data-bench-state=engaged]{--bench-extension:18px;--bench-crank:225deg;--bench-load:16px;--bench-compression:.8;--bench-led-opacity:1;--bench-circuit:0;--bench-switch-travel:8px;border-color:var(--navy)}
.bench-mechanism[data-bench-state=preview]::before,.bench-mechanism[data-bench-state=engaged]::before{transform:scaleX(1)}
.bench-mechanism:focus-visible{outline:3px solid var(--red);outline-offset:4px}
.bench-switch{position:absolute;right:0;bottom:0;width:44px;height:44px;display:grid;place-items:center;border-top:1px solid #cad4de;border-left:1px solid #cad4de;background:#f5f7f8e8;color:#647c94;transition:color .25s,background .25s}
.bench-switch > svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.3}
.bench-switch-knob{fill:currentColor;stroke:none;transform:translateX(var(--bench-switch-travel));transition:transform .38s var(--ease)}
.bench-mechanism[aria-pressed=true] .bench-switch{color:var(--red);background:#fff}
.bench-leg-extension{transform:translateY(var(--bench-extension));transition:transform 1.05s cubic-bezier(.3,.05,.16,1)}
.bench-crank{transform-origin:173px 69px;transform:rotate(var(--bench-crank));transition:transform 1.05s cubic-bezier(.3,.05,.16,1)}
.bench-foot-shadow{opacity:.08;transform-origin:135px 164px;transform:scaleX(.75);transition:opacity 1s,transform 1s}
.bench-mechanism[data-bench-state=preview] .bench-foot-shadow{opacity:.13;transform:scaleX(.9)}
.bench-mechanism[data-bench-state=engaged] .bench-foot-shadow{opacity:.22;transform:scaleX(1)}
.bench-current{stroke-dasharray:1;stroke-dashoffset:var(--bench-circuit);transition:stroke-dashoffset .75s var(--ease)}
.bench-lens{opacity:.15;transition:opacity .45s}
.bench-led{fill:#ff7460;stroke:#de4b47;stroke-width:.7;opacity:var(--bench-led-opacity);transition:opacity .32s calc(var(--led-order)*35ms),fill .35s}
.bench-mechanism[data-bench-state=engaged] .bench-led{fill:#ffb49b}
.bench-mechanism[data-bench-state=preview] .bench-lens{opacity:.45}
.bench-mechanism[data-bench-state=engaged] .bench-lens{opacity:.8}
.bench-circuit-switch{transform-origin:164px 145px;transform:rotate(0);transition:transform .45s var(--ease)}
.bench-mechanism[data-bench-state=preview] .bench-circuit-switch{transform:rotate(18deg)}
.bench-mechanism[data-bench-state=engaged] .bench-circuit-switch{transform:rotate(25.65deg)}
.bench-spring-load{transform:translateY(var(--bench-load));transition:transform .85s cubic-bezier(.22,.72,.17,1)}
.bench-spring-bellows{transform-origin:140px 138px;transform:scaleY(var(--bench-compression));transition:transform .85s cubic-bezier(.22,.72,.17,1)}
.bench-spring-damper{transform-origin:101px 130px;transform:scaleY(var(--bench-compression));transition:transform .85s cubic-bezier(.22,.72,.17,1)}

/* One material sample follows Inspect → Agree → Repair. Text and tab state stay upstream. */
.process-bench{width:min(100%,360px);aspect-ratio:3/1;margin-top:27px;pointer-events:none}
.process-bench > svg{width:100%;height:100%;display:block;fill:none;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;overflow:visible}
.process-bench-probe,.process-bench-scope,.process-bench-marks,.process-bench-patch,.process-bench-fastener{opacity:0;transition:opacity .2s}
.process-bench-probe{transform:translateX(0)}
.process-bench-scope{stroke-dasharray:1;stroke-dashoffset:0}
.process-bench-marks{transform-origin:180px 60px}
.process-bench-fault{transition:opacity .3s}
.process-bench[data-stage="0"] .process-bench-probe,.process-bench[data-stage="1"] .process-bench-scope,.process-bench[data-stage="1"] .process-bench-marks,.process-bench[data-stage="2"] .process-bench-patch,.process-bench[data-stage="2"] .process-bench-fastener{opacity:1}
.process-bench[data-stage="2"] .process-bench-fault{opacity:0}

@media(min-width:651px) and (max-width:850px){.bench-mechanism{min-height:130px}.bench-switch{width:44px;height:44px}.process-bench{margin-top:21px}}
@media(max-width:650px){
  .bench-mechanism{width:calc(100% + 44px);min-height:140px;max-height:205px;margin-top:19px;margin-bottom:3px}
  .support-services > .bench-card:last-child .bench-mechanism{margin-bottom:0}
  .process-bench{width:min(100%,360px);margin-top:19px}
}
@media(prefers-reduced-motion:reduce){.bench-mechanism,.bench-mechanism *,.bench-mechanism::before,.process-bench *{transition:none!important;animation:none!important}}
.motion-off .bench-mechanism,.motion-off .bench-mechanism *,.motion-off .bench-mechanism::before,.motion-off .process-bench *{transition:none!important;animation:none!important}
@media(forced-colors:active){
  .bench-mechanism{border-color:ButtonText;background:Canvas}
  .bench-switch{background:ButtonFace;color:ButtonText;border-color:ButtonText}
  .bench-mechanism[aria-pressed=true] .bench-switch{background:Highlight;color:HighlightText}
  .bench-drawing,.process-bench svg{forced-color-adjust:none}
}
