/* Shared quiet, thin shaft arrows; preserve semantic labels and direction. */
:root{--portfolio-arrow:#aeb8b6}
.vowice-case{--portfolio-arrow:#c2a4aa}
.gulp-case{--portfolio-arrow:#9fbdc7}
.mp-case{--portfolio-arrow:#a5b9a6}
.hc-case{--portfolio-arrow:#a5b8cc}
.gp-flow-arrow,
.gulp-case .gp-response-story>article:not(:last-child):after,
.gulp-case .gp-setup-strip li:not(:last-child):after,
.gulp-case .pc-navigation>a:first-child:before,
.gulp-case .rf-map-entry:after,
.hc-flow li:not(:last-child):after,
.hc-merge-line span,
.hc-process-arrow,
.mp-content-map .mp-map-brief .mp-flow-node:after,
.mp-engineering-map article:not(:last-child):after,
.mp-expansion-flow li:not(:last-child):after,
.mp-map-arrow,
.mp-media-track>.mp-flow-node:not(:nth-child(5)):after,
.mp-route li:not(:last-child):after,
.mp-screen-flow>figure:not(:last-child):after,
.mp-screening-branch>span,
.prototype-flow-arrow,
.rf-flow li:not(:last-child):after,
.rf-flow-six li:not(:last-child):after,
.rf-map .rf-flow li:not(:last-child):after,
.rf-map-link,
.rf-voice-join,
.vi-chain-down,
.vowice-case .pc-navigation>a:first-child:before,
.vowice-case .rf-sequence>.rf-screen:not(:last-child):after,
.vowice-case .rf-voice-outcomes .rf-voice-choice:after,
.vowice-case .vw-layers li:not(:last-child):after,
.vowice-case .vw-memory li:not(:last-child):after,
.vowice-case .vw-realtime li:not(:last-child):after,
.vw-arrow,
.vw-merge b{color:var(--portfolio-arrow)!important;font-family:Arial,sans-serif!important;font-weight:400!important;font-style:normal!important}
.prototype-flow-arrow,.rf-voice-join{font-size:24px!important;line-height:1!important}

/* All project entrances share a layout; the four demos also share replay controls. */
@media(min-width:701px){
 #exhibition{height:100dvh;min-height:0}
 #exhibition .exhibition-grid{flex:1;min-height:0;padding:12px 0 60px;container-type:size}
 #exhibition .collage-stage{width:min(100%,calc(100cqh * 1.22));max-height:100%;margin:0}
 #exhibition .project-tabs{margin-top:8px}
}
#exhibition .collage-stage :is(.hook-replay,.vowice-replay,.music-tear-replay,.gulp-reset){
 box-sizing:border-box;display:grid;place-items:center;width:44px;height:44px;min-width:44px;min-height:44px;
 margin:0;padding:0;border:1px solid color-mix(in srgb,var(--accent) 28%,transparent);border-radius:50%;
 background:#fffaf7e8;color:var(--accent);font:26px/1 Arial,sans-serif;box-shadow:0 2px 9px #2b293010;
}
#exhibition .collage-stage :is(.hook-replay,.vowice-replay){right:2%;bottom:-52px}
#exhibition .collage-stage :is(.music-tear-tools,.gulp-playback){left:auto;right:2%;bottom:-52px;width:44px;height:44px}
#exhibition .collage-stage .music-collage{overflow:visible}
#exhibition .collage-stage :is(.hook-replay,.vowice-replay,.music-tear-replay,.gulp-reset):hover{background:#fff;color:var(--accent);box-shadow:0 3px 12px #2b293020}
#exhibition .collage-stage :is(.hook-replay,.vowice-replay,.music-tear-replay,.gulp-reset):focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(max-width:700px){
 #exhibition .collage-stage:has(:is(.hook-replay,.music-tear-replay,.vowice-replay,.gulp-reset)){margin-bottom:60px}
}

/* Restored film entrances keep their final positions, like the product collages. */
.restored-project .film-editorial .film-strip{animation:none!important}
