/* The OTWONO orbital environment. Decorative layers never intercept controls. */
.ecosystem-universe{z-index:-1;pointer-events:none;isolation:isolate;background:#05100f;--world-x:0px;--world-y:0px;--world-zoom:1.04;--scene-tint:#558c75;--scene-opacity:.12}
.ecosystem-world{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:75% center;transform:translate3d(var(--world-x),var(--world-y),0) scale(var(--world-zoom));transform-origin:75% 50%;filter:saturate(.83);will-change:transform}
.ecosystem-aurora{position:absolute;inset:-15%;background:radial-gradient(ellipse at 18% 65%,var(--scene-tint),transparent 65%);opacity:var(--scene-opacity);mix-blend-mode:screen;transition:background 2s,opacity 2s}
.ecosystem-shade{position:absolute;inset:0;background:linear-gradient(90deg,#04100deb 0%,#04100dc4 32%,#04100d70 55%,#04100d0d 86%),linear-gradient(0deg,#04100da6,transparent 28%,transparent 72%,#04100d4d);}
.ecosystem-atlas{position:absolute;inset:0;width:100%;height:100%;opacity:.5;overflow:visible}
.ecosystem-knowledge,.ecosystem-building,.ecosystem-relay{opacity:.06;transition:opacity 1.8s}
.ecosystem-routes{opacity:.35}.ecosystem-nodes{opacity:.45;animation:pn-node-breathe 8s ease-in-out infinite alternate}
.ecosystem-satellite{opacity:.55;animation:pn-satellite-drift 38s ease-in-out infinite alternate;transform-box:fill-box;transform-origin:center}
.ecosystem-universe[data-scene="1"]{--scene-tint:#74a787;--scene-opacity:.13}
.ecosystem-universe[data-scene="2"]{--scene-tint:#4c9b9b;--scene-opacity:.19}
.ecosystem-universe[data-scene="2"] .ecosystem-knowledge{opacity:.42}
.ecosystem-universe[data-scene="2"] .ecosystem-building{opacity:.35}
.ecosystem-universe[data-scene="3"]{--scene-tint:#756995;--scene-opacity:.2}
.ecosystem-universe[data-scene="3"] .ecosystem-relay{opacity:.46}
.ecosystem-universe[data-scene="4"]{--scene-tint:#5d9879;--scene-opacity:.19}
.ecosystem-universe[data-scene="4"] .ecosystem-building{opacity:.5}
.ecosystem-universe[data-scene="5"]{--scene-tint:#978b65;--scene-opacity:.15}
.ecosystem-stars{position:absolute;inset:0;opacity:.65}
.ecosystem-star{position:absolute;width:var(--star-size,1px);height:var(--star-size,1px);background:#d1f0df;border-radius:50%;opacity:.45;animation:pn-star-twinkle var(--star-duration,7s) ease-in-out var(--star-delay,0s) infinite alternate}
.ecosystem-star.is-bright{box-shadow:0 0 7px 1px #9be5c666;background:#e1f9ef}
.ecosystem-meteors{position:absolute;inset:0;overflow:hidden;opacity:.65}
.ecosystem-meteors i{position:absolute;width:140px;height:1px;background:linear-gradient(90deg,transparent,#c0f5dd);transform:rotate(27deg);animation:pn-meteor 22s linear infinite;opacity:0;top:10%;left:28%}
.ecosystem-meteors i:nth-child(2){top:24%;left:65%;animation-delay:7s;animation-duration:27s;width:110px}
.ecosystem-meteors i:nth-child(3){top:5%;left:5%;animation-delay:15s;animation-duration:31s;width:90px}
body:has(.ecosystem-universe){background:#05100f}
.top{background:#061411e8;border-color:#b9e7cf26}
.hero .ot-studio-preview{background:linear-gradient(130deg,#0b1b18e8,#0c211dcc);backdrop-filter:blur(8px);box-shadow:0 30px 100px #0005,inset 0 1px #d1ffe31a;border-color:#b2e4cb50;max-width:445px}
.hero .lead{color:#d0ddd7}.hero .eyebrow{color:#c4f4d0}
.section.chapter:not(.hero){background:linear-gradient(90deg,#05110e35,#05110e12);}
.section.chapter p:not(.eyebrow,.micro){color:#c5d5ce}.section.chapter .paper p{color:#48594d}
.footer{background:#04100eef}
@keyframes pn-star-twinkle{0%,20%{opacity:.18;transform:scale(.85)}70%,100%{opacity:.8;transform:scale(1.15)}}
@keyframes pn-node-breathe{to{opacity:.8}}
@keyframes pn-satellite-drift{from{translate:0 0;rotate:0deg}to{translate:-75px 75px;rotate:16deg}}
@keyframes pn-meteor{0%,89%{opacity:0;translate:0 0}90%{opacity:.8}96%,100%{opacity:0;translate:460px 235px}}
@media(max-width:760px){
 .ecosystem-world{object-position:69% center;transform-origin:70% 50%;filter:saturate(.75)}
 .ecosystem-shade{background:linear-gradient(90deg,#04100dc9,#04100d99 65%,#04100d70),linear-gradient(0deg,#04100d66,transparent 70%)}
 .ecosystem-atlas{opacity:.24}.ecosystem-stars{opacity:.45}.ecosystem-meteors{opacity:.38}.ecosystem-meteors i:nth-child(3){display:none}
 .hero .ot-studio-preview{background:#081c17eb;backdrop-filter:none}.hero .hero-copy{background:radial-gradient(ellipse at 0 50%,#06130f44,transparent 80%)}
 .section.chapter:not(.hero){background:#04110e36}
}
.motion-off .ecosystem-world{will-change:auto}
@media(prefers-reduced-motion:reduce){.ecosystem-universe *{animation:none!important;transition:none!important}.ecosystem-world{will-change:auto}}
@media print{.ecosystem-universe{display:none!important}}
