/* Slide 3: connected process photographs and notes on the existing industrial whiteboard. */
.deck-panel.board-deck,.board-standalone{position:fixed;inset:0;z-index:1250;display:block;padding:0;overflow:hidden;background:#182733;color:#e6edf1}
.board-standalone-open{overflow:hidden}.board-viewport{position:absolute;inset:0;overflow:hidden;touch-action:none;cursor:grab;background:#526570}.board-viewport:active{cursor:grabbing}
.board-viewport.is-focused{touch-action:none}.board-zoom-reset:not([hidden]){position:absolute;right:clamp(12px,2vw,24px);bottom:clamp(12px,2vw,24px);z-index:5;min-height:44px;padding:9px 15px;border:1px solid #b6cad6a6;background:#193444e8;color:#eff6f8;box-shadow:0 4px 16px #0c243955;font:600 13px/1.4 var(--font);cursor:pointer}.board-zoom-reset:hover{background:#25495b}
.board-deck .board-viewport{top:var(--board-header)}
.board-deck .board-camera,.board-standalone .board-camera,.board-transition,.board-dash-back{background:linear-gradient(180deg,#233e501f,#102d3b3d),url('board-shopfloor-v25.webp') center / cover no-repeat #526570}
.board-camera{position:absolute;inset:0;transform-origin:0 0}.board-camera.is-approaching{transition:transform .28s cubic-bezier(.18,.72,.2,1)}
.board-camera:before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#122b3930,transparent 16%,transparent 84%,#122b3930);box-shadow:inset 0 8px 18px #102b3a28}
.board-setting{position:absolute;z-index:1;left:0;top:0;transform-origin:0 0;will-change:transform}.board-setting.is-moving{transition:transform .42s cubic-bezier(.2,.7,.2,1)}
.board-setting:before{content:'';position:absolute;left:3%;right:3%;top:996px;height:61px;pointer-events:none;background:radial-gradient(ellipse at 50% 50%,#10212b59,transparent 68%)}
.board-world{position:absolute;left:0;top:12px;transform-origin:0 0;width:1440px;height:900px;border:12px solid #a4b3ba;border-radius:2px;background:repeating-linear-gradient(0deg,#6f879204 0 1px,transparent 1px 4px),linear-gradient(112deg,#f1f2ec,#dfe4e1 48%,#eaf0eb);box-shadow:inset 0 0 0 2px #667c8955,inset 0 2px 2px #ffffffe6,3px 5px 8px #142c3a66,14px 23px 30px #172c3540}
.board-world:before{content:'';position:absolute;inset:-12px;border:2px solid #c3cdd0;border-right-color:#6a8593;border-bottom-color:#5e7889;pointer-events:none;box-shadow:inset 0 1px 1px #eff6f7b3;background:radial-gradient(circle at 5px 5px,#415e6f 0 1px,#cdd7d9 2px 3px,transparent 4px),radial-gradient(circle at calc(100% - 5px) 5px,#415e6f 0 1px,#cdd7d9 2px 3px,transparent 4px),radial-gradient(circle at 5px calc(100% - 5px),#415e6f 0 1px,#cdd7d9 2px 3px,transparent 4px),radial-gradient(circle at calc(100% - 5px) calc(100% - 5px),#415e6f 0 1px,#cdd7d9 2px 3px,transparent 4px)}
.board-plaque{position:absolute;z-index:2;left:28px;top:18px;width:860px;padding:9px 16px 12px;border:1px solid #c0c9c766;background:linear-gradient(110deg,#faf9f2,#eeeee7);color:#294554;box-shadow:1px 2px 3px #283e492e;transform:rotate(-.5deg)}
.board-plaque:before{content:'';position:absolute;left:43px;top:-7px;width:68px;height:16px;background:repeating-linear-gradient(90deg,#c5d4cf77 0 3px,#e8eee588 3px 4px);transform:rotate(-3deg);box-shadow:0 1px 1px #43595e20}
.board-plaque p{font:600 10px/1.5 var(--font);letter-spacing:.15em;color:#607987}.board-plaque h1{font:600 29px/1.18 var(--heading);margin:6px 0 0!important;max-width:none!important;color:#294554}
.board-photo,.board-note,.board-sticky,.board-about,.board-next-note{position:absolute;z-index:2;border:1px solid #c2cac65c;border-radius:0;background:linear-gradient(110deg,#faf9f2,#e8e9e2);color:#294554;text-align:left;white-space:normal;font-family:var(--font);cursor:pointer;box-shadow:1px 2px 2px #233a443d,3px 6px 8px #30434b2e;transform:rotate(var(--tilt,0deg));transition:box-shadow .18s}
.board-photo{width:300px;height:212px;padding:10px 10px 8px}.board-photo img{display:block;width:278px;height:120px;object-fit:cover;filter:saturate(.62);border:1px solid #617b872e}
.board-photo-caption{display:block;padding-top:6px}.board-photo-caption small{display:block;font-size:8px;line-height:1.5;font-weight:600;letter-spacing:.1em;color:#617a85}.board-photo-caption strong{display:block;font-size:12.8px;line-height:1.25;font-weight:700;margin-top:4px}
.board-note{width:220px;height:120px;padding:14px 15px 10px;background:linear-gradient(99deg,transparent 48%,#7988990c 49.5%,#ffffff55 50.5%,transparent 52%),linear-gradient(115deg,#f3f3eb,#e1e6df)}
.board-note strong{display:block;font-size:12.4px;line-height:1.25;font-weight:700}.board-note>span:last-child{display:block;margin-top:6px;font-size:9.6px;line-height:1.4;color:#49626f}
.board-sticky{width:150px;height:88px;padding:12px 12px 10px;border-top:1px solid #eef3ef99;background:linear-gradient(180deg,#b1c6ce 0 18%,#d0dfe0 24%,#bfd1d4);color:#355468}
.board-sticky:nth-of-type(even){background:linear-gradient(180deg,#d0d4c9 0 18%,#ecebdd 24%,#dfe2d4)}
.board-sticky strong{display:block;font-size:10.1px;line-height:1.25;font-weight:800;letter-spacing:.035em}.board-sticky span{display:block;margin-top:5px;font-size:10px;line-height:1.4}.board-sticky i{position:absolute;bottom:0;right:0;width:22px;height:16px;background:linear-gradient(140deg,transparent 42%,#ffffff66 70%,#75898e26);border-radius:0 0 2px 80%}
.board-photo:hover,.board-photo.is-selected,.board-photo.is-related,.board-note:hover,.board-note.is-related,.board-sticky:hover,.board-sticky.is-related,.board-about:hover,.board-next-note:hover{box-shadow:1px 2px 3px #17374655,3px 8px 9px #253e4a33,0 0 0 1px #648da4}
.board-threads{position:absolute;inset:0;z-index:0;width:100%;height:100%;pointer-events:none;overflow:visible}.board-threads path{fill:none;stroke:#638494;stroke-width:2.2;stroke-linecap:round;opacity:.74;filter:drop-shadow(.7px 1px .5px #35526944);transition:stroke .16s,opacity .16s}.board-threads path.is-lit{opacity:1;stroke:#355f79;stroke-width:2.8}.board-threads .board-op-thread{stroke-width:1.4;stroke:#7c929c;opacity:.62}
.board-focus-area{position:absolute;inset:0;z-index:1;width:100%;height:100%;border:0;padding:0;background:transparent;box-shadow:none;cursor:zoom-in}.board-setting.is-focused .board-focus-area{cursor:zoom-out}.board-focus-area:active{cursor:grabbing}
.board-pins{position:absolute;inset:0;z-index:4;pointer-events:none}.board-pin{position:absolute;width:14px;height:14px;border:1px solid #3b6076;border-radius:50%;background:radial-gradient(circle at 30% 24%,#c8d8df,#6b94a8 34%,#31596e 76%,#1c4056);box-shadow:1px 2px 2px #183b4d5c,inset 0 1px 1px #ebf5f280}.board-pins .board-pin:nth-child(3n){background:radial-gradient(circle at 30% 24%,#d4d9d7,#8a9da5 34%,#496471 76%,#2e4b60);border-color:#57707c}
.board-pins .board-pin:before{content:'';position:absolute;left:4px;top:9px;width:3px;height:6px;background:linear-gradient(90deg,#c6d4dc,#5b7283);transform:rotate(-25deg);z-index:-1;border-radius:1px}.board-photo>.board-pin,.board-note>.board-pin{visibility:hidden}
.board-next-note{left:623px;top:390px;width:194px;min-height:194px;padding:17px 15px 13px;transform:rotate(2.8deg);text-decoration:none;color:#254c60;background:linear-gradient(180deg,#9ab8c8 0 18%,#bed8e0 24%,#b0ced8);box-shadow:1px 2px 2px #30434b40,3px 6px 7px #30434b40}
.board-next-note:before{content:'';position:absolute;top:-9px;left:59px;width:69px;height:22px;transform:rotate(-4deg);background:repeating-linear-gradient(90deg,#dce6db77 0 3px,#f0f3e788 3px 4px);box-shadow:0 1px 1px #5b685823;clip-path:polygon(3% 0,97% 0,100% 80%,96% 100%,2% 100%,0 20%)}
.board-next-note:after{content:'';position:absolute;right:0;bottom:0;width:25px;height:21px;border-radius:0 0 0 90%;background:linear-gradient(140deg,transparent 45%,#edf3e577 73%,#7c9a9b33)}
.board-next-note small{font:700 9px/1.4 var(--font);letter-spacing:.15em}.board-next-note strong{display:block;margin:7px 0 8px;font:600 26px/1.05 var(--heading)}.board-next-note span{display:block;font:500 11px/1.5 var(--font)}.board-next-note i{font-style:normal;font-size:17px;display:inline-block;vertical-align:middle;margin-left:4px}
.board-about{left:28px;bottom:12px;padding:6px 10px;color:#4a6778;background:linear-gradient(110deg,#f8f7ee,#eeede3);font:600 9px/1.6 var(--font);letter-spacing:.1em;transform:rotate(-.6deg)}.board-stamp{position:absolute;z-index:2;right:28px;bottom:16px;font:10px/1.5 var(--font);color:#5c7482}
.board-supports{position:absolute;inset:0;pointer-events:none;z-index:0}.board-leg{position:absolute;top:890px;width:25px;height:143px;border:1px solid #667e8d;border-radius:1px;background:linear-gradient(90deg,#8ca2ae,#d5dedf 23%,#aabdc5 67%,#6c8799);box-shadow:3px 3px 4px #1e364347}.board-leg-left{left:101px}.board-leg-right{right:101px}.board-stand-rail{position:absolute;left:116px;right:116px;top:964px;height:17px;border:1px solid #718894;background:linear-gradient(#bbcbd0,#7996a6 45%,#c0ced2);box-shadow:1px 2px 2px #1d394752}
.board-foot{position:absolute;top:1020px;width:157px;height:18px;border:1px solid #5d7687;border-radius:2px;background:linear-gradient(#c4d2d4,#8fa9b9 56%,#607e91);box-shadow:3px 5px 5px #20343e59;transform:skewX(-19deg)}.board-foot-left{left:54px}.board-foot-right{right:54px;transform:skewX(19deg)}.board-wheel{position:absolute;top:1037px;width:20px;height:19px;border:3px solid #3a4b54;border-radius:48%;background:radial-gradient(circle,#84949b 0 2px,#293b46 3px 7px,#526875 8px);box-shadow:3px 3px 3px #1a303955}.board-wheel-left{left:72px}.board-wheel-right{right:72px}
/* Local lamp activity follows the same cover mapping as the preserved factory photograph. */
.board-plant-signals{position:absolute;inset:0;z-index:0;width:100%;height:100%;pointer-events:none}
.board-signal-shade{fill:#183936;opacity:0;animation:board-indicator-shade var(--cycle) var(--start) ease-in-out infinite}
.board-signal-core,.board-signal-halo{fill:#adf0cd;opacity:0;animation:board-indicator-glow var(--cycle) var(--start) ease-in-out infinite}.board-signal-halo{fill:#a7dbbc;animation-name:board-indicator-halo}
.board-overhead-light .board-signal-shade{fill:#263f49;animation-name:board-overhead-shade}.board-overhead-light .board-signal-core{fill:#eff6f4;animation-name:board-overhead-glow}
.is-background-paused .board-plant-signals *{animation-play-state:paused}
@keyframes board-indicator-glow{0%,24%,86%,100%{opacity:0}31%,47%,61%,77%{opacity:.58}54%{opacity:.24}}
@keyframes board-indicator-shade{0%,24%,86%,100%{opacity:.38}31%,47%,61%,77%{opacity:0}54%{opacity:.12}}
@keyframes board-indicator-halo{0%,24%,86%,100%{opacity:0}31%,47%,61%,77%{opacity:.1}54%{opacity:.04}}
@keyframes board-overhead-shade{0%,22%,81%,100%{opacity:0}42%,60%{opacity:.1}}
@keyframes board-overhead-glow{0%,22%,81%,100%{opacity:0}42%,60%{opacity:.035}}
@media(prefers-reduced-motion:reduce){.board-plant-signals{display:none}}
.board-deck :focus-visible,.board-standalone :focus-visible{outline:2px solid #c0e8ff;outline-offset:4px}.board-world :focus-visible{outline-color:#245a77}
@media(prefers-reduced-motion:reduce){.board-camera.is-approaching,.board-setting.is-moving,.board-threads path,.board-photo,.board-note,.board-sticky,.board-about,.board-next-note{transition:none}.board-paper[open]{animation:none}.board-transition{display:none}}

/* Native modal keeps the board visible and traps keyboard focus on the note. */
.board-paper{width:min(620px,calc(100vw - 44px));max-height:calc(100dvh - 64px);margin:auto;padding:0;border:0;overflow:auto;overscroll-behavior:contain;color:#283d49;background:linear-gradient(91deg,transparent 49%,#56606a0c 49.7%,#fff5 50.2%,transparent 51%),linear-gradient(0deg,transparent 63%,#5c696c0b 63.3%,#fff6 63.6%,transparent 64%),repeating-linear-gradient(0deg,#78868203 0 1px,transparent 1px 3px),#efeee6;box-shadow:0 25px 80px #0008,2px 2px 1px #fffc inset,-2px -2px 1px #90978c44 inset;scrollbar-color:#8d9d9f #e2e5df}
.board-paper::backdrop{background:#0a15223d}.board-paper[open]{animation:paper-open .24s ease-out}.paper-close{position:sticky;top:9px;float:right;z-index:3;margin:9px 10px -50px 0;width:40px;height:40px;border:1px solid #66798466;background:#eeeee5f2;color:#263d4b;font:28px/1 var(--font)}.paper-content{padding:34px 38px 32px}.paper-meta{display:flex;justify-content:space-between;gap:18px;padding-right:36px;margin-bottom:24px;border-bottom:1px solid #7f929955;padding-bottom:11px;color:#687d88;font:600 .58rem/1.6 var(--font);letter-spacing:.12em}.paper-photo{display:block;width:100%;height:190px;object-fit:cover;filter:saturate(.65);padding:6px;background:#faf9f2;box-shadow:1px 3px 7px #253b4522;margin:0 0 22px;transform:rotate(-.5deg)}.paper-content .paper-eyebrow{font-size:.65rem;font-weight:800;letter-spacing:.08em;line-height:1.6;color:#446277;margin-bottom:8px}.paper-content h2{font:600 2.2rem/1.08 var(--heading);color:#203a49;margin:0 0 20px}.paper-content p,.paper-content li{font:.875rem/1.85 var(--font);color:#415660}.paper-content p+p{margin-top:18px}.paper-content h3{font:700 .7rem/1.5 var(--font);text-transform:uppercase;letter-spacing:.09em;margin:24px 0 11px;color:#35576b}.paper-content ul{padding-left:19px;margin:0}.paper-content li{padding:4px 0}.paper-connections{display:flex;flex-direction:column;gap:0}.paper-connections button{border:0;border-bottom:1px solid #a3b0b055;background:transparent;text-align:left;padding:10px 0;color:#3e5f74;font:.8rem/1.6 var(--font);min-height:40px}.paper-connections button:hover{color:#193f58;background:#5c7c8e0c}.paper-inquiry{display:block;margin-top:26px;border-top:1px solid #8d9c9e;padding:15px 0 0;color:#234e69;font:700 .8rem/1.7 var(--font)}.paper-content .paper-credit{font-size:.62rem;line-height:1.75;color:#788b91;margin-top:24px}.paper-credit a{text-decoration:underline}.paper-content .paper-foot{margin-top:22px}.board-paper :focus-visible{outline-color:#355f7a}
@keyframes paper-open{from{opacity:0;transform:translateY(15px) rotate(-1.3deg) scale(.97)}to{opacity:1;transform:translateY(0) rotate(0) scale(1)}}
@media(max-width:600px){.paper-content{padding:29px 24px 26px}.paper-content h2{font-size:1.9rem}.paper-photo{height:145px}.board-paper{max-height:calc(100dvh - 50px)}.paper-content p,.paper-content li{font-size:.84rem}.paper-meta{font-size:.53rem}}
@media(prefers-reduced-motion:reduce){.board-setting.is-moving,.board-threads path,.board-photo,.board-note{transition:none}.board-paper[open]{animation:none}.board-transition{display:none}}

.board-deck,.board-standalone,.board-transit-navigation{--board-header:88px}
.board-header{position:absolute;inset:0 0 auto;height:var(--board-header);display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 clamp(20px,3.4vw,48px);z-index:10;background:#071521;color:#eaf2f7;border-bottom:1px solid #a6becb33}
.board-header .plant-menu nav{max-height:calc(100dvh - var(--board-header) - 20px);overflow:auto;overscroll-behavior:contain}.board-header .brand-type{font-size:1.65rem}.board-header nav a[aria-current=page]{background:#a9d4ee16}
.board-transit-navigation{position:fixed;inset:0 0 auto;height:var(--board-header);z-index:1550}
.board-paper{max-height:calc(100dvh - var(--board-header) - 44px);margin:calc(var(--board-header) + 22px) auto 22px}.board-paper::backdrop{inset:var(--board-header) 0 0}
@media(max-width:760px){.board-deck,.board-standalone,.board-transit-navigation{--board-header:72px}.board-header .brand-type{font-size:1.35rem}.board-header{padding-inline:20px}}
@media(min-width:761px) and (max-aspect-ratio:1/1){.board-deck,.board-standalone,.board-transit-navigation{--board-header:clamp(88px,11vw,144px)}.board-header .brand-type{font-size:3.4vw}.board-header summary{font-size:2vw;min-height:6vw;padding:1vw 2vw}}

/* A camera whip stretches the process frame into color trails; there are no rotating panels. */
.board-transition{position:fixed;inset:0;z-index:1450;overflow:hidden;pointer-events:none;opacity:0}
.board-dash-front,.board-dash-back{position:absolute;inset:0;overflow:hidden;will-change:transform,opacity}
.board-dash-front{z-index:1;isolation:isolate;background:#081724}.board-dash-front .plant-film{z-index:0}
.board-dash-back{z-index:0}.board-dash-setting{position:absolute;left:50%;top:50%;transform-origin:center}.board-dash-setting .board-setting{inset:0}
.board-whip-smear{position:absolute;z-index:2;inset:0;width:100%;height:100%;opacity:0;pointer-events:none;filter:saturate(.28) contrast(1.05);will-change:opacity}
@media(prefers-reduced-motion:reduce){.board-setting.is-moving{transition:none}.board-transition{display:none}}

/* Mobile close view: gesture the camera while the factory and board stay together. */
.board-viewport.is-focused{touch-action:none;-webkit-user-select:none;user-select:none}
.board-world img{-webkit-user-drag:none;pointer-events:none}
@media(max-width:760px){
 .board-zoom-reset:not([hidden]){right:12px;bottom:max(12px,env(safe-area-inset-bottom));min-height:44px}
 .board-paper{width:calc(100% - 24px);max-height:calc(100dvh - var(--board-header) - 24px);margin:calc(var(--board-header) + 12px) auto 12px}
 .paper-content{padding:28px 20px}.paper-content p,.paper-content li{font-size:14px;line-height:1.75}
 .paper-connections button{min-height:44px;font-size:14px}
}
