/* Six photographic steps. Shared opening lives in photo-hero.css. */
.journey-step { padding:4rem 0; scroll-margin-top:7.5rem; }
.journey-num { font:500 .8rem/1.4 var(--sans); letter-spacing:.02em; margin-bottom:.75rem; }
.journey-copy h2 { margin:0; font-size:clamp(2.3rem,4vw,3.35rem); line-height:1.1; font-weight:650; }
.journey-copy .step-deck { margin-top:.8rem; color:var(--ink); font-size:1.24rem; font-weight:550; }
.journey-copy>p:not(.step-deck) { color:#66645f; font-size:1.05rem; line-height:1.7; }
.journey-tags { margin-top:1.1rem; }
.journey-tags li { font-weight:500; padding:.25rem .65rem; border-radius:2px; }
.journey-stage { display:flex; flex-direction:column; align-items:stretch; gap:0; min-width:0; background:none; }
.journey-stage .journey-photo { display:block; padding:0; border-radius:0; width:100%; height:auto; aspect-ratio:4/3; max-height:none; object-fit:cover; }
.journey-stage figcaption { display:block; padding:.85rem 0 0; font-size:.78rem; line-height:1.5; color:#74716b; }
.equipment-notes { list-style:none; padding:0; margin:1.2rem 0 0; }
.equipment-notes li { display:flex; gap:.75rem; padding:.7rem 0; border-top:1px solid var(--line); font-size:.9rem; color:#66645f; }
.equipment-notes li>span:first-child { font-size:.7rem; color:var(--orange); padding-top:.15rem; }
.process-inline-link { display:inline-flex; align-items:center; min-height:44px; margin-top:.8rem; font-size:.94rem; text-decoration:none; color:var(--ink); border-bottom:1px solid var(--line); }
.journey-copy>p.equipment-fine { font-size:.9rem; line-height:1.6; color:#74716b; }
.journey-band .journey-recap { margin-top:1.5rem; gap:.75rem 1.2rem; font-weight:500; font-size:.95rem; }
.journey-band>.wrap>p:last-child { margin-top:1.5rem; }
@media(min-width:980px) {
  body[data-review="process"] .wrap { width:min(76rem,calc(100% - 9rem)); }
  .process-page .photo-hero-bottom { width:min(76rem,calc(100% - 9rem)); }
  /* A rail within the steps cannot obscure the photographic opening. */
  .journey-rail { position:sticky; top:var(--header-h); bottom:auto; left:auto; width:100%; flex-direction:row; background:#fffffff2; border-bottom:1px solid var(--line); padding:.45rem max(2rem,calc((100% - 76rem)/2)); }
  .journey-rail-track { position:static; flex:1; height:3px; width:auto; }
  .journey-rail-fill { transform:scaleX(var(--journey,0)); transform-origin:left center; }
  .journey-rail ol { flex-direction:row; height:auto; gap:.8rem; }
}
@media(max-width:979px) { .journey-rail { padding:.5rem 1rem; } .journey-rail a { min-width:2.75rem; min-height:2.75rem; } }
@media(max-width:759px) {
  .journey-step { padding:2.75rem 0; scroll-margin-top:8.5rem; }
  .journey-grid { grid-template-columns:1fr; gap:1.5rem; }
  .journey-stage .journey-photo { height:auto; aspect-ratio:4/3; }
  .journey-rail-track { display:none; }
  .journey-rail ol { justify-content:space-between; width:100%; }
  .journey-rail a { min-width:2.75rem; min-height:2.75rem; }
}
