/* One frame shared by the floating navigation and every page section. */
.logo-river-heading{margin:0 0 12px;text-align:left;font-size:clamp(14px,1.2vw,18px);line-height:1.4;color:var(--ink)}
.logo-river-heading strong{font-weight:600}
.logo-river{mask-image:none}
.logo-river .logo-lane{mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.reduced-motion .logo-river .logo-lane{mask-image:none}
@media(prefers-reduced-motion:reduce){.logo-river .logo-lane{mask-image:none}}
:root{
  --site-frame-width:min(calc(100% - 64px),1472px);
  --section-pin-top:100px;
  --section-title-inset:24px;
  --section-content-gap:clamp(48px,4.25svh,64px);
}
.site-header,.section-shell,.logo-river,.reduced-motion .logo-river{
  width:var(--site-frame-width);
  max-width:1472px;
  margin-inline:auto;
}

/* Center the heading and story as one composition in the visible section.
   Symmetric padding keeps its midpoint true; the internal gap stays compact. */
.is-scroll-story .practice-story-sticky,
#a-better-day.is-paper-story .day-sticky,
#workflow.is-pinned-workflow>.workflow-sticky,
#your-firm.is-pinned-ending>.ending-faq-stage{
  top:var(--section-pin-top);
  min-height:calc(100svh - var(--section-pin-top));
  max-height:none;
  padding-block:var(--section-title-inset);
}
.is-scroll-story .practice-story-sticky{
  height:calc(100svh - var(--section-pin-top));
  justify-content:safe center;
}
.is-scroll-story .practice-story-heading{margin-bottom:var(--section-content-gap)}
.is-scroll-story .practice-scenes{flex:none}
.is-scroll-story .practice-visual-viewport,
.is-scroll-story .practice-scene{padding-block:0}
.is-scroll-story .practice-chapters{margin-top:24px}
#a-better-day.is-paper-story .day-sticky,
#your-firm.is-pinned-ending>.ending-faq-stage{
  grid-template-rows:auto auto;
  align-content:safe center;
  align-items:center;
  row-gap:var(--section-content-gap);
}
#a-better-day.is-paper-story .day-heading,
#your-firm.is-pinned-ending .faq-heading{align-self:start}
#a-better-day.is-paper-story .day-copy{
  position:relative;
  margin-top:0;
  top:var(--day-copy-offset,0px);
}
#workflow.is-pinned-workflow>.workflow-sticky{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  grid-template-rows:auto auto;
  align-content:safe center;
  gap:var(--section-content-gap);
  align-items:center;
}
#workflow.is-pinned-workflow .section-heading{align-self:start}

/* Give shorter desktop windows their space back before sacrificing pinning. */
@media(min-width:901px) and (max-height:1050px){
  :root{--section-content-gap:48px}
  .is-scroll-story .practice-story-sticky,
  #a-better-day.is-paper-story .day-sticky,
  #workflow.is-pinned-workflow>.workflow-sticky,
  #your-firm.is-pinned-ending>.ending-faq-stage{padding-block:12px}
}

/* Natural, stacked reading remains the mobile/reduced-motion fallback. */
@media(max-width:900px){
  .hero.section-shell,.day-sticky.section-shell{max-width:1472px}
}
#top .hero-note .hero-example-label{display:block;font-size:.625rem;line-height:1.4;letter-spacing:.06em;text-transform:uppercase;color:var(--stone);margin:0 0 .25rem}
@media(max-width:600px){
  :root{--site-frame-width:calc(100% - 24px)}
  .site-header{width:var(--site-frame-width)}
}
