*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
body{background:#0B0E17;color:#C8D6E5;font-family:'IBM Plex Sans',sans-serif;font-weight:400;overflow-x:hidden;font-size:1.05rem;line-height:1.65;display:flex}
.aurora-bg{position:fixed;inset:0;z-index:0;background:linear-gradient(135deg,rgba(0,229,204,0.05) 0%,rgba(57,255,133,0.03) 30%,rgba(224,64,160,0.05) 70%,rgba(0,229,204,0.03) 100%);animation:auroraShift 20s ease-in-out infinite alternate}
@keyframes auroraShift{0%{background-position:0% 50%}100%{background-position:100% 50%}}

/* Instrument Rail */
.instrument-rail{position:fixed;left:0;top:0;width:22%;max-width:240px;height:100vh;background:rgba(20,25,41,0.85);backdrop-filter:blur(12px);z-index:10;display:flex;flex-direction:column;align-items:center;padding:40px 16px;gap:30px;border-right:1px solid rgba(0,229,204,0.15)}
.rail-label{font-family:'Share Tech Mono',monospace;font-size:0.8rem;color:rgba(0,229,204,0.6);letter-spacing:0.1em}
.pip-group{display:flex;flex-direction:column;gap:16px}
.pip{width:10px;height:10px;border-radius:50%;background:rgba(0,229,204,0.2);transition:background 0.4s ease,box-shadow 0.4s ease}
.pip.active{background:#00E5CC;box-shadow:0 0 8px rgba(0,229,204,0.5)}
.progress-meter{width:4px;height:120px;background:rgba(0,229,204,0.1);border-radius:2px;position:relative;overflow:hidden}
.progress-fill{width:100%;height:0%;background:linear-gradient(180deg,#00E5CC,#39FF85);border-radius:2px;transition:height 0.3s ease}
.rail-data{font-family:'Share Tech Mono',monospace;font-size:0.7rem;color:rgba(57,255,133,0.4)}

/* Data stream */
.data-stream{margin-left:22%;max-width:78%;flex:1;position:relative;z-index:2;padding:0 5%}
.band{padding:80px 0;min-height:60vh;display:flex;flex-direction:column;justify-content:center}
.band-hero{min-height:100vh;justify-content:flex-end;padding-bottom:15vh}
.title{font-family:'Roboto Slab',serif;font-weight:700;font-size:clamp(2.8rem,6vw,4.8rem);letter-spacing:0.04em;color:#C8D6E5;line-height:1.1}
.tagline{font-family:'IBM Plex Sans',sans-serif;font-weight:400;font-size:1.2rem;color:rgba(200,214,229,0.7);margin-top:12px}
.coord{font-family:'Share Tech Mono',monospace;font-size:0.8rem;color:rgba(0,229,204,0.5);margin-top:20px}

.band-content{max-width:600px}
.band-content h2{font-family:'Roboto Slab',serif;font-weight:700;font-size:clamp(1.8rem,3.5vw,2.6rem);letter-spacing:0.04em;color:#C8D6E5;margin-bottom:16px}
.band-content p{font-size:1.05rem;color:rgba(200,214,229,0.85);line-height:1.65;margin-bottom:12px}
.data-label{font-family:'Share Tech Mono',monospace;font-size:0.8rem;color:rgba(0,229,204,0.5);margin-top:16px;display:block}

.band-divider{height:1px;background:linear-gradient(90deg,#00E5CC,#E040A0);opacity:0.3;margin:0}

/* Aurora vis */
.band-visual{position:relative;overflow:hidden;min-height:60vh}
.aurora-vis{position:absolute;inset:0;z-index:0;pointer-events:none}
.aurora-curtain{position:absolute;bottom:0;width:100%;opacity:0.15}
.c1{height:60%;background:linear-gradient(180deg,transparent,rgba(0,229,204,0.3));animation:curtainWave 8s ease-in-out infinite}
.c2{height:45%;background:linear-gradient(180deg,transparent,rgba(57,255,133,0.2));animation:curtainWave 10s ease-in-out infinite reverse}
.c3{height:30%;background:linear-gradient(180deg,transparent,rgba(224,64,160,0.2));animation:curtainWave 12s ease-in-out infinite}
@keyframes curtainWave{0%,100%{transform:scaleY(1) translateX(0)}50%{transform:scaleY(1.15) translateX(3%)}}
.band-visual .band-content{position:relative;z-index:1}

.band-footer{min-height:auto;padding:40px 0}
.footer-text{font-family:'Share Tech Mono',monospace;font-size:0.8rem;color:rgba(0,229,204,0.3)}

/* Stagger animation */
[data-stagger]>*{opacity:0;transform:translateX(-20px);transition:opacity 0.5s cubic-bezier(0.16,1,0.3,1),transform 0.5s cubic-bezier(0.16,1,0.3,1)}
[data-stagger].visible>*{opacity:1;transform:translateX(0)}
[data-stagger].visible>*:nth-child(1){transition-delay:0s}
[data-stagger].visible>*:nth-child(2){transition-delay:0.08s}
[data-stagger].visible>*:nth-child(3){transition-delay:0.16s}

/* Palette refs */
.ref-twilight{color:#141929}
.ref-solar{color:#39FF85}
.ref-charged{color:#E040A0}

@media(max-width:768px){
.instrument-rail{width:100%;max-width:100%;height:auto;flex-direction:row;position:sticky;top:0;padding:12px 16px;gap:16px}
.pip-group{flex-direction:row}
.progress-meter{width:80px;height:4px}
.progress-fill{width:0%;height:100%}
.data-stream{margin-left:0;max-width:100%;padding:0 16px}
}
