/* Ember Dojo: warm fight-poster typography and non-flashing arcade feedback. */
@font-face{font-family:Arena;src:url(fonts/NewRocker-Regular.ttf);font-weight:400;font-display:swap}
:root{--bg:#140e0b;--ochre:#e8ac4c;--verm:#f05232;--paper:#fff1d6;--dim:#c6ab8f;--line:#69462d;--gold:#f4d69b}
body{background-color:var(--bg);background-image:repeating-linear-gradient(118deg,#fff1d603 0 1px,transparent 1px 7px)}
.brand{font-family:Arena,Dojo,sans-serif;font-weight:400;letter-spacing:0;font-size:29px}.brand span{font-size:8px;letter-spacing:1.5px}
.mast{border-bottom:2px solid var(--ochre);background:#140e0bf5}.nav-enter{border-color:var(--verm);color:var(--paper);box-shadow:3px 3px 0 #75261a}
.hero{background:radial-gradient(ellipse at 78% 42%,#6e251c77,transparent 60%);padding-block:55px 70px;min-height:790px}.hero-type{position:relative;z-index:3}
h1,h2,h3{font-family:Arena,Dojo,sans-serif;font-weight:400;letter-spacing:-.02em;line-height:1.02}
.hero h1{font-size:clamp(66px,8.3vw,126px);line-height:.97;transform:rotate(-2deg);transform-origin:left center;max-width:740px;text-shadow:3px 4px 0 #140e0b,5px 6px 0 #a42c1d}
.hero h1 span{color:var(--ochre);text-shadow:3px 4px 0 #140e0b,6px 7px 0 #a42c1d}.hero h1 span:after{display:none}
.lead{font-size:22px;line-height:1.4;max-width:425px;margin-top:30px}.eyebrow{color:var(--ochre)}
.button{background:var(--verm);border-color:var(--verm);color:#140e0b;box-shadow:5px 5px 0 #77301d;transform:skew(-3deg);font-size:18px;transition:transform .12s,background .12s}.button:hover{background:var(--ochre);border-color:var(--ochre);transform:skew(-3deg) translate(-2px,-2px)}
.button.secondary{color:var(--paper);background:transparent;border-color:var(--ochre);box-shadow:4px 4px 0 #69462d}.secondary:hover{background:#38261b}
.hero-stage{padding-top:65px}.moon{width:380px;height:380px;top:75px;background:#c43920;opacity:.7;border:9px solid #9c321f;box-shadow:0 0 0 8px #e8ac4c22}.moon:after{background:repeating-linear-gradient(-12deg,transparent 0 18px,#140e0b88 18px 21px)}
.gate{top:75px;color:var(--ochre);opacity:.5}.device{background:#160e0b;border:2px solid var(--ochre);box-shadow:9px 12px 0 #090604,12px 15px 0 #87301c;transform:rotate(3deg)}.device img{border-color:#69462d}.device-label i{color:#f4d69b}
.arena-card{position:absolute;left:5%;right:3%;top:4px;z-index:3;transform:rotate(2deg);font:8px/1.4 monospace;letter-spacing:1px;color:var(--dim)}.arena-card>b{font:12px monospace;color:var(--paper)}.arena-card>span:last-child{font-size:7px}.life-bars{display:flex;gap:4px;border:2px solid var(--ochre);padding:4px;transform:skew(-15deg);margin:7px 0}.life-bars i{height:8px;background:var(--verm);flex:1}.life-bars i:nth-last-child(-n+2){background:#503321}
.stamp{right:-20px;bottom:100px;color:var(--paper);background:#a72d1c;border:3px solid var(--paper);font-family:Arena,sans-serif;line-height:1.05;box-shadow:6px 6px 0 #140e0b;font-weight:400}.stamp b{font-weight:400;color:#f9ca76}.ascii{color:var(--ochre)}
.belt{background:var(--ochre);border-block:3px solid #140e0b;outline:1px solid var(--ochre);padding-block:18px;box-shadow:0 9px 0 #75261a}.chapter h2{font-size:clamp(43px,5.3vw,78px);line-height:1.1}.chapter em{color:var(--ochre)}
.chapter-title>p:last-child{font-size:20px}.ab-console{border:2px solid var(--line);box-shadow:8px 8px 0 #090604}.console-head{background:#38261b}.step-poster{border:2px solid var(--ochre);box-shadow:11px 12px 0 #75261a}.step-legend b:nth-child(3){border-color:#fff1d6}.step-chapter{background:radial-gradient(ellipse at 20% 60%,#59291777,transparent 60%)}
.punches{position:relative;overflow:hidden}.punches .chapter-title em{color:var(--verm)}.punch-board{position:relative;background:#24170f;border:2px solid var(--line)}.moves-grid b{font-family:Arena,Dojo,sans-serif;font-weight:400;font-size:27px}.moves-grid small{font-size:9px}.moves-grid button{min-height:155px;position:relative;overflow:hidden}.moves-grid button:after{content:'↗';position:absolute;right:8px;top:8px;font-size:16px;color:var(--ochre)}.moves-grid button:hover:after,.moves-grid button.active:after{color:var(--bg)}
.impact-word{pointer-events:none;position:absolute;z-index:4;top:-26px;right:20px;font:clamp(25px,4vw,55px)/1 Arena,sans-serif;color:var(--paper);padding:8px 15px;background:#9f281b;border:2px solid var(--ochre);transform:rotate(-8deg) scale(.9);opacity:0;text-shadow:3px 3px #140e0b;transition:opacity .1s,transform .15s}
.strike .impact-word{opacity:1;transform:rotate(-5deg) scale(1)}.strike{animation:impact .28s ease-out}.punch-top{min-height:104px}.punch-top span{line-height:1.6;max-width:75%}
@keyframes impact{0%{translate:0 0}25%{translate:-3px 1px}60%{translate:2px -1px}100%{translate:0 0}}
.crates a{border:2px solid var(--line);background:#38261b}.crates a:nth-child(2){background:#432219;border-color:#98503a}.crates a:nth-child(3){background:#4b341c;border-color:#a7763d}.crates h3{font-size:52px;line-height:1.06}.crates a:before{color:var(--ochre)!important;opacity:.15}.crates a:hover{translate:0 -4px}.crate-heading{gap:45px}.crate-heading h2{font-size:clamp(42px,5.1vw,74px)}
.manners{border-top:12px solid #a42c1d;background:#f0dfbc;color:#27170f}.manners em,.manners .eyebrow{color:#9b2c1c}.limits b{font-size:24px}.limits p{color:#6b4631}.exit{background:radial-gradient(ellipse at bottom,#73271988,transparent 70%)}.exit h2{max-width:980px;margin:auto}.exit .actions{gap:20px 25px}
.splash{background:radial-gradient(ellipse at center,#5b2419,#140e0b 65%)}.splash strong{font-family:Arena,Dojo,sans-serif;font-weight:400;letter-spacing:-.02em;text-shadow:4px 5px #9f281b;font-size:clamp(42px,10vw,120px)}.splash span{color:var(--paper)}.splash img{width:165px;height:165px}.splash p{color:var(--ochre)}
@media(max-width:1100px) and (min-width:701px){.hero h1{font-size:8.6vw}.stamp{right:-8px;font-size:23px}.arena-card{left:0;right:0}.moon{width:300px;height:300px}.chapter h2{font-size:5.2vw}.moves-grid b{font-size:23px}}
@media(max-width:700px){.hero{padding-top:35px;padding-bottom:45px}.hero h1{font-size:clamp(54px,14.2vw,96px)}.brand{font-size:27px}.lead{font-size:20px}.hero-stage{height:600px;padding-top:50px;max-width:390px}.arena-card{top:30px;left:5%;right:5%}.moon{width:290px;height:290px;top:105px;right:5%}.gate{top:95px}.stamp{right:0;bottom:90px;font-size:24px}.vertical-note{top:185px}.ascii{bottom:4px;left:10px;font-size:9px}.device{width:280px}.chapter h2,.crate-heading h2{font-size:clamp(34px,9vw,58px)}.chapter-title{gap:22px}.punch-top{padding:18px 15px}.punch-top img{width:48px;height:48px}.punch-top span{font-size:10px}.impact-word{right:8px;top:-20px}.moves-grid b{font-size:24px}.moves-grid small{font-size:8px}.crates h3{font-size:52px}.splash p{letter-spacing:1.5px}.splash strong{font-size:clamp(38px,10vw,70px)}.build-note{font-size:9px}.step-copy>p{max-width:100%}.button{font-size:16px}.arena-card>b{font-size:10px}}
@media(max-width:360px){.device{width:245px}.hero-stage{height:560px}.brand{font-size:24px}.stamp{font-size:20px;bottom:95px;right:0}.hero .actions{gap:22px}.moves-grid button{padding:12px}.moves-grid b{font-size:21px}}
@media(prefers-reduced-motion:reduce){.strike{animation:none}.impact-word{transition:none}.crates a:hover{translate:0}.button:hover{transform:skew(-3deg)}}

@media(max-width:700px){.moves-grid button.active:before{content:attr(data-impact);position:absolute;bottom:8px;right:8px;transform:rotate(-5deg);font:15px Arena,sans-serif;background:#140e0b;color:#fff1d6;padding:3px 6px}.moves-grid button{padding-bottom:28px}}
