@view-transition{navigation:none}html.tbb-arriving:after{content:"";position:fixed;inset:0;background:#07070a;z-index:9998;pointer-events:none}.tbb-transition{position:fixed;inset:0;z-index:9999;overflow:hidden;visibility:hidden;opacity:0;pointer-events:none;perspective:900px}.tbb-transition.is-active{visibility:visible;opacity:1;pointer-events:auto}.tbb-transition__wash{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 55%,color-mix(in srgb,var(--bg) 65%,var(--accent-deep)) 0,color-mix(in srgb,var(--bg) 95%,var(--accent)) 37%,#07070a 72%);transform:translateY(0);transition:transform .38s cubic-bezier(.76,0,.24,1)}.tbb-transition__ribbons{position:absolute;inset:0;width:100%;height:100%;opacity:.65;transform:translateY(0);transition:transform .42s cubic-bezier(.76,0,.24,1),opacity .25s ease-out}.tbb-transition__ribbons path{fill:none;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:0}.tbb-transition__brand{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transform:translateY(0) scale(1);opacity:1;transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .2s ease-out}.tbb-transition__logo{width:clamp(116px,13vw,185px);height:auto;overflow:visible;filter:drop-shadow(0 18px 35px #0006)}.tbb-transition__piece{transform-box:fill-box;transform-origin:center;fill:url(#tbb-transition-metal);stroke:color-mix(in srgb,var(--ink) 75%,var(--accent-ink));stroke-width:1.1;stroke-opacity:.25;stroke-dasharray:1;stroke-dashoffset:0}.tbb-transition__dot{fill:var(--dot);transform-box:fill-box;transform-origin:center}.tbb-transition__glint{fill:none;stroke:color-mix(in srgb,var(--ink) 95%,var(--accent-ink));stroke-width:2;stroke-dasharray:.13 .87;stroke-dashoffset:-1;opacity:0}.tbb-transition.is-departing .tbb-transition__wash{animation:tbb-cover .18s cubic-bezier(.23,1,.32,1) both}.tbb-transition.is-departing .tbb-transition__ribbons path{animation:tbb-ribbon-draw .56s cubic-bezier(.23,1,.32,1) both}.tbb-transition.is-departing .tbb-transition__ribbons path:nth-child(2){animation-delay:40ms}.tbb-transition.is-departing .tbb-transition__ribbons path:nth-child(3){animation-delay:70ms}.tbb-transition.is-departing .tbb-transition__piece{animation:tbb-assemble .42s cubic-bezier(.16,1,.3,1) both}.tbb-transition.is-departing .tbb-transition__piece:nth-of-type(1){--from-x:-40px;--from-y:-32px;--from-r:-12deg}.tbb-transition.is-departing .tbb-transition__piece:nth-of-type(2){--from-x:56px;--from-y:-25px;--from-r:16deg;animation-delay:40ms}.tbb-transition.is-departing .tbb-transition__piece:nth-of-type(3){--from-x:42px;--from-y:44px;--from-r:-14deg;animation-delay:80ms}.tbb-transition.is-departing .tbb-transition__piece:nth-of-type(4){--from-x:88px;--from-y:8px;--from-r:20deg;animation-delay:.1s}.tbb-transition.is-departing .tbb-transition__dot{animation:tbb-dot-land .3s cubic-bezier(.22,1,.36,1) .19s both}.tbb-transition.is-departing .tbb-transition__glint{animation:tbb-metal-glint .39s cubic-bezier(.23,1,.32,1) .11s both}.tbb-transition.is-revealing .tbb-transition__wash{transform:translateY(-102%)}.tbb-transition.is-revealing .tbb-transition__ribbons{transform:translateY(-70%) rotate(-6deg);opacity:0}.tbb-transition.is-revealing .tbb-transition__brand{transform:translateY(-38px) scale(1.05);opacity:0}@keyframes tbb-cover{0%{opacity:0;transform:translateY(4%)}to{opacity:1;transform:translateY(0)}}@keyframes tbb-ribbon-draw{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes tbb-assemble{0%{transform:translate(var(--from-x),var(--from-y)) rotate(var(--from-r));opacity:0;fill-opacity:.2;stroke-dashoffset:1;stroke-opacity:1}to{transform:translate(0) rotate(0);opacity:1;fill-opacity:1;stroke-dashoffset:0;stroke-opacity:.25}}@keyframes tbb-dot-land{0%{transform:translate(65px,-100px) scale(.7);opacity:0}55%{opacity:1}78%{transform:translateY(3px) scale(1.12,.88)}to{transform:translate(0) scale(1)}}@keyframes tbb-metal-glint{0%{stroke-dashoffset:1;opacity:0}25%{opacity:.85}to{stroke-dashoffset:-.3;opacity:0}}@media(prefers-reduced-motion:reduce){.tbb-transition{display:none}html.tbb-arriving:after{display:none}}
