/* Route handoff: same opaque frame on both sides of document navigation. */
.route-transition{--handoff-color:#f6f3ec}
.route-transition[data-kind="messy"]{--handoff-color:#9bd928}
.route-transition[data-kind="price"]{--handoff-color:#07121e}
.route-transition[data-kind="worlds"]{--handoff-color:#07121e}
.route-transition[data-kind="services"]{--handoff-color:#07121e}
.route-transition[data-kind="process"]{--handoff-color:#07121e}
.route-transition[data-kind="luma"]{--handoff-color:#06111d}
.route-transition[data-kind="nabta"]{--handoff-color:#073a29}
.route-transition[data-kind="nova"]{--handoff-color:#f6f3ec}
.route-transition[data-kind="about"]{--handoff-color:#f6f3ec}
.route-transition[data-kind="home"]{--handoff-color:#f6f3ec}

.transition-bridge{display:block!important;position:absolute;inset:0;z-index:100;opacity:0;background:var(--handoff-color);transition:opacity .22s linear;pointer-events:none}
.route-transition.handoff .transition-bridge{opacity:1}
.route-transition[data-kind="home"] .transition-bridge{background:var(--handoff-color) url('/assets/logos/home-assembly.svg') center / min(76vw,630px) auto no-repeat}
.footer-home{display:inline-block;border-radius:6px}
.footer-home:focus-visible{outline:2px solid var(--lime,#9bd928);outline-offset:8px}
.brief-transition{display:none}
.route-transition[data-kind="messy"]{background:transparent!important;overflow:hidden}
.route-transition[data-kind="messy"]::before,.route-transition[data-kind="messy"]::after,
.route-transition[data-kind="messy"] .transition-bg,.route-transition[data-kind="messy"] .transition-copy,
.route-transition[data-kind="messy"] .transition-mark,.route-transition[data-kind="messy"] .transition-lines,
.route-transition[data-kind="messy"] .transition-panels{display:none!important}
.route-transition[data-kind="messy"] .brief-transition{display:flex;position:absolute;inset:0;align-items:center;justify-content:center;background:#9bd928;color:#07121e;isolation:isolate;clip-path:inset(100% 0 0);overflow:hidden}
.route-transition[data-kind="messy"].active .brief-transition{animation:briefCurtain .48s cubic-bezier(.22,1,.36,1) both}
.brief-transition::before{content:"";position:absolute;inset:24px;border:1px solid #07121e26;border-radius:2px}
.brief-core{position:relative;text-align:center;z-index:2}
.brief-eyebrow{display:block;font-size:10px;font-weight:600;letter-spacing:.19em;margin-bottom:28px}
.brief-core strong{display:block;font-size:clamp(64px,8.5vw,132px);line-height:.91;letter-spacing:-.065em;font-weight:500}
.brief-core i{font-family:Georgia,serif;font-weight:400;letter-spacing:-.06em}
.brief-rule{display:block;width:64px;height:2px;background:currentColor;margin:32px auto 18px;transform-origin:left}
.brief-caption{font-size:14px;letter-spacing:.01em}
.brief-index{position:absolute;bottom:46px;left:48px;font-size:10px;letter-spacing:.16em}
.brief-fragment{position:absolute;left:50%;top:50%;padding:15px 23px;border:1px solid #07121e55;background:#c7ee81;font-size:13px;white-space:nowrap;border-radius:3px;box-shadow:0 8px 24px #07121e0a;opacity:0}
.fragment-one{--fragment-x:-440px;--fragment-y:-170px;--fragment-r:-13deg}
.fragment-two{--fragment-x:255px;--fragment-y:-95px;--fragment-r:12deg}
.fragment-three{--fragment-x:-330px;--fragment-y:140px;--fragment-r:7deg}
.active .brief-fragment{animation:briefGather .8s cubic-bezier(.65,0,.25,1) .15s both}
.active .brief-core{animation:briefResolve .55s cubic-bezier(.22,1,.36,1) .85s both}
.active .brief-rule{animation:briefUnderline .5s ease .95s both}
.active .brief-index{animation:briefResolve .45s ease .4s both}
@keyframes briefCurtain{to{clip-path:inset(0)}}
@keyframes briefGather{0%{opacity:0;transform:translate(var(--fragment-x),calc(var(--fragment-y) + 80px)) rotate(var(--fragment-r))}25%,48%{opacity:1;transform:translate(var(--fragment-x),var(--fragment-y)) rotate(var(--fragment-r))}100%{opacity:0;transform:translate(-50%,-50%) scale(.5) rotate(0)}}
@keyframes briefResolve{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@keyframes briefUnderline{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:600px){
.brief-transition::before{inset:14px}
.brief-eyebrow{font-size:8px;letter-spacing:.13em;margin-bottom:25px}
.brief-core strong{font-size:clamp(60px,15vw,88px)}
.brief-caption{font-size:12px}
.brief-index{left:28px;bottom:32px;font-size:8px}
.brief-fragment{font-size:11px;padding:12px 16px}
.fragment-one{--fragment-x:-145px;--fragment-y:-185px}
.fragment-two{--fragment-x:20px;--fragment-y:145px}
.fragment-three{--fragment-x:-140px;--fragment-y:115px}
}
@media(prefers-reduced-motion:reduce){.brief-transition,.brief-transition *{animation:none!important}.transition-bridge{transition:none}}

html[data-arrive="messy"].arrival-pending::before{background:#9bd928!important}
html[data-arrive="price"].arrival-pending::before{background:#07121e!important}
html[data-arrive="worlds"].arrival-pending::before{background:#07121e!important}
html[data-arrive="services"].arrival-pending::before{background:#07121e!important}
html[data-arrive="process"].arrival-pending::before{background:#07121e!important}
html[data-arrive="luma"].arrival-pending::before{background:#06111d!important}
html[data-arrive="nabta"].arrival-pending::before{background:#073a29!important}
html[data-arrive="nova"].arrival-pending::before{background:#f6f3ec!important}
html[data-arrive="about"].arrival-pending::before{background:#f6f3ec!important}
html[data-arrive="home"].arrival-pending::before{background:#f6f3ec!important}
