#lab-camera{height:580vh;position:relative;background:#0b0912;scroll-margin-top:76px}#lab-camera .lab-frame{position:sticky;top:76px;height:calc(100svh - 76px);min-height:560px;overflow:hidden;isolation:isolate}#lab-camera .lab-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 48%;transform-origin:65% 66%;will-change:transform;filter:grayscale(.65)}#lab-camera .lab-vignette{position:absolute;inset:0;background:linear-gradient(90deg,#090710ed 0%,#100b18a6 38%,#100b1833 70%),linear-gradient(0deg,#090710 0%,transparent 40%)}#lab-camera .lab-copy{position:absolute;left:6%;top:18%;width:46%;z-index:3;color:#f5effa}#lab-camera .lab-name{font-size:14px;color:#dba0de;margin:0 0 24px}#lab-camera h2{font-size:clamp(44px,5.7vw,90px);line-height:1;letter-spacing:-.055em;font-weight:600;margin:0;max-width:760px}#lab-camera h2 em{font-style:normal;color:#df9cdd}#lab-camera #lab-description{font-size:clamp(15px,1.3vw,20px);line-height:1.65;color:#d0c6d9;max-width:440px;margin:28px 0 0}#lab-camera .lab-instrument{position:absolute;right:4%;top:20%;width:42%;opacity:var(--lab-instrument,0);transform:translateY(calc((1 - var(--lab-instrument,0))*30px));z-index:2}#lab-camera .nd-view{border:none;background:#100b1cda;box-shadow:none;backdrop-filter:blur(14px)}#lab-camera .nd-toolbar{padding:14px 20px;color:#d49bdc}#lab-camera #nd-canvas{width:100%;aspect-ratio:1.4;display:block}#lab-camera #nd-caption{font-size:12px;color:#bcabc9;padding:0 20px 18px;line-height:1.5}#lab-camera .lab-case-links{display:flex;flex-direction:column;gap:15px;margin-top:30px;opacity:var(--lab-cases,0);pointer-events:none}#lab-camera.lab-show-cases .lab-case-links{pointer-events:auto}#lab-camera .lab-case-links a{color:#f0c1ee;text-decoration:none;font-size:18px;width:fit-content;border-bottom:1px solid #b880b955;padding-bottom:4px}#lab-camera .lab-case-links a:last-child{font-size:13px;color:#b9a8c5;margin-top:8px}#lab-camera .lab-chapters{position:absolute;bottom:30px;left:6%;right:6%;display:flex;justify-content:space-between;gap:12px;z-index:4;border-top:1px solid #ffffff25;padding-top:18px}#lab-camera .lab-chapters button{font:inherit;font-size:12px;color:#aaa0b3;background:none;border:0;padding:8px 0;cursor:pointer}#lab-camera .lab-chapters button.on{color:#f0b3e7}#lab-camera .lab-chapters button.on:before{content:'';display:inline-block;width:5px;height:5px;background:#e99de0;border-radius:50%;margin-right:7px}#lab-camera .lab-progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:#ffffff15}#lab-camera .lab-progress i{display:block;height:100%;background:#da8cda;transform:scaleX(var(--lab-progress,0));transform-origin:left}#lab-camera button:focus-visible,#lab-camera a:focus-visible{outline:2px solid #edb0e8;outline-offset:5px}
@media(max-width:800px){#lab-camera{height:550vh;scroll-margin-top:66px}#lab-camera .lab-frame{top:66px;height:calc(100svh - 66px);min-height:610px}#lab-camera .lab-copy{top:7%;left:7%;width:86%}#lab-camera h2{font-size:44px;max-width:450px}#lab-camera .lab-name{margin-bottom:14px;font-size:12px}#lab-camera #lab-description{font-size:14px;max-width:360px;margin-top:18px}#lab-camera .lab-photo{object-position:65% 50%}#lab-camera .lab-instrument{top:auto;bottom:125px;right:7%;width:70%;max-width:390px}#lab-camera #nd-canvas{aspect-ratio:1.8}#lab-camera .nd-toolbar{padding:8px 14px;font-size:10px}#lab-camera #nd-caption{font-size:10px;padding:0 14px 10px}#lab-camera .lab-chapters{left:7%;right:7%;bottom:20px;justify-content:flex-start;flex-wrap:wrap;gap:0 18px;padding-top:10px}#lab-camera .lab-chapters button{font-size:10px;padding:6px 0}#lab-camera .lab-case-links{gap:12px;margin-top:25px}#lab-camera .lab-case-links a{font-size:17px}}
@media(prefers-reduced-motion:reduce){#lab-camera{height:auto!important}#lab-camera .lab-frame{position:relative;top:0;min-height:800px}#lab-camera .lab-instrument{opacity:1}#lab-camera .lab-photo{transform:none!important}}
#lab-camera .lab-instrument{inset:0;width:100%;height:100%;transform:none;pointer-events:none}#lab-camera .nd-view{background:none;backdrop-filter:none;height:100%;position:relative}#lab-camera #nd-canvas{width:100%;height:100%;aspect-ratio:auto}#lab-camera .nd-toolbar{position:absolute;right:6%;top:9%;padding:0;font-size:12px;gap:20px;display:flex}#lab-camera .nd-toolbar button{pointer-events:auto}#lab-camera #nd-caption{position:absolute;right:6%;bottom:100px;max-width:300px;text-align:right;padding:0;font-size:11px;color:#b9a6c9}#lab-camera .lab-photo{transition:opacity .7s}#lab-camera .lab-copy{pointer-events:none}#lab-camera .lab-copy a{pointer-events:auto}#lab-camera .lab-vignette{background:linear-gradient(90deg,#090710ed 0%,#100b18a6 38%,#100b1855 70%),linear-gradient(0deg,#090710 0%,transparent 40%)}
@media(max-width:800px){#lab-camera .lab-instrument{inset:0;width:100%;height:100%;max-width:none}#lab-camera .nd-toolbar{top:auto;bottom:145px;right:7%}#lab-camera #nd-caption{bottom:112px;right:7%;max-width:210px;font-size:9px}#lab-camera #nd-canvas{height:100%;aspect-ratio:auto}}
#lab-camera #neurolab .nd-view{background:transparent!important;border:0!important;position:relative;top:0;height:100%}#lab-camera #neurolab #nd-canvas{height:100%;aspect-ratio:auto}#lab-camera #neurolab #nd-caption{min-height:0;background:none}
@media(max-height:650px){#lab-camera{height:auto}#lab-camera .lab-frame{position:relative;top:0;height:760px}}

/* Instruments are always mounted; each chapter fades its own layer in canvas. */
#lab-camera .lab-instrument{opacity:1!important;transform:none!important}
#lab-camera .nd-toolbar{opacity:var(--lab-instrument,0);transition:opacity .5s}
#lab-camera .lab-case-cards{position:absolute;z-index:3;right:6%;top:22%;width:min(40%,560px);display:grid;grid-template-columns:1fr 1fr;gap:22px;opacity:0;pointer-events:none;transition:none}
#lab-camera .lab-case-cards a{display:flex;flex-direction:column;gap:8px;color:#F4EEFB;text-decoration:none}
#lab-camera .lab-case-cards img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;filter:saturate(.9);transition:transform .6s cubic-bezier(.2,.75,.2,1),filter .6s}
#lab-camera .lab-case-cards a:nth-child(2){margin-top:48px}
#lab-camera .lab-case-cards a:hover img{transform:translateY(-6px);filter:saturate(1.1)}
#lab-camera .lab-case-cards span{font-size:17px;font-weight:500;letter-spacing:-.02em}
#lab-camera .lab-case-cards small{font-size:11px;color:#B9A8C5}
@media(max-width:800px){#lab-camera .lab-case-cards{left:7%;right:7%;width:auto;top:auto;bottom:120px;gap:14px}#lab-camera .lab-case-cards img{aspect-ratio:1.25}#lab-camera .lab-case-cards a:nth-child(2){margin-top:0}#lab-camera .lab-case-cards span{font-size:14px}}
#lab-camera .lab-case-links a[data-case]{display:none}

#lab-camera .lab-case-cards img{aspect-ratio:4/5;box-shadow:0 30px 80px -30px #000}
#lab-camera .lab-case-cards a{position:relative}
#lab-camera .lab-case-cards a::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);pointer-events:none}
@media(max-width:800px){#lab-camera .lab-case-cards img{aspect-ratio:4/5}#lab-camera .lab-case-cards{bottom:130px;left:18%;right:18%}}
