/* Road: scroll-driven 3D path. Burgundy panel, magenta road. */
.road-panel{--road-bg:var(--burg);--road-ink:var(--bone);--road-mute:rgba(234,227,214,.78)}
.road-panel .lab{color:var(--mag)}
.road-panel h2{color:var(--mag);max-width:16ch}
.rgrid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(20px,4vw,64px);margin-top:clamp(20px,4vh,40px);align-items:start}
.rlist{display:flex;flex-direction:column}
.rs{min-height:46vh;display:flex;flex-direction:column;justify-content:center;gap:10px;opacity:.3;transition:opacity .6s ease;padding-block:12px}
.rs.on{opacity:1}
.rs h3{font-size:clamp(26px,3.4vw,44px);line-height:1.05;letter-spacing:-.03em;color:var(--bone)}
.rs p{color:var(--road-mute);max-width:36ch;font-size:clamp(16px,1.5vw,19px);line-height:1.5}
.rvis{position:sticky;top:96px}
.rvis svg{width:100%;height:auto;display:block;overflow:visible}
.rmp{transition:stroke-dashoffset 1.8s cubic-bezier(.4,.1,.2,1)}
.plat{opacity:0;transform:translateY(-26px);transition:opacity .7s ease .5s,transform .9s cubic-bezier(.2,.8,.2,1) .5s}
.plat.show{opacity:1;transform:none}
.road-panel .btns{margin-top:clamp(16px,3vh,32px)}
.road-panel .btn{background:var(--mag);color:var(--burg);border-color:var(--mag)}
.road-panel .btn:hover{background:var(--bone);border-color:var(--bone);color:var(--burg)}
.road.static .rs{opacity:1;min-height:0}
.road.static .plat{opacity:1;transform:none;transition:none}
.road.static .rmp{transition:none}
@media(max-width:820px){
 .rgrid{grid-template-columns:1fr;gap:0}
 .rvis{order:-1;top:66px;z-index:2;background:var(--burg);padding-block:8px}
 .rvis svg{max-height:38vh;margin-inline:auto}
 .rs{min-height:34vh}
}
@media(prefers-reduced-motion:reduce){.plat,.rmp,.rs{transition:none}}
