/* One 24 s clock: walk 0–42%; approach 44–57%; beam 58–73%;
   lift 61–69%; depart 74–90%; coin wake 75–94%; soft reset 97–100%.
   Only transform and opacity move; the existing region/tab pauses still apply. */
.header-voyage[data-voyage="58"] {
  --voyage58-duration:24s;
  --voyage58-step-forward:20deg;
  --voyage58-step-back:-20deg;
  --voyage58-bob:-.65px;
  --voyage58-beam-strength:1;
  --voyage58-knee-flex:44deg; --voyage58-knee-soft:10deg;
  --voyage80-footprint-strength:.28;
  --voyage80-sole-front-x:3.326px; --voyage80-sole-back-x:9.326px;
  --voyage80-sole-front-y:.382px; --voyage80-sole-back-y:1.032px;
  --voyage58-flight-exit:calc(130vw + 100px);
  --voyage58-shell-origin:max(64px,calc(50vw - 692px));
  position:absolute; left:50px; top:-6px; width:calc(100vw - var(--voyage58-shell-origin) - 50px); height:68.25px;
  overflow:hidden; pointer-events:none; user-select:none;
}
.brand-lockup:has(>.header-voyage[data-voyage="58"]),
.login-brand-lockup:has(>.header-voyage[data-voyage="58"]) { padding-top:61px; }
.landing-page .site-header:has(.header-voyage[data-voyage="58"]) { height:155px; }
.login-page .site-header:has(.header-voyage[data-voyage="58"]) { height:143px; }
.header-voyage[data-voyage="58"] :is(.voyage58-traveller,.voyage58-lift,.voyage58-body,.voyage58-leg,.voyage58-shin,.voyage58-elbow,.voyage58-arm,.voyage58-head,.voyage58-shadow,.voyage58-ufo,.voyage58-beam,.voyage58-ground-light,.voyage58-engine,.voyage58-passenger,.voyage58-wake,.voyage58-coin,.voyage80-footprint) {
  animation-duration:var(--voyage58-duration); animation-iteration-count:infinite;
  animation-timing-function:linear; animation-fill-mode:both;
}
.header-voyage[data-voyage="58"] .voyage58-traveller { animation-name:voyage58-walk; }
.header-voyage[data-voyage="58"] .voyage58-lift { transform-box:view-box; transform-origin:26px 61px; animation-name:voyage58-lift; }
.header-voyage[data-voyage="58"] .voyage58-body { animation-name:voyage58-body; }
.header-voyage[data-voyage="58"] :is(.voyage58-leg,.voyage58-arm) { transform-box:view-box; animation-name:voyage58-step; }
.header-voyage[data-voyage="58"] :is(.voyage58-leg-back,.voyage58-arm-front) { animation-name:voyage58-step-opposite; }
.header-voyage[data-voyage="58"] .voyage58-head { transform-box:fill-box; transform-origin:50% 95%; animation-name:voyage58-look; }
.header-voyage[data-voyage="58"] .voyage58-shadow { animation-name:voyage58-shadow; }
.header-voyage[data-voyage="58"] .voyage58-ufo { transform-box:view-box; transform-origin:230px 20px; opacity:0; animation-name:voyage58-flight; }
.header-voyage[data-voyage="58"] .voyage58-beam { transform-box:view-box; transform-origin:230px 31px; opacity:0; animation-name:voyage58-beam; }
.header-voyage[data-voyage="58"] .voyage58-ground-light { opacity:0; animation-name:voyage58-ground; }
.header-voyage[data-voyage="58"] .voyage58-engine { opacity:0; animation-name:voyage58-engine; }
.header-voyage[data-voyage="58"] .voyage58-passenger { opacity:0; animation-name:voyage58-passenger; }
.header-voyage[data-voyage="58"] .voyage58-wake { opacity:0; animation-name:voyage58-wake; }
.header-voyage[data-voyage="58"] .voyage58-coin { opacity:0; transform-box:fill-box; transform-origin:center; }
.header-voyage[data-voyage="58"] .voyage58-coin-btc { animation-name:voyage58-coin-btc; }
.header-voyage[data-voyage="58"] .voyage58-coin-eth { animation-name:voyage58-coin-eth; }
.header-voyage[data-voyage="58"] .voyage58-coin-usdc { animation-name:voyage58-coin-usdc; }
.header-voyage[data-voyage="58"] .voyage58-coin-xrp { animation-name:voyage58-coin-xrp; }

/* Plant in scene coordinates; fading opacity cannot drag a print with the boot.
   Sole offsets match the hip, 6+7-unit leg, 2-unit boot centre and 1.5-unit sole.
   Front plants include the existing -.65-unit body bob. The last ink is gone
   by 50.4%, before the 58% beam; no marks enter the wordmark below the viewport. */
.header-voyage[data-voyage="58"] .voyage80-footprint { opacity:0; }
.header-voyage[data-voyage="58"] .voyage80-footprint-front { transform:translate(var(--voyage80-sole-front-x),var(--voyage80-sole-front-y)); }
.header-voyage[data-voyage="58"] .voyage80-footprint-back { transform:translate(var(--voyage80-sole-back-x),var(--voyage80-sole-back-y)); }
.header-voyage[data-voyage="58"] .voyage80-footprint[data-step="0"] { animation-name:voyage80-footprint-0; }
.header-voyage[data-voyage="58"] .voyage80-footprint[data-step="1"] { animation-name:voyage80-footprint-1; }
.header-voyage[data-voyage="58"] .voyage80-footprint[data-step="2"] { animation-name:voyage80-footprint-2; }
.header-voyage[data-voyage="58"] .voyage80-footprint[data-step="3"] { animation-name:voyage80-footprint-3; }
.header-voyage[data-voyage="58"] .voyage80-footprint[data-step="4"] { animation-name:voyage80-footprint-4; }
.header-voyage[data-voyage="58"] .voyage80-footprint[data-step="5"] { animation-name:voyage80-footprint-5; }
.header-voyage[data-voyage="58"] .voyage80-footprint[data-step="6"] { animation-name:voyage80-footprint-6; }
.header-voyage[data-voyage="58"] .voyage80-footprint[data-step="7"] { animation-name:voyage80-footprint-7; }
.header-voyage[data-voyage="58"] .voyage80-footprint[data-step="8"] { animation-name:voyage80-footprint-8; }
.header-voyage[data-voyage="58"] .voyage80-footprint[data-step="9"] { animation-name:voyage80-footprint-9; }
.header-voyage[data-voyage="58"] .voyage80-footprint[data-step="10"] { animation-name:voyage80-footprint-10; }
.header-voyage[data-voyage="58"] .voyage80-footprint[data-step="11"] { animation-name:voyage80-footprint-11; }
.header-voyage[data-voyage="58"] .voyage80-footprint[data-step="12"] { animation-name:voyage80-footprint-12; }
.header-voyage[data-voyage="58"] .voyage80-footprint[data-step="13"] { animation-name:voyage80-footprint-13; }
.header-voyage[data-voyage="58"] .voyage80-footprint[data-step="14"] { animation-name:voyage80-footprint-14; }
.header-voyage[data-voyage="58"] .voyage80-footprint[data-step="15"] { animation-name:voyage80-footprint-15; }
.header-voyage[data-voyage="58"] .voyage80-footprint[data-step="16"] { animation-name:voyage80-footprint-16; }
.header-voyage[data-voyage="58"] .voyage80-footprint[data-step="17"] { animation-name:voyage80-footprint-17; }
.header-voyage[data-voyage="58"] .voyage80-footprint[data-step="18"] { animation-name:voyage80-footprint-18; }
.header-voyage[data-voyage="58"] .voyage80-footprint[data-step="19"] { animation-name:voyage80-footprint-19; }

@keyframes voyage80-footprint-0 { 0%{opacity:0} .25%,2.1%{opacity:var(--voyage80-footprint-strength)} 10.5%,100%{opacity:0} }
@keyframes voyage80-footprint-1 { 0%,2.1%{opacity:0} 2.35%,4.2%{opacity:var(--voyage80-footprint-strength)} 12.6%,100%{opacity:0} }
@keyframes voyage80-footprint-2 { 0%,4.2%{opacity:0} 4.45%,6.3%{opacity:var(--voyage80-footprint-strength)} 14.7%,100%{opacity:0} }
@keyframes voyage80-footprint-3 { 0%,6.3%{opacity:0} 6.55%,8.4%{opacity:var(--voyage80-footprint-strength)} 16.8%,100%{opacity:0} }
@keyframes voyage80-footprint-4 { 0%,8.4%{opacity:0} 8.65%,10.5%{opacity:var(--voyage80-footprint-strength)} 18.9%,100%{opacity:0} }
@keyframes voyage80-footprint-5 { 0%,10.5%{opacity:0} 10.75%,12.6%{opacity:var(--voyage80-footprint-strength)} 21%,100%{opacity:0} }
@keyframes voyage80-footprint-6 { 0%,12.6%{opacity:0} 12.85%,14.7%{opacity:var(--voyage80-footprint-strength)} 23.1%,100%{opacity:0} }
@keyframes voyage80-footprint-7 { 0%,14.7%{opacity:0} 14.95%,16.8%{opacity:var(--voyage80-footprint-strength)} 25.2%,100%{opacity:0} }
@keyframes voyage80-footprint-8 { 0%,16.8%{opacity:0} 17.05%,18.9%{opacity:var(--voyage80-footprint-strength)} 27.3%,100%{opacity:0} }
@keyframes voyage80-footprint-9 { 0%,18.9%{opacity:0} 19.15%,21%{opacity:var(--voyage80-footprint-strength)} 29.4%,100%{opacity:0} }
@keyframes voyage80-footprint-10 { 0%,21%{opacity:0} 21.25%,23.1%{opacity:var(--voyage80-footprint-strength)} 31.5%,100%{opacity:0} }
@keyframes voyage80-footprint-11 { 0%,23.1%{opacity:0} 23.35%,25.2%{opacity:var(--voyage80-footprint-strength)} 33.6%,100%{opacity:0} }
@keyframes voyage80-footprint-12 { 0%,25.2%{opacity:0} 25.45%,27.3%{opacity:var(--voyage80-footprint-strength)} 35.7%,100%{opacity:0} }
@keyframes voyage80-footprint-13 { 0%,27.3%{opacity:0} 27.55%,29.4%{opacity:var(--voyage80-footprint-strength)} 37.8%,100%{opacity:0} }
@keyframes voyage80-footprint-14 { 0%,29.4%{opacity:0} 29.65%,31.5%{opacity:var(--voyage80-footprint-strength)} 39.9%,100%{opacity:0} }
@keyframes voyage80-footprint-15 { 0%,31.5%{opacity:0} 31.75%,33.6%{opacity:var(--voyage80-footprint-strength)} 42%,100%{opacity:0} }
@keyframes voyage80-footprint-16 { 0%,33.6%{opacity:0} 33.85%,35.7%{opacity:var(--voyage80-footprint-strength)} 44.1%,100%{opacity:0} }
@keyframes voyage80-footprint-17 { 0%,35.7%{opacity:0} 35.95%,37.8%{opacity:var(--voyage80-footprint-strength)} 46.2%,100%{opacity:0} }
@keyframes voyage80-footprint-18 { 0%,37.8%{opacity:0} 38.05%,39.9%{opacity:var(--voyage80-footprint-strength)} 48.3%,100%{opacity:0} }
@keyframes voyage80-footprint-19 { 0%,39.9%{opacity:0} 40.15%,42%{opacity:var(--voyage80-footprint-strength)} 50.4%,100%{opacity:0} }


.header-voyage[data-voyage="58"] .voyage58-leg-front { transform-origin:-3px 6px; }
.header-voyage[data-voyage="58"] .voyage58-leg-back { transform-origin:3px 6px; }
.header-voyage[data-voyage="58"] .voyage58-arm-front { transform-origin:5px -5px; }
.header-voyage[data-voyage="58"] .voyage58-arm-back { transform-origin:-5px -5px; }
.header-voyage[data-voyage="58"] .voyage58-shin { transform-box:view-box; transform-origin:0 0; }
.header-voyage[data-voyage="58"] .voyage58-shin-front { animation-name:voyage58-knee-front; }
.header-voyage[data-voyage="58"] .voyage58-shin-back { animation-name:voyage58-knee-back; }
.header-voyage[data-voyage="58"] .voyage58-elbow { transform-box:view-box; transform-origin:0 0; animation-name:voyage58-elbow; }

@keyframes voyage58-walk {
  0% { opacity:1; transform:translateX(0); }
  42%,70% { opacity:1; transform:translateX(204px); }
  71%,96% { opacity:0; transform:translateX(204px); }
  97% { opacity:0; transform:translateX(0); }
  100% { opacity:1; transform:translateX(0); }
}
@keyframes voyage58-lift {
  0%,61% { transform:translateY(0) scale(1) rotate(0); animation-timing-function:cubic-bezier(.45,0,.35,1); }
  69%,96% { transform:translateY(-57px) scale(.74) rotate(-3deg); }
  97%,100% { transform:translateY(0) scale(1) rotate(0); }
}
@keyframes voyage58-step {
  0%,4.2%,8.4%,12.6%,16.8%,21%,25.2%,29.4%,33.6%,37.8% { transform:rotate(var(--voyage58-step-forward)); animation-timing-function:ease-in-out; }
  2.1%,6.3%,10.5%,14.7%,18.9%,23.1%,27.3%,31.5%,35.7%,39.9% { transform:rotate(var(--voyage58-step-back)); animation-timing-function:ease-in-out; }
  42%,96% { transform:rotate(0); }
  97%,100% { transform:rotate(var(--voyage58-step-forward)); }
}
@keyframes voyage58-step-opposite {
  0%,4.2%,8.4%,12.6%,16.8%,21%,25.2%,29.4%,33.6%,37.8% { transform:rotate(var(--voyage58-step-back)); animation-timing-function:ease-in-out; }
  2.1%,6.3%,10.5%,14.7%,18.9%,23.1%,27.3%,31.5%,35.7%,39.9% { transform:rotate(var(--voyage58-step-forward)); animation-timing-function:ease-in-out; }
  42%,96% { transform:rotate(0); }
  97%,100% { transform:rotate(var(--voyage58-step-back)); }
}
@keyframes voyage58-body {
  0%,4.2%,8.4%,12.6%,16.8%,21%,25.2%,29.4%,33.6%,37.8%,42%,100% { transform:translateY(0); animation-timing-function:ease-in-out; }
  2.1%,6.3%,10.5%,14.7%,18.9%,23.1%,27.3%,31.5%,35.7%,39.9% { transform:translateY(var(--voyage58-bob)); animation-timing-function:ease-in-out; }
  61%,96% { transform:translateY(0); }
}
@keyframes voyage58-look {
  0%,42% { transform:rotate(0); animation-timing-function:ease-in-out; }
  49%,61% { transform:rotate(-9deg); }
  69%,96% { transform:rotate(0); }
  100% { transform:rotate(0); }
}
@keyframes voyage58-shadow {
  0%,61% { opacity:1; }
  65%,96% { opacity:0; }
  97%,100% { opacity:1; }
}
@keyframes voyage58-flight {
  0%,44% { opacity:0; transform:translate(135px,-4px) rotate(-8deg); }
  45% { opacity:1; transform:translate(125px,-4px) rotate(-7deg); animation-timing-function:cubic-bezier(.2,.7,.25,1); }
  57%,74% { opacity:1; transform:translate(0,0) rotate(0); animation-timing-function:cubic-bezier(.72,0,1,.68); }
  90% { opacity:1; transform:translate(var(--voyage58-flight-exit),-5px) rotate(-10deg); }
  91%,100% { opacity:0; transform:translate(var(--voyage58-flight-exit),-5px) rotate(-10deg); }
}
@keyframes voyage58-beam {
  0%,58% { opacity:0; transform:scaleY(.05); animation-timing-function:ease-out; }
  61%,70% { opacity:var(--voyage58-beam-strength); transform:scaleY(1); animation-timing-function:ease-in-out; }
  73%,100% { opacity:0; transform:scaleY(.05); }
}
@keyframes voyage58-ground {
  0%,59% { opacity:0; }
  61%,70% { opacity:.32; }
  73%,100% { opacity:0; }
}
@keyframes voyage58-engine {
  0%,58% { opacity:0; }
  61%,72% { opacity:.8; }
  74% { opacity:.45; }
  82%,90% { opacity:1; }
  91%,100% { opacity:0; }
}
@keyframes voyage58-passenger {
  0%,67.5% { opacity:0; }
  69%,90% { opacity:1; }
  91%,100% { opacity:0; }
}
@keyframes voyage58-wake {
  0%,76% { opacity:0; }
  84% { opacity:.62; }
  93%,100% { opacity:0; }
}
@keyframes voyage58-coin-btc {
  0%,74.5% { opacity:0; transform:translate(0,0) scale(.65) rotate(-10deg); }
  76% { opacity:1; transform:translate(0,1px) scale(1.08) rotate(0); }
  77.9% { opacity:.88; transform:translate(var(--voyage58-coin-x),18px) scale(1) rotate(110deg); }
  80.8%,100% { opacity:0; transform:translate(var(--voyage58-coin-x),var(--voyage58-coin-fall)) scale(.85) rotate(var(--voyage58-coin-spin)); }
}
@keyframes voyage58-coin-eth {
  0%,78% { opacity:0; transform:translate(0,0) scale(.65) rotate(-10deg); }
  79.5% { opacity:1; transform:translate(0,1px) scale(1.08) rotate(0); }
  81.4% { opacity:.88; transform:translate(var(--voyage58-coin-x),18px) scale(1) rotate(110deg); }
  84.3%,100% { opacity:0; transform:translate(var(--voyage58-coin-x),var(--voyage58-coin-fall)) scale(.85) rotate(var(--voyage58-coin-spin)); }
}
@keyframes voyage58-coin-usdc {
  0%,81% { opacity:0; transform:translate(0,0) scale(.65) rotate(-10deg); }
  82.5% { opacity:1; transform:translate(0,1px) scale(1.08) rotate(0); }
  84.4% { opacity:.88; transform:translate(var(--voyage58-coin-x),18px) scale(1) rotate(110deg); }
  87.3%,100% { opacity:0; transform:translate(var(--voyage58-coin-x),var(--voyage58-coin-fall)) scale(.85) rotate(var(--voyage58-coin-spin)); }
}
@keyframes voyage58-coin-xrp {
  0%,84% { opacity:0; transform:translate(0,0) scale(.65) rotate(-10deg); }
  85.5% { opacity:1; transform:translate(0,1px) scale(1.08) rotate(0); }
  87.4% { opacity:.88; transform:translate(var(--voyage58-coin-x),18px) scale(1) rotate(110deg); }
  90.3%,100% { opacity:0; transform:translate(var(--voyage58-coin-x),var(--voyage58-coin-fall)) scale(.85) rotate(var(--voyage58-coin-spin)); }
}
@keyframes voyage58-knee-front {
  0%,3.15%,4.2%,7.35%,8.4%,11.55%,12.6%,15.75%,16.8%,19.95%,21%,24.15%,25.2%,28.35%,29.4%,32.55%,33.6%,36.75%,37.8%,40.95% { transform:rotate(var(--voyage58-knee-soft)); animation-timing-function:ease-in-out; }
  1.05%,5.25%,9.45%,13.65%,17.85%,22.05%,26.25%,30.45%,34.65%,38.85% { transform:rotate(var(--voyage58-knee-flex)); animation-timing-function:ease-in-out; }
  2.1%,6.3%,10.5%,14.7%,18.9%,23.1%,27.3%,31.5%,35.7%,39.9% { transform:rotate(0deg); animation-timing-function:ease-in-out; }
  42%,96% { transform:rotate(0deg); }
  97%,100% { transform:rotate(var(--voyage58-knee-soft)); }
}
@keyframes voyage58-knee-back {
  0%,4.2%,8.4%,12.6%,16.8%,21%,25.2%,29.4%,33.6%,37.8% { transform:rotate(0deg); animation-timing-function:ease-in-out; }
  1.05%,2.1%,5.25%,6.3%,9.45%,10.5%,13.65%,14.7%,17.85%,18.9%,22.05%,23.1%,26.25%,27.3%,30.45%,31.5%,34.65%,35.7%,38.85%,39.9% { transform:rotate(var(--voyage58-knee-soft)); animation-timing-function:ease-in-out; }
  3.15%,7.35%,11.55%,15.75%,19.95%,24.15%,28.35%,32.55%,36.75%,40.95% { transform:rotate(var(--voyage58-knee-flex)); animation-timing-function:ease-in-out; }
  42%,96% { transform:rotate(0deg); }
  97%,100% { transform:rotate(0deg); }
}
@keyframes voyage58-elbow {
  0%,4.2%,8.4%,12.6%,16.8%,21%,25.2%,29.4%,33.6%,37.8% { transform:rotate(-18deg); animation-timing-function:ease-in-out; }
  2.1%,6.3%,10.5%,14.7%,18.9%,23.1%,27.3%,31.5%,35.7%,39.9% { transform:rotate(-30deg); animation-timing-function:ease-in-out; }
  42%,96% { transform:rotate(-12deg); }
  97%,100% { transform:rotate(-18deg); }
}

/* The scene stays above the wordmark; the header's controls keep their layout. */
@media(max-width:1150px) {
  .header-voyage[data-voyage="58"] { --voyage58-shell-origin:40px; }
}
@media(max-width:820px) {
  .header-voyage[data-voyage="58"] { --voyage58-shell-origin:28px; left:42px; top:-1px; width:calc(100vw - var(--voyage58-shell-origin) - 42px); height:53.025px; --voyage58-flight-exit:calc(170vw + 120px); }
  .brand-lockup:has(>.header-voyage[data-voyage="58"]),.login-brand-lockup:has(>.header-voyage[data-voyage="58"]) { padding-top:53px; }
  .landing-page .site-header:has(.header-voyage[data-voyage="58"]) { height:147px; }
  .login-page .site-header:has(.header-voyage[data-voyage="58"]) { height:135px; }
}
@media(max-width:520px) {
  .header-voyage[data-voyage="58"] { --voyage80-footprint-strength:.24; --voyage58-shell-origin:23px; left:35px; top:7px; width:calc(100vw - var(--voyage58-shell-origin) - 35px); height:41.475px; --voyage58-flight-exit:calc(220vw + 160px); }
  .brand-lockup:has(>.header-voyage[data-voyage="58"]),.login-brand-lockup:has(>.header-voyage[data-voyage="58"]) { padding-top:49px; }
  .landing-page .site-header:has(.header-voyage[data-voyage="58"]) { height:auto; min-height:159px; }
  .login-page .site-header:has(.header-voyage[data-voyage="58"]) { height:122px; }
}
@media(max-width:360px) {
  .header-voyage[data-voyage="58"] { --voyage58-shell-origin:18px; left:31px; top:8px; width:calc(100vw - var(--voyage58-shell-origin) - 31px); height:35.4375px; --voyage58-flight-exit:calc(260vw + 180px); }
  .brand-lockup:has(>.header-voyage[data-voyage="58"]),.login-brand-lockup:has(>.header-voyage[data-voyage="58"]) { padding-top:45px; }
}
@media(prefers-reduced-motion:reduce) {
  .header-voyage[data-voyage="58"] {
    --voyage58-duration:48s; --voyage58-step-forward:6deg;
    --voyage58-step-back:-6deg; --voyage58-knee-flex:22deg; --voyage58-knee-soft:5deg; --voyage58-bob:0px; --voyage58-beam-strength:.6;
    --voyage80-footprint-strength:.16;
    --voyage80-sole-front-x:.348px; --voyage80-sole-back-x:6.348px;
    --voyage80-sole-front-y:2.220px; --voyage80-sole-back-y:2.220px;
  }
  .header-voyage[data-voyage="58"] .voyage58-wake { visibility:hidden; }
}

/* Clip only at the page edge, never at the old 260px local stage. */
.landing-page:has(.header-voyage[data-voyage="58"]),.login-page:has(.header-voyage[data-voyage="58"]) { overflow-x:clip; }
html:has(body:is(.landing-page,.login-page) .header-voyage[data-voyage="58"]) { overflow-x:clip; }
