/* PROJECTLENS / optical instruments for a curious mind. */
.exhibition-grid .exhibit.exhibit--lens{grid-column:1/-1}
.exhibit--lens,.lens-detail,.post-art--lens,.lens-now-art{--lens:#96ffd2;--lens-blue:#86c9ff;--lens-ink:#e8fff4;--lens-dim:#8ba79c;--lens-line:#9cdcc324;color:var(--lens-ink);background:#0a1213;font-family:var(--body)}
.exhibit--lens{position:relative;isolation:isolate;border:1px solid #a1e5c643;border-radius:18px;overflow:hidden;grid-column:1/-1;box-shadow:0 38px 90px #0006,0 0 0 6px #88edc204,inset 0 1px #e3fff315;outline:1px solid #8bceb10a;outline-offset:8px;scroll-margin-top:36px}
.lens-masthead{display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid var(--lens-line);padding:19px 31px;font:9px/1.4 var(--mono);letter-spacing:1.2px;color:#92b3a8;background:linear-gradient(90deg,#a0ffd709,#8bbdff04)}
.lens-masthead>span:first-child{display:flex;align-items:center;gap:15px}.lens-masthead b{font-size:17px;color:var(--lens);font-weight:400}.lens-masthead i{font-style:normal;color:#486e61;margin:0 12px}
.lens-hero{display:grid;grid-template-columns:1fr 1fr;min-height:604px;background:radial-gradient(ellipse at 76% 42%,#16393677,transparent 52%),linear-gradient(130deg,#111a19,#091113 70%);position:relative}
.lens-hero:before{content:'';position:absolute;inset:0;pointer-events:none;opacity:.16;background-image:linear-gradient(#8af2c812 1px,transparent 1px),linear-gradient(90deg,#8af2c812 1px,transparent 1px);background-size:39px 39px;mask-image:linear-gradient(110deg,transparent,#000)}
.lens-copy{padding:57px 0 55px 47px;position:relative;z-index:2;align-self:center}
.lens-eyebrow{display:flex;align-items:center;gap:9px;color:#90b3a4;font:8px/1.7 var(--mono);letter-spacing:1.1px}.lens-eyebrow>i{width:5px;height:5px;flex-shrink:0;border-radius:50%;background:var(--lens);box-shadow:0 0 12px var(--lens)}
.lens-copy h3{font-size:clamp(52px,6.65vw,91px);line-height:.94;letter-spacing:-6px;font-weight:780;margin:40px 0 24px;color:#edf5ef}.lens-copy h3 em{font-style:normal;background:linear-gradient(100deg,#b4ffb9,#8bfdce 64%,#76b9df);background-clip:text;color:transparent}.lens-copy h3 em span{display:inline-block;animation:lens-cursor 2.8s steps(1) infinite;color:#9dd7ff;font-weight:300}
.lens-subtitle{font-size:24px;letter-spacing:-.9px;color:#c4e3d5;margin:0 0 16px;line-height:1.5}.lens-description{max-width:380px;font-size:13px;line-height:1.9;color:#92a69f;padding-right:25px}
.lens-inspect{display:flex;align-items:center;gap:33px;color:#bbfbdc;font:11px/1.6 var(--mono);background:none;border:0;border-bottom:1px solid #95d4b64d;padding:20px 0 12px;margin-top:19px;cursor:pointer;transition:gap .35s,color .35s}.lens-inspect:hover{gap:45px;color:white}.lens-inspect span{font-size:19px}
.lens-stage{position:relative;min-width:0;display:flex;align-items:center;isolation:isolate;padding-bottom:65px;perspective:900px}.lens-stage:after{content:'';position:absolute;width:58%;height:8%;left:20%;bottom:98px;background:#78d5b026;filter:blur(32px);border-radius:50%;transform:rotate(-9deg);animation:lens-shadow 8s ease-in-out infinite}
.lens-optics{position:relative;width:100%;height:460px;min-width:0;isolation:isolate;overflow:hidden}.lens-optics canvas{position:absolute;inset:0;width:100%;height:100%;z-index:2;touch-action:pan-y}.lens-optics-grid{position:absolute;inset:16% 7%;border:1px solid #76c9a914;transform:rotate(-16deg);background:repeating-linear-gradient(0deg,transparent 0 36px,#71c9a812 36px 37px),repeating-linear-gradient(90deg,transparent 0 36px,#71c9a812 36px 37px);mask-image:radial-gradient(ellipse,#000,transparent 70%)}
.lens-coordinate{position:absolute;left:11px;top:23%;font:7px/1.9 var(--mono);letter-spacing:1px;color:#61877a;z-index:3}.lens-optics-caption{position:absolute;bottom:13%;right:24px;font:7px var(--mono);letter-spacing:1.4px;writing-mode:vertical-rl;color:#6ca090}.lens-cross{position:absolute;font:18px var(--mono);color:#87a99b}.lens-cross--a{right:15%;top:12%}.lens-cross--b{bottom:11%;left:17%;color:#5c8779}
.lens-fallback{position:absolute;width:60%;aspect-ratio:1;left:20%;top:16%;transform:rotate(-20deg);display:grid;place-items:center;transition:opacity .5s}.lens-fallback i{position:absolute;inset:0;border-radius:50%;border:22px solid #507b70;box-shadow:inset 2px 2px 7px #e4fffba1,4px 7px 0 #172f2c,0 15px 30px #0008;background:radial-gradient(ellipse at 22% 22%,#b9ffdc70,transparent 40%),linear-gradient(140deg,#81e4c72b,#103c3566)}.lens-fallback i:nth-child(2){inset:11%;border:1px solid #a7ffce;box-shadow:0 0 10px #9bffba55;background:none}.lens-fallback i:nth-child(3){inset:-9%;border:1px dashed #94d6c03d;background:none;box-shadow:none}.lens-fallback b{color:#b8ffe378;font:75px var(--mono);z-index:1}.is-rendered>.lens-fallback{opacity:0;pointer-events:none}
.lens-floating-label{position:absolute;bottom:53px;left:13%;right:11%;border:1px solid #b5ead13b;border-radius:8px;padding:15px 19px;display:flex;gap:14px;align-items:center;background:linear-gradient(120deg,#1c3630dc,#101d22e6);box-shadow:0 18px 36px #0007,inset 0 1px #dbffed12;backdrop-filter:blur(18px);transform:rotate(-4deg);animation:lens-label-float 8s ease-in-out infinite;z-index:4;font:11px var(--mono);letter-spacing:1px}.lens-floating-label>span{color:var(--lens);font-size:25px}.lens-floating-label small{display:block;font-size:6px;margin-top:7px;color:#8dae9f;letter-spacing:1.1px}.lens-floating-label>b{margin-left:auto;color:var(--lens);font-size:18px;font-weight:400}
.lens-stage-edge{position:absolute;bottom:21px;left:8%;right:5%;display:flex;justify-content:space-between;color:#547c6e;font:7px var(--mono);letter-spacing:1.3px}
.lens-workbench{display:grid;grid-template-columns:220px 1fr;position:relative;margin:0 30px 0;border:1px solid var(--lens-line);border-radius:8px;background:#0d1919;overflow:hidden}.lens-mode-nav{display:flex;flex-direction:column;border-right:1px solid var(--lens-line)}.lens-mode-nav button{display:flex;align-items:center;gap:18px;text-align:left;border:0;border-bottom:1px solid #9cdcc310;color:#8aa69b;background:none;font:12px/1.4 var(--body);padding:20px 24px;cursor:pointer;transition:background .3s,color .3s}.lens-mode-nav button:last-child{border-bottom:0}.lens-mode-nav button>span{font:9px var(--mono);opacity:.5}.lens-mode-nav button>b{font-weight:400;margin-left:auto;opacity:.5}.lens-mode-nav button[aria-pressed=true]{background:linear-gradient(90deg,#b0ffd71c,transparent);color:#c3ffdb;box-shadow:inset 2px 0 #9fffc6}.lens-mode-nav button:hover{background-color:#94e9c50a;color:white}
.lens-mode-body{padding:26px 30px;display:flex;align-items:center;min-width:0}.lens-mode-panel{display:grid;grid-template-columns:1.4fr 1fr;gap:35px;align-items:center;width:100%;animation:lens-panel-in .45s ease both}.lens-mode-panel[hidden]{display:none}.lens-mode-panel h4{font-size:19px;letter-spacing:-.5px;margin:11px 0;color:#d8eee2}.lens-mode-panel p{font-size:12px;color:#8daca0;line-height:1.85;max-width:380px;margin:0}.lens-mode-panel .lens-eyebrow{font-size:8px;letter-spacing:0;color:#80ae9c}
.lens-mini-tree{padding:10px 0;font:10px/2.6 var(--mono);color:#779a8c;border-left:1px solid #9cdcc31c;padding-left:22px;position:relative;overflow:hidden}.lens-mini-tree:after{content:'';position:absolute;left:0;right:0;height:2px;top:10%;background:linear-gradient(90deg,transparent,#86ffc36b,transparent);box-shadow:0 0 15px #a0ffd17a;animation:lens-read 6s ease-in-out infinite}.lens-mini-tree>div:first-child{color:#c1f4d8}.lens-mini-tree b{font-weight:400;color:var(--lens);margin-right:7px}.lens-mini-tree span{float:right;font-size:7px;color:#527b6b}.lens-demo-note{grid-column:1/-1;border-top:1px solid #9cdcc31c;font:7px/1.5 var(--mono);letter-spacing:1px;padding:10px 22px;color:#659382}
.lens-specs{display:grid;grid-template-columns:repeat(3,1fr);margin:30px 31px 0;padding-bottom:25px;border-bottom:1px solid var(--lens-line);gap:20px}.lens-specs>span{display:flex;flex-direction:column;gap:8px;font-size:10px;color:#819d91}.lens-specs b{font:17px var(--mono);color:#b7d4c5;font-weight:400}.lens-actions{display:flex;gap:10px;align-items:center;padding:25px 31px 28px}.lens-actions a{display:flex;gap:28px;align-items:center;border:1px solid #93c4ad30;border-radius:5px;padding:13px 17px;color:#b4d5c2;font:10px/1.6 var(--mono);transition:transform .25s,background .25s,box-shadow .25s}.lens-actions a:hover{transform:translateY(-3px);border-color:#acffd5;box-shadow:0 6px 25px #58ebbd0a}.lens-actions .lens-download{background:#b1f8d0;border-color:#b1f8d0;color:#10251c;box-shadow:0 0 22px #95ffcb0f}.lens-actions .lens-download:hover{background:#d8ffe7;color:#0d2118}.lens-bottom-line{padding:12px 31px;background:#10231d7a;border-top:1px solid #a6d5b817;font:7px/1.4 var(--mono);letter-spacing:.8px;display:flex;justify-content:space-between;gap:12px;color:#698775}
[data-lens-mode=signals]{--lens:#8cceff}[data-lens-mode=report]{--lens:#c4b2ff}.lens-dialog{background:#0b1414;border:1px solid #9de4be4a;max-width:1060px;color:#d4eadf}.lens-dialog .dialog-close{color:#96c9b0;background:#11271e;border-color:#b9ffde38;z-index:4}.lens-detail header{padding:50px 43px 30px;background:radial-gradient(ellipse at right,#315c482e,transparent 65%)}.lens-detail header h2{font:600 56px/.98 var(--body);letter-spacing:-3px;margin:24px 0 15px}.lens-detail header h2 span{color:#aaffc7}.lens-detail header p{font-size:17px;color:#8bab9b;line-height:1.6}.lens-capture{margin:0 28px;padding:10px;background:linear-gradient(145deg,#2a514241,#0d2018);border:1px solid #8edcb544;border-radius:8px;box-shadow:0 25px 55px #0003;transform:rotate(-.5deg)}.lens-capture img{display:block;width:100%;height:auto;border-radius:3px}.lens-capture figcaption{font:9px/1.7 var(--mono);color:#91aa9a;padding:13px 6px 3px}.lens-detail-grid{display:grid;grid-template-columns:1fr 1fr;padding:35px 43px 0;gap:37px}.lens-detail-grid h3{font-size:20px;margin:15px 0}.lens-detail-grid p{font-size:13px;line-height:1.9;color:#93ada0}.lens-detail .lens-actions{padding:25px 43px 36px}
.post-art--lens{position:relative;overflow:hidden;min-height:400px;background:radial-gradient(ellipse at 73% 40%,#215e514d,transparent 70%),#0b1715!important;padding:26px;isolation:isolate}.lens-art-meta{display:flex;justify-content:space-between;position:relative;z-index:3;gap:10px;color:#7ca58f;font:8px/1.4 var(--mono);letter-spacing:1.1px}.lens-art-word{position:absolute;left:7%;top:23%;font-size:clamp(42px,5.6vw,75px);line-height:.94;font-weight:750;letter-spacing:-4px;z-index:3;color:#e2f9e9}.lens-art-word i,.lens-now-art>strong>i{font-style:normal;color:#a0ffc8}.post-art--lens>.lens-optics{position:absolute;width:62%;height:105%;right:-5%;top:-1%;opacity:.9}.lens-art-foot{position:absolute;left:26px;bottom:24px;font:7px/1.4 var(--mono);color:#789b89;letter-spacing:1.1px;z-index:3}.post-card--lens{--note-accent:#9cffcc;background:#111e18;border-color:#9ddebb3d}.post-card--lens .post-card-copy{background:radial-gradient(ellipse at 85% 0,#2947313b,transparent 55%),#111d17;color:#cee6d6}.post-card--lens .post-card-meta{color:#8fb49c}.post-card--lens h2{color:#dffbea}.post-card--lens .post-card-copy>p{color:#9ab29f}.post-card--lens .post-card-bottom{border-color:#bdfdd32c;color:#abe4be}.post-card--lens:hover{border-color:#95e8b677}
.article-card--lens{background:#101c16;color:#adc0b1;border-color:#9cd9b239}.article-card--lens .article-header{background:radial-gradient(ellipse at top right,#41624026,transparent 70%),#14221a;border-color:#bdfbd22a}.article-card--lens .article-header h1{color:#e8ffed;max-width:850px;letter-spacing:-1.7px}.article-card--lens .article-meta,.article-card--lens .article-edition,.article-card--lens .article-index-note{color:#88ac94}.article-card--lens .article-avatar{background:#b3ffd0;color:#173222}.article-card--lens .article-byline{color:#bed8c4}.article-card--lens .article-art .post-art--lens{height:530px;border-block:1px solid #beffd620}.article-card--lens .article-art .lens-art-word{font-size:clamp(70px,9.5vw,129px);left:8%;top:25%}.article-card--lens .article-art .lens-optics{width:55%;right:0}.article-card--lens .article-body p{color:#b0c4b4}.article-card--lens .article-lead{color:#d6efdc!important}.article-card--lens h2{color:#d7f9e1}.article-card--lens .chapter-label{color:#7cb88e}.article-card--lens .chapter-label>span:last-child{background:#8bcb9a2b}.article-card--lens blockquote{background:#1b3525;color:#caffd7;border-color:#a6ffbe;position:relative;box-shadow:inset 0 0 50px #57836712}.article-card--lens blockquote:after{content:'// a clearer next step';display:block;font:9px var(--mono);letter-spacing:1px;color:#77ab87;margin-top:25px}.article-card--lens .article-index{color:#85a890}.article-card--lens .article-index a{color:#9bb3a2}.article-card--lens .article-index a:hover{color:#c3ffd3}.article-card--lens .article-figure>div{background:#081310;border-color:#88cba044;box-shadow:12px 18px 0 #31573a1f}.article-card--lens figcaption{color:#7d9e88}.article-card--lens .article-signoff{border-color:#8db69a30;color:#93b29a}.article-card--lens .article-signoff>span{color:#bcf3c9}.article-card--lens .article-cta{background:#b3f2c5;color:#18311f}.next-note--lens{background:#15271b;color:#cff4d8;border-color:#8ebf984d}
.milestone--lens{border-color:#b8f5ce30}.milestone--lens .milestone-kicker{color:#8dbea5}.milestone--lens .milestone-link{color:#aeefc8}.lens-now-links{display:flex;gap:23px;flex-wrap:wrap}.lens-now-art{position:relative;overflow:hidden;padding:25px;background:radial-gradient(ellipse at 75% 56%,#2a62554f,transparent 67%),#0b1a17}.lens-now-art>strong{position:relative;display:block;margin-top:35px;font-size:clamp(33px,3.5vw,48px);line-height:.95;letter-spacing:-2.5px;color:#d6f4df;z-index:3}.lens-now-art>.lens-optics{position:absolute;right:-29%;bottom:-2%;width:112%;height:91%;opacity:.9}.lens-now-art .lens-coordinate,.lens-now-art .lens-optics-caption{display:none}.lens-now-art .lens-art-foot{left:25px;bottom:23px}.lens-now-art .lens-art-meta{font-size:7px;letter-spacing:.3px}.scene-index--works>a[data-index-theme=lens]{--index-ink:#92f8c9}
@keyframes lens-cursor{0%,65%,100%{opacity:1}72%,87%{opacity:.18}}@keyframes lens-label-float{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-8px) rotate(-2deg)}}@keyframes lens-shadow{0%,100%{opacity:.55;transform:scale(.9) rotate(-9deg)}50%{opacity:.9;transform:scale(1.07) rotate(-9deg)}}@keyframes lens-read{0%,100%{transform:translateY(0);opacity:0}20%{opacity:1}85%{transform:translateY(100px);opacity:0}}@keyframes lens-panel-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
.exhibit--lens button:focus-visible,.exhibit--lens a:focus-visible,.lens-detail a:focus-visible{outline:2px solid #d0ffdf;outline-offset:5px}
@media(max-width:1000px){.lens-copy{padding-left:31px}.lens-copy h3{font-size:67px;letter-spacing:-4px}.lens-hero{min-height:555px}.lens-optics{height:410px}.lens-workbench{grid-template-columns:175px 1fr}.lens-mode-panel{gap:20px;grid-template-columns:1fr}.lens-mini-tree{display:none}.lens-subtitle{font-size:22px}.lens-eyebrow{font-size:7px;letter-spacing:.65px}.lens-mode-nav button{padding:22px}.lens-description{font-size:12px}}
@media(max-width:760px){.exhibit--lens{border-radius:11px}.lens-masthead{padding:15px 20px;font-size:7px;letter-spacing:.3px}.lens-masthead b{font-size:14px}.lens-masthead>span:first-child{gap:9px}.lens-masthead>span:last-child{white-space:nowrap}.lens-masthead i{margin:0 5px}.lens-hero{grid-template-columns:1fr;min-height:0}.lens-copy{padding:34px 26px 0}.lens-copy h3{font-size:clamp(64px,12vw,90px);margin:27px 0 19px}.lens-description{max-width:440px;font-size:13px;padding-right:0}.lens-subtitle{font-size:23px}.lens-inspect{margin-top:11px;padding-top:10px}.lens-stage{height:350px;padding:0 0 40px;margin-top:-4px}.lens-optics{height:335px}.lens-floating-label{bottom:18px;left:17%;right:17%;padding:12px 14px}.lens-stage-edge{bottom:0;left:8%;right:8%}.lens-stage:after{bottom:40px}.lens-coordinate{left:24px;top:32%}.lens-optics-caption{right:25px;bottom:19%}.lens-workbench{margin:26px 20px 0;grid-template-columns:1fr}.lens-mode-nav{flex-direction:row;border-right:0;border-bottom:1px solid var(--lens-line)}.lens-mode-nav button{flex:1;justify-content:center;gap:9px;padding:15px 7px;border-bottom:0;font-size:11px;border-right:1px solid var(--lens-line)}.lens-mode-nav button:last-child{border:0}.lens-mode-nav button>b{display:none}.lens-mode-nav button[aria-pressed=true]{box-shadow:inset 0 -2px #9fffc6}.lens-mode-body{padding:22px 20px;min-height:150px}.lens-mode-panel h4{font-size:18px}.lens-mode-panel p{font-size:12px}.lens-demo-note{font-size:6px;letter-spacing:.2px;padding:10px 13px}.lens-specs{margin:24px 23px 0;gap:10px}.lens-specs b{font-size:13px}.lens-specs>span{font-size:9px;line-height:1.6}.lens-actions{padding:22px 23px;gap:8px;flex-wrap:wrap}.lens-actions a{padding:12px;gap:16px;font-size:9px}.lens-actions .lens-download{flex:1;justify-content:space-between;min-width:170px}.lens-bottom-line{padding:12px 23px;font-size:6px}.lens-bottom-line>span:last-child{display:none}.lens-detail header{padding:40px 25px 20px}.lens-detail header h2{font-size:42px}.lens-detail header p{font-size:15px}.lens-capture{margin:0 15px}.lens-capture figcaption{font-size:8px}.lens-detail-grid{grid-template-columns:1fr;padding:25px;gap:20px}.lens-detail .lens-actions{padding:0 25px 30px}.post-art--lens{min-height:315px;padding:23px}.lens-art-word{font-size:59px;top:25%}.post-art--lens .lens-optics{width:65%;right:-6%;height:102%}.article-card--lens .article-art .post-art--lens{height:380px}.article-card--lens .article-art .lens-art-word{font-size:clamp(48px,12vw,78px);left:7%;top:23%}.article-card--lens .article-art .lens-optics{width:73%;right:-12%;height:98%;top:12%}.article-card--lens .article-header h1{font-size:33px;letter-spacing:-.8px;line-height:1.3}.lens-now-art{min-height:315px}.lens-now-art>.lens-optics{width:94%;right:-16%;bottom:-4%;height:99%}.lens-now-art>strong{font-size:48px;margin-top:37px}.lens-now-links{gap:15px}}
@media(max-width:400px){.lens-copy h3{font-size:60px}.lens-masthead{padding:14px 17px;font-size:6px}.lens-copy{padding-inline:23px}.lens-stage{height:305px}.lens-optics{height:297px}.lens-floating-label{left:13%;right:13%;bottom:15px}.lens-stage-edge{font-size:6px}.lens-mode-nav button{font-size:10px}.lens-specs{gap:6px}.lens-specs b{font-size:12px}.lens-bottom-line{font-size:5px}.post-art--lens .lens-art-word{font-size:51px}.article-card--lens .article-art .post-art--lens{height:325px}.lens-art-meta{font-size:7px;letter-spacing:.4px}}
@media(prefers-reduced-motion:reduce){.exhibit--lens *,.post-art--lens *,.lens-now-art *{animation:none!important;transition:none!important}}
