:root{--void: #050404;--paper: #efe9df;--ash: rgba(239, 233, 223, .56);--hair: rgba(239, 233, 223, .16);--ember: #ef5415;--display: "Bodoni Moda", "Didot", "Bodoni 72", Georgia, serif;--mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;color-scheme:dark}html,body{margin:0;background:var(--void);color:var(--paper);-webkit-text-size-adjust:100%}[hidden]{display:none!important}body{font-family:var(--mono);font-size:12px;letter-spacing:.04em;overflow-x:hidden;-webkit-tap-highlight-color:transparent}#stage,#hud{position:fixed;inset:0 auto auto 0;width:100%;height:100%;display:block;pointer-events:none}@supports (height: 100lvh){#stage,#hud{height:100lvh}}#stage{z-index:0}#hud{z-index:1}.haptic{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.label{font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--ash)}.chrome{position:fixed;z-index:5;left:0;right:0;display:flex;justify-content:space-between;align-items:flex-end;gap:12px;pointer-events:none;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}.chrome.top{top:0;padding-top:calc(16px + env(safe-area-inset-top,0px));padding-bottom:34px;align-items:flex-start;background:linear-gradient(to bottom,var(--void) 0,var(--void) 55%,rgba(5,4,4,0))}.chrome.bottom{bottom:0;padding-bottom:calc(18px + env(safe-area-inset-bottom,0px));padding-top:40px;background:linear-gradient(to top,var(--void) 0,var(--void) 50%,rgba(5,4,4,0))}.chrome>*{pointer-events:auto}.mark{font-family:var(--display);font-size:15px;letter-spacing:.42em;color:var(--paper);text-decoration:none;border:0}.count{display:grid;gap:6px}.count .rule{width:34px;height:1px;background:var(--paper)}.count b{font-family:var(--display);font-weight:700;font-size:clamp(28px,4.6vw,42px);line-height:1}.count b small{font-family:var(--mono);font-weight:400;font-size:10px;color:var(--ash);letter-spacing:.24em;margin-left:8px}.controls{display:flex;gap:8px;align-items:center}button{font:inherit;font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--paper);background:#05040499;border:1px solid var(--hair);padding:10px 14px;cursor:pointer;display:inline-flex;align-items:center;gap:10px;border-radius:0}button:hover{border-color:var(--ash)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:1px solid var(--ember);outline-offset:3px}button[aria-pressed=true]{border-color:var(--paper)}.play{border-color:var(--ember)}.play i{width:0;height:0;border-left:8px solid var(--ember);border-top:5px solid transparent;border-bottom:5px solid transparent}.play.is-on i{width:8px;height:10px;border:0;border-left:3px solid var(--ember);border-right:3px solid var(--ember)}.time{font-variant-numeric:tabular-nums;color:var(--ash)}main{position:relative;z-index:2}section{min-height:100svh;box-sizing:border-box;display:grid;align-content:center;padding-left:max(24px,env(safe-area-inset-left,0px));padding-right:max(24px,env(safe-area-inset-right,0px));padding-block:110px}.hero{pointer-events:none;align-content:end;padding-bottom:150px}.hero .label{justify-self:center;transition:opacity .6s ease}.panel{max-width:400px;display:grid;gap:18px}.panel h2{margin:0;font-family:var(--mono);font-weight:500;font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--ash);display:flex;justify-content:space-between;gap:12px}.panel h2 .soon{color:var(--ember)}.panel h3{margin:0;font-family:var(--display);font-weight:700;font-size:clamp(34px,5vw,52px);letter-spacing:.05em;line-height:1.05;text-wrap:balance}.panel p{margin:0;color:var(--ash);line-height:1.75;max-width:46ch}a{color:var(--paper);text-decoration:none;border-bottom:1px solid var(--ember);padding-bottom:2px}a:hover{color:var(--ember)}.cta{font-size:10px;letter-spacing:.24em;text-transform:uppercase;justify-self:start}.slot{border:1px dashed var(--hair);padding:16px;color:var(--ash);line-height:1.7;font-size:11px}.game-card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px 16px;padding:16px 18px;border:1px solid rgba(239,84,21,.6);background:#ef54150f;color:var(--paper);transition:background .3s ease,border-color .3s ease}.game-card:hover,.game-card.is-active{background:#ef541524;border-color:var(--ember);color:var(--paper)}.game-card .label{grid-column:1}.game-card strong{grid-column:1;font-family:var(--display);font-weight:700;font-size:22px;letter-spacing:.04em}.game-card .arrow{grid-column:2;grid-row:1 / span 2;font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--ember)}.game-card{overflow:hidden}.game-card .clip{grid-column:1 / -1;grid-row:1;position:relative;display:block;margin:-16px -18px 10px;aspect-ratio:16 / 9;background:#120d0b url(/hub/lessons-gameplay-v2.jpg) center / cover;border-bottom:1px solid rgba(239,84,21,.6)}.game-card .clip video{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}.game-card .clip-tag{position:absolute;left:10px;top:10px;display:inline-flex;align-items:center;gap:7px;padding:5px 8px;font-size:9px;letter-spacing:.24em;text-transform:uppercase;color:var(--paper);background:#050404b8}.game-card .clip-tag i{width:6px;height:6px;border-radius:50%;background:var(--ember);animation:outnow-beat 1.034s ease-out infinite}.game-card .label{grid-row:2}.game-card strong{grid-row:3}.game-card .arrow{grid-row:2 / span 2}@media(prefers-reduced-motion:reduce){.game-card .clip-tag i{animation:none}}.links{list-style:none;margin:0;padding:0;display:grid}.links li{border-top:1px solid var(--hair)}.links li:last-child{border-bottom:1px solid var(--hair)}.links a,.links .pending{display:grid;grid-template-columns:2.4em 1fr auto;align-items:baseline;gap:12px;padding:16px 2px;border:0;color:var(--ash);transition:color .2s ease,padding .2s ease}.links .n{font-variant-numeric:tabular-nums;font-size:10px}.links .name{font-family:var(--display);font-weight:700;font-size:clamp(22px,3vw,28px);letter-spacing:.05em;color:inherit}.links .tag{font-size:9px;letter-spacing:.24em;text-transform:uppercase}.links li.is-active a,.links li.is-active .pending{color:var(--paper);padding-left:10px}.links li.is-active .n{color:var(--ember)}.book{display:grid;gap:18px}.chips{border:0;margin:0;padding:0;display:flex;gap:8px;flex-wrap:wrap}.chips legend{margin-bottom:10px;padding:0}.chips label{position:relative}.chips input{position:absolute;opacity:0;top:0;right:0;bottom:0;left:0;margin:0;cursor:pointer}.chips span{display:inline-block;padding:9px 14px;border:1px solid var(--hair);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--ash);transition:all .2s ease}.chips input:checked+span{border-color:var(--ember);color:var(--paper);background:#ef54151f}.chips input:focus-visible+span{outline:1px solid var(--ember);outline-offset:3px}.field{display:grid;gap:6px}.field input,.field textarea{font:inherit;font-size:14px;letter-spacing:.02em;color:var(--paper);background:transparent;border:0;border-bottom:1px solid var(--hair);padding:8px 0;border-radius:0;resize:vertical;min-width:0}.field input:focus,.field textarea:focus{border-bottom-color:var(--ember);outline:none}.field input::placeholder,.field textarea::placeholder{color:#efe9df47}.send{justify-self:start;border-color:var(--ember)}.err{color:var(--ember);font-size:11px;min-height:1em;margin:0}.sent{border-left:2px solid var(--ember);padding-left:14px;color:var(--paper)!important}@media(max-width:760px){section{align-content:end;padding-bottom:130px;padding-top:50svh}section.hero{padding-top:0}.panel{max-width:none;background:linear-gradient(to bottom,rgba(5,4,4,0),rgba(5,4,4,.97) 48px,var(--void));padding-top:32px;margin-inline:-24px;padding-inline:24px}}@media(min-width:761px){.panel{margin-left:4vw;padding:28px;margin-block:-28px;background:#050404c7;box-shadow:0 0 70px 50px #050404c7}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}.player iframe{display:block;width:100%;height:352px;border:0;border-radius:12px;background:#121212}.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.send[disabled]{opacity:.5;cursor:progress}.outnow{position:fixed;top:0;right:0;bottom:0;left:0;z-index:4;pointer-events:none}.outnow-title{position:absolute;left:0;top:0;margin:0;display:grid;justify-items:center;gap:16px;opacity:0;transition:opacity .9s ease .3s;will-change:transform;text-align:center}.outnow.is-on .outnow-title{opacity:1}.outnow-title .t{font-family:var(--display);font-weight:400;font-size:clamp(28px,3.4vw,44px);letter-spacing:.5em;margin-right:-.5em;text-transform:uppercase;color:var(--paper);text-shadow:0 0 18px var(--void),0 0 6px var(--void);white-space:nowrap}.outnow-title .s{font-size:11px;letter-spacing:.34em;margin-right:-.34em;text-transform:uppercase;color:var(--ember);display:inline-flex;align-items:center;gap:12px}.outnow-title .s:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ember);box-shadow:0 0 10px #ef5415cc;animation:outnow-beat 1.034s ease-out infinite}@keyframes outnow-beat{0%{transform:scale(1.35)}60%,to{transform:scale(1)}}.outnow .node{position:absolute;left:0;top:0;border:0;padding:0;color:var(--paper);opacity:0;transition:opacity .26s ease;will-change:transform}.outnow.is-on .node{opacity:1;pointer-events:auto;transition:opacity .8s ease calc(.5s + var(--i) * .11s)}.outnow .node i{position:absolute;width:60px;height:60px;left:-30px;top:-30px;border-radius:50%}.outnow .node i:before,.outnow .node i:after{content:"";position:absolute;left:50%;top:50%;border-radius:50%;transform:translate(-50%,-50%);transition:width .26s ease,height .26s ease,box-shadow .26s ease,border-color .26s ease}.outnow .node i:before{width:8px;height:8px;background:var(--ember);box-shadow:0 0 8px #ef5415b3}.outnow .node i:after{width:17px;height:17px;border:1px solid rgba(239,233,223,.7)}.outnow .node:hover i:before,.outnow .node:focus-visible i:before{width:10px;height:10px;box-shadow:0 0 16px #ef5415f2}.outnow .node:hover i:after,.outnow .node:focus-visible i:after{width:26px;height:26px;border-color:var(--ember)}.outnow .node span{position:absolute;white-space:nowrap;padding:12px 6px;font-size:10px;letter-spacing:.26em;text-transform:uppercase;color:var(--paper);text-shadow:0 0 12px var(--void),0 0 4px var(--void);transition:color .2s ease}.outnow .node span b{font-weight:400;color:var(--ember);margin-right:10px}.outnow .node span em{font-style:normal;margin-left:12px;display:inline-block;transition:transform .22s ease,color .22s ease}.outnow .node:hover span em,.outnow .node:focus-visible span em{color:var(--ember);transform:translate(4px)}.outnow .node.is-lit span em{color:var(--ember);transform:translate(4px)}.outnow .node.is-lit i:after{width:24px;height:24px;border-color:var(--ember)}.outnow .node:focus-visible{outline:none}.outnow .node[data-side=r] span{left:var(--r);top:0;transform:translateY(-50%)}.outnow .node[data-side=l] span{right:var(--r);top:0;transform:translateY(-50%)}.outnow .node[data-side=t] span{bottom:calc(var(--r) - 8px);left:0;transform:translate(calc(-50% + var(--dx)))}.outnow .node[data-side=b] span{top:calc(var(--r) - 8px);left:0;transform:translate(calc(-50% + var(--dx)))}@media(max-width:760px){.outnow .node span{letter-spacing:.16em}.outnow .node span b{margin-right:7px}.outnow .node span em{margin-left:8px}}@media(prefers-reduced-motion:reduce){.outnow.is-on .node{transition-delay:0s}.outnow-title .s:before{animation:none}}
