
.fa-stage{position:relative}

.fa-rail{
  position:absolute;
  top:0;bottom:0;left:var(--pad);right:var(--pad);
  max-width:1240px;margin:0 auto;
  pointer-events:none;
}

.fa-scan{
  margin:0;
  position:sticky;
  top:clamp(84px, calc(50vh - 344px), 26vh);
  width:min(100%,560px);
  margin-left:auto;
  display:block;
  pointer-events:auto;
}

.scan-lbl{
  font-family:SuisseMono,ui-monospace,monospace;
  font-size:var(--fs-label);
  letter-spacing:.11em;
  text-transform:uppercase;
  color:var(--fg3);
  line-height:1.4;
  margin:0;
}

.scan-hd{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:16px;
  margin:0 0 10px;
}

.scan-ft{margin:10px 0 0;min-height:calc(var(--fs-label) * 1.4)}

.scan-pause{
  font:inherit;
  font-family:SuisseMono,ui-monospace,monospace;
  font-size:var(--fs-label);
  letter-spacing:.11em;
  text-transform:uppercase;
  color:var(--fg3);
  background:none;
  border:0;
  border-bottom:1px solid var(--line);
  padding:2px 0 1px;
  cursor:pointer;
  white-space:nowrap;
  transition:border-color .16s linear;
}
.scan-pause:hover{border-bottom-color:var(--fg)}
.scan-pause:focus-visible{outline:2px solid var(--fg);outline-offset:4px;border-radius:2px}

.scan-cv{
  display:block;
  width:100%;
  aspect-ratio:560 / 620;
}

@media (max-width:1120px){
  .fa-stage{position:static}
  .fa-rail{position:static;left:auto;right:auto;max-width:100%;margin:0;padding:0 var(--pad)}
  .fa-scan{position:static;justify-self:stretch;width:min(100%,560px);
    margin:calc(var(--unit)*1.5) 0 0}
}

@media (max-width:760px){
  .fa-scan{width:100%;margin:calc(var(--unit)*1.4) 0 0}
  .scan-cv{aspect-ratio:350 / 600}
  .scan-ft{min-height:calc(var(--fs-label) * 2.8)}
}

