.hero-quiet {
  max-width: 38rem;
  color: var(--muted);
  font-size: .95rem;
}

#how-this-works,
#movements,
#path,
.phase-card {
  scroll-margin-top: 5.75rem;
}

.journey-hero .progress-panel { margin-top: 1.35rem; }
.journey-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.journey-facts .card p { margin-top: .55rem; }
.phase-cards { margin-top: 1.6rem; }
.phase-card h3 { margin: 0; }
.phase-card .card-link { margin-top: auto; }

.path-app {
  display: grid;
  gap: 1.4rem;
  padding: clamp(1.2rem, 3vw, 2.1rem);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: linear-gradient(160deg, rgba(28, 39, 41, .86), rgba(13, 20, 22, .78));
  box-shadow: 0 22px 55px var(--shadow);
}
.path-app-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1rem;
  align-items: end;
}
.path-status { margin: .35rem 0 0; color: var(--mist); font-size: .92rem; }
.path-toolbar { display: flex; flex-wrap: wrap; gap: .55rem; }

.path-weeks { display: grid; gap: 1rem; }
.path-week-label {
  margin: 0 0 .45rem;
  color: var(--brass-bright);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.path-map {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: .4rem;
}
.path-day {
  display: grid;
  min-height: 2.85rem;
  place-items: center;
  padding: .35rem;
  color: var(--paper);
  border: 1px solid rgba(244, 240, 231, .16);
  border-radius: .7rem;
  background: rgba(244, 240, 231, .04);
  font-size: .86rem;
  font-weight: 750;
  text-decoration: none;
  transition: border-color .18s ease, background-color .18s ease, color .18s ease;
}
.path-day:hover { color: var(--paper); border-color: var(--brass-bright); }
.path-day[aria-current="step"] {
  color: var(--ink);
  border-color: var(--brass-bright);
  background: var(--brass-bright);
}
.path-day.is-marked:not([aria-current="step"]) {
  border-color: color-mix(in srgb, var(--chamber-accent), transparent 28%);
  background: var(--chamber-accent-soft);
}
.path-day .path-day-n { font-variant-numeric: tabular-nums; }

.path-stage {
  display: grid;
  gap: 1.1rem;
  min-height: 22rem;
  scroll-margin-top: 5.75rem;
}
.path-kicker { margin: 0; }
.path-stage h3 {
  margin: 0;
  font-size: clamp(1.7rem, 3.4vw, 2.55rem);
}
.path-orientation {
  max-width: 42rem;
  margin: 0;
  color: var(--mist);
  font-family: var(--serif);
  font-size: 1.12rem;
  font-style: italic;
  line-height: 1.45;
}
.path-blocks { display: grid; gap: 1rem; }
.path-block {
  padding: 1rem 1.1rem;
  border: 1px solid rgba(244, 240, 231, .1);
  border-radius: .9rem;
  background: rgba(0, 0, 0, .16);
}
.path-block p { margin: .4rem 0 0; color: var(--paper); }
.path-block .eyebrow { margin: 0; }
.path-block-today {
  border-color: color-mix(in srgb, var(--chamber-accent), transparent 40%);
  background: var(--chamber-accent-soft);
}
.path-meta { margin: 0; color: var(--muted); font-size: .82rem; }
.path-nav {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  align-items: center;
  justify-content: space-between;
}
.path-nav .action-row { margin: 0; }
.path-error { color: var(--mist); }

.path-loading[hidden],
.path-error[hidden],
.path-app[hidden],
.btn[hidden] { display: none !important; }

@media (max-width: 1020px) {
  .path-app-head { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .path-map { grid-template-columns: repeat(7, minmax(0, 1fr)); gap: .32rem; }
  .path-day { min-height: 2.75rem; padding: .28rem .1rem; font-size: .78rem; }
  .path-stage { min-height: 0; }
  .path-nav { align-items: stretch; flex-direction: column; }
  .path-nav .action-row { width: 100%; }
  .path-nav .btn { min-height: 2.75rem; flex: 1 1 auto; }
  .path-toolbar .btn { min-height: 2.75rem; }
}
@media (max-width: 420px) {
  .path-map { gap: .28rem; }
}

@media (prefers-reduced-motion: reduce) {
  .path-day { transition: none; }
}
