/* Enhancement layer: deliberately no positioning, layout, or typography overrides. */
[data-journey-tab] {
  transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease;
}
[data-journey-tab]:focus-visible,
[data-journey-panel]:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 5px;
}
.journey-enhanced [data-journey-panel][hidden] { display: none; }
.journey-enhanced [data-journey-panel]:not([hidden]) {
  animation: fledge-panel-in 320ms cubic-bezier(.2,.65,.3,1) both;
}
[data-reveal].has-entered {
  animation: fledge-enter 650ms cubic-bezier(.2,.65,.3,1) both;
}
[data-scroll-progress] {
  transform-origin: left center;
  transform: scaleX(var(--scroll-progress, 0));
}
@keyframes fledge-enter {
  from { opacity: .65; translate: 0 14px; }
  to { opacity: 1; translate: 0 0; }
}
@keyframes fledge-panel-in {
  from { opacity: .7; translate: 0 6px; }
  to { opacity: 1; translate: 0 0; }
}
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  [data-artwork] {
    translate: var(--artwork-x, 0px) var(--artwork-y, 0px);
    transition: translate 250ms ease-out;
  }
}
@media (prefers-reduced-motion: reduce) {
  [data-reveal].has-entered,
  .journey-enhanced [data-journey-panel]:not([hidden]) { animation: none; }
  [data-journey-tab], [data-artwork] { transition: none; translate: none; }
}
@media print {
  .journey-enhanced [data-journey-panel][hidden] { display: block; }
  [data-scroll-progress] { display: none; }
}
