/* Paint the green as an image, keeping viewport-edge background-color transparent for iOS browser chrome. */
html{background:var(--paper,#eeefe7)}
.bt-opening-run .bt-opening{display:block;position:fixed;inset:0;z-index:50;overflow:hidden;pointer-events:none;animation:opening-safety 0s 2.9s forwards}
.bt-opening *{pointer-events:none}
.opening-panel{position:absolute;left:0;right:0;height:50.2%;background-color:transparent;background-image:linear-gradient(#c7eb8107 1px,transparent 1px),linear-gradient(90deg,#c7eb8107 1px,transparent 1px),linear-gradient(var(--ink,#1b302b),var(--ink,#1b302b));background-size:80px 80px,80px 80px,100% 100%;will-change:transform}
.opening-panel-top{top:0;border-bottom:1px solid #c7eb8126;animation:connection-open-up .9s .18s cubic-bezier(.76,0,.24,1) both}
.opening-panel-bottom{bottom:0;border-top:1px solid #c7eb8126;animation:connection-open-down .9s .18s cubic-bezier(.76,0,.24,1) both}
.opening-connection{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#eeefe7;animation:connection-mark 1.08s ease both}
.opening-logo{position:relative;display:flex;align-items:center;justify-content:center;gap:32px}
.opening-brand{font:750 clamp(76px,11vw,128px)/1 'Manrope',sans-serif;letter-spacing:-.075em}
.opening-brand>span{color:#c7eb81}
.opening-brace{font:400 clamp(66px,9vw,106px)/1 'Instrument Serif',serif;color:#a6b99d;--bracket-direction:-1;animation:opening-bracket 1.08s cubic-bezier(.76,0,.24,1) both}
.opening-brace:last-child{--bracket-direction:1}
.opening-connection p{font:500 10px/1.5 'DM Sans',sans-serif;letter-spacing:.22em;margin:24px 0 28px}
.opening-network{position:absolute;top:50%;left:50%;width:min(76vw,820px);height:1px;background:#c7eb812b;transform:translate(-50%,-50%);z-index:-1}
.opening-network i{position:absolute;top:-3px;width:7px;height:7px;border:1px solid #a6b99d;border-radius:50%;background:#1b302b;animation:opening-node .8s ease both}
.opening-network i:nth-child(1){left:0}.opening-network i:nth-child(2){left:16%;animation-delay:.07s}.opening-network i:nth-child(3){right:16%;animation-delay:.14s}.opening-network i:nth-child(4){right:0;animation-delay:.21s}.opening-network i:nth-child(5){left:50%;top:-48px;width:1px;height:96px;border:0;border-radius:0;background:#c7eb812b;transform:rotate(32deg)}
.opening-link{position:relative;width:160px;height:1px;background:#c7eb8140;transform-origin:left;animation:opening-connect .55s cubic-bezier(.22,1,.36,1) both}
.opening-link span{position:absolute;left:0;top:-3px;width:7px;height:7px;border-radius:50%;background:#c7eb81;box-shadow:0 0 12px #c7eb8155;animation:opening-packet .85s .06s cubic-bezier(.4,0,.2,1) both}
.opening-title-line{display:block}
.bt-opening-run .opening-title-line{overflow:hidden;padding:0 .08em .12em;margin:0 -.08em -.12em}
.bt-opening-run .opening-title-line>span{display:block;animation:opening-title .7s .35s cubic-bezier(.16,1,.3,1) both}
.bt-opening-run .opening-title-line:nth-child(2)>span{animation-delay:.45s}.bt-opening-run .opening-title-line:nth-child(3)>span{animation-delay:.55s}
.bt-opening-run .hero-description{animation:opening-content .6s .62s ease both}
.bt-opening-run .hero-copy>.button{animation:opening-content .6s .72s ease both}
.hero-meta{display:flex;align-items:center;gap:24px}.opening-replay{display:flex;align-items:center;gap:8px;margin:0;padding:0;min-height:44px;border:0;background:none;color:var(--muted,#657568);font:500 11px 'DM Sans',sans-serif;cursor:pointer}
.opening-replay svg{width:14px;height:14px}.opening-replay:hover{color:var(--ink,#1b302b)}.opening-replay:focus-visible{outline:2px solid #567d33;outline-offset:4px}.opening-replay:disabled{opacity:.5;cursor:default}
@keyframes connection-open-up{to{transform:translate3d(0,-102%,0)}}
@keyframes connection-open-down{to{transform:translate3d(0,102%,0)}}
@keyframes connection-mark{0%{opacity:0;transform:translate3d(0,7px,0)}18%,36%{opacity:1;transform:none}75%,100%{opacity:0;transform:translate3d(0,-8px,0)}}
@keyframes opening-bracket{0%,30%{transform:none}100%{transform:translate3d(calc(var(--bracket-direction)*36px),0,0)}}
@keyframes opening-node{0%{opacity:0;transform:scale(.4)}35%,65%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.3)}}
@keyframes opening-connect{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes opening-packet{0%{opacity:0;transform:translate3d(0,0,0)}15%,65%{opacity:1}100%{opacity:0;transform:translate3d(153px,0,0)}}
@keyframes opening-title{from{transform:translate3d(0,115%,0)}to{transform:translate3d(0,0,0)}}
@keyframes opening-content{from{opacity:0;transform:translate3d(0,14px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes opening-safety{to{opacity:0;visibility:hidden}}
@media(max-width:700px){.opening-logo{gap:24px}.opening-network{width:88vw}.opening-panel{background-size:56px 56px,56px 56px,100% 100%}.opening-connection p{font-size:9px;letter-spacing:.16em}.opening-network i:nth-child(2){left:8%}.opening-network i:nth-child(3){right:8%}}
@media(prefers-reduced-motion:reduce){.bt-opening-run .bt-opening,.opening-replay{display:none!important}.bt-opening-run .opening-title-line>span,.bt-opening-run .hero-description,.bt-opening-run .hero-copy>.button{animation:none!important;transform:none!important;opacity:1!important}}
