/* ════════════════════════════════════════════════════════════════
   MPC — sobrio.css
   Paleta sobria + componentes nuevos (hero, torneos, sponsors).
   Linkear DESPUÉS de style.css y nuevo.css:
     <link rel="stylesheet" href="assets/css/sobrio.css">
   Usa tus mismas variables, así el tema claro/oscuro sigue funcionando.
   ════════════════════════════════════════════════════════════════ */

/* ── PALETA SOBRIA (override de los :root de style.css) ───────────── */
:root{
  --brand:#2F6FB0; --brand-d:#235688; --brand-l:#6FA8DA;
  --red:#C0473B; --red-l:#E08074;
  --dark:#0B1220; --dark2:#111C2F; --dark3:#16243C; --dark4:#1C2C49;
  --text:#E6ECF5; --muted:#93A4BE; --dim:#5A6B86;
  --border:rgba(148,163,184,.14); --borderB:rgba(148,163,184,.30);
  --card:#14223A; --surface:#111C2F;
}
/* ── KEYFRAMES ────────────────────────────────────────────────────── */
@keyframes mpc-kenburns{0%{transform:scale(1.12)}100%{transform:scale(1.26)}}
@keyframes mpc-lines{from{background-position:0 0}to{background-position:260px 0}}
@keyframes mpc-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes mpc-glow{0%,100%{opacity:.6}50%{opacity:1}}

/* ── HELPERS ──────────────────────────────────────────────────────── */
.mpc-sec{padding:4.5rem 1.5rem 0}
.mpc-head{max-width:1240px;margin:0 auto 1.8rem}
.mpc-head .lbl{font-size:.66rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--brand-l);display:block;margin-bottom:.5rem}
.mpc-head .ttl{font-family:var(--fd);font-size:clamp(2.2rem,5vw,3.4rem);letter-spacing:1px;line-height:1;color:var(--text)}
.mpc-btn{display:inline-block;font-family:var(--fb);font-weight:700;font-size:.8rem;letter-spacing:1px;text-transform:uppercase;padding:13px 26px;border-radius:5px;cursor:pointer;border:none;text-decoration:none;transition:all .15s;white-space:nowrap}
.mpc-btn--primary{background:var(--brand);color:#fff;box-shadow:0 8px 24px rgba(47,111,176,.32)}
.mpc-btn--primary:hover{background:var(--brand-d);transform:translateY(-2px)}
.mpc-btn--ghost{background:transparent;color:var(--text);border:1px solid var(--borderB)}
.mpc-btn--ghost:hover{border-color:var(--brand)}

/* ════════════════ HERO ════════════════ */
/* Neutraliza las reglas viejas de #hero (carrusel) */
#hero.mpc-hero-sec{min-height:auto;height:auto;display:block;overflow:visible;background:var(--dark);padding:78px 1.5rem 0;text-align:left}

.mpc-hero{display:grid;grid-template-columns:1fr 1.08fr;min-height:580px;max-width:1240px;margin:0 auto;border-radius:18px;overflow:hidden;border:1px solid var(--border);background:var(--card)}
.mpc-hero__panel{position:relative;background:linear-gradient(160deg,var(--surface),var(--dark));padding:3.2rem 3rem;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.mpc-hero__panel::before,.mpc-hero__panel::after{content:"";position:absolute;border-radius:50%;filter:blur(55px);pointer-events:none;animation:mpc-glow 6s ease-in-out infinite}
.mpc-hero__panel::before{width:460px;height:460px;left:-25%;top:-15%;background:radial-gradient(circle,rgba(47,111,176,.30),transparent 65%)}
.mpc-hero__panel::after{width:400px;height:400px;right:-28%;bottom:-22%;background:radial-gradient(circle,rgba(192,71,59,.16),transparent 65%)}
.mpc-hero__in{position:relative;z-index:2}
.mpc-kick{display:inline-block;font-size:.62rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--brand-l);margin-bottom:1.1rem}
.mpc-hero__title{font-family:var(--fd);font-size:clamp(2.5rem,4.6vw,4.2rem);line-height:.92;letter-spacing:1px;color:var(--text);margin-bottom:1.1rem}
.mpc-hero__title em{color:var(--brand-l);font-style:normal}
.mpc-hero__lead{color:var(--muted);font-size:1rem;line-height:1.65;max-width:380px;margin-bottom:1.8rem}
.mpc-cta-row{display:flex;gap:.7rem;flex-wrap:wrap;margin-bottom:2rem}
.mpc-stats{display:flex;gap:2.2rem}
.mpc-stat b{font-family:var(--fd);font-weight:400;font-size:2rem;color:var(--text);line-height:1;display:block}
.mpc-stat span{font-size:.62rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}

.mpc-show{position:relative;overflow:hidden;background:#070D1A}
.mpc-show__track{display:flex;height:100%;transition:transform .7s cubic-bezier(.4,0,.2,1)}
.mpc-show__slide{flex:0 0 100%;position:relative;min-height:580px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.mpc-show__bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:blur(30px) brightness(.42) saturate(1.2);transform:scale(1.25);animation:mpc-kenburns 16s ease-in-out infinite alternate}
.mpc-show__veil{position:absolute;inset:0;background:linear-gradient(to top,rgba(3,10,28,.85),rgba(3,10,28,.15) 45%,rgba(3,10,28,.4))}
.mpc-show__card{position:relative;z-index:2;height:500px;width:auto;max-width:86%;border-radius:14px;box-shadow:0 24px 60px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.06)}
.mpc-show__tag{position:absolute;top:1.3rem;left:1.5rem;z-index:3;transform:skewX(-10deg);background:var(--brand);padding:6px 15px}
.mpc-show__tag span{display:inline-block;transform:skewX(10deg);font-family:'Barlow Condensed',sans-serif;font-weight:700;font-style:italic;font-size:.76rem;letter-spacing:1px;text-transform:uppercase;color:#fff;white-space:nowrap}
.mpc-show__cta{position:absolute;bottom:1.5rem;left:0;right:0;z-index:3;display:flex;justify-content:center;gap:.6rem}

.mpc-dots{position:absolute;z-index:5;display:flex;gap:.4rem}
.mpc-dots--show{top:1.4rem;right:1.5rem}
.mpc-dot{width:8px;height:8px;border-radius:6px;border:none;background:rgba(255,255,255,.34);cursor:pointer;padding:0;transition:all .3s}
.mpc-dot.is-on{width:24px;background:#fff}

/* ════════════════ TORNEOS ════════════════ */
.mpc-torneos-panel{position:relative;max-width:1240px;margin:0 auto;border-radius:20px;overflow:hidden;border:1px solid var(--border);background:linear-gradient(180deg,var(--surface),var(--card));padding:2.4rem 2.2rem}
.mpc-torneos-panel::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(to right,var(--brand),transparent 60%)}
.mpc-torneos-head{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:1.8rem}
.mpc-pill-link{font-size:.72rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--brand-l);border:1px solid var(--borderB);padding:9px 18px;border-radius:30px;text-decoration:none}

.mpc-tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.2rem}
.mpc-tcard{position:relative;border-radius:14px;overflow:hidden;aspect-ratio:2/3;border:1px solid var(--border);background:var(--dark4);cursor:pointer;transition:transform .35s cubic-bezier(.4,0,.2,1),box-shadow .35s,border-color .35s}
.mpc-tcard:hover{transform:translateY(-6px);box-shadow:0 18px 44px rgba(0,0,0,.45);border-color:var(--borderB);z-index:2}
.mpc-tcard__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.4,0,.2,1)}
.mpc-tcard:hover .mpc-tcard__img{transform:scale(1.07)}

/* Torneos finalizados: portadas apagadas para distinguirlas de un vistazo de los próximos */
#torneos-grid-finalizados .mpc-tcard__img{filter:grayscale(55%) brightness(.7) saturate(.7)}
#torneos-grid-finalizados .mpc-tcard:hover .mpc-tcard__img{filter:grayscale(35%) brightness(.8) saturate(.85)}
/* brillo sutil del borde superior al hover */
.mpc-tcard::after{content:"";position:absolute;inset:0;z-index:3;border-radius:14px;box-shadow:inset 0 0 0 1px transparent;transition:box-shadow .35s;pointer-events:none}
.mpc-tcard:hover::after{box-shadow:inset 0 0 0 1px rgba(111,168,218,.45)}
.mpc-tcard__ph{position:absolute;inset:0;background:linear-gradient(160deg,var(--dark3) 0%,var(--dark4) 55%,var(--dark2) 100%);display:flex;align-items:flex-start;justify-content:center;overflow:hidden}
.mpc-tcard__ph-glow{position:absolute;width:140%;height:70%;left:-20%;top:-25%;background:radial-gradient(closest-side,rgba(26,127,212,.28),transparent 70%);pointer-events:none}
.mpc-tcard__ph-content{position:relative;z-index:1;padding:1.6rem 1.1rem 3.2rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.5rem}
.mpc-tcard__ph-eyebrow{font-family:var(--fb);font-size:.62rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--brand-l)}
.mpc-tcard__ph-nombre{font-family:var(--fd);font-size:clamp(1.5rem,4vw,2rem);line-height:1.02;letter-spacing:.5px;color:#fff;text-wrap:balance}
.mpc-tcard__ph-desc{font-family:var(--fb);font-size:.76rem;font-weight:400;line-height:1.5;color:rgba(240,244,255,.65);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.mpc-tcard__badge{position:absolute;top:.7rem;right:.7rem;z-index:2;font-size:.504rem;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;padding:4px 10px;border-radius:20px}
.mpc-badge--open{background:rgba(54,166,118,.18);color:#7FD7AD;border:1px solid rgba(54,166,118,.4)}
.mpc-badge--done{background:rgba(148,163,184,.18);color:#C3CEDE;border:1px solid rgba(148,163,184,.4)}
.mpc-badge--live{background:rgba(192,71,59,.22);color:#E08074;border:1px solid rgba(192,71,59,.5)}
.mpc-tcard__foot{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:1.6rem .85rem .85rem;background:linear-gradient(transparent,rgba(3,10,28,.92))}
.mpc-tcard__date{font-size:.66rem;letter-spacing:1.5px;text-transform:uppercase;color:rgba(240,244,255,.7);margin-bottom:.55rem}
.mpc-tcard__btns{display:flex;gap:.4rem}
.mpc-tcard__btns a{text-align:center;font-weight:700;font-size:.64rem;letter-spacing:.5px;text-transform:uppercase;padding:8px 0;border-radius:5px;text-decoration:none}
.mpc-tcard__btns .p{flex:1;background:var(--brand);color:#fff}
.mpc-tcard__btns .s{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.2);padding:8px 12px}

/* ════════════════ SPONSORS ════════════════ */
.mpc-bb{position:relative;height:210px;max-width:1240px;margin:0 auto 2.4rem;border-radius:14px;overflow:hidden;border:1px solid var(--border)}
.mpc-bb__track{display:flex;height:100%;transition:transform .7s cubic-bezier(.4,0,.2,1)}

/* —— Slide "solo banner del sponsor" (recomendado) ——
   El slide es exclusivamente la pieza publicitaria del sponsor.
   Sin textos ni botones encima. Todo el banner es clickeable. */
.mpc-bb__slide{flex:0 0 100%;position:relative;height:210px;overflow:hidden;display:block}
.mpc-bb__art{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.mpc-bb__ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(120deg,var(--surface),var(--dark4));color:var(--dim);font-family:'DM Mono',monospace,monospace;font-size:.62rem;letter-spacing:2px;text-transform:uppercase}

/* —— Slide compuesto (logo + mensaje + CTA), opcional ——
   Usá .mpc-bb__slide--rich si querés que MPC arme el aviso. */
.mpc-bb__slide--rich{display:grid;grid-template-columns:280px 1fr}
.mpc-bb__bg{position:absolute;inset:0;background-size:cover;background-position:center;animation:mpc-kenburns 13s ease-in-out infinite alternate}
.mpc-bb__lines{position:absolute;inset:0;background-image:repeating-linear-gradient(-45deg,rgba(255,255,255,.06) 0,rgba(255,255,255,.06) 2px,transparent 2px,transparent 70px);animation:mpc-lines 20s linear infinite;opacity:.5}
.mpc-bb__logo{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;padding:1.4rem}
.mpc-bb__plate{background:rgba(8,17,43,.5);border:1px solid rgba(255,255,255,.18);border-radius:12px;backdrop-filter:blur(8px);padding:1.3rem 1.7rem;text-align:center;min-width:170px}
.mpc-bb__plate img{max-height:62px;max-width:160px;object-fit:contain}
.mpc-bb__name{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-style:italic;font-size:1.8rem;letter-spacing:1px;color:#fff;line-height:1}
.mpc-bb__note{font-family:'DM Mono',monospace,monospace;font-size:.54rem;letter-spacing:2px;color:rgba(255,255,255,.5);margin-top:.4rem}
.mpc-bb__body{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;padding:1.4rem 2rem 1.4rem 0}
.mpc-bb__msg{font-family:var(--fd);font-size:clamp(1.5rem,2.8vw,2.4rem);line-height:1;letter-spacing:.5px;color:#fff;margin-bottom:.7rem}
.mpc-bb__cta{align-self:flex-start;background:rgba(255,255,255,.95);color:#0C1835;font-weight:700;font-size:.7rem;letter-spacing:1px;text-transform:uppercase;padding:9px 20px;border:none;border-radius:5px;text-decoration:none}
.mpc-bb__nav{position:absolute;top:50%;transform:translateY(-50%);z-index:6;width:32px;height:32px;border-radius:50%;background:rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.2);color:#fff;cursor:pointer;font-size:1rem;line-height:1}
.mpc-bb__nav--prev{left:.8rem}
.mpc-bb__nav--next{right:.8rem}
.mpc-dots--bb{bottom:.9rem;left:50%;transform:translateX(-50%)}

.mpc-strip-cap{text-align:center;margin-bottom:1rem}
.mpc-strip-cap span{font-size:.62rem;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--muted)}
.mpc-strip{position:relative;overflow:hidden;padding:1.1rem 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);max-width:1240px;margin:0 auto}
.mpc-strip__track{display:flex;width:max-content;animation:mpc-marquee 30s linear infinite}
.mpc-strip:hover .mpc-strip__track{animation-play-state:paused}
.mpc-strip__item{display:flex;align-items:center;justify-content:center;padding:0 2.7rem;height:48px;flex-shrink:0}
.mpc-strip__item img{max-height:34px;max-width:130px;object-fit:contain;filter:grayscale(1) opacity(.6);transition:filter .3s}
.mpc-strip__item:hover img{filter:grayscale(0) opacity(1)}
.mpc-strip__name{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-style:italic;font-size:1.2rem;letter-spacing:1.5px;color:var(--muted);white-space:nowrap}

/* ── RESPONSIVE ──────────────────────────────────────────────────── */
@media(prefers-reduced-motion:reduce){
  .mpc-tcard,.mpc-tcard__img{transition:none}
  .mpc-tcard:hover{transform:none}
  .mpc-tcard:hover .mpc-tcard__img{transform:none}
}
@media(max-width:860px){
  .mpc-hero{grid-template-columns:1fr}
  .mpc-show__slide{min-height:460px}
  .mpc-show__card{height:400px}
  .mpc-bb__slide{grid-template-columns:1fr}
  .mpc-bb__logo{display:none}
  .mpc-bb__body{padding:1.4rem}
}
