/* latin-ext */
@font-face {
  font-family: 'Familjen Grotesk';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/familjengrotesk-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Familjen Grotesk';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/familjengrotesk-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Familjen Grotesk';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/familjengrotesk-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Familjen Grotesk';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/familjengrotesk-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Familjen Grotesk';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/familjengrotesk-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Familjen Grotesk';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/familjengrotesk-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Handjet';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/handjet-500-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Handjet';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/handjet-500-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Handjet';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/handjet-500-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Handjet';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/handjet-500-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Handjet';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/fonts/handjet-500-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Handjet';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/fonts/handjet-500-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Handjet';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(/fonts/handjet-500-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Handjet';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(/fonts/handjet-500-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/jetbrainsmono-500-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/jetbrainsmono-500-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/fonts/jetbrainsmono-500-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/fonts/jetbrainsmono-500-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Silkscreen';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/silkscreen-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Silkscreen';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/silkscreen-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Silkscreen';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/silkscreen-700-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Silkscreen';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/silkscreen-700-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}/* BOMBAR v6 — «ARCADE SPRITECRAFT NOCTURNO»
   Recreativa de barrio a las 3 de la mañana: pergamino 8-bit (Spritecraft) sobre carcasa oscura,
   biseles de 4 lados, barras HUD por celdas y la explosión de la v4. */
:root{
  --tinta:#13100C; --carcasa:#1E1A15; --carcasa2:#27221B; --bisel:#070504; --linea:#3A332A; --ceniza:#A0968A; --hueso:#F3EDE2;
  --perg:#F3E7C9; --perg2:#E7D5A6; --perg3:#FBF4E1; --tperg:#221A10; --tperg2:#5E4F38;
  --mecha:#FF4A14; --mecha2:#C8360A; --acido:#D8FF2A; --moneda:#F5B82E; --vida:#E3263B; --quest:#2FB24C; --quest2:#1E7A33;
  --pix:'Handjet',sans-serif; --hud:'Silkscreen',monospace; --body:'Familjen Grotesk',sans-serif; --mono:'JetBrains Mono',monospace;
  --ease:cubic-bezier(.23,1,.32,1); --spring:cubic-bezier(.34,1.56,.64,1);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--tinta);color:var(--hueso);font-family:var(--body);font-size:17px;line-height:1.55;overflow-x:hidden;
  background-image:linear-gradient(rgba(243,237,226,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(243,237,226,.035) 1px,transparent 1px);background-size:8px 8px}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit;color:inherit}
button{background:none;border:0;cursor:pointer}
:focus-visible{outline:3px solid var(--acido);outline-offset:3px}
.wrap{max-width:1400px;margin:0 auto;padding:0 clamp(16px,4vw,44px)}
.hud{font-family:var(--hud);text-transform:uppercase;letter-spacing:.12em}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
[hidden]{display:none!important}

/* ===== biseles 8-bit (Spritecraft) ===== */
.bev{background:var(--carcasa);border:3px solid var(--bisel);box-shadow:5px 5px 0 var(--bisel)}
.bev-p{background:var(--perg);color:var(--tperg);border:3px solid var(--tperg);box-shadow:5px 5px 0 var(--bisel),inset -3px -3px 0 var(--perg2),inset 3px 3px 0 var(--perg3)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 20px;font:700 12px var(--hud);letter-spacing:.14em;text-transform:uppercase;
  border:3px solid var(--bisel);box-shadow:4px 4px 0 var(--bisel),inset -3px -3px 0 rgba(0,0,0,.22),inset 3px 3px 0 rgba(255,255,255,.28);
  transition:transform .12s var(--ease),box-shadow .12s var(--ease)}
.btn:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--bisel),inset -3px -3px 0 rgba(0,0,0,.22),inset 3px 3px 0 rgba(255,255,255,.28)}
.btn:active{transform:translate(4px,4px);box-shadow:0 0 0 var(--bisel),inset 3px 3px 0 rgba(0,0,0,.25);transition-duration:.05s}
.btn-m{background:var(--mecha);color:var(--tinta)}
.btn-q{background:var(--quest);color:var(--tinta)}
.btn-p{background:var(--perg);color:var(--tperg)}
.btn-g{background:var(--carcasa2);color:var(--hueso);border-color:var(--bisel)}
.btn[disabled]{opacity:.55;cursor:not-allowed;transform:none}
/* snippet Codecite: relleno que baja */
.fill{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border:3px solid var(--mecha);font:700 11px var(--hud);letter-spacing:.14em;color:var(--tinta);text-transform:uppercase}
.fill::before{content:"";position:absolute;left:-4px;right:-4px;bottom:-4px;height:112%;background:var(--mecha);transition:height .28s var(--ease);z-index:0}
.fill:hover::before{height:14%}.fill:hover{color:var(--mecha)}
.fill span{position:relative;z-index:1}

/* ===== ticker ===== */
.ticker{background:var(--acido);color:var(--tinta);overflow:hidden;white-space:nowrap;font:700 11px var(--hud);letter-spacing:.14em;padding:8px 0;border-bottom:3px solid var(--bisel)}
.ticker span{display:inline-block;padding-left:100%;animation:run 38s linear infinite}
@keyframes run{to{transform:translateX(-100%)}}

/* ===== nav ===== */
.top{position:sticky;top:0;z-index:40;background:rgba(19,16,12,.94);border-bottom:3px solid var(--bisel);backdrop-filter:blur(6px)}
nav{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:22px;align-items:center;min-height:72px}
.logo{display:flex;align-items:center;gap:12px}
.logo b{font:900 34px/1 var(--pix);color:var(--mecha);letter-spacing:.03em;text-shadow:3px 3px 0 var(--bisel)}
.logo small{display:block;font:400 9px var(--hud);letter-spacing:.2em;color:var(--acido)}
.sprite{image-rendering:pixelated;flex:none}
.links{display:flex;gap:4px;justify-content:center;flex-wrap:wrap}
.links a{font:700 11px var(--hud);letter-spacing:.12em;padding:10px 12px;border:2px solid transparent}
.links a:hover{border-color:var(--linea);color:var(--acido)}
.navr{display:flex;gap:10px;align-items:center}
.inv b{background:var(--tinta);color:var(--acido);padding:2px 8px;border:2px solid var(--bisel);font-family:var(--mono);min-width:28px;text-align:center}
.inv.bump{animation:bump .35s var(--spring)}
@keyframes bump{40%{transform:scale(1.14) rotate(-3deg)}}

/* ===== hero ===== */
.hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:28px;align-items:stretch;padding:28px 0 18px}
.stage{position:relative;overflow:hidden;padding:clamp(22px,3.4vw,44px);display:flex;flex-direction:column;justify-content:center}
.stage::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.2) 0 2px,transparent 2px 4px);opacity:.45}
.tagline{display:inline-flex;align-self:flex-start;gap:10px;align-items:center;font:700 10px var(--hud);letter-spacing:.14em;color:var(--acido);border:2px solid var(--linea);padding:7px 11px;margin-bottom:22px}
.tagline i{width:8px;height:8px;background:var(--quest);animation:blink 1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
/* snippet dexter-st: cubos 3D */
.cubes{--cw:clamp(40px,5.6vw,84px);display:grid;grid-template-columns:repeat(6,var(--cw));height:var(--cw);perspective:420px;margin:4px 0 26px}
.cube{position:relative;transform-style:preserve-3d;animation:tz 2.4s ease-in-out infinite}
.cube:nth-child(2){animation-delay:.18s}.cube:nth-child(3){animation-delay:.36s}.cube:nth-child(4){animation-delay:.54s}.cube:nth-child(5){animation-delay:.72s}.cube:nth-child(6){animation-delay:.9s}
.face{position:absolute;inset:0;width:var(--cw);height:var(--cw);display:grid;place-items:center;font:900 calc(var(--cw)*.86)/1 var(--pix);color:var(--tinta);background:var(--mecha);box-shadow:inset 0 0 0 3px var(--bisel)}
.f-front{transform:translateZ(calc(var(--cw)/2));animation:fc 2.4s ease-in-out infinite;animation-delay:inherit}
.f-top{transform:rotateX(90deg) translateZ(calc(var(--cw)/2));background:#FF7A4C}
.f-right{transform:rotateY(90deg) translateZ(calc(var(--cw)/2));background:var(--mecha2)}
@keyframes tz{0%,45%,100%{transform:translateZ(0) rotateX(-14deg) rotateY(-18deg)}25%{transform:translateZ(22px) translateY(-6px) rotateX(-14deg) rotateY(-18deg)}}
@keyframes fc{0%,45%,100%{background-color:var(--mecha)}20%{background-color:var(--acido)}}
.hero h1{font:900 clamp(40px,5vw,80px)/.86 var(--pix);text-transform:uppercase;margin-bottom:18px;position:relative;z-index:1}
.hero h1 mark{background:var(--acido);color:var(--tinta);padding:0 .12em;box-shadow:5px 5px 0 var(--bisel);display:inline-block;transform:rotate(-1.5deg)}
.lead{max-width:50ch;color:#DDD4C6;font-size:18px;margin-bottom:26px;position:relative;z-index:1}
.cta{display:flex;gap:16px;flex-wrap:wrap;align-items:center;position:relative;z-index:1}
/* snippet marcelodolza: botón brillante */
.gloss{position:relative;border-radius:6px;background:var(--mecha);border:3px solid var(--bisel);transition:transform .15s var(--ease),box-shadow .15s var(--ease);
  box-shadow:inset 0 .3rem .9rem rgba(255,255,255,.35),inset 0 -.2rem .4rem rgba(0,0,0,.45),6px 6px 0 var(--bisel)}
.gloss .gw{display:block;padding:18px 32px;border-radius:inherit;position:relative;overflow:hidden;height:66px;font:900 30px/30px var(--pix);letter-spacing:.06em;color:var(--tinta)}
.gloss .gw::after{content:"";position:absolute;left:6%;right:6%;top:10%;height:40%;border-radius:4px 4px 0 0;background:linear-gradient(180deg,rgba(255,255,255,.4),rgba(255,255,255,0));transition:transform .25s var(--ease),opacity .25s}
.gloss .t{display:flex;align-items:center;gap:10px;transition:transform .22s var(--ease)}
.gloss .t2{margin-top:18px}
.gloss:hover .t{transform:translateY(-48px)}
.gloss:hover .gw::after{opacity:.5;transform:translateY(8%)}
.gloss:active{transform:translate(5px,5px);box-shadow:inset 0 .3rem .6rem rgba(255,255,255,.3),inset 0 -.2rem .4rem rgba(0,0,0,.5),1px 1px 0 var(--bisel)}
.accept{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:24px;font:700 10px var(--hud);letter-spacing:.14em;color:var(--acido);position:relative;z-index:1}
.accept span{border:2px solid var(--linea);padding:5px 9px;color:var(--ceniza)}
.boom{position:absolute;right:-150px;bottom:-170px;width:340px;height:340px;opacity:.9;pointer-events:none;z-index:0}
.stage>*:not(.boom){position:relative;z-index:1}
.star{position:absolute;inset:0;background:var(--acido);
  clip-path:polygon(50% 0,58% 18%,72% 6%,72% 24%,90% 14%,84% 34%,100% 36%,88% 50%,100% 64%,84% 66%,90% 86%,72% 76%,72% 94%,58% 82%,50% 100%,42% 82%,28% 94%,28% 76%,10% 86%,16% 66%,0 64%,12% 50%,0 36%,16% 34%,10% 14%,28% 24%,28% 6%,42% 18%);
  animation:pulse 2.2s steps(4) infinite}
.star.s2{inset:8%;background:var(--mecha);animation-delay:-1.1s}.star.s3{inset:17%;background:var(--carcasa)}
@keyframes pulse{50%{transform:scale(1.05) rotate(2deg)}}

/* ===== HOT DEAL (snippet gharsh11032000: marco que rota) ===== */
.deal{display:flex;flex-direction:column;gap:14px}
.deal-k{display:flex;justify-content:space-between;align-items:center;font:700 11px var(--hud);letter-spacing:.14em}
.deal-k b{background:var(--vida);color:var(--hueso);padding:5px 10px;border:2px solid var(--bisel);box-shadow:3px 3px 0 var(--bisel)}
.deal-k span{color:var(--ceniza)}
.hot{position:relative;flex:1;display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:clamp(18px,3vw,40px);align-items:center;padding:18px;background:var(--carcasa);isolation:isolate;cursor:pointer;border:3px solid var(--bisel)}
.hot::before{content:"";position:absolute;inset:-7px;z-index:-2;background:linear-gradient(-45deg,var(--mecha),var(--acido),var(--moneda),var(--mecha));background-size:300% 300%;animation:marco 5s linear infinite;transition:transform .6s var(--spring)}
.hot::after{content:"";position:absolute;inset:0;z-index:-1;background:var(--carcasa)}
.hot:hover::before{transform:rotate(-2deg) scale(1.02)}
@keyframes marco{to{background-position:300% 0}}
.hot .cov{border:3px solid var(--bisel);box-shadow:4px 4px 0 var(--bisel);aspect-ratio:3/4;overflow:hidden;background:#000}
.hot .cov img{width:100%;height:100%;object-fit:cover}
.hot .info{display:flex;flex-direction:column;gap:12px;justify-content:center;min-width:0}
.hot h2{font:900 clamp(40px,5vw,84px)/.86 var(--pix);text-transform:uppercase}
.hot .info .buy{justify-content:flex-start;gap:18px}
.hot .price{font-size:clamp(26px,2.6vw,36px)}
.hot .corta{color:#CFC6B8;font-size:15px;max-width:60ch;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.big-save{font:900 clamp(64px,8vw,130px)/.8 var(--pix);color:var(--acido);text-shadow:4px 4px 0 var(--bisel)}

/* ===== paneles HUD (quest log) ===== */
.panel-h{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;background:var(--bisel);font:700 10px var(--hud);letter-spacing:.14em}
.panel-h i{display:inline-flex;gap:5px}.panel-h i::before,.panel-h i::after,.panel-h i b{content:"";width:10px;height:10px;display:block}
.panel-h i::before{background:var(--vida)}.panel-h i b{background:var(--moneda)}.panel-h i::after{background:var(--quest)}
.meters{padding:16px;display:grid;gap:14px}
.meter .l{display:flex;justify-content:space-between;font:400 10px var(--hud);letter-spacing:.14em;color:var(--tperg2);margin-bottom:5px}
.meter .l b{color:var(--tperg);font-weight:700}
.cells{display:grid;grid-template-columns:repeat(var(--n,12),minmax(0,1fr));gap:3px;padding:4px;background:var(--perg2);border:3px solid var(--tperg);box-shadow:inset 2px 2px 0 rgba(0,0,0,.12)}
.cells i{height:12px;background:rgba(34,26,16,.1)}
.cells.hp i.on{background:var(--quest)}.cells.xp i.on{background:var(--moneda)}.cells.rg i.on{background:var(--vida)}
.cells.dark{background:var(--tinta);border-color:var(--bisel)}.cells.dark i{background:#2B261F}.cells.dark i.on{background:var(--acido)}
.slots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:0 16px 16px}
.slot{background:var(--perg3);border:3px solid var(--tperg);box-shadow:3px 3px 0 var(--tperg2);padding:8px 6px;text-align:center}
.slot b{display:block;font:900 26px/1 var(--pix)}
.slot small{font:400 8px var(--hud);letter-spacing:.14em;color:var(--tperg2)}

/* ===== categorías ===== */
.cats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin:26px 0 10px}
.cat{padding:14px;display:flex;gap:12px;align-items:center;transition:transform .14s var(--ease)}
.cat:hover{transform:translate(-2px,-2px)}
.cat .ico{width:44px;height:44px;flex:none;display:grid;place-items:center;background:var(--perg);border:3px solid var(--bisel);box-shadow:inset -3px -3px 0 var(--perg2)}
.cat b{display:block;font:800 22px/1 var(--pix);text-transform:uppercase}
.cat small{font:400 9px var(--hud);letter-spacing:.1em;color:var(--ceniza)}
.cat small em{font-style:normal;color:var(--acido)}

/* ===== secciones ===== */
section.blk{padding:clamp(44px,6vw,84px) 0 0}
.sec-k{font:700 10px var(--hud);letter-spacing:.16em;color:var(--mecha);margin-bottom:8px}
.sec-h{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap;border-bottom:3px dashed var(--linea);padding-bottom:12px;margin-bottom:22px}
.sec-h h2{font:900 clamp(38px,5vw,72px)/.9 var(--pix);text-transform:uppercase}
.sec-h h2 em{font-style:normal;color:var(--acido)}
.sec-h p{max-width:46ch;color:var(--ceniza);font-size:15px}
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(236px,21vw,272px);gap:18px;overflow-x:auto;padding:4px 10px 20px 0;scroll-snap-type:x mandatory;overscroll-behavior-x:contain}
.rail::-webkit-scrollbar{height:10px}.rail::-webkit-scrollbar-track{background:var(--carcasa)}.rail::-webkit-scrollbar-thumb{background:var(--mecha);border:2px solid var(--carcasa)}
.rail>*{scroll-snap-align:start}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(236px,1fr));gap:20px}

/* ===== carta (snippet ElSombrero2: giro 3D) ===== */
.fc{perspective:1200px;min-height:452px;position:relative}
.inner{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .5s var(--ease)}
.fc.flip .inner{transform:rotateY(180deg)}
@media (hover:hover){.fc:hover .inner{transform:rotateY(180deg)}}
.side{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;flex-direction:column;background:var(--carcasa);border:3px solid var(--bisel);box-shadow:6px 6px 0 var(--bisel);overflow:hidden}
.back{transform:rotateY(180deg);background:var(--perg);color:var(--tperg)}
.back::before{content:"";position:absolute;left:50%;top:50%;width:120px;height:180%;margin:-90% 0 0 -60px;background:linear-gradient(90deg,transparent,var(--mecha),transparent);animation:rot 5s linear infinite}
@keyframes rot{to{transform:rotate(360deg)}}
.bc{position:absolute;inset:5px;background:var(--perg);padding:14px;display:flex;flex-direction:column;gap:10px;border:2px solid var(--tperg)}
.rar{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 11px;border-bottom:3px solid var(--bisel);font:700 9px var(--hud);letter-spacing:.12em;min-width:0}
.rar .r{padding:3px 7px;border:2px solid var(--bisel);color:var(--tinta);flex:none}
.r-leg{background:var(--moneda)}.r-epi{background:var(--mecha)}.r-rar{background:var(--quest)}.r-com{background:var(--ceniza)}.r-pre{background:var(--acido)}
.rar .pf{color:var(--ceniza);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.cov{position:relative;flex:1;min-height:0;overflow:hidden;background:#000;border-bottom:3px solid var(--bisel)}
.cov img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.fc:hover .cov img.fg{transform:scale(1.04)}
.save{position:absolute;top:10px;right:10px;background:var(--acido);color:var(--tinta);font:900 22px/1 var(--pix);padding:6px 8px;border:2px solid var(--bisel);box-shadow:3px 3px 0 var(--bisel);transform:rotate(4deg)}
.body{padding:11px 13px 13px;display:flex;flex-direction:column;gap:8px}
.body h3{font:800 21px/1 var(--pix);text-transform:uppercase;min-height:2em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.eds{font:400 9px var(--hud);letter-spacing:.12em;color:var(--ceniza)}
.buy{display:flex;justify-content:space-between;align-items:end;gap:8px;flex-wrap:wrap}
.body .buy .btn{padding:0 12px;min-height:44px;margin-left:auto}
.pvp{font:500 11px var(--mono);color:var(--ceniza)}
.price{font:800 22px var(--mono);background:var(--acido);color:var(--tinta);padding:2px 8px;border:3px solid var(--bisel);box-shadow:3px 3px 0 var(--bisel);display:inline-block;margin-top:3px;white-space:nowrap}
.price small{font:700 10px var(--hud);letter-spacing:.08em;margin-right:4px}
.flipbtn{font:700 9px var(--hud);letter-spacing:.12em;color:var(--ceniza);text-decoration:underline;align-self:flex-start;min-height:32px;display:none}
@media (hover:none){.flipbtn{display:inline-block}}
.bc h4{font:900 24px/.95 var(--pix);text-transform:uppercase}
.chips2{display:flex;gap:6px;flex-wrap:wrap}
.chip-s{display:inline-flex;align-items:center;gap:5px;font:700 9px var(--hud);letter-spacing:.08em;padding:4px 7px;border:2px solid var(--tperg);background:var(--perg3);color:var(--tperg);box-shadow:2px 2px 0 var(--tperg2)}
.chip-s.g{background:var(--quest);color:var(--tinta)}.chip-s.o{background:var(--moneda);color:var(--tinta)}.chip-s.r{background:var(--vida);color:var(--hueso)}
.bc .mini{font-size:13px;line-height:1.45;color:var(--tperg2);overflow:hidden;display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;flex:1}
.bc .row{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}
.bc .row .btn{flex:1;min-height:44px;padding:0 10px}
.more{display:flex;margin:30px auto 0}

/* ===== catálogo: consola ===== */
.console{padding:14px;margin-bottom:22px;display:grid;gap:12px;background:var(--carcasa)}
.crow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}
.search{display:flex;align-items:center;gap:10px;background:var(--tinta);border:3px solid var(--bisel);box-shadow:inset 3px 3px 0 #000;padding:0 14px;min-height:52px;min-width:0}
.search span{font:800 16px var(--mono);color:var(--acido)}
.search input{flex:1;min-width:0;background:none;border:0;font:15px var(--mono);min-height:46px}
.search input:focus{outline:none}.search:focus-within{border-color:var(--acido)}
.sort{background:var(--tinta);border:3px solid var(--bisel);color:var(--hueso);font:700 11px var(--hud);letter-spacing:.08em;padding:0 12px;min-height:52px}
.chips{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.chips .lbl{font:700 9px var(--hud);letter-spacing:.14em;color:var(--ceniza);margin-right:2px}
.chip{font:700 10px var(--hud);letter-spacing:.1em;padding:0 12px;min-height:40px;border:2px solid var(--linea);color:var(--ceniza);transition:transform .12s var(--ease)}
.chip:hover{color:var(--hueso);border-color:var(--hueso)}.chip:active{transform:translateY(2px)}
.chip.on{background:var(--acido);color:var(--tinta);border-color:var(--bisel);box-shadow:3px 3px 0 var(--bisel)}
.count{font:700 10px var(--hud);letter-spacing:.14em;color:var(--ceniza);border:2px solid var(--linea);padding:8px 12px}
.empty{grid-column:1/-1;padding:44px;text-align:center;font:700 11px var(--hud);letter-spacing:.12em;color:var(--ceniza);border:3px dashed var(--linea)}

/* ===== cartera (snippet byllzz) ===== */
.gift{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center}
.gift p{color:#DDD4C6;max-width:48ch}
.giftlist{display:grid;gap:12px;margin-top:20px}
.gl{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px}
.gl img{width:56px;height:56px;object-fit:cover;border:2px solid var(--bisel)}
.gl b{font:800 19px/1.05 var(--pix);text-transform:uppercase;display:block}
.gl small{font:400 9px var(--hud);letter-spacing:.12em;color:var(--acido)}
.wallet{position:relative;width:min(340px,100%);height:290px;margin:0 auto;perspective:1000px;cursor:pointer}
.wback{position:absolute;bottom:0;left:0;right:0;height:230px;background:#3A1A0E;border:3px solid var(--bisel);border-radius:18px 18px 44px 44px;box-shadow:inset 0 24px 30px rgba(0,0,0,.45)}
.gcard{position:absolute;left:5%;right:5%;height:150px;border:3px solid var(--bisel);border-radius:12px;padding:16px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .55s var(--spring);animation:inpocket .8s var(--ease) backwards}
.gcard .tp{display:flex;justify-content:space-between;align-items:center;font:700 10px var(--hud);letter-spacing:.12em}
.gcard .ch{width:34px;height:24px;background:rgba(255,255,255,.3);border:2px solid rgba(0,0,0,.35);border-radius:3px}
.gcard b{font:900 28px/1 var(--pix);text-transform:uppercase}
.gcard .pr{font:800 17px var(--mono)}
.gcard .bt{display:flex;justify-content:space-between;align-items:end;gap:8px}
.g1{bottom:96px;background:#107C10;color:#fff;z-index:2;animation-delay:.1s}
.g2{bottom:70px;background:var(--moneda);color:var(--tinta);z-index:3;animation-delay:.2s}
.g3{bottom:44px;background:var(--perg);color:var(--tinta);z-index:4;animation-delay:.3s}
@keyframes inpocket{from{transform:translateY(-90px);opacity:0}}
.pocket{position:absolute;bottom:0;left:0;right:0;height:150px;background:var(--mecha);border:3px solid var(--bisel);border-radius:10px 10px 44px 44px;z-index:10;display:grid;place-items:center;box-shadow:6px 6px 0 var(--bisel)}
.pocket span{font:700 11px var(--hud);letter-spacing:.14em;color:var(--tinta)}
.wallet:hover .g1,.wallet.open .g1{transform:translateY(-80px) rotate(-4deg)}
.wallet:hover .g2,.wallet.open .g2{transform:translateY(-52px) rotate(3deg)}
.wallet:hover .g3,.wallet.open .g3{transform:translateY(-22px)}

/* ===== guía de activación (pergamino) ===== */
.guide{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:0;overflow:hidden}
.gtabs{display:flex;flex-direction:column;background:var(--perg2);border-right:3px solid var(--tperg);padding:10px;gap:6px}
.gtab{text-align:left;font:700 10px var(--hud);letter-spacing:.1em;padding:10px 12px;border:2px solid transparent;color:var(--tperg2);min-height:44px;display:flex;align-items:center;gap:10px}
.gtab:hover{border-color:var(--tperg)}
.gtab[aria-selected=true]{background:var(--quest);color:var(--tinta);border-color:var(--tperg);box-shadow:3px 3px 0 var(--tperg)}
.gbody{padding:22px clamp(16px,3vw,32px);min-width:0}
.gbody h3{font:900 clamp(30px,3.4vw,48px)/.9 var(--pix);text-transform:uppercase;margin-bottom:6px}
.gbody .intro{color:var(--tperg2);margin-bottom:18px}
.gblock{margin-bottom:18px}
.gblock h4{font:700 11px var(--hud);letter-spacing:.12em;margin-bottom:10px;display:inline-block;background:var(--tperg);color:var(--perg);padding:5px 9px}
.gblock ol{list-style:none;counter-reset:p;display:grid;gap:8px}
.gblock li{counter-increment:p;display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;align-items:start;overflow-wrap:anywhere}
.gblock li::before{content:counter(p);display:grid;place-items:center;width:28px;height:28px;background:var(--moneda);border:2px solid var(--tperg);font:900 18px/1 var(--pix);color:var(--tperg)}
.gnotes{display:grid;gap:8px;margin-top:6px}
.gnote{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;font-size:14px;background:var(--perg3);border:2px dashed var(--tperg2);padding:10px;color:var(--tperg)}
.gnote::before{content:"!";display:grid;place-items:center;width:22px;height:22px;background:var(--vida);color:var(--hueso);font:900 16px/1 var(--pix)}

/* ===== pasos ===== */
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.step{padding:22px}
.step .lv{font:900 64px/.8 var(--pix);display:block;margin-bottom:12px}
.step:nth-child(1) .lv{color:var(--mecha)}.step:nth-child(2) .lv{color:var(--acido)}.step:nth-child(3) .lv{color:var(--quest)}
.step h3{font:700 12px var(--hud);letter-spacing:.14em;margin-bottom:10px}
.step p{color:#CFC6B8;font-size:15px}

/* ===== dudas ===== */
.faq{background:var(--perg);color:var(--tperg);border-top:3px solid var(--bisel);border-bottom:3px solid var(--bisel);margin-top:clamp(44px,6vw,84px);padding:clamp(44px,6vw,84px) 0;
  background-image:linear-gradient(rgba(34,26,16,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(34,26,16,.05) 1px,transparent 1px);background-size:8px 8px}
.faq .sec-h{border-color:var(--tperg2)}.faq .sec-h p{color:var(--tperg2)}
.qa{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:40px}
details{background:var(--perg3);border:3px solid var(--tperg);box-shadow:4px 4px 0 var(--tperg);margin-bottom:14px}
summary{font:800 24px/1.1 var(--pix);text-transform:uppercase;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;padding:15px 17px;min-height:48px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font:800 22px var(--mono);color:var(--mecha2)}
details[open] summary::after{content:"−"}
details p{padding:0 17px 17px;max-width:62ch;color:#3A342B}

/* ===== modal ficha: pantalla de objeto ===== */
.modal{position:fixed;inset:0;z-index:60;background:rgba(10,8,6,.84);display:none;place-items:center;padding:14px}
.modal.on{display:grid}
.sheet{width:min(1060px,100%);max-height:92dvh;overflow:auto;display:grid;grid-template-columns:minmax(0,380px) minmax(0,1fr);animation:pop .22s var(--ease)}
@keyframes pop{from{transform:scale(.96);opacity:0}}
.sh-l{padding:18px;background:var(--carcasa);border-right:3px solid var(--tperg);display:flex;flex-direction:column;gap:12px}
.sh-l .cov{aspect-ratio:3/4;flex:none;border:3px solid var(--bisel);box-shadow:4px 4px 0 var(--bisel)}
.sh-r{padding:20px 22px 24px;display:flex;flex-direction:column;gap:14px;min-width:0}
.sh-top{display:flex;justify-content:space-between;align-items:start;gap:12px}
.sh-r h3{font:900 clamp(30px,3.2vw,46px)/.9 var(--pix);text-transform:uppercase}
.kick{font:700 10px var(--hud);letter-spacing:.14em;color:var(--mecha2);margin-bottom:6px}
.x{flex:none;width:46px;height:46px;display:grid;place-items:center;font:900 26px/1 var(--pix);background:var(--perg3);border:3px solid var(--tperg);box-shadow:3px 3px 0 var(--tperg)}
.x:active{transform:translate(3px,3px);box-shadow:none}
/* snippet MuhammadHasann: selector de edición */
.eds-l{font:700 10px var(--hud);letter-spacing:.14em;color:var(--tperg2)}
.edsel{display:flex;gap:6px;flex-wrap:wrap}
.ed{font:700 11px var(--mono);padding:8px 10px;min-height:44px;background:var(--perg3);border:3px solid var(--tperg);color:var(--tperg);text-align:left;transition:transform .12s var(--ease)}
.ed small{display:block;font:700 9px var(--hud);letter-spacing:.08em;color:var(--tperg2)}
.ed:hover{transform:translateY(-2px)}
.ed[aria-pressed=true]{background:var(--tperg);color:var(--acido);box-shadow:inset 0 2px 5px rgba(0,0,0,.4)}
.ed[aria-pressed=true] small{color:var(--perg2)}
.offer{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px;background:var(--perg3);border:3px solid var(--tperg);box-shadow:4px 4px 0 var(--tperg2)}
.offer .price{font-size:32px}
.offer .pvp{color:var(--tperg2)}
.offer .btn{margin-left:auto}
.ptabs{display:flex;gap:6px;flex-wrap:wrap;background:var(--perg2);border:3px solid var(--tperg);padding:6px}
.ptab{font:700 10px var(--hud);letter-spacing:.1em;padding:0 12px;min-height:40px;color:var(--tperg2);border:2px solid transparent}
.ptab[aria-selected=true]{background:var(--quest);color:var(--tinta);border-color:var(--tperg);box-shadow:2px 2px 0 var(--tperg)}
.ppanel{font-size:15px;line-height:1.6;color:var(--tperg);min-height:150px}
.ppanel .txt{white-space:pre-line;max-height:320px;overflow:auto;padding-right:6px}
.en{display:inline-block;font:700 9px var(--hud);background:var(--tperg);color:var(--perg);padding:2px 6px;margin-left:6px;vertical-align:middle}
.kv{width:100%;border-collapse:collapse;font-size:14px}
.kv th,.kv td{text-align:left;padding:8px 10px;border-bottom:2px dashed var(--perg2);vertical-align:top;overflow-wrap:anywhere}
.kv th{font:700 10px var(--hud);letter-spacing:.08em;color:var(--tperg2);width:34%}
.honest{display:grid;gap:10px;padding:16px;background:var(--perg3);border:3px dashed var(--tperg2);text-align:center}
.honest b{font:900 26px/1 var(--pix);text-transform:uppercase}

/* ===== inventario + loader (snippet SelfMadeSystem) ===== */
.panel{width:min(560px,100%);max-height:88dvh;overflow:auto;padding:22px;animation:pop .22s var(--ease)}
.panel h3{font:900 40px/.9 var(--pix);text-transform:uppercase;margin-bottom:14px;display:flex;justify-content:space-between;align-items:center;gap:12px}
.li{display:grid;grid-template-columns:48px minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:10px 0;border-bottom:2px dashed var(--perg2)}
.li img{width:48px;height:48px;object-fit:cover;border:2px solid var(--tperg)}
.li b{font:800 18px/1 var(--pix);text-transform:uppercase}
.li .p{font:800 14px var(--mono)}
.li button{font:700 9px var(--hud);min-height:40px;padding:0 8px;border:2px solid var(--tperg)}
.tot{display:flex;justify-content:space-between;align-items:center;margin:16px 0;font:800 22px var(--mono)}
.paybox{display:grid;gap:10px}
.loading{display:flex;gap:12px;align-items:center;justify-content:center;padding:12px;font:700 11px var(--hud);letter-spacing:.12em}
.loader{width:42px;height:42px}
.loader circle{fill:none;stroke-width:6;stroke-linecap:round}
.loader .bg{stroke:var(--perg2)}
.loader .dash{stroke:var(--quest);animation:dashArray 2s ease-in-out infinite,dashOffset 2s linear infinite}
.loader .spin{stroke:var(--mecha);transform-origin:center;animation:spinDashArray 2s ease-in-out infinite,spin 8s ease-in-out infinite,dashOffset 2s linear infinite}
@keyframes dashArray{0%{stroke-dasharray:0 1 359 0}50%{stroke-dasharray:0 359 1 0}100%{stroke-dasharray:359 1 0 0}}
@keyframes spinDashArray{0%{stroke-dasharray:270 90}50%{stroke-dasharray:0 360}100%{stroke-dasharray:270 90}}
@keyframes dashOffset{0%{stroke-dashoffset:365}100%{stroke-dashoffset:5}}
@keyframes spin{0%{rotate:0deg}12.5%,25%{rotate:270deg}37.5%,50%{rotate:540deg}62.5%,75%{rotate:810deg}87.5%,100%{rotate:1080deg}}
.soon{font:500 12px var(--mono);color:var(--tperg2)}

/* ===== pie ===== */
footer{padding:60px 0 30px}
.fg{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}
.fg h4{font:700 10px var(--hud);letter-spacing:.16em;color:var(--ceniza);margin-bottom:12px}
.fg a{display:block;padding:5px 0;font-size:15px}
.fg a:hover{color:var(--acido)}
.fg p{color:var(--ceniza);margin-top:12px;max-width:42ch;font-size:15px}
.giant{font:900 min(19vw,300px)/.8 var(--pix);color:var(--mecha);text-align:center;margin-top:40px;letter-spacing:.02em;text-shadow:8px 8px 0 var(--bisel)}

/* aparición */
.rv{opacity:0;transform:translateY(22px)}
.rv.on{opacity:1;transform:none;transition:opacity .45s var(--ease),transform .45s var(--ease)}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:opacity .2s!important}
  .rv{opacity:1;transform:none}
  .fc .inner{transform:none!important}.fc .back{transform:none;opacity:0;pointer-events:none}
  .fc.flip .front{opacity:0}.fc.flip .back{opacity:1;pointer-events:auto}
  .gloss:hover .t{transform:none}
}
@media (max-width:1100px){
  .links{display:none}
  .hero{grid-template-columns:minmax(0,1fr)}
  .cats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .gift{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:767px){
  nav{grid-template-columns:minmax(0,1fr) auto;min-height:64px}
  .logo b{font-size:28px}.logo small{display:none}.inv .t{display:none}
  .cubes{--cw:clamp(36px,12.6vw,60px)}
  .gloss .gw{font-size:24px;padding:18px 22px}
  .hot{grid-template-columns:minmax(0,1fr)}.hot .cov{max-width:200px}
  .slots{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .crow{grid-template-columns:minmax(0,1fr)}
  .grid{grid-template-columns:repeat(auto-fill,minmax(min(236px,100%),1fr))}
  .guide{grid-template-columns:minmax(0,1fr)}
  .gtabs{flex-direction:row;overflow-x:auto;border-right:0;border-bottom:3px solid var(--tperg)}
  .gtab{flex:none}
  .steps,.qa,.fg{grid-template-columns:minmax(0,1fr)}
  .sheet{grid-template-columns:minmax(0,1fr)}
  .sh-l{border-right:0;border-bottom:3px solid var(--tperg);flex-direction:row;align-items:flex-start}
  .sh-l .cov{width:110px}
  .offer .btn{margin-left:0;width:100%}
  .boom{width:240px;height:240px;right:-80px;bottom:-90px}
}

/* ===== extras ===== */
body.lock{overflow:hidden}
.px{display:block}
.spk{animation:spark .5s steps(2) infinite}
@keyframes spark{50%{opacity:.2}}
.cells.c10{--n:10}
.btn.ok{background:var(--quest)}
.questlog{display:flex;flex-direction:column}
.qhead{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:center;padding:14px 16px 4px}
.qhead .sprite{background:var(--perg3);border:3px solid var(--tperg);box-shadow:inset -3px -3px 0 var(--perg2);padding:6px}
.qhead small{display:block;font-size:9px;color:var(--tperg2)}
.qtitle{display:block;font:900 clamp(30px,3vw,44px)/.9 var(--pix);text-transform:uppercase}
.qsub{font:500 12px var(--mono);color:var(--tperg2)}
.sec-top{margin-top:clamp(40px,5vw,70px)}
.lbl-acc{border:0!important;padding:0!important;color:var(--acido)!important}
.hot .kick{color:var(--acido)}
.gbody-in h3{font:900 30px/.9 var(--pix);text-transform:uppercase;margin-bottom:6px}
.gbody-in .intro{color:var(--tperg2);margin-bottom:14px}
.chip small{opacity:.7;margin-left:2px}

.drops{margin:0 16px 16px;border-top:3px dashed var(--tperg2);padding-top:12px;display:grid;gap:8px;flex:1;align-content:start}
.drops .eds-l{margin-bottom:2px}
.drop{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:10px;align-items:center;text-align:left;background:var(--perg3);border:3px solid var(--tperg);box-shadow:3px 3px 0 var(--tperg2);padding:5px 8px 5px 5px;transition:transform .12s var(--ease)}
.drop:hover{transform:translate(-2px,-2px)}
.drop img{width:40px;height:40px;object-fit:cover;border:2px solid var(--tperg)}
.drop b{font:800 18px/1 var(--pix);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.drop span{font:800 13px var(--mono);background:var(--acido);border:2px solid var(--tperg);padding:1px 6px}
.sh-l .meter .l{color:var(--ceniza)}.sh-l .meter .l b{color:var(--acido)}
@media (max-width:767px){
  .ptabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
  .ptab{flex:none}
  .sh-l>div:last-child{flex:1;min-width:0}
}

/* imagen entera, sin recorte, con fondo difuminado de la propia portada */
.cov{isolation:isolate}
.cov img.bgb{position:absolute;inset:-12%;width:124%;height:124%;max-width:none;object-fit:cover;filter:blur(18px) saturate(1.2) brightness(.5);z-index:-1}
.cov img.fg{position:relative;width:100%;height:100%;object-fit:contain;transition:transform .5s var(--ease)}
.fc:hover .cov img.fg{transform:scale(1.04)}
.fc:hover .cov img.bgb{transform:none}

/* ===== selector de idioma ===== */
.langs{display:flex;gap:2px;border:2px solid var(--linea);padding:2px;background:var(--tinta)}
.lang{font:700 10px var(--hud);letter-spacing:.06em;min-width:34px;min-height:38px;padding:0 6px;color:var(--ceniza);transition:transform .12s var(--ease)}
.lang:hover{color:var(--hueso)}
.lang:active{transform:translateY(2px)}
.lang[aria-pressed=true]{background:var(--acido);color:var(--tinta);box-shadow:2px 2px 0 var(--bisel)}
@media (max-width:767px){
  nav{row-gap:8px;padding-bottom:10px}
  .navr{display:contents}
  .langs{grid-column:1/-1;grid-row:2;justify-self:start}
  .inv{grid-column:2;grid-row:1}
  .lang{min-width:44px;min-height:40px}
}

/* ===== cartas con hueco vertical para la portada (3:4) ===== */
.fc{min-height:0;aspect-ratio:10/21}
.fc .cov{flex:none;aspect-ratio:3/4}
.fc .body{flex:1;justify-content:space-between}
.rail{grid-auto-columns:clamp(220px,19vw,260px)}
.links a{padding:10px 8px;letter-spacing:.08em}
.accept span{background:var(--carcasa)}
@media (max-width:1320px){.links{display:none}}
@media (max-width:767px){
  .fc{aspect-ratio:auto;height:640px}
  .grid{grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr))}
}

/* ajuste de alto: portada 3:4 + cuerpo completo */
.fc{aspect-ratio:10/25.5}
@media (max-width:767px){
  .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .fc{height:auto;aspect-ratio:10/27}
  .rail{grid-auto-columns:minmax(170px,46vw)}
  .rar{padding:7px 8px}.rar .pf{display:none}
  .save{font-size:17px;padding:4px 6px;top:6px;right:6px}
  .body{padding:9px 9px 10px;gap:7px}
  .body h3{font-size:17px}
  .body .cells,.body .pvp{display:none}
  .body .eds{font-size:8px}
  .body .buy{flex-direction:column;align-items:stretch;gap:6px}
  .body .buy .price{font-size:17px;align-self:flex-start}
  .body .buy .btn{margin-left:0;width:100%;padding:0 6px;font-size:10px}
  .flipbtn{min-height:28px;font-size:8px}
}
.body .eds{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.body h3{min-height:0}
.body .buy{margin-top:auto}
@media (max-width:359px){ .grid{grid-template-columns:minmax(0,1fr)} .fc{aspect-ratio:10/19} .body .pvp{display:block} }
@media (min-width:768px){ .fc{aspect-ratio:10/27} }
@media (max-width:359px){ .fc{aspect-ratio:10/23.5} }
@media (max-width:359px){ .rail{grid-auto-columns:80vw} }
.iva{font:500 10px var(--mono);color:var(--ceniza);margin-top:4px}
.offer .iva{color:var(--tperg2);margin:0}
.hot .iva{color:var(--ceniza)}
@media (max-width:767px){ .body .iva{font-size:9px;margin-top:0} }
.e404{min-height:100dvh;display:grid;place-items:center;padding-top:40px;padding-bottom:40px}
.e404-box{width:min(560px,100%)}
.e404-in{padding:28px;display:grid;gap:14px;justify-items:start}
.e404-in h1{font:900 clamp(96px,22vw,180px)/.8 var(--pix);color:var(--mecha2)}
