/* An automatic research vision in the existing observatory, without a UI card. */
.vision-section .scene-inner{min-height:100svh}
.vision-section .scene-copy{width:42%;max-width:560px}
.vision-section .scene-copy h2{font-size:clamp(40px,4.5vw,74px);line-height:1.08}
.vision-section .scene-prose p{max-width:380px}
.vision-principle{display:flex;align-items:center;gap:14px;margin:32px 0 0;color:var(--mint);font:italic 24px/1.4 Georgia,serif}
.vision-principle>i{width:38px;height:1px;background:linear-gradient(90deg,var(--gold),transparent)}
.vision-section .art-annotation{display:none}
.vision-exhibit{position:absolute;left:47%;right:4vw;top:50%;transform:translateY(-50%);margin:0;z-index:2;max-width:760px;text-align:center;pointer-events:none}
.vs-status{display:inline-flex;align-items:center;gap:9px;font:8px/1.7 'Courier New',monospace;letter-spacing:.12em;color:#a4bab6;padding:8px 13px;border:1px solid #b5e6d123;border-radius:30px;background:#08151bc9}
.vs-status>i{width:4px;height:4px;border-radius:50%;background:var(--gold);box-shadow:0 0 9px #ebc38d70}
.vs-stage{position:relative;width:100%;height:clamp(250px,43vh,450px);isolation:isolate}
.vs-stage:before{content:'';position:absolute;inset:5% 0;background:radial-gradient(ellipse,#0a283cda 0%,#0718218a 48%,transparent 72%);z-index:-1}
.vs-canvas{position:absolute;inset:0;width:100%;height:100%}
.vs-center{position:absolute;left:50%;top:49%;transform:translate(-50%,-50%);display:grid;place-items:center;gap:5px}
.vs-symbol{font:italic clamp(78px,8vw,118px)/1 Georgia,serif;color:#eef7ed;text-shadow:0 0 35px #b5e6d140}
.vs-core-label{font:7px/1.5 'Courier New',monospace;letter-spacing:.14em;color:#afc9be;white-space:nowrap}
.vs-orbit-label{position:absolute;top:49%;left:50%;font:italic 18px/1.2 Georgia,serif;color:#d2e6dd;text-shadow:0 2px 8px #050c12;opacity:0;transition:opacity 1.2s}
.vs-label-a{transform:translate(-185%,-115px)}.vs-label-b{transform:translate(65%,-18px)}.vs-label-c{transform:translate(-110%,105px)}
.vision-exhibit[data-phase="3"] .vs-orbit-label{opacity:1}
.vs-narrative{position:relative;padding:0 4%;max-width:560px;margin:0 auto}
.vs-phase{font:8px/1.6 'Courier New',monospace;letter-spacing:.12em;color:var(--gold)}
.vs-title{font:400 clamp(24px,2.4vw,35px)/1.3 Georgia,serif;color:var(--ink);margin:12px 0 10px}
.vs-caption{font-size:12px;line-height:1.8;color:#a7bebd;min-height:44px;max-width:420px;margin:0 auto}
.vs-timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:25px 8% 0;text-align:left}
.vs-timeline>span{font:8px/1.6 'Courier New',monospace;color:#8ca8a5;position:relative;padding-bottom:12px}
.vs-timeline>span:after,.vs-timeline i{position:absolute;content:'';height:1px;left:0;bottom:0;width:100%;background:#83b6a430}
.vs-timeline i{transform:scaleX(0);transform-origin:left;z-index:1;background:var(--mint);box-shadow:0 0 8px #b5e6d155}
.vision-exhibit>figcaption{font-size:9px;line-height:1.8;color:#7f999a;max-width:420px;margin:18px auto 0}
.vision-exhibit>figcaption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.vision-scope{font:10px/1.8 Arial,sans-serif;color:#93a9a7;max-width:350px;margin-top:24px}
@media(min-width:1700px){.vision-exhibit{right:6vw;left:48%}}
@media(max-width:1000px) and (min-width:601px){.vision-exhibit{left:48%;right:3vw}.vs-stage{height:35vh;min-height:250px}.vs-title{font-size:24px}.vs-caption{font-size:11px}.vs-label-a{transform:translate(-155%,-100px)}.vs-label-b{transform:translate(45%,-18px)}.vs-label-c{transform:translate(-110%,85px)}.vs-orbit-label{font-size:15px}.vs-timeline{margin-inline:4%;gap:9px}.vs-timeline>span{font-size:7px}}
@media(max-width:600px){.vision-section{min-height:130svh}.vision-section .scene-inner{display:flex;flex-direction:column;padding-top:108px;padding-bottom:90px}.vision-section .scene-copy{width:100%;max-width:none;padding:0;order:0}.vision-section .scene-copy:before{display:none}.vision-section .scene-copy .eyebrow{margin-bottom:16px}.vision-section .scene-copy h2{font-size:10.5vw;margin-bottom:18px}.vision-section .scene-prose p{font-size:13px;max-width:100%;margin-bottom:10px}.vision-principle{display:none}.vision-scope{font-size:9px;margin-top:14px;max-width:100%}.vision-exhibit{position:relative;left:auto;right:auto;top:auto;transform:none;max-width:none;width:100%;order:1;margin:25px 0 0}.vs-status{font-size:6.5px;padding:6px 10px}.vs-stage{height:245px;margin-top:0}.vs-symbol{font-size:80px}.vs-core-label{font-size:6px}.vs-orbit-label{font-size:15px}.vs-label-a{transform:translate(-155%,-85px)}.vs-label-b{transform:translate(40%,-18px)}.vs-label-c{transform:translate(-110%,80px)}.vs-narrative{padding:0}.vs-phase{font-size:7px}.vs-title{font-size:26px;margin:9px 0}.vs-caption{font-size:11px;min-height:40px}.vs-timeline{margin:19px 0 0;gap:10px}.vs-timeline>span{font-size:7px}}
@media(max-width:370px){.vs-stage{height:220px}.vs-title{font-size:23px}.vs-timeline>span{font-size:6px}.vs-orbit-label{font-size:13px}}
.motion-paused .vs-orbit-label{transition:none}
@media(prefers-reduced-motion:reduce){.vs-orbit-label{transition:none}}
@media print{.vision-exhibit{position:static;transform:none;max-width:none}.vs-stage,.vs-narrative,.vs-timeline,.vs-status{display:none}.vision-exhibit>figcaption{position:static;width:auto;height:auto;clip-path:none;white-space:normal;font-size:12px}}
