/* Stage 2 only: three bounded interaction studies on the approved design. */
.assembly-scene{display:block;width:100%;height:auto;overflow:visible}.scene-base,.scene-shell,.scene-components{transform-box:view-box;will-change:transform}.hero-sequence{height:calc(var(--hero-size,820px) + 105vh);padding-bottom:0}.hero-sequence>.hero{position:sticky;top:0}.scene .hero-state{min-width:170px}.hero-state{color:#94C9A9}.skip-sequence{padding:12px 0;min-height:44px;display:inline-flex;align-items:center}
.decode-card{transition:background-color 200ms ease}.decode-card:hover,.decode-card:focus-within{background:#94C9A9}.decode-trigger{display:inline-flex;position:relative;min-height:44px;align-items:center;letter-spacing:1.4px}.decode-glyph{position:absolute;inset:0;display:flex;align-items:center;pointer-events:none}.is-decoding .decode-real{opacity:0}
.hotspot{cursor:pointer;font:inherit;font-size:0.75rem}.hotspot.h1{width:44px;height:44px;transition:background-color 180ms ease,box-shadow 180ms ease;background:#102438;color:#94C9A9}.hotspot.h1:hover,.hotspot.h1:focus-visible,.hotspot.h1[aria-expanded=true]{background:#94C9A9;color:#102438;box-shadow:0 0 0 8px #94c9a92b;outline-color:#F5F7FA}.hotspot-popup{position:absolute;left:calc(33% + 20px);top:calc(53% + 35px);width:285px;max-width:62%;z-index:2;background:#F5F7FA;color:#102438;padding:20px;border-left:3px solid #94C9A9;box-shadow:0 8px 30px #0003}.hotspot-popup strong{font-size:1rem;font-weight:500}.hotspot-popup p{font-size:0.9375rem;line-height:1.5;margin:10px 0}.hotspot-popup .micro{font-size:0.6875rem;color:#506374}.feeder-list{background:transparent;border:1px solid #94c9a96b;padding:12px 18px;color:#F5F7FA;font:inherit;cursor:pointer;min-height:44px}.feeder-list:hover,.feeder-list[aria-expanded=true]{background:#94C9A9;color:#102438}.hotspot-popup[hidden]{display:none}
@media(max-width:800px){.hero-sequence{height:auto;padding-bottom:0}.hero-sequence>.hero{position:relative}.hotspot-popup{width:260px}}
@media(max-width:540px){.hotspot-popup{left:12%;top:64%;max-width:80%;padding:15px;width:270px}.hotspot-popup strong{font-size:0.875rem}.hotspot-popup p{font-size:0.8125rem}.hotspot-popup .micro{font-size:0.625rem}.hotspot.h1{font-size:0.75rem}.decode-trigger{font-size:0.8125rem}}
@media(prefers-reduced-motion:reduce){.hero-sequence{height:auto;padding-bottom:0}.hero-sequence>.hero{position:relative}.scene-base,.scene-shell,.scene-components{will-change:auto}.decode-card,.hotspot{transition:none}}

/* Review correction: viewport-filling pin, aligned service rows. */
.hero-sequence{background:#102438}
@media(min-width:801px){.hero-sequence>.hero{min-height:100svh;display:flex;flex-direction:column}.hero-sequence .hero-grid{min-height:0;flex:1}.hero-sequence .scene .assembly-scene{max-height:calc(100svh - 185px)}.hero-sequence .hero-top,.hero-sequence .hero-bottom{flex-shrink:0}}
.service-grid article{display:flex;flex-direction:column}.service-grid article>.index{display:flex;align-items:center;min-height:44px;flex-shrink:0}.service-grid .mini-drawing{flex-shrink:0}.service-grid .service-bottom{margin-top:auto}.decode-trigger{font:inherit;letter-spacing:inherit;min-height:0}.decode-glyph{white-space:nowrap}
@media(min-width:541px) and (max-width:1100px){.service-grid h3{min-height:2.3em}}
@media(prefers-reduced-motion:reduce){.hero-sequence>.hero{min-height:0;display:block}.hero-sequence .scene .assembly-scene{max-height:none}}

.decode-glyph span{display:inline-block;overflow:hidden;text-align:center;white-space:pre;flex-shrink:0}.decode-glyph{width:100%;overflow:hidden}
