.challengedleIntro,.introPending{position:fixed;inset:0;z-index:900}.introPending{background:var(--bg)}body:has(.challengedleIntro,.introPending),html:has(.challengedleIntro,.introPending){overflow:hidden}.siteShell[data-intro-active=true] .brand{opacity:0}.challengedleIntro{display:grid;place-items:center;overflow:hidden;isolation:isolate;color:var(--text)}.challengedleIntro:before{content:"";position:absolute;inset:0;z-index:-1;background:var(--bg)}.introBrand{position:relative}.introWord{color:var(--primary);display:block;font-size:clamp(36px,8vw,54px);font-weight:700;letter-spacing:-1px;line-height:1.25;white-space:nowrap;animation:introArrive .64s ease-out .4s both}.introChallenges{position:absolute;bottom:calc(100% + 26px);left:50%;display:flex;align-items:center;gap:24px;transform:translateX(-50%);animation:introMotifArrive .4s ease-out 50ms both}.introPuzzle{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;width:48px;height:48px;transform:rotate(-6deg)}.introPuzzle i{border-radius:3px;background:#9dc4e0;animation:introTileSettle .7s cubic-bezier(.22,1,.36,1) .2s both}.introPuzzle i:nth-child(2n){background:#b7cbb3}.introPuzzle i:nth-child(3n){background:#d8bd84}.introPuzzle i:last-child{background:transparent}.introTower{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px;width:52px;height:48px;padding-bottom:3px;border-bottom:3px solid var(--gold)}.introTower i{height:9px;border-radius:3px;background:var(--primary);animation:introDiscSettle .5s cubic-bezier(.22,1,.36,1) both}.introTower i:first-child{width:24px;animation-delay:.65s}.introTower i:nth-child(2){width:36px;background:#9dc4e0;animation-delay:.45s}.introTower i:nth-child(3){width:48px;background:#d8bd84;animation-delay:.25s}.introRecall{display:flex;align-items:center;gap:5px;height:48px}.introRecall i{width:13px;height:24px;border-radius:5px;background:#9dc4e0;animation:introColorRecall 1s ease-in-out .6s both}.introRecall i:nth-child(2){background:#b7cbb3;animation-delay:.8s}.introRecall i:nth-child(3){background:#d8bd84;animation-delay:1s}.introAttribution{position:absolute;bottom:max(20px,calc(env(safe-area-inset-bottom) + 20px));left:50%;display:flex;align-items:center;gap:6px;white-space:nowrap;transform:translateX(-50%);color:var(--ofb-brand);font-size:12px;font-weight:650;animation:introArrive .3s ease-out .4s both}.introAttribution img{display:block;object-fit:contain}.challengedleIntro[data-phase=exiting]:before{animation:introRevealPage .52s ease .18s both}.challengedleIntro[data-phase=exiting] .introWord{transform-origin:center;animation:introBecomeTitle .76s cubic-bezier(.22,1,.36,1) both}.challengedleIntro[data-phase=exiting] .introAttribution,.challengedleIntro[data-phase=exiting] .introChallenges{animation:introFadeOut .18s ease-out both}@keyframes introArrive{0%{opacity:0}to{opacity:1}}@keyframes introMotifArrive{0%{opacity:0;translate:0 5px}to{opacity:1;translate:0 0}}@keyframes introTileSettle{0%{opacity:0;transform:translate(-4px,4px)}to{opacity:1;transform:translate(0)}}@keyframes introDiscSettle{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes introColorRecall{0%,to{opacity:.6;transform:scaleY(1)}40%{opacity:1;transform:scaleY(1.2)}}@keyframes introFadeOut{to{opacity:0}}@keyframes introRevealPage{0%{opacity:1}to{opacity:0}}@keyframes introBecomeTitle{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:1;transform:translate(var(--intro-x,0),var(--intro-y,0)) scale(var(--intro-scale,.45))}}@media(prefers-reduced-motion:reduce){.challengedleIntro *{animation:none!important}.introChallenges{display:none}}