
/* SECCIÓN 04 — Carrusel de clásicos */
.derbies-section{background:linear-gradient(180deg,#0b0811,#120a1d)}
.derby-track{display:grid;grid-auto-columns:minmax(245px,31%);grid-auto-flow:column;gap:16px;overflow-x:auto;padding:8px 4px 22px;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;scrollbar-color:#7439b5 #17101f}
.derby-card{min-height:230px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;gap:9px;padding:22px;border:1px solid rgba(206,166,255,.22);border-radius:20px;background:radial-gradient(circle at 80% 10%,rgba(165,72,255,.42),transparent 48%),linear-gradient(135deg,#25103c,#0b0912 75%);scroll-snap-align:start;isolation:isolate}
.derby-card:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(5,3,8,.92),rgba(10,5,16,.12));}
.derby-card:after{content:"";position:absolute;z-index:-2;width:190px;height:190px;right:-50px;top:-45px;border:1px solid rgba(205,160,255,.35);border-radius:50%;box-shadow:0 0 0 18px rgba(146,65,255,.06),0 0 55px rgba(153,50,255,.24)}
.derby-card span{font-size:.68rem;font-weight:900;letter-spacing:.17em;color:#d5b5ff}
.derby-card h3{font-size:clamp(1.2rem,2vw,1.65rem);line-height:1.15;color:#fff}
.derby-card h3 b{color:#c084fc;font-size:.78em}
.derby-card p{font-size:.82rem;color:#c7b9d3}
.derby-spain{background-color:#241039}.derby-argentina{background:radial-gradient(circle at 75% 20%,rgba(66,159,255,.3),transparent 45%),linear-gradient(135deg,#102139,#0b0912)}
.derby-paraguay{background:radial-gradient(circle at 75% 20%,rgba(255,55,90,.25),transparent 45%),linear-gradient(135deg,#32101d,#0b0912)}
.derby-uruguay{background:radial-gradient(circle at 75% 20%,rgba(87,177,255,.25),transparent 45%),linear-gradient(135deg,#10243c,#0b0912)}
.derby-europe{background:radial-gradient(circle at 75% 20%,rgba(172,83,255,.32),transparent 45%),linear-gradient(135deg,#24103a,#0b0912)}
/* SECCIÓN 06 — Minijuego táctil */
.game-section{position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 20%,rgba(113,39,184,.22),transparent 50%),#09070e}
.game-shell{max-width:900px}
.game-section .section-heading{text-align:center;margin-bottom:30px}
.game-card{max-width:740px;margin:0 auto;border:1px solid rgba(199,151,255,.23);border-radius:24px;padding:clamp(14px,3vw,28px);background:linear-gradient(145deg,rgba(30,18,43,.96),rgba(10,8,15,.98));box-shadow:0 25px 80px rgba(0,0,0,.3)}
.game-scoreline{display:flex;align-items:center;justify-content:space-between;color:#c9b5df;font-size:.72rem;letter-spacing:.13em;font-weight:800;margin-bottom:14px}
.game-scoreline strong{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#27153a;color:#fff;font-size:1.2rem;border:1px solid #9855e7}
.penalty-pitch{position:relative;isolation:isolate;overflow:hidden;min-height:330px;aspect-ratio:1.45;border-radius:17px;border:1px solid rgba(219,192,255,.25);background:radial-gradient(ellipse at 50% 0%,rgba(191,151,255,.4),transparent 35%),linear-gradient(180deg,#201134 0%,#171d24 30%,#15402f 100%);touch-action:pan-y}
.penalty-pitch:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0 8%,transparent 8% 16%);z-index:-1}
.pitch-lines{position:absolute;inset:9% 7%;border:1px solid rgba(255,255,255,.28);border-radius:4px;pointer-events:none}
.pitch-lines:before{content:"";position:absolute;left:0;right:0;top:50%;border-top:1px solid rgba(255,255,255,.2)}
.pitch-lines:after{content:"";position:absolute;left:25%;right:25%;top:0;height:30%;border:1px solid rgba(255,255,255,.24);border-top:0}
.goal-frame{position:absolute;top:10%;left:50%;transform:translateX(-50%);width:48%;height:31%;border:5px solid #e6e0f0;border-bottom:0;border-radius:5px 5px 0 0;box-shadow:0 0 20px rgba(221,194,255,.2);background:repeating-linear-gradient(0deg,transparent 0 15px,rgba(255,255,255,.2) 16px 17px),repeating-linear-gradient(90deg,transparent 0 20px,rgba(255,255,255,.16) 21px 22px)}
.goal-net{position:absolute;inset:0;background:linear-gradient(180deg,rgba(200,168,255,.08),transparent)}
.goalkeeper{position:absolute;bottom:-5px;left:50%;width:44px;height:58px;transform:translateX(-50%);border-radius:16px 16px 8px 8px;background:linear-gradient(90deg,#5b21b6,#c084fc,#4c1d95);box-shadow:0 0 18px rgba(168,85,247,.5);transition:left .28s ease}
.goalkeeper:before{content:"";position:absolute;width:25px;height:25px;border-radius:50%;background:#e4c2a5;top:-21px;left:50%;transform:translateX(-50%);border:2px solid #fff}
.goalkeeper:after{content:"";position:absolute;left:-18px;right:-18px;top:7px;height:14px;border-radius:9px;background:#c4b5fd}
.game-ball{position:absolute;left:50%;bottom:13%;width:42px;height:42px;border:2px solid #e8dcff;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#c9c1d8 62%,#6e617e);box-shadow:0 5px 18px rgba(0,0,0,.5),0 0 20px rgba(168,85,247,.5);transform:translateX(-50%);cursor:grab;z-index:3;touch-action:none}
.game-ball:before{content:"";position:absolute;inset:10px;border-radius:50%;border:2px solid #292034}
.game-ball:after{content:"";position:absolute;inset:15px;background:#2a1c3b;clip-path:polygon(50% 0,100% 35%,80% 100%,20% 100%,0 35%)}
.game-ball span{position:absolute;inset:-10px;border-radius:50%;border:1px solid rgba(213,177,255,.28)}
.game-ball.is-moving{transition:transform .45s cubic-bezier(.2,.7,.2,1),left .45s,bottom .45s}
.aim-guide{position:absolute;left:50%;bottom:20%;height:2px;width:0;background:#d8b4fe;transform-origin:left center;opacity:0;z-index:2;box-shadow:0 0 10px #c084fc;pointer-events:none}
.game-message{position:absolute;left:12px;right:12px;bottom:12px;text-align:center;color:#fff;font-size:.82rem;font-weight:700;text-shadow:0 2px 5px #000;background:rgba(9,6,14,.68);border:1px solid rgba(220,190,255,.18);border-radius:10px;padding:10px}
.game-controls{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding-top:18px}
.game-help{flex:1;min-width:200px;font-size:.82rem;color:#c5b6d2}
.game-controls [hidden],.game-modal[hidden]{display:none!important}
.game-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px}
.game-modal-backdrop{position:absolute;inset:0;background:rgba(4,2,8,.82);backdrop-filter:blur(10px)}
.game-modal-card{position:relative;z-index:1;width:min(100%,460px);padding:clamp(25px,5vw,42px);text-align:center;border:1px solid rgba(208,164,255,.6);border-radius:24px;background:radial-gradient(ellipse at 50% 0%,rgba(147,51,234,.28),transparent 55%),#130c1c;box-shadow:0 25px 100px rgba(0,0,0,.7),0 0 50px rgba(147,51,234,.2);animation:modal-pop .35s ease-out both}
.game-modal-close{position:absolute;right:12px;top:10px;width:40px;height:40px;border:0;border-radius:50%;background:rgba(255,255,255,.08);color:white;font-size:1.7rem;cursor:pointer}
.trophy-mark{font-size:2.3rem;margin-bottom:10px}
.game-modal-card h2{font-size:clamp(2rem,8vw,3rem);color:#fff;margin:10px 0}
.game-modal-card>p{color:#e7ddef;line-height:1.65}
.discount-value{display:block;font-size:2.3rem;color:#d8b4fe;margin:18px 0;text-shadow:0 0 28px rgba(192,132,252,.5)}
.game-modal-card .button{width:100%;white-space:normal;margin-top:6px}
.game-modal-note{font-size:.75rem;margin-top:14px}
.after-video-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;padding:0 0 65px}
.social-links{display:flex;justify-content:center;align-items:center;gap:16px;flex-wrap:wrap;padding:22px 0}
.social-links a{display:inline-flex;align-items:center;gap:8px;color:#d8c7e8;border:1px solid rgba(196,165,225,.22);padding:10px 16px;border-radius:99px;text-decoration:none}
.social-links a:hover{border-color:#c084fc;color:#fff}
@keyframes modal-pop{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:720px){
 .derby-track{grid-auto-columns:minmax(78%,1fr);gap:12px}
 .derby-card{min-height:205px}
 .penalty-pitch{min-height:285px;aspect-ratio:1/1.1}
 .game-controls{align-items:stretch;flex-direction:column}
 .game-controls .button{width:100%}
 .game-help{min-width:0}
 .after-video-actions{padding:0 20px 45px}
 .after-video-actions .button{width:100%}
}
@media(prefers-reduced-motion:reduce){.gamekeeper,.goalkeeper,.game-modal-card{animation:none!important;transition:none!important}}
