/* Homepage layout: content and controls remain in normal document flow. */
.journey-page .entrance {
  display:flex; flex-direction:column; align-items:center;
  height:auto; min-height:0; max-height:none; gap:0;
  padding:124px 24px 32px;
}
.journey-page .entrance-heading {width:100%;max-width:1100px;order:0;pointer-events:auto}
.journey-page .entrance h1 {font-size:clamp(36px,4.2vw,60px);line-height:1.08}
.journey-page .entrance .hero-lead {max-width:640px;font-size:17px;line-height:1.6;margin:20px auto 0}
.journey-page .entrance>.entrance-actions {
  position:relative;order:1;inset:auto;transform:none;
  display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;
  gap:12px;margin:24px auto 12px;width:100%;max-width:620px;
}
.journey-page .entrance>.entrance-actions::before {display:none}
.journey-page .entrance>.entrance-stage {
  position:relative;order:2;inset:auto;flex:none;width:100%;max-width:1200px;
  height:clamp(280px,36vw,420px);min-height:0;margin:12px 0 0;
}
.journey-page .entrance-foot {display:none}
.journey-page .entrance-actions .button {min-height:48px;min-width:144px;font-size:14px}
.journey-page .entrance-actions .button-primary {background:#294e3d;color:#fffdf8;border:1px solid #294332}
.journey-page .entrance-actions .button-light {background:#f5f0e6;color:#294e3d;border:1px solid #b8b19f}
.journey-page .entrance-actions .motion-choice {
  position:static;inset:auto;flex-basis:100%;width:auto;min-height:44px;
  margin:0;padding:8px 16px;border:0;border-radius:0;box-shadow:none;
  background:transparent;backdrop-filter:none;font-size:13px;color:#355342;
  text-decoration:underline;text-underline-offset:4px;
}
.journey-page .entrance-actions :focus-visible {outline:3px solid #8e6324;outline-offset:4px}
.journey-page.motion-reduced {scroll-behavior:auto}
html:has(.motion-reduced) {scroll-behavior:auto}
.journey-page.motion-reduced *, .journey-page.motion-reduced *::before, .journey-page.motion-reduced *::after {
  animation:none!important;transition:none!important;scroll-behavior:auto!important;
}
.journey-page #example {scroll-margin-top:104px}
@media(max-width:1100px) {
  .journey-page .entrance {padding-top:108px}
  .journey-page #example {scroll-margin-top:94px}
}
@media(max-width:767px) {
  .journey-page .entrance {padding:100px 20px 24px}
  .journey-page .entrance h1 {font-size:clamp(32px,8.5vw,46px);line-height:1.08}
  .journey-page .entrance .entrance-label {font-size:12px;margin-bottom:14px}
  .journey-page .entrance .hero-lead {font-size:15px;line-height:1.55;margin-top:18px}
  .journey-page .entrance>.entrance-actions {margin-top:22px;gap:10px}
  .journey-page .entrance-actions .button {min-width:0;flex:1 1 130px;padding:12px 14px}
  .journey-page .entrance>.entrance-stage {height:clamp(230px,70vw,330px);width:100%;margin-top:0}
}
@media(max-height:500px) and (orientation:landscape) {
  .journey-page .entrance {padding-top:96px}
  .journey-page .entrance>.entrance-stage {height:260px}
}

/* Keep explicit playback's exit visible under a reduced-motion preference. */
html body.journey-page.is-entering .entrance-flight:not([hidden]){display:block!important}
html body.journey-page.is-entering .entrance-veil{display:block!important}
.journey-page [data-door-stage]{cursor:pointer}
.journey-page [data-door-stage]:focus-visible{outline:3px solid #8e6324;outline-offset:4px}
.journey-page [data-door-stage][aria-busy=true]{cursor:progress}
