
/* ROSCHER V87 — restrained editorial motion and premium interaction */
:root{--v87-accent:#96dc00;--v87-ink:#101916}
html{scroll-behavior:smooth} body{overflow-x:hidden}
.v87-reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.v87-reveal.v87-visible{opacity:1;transform:none}
#start.hero-architecture{isolation:isolate}#start .arch-hero-image{transition:background-image .8s ease,opacity .65s ease;will-change:opacity}
.v87-hero-controls{position:absolute;bottom:6.5rem;right:max(2rem,6vw);z-index:7;display:flex;align-items:center;gap:.8rem;color:white}
.v87-hero-controls button{cursor:pointer;background:#101916aa;border:1px solid #ffffff99;color:white;padding:.55rem .85rem;font-size:1.15rem}
.v87-hero-controls button:focus-visible,.v87-stage-switch button:focus-visible{outline:3px solid var(--v87-accent);outline-offset:3px}
.v87-stage-switch{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.4rem 0}.v87-stage-switch button{background:#fff;border:1px solid #b8c4b9;padding:.65rem 1rem;color:#14221a;font-weight:700;cursor:pointer}.v87-stage-switch button[aria-pressed=true]{background:#14221a;color:white;border-color:#14221a}
.v87-stage-active{outline:2px solid #91d500;outline-offset:3px}
.v87-stage-preview{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(240px,1fr);gap:1.4rem;align-items:center;margin:1.3rem 0 2rem;background:#e7eee4;padding:1rem}
.v87-stage-preview img{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#d9e3d6}.v87-stage-preview h3{font-size:clamp(1.3rem,2.2vw,2rem);margin:.4rem 0}.v87-stage-preview p{line-height:1.6}
.v87-form-hp{position:absolute;left:-10000px;opacity:0;height:1px;overflow:hidden}.v87-form-note{font-size:.85rem;color:#47544b}.v87-status{min-height:1.5em}
.v87-project-filter{display:flex;gap:.5rem;flex-wrap:wrap}
@media(max-width:720px){.v87-stage-preview{grid-template-columns:1fr}.v87-hero-controls{bottom:4.5rem;right:1rem}.v87-reveal{transform:translateY(10px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.v87-reveal{opacity:1;transform:none;transition:none}#start .arch-hero-image{transition:none}}
