/* Content stays visible unless the enhancement is initialized successfully. */
.reading-progress{position:fixed;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,#658a9a,#98765d,#ae6049);transform:scaleX(0);transform-origin:left;z-index:20;pointer-events:none}
.scroll-journey{position:fixed;left:8px;top:120px;bottom:28px;width:24px;z-index:2;pointer-events:none}
.scroll-journey svg{display:block;width:100%;height:100%;overflow:visible}
.journey-track,.journey-ink{fill:none;stroke-width:1.8;vector-effect:non-scaling-stroke}
.journey-track{stroke:#98765d;opacity:.14}
.journey-ink{stroke:#98765d;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1}
@media(max-width:850px){.scroll-journey{left:3px;width:12px;top:145px;bottom:20px}.journey-ink{stroke-width:1.4}}
@media(prefers-reduced-motion:reduce){.scroll-journey{display:none}}
@media(prefers-reduced-motion:no-preference){
  .reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease var(--delay,0ms),transform .75s cubic-bezier(.2,.7,.2,1) var(--delay,0ms)}
  .reveal.arrived,.reveal:focus-within{opacity:1;transform:none}
  .hero-entrance-pending .hero-art,.hero-entrance-pending .art-caption{opacity:0}
  .hero-entrance-pending{position:relative}
  .hero-build-assembly{position:absolute;top:0;left:0;width:100%;aspect-ratio:1;pointer-events:none;overflow:hidden;background:#f9f6ed}
  .hero-build-piece{opacity:0;transform-box:view-box;transform-origin:50% 50%}
  .hero-build-travel{position:absolute;top:0;left:0;width:100%;aspect-ratio:1;pointer-events:none;overflow:visible}
  .hero-build-dot{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0}
  .hero-build-road-patch{position:absolute;width:3.3%;height:.24%;background:#a57d5f;opacity:0;border-radius:50%;transform-origin:center}
  .hero-build-road-patch.red{left:33.12%;top:77.15%;transform:rotate(-9.5deg)}
  .hero-build-road-patch.blue{left:62.07%;top:77.07%;transform:rotate(-3.5deg)}
  .hero h1,.hero .years{animation:welcome-copy .8s ease-out both}
  .hero .years{animation-delay:.15s}
  .draw-path{stroke-dasharray:var(--path-length);stroke-dashoffset:var(--path-length);transition:stroke-dashoffset 1.7s ease .25s}
  .arrived .draw-path,.arrived.draw-path{stroke-dashoffset:0}
  .card .go{transition:transform .25s ease}
  .card:hover .go,.card:focus-visible .go{transform:translateX(6px)}
  .button{transition:transform .25s ease,background .25s ease,box-shadow .25s ease}
  .button:hover,.button:focus-visible{transform:translateY(-3px);box-shadow:0 6px 16px #253f4820}
  .home-mark.arrived{animation:welcome-copy .9s ease-out both}
  @keyframes welcome-copy{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.draw-path{stroke-dashoffset:0}}
html[data-motion="off"] .hero-entrance-pending .hero-art,html[data-motion="off"] .hero-entrance-pending .art-caption{opacity:1}
@media(max-width:850px){.hero-build-travel,.hero-build-assembly{max-width:540px;left:50%;transform:translateX(-50%)}}
