/* One circuit, separate material responses. Fixed grades retain the photograph. */
.hero-scene{z-index:0;isolation:isolate}
.circuit-ready .hero-scene{transform:translate3d(var(--hero-x),calc(var(--hero-y) + var(--hero-scroll)),0) scale(1.035);will-change:transform}
.hero-content,.hero-bottom{z-index:1}
.circuit-ready .hero-photo,.circuit-ready .hero-light-photo{transform:none;will-change:auto}
.circuit-ready .hero-photo,.circuit-ready .shop-photo{filter:none}
.circuit-shadow,.circuit-hero-dark,.circuit-shop-dark{position:absolute;inset:0;pointer-events:none;user-select:none}
.circuit-hero-dark{z-index:1;opacity:.4888;will-change:opacity}
.circuit-hero-dark-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 48%;filter:brightness(.24) saturate(.64) contrast(1.08)}
.circuit-hero-shadow{z-index:2;background:radial-gradient(ellipse 90% 110% at 48% 38%,transparent 18%,#03080b24 64%,#02060990 100%);opacity:.1857}
.circuit-tube-left,.circuit-tube-right{
  z-index:3;background:#171711;
  mask-size:cover;mask-repeat:no-repeat;mask-position:50% 48%;
  -webkit-mask-size:cover;-webkit-mask-repeat:no-repeat;-webkit-mask-position:50% 48%;
}
.circuit-tube-left{mask-image:url('assets/pit-tube-left-mask-v3.svg');-webkit-mask-image:url('assets/pit-tube-left-mask-v3.svg');opacity:.4864}
.circuit-tube-right{mask-image:url('assets/pit-tube-right-mask-v3.svg');-webkit-mask-image:url('assets/pit-tube-right-mask-v3.svg');opacity:.4332}
.circuit-tube-left-spill,.circuit-tube-right-spill{z-index:4;background-size:cover;background-repeat:no-repeat;background-position:50% 48%;opacity:.04}
.circuit-tube-left-spill{background-image:url('assets/pit-tube-left-spill-v4.svg')}
.circuit-tube-right-spill{background-image:url('assets/pit-tube-right-spill-v4.svg')}
.hero-dust{opacity:.4992}
.circuit-ready .hero-light{z-index:5;opacity:0;transition:none}
.circuit-ready .hero-light-photo{filter:brightness(1.25) saturate(.96)}
.circuit-shop-dark{z-index:1;opacity:.3956;will-change:opacity}
.circuit-shop-dark-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;filter:brightness(.34) saturate(.72) contrast(1.06)}
.circuit-shop-shadow{z-index:1;background:radial-gradient(ellipse at 69% 50%,transparent,#03090e38 85%);opacity:.3588}
.circuit-ready .shop-light{opacity:.3888;transition:none}
.circuit-material-shadow{z-index:0;background:radial-gradient(ellipse 100% 95% at 63% -12%,#14251e06 0%,#13211d82 63%,#070f13b8 100%);opacity:.2668}
.work-order,.questions{isolation:isolate}
.work-order>.circuit-material-shadow,.questions>.circuit-material-shadow,.visit>.circuit-material-shadow{z-index:-1}
.work-order>.circuit-material-shadow{opacity:.23}
.questions>.circuit-material-shadow{opacity:.1564}
.visit>.circuit-material-shadow{background:radial-gradient(ellipse at 47% 15%,#080c1108,#05090cb0 85%);opacity:.276}
.circuit-ready .visit:after,.circuit-ready .shop-threshold:before{opacity:.8}
.shop-threshold>.circuit-material-shadow{background:#080f13;opacity:.2852}
.shop-threshold i{z-index:1}
.circuit-ready .bench-object .brake-photo{filter:drop-shadow(12px 22px 10px #41371e30)}
html.circuit-ready .brake-stage.bench-lit .inspection-light,html.circuit-ready .brake-stage:focus-within .inspection-light{opacity:var(--inspection-level,0)}
html[data-workshop-power="off"] .brake-stage .inspection-light{opacity:0}
.circuit-paper-shadow{z-index:0;background:linear-gradient(125deg,transparent 15%,#182117 95%);opacity:.0736}
.process-detail>.circuit-paper-shadow,.wo-docket>.circuit-paper-shadow{z-index:-1}
.circuit-ready .pw-objects{filter:none}

/* The photograph and all illumination share one crop and one composited plane. */
.film-light-canvas{position:absolute;inset:0;display:block;pointer-events:none;z-index:1}
.film-lit>.responsive-image>.hero-photo,.film-lit>.responsive-image>.shop-photo{opacity:0}
.film-lit>.circuit-hero-dark,.film-lit>.circuit-shop-dark,.film-lit>.circuit-hero-shadow,.film-lit>.circuit-shop-shadow,
.film-lit>.circuit-tube-left,.film-lit>.circuit-tube-right,.film-lit>.circuit-tube-left-spill,.film-lit>.circuit-tube-right-spill,
.film-lit>.hero-light,.film-lit>.shop-light{display:none}
.hero-scene.film-lit:after{z-index:2;pointer-events:none}
.hero-scene.film-lit .hero-dust{z-index:2}
.the-shop.film-lit .film-light-canvas{z-index:0}
@media(forced-colors:active){.film-light-canvas{display:none!important}.film-lit>.responsive-image>.hero-photo,.film-lit>.responsive-image>.shop-photo{opacity:1}}

/* One prepainted soft surface expands from the filament; no changing mask or ring. */
.power-return{position:fixed;inset:0;pointer-events:none;user-select:none;z-index:45;opacity:0;visibility:hidden;overflow:hidden}
.power-return-air{position:absolute;left:0;top:0;width:320px;height:320px;pointer-events:none;border-radius:50%;transform-origin:50% 50%;background:radial-gradient(circle,#fff0d34a 0%,#f4d3a13a 12%,#e3b47324 34%,#bc874113 53%,transparent 72%);transform:translate3d(-160px,-160px,0) scale(.001)}
html[data-circuit-phase="restoring"] .power-return{visibility:visible}
html[data-circuit-phase="restoring"] .power-return-air{will-change:transform}

/* An angled reflector, a real socket, and a separate ball-chain switch. */
.work-lamp-fixture{--lamp-width:132px;--pull-x:0px;--pull-y:0px;--lamp-angle:0deg;--chain-x:128px;--chain-home:195px;position:absolute;z-index:5;top:103px;right:calc(var(--gutter) + 16px);width:var(--lamp-width);height:calc(var(--lamp-width)*1.9);isolation:isolate}
.work-lamp-fixture:before{content:'';position:absolute;left:94.431%;top:-150px;width:4px;height:calc(150px + var(--lamp-width)*.075);background:linear-gradient(90deg,#0a0d0b,#45483d 45%,#141b17 83%);box-shadow:1px 0 1px #0008;z-index:-1;transform:rotate(-1.5deg);transform-origin:50% 100%;pointer-events:none}
button.work-lamp{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;border-radius:0;background:none;transform:none;filter:none;overflow:visible;isolation:auto;touch-action:manipulation;color:var(--cream);-webkit-tap-highlight-color:transparent}
button.work-lamp:before{content:none}
.work-lamp .lamp-head{display:block;position:absolute;inset:0 0 auto;height:calc(var(--lamp-width)*719/768);transform:rotate(var(--lamp-angle));transform-origin:94.431% 8.017%;filter:drop-shadow(5px 7px 4px #0009);pointer-events:none}
.work-lamp-photo{display:block;position:relative;width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none;z-index:1;filter:brightness(.94) saturate(.94)}
.work-lamp .lamp-halo{position:absolute;left:51.897%;top:70.086%;width:240%;height:220%;translate:-50% -50%;border-radius:50%;background:radial-gradient(ellipse,#ffe9bd61 0%,#ffc47020 26%,#e0923010 43%,transparent 68%);opacity:0;filter:blur(7px);z-index:0}
.work-lamp .lamp-bowl-light{position:absolute;left:47.054%;top:73.621%;width:93%;height:42%;translate:-50% -50%;rotate:16deg;border-radius:50%;background:radial-gradient(ellipse at 52% 37%,#fff0c5c9 0%,#ffc66b63 45%,#ce7c2615 73%,transparent 91%);mix-blend-mode:screen;opacity:0;z-index:2}
.work-lamp .lamp-glass-light{position:absolute;left:51.897%;top:68.966%;width:25%;height:25%;translate:-50% -50%;rotate:14deg;border-radius:50%;background:radial-gradient(ellipse at 50% 50%,#fff6d9 0%,#ffe9b7d1 13%,#ffd38951 36%,transparent 72%);mix-blend-mode:screen;filter:blur(.4px);opacity:0;z-index:3}
.work-lamp .lamp-filament-light{position:absolute;left:51.897%;top:70.086%;width:9%;height:2%;translate:-50% -50%;rotate:16deg;border-bottom:1.4px solid #fff6d8;border-radius:0 0 50% 50%;box-shadow:0 2px 3px #fff1b3,0 0 12px 3px #ffb84c8c;opacity:0;z-index:4}
.lamp-chain{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:0}
.lamp-chain-shadow{stroke:#080c0a;stroke-width:3;stroke-linecap:round;transform:translate(1px,1px)}
.lamp-chain-core{stroke:#87816c;stroke-width:.75}
.lamp-chain-path{stroke:url('#chain-metal');stroke-width:2.4;stroke-dasharray:.1 3.7;stroke-linecap:round}
.work-lamp .lamp-pull-hit{display:flex;align-items:center;justify-content:center;position:absolute;left:calc(var(--chain-x) - 24px + var(--pull-x));top:calc(var(--chain-home) - 9px + var(--pull-y));width:48px;height:54px;opacity:1;touch-action:none;text-shadow:none;z-index:5;transition:none}
.work-lamp .lamp-pull-grip{display:block;position:relative;align-self:flex-start;margin-top:7px;width:13px;height:31px;opacity:1;border:1px solid #2b1e13;border-radius:4px 4px 7px 7px;background:linear-gradient(90deg,#64271b 0%,#b74f32 26%,#c46442 41%,#903823 69%,#48241b);box-shadow:inset 1px 0 #e1a1677a,inset -2px 0 #1a120e5c,2px 3px 3px #0009;transform:rotate(calc(var(--lamp-angle)*-2));transform-origin:50% 0;transition:filter .2s}
.lamp-pull-grip:before{content:'';position:absolute;left:2px;right:2px;top:-4px;height:6px;border-radius:2px;background:linear-gradient(90deg,#756446,#dac99b 40%,#75694e);box-shadow:0 1px #1b170e}
.lamp-pull-grip:after{content:'';position:absolute;inset:8px 3px 6px;border-left:1px solid #341f1680;border-right:1px solid #e69e5959;border-radius:2px}
.work-lamp .work-lamp-label{display:block;position:absolute;top:calc(var(--chain-home) + 43px);right:-6px;padding-top:7px;border-top:1px solid #f2e7ce45;font:700 9px/1 'Pit Sans',sans-serif;letter-spacing:.13em;white-space:nowrap;opacity:.8;color:var(--cream);text-shadow:0 1px 3px #000,0 0 8px #0009;transition:opacity .15s}
.work-lamp-fixture[data-pulling="true"] .work-lamp-label{opacity:0}
.work-lamp:hover .lamp-pull-grip,.work-lamp:focus-visible .lamp-pull-grip{filter:brightness(1.22)}
.work-lamp-fixture[data-pull-ready="true"] .lamp-pull-grip{box-shadow:inset 1px 0 #edb573ab,inset -2px 0 #1a120e5c,0 0 0 2px #f5d99955,2px 4px 5px #000b}
button.work-lamp:focus-visible{outline:none}
.work-lamp:focus-visible .lamp-pull-hit{outline:2px solid #f5dc9c;outline-offset:3px;border-radius:12px}
html:not(.js) .work-lamp-fixture{display:none}
@media(hover:hover) and (pointer:fine){html.pit-pointer .work-lamp,html.pit-pointer .work-lamp *{cursor:grab}html.pit-pointer .work-lamp-fixture[data-pulling="true"] .work-lamp,html.pit-pointer .work-lamp-fixture[data-pulling="true"] .work-lamp *{cursor:grabbing}}
.pit-cursor[data-mode="pull"]{opacity:0}
@media(min-width:1800px){.work-lamp-fixture{--lamp-width:158px;top:119px;right:calc(var(--gutter) + 24px)}}
@media(max-width:1100px){.circuit-shop-dark-image{object-position:60% center}.work-lamp-fixture{--lamp-width:117px;top:96px;right:calc(var(--gutter) + 13px)}}
@media(max-width:760px){
  .work-lamp-fixture{--lamp-width:94px;top:81px;right:32px}
  .work-lamp .lamp-pull-grip{width:12px;height:29px}
  .circuit-tube-left,.circuit-tube-right{mask-position:50% 40%;-webkit-mask-position:50% 40%}
  .circuit-tube-left-spill,.circuit-tube-right-spill{background-position:50% 40%}
  .circuit-hero-dark-image{object-position:50% 40%}
  .circuit-shop-dark-image{object-position:50% center}
  .circuit-shop-dark,.circuit-shop-shadow{bottom:auto;height:var(--shop-photo-height,100%)}
}
html[data-motion="quiet"] .hero-scene{transform:none;will-change:auto}
html[data-motion="quiet"] .power-return{display:none}
@media(prefers-reduced-motion:reduce){
  .circuit-ready .hero-scene{transform:none;will-change:auto}
  .power-return{display:none}
  .work-lamp *{transition:none!important}
}
@media(forced-colors:active){
  .circuit-shadow,.circuit-hero-dark,.circuit-shop-dark,.power-return,.lamp-halo,.lamp-bowl-light,.lamp-glass-light,.lamp-filament-light{display:none!important}
  .work-lamp-fixture:before{background:CanvasText}
  button.work-lamp{forced-color-adjust:auto}
  .work-lamp .lamp-pull-grip{background:ButtonFace;border:2px solid ButtonText;box-shadow:none}
  .work-lamp[aria-pressed="true"] .lamp-pull-grip{background:Highlight;border-color:Highlight}
  .work-lamp:focus-visible .lamp-pull-hit{outline-color:Highlight}
  .lamp-chain-path{stroke:CanvasText}.lamp-chain-shadow,.lamp-chain-core{stroke:none}
  .circuit-ready .hero-photo,.circuit-ready .shop-photo,.circuit-ready .bench-object .brake-photo,.circuit-ready .pw-objects{filter:none}
}
