/* Sponsor and auction pages. Loaded after /styles.css, which provides fonts, tokens, header, buttons and footer. */
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.site-header nav a[aria-current="page"]{border-color:var(--yellow);color:var(--yellow)}
.sp-hero{position:relative;background:var(--ink);color:var(--white);overflow:hidden}
.sp-hero::before{content:"";position:absolute;inset:0;background:url('/assets/cutouts/photocopy-paper.webp') repeat;background-size:768px;opacity:.1;mix-blend-mode:screen;pointer-events:none}
.sp-hero .site-header nav a:hover{color:var(--yellow)}
.sp-hero a:focus-visible{outline-color:var(--yellow)}
.sp-hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(36px,5vw,80px);align-items:center;padding-block:clamp(50px,6vw,90px) clamp(60px,7vw,100px)}
.sp-hero h1,.au-hero h1{font:clamp(54px,7vw,108px)/.94 var(--display);letter-spacing:-.012em;margin:24px 0 30px}
.sp-hero h1 span{display:block}
.sp-hero h1 .stroke{color:transparent;-webkit-text-stroke:2px var(--paper);paint-order:stroke fill}
.sp-hero h1 b{font-weight:400;color:var(--red);-webkit-text-stroke:0}
.sp-lede{max-width:560px;font-size:clamp(18px,1.65vw,23px);line-height:1.44}
.sp-text-link{font-size:12px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--yellow);border-bottom:2px solid var(--yellow);padding-block:6px}
.sp-text-link:hover{color:var(--white);border-color:var(--white)}
.sp-hero-art{position:relative;isolation:isolate;transform:rotate(3deg)}
.sp-hero-art::before{content:"";position:absolute;z-index:-1;inset:6% 4% 0;background:var(--red);clip-path:polygon(0 2%,30% 0,62% 2%,100% 0,98% 50%,100% 98%,60% 100%,25% 98%,0 100%,2% 48%)}
.sp-hero-art img{display:block;width:100%;height:auto}
.sp-price-tag{position:absolute;right:-2%;bottom:6%;padding:14px 16px;background:var(--yellow);color:var(--ink);border:3px solid var(--ink);box-shadow:5px 5px 0 var(--red-deep);font:clamp(22px,2.4vw,36px)/.92 var(--display);transform:rotate(-7deg)}
.sp-hero-art .tape-one{top:2%;left:4%}
.sp-section{padding-block:clamp(80px,9vw,130px)}
.sp-section h2{font:clamp(54px,6.5vw,100px)/.92 var(--display);font-weight:400;letter-spacing:-.015em;margin:24px 0 30px}
.sp-section h2 span{color:var(--red-deep)}
.sp-intro{max-width:640px;font-size:clamp(18px,1.6vw,22px);line-height:1.5}
.sp-why{background:var(--paper);border-bottom:3px solid var(--ink)}
.sp-reasons{list-style:none;margin:44px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.sp-reasons li{padding:22px;background:var(--white);border:3px solid var(--ink);box-shadow:7px 7px 0 var(--ink);font-size:16px;line-height:1.5}
.sp-reasons li:nth-child(2){transform:rotate(1deg);box-shadow:7px 7px 0 var(--red)}
.sp-reasons strong{display:block;margin-bottom:12px;font:clamp(24px,2.2vw,32px)/1 var(--display);font-weight:400}
.sp-menu{background:var(--red);color:var(--ink)}
.sp-menu .section-tag{display:inline-block;background:var(--paper);padding:9px 12px;box-shadow:4px 4px 0 var(--ink);transform:rotate(-2deg)}
.sp-menu h2 span{color:var(--yellow);text-shadow:3px 3px 0 var(--ink)}
.sp-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.sp-card{position:relative;display:flex;flex-direction:column;padding:26px;background:var(--paper);border:4px solid var(--ink);box-shadow:10px 10px 0 var(--ink)}
.sp-card:nth-child(even){transform:rotate(.8deg)}
.sp-card:nth-child(odd){transform:rotate(-.6deg)}
.sp-card-tag,.sp-card-price{font-size:11px;font-weight:900;letter-spacing:.15em}
.sp-card-tag{color:var(--red-deep)}
.sp-card h3{font:clamp(34px,3.4vw,50px)/.95 var(--display);font-weight:400;margin:12px 0 14px}
.sp-card>p:not(.sp-card-tag):not(.sp-card-price){font-size:18px;line-height:1.45;font-weight:700}
.sp-card ul{margin:16px 0 24px;padding-left:20px;font-size:16px;line-height:1.5}
.sp-card li+li{margin-top:6px}
.sp-card-price{margin-top:auto;padding-top:16px;border-top:2px solid var(--ink)}
.sp-card-auction{background:var(--ink);color:var(--paper)}
.sp-card-auction .sp-card-tag{color:var(--yellow)}
.sp-card-auction .hit-button{margin-top:auto;align-self:flex-start}
.sp-how{background:var(--ink);color:var(--paper)}
.sp-how .section-tag span{color:var(--yellow)}
.sp-how h2 span{color:var(--yellow)}
.sp-steps{list-style:none;margin:40px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;counter-reset:step}
.sp-steps li{counter-increment:step;padding:22px 20px;border-top:4px solid var(--yellow);font-size:16px;line-height:1.5;color:#d9d5c9}
.sp-steps li::before{content:"0" counter(step);display:block;font:56px/1 var(--display);color:var(--red)}
.sp-steps strong{display:block;margin:10px 0 8px;font:26px/1 var(--display);font-weight:400;color:var(--white)}
.sp-rules{background:var(--yellow)}
.sp-rules-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(30px,6vw,90px);align-items:center}
.sp-rules h2 span{color:var(--red);text-shadow:3px 3px 0 var(--ink)}
.sp-rules ul{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.sp-rules li{padding:16px 18px;background:var(--ink);color:var(--paper);font-size:17px;line-height:1.45;font-weight:700}
.sp-rules li:nth-child(2){transform:rotate(-1deg);background:var(--paper);color:var(--ink);border:3px solid var(--ink)}
.sp-cta{background:var(--paper);text-align:center}
.sp-cta h2 span{display:inline-block;padding:.04em .14em .08em;background:var(--ink);color:var(--yellow);transform:rotate(-2deg)}
.sp-cta p{max-width:560px;margin:0 auto 34px;font-size:clamp(18px,1.6vw,22px);line-height:1.5}
.sp-cta p a{border-bottom:2px solid var(--red);font-weight:700}
.sp-cta .hit-button{text-transform:none;letter-spacing:.02em;font-size:14px}
.sp-footer{padding-top:0}
.au-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(36px,5vw,80px);align-items:center;padding-block:clamp(44px,5vw,80px) clamp(60px,7vw,100px)}
.au-hero h1 span{color:var(--yellow)}
.au-hero h1 .stroke{color:transparent;-webkit-text-stroke:2px var(--paper);paint-order:stroke fill}
.au-hero h1 b{font-weight:400;color:var(--red);-webkit-text-stroke:0}
.au-board{background:var(--paper)}
.au-board-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:clamp(36px,5vw,80px);align-items:start}
.au-list h2{font-size:clamp(46px,5vw,76px)}
/* Minecraft-style inventory. --u is one slot; the panel is nine slots wide like the game's. */
.mc-wrap{position:relative;--u:min(54px,calc((100vw - 76px)/9.5));transform:rotate(1.5deg)}
.mc{width:calc(var(--u)*9 + 28px);max-width:100%;padding:12px 12px 14px;background:#c6c6c6;border:3px solid #000;border-radius:6px;box-shadow:inset 3px 3px 0 #fff,inset -3px -3px 0 #555,10px 10px 0 var(--red);font:700 calc(var(--u)*.27)/1.2 'Courier New',ui-monospace,monospace;color:#3f3f3f}
.mc-top{display:grid;grid-template-columns:var(--u) calc(var(--u)*3.4) var(--u) minmax(0,1fr);gap:0 4px;align-items:end}
.mc-armor{display:grid;grid-template-rows:repeat(4,var(--u))}
.mc-view{height:calc(var(--u)*4);background:#000;border:2px solid;border-color:#373737 #fff #fff #373737;display:grid;place-items:center;overflow:hidden}
/* The character is built from CSS boxes in Minecraft proportions (head 8, body 8x12x4, limbs 4x12x4), measured in --p.
   No perspective, so it renders orthographic like the game. auction.js sets --yaw, --head-yaw and --pitch from the cursor. */
.mc-view{--p:calc(var(--u)*4/38)}
.mc-char{position:relative;width:calc(16*var(--p));height:calc(32*var(--p));margin-top:calc(3*var(--p));transform-style:preserve-3d;--yaw:-18deg;--head-yaw:-12deg;--pitch:4deg}
.mc-body3d,.mc-head3d,.mc-arm,.mcb{position:absolute;transform-style:preserve-3d}
.mc-body3d{inset:0;transform:rotateY(var(--yaw))}
.mc-head3d{left:calc(4*var(--p));top:0;width:calc(8*var(--p));height:calc(8*var(--p));transform-origin:50% 100%;transform:rotateY(var(--head-yaw)) rotateX(calc(var(--pitch)*-1))}
.mcb{width:calc(var(--w)*var(--p));height:calc(var(--h)*var(--p));left:calc(var(--x,0)*var(--p));top:calc(var(--y,0)*var(--p));transform:translateZ(calc(var(--z,0)*var(--p)))}
.mcb>i{position:absolute;left:0;top:0;width:100%;height:100%;background:var(--c)}
.mcb>.f-front{transform:translateZ(calc(var(--d)*var(--p)/2))}
.mcb>.f-back{transform:rotateY(180deg) translateZ(calc(var(--d)*var(--p)/2));filter:brightness(.62)}
.mcb>.f-right,.mcb>.f-left{width:calc(var(--d)*var(--p));left:calc((var(--w) - var(--d))*var(--p)/2);filter:brightness(.76)}
.mcb>.f-right{transform:rotateY(90deg) translateZ(calc(var(--w)*var(--p)/2))}
.mcb>.f-left{transform:rotateY(-90deg) translateZ(calc(var(--w)*var(--p)/2))}
.mcb>.f-top,.mcb>.f-bottom{height:calc(var(--d)*var(--p));top:calc((var(--h) - var(--d))*var(--p)/2)}
.mcb>.f-top{transform:rotateX(90deg) translateZ(calc(var(--h)*var(--p)/2));filter:brightness(1.12)}
.mcb>.f-bottom{transform:rotateX(-90deg) translateZ(calc(var(--h)*var(--p)/2));filter:brightness(.55)}
.mc-skull{--w:8;--h:8;--d:8;--c:#3b2b22}
.mc-skull>.f-front{background:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAFkElEQVR42lWUS28b1wFGv/uYJ4evoRiSeqt62IKs2I7cFHWcBDGcOGkStEiLFiiKLNpF0VX6F/ovuusP6DaBUQR27SALO7WD2pJl2a4sxVJIURxSJIec5713unAW8bf5dgdndcjqZAUApURKVak3dDsnpKSMSZmpDEKkGmdBEPx381GGl6YBFsfV99/N2871f11jtWKOUhpFsZPPU91UCrppcc6jJPF9X0hRLpUO9/eycbhko5bXYyGzDBpDloEQ3H/8rFrOL62cZmVLG/nDsxd+OtGYGvp+vlTOCIRQSZwIkU64rmUaQfO78xX98pmFq68tV8ulKBFRElGN5/JOlsY7+83l+Unyp9//RiRprlR6fnAwGo0o5amSUogojhkhjDNXZxNRf6NemiwUChM5pdFWe3DQ9r58uPd1KwBgcZQsjX322V+Pvc7de3cp4XbOZoypLFNSZVL6/tDO5IWGe2ll7sxkzVKZ8FOnYL/iOo2Ko4v0/n43BDKFar1Od5/uNA8ORCqiOAyjKE4TJSVkmgZjkkqlstE4mKrXl9fPOhWXS5UcDvRRltPsYs6u6gCgc4RJyr++dVOkqaXxcDyOo6hcLteLTs2uBKFbNZnIsN8d/OP2w/KDvbT9/R8vbTiJoKZ2ouLhOAoTANA1Pu73uGmazLZa7bZIJUnTaDiwTFrWjbXaK6aUjmZ+dHpu77BJTD3QG8k40kouKTj7Ow/a3f4QsHNW0TaQKR74vm7qlXz++Xd74Thw6xOn3Mm1hZqlaQfN9lfNsHn4fJkmv7h47rWfnetuPft+0L/Z6d249z/bH/oACULN1hozs6zm5lWalgpFk9N2+/jK6tyfP7ky95PFqVp9/cwpENryel6zVXbd82+/1Wm3v7x3zzL4nYP2zWddAShABLHjmJxSIlJx1HzOpGyUcm+fXZ5aXUJlBoGAd/Th6szMsLWbx+V330Sp7I+Dv9/YnF8dfbC+OIH48ycdADGgc0IXF1c0TeOEDE66643KuZVZWBYcB9VpELPzeNcg/Fef/Lq08RZsN2+bS1W+4OZubz3hkHkAgEPwztUP6en1V/v+cBiLhBqvn12dWz8Nx4Cu4BjQiK5EiXHq1pFEGPUUCINscPHb84sqinzABjYurJFMUUM3g1g0j7u+om6jjvl5ABh08O1X450HvYGfJSmkQAboJR4KqjIRxrok1WIBwMU3Xv/4d3/Y3tzkT3Yezs7OeMdGlMrp6WlYRWQ+dh8ftaJHTX+tvljVWeKd6NxCvaERMlEockJKttkbDgEwknHG735zmz99tN2YnOp3jtMorjVq0G30T6AUyxlDne8axlZ3cOvzf9u28ZcrP/9ic/skjBtKBnFw6tLlv326vru9ef3aF4VCkfc8b3J62rBzdpzmLANJijAB5dWa88v5d5Lj+FbnTsJw/T93r31zZ7vZsyT8rAm3spXAu//PvuelaaobJnNt46h5aFm59TNrn37wJiBhMJAMnMM0mRcvHsmlWLLRSGTQTNYNQiune8R4uPNUxCFlXNO1LAMnhFDKj49aHBKOAUpAKcpVEIZQoKZhzmBb4pS0K4bOvVF9zp2Ym7zxtJO3LVCiVKZUBoC+6CYlVOMMNEPBQZrCzMHKARLIMF/MLk63F4q9AjXr9tTi1LetcZrEoHiB+IHw4lSmTMMAY+AadB3RGCQDo4hC9MK+TIOyFkzQ4kJl00uOvJ6mcaVeSjgFQAkRSi3M1mEwEIaJGgAMTkAoCBkHg8NWS4fKacwb9NsnA875j11+AFFKkjS1NP7exhIYg5LICNwqCDAetUbj1qDPVAIiD0e+3zt0hZczNZUBeInFRZqWq7X333j14vkVSAlKwBhEDCW7XutkHA/CgNu614kZYl3TeDperNPj0Dnuj/Ejr/8D2ZzF3TwZvJsAAAAASUVORK5CYII=') center/100% 100%;image-rendering:pixelated}
.mc-skull>.f-bottom{--c:#c9956b}
.mc-cap{--w:8.6;--h:3;--d:8.6;--x:-.3;--y:-.9;--c:#e32e24}
.mc-cap>.f-front{background:linear-gradient(#f7f3e8,#f7f3e8) 50% 45%/40% 55% no-repeat,#e32e24}
.mc-brim{--w:8.6;--h:.6;--d:3;--x:-.3;--y:1.9;--z:5.5;--c:#a91e17}
.mc-torso{--w:8;--h:12;--d:4;--x:4;--y:8;--c:#e9e751}
.mc-torso>.f-front{background:linear-gradient(#f7f3e8,#f7f3e8) 50% 32%/64% 34% no-repeat,#e9e751}
.mc-torso>.f-front::before{content:"";position:absolute;left:37.5%;top:0;width:25%;height:6%;background:#c9956b}
.mc-arm{top:calc(8*var(--p));width:calc(4*var(--p));height:calc(12*var(--p));transform-origin:50% 8%}
.mc-arm-r{left:0;transform:rotateX(14deg)}
.mc-arm-l{left:calc(12*var(--p));transform:rotateX(8deg)}
.mc-char.mc-empty-hand .mc-arm-r{transform:none}
.mc-limb{--w:4;--h:12;--d:4;--c:linear-gradient(#e9e751 0 34%,#c9956b 34%)}
.mc-limb>.f-top{--c:#e9e751}
.mc-limb>.f-bottom{--c:#c9956b}
.mc-leg{--w:4;--h:12;--d:4;--y:20;--c:linear-gradient(#2f4f9e 0 84%,#4a4a4a 84%)}
.mc-leg-r{--x:4}
.mc-leg-l{--x:8}
.mc-leg>.f-top{--c:#2f4f9e}
.mc-leg>.f-bottom{--c:#4a4a4a}
.mc-held{position:absolute;left:calc(-2.5*var(--p));top:calc(7.5*var(--p));width:calc(9*var(--p));height:calc(9*var(--p));transform:translateZ(calc(2.6*var(--p)))}
.mc-arm-l .mc-held{left:calc(-.5*var(--p));top:calc(6.5*var(--p))}
.mc-held svg{display:block;width:100%;height:100%;shape-rendering:crispEdges}
/* Emote stage: a second character acts out the picked slot. auction.js sets data-emote on .au-stage. */
.au-stage-wrap{order:-1;position:sticky;top:24px}
.au-stage{--p:9px;position:relative;height:440px;display:grid;place-items:end center;padding-bottom:58px;overflow:hidden;border:4px solid var(--ink);box-shadow:10px 10px 0 var(--red);background:linear-gradient(#7fb2ff,#b9d6ff 70%);image-rendering:pixelated}
.au-stage::before{content:"";position:absolute;left:0;right:0;bottom:0;height:58px;background:linear-gradient(#5b9e3a 0 14px,#4a8a2e 14px 18px,#8a5a36 18px);background-size:auto;box-shadow:inset 0 4px 0 #6fbf45}
.au-stage::after{content:"";position:absolute;top:34px;right:12%;width:64px;height:64px;background:#fff6a8;box-shadow:0 0 0 8px rgba(255,246,168,.35)}
.au-stage .mc-char{margin:0;z-index:1}
.mc-prop{display:none;position:absolute;left:calc(3*var(--p));top:calc(12*var(--p));width:calc(10*var(--p));height:calc(10*var(--p));transform:translateZ(calc(9*var(--p)))}
.mc-prop svg{display:block;width:100%;height:100%;shape-rendering:crispEdges}
.mc-chat{position:absolute;z-index:2;left:10px;right:10px;bottom:10px;padding:6px 8px;background:rgba(0,0,0,.55);color:#fff;font:700 14px/1.35 'Courier New',ui-monospace,monospace;text-shadow:2px 2px 0 #3f3f3f}
.mc-fx{position:absolute;z-index:2;left:50%;top:22%;width:0;height:0}
.mc-fx i{position:absolute;left:0;top:0;font:normal 700 26px/1 'Courier New',monospace;color:#fff;text-shadow:2px 2px 0 #1e1e1e;opacity:0}
.au-stage[data-emote="mic"] .mc-fx i::before{content:"♪"}
.au-stage[data-emote="mic"] .mc-fx i:nth-child(even)::before{content:"♫"}
.au-stage[data-emote="mug"] .mc-fx i::before{content:"~";color:#f7f3e8}
.au-stage[data-emote="shirt"] .mc-fx i::before{content:"✦";color:var(--yellow)}
.au-stage[data-emote="laptop"] .mc-fx i::before{content:"</>";font-size:18px;color:#55ff55}
.au-stage[data-emote="cap"] .mc-fx i::before{content:"✦";color:#fff}
@media(prefers-reduced-motion:no-preference){
  .mc-actor .mc-body3d{animation:em-breathe 2.4s ease-in-out infinite}
  .au-stage:not([data-emote=""]) .mc-fx i{animation:em-float 2s ease-out infinite}
  .mc-fx i:nth-child(1){--fx:-70px}
  .mc-fx i:nth-child(2){--fx:60px;animation-delay:.5s!important}
  .mc-fx i:nth-child(3){--fx:-30px;animation-delay:1s!important}
  .mc-fx i:nth-child(4){--fx:90px;animation-delay:1.5s!important}
  /* Cap: reach up and tip it. */
  [data-emote="cap"] .mc-actor .mc-arm-r{animation:em-cap-arm 2s ease-in-out infinite}
  [data-emote="cap"] .mc-actor .mc-cap,[data-emote="cap"] .mc-actor .mc-brim{animation:em-cap-lift 2s ease-in-out infinite}
  [data-emote="cap"] .mc-actor .mc-head3d{animation:em-nod 2s ease-in-out infinite}
  /* T-shirt: ta-da, then a turn to show it off. */
  [data-emote="shirt"] .mc-actor .mc-arm-r{animation:em-tada-r 1.6s ease-in-out infinite}
  [data-emote="shirt"] .mc-actor .mc-arm-l{animation:em-tada-l 1.6s ease-in-out infinite}
  [data-emote="shirt"] .mc-actor .mc-body3d{animation:em-sway 3.2s ease-in-out infinite}
  /* Mic: hold it up and sing, head bobbing. */
  [data-emote="mic"] .mc-actor .mc-arm-r{animation:em-mic-arm .8s ease-in-out infinite alternate}
  [data-emote="mic"] .mc-actor .mc-arm-l{animation:em-mic-free .8s ease-in-out infinite alternate}
  [data-emote="mic"] .mc-actor .mc-head3d{animation:em-sing .4s ease-in-out infinite alternate}
  /* Laptop: both hands typing, head down. */
  [data-emote="laptop"] .mc-actor .mc-arm-r{animation:em-type .18s steps(2) infinite alternate}
  [data-emote="laptop"] .mc-actor .mc-arm-l{animation:em-type .18s .09s steps(2) infinite alternate}
  [data-emote="laptop"] .mc-actor .mc-head3d{rotate:x -18deg}
  /* Mug: raise it, sip, lower it. */
  [data-emote="mug"] .mc-actor .mc-arm-r{animation:em-sip 2.4s ease-in-out infinite}
  [data-emote="mug"] .mc-actor .mc-head3d{animation:em-sip-head 2.4s ease-in-out infinite}
  [data-emote="mug"] .mc-fx{left:38%;top:30%}
  /* Held items are flat sprites, so they counter-rotate against the arm to keep facing the camera. */
  [data-emote="mic"] .mc-actor .mc-arm-r .mc-held{animation:em-mic-held .8s ease-in-out infinite alternate}
  [data-emote="mug"] .mc-actor .mc-arm-r .mc-held{animation:em-sip-held 2.4s ease-in-out infinite}
}
[data-emote="laptop"] .mc-actor .mc-prop{display:block}
[data-emote="laptop"] .mc-actor .mc-arm-r,[data-emote="laptop"] .mc-actor .mc-arm-l{transform:rotateX(70deg)}
@keyframes em-breathe{50%{translate:0 calc(-.4*var(--p))}}
@keyframes em-float{0%{opacity:0;transform:translate(0,0) scale(.6)}20%{opacity:1}100%{opacity:0;transform:translate(var(--fx),-110px) scale(1.2) rotate(20deg)}}
@keyframes em-cap-arm{0%,100%{transform:none}35%,70%{transform:rotateZ(-150deg)}}
@keyframes em-cap-lift{0%,30%,80%,100%{translate:0 0;rotate:z 0deg}45%,65%{translate:0 calc(-2.5*var(--p));rotate:z -14deg}}
@keyframes em-nod{0%,40%,100%{rotate:x 0deg}55%{rotate:x -14deg}}
@keyframes em-tada-r{0%,100%{transform:rotateZ(20deg)}40%,70%{transform:rotateZ(125deg)}}
@keyframes em-tada-l{0%,100%{transform:rotateZ(-20deg)}40%,70%{transform:rotateZ(-125deg)}}
@keyframes em-sway{0%,100%{rotate:y -25deg}50%{rotate:y 25deg}}
@keyframes em-mic-arm{from{transform:rotateY(34deg) rotateX(108deg)}to{transform:rotateY(38deg) rotateX(116deg)}}
@keyframes em-mic-free{from{transform:rotateZ(-60deg)}to{transform:rotateZ(-95deg)}}
@keyframes em-sing{from{rotate:x 6deg}to{rotate:x 18deg}}
@keyframes em-type{from{transform:rotateX(66deg)}to{transform:rotateX(76deg)}}
@keyframes em-sip{0%,100%{transform:rotateY(0deg) rotateX(14deg)}30%,75%{transform:rotateY(30deg) rotateX(122deg)}}
@keyframes em-mic-held{from{transform:translateZ(calc(2.6*var(--p))) rotateX(-108deg) rotateY(-34deg)}to{transform:translateZ(calc(2.6*var(--p))) rotateX(-116deg) rotateY(-38deg)}}
@keyframes em-sip-held{0%,100%{transform:translateZ(calc(2.6*var(--p))) rotateX(-14deg) rotateY(0deg)}30%,75%{transform:translateZ(calc(2.6*var(--p))) rotateX(-122deg) rotateY(-30deg)}}
@keyframes em-sip-head{0%,25%,85%,100%{rotate:x 0deg}40%,70%{rotate:x 20deg}}
/* Why section: what the money buys, as Minecraft-style levels behind an XP bar. */
.au-why{background:var(--red)}
.au-why .section-tag{display:inline-block;background:var(--paper);padding:9px 12px;box-shadow:4px 4px 0 var(--ink);transform:rotate(-2deg)}
.au-why h2 span{color:var(--yellow);text-shadow:3px 3px 0 var(--ink)}
.au-why-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(36px,5vw,80px);align-items:center}
.au-why-copy>p:not(.section-tag){max-width:540px;font-size:clamp(18px,1.6vw,22px);line-height:1.5;font-weight:700}
.au-why-copy>p+p{margin-top:18px}
.au-levels{--u:48px;transform:rotate(1deg)}
.ench{width:auto;box-shadow:inset 3px 3px 0 #fff,inset -3px -3px 0 #555,10px 10px 0 var(--yellow)}
.ench-title{margin:0 0 10px 4px;color:#3f3f3f}
.ench-grid{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start}
.ench-left{display:grid;gap:10px;justify-items:center}
.ench-book{width:calc(var(--u)*1.7);height:calc(var(--u)*1.7);display:grid;place-items:center;background:#1c0f2e;border:2px solid;border-color:#373737 #fff #fff #373737}
.ench-book svg{width:80%;height:80%;shape-rendering:crispEdges;filter:drop-shadow(0 0 6px #b48aff)}
.ench-slots{display:flex;gap:6px}
.ench-options{list-style:none;margin:0;padding:0;border:2px solid;border-color:#373737 #fff #fff #373737;background:#8b8b8b}
.ench-opt{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:start;padding:10px;background:#4f4538;border:2px solid;border-color:#6b5f4e #2b241c #2b241c #6b5f4e}
.ench-cost{position:relative;display:block;width:30px;height:30px;opacity:.55}
.ench-cost svg{width:100%;height:100%;shape-rendering:crispEdges}
.ench-cost i{position:absolute;right:-2px;bottom:-4px;font:normal 700 13px/1 'Courier New',monospace;color:#fff;text-shadow:1px 1px 0 #000}
.ench-body{display:grid;gap:3px;font:400 14px/1.4 var(--body);color:#c9bfae}
.ench-rune{font:15px/1.2 'Courier New',ui-monospace,monospace;letter-spacing:.08em;color:#8a7c66;overflow-wrap:anywhere}
.ench-body strong{font:22px/1 var(--display);font-weight:400;color:#e4dccb}
.ench-lvl{font:700 22px/1 'Courier New',ui-monospace,monospace;color:#407f10;text-shadow:2px 2px 0 #1a3305}
.ench-lvl::after{content:" 🔒";font-size:13px;vertical-align:middle}
.ench .au-xp{margin:16px 0 0}
.ench .au-xp-label{color:#4f4f4f}
.au-xp{position:relative;display:grid;gap:8px;justify-items:center}
.au-xp-level{font:700 30px/1 'Courier New',ui-monospace,monospace;color:#80ff20;text-shadow:2px 2px 0 #1e3a00,-2px -2px 0 #000}
.au-xp-bar{display:block;width:100%;height:14px;background:repeating-linear-gradient(90deg,transparent 0 calc(100%/18 - 2px),#000 calc(100%/18 - 2px) calc(100%/18)),#3a3a3a;border:2px solid #000}
.au-xp-bar i{display:block;width:0;height:100%;background:#80ff20}
.au-xp-bar{position:relative}
.au-xp-bar b{position:absolute;top:-6px;bottom:-6px;width:4px;margin-left:-2px;background:#80ff20;box-shadow:0 0 0 2px #000}
.ench-goal{font:700 12px/1.3 'Courier New',ui-monospace,monospace;color:#80ff20;opacity:.75}
.au-xp-label{font:700 12px/1.3 'Courier New',ui-monospace,monospace;color:#a8a8a8}
.au-unlocks-note{margin-top:16px;font:700 13px/1.4 'Courier New',ui-monospace,monospace;color:var(--ink)}
.mc-hint{color:#6b6b6b;font-size:.85em}
button.mc-slot{padding:0;cursor:pointer;font:inherit;color:inherit}
.mc-side{align-self:stretch;display:flex;flex-direction:column;justify-content:center;gap:8px;padding-left:6px}
.mc-title{font:calc(var(--u)*.46)/1 var(--display);color:var(--ink);text-transform:uppercase}
.mc-side b{color:var(--red-deep)}
.mc-side-status{color:#6b6b6b}
.mc-label{margin:14px 0 6px 2px}
.mc-grid,.mc-hotbar{display:grid;grid-template-columns:repeat(9,var(--u))}
.mc-hotbar{margin-top:10px}
.mc-slot{position:relative;display:block;width:var(--u);height:var(--u);background:#8b8b8b;border:2px solid;border-color:#373737 #fff #fff #373737}
.mc-slot svg{display:block;width:100%;height:100%;padding:12%;shape-rendering:crispEdges}
.mc-ghost svg{opacity:.55}
a.mc-slot:hover,a.mc-slot:focus-visible,span.mc-slot[tabindex]:hover,span.mc-slot[tabindex]:focus-visible{background:#a8a8a8;outline:none}
.mc-slot:focus-visible{box-shadow:0 0 0 3px var(--yellow)}
.mc-selected{box-shadow:0 0 0 3px #fff,0 0 0 5px #000;z-index:1}
.mc-num{position:absolute;right:2px;bottom:0;font:normal 700 calc(var(--u)*.3)/1 'Courier New',monospace;color:#fff;text-shadow:2px 2px 0 #3f3f3f}
.mc-tip{display:none;position:absolute;z-index:10;left:calc(100% + 6px);top:-6px;width:max-content;max-width:230px;padding:6px 8px;background:#100010f0;border:2px solid #2a0560;outline:2px solid #100010;font:700 13px/1.4 'Courier New',monospace;color:#aaa;text-shadow:2px 2px 0 #2a2a2a;pointer-events:none}
.mc-tip b{display:block;color:#fff;font-weight:700}
.mc-tip span{display:block}
.mc-tip .mc-tip-aqua{color:#55ffff}
.mc-tip .mc-tip-red{color:#ff5555}
.mc-tip .mc-tip-gray{color:#7f7f7f}
.mc-slot:hover .mc-tip,.mc-slot:focus-visible .mc-tip{display:block}
.mc-tip-left .mc-tip,.mc-grid>:nth-child(9n+6) .mc-tip,.mc-grid>:nth-child(9n+7) .mc-tip,.mc-grid>:nth-child(9n+8) .mc-tip,.mc-grid>:nth-child(9n) .mc-tip{left:auto;right:calc(100% + 6px)}
.mc-wrap .au-stamp{top:-22px;right:auto;left:calc(var(--u)*9 - 70px)}
.au-stamp{position:absolute;top:-24px;right:-18px;padding:10px 14px;background:var(--red);color:var(--white);border:3px solid var(--ink);font:24px/.9 var(--display);transform:rotate(9deg)}
.au-note{margin:18px 0 22px;font-size:16px;line-height:1.5;font-weight:700}
.au-slots{list-style:none;margin:0;padding:0;border-top:3px solid var(--ink)}
.au-slots li{border-bottom:1px dashed #8b887d;scroll-margin-top:30vh}
.au-slots button{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 8px;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background .2s}
.au-slots button:hover{background:var(--white)}
.au-slots button:focus-visible{outline:3px solid var(--red);outline-offset:-3px}
.au-slots b{display:grid;place-items:center;width:38px;height:38px;background:var(--yellow);border:2px solid var(--ink);font:22px/1 var(--display);font-weight:400}
.au-slots span{font-size:14px;line-height:1.35}
.au-slots strong{display:block;font:22px/1.05 var(--display);font-weight:400;letter-spacing:.01em}
.au-slots em{font-style:normal;font-size:11px;font-weight:900;letter-spacing:.1em;white-space:nowrap;padding:6px 8px;background:var(--ink);color:var(--yellow)}
.au-slots button[aria-pressed="true"]{background:var(--yellow)}
.au-slots button[aria-pressed="true"] b{background:var(--red);color:var(--white)}
.au-status{margin-top:20px;font-size:11px;font-weight:900;letter-spacing:.15em}
.au-status span{color:var(--red-deep)}
@media(max-width:1100px){
  .sp-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sp-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  .au-hero,.au-board-grid,.au-why-grid{grid-template-columns:1fr}
  .au-stage-wrap{top:0;z-index:3}
  .au-stage{--p:5px;height:250px;padding-bottom:46px}
  .au-stage::before{height:46px}
  .au-stage::after{width:40px;height:40px;top:20px}
  .mc-chat{font-size:12px;bottom:6px;left:6px;right:6px}
  .au-slots li{scroll-margin-top:290px}
  .au-hero .mc-wrap{justify-self:center}
  .au-hero .hero-aside{display:none}
}
@media(max-width:760px){
  .sp-hero-grid,.sp-rules-grid{grid-template-columns:1fr}
  .sp-hero-art{width:min(78%,440px);margin-inline:auto}
  .sp-reasons,.sp-cards{grid-template-columns:1fr}
  .sp-card:nth-child(n){transform:none}
}
@media(max-width:520px){
  .sp-steps{grid-template-columns:1fr}
  .au-levels{--u:42px}
  .ench-grid{grid-template-columns:1fr}
  .ench-left{grid-auto-flow:column;justify-content:start;align-items:center}
  .ench-opt{gap:8px;padding:8px}
  .sp-card{padding:20px;box-shadow:6px 6px 0 var(--ink)}
  .au-stamp{right:-6px;font-size:18px}
  .sp-cta .hit-button{min-width:0;max-width:100%;font-size:12px;overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:no-preference){
  .sp-price-tag,.au-stamp{animation:sticker-wobble 3.2s ease-in-out infinite}
}
