/* Altius Lane landing page (/lane/).
   Ported from the Claude Design file "Lane Landing Page.dc.html"
   (project a21cde35-12d9-428b-84f9-79be4c1c4ce7). Builds on the shared tokens and
   .ds-btn classes in /assets/product/product.css. Diagram geometry for the hero
   timeline is driven by CSS custom properties that /assets/lane/lane.js
   recomputes from the plot width (the defaults below are the 1440px layout).
   Layout breakpoints follow the design: 1099px (points 3 cols -> 1),
   959px (network diagram stacks), 759px (phone layout). */

/* ---------- Page shell ---------- */
.page-lane .lane {
  --lane-ink: #190501;
  --lane-paper: #F7F6FF;
  --lane-ink-70: rgba(25, 5, 1, 0.7);
  --lane-paper-70: rgba(247, 246, 255, 0.7);
  --lane-ease: cubic-bezier(0.2, 0, 0, 1);
  --lane-pad: 48px;
  background: var(--lane-paper);
  color: var(--lane-ink);
  overflow: hidden;
}

.page-lane .lane-section {
  padding: 128px var(--lane-pad);
  background: var(--lane-paper);
  color: var(--lane-ink);
}
.page-lane .lane-hero {
  padding-top: var(--nav-clearance);
  padding-bottom: 0;
  min-height: 100svh;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}
.page-lane .lane-hero__inner { width: 100%; flex: 1 1 auto; }
/* Copy + timeline, centred together in the space under the wordmark */
.page-lane .lane-hero__main {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 32px 0 40px;
}

.page-lane .lane-container {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
}

.page-lane .lane-wordmark {
  display: block;
  height: 24px;
  width: auto;
  align-self: flex-start;
}

.page-lane .lane-eyebrow {
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.14em;
  line-height: 1;
  text-transform: uppercase;
}

.page-lane .lane-h2 {
  max-width: 720px;
  font-weight: 500;
  font-size: 42px;
  line-height: 1.12;
  letter-spacing: -0.02em;
  text-wrap: balance;
}

.page-lane .lane-lede {
  font-size: 18px;
  line-height: 1.55;
  color: var(--lane-ink-70);
  text-wrap: pretty;
}

.page-lane .lane-dot {
  position: absolute;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--altius-orange);
  transform: translate(-50%, -50%);
  z-index: 2;
}

/* ---------- 01 Hero ---------- */
.page-lane .lane-hero__intro {
  max-width: 600px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.page-lane .lane-hero__title {
  margin-top: 16px;
  font-weight: 500;
  font-size: 76px;
  line-height: 1.02;
  letter-spacing: -0.03em;
}
.page-lane .lane-hero__body { margin-top: 24px; }
.page-lane .lane-hero__cta { margin-top: 36px; }

/* Fit steps: lane.js raises data-fit (1-4) while the hero is taller than one
   viewport, as in the design's fitHero(). In the current design only steps 3
   (wider copy) and 4 (smaller headline) change the layout. */
.page-lane .lane-hero[data-fit="3"] .lane-hero__intro,
.page-lane .lane-hero[data-fit="4"] .lane-hero__intro { max-width: 720px; }
.page-lane .lane-hero[data-fit="4"] .lane-hero__title { font-size: 56px; }

/* Timeline: correspondent banks vs Altius Lane */
.page-lane .lane-chart {
  --band: 70%; --sun: 30%; --mon: 63%;
  --n1: 77.5%; --n2: 85%; --n3: 92.5%;
  --fs: 11px; --lw: max-content;
  --above-top: 4px; --r1: 37px; --m1: 37.5px; --band-top: 21px;
  --t1: 63px; --tick1: 32px; --set-top: 63px;
  --l1: 30px; --l2: 120px; --l2i: 96px;
  --fin-top: 100px; --tgt-top: 146px; --r2: 127px; --m2: 127.5px; --tick2: 117px;
  --ax: 171px; --day-tick: 166px; --day-top: 183px;
  --sent-top: 183px; --send-top: 13px; --send-h: 166px; --h: 203px;
  margin-top: 48px;
  display: flex;
  gap: 40px;
}
.page-lane .lane-chart__labels {
  flex: 0 0 200px;
  position: relative;
  height: var(--h);
}
.page-lane .lane-chart__plot {
  flex: 1 1 auto;
  min-width: 0;
  position: relative;
  height: var(--h);
}
.page-lane .lane-chart__plot > * { position: absolute; }

.page-lane .lane-chart__row-label,
.page-lane .lane-chart__inline-label {
  position: absolute;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.1em;
  line-height: 14px;
  white-space: nowrap;
}
.page-lane .lane-chart__row-label { left: 0; }
.page-lane .lane-chart__row-label--1 { top: var(--l1); }
.page-lane .lane-chart__row-label--2 { top: var(--l2); }
.page-lane .lane-chart__inline-label { display: none; left: 12px; }
.page-lane .lane-chart__inline-label--1 { top: 0; }
.page-lane .lane-chart__inline-label--2 { top: var(--l2i); }

.page-lane .lc-lbl {
  font-family: var(--font-mono);
  font-size: var(--fs);
  letter-spacing: 0.08em;
  line-height: 1.2;
}
.page-lane .lc-band { left: 0; width: var(--band); top: var(--band-top); height: 32px; background: rgba(25, 5, 1, 0.07); }
.page-lane .lc-r1-dashed { left: 0; width: var(--band); top: var(--r1); height: 0; border-top: 1px dashed var(--lane-ink); }
.page-lane .lc-r1-solid { left: var(--band); right: 0; top: var(--r1); height: 1px; background: var(--lane-ink); }
.page-lane .lc-closed { left: 0; width: var(--band); top: var(--t1); text-align: center; color: var(--lane-ink-70); }
.page-lane .lc-node {
  top: var(--m1);
  width: 11px;
  height: 11px;
  transform: translate(-50%, -50%);
  background: var(--lane-paper);
  border: 1px solid var(--lane-ink);
  box-sizing: border-box;
  z-index: 1;
}
.page-lane .lc-above { top: var(--above-top); transform: translateX(-50%); width: var(--lw); text-align: center; }
.page-lane .lc-corr { left: var(--n2); top: var(--t1); transform: translateX(-50%); white-space: nowrap; }
.page-lane .lc-tick1 { right: 0; top: var(--tick1); width: 1px; height: 11px; background: var(--lane-ink); }
.page-lane .lc-settled { right: 0; top: var(--set-top); }
.page-lane .lc-r2 { left: 0; right: 0; top: var(--r2); height: 1px; background: var(--lane-ink); }
.page-lane .lc-tick2 { left: 28px; top: var(--tick2); width: 1px; height: 21px; background: var(--lane-ink); }
.page-lane .lc-final { left: 28px; top: var(--fin-top); transform: translateX(-50%); }
.page-lane .lc-interval {
  left: 21px;
  top: var(--tgt-top);
  color: var(--lane-ink-70);
  white-space: nowrap;
  text-transform: uppercase;
}
.page-lane .lc-axis { left: 0; right: 0; top: var(--ax); height: 1px; background: var(--lane-ink); }
.page-lane .lc-day-tick { top: var(--day-tick); width: 1px; height: 11px; background: var(--lane-ink); }
.page-lane .lc-day { top: var(--day-top); transform: translateX(-50%); }
.page-lane .lc-send { left: 0; top: var(--send-top); width: 1px; height: var(--send-h); background: var(--lane-ink); }
.page-lane .lc-sent {
  left: 0;
  top: var(--sent-top);
  font-size: 14px;
  line-height: 1.4;
  color: var(--lane-ink-70);
  white-space: nowrap;
}
.page-lane .lc-playhead { background: rgba(25, 5, 1, 0.4); opacity: 0; z-index: 3; }
.page-lane .lc-mark {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
}
.page-lane .lc-mark--grey { left: 100%; top: var(--m1); background: rgba(25, 5, 1, 0.4); }
.page-lane .lc-mark--orange { left: 28px; top: var(--m2); background: var(--altius-orange); }

/* ---------- 02 How it runs (dark) ---------- */
/* One viewport tall with the content centred (design: height 100svh,
   justify-content center). The design's white wordmark is dropped (hero only). */
.page-lane .lane-flow {
  background: var(--lane-ink);
  color: var(--lane-paper);
  padding-top: 40px;
  padding-bottom: 40px;
  min-height: 100svh;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.page-lane .lane-flow > .lane-container { width: 100%; }
.page-lane .lane-flow__title { margin-top: 16px; color: var(--lane-paper); }
.page-lane .lane-flow__sent {
  margin-top: 96px;
  font-size: 16px;
  line-height: 1.4;
  color: var(--lane-paper-70);
}

.page-lane .lf-track { position: relative; height: 72px; margin-top: 12px; }
.page-lane .lf-track > * { position: absolute; }
.page-lane .lf-line { left: 0; right: 0; top: 44px; height: 1px; background: var(--lane-paper); }
.page-lane .lf-lbl,
.page-lane .lf-vlbl {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.08em;
  line-height: 1.2;
}
.page-lane .lf-lbl { top: 14px; }
.page-lane .lf-lbl--mid { transform: translateX(-50%); }
.page-lane .lf-lbl--end { right: 0; white-space: nowrap; }
.page-lane .lf-stop,
.page-lane .lf-vstop {
  width: 11px;
  height: 11px;
  background: var(--lane-ink);
  border: 1px solid var(--lane-paper);
  box-sizing: border-box;
}
.page-lane .lf-stop { top: 44px; transform: translate(-50%, -50%); }
.page-lane .lf-stop--start { left: 0; transform: translateY(-50%); }
.page-lane .lf-stop--end { right: 0; transform: translateY(-50%); }
.page-lane .lf-mark { left: calc(100% - 5.5px); top: 44px; }

.page-lane .lane-flow__caps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  column-gap: 48px;
  margin-top: 20px;
}
.page-lane .lf-cap,
.page-lane .lf-vcap { transition: opacity 240ms var(--lane-ease); }
.page-lane .lf-cap {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.page-lane .lf-tags { display: flex; gap: 8px; flex-wrap: wrap; }
.page-lane .lf-cap .lf-tags { justify-content: center; }
.page-lane .lf-tag {
  border: 1px solid rgba(247, 246, 255, 0.45);
  border-radius: 2px;
  padding: 6px 8px;
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 0.08em;
  line-height: 1;
  text-transform: uppercase;
}
/* Design: only the second step's tags (incl. the long block-interval tag) are nowrap */
.page-lane [data-cap="1"] .lf-tag { white-space: nowrap; }
.page-lane .lf-cap__title {
  margin-top: 32px;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: -0.01em;
  color: var(--lane-paper);
  text-wrap: balance;
}
.page-lane .lf-cap__body {
  margin-top: 8px;
  font-size: 16px;
  line-height: 1.55;
  color: var(--lane-paper-70);
  text-wrap: pretty;
}
.page-lane .lf-cap .lf-cap__title,
.page-lane .lf-cap .lf-cap__body { max-width: 320px; }

/* Narrow vertical track */
.page-lane .lane-flow__narrow { display: none; }
.page-lane .lane-flow__narrow .lane-flow__sent { margin-top: 64px; padding-left: 32px; }
.page-lane .lf-vtrack {
  position: relative;
  margin-top: 16px;
  display: flex;
  flex-direction: column;
  gap: 40px;
}
.page-lane .lf-vline { position: absolute; left: 6px; width: 1px; top: 6px; bottom: 6px; background: var(--lane-paper); }
.page-lane .lf-vstep { position: relative; padding-left: 32px; }
.page-lane .lf-vstep--end { height: 12px; }
.page-lane .lf-vstop { position: absolute; left: 1px; top: 0; }
.page-lane .lf-vlbl { line-height: 12px; }
.page-lane .lf-vcap .lf-tags { margin-top: 14px; }
.page-lane .lf-vcap .lf-cap__title { text-wrap: pretty; }
.page-lane .lf-vmark { left: 6.5px; top: calc(100% - 6.5px); }

/* ---------- 03 Privacy, compliance, and capacity ---------- */
/* Fit-to-viewport (design: fitS3): at >= 900px wide lane.js scales
   .lane-net__inner (origin top centre, floor 0.82) so the screen fits one
   viewport, and sets the section height to max(viewport, scaled height). The
   design's wordmark row is dropped (hero only); the heading keeps its position. */
.page-lane .lane-net {
  background: var(--lane-paper);
  color: var(--lane-ink);
  box-sizing: border-box;
}
.page-lane .lane-net__inner {
  padding: 96px var(--lane-pad) 40px;
  transform-origin: top center;
}
.page-lane .lane-net__intro {
  margin-top: 16px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  column-gap: 48px;
  row-gap: 16px;
}
.page-lane .lane-net__body { flex: 0 1 760px; min-width: 0; max-width: 760px; }
.page-lane .lane-net__cta { flex: none; }

.page-lane .ln-example {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.1em;
  line-height: 1.2;
  color: var(--lane-ink-70);
}

/* Member cards */
.page-lane .ln-card,
.page-lane .ln-reg {
  box-sizing: border-box;
  background: var(--lane-paper);
  border: 1px solid rgba(25, 5, 1, 0.2);
  border-radius: 4px;
  transition: border-color 160ms var(--lane-ease);
}
.page-lane .ln-reg { border: 1px dashed rgba(25, 5, 1, 0.4); }
.page-lane .ln-card__name,
.page-lane .ln-card__role,
.page-lane .ln-card__label {
  font-family: var(--font-mono);
  letter-spacing: 0.08em;
  line-height: 1.2;
}
.page-lane .ln-card__name { font-size: 12px; }
.page-lane .ln-card__role,
.page-lane .ln-card__label { font-size: 11px; color: var(--lane-ink-70); }
.page-lane .ln-card__role { margin-top: 4px; }
.page-lane .ln-card__amount {
  margin-top: 8px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  column-gap: 12px;
  row-gap: 4px;
}
.page-lane .ln-card__value {
  font-family: var(--font-sans);
  font-size: 16px;
  line-height: 20px;
  color: var(--lane-ink);
  white-space: nowrap;
}
.page-lane .ln-card__hidden { width: 88px; height: 16px; background: rgba(25, 5, 1, 0.12); }

/* Wide: one row of six cards (gap 16px). Column centres:
   x(i) = (100% - 80px) * (2i + 1) / 12 + 16px * i; --x0 = YOU, --x3 = PAYOUT PARTNER A. */
.page-lane .ln-wide { position: relative; margin-top: 24px; }
.page-lane .ln-row { display: flex; gap: 16px; align-items: stretch; }
.page-lane .ln-row .ln-card { flex: 1 1 0; min-width: 0; padding: 12px 16px; }
.page-lane .ln-links,
.page-lane .ln-foot {
  --x0: calc((100% - 80px) / 12);
  --x3: calc((100% - 80px) * 7 / 12 + 48px);
  position: relative;
}
.page-lane .ln-links { height: 37px; }
.page-lane .ln-links > * { position: absolute; }
.page-lane .ln-stem {
  left: calc((100% - 80px) * (2 * var(--i) + 1) / 12 + 16px * var(--i) - 0.5px);
  top: 0;
  width: 1px;
  height: 20px;
  background: var(--lane-ink);
}
.page-lane .ln-rail { left: 0; right: 0; top: 20px; height: 1px; background: var(--lane-ink); }
.page-lane .ln-rseg { left: calc(var(--x3) - 0.5px); bottom: 0; width: 0; height: 9.5px; border-left: 1px dashed rgba(25, 5, 1, 0.4); }
.page-lane .ln-seg { background: var(--altius-orange); z-index: 1; }
.page-lane .ln-seg--1 { left: calc(var(--x0) - 1px); width: 2px; top: 0; height: 21px; }
.page-lane .ln-seg--2 { left: calc(var(--x0) - 1px); width: calc((100% - 80px) * 0.5 + 50px); top: 19.5px; height: 2px; }
.page-lane .ln-seg--3 { left: calc(var(--x3) - 1px); width: 2px; bottom: 16px; height: 21px; }
.page-lane .ln-mark { left: var(--x3); top: 20.5px; }
.page-lane .ln-foot { height: 28px; display: flex; align-items: center; }
.page-lane .ln-foot .ln-reg {
  position: absolute;
  left: var(--x3);
  top: 0;
  transform: translateX(-50%);
  height: 28px;
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 6px 12px;
  white-space: nowrap;
}

/* Narrow: regulator on top, two staggered columns around a vertical spine */
.page-lane .ln-narrow { display: none; margin-top: 24px; }
.page-lane .ln-reg-wrap { margin-top: 28px; display: flex; justify-content: center; }
.page-lane .ln-reg-wrap .ln-reg { width: calc(50% - 28px); padding: 12px; }
.page-lane .ln-reg__amount { margin-top: 12px; }
.page-lane .ln-reg__value { margin-top: 4px; }
.page-lane .ln-grid {
  position: relative;
  margin-top: 28px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 56px minmax(0, 1fr);
  grid-template-rows: repeat(7, 1fr);
  row-gap: 12px;
}
.page-lane .ln-spine { grid-column: 2; grid-row: 2 / 7; position: relative; }
.page-lane .ln-spine > div { position: absolute; left: calc(50% - 0.5px); width: 1px; top: -6px; height: calc(100% + 12px); background: var(--lane-ink); }
.page-lane .ln-spine-seg { grid-column: 2; grid-row: 2 / 5; position: relative; z-index: 1; }
.page-lane .ln-vseg { position: absolute; left: calc(50% - 1px); width: 2px; top: -7px; height: calc(100% + 14px); background: var(--altius-orange); }
.page-lane .ln-nrseg {
  position: absolute;
  left: calc(50% + 17.5px);
  top: -28px;
  width: 0;
  height: calc(57.143% + 22px);
  border-left: 1px dashed rgba(25, 5, 1, 0.4);
  z-index: 1;
}
.page-lane .ln-cell { position: relative; }
.page-lane .ln-cell--left { grid-column: 1; }
.page-lane .ln-cell--right { grid-column: 3; }
.page-lane .ln-arm { position: absolute; width: 28px; top: 50%; height: 1px; background: var(--lane-ink); }
.page-lane .ln-cell--left .ln-arm { left: 100%; }
.page-lane .ln-cell--right .ln-arm { left: -28px; }
.page-lane .ln-hseg { position: absolute; top: calc(50% - 1px); height: 2px; background: var(--altius-orange); z-index: 1; }
.page-lane .ln-hseg--1 { left: 100%; width: 28px; }
.page-lane .ln-hseg--3 { left: -28px; width: 18px; }
.page-lane .ln-nmark { left: -10px; top: 50%; }
.page-lane .ln-narrow .ln-card { height: 100%; padding: 12px; }
.page-lane .ln-narrow .ln-card__name,
.page-lane .ln-narrow .ln-card__role,
.page-lane .ln-narrow .ln-card__label { font-size: 11px; letter-spacing: 0.06em; }
.page-lane .ln-narrow .ln-card__amount { display: block; margin-top: 10px; }
.page-lane .ln-narrow .ln-card__value { margin-top: 4px; height: 20px; display: flex; align-items: center; }

/* Privacy / Compliance / Capacity */
.page-lane .lane-net__groups {
  margin-top: 32px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  column-gap: 32px;
  row-gap: 56px;
}
.page-lane .ln-group { display: flex; flex-direction: column; gap: 16px; }
.page-lane .ln-group__items { display: flex; flex-direction: column; gap: 32px; }
.page-lane .ln-group__label {
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.1em;
  line-height: 1.2;
  text-transform: uppercase;
  color: var(--lane-ink-70);
}
.page-lane .ln-point {
  border-top: 1px solid rgba(25, 5, 1, 0.12);
  padding-top: 20px;
  transition: border-color 160ms var(--lane-ease);
}
.page-lane .ln-point__title {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -0.01em;
}
.page-lane .ln-point__body {
  margin-top: 12px;
  font-size: 16px;
  line-height: 1.55;
  color: var(--lane-ink-70);
  text-wrap: pretty;
}
.page-lane .ln-point__body strong { font-weight: 500; color: var(--lane-ink); }
.page-lane .ln-point__link { margin-top: 16px; font-size: 14px; line-height: 1.4; }
.page-lane .ln-point__link a { color: var(--lane-ink); text-decoration: underline; }
.page-lane .ln-point__link a:hover { color: #3a2a26; }

/* Hover linking between cards and points (lane.js sets data-hover on hover
   devices). Privacy lights the members whose amounts are hidden; "known member"
   lights the sender and recipient; the regulator item lights the regulator. */
.page-lane .lane-net:is([data-hover="you"], [data-hover="k"]) [data-card="you"],
.page-lane .lane-net:is([data-hover="pay"], [data-hover="k"]) [data-card="pay"],
.page-lane .lane-net:is([data-hover="lp"], [data-hover="p"]) [data-card="lp"],
.page-lane .lane-net:is([data-hover="bank"], [data-hover="p"]) [data-card="bank"],
.page-lane .lane-net:is([data-hover="iss"], [data-hover="p"]) [data-card="iss"],
.page-lane .lane-net:is([data-hover="payb"], [data-hover="p"]) [data-card="payb"],
.page-lane .lane-net:is([data-hover="reg"], [data-hover="r"]) [data-card="reg"],
.page-lane .lane-net:is([data-hover="p"], [data-hover="lp"], [data-hover="bank"], [data-hover="iss"], [data-hover="payb"]) [data-point="p"],
.page-lane .lane-net:is([data-hover="k"], [data-hover="you"], [data-hover="pay"]) [data-point="k"],
.page-lane .lane-net:is([data-hover="r"], [data-hover="reg"]) [data-point="r"] {
  border-color: var(--lane-ink);
}

/* ---------- Responsive ---------- */
@media (max-width: 1099px) {
  .page-lane .lane-net__groups { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 959px) {
  .page-lane .ln-wide { display: none; }
  .page-lane .ln-narrow { display: block; }
}

@media (max-width: 759px) {
  .page-lane .lane { --lane-pad: 24px; }
  .page-lane .lane-hero__title { font-size: 56px; }
  .page-lane .lane-h2 { font-size: 34px; }

  .page-lane .lane-chart__labels { display: none; }
  .page-lane .lane-chart__inline-label { display: block; }
  /* 375px phone defaults until lane.js measures the plot */
  .page-lane .lane-chart {
    --band: 59.5%; --sun: 23.8%; --mon: 50%;
    --n1: 69.63%; --n2: 79.75%; --n3: 89.88%;
    --fs: 10px; --lw: min-content;
    --above-top: 26px; --r1: 72px; --m1: 72.5px; --band-top: 56px;
    --t1: 98px; --tick1: 67px; --set-top: 114px;
    --l2i: 147px; --fin-top: 169px; --tgt-top: 215px; --r2: 196px; --m2: 196.5px; --tick2: 186px;
    --ax: 240px; --day-tick: 235px; --day-top: 252px;
    --sent-top: 274px; --send-top: 48px; --send-h: 200px; --h: 294px;
  }

  .page-lane .lane-flow__wide { display: none; }
  .page-lane .lane-flow__narrow { display: block; }
}

@media (prefers-reduced-motion: reduce) {
  .page-lane .lf-cap,
  .page-lane .lf-vcap,
  .page-lane .ln-card,
  .page-lane .ln-reg,
  .page-lane .ln-point { transition: none; }
}
