:root{--bg:#050805;--bg-2:#071009;--card:#0c1a0e;--card-2:#10230f;--line:rgba(131,224,55,.16);--lime:#83E037;--lime-2:#a6f060;--gold:#f5c842;--cta:#F39021;--cta-hover:#ffa43d;--ink:#1a0c00;--txt:#ffffff;--mute:#b9c9b0;--live:#ff4b4b;--r:18px;--r-sm:12px;--wrap:1240px;--head:"Archivo",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;--body:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;--safe:env(safe-area-inset-bottom,0px);--hdr-h:56px}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:var(--hdr-h)}
body{margin:0;background:var(--bg);color:var(--txt);font-family:var(--body);font-size:16px;line-height:1.5;overflow-x:hidden;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
h1,h2,h3,p,ul{margin:0}
ul{padding:0;list-style:none}
a{color:var(--lime);text-decoration:none}
a:hover{color:var(--lime-2)}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:6px}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 20px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.eyebrow{font-family:var(--head);font-size:13px;font-weight:800;letter-spacing:.14em;color:var(--lime);text-transform:uppercase}
.h2{font-family:var(--head);font-weight:900;font-size:clamp(28px,7vw,46px);line-height:1.02;letter-spacing:-.02em;text-transform:uppercase;text-wrap:balance}
.lead{color:var(--mute);font-size:16px;max-width:560px;text-wrap:pretty}
.legal{font-size:12.5px;color:var(--mute)}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:0 22px;border-radius:14px;font-family:var(--head);font-weight:900;font-size:17px;letter-spacing:.04em;text-transform:uppercase;text-align:center;transition:transform .15s,background-color .15s,box-shadow .15s;-webkit-tap-highlight-color:transparent}
.btn-primary{background:var(--cta);color:var(--ink);box-shadow:0 10px 30px -10px rgba(243,144,33,.7)}
.btn-primary:hover{background:var(--cta-hover);color:var(--ink);transform:translateY(-1px)}
.btn-primary:active{transform:translateY(1px)}
.btn-ghost-lime{border:2px solid var(--lime);color:var(--lime)}
.btn-ghost-lime:hover{background:rgba(131,224,55,.1);color:var(--lime-2)}
.btn-block{width:100%}
.cta-stack{display:flex;flex-direction:column;gap:12px;align-items:stretch}

/* header */
.site-header{position:sticky;top:0;z-index:40;background:rgba(5,8,5,.86);backdrop-filter:saturate(140%) blur(12px);-webkit-backdrop-filter:saturate(140%) blur(12px);border-bottom:1px solid var(--line)}
.hdr{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;height:var(--hdr-h)}
.hdr .logo{justify-self:start}
.hdr-bonus{justify-self:center;display:none;font-weight:600;font-size:14px;letter-spacing:.01em;color:var(--gold);white-space:nowrap;opacity:0;transform:translateY(4px);transition:opacity .25s ease,transform .25s ease}
.hb-short{display:none}
.btn-head{justify-self:end;display:inline-grid;place-items:center}
.btn-head>span{grid-area:1/1;transition:opacity .2s ease}
.btn-head .lbl-top{opacity:0;visibility:hidden}
.btn-head .lbl-scr{opacity:1}
.logo{font-family:var(--head);font-weight:900;font-size:22px;letter-spacing:-.02em;color:var(--txt);line-height:1}
.logo b{color:var(--lime);font-weight:900}
.logo:hover{color:var(--txt)}
.btn-head{min-height:44px;padding:0 16px;font-size:13.5px;border-radius:14px;box-shadow:0 8px 22px -10px rgba(243,144,33,.75)}

/* hero */
.hero{position:relative;overflow:hidden;isolation:isolate;padding:20px 0 24px}
.hero-grid{display:grid;gap:24px}
.hero-copy{position:relative;z-index:2;display:flex;flex-direction:column;gap:12px}
.hero h1{font-family:var(--head);font-weight:900;font-size:clamp(34px,9.6vw,68px);line-height:.96;letter-spacing:-.03em;text-transform:uppercase;text-wrap:balance}
.hero-bonus{align-self:flex-start;font-family:var(--head);font-weight:900;font-size:clamp(17px,4.8vw,22px);line-height:1.2;color:var(--gold);padding:8px 12px;border-radius:10px;background:rgba(245,200,66,.1);border:1px solid rgba(245,200,66,.3);text-wrap:balance}
.hero-sub{color:#dbe7d3;font-size:15px;max-width:480px;text-wrap:pretty}
.checks{display:flex;flex-direction:column;gap:7px;padding:0 0 2px}
.checks li{display:flex;align-items:center;gap:10px;font-weight:600;font-size:14.5px}
.checks li::before{content:"";flex:0 0 20px;height:20px;border-radius:50%;background:var(--lime) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 10.4l3 3 6-6.4' fill='none' stroke='%23071009' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/20px no-repeat}
.hero .btn{width:100%}
.hero-mid{display:grid;grid-template-columns:minmax(0,1fr) 28%;align-items:end;gap:8px}
.mascot-m{width:100%;height:auto;margin:-36px 0 -10px;filter:drop-shadow(0 18px 24px rgba(0,0,0,.6))}
[data-hero="football"] .hero-mid{grid-template-columns:1fr}
[data-hero="football"] .mascot-m,[data-hero="football"] .mascot{display:none!important}
.mascot{display:none}
.hero-legal{text-align:center}

/* hero visual — fallback stadium; real image drops into #hero-media */
.hero-visual{position:absolute;inset:0;z-index:-1;pointer-events:none}
.stadium{position:absolute;inset:0;background:radial-gradient(70% 55% at 50% 0%,#1d3a20,transparent 70%),#050805}
.hv-stands{position:absolute;left:-5%;right:-5%;top:22%;height:40%;background:radial-gradient(circle,rgba(255,255,255,.18) 0 1.2px,transparent 1.6px) 0 0/9px 9px,linear-gradient(180deg,#0d1a10,#060b07)}
.hv-lamp{position:absolute;top:9%;width:18%;height:26px;border-radius:6px;background:radial-gradient(circle,#fff 0 30%,rgba(255,255,255,.4) 31% 45%,transparent 46%) 0 0/20px 13px;box-shadow:0 0 60px 20px rgba(255,255,255,.18)}
.hv-lamp-l{left:8%}.hv-lamp-r{right:8%}
.beam{position:absolute;top:-12%;width:30%;height:120%;background:linear-gradient(180deg,rgba(255,255,255,.22),transparent 62%);filter:blur(10px);transform-origin:top center}
.beam-1{left:4%;transform:rotate(-20deg)}
.beam-2{right:4%;transform:rotate(20deg)}
.hv-pitch{position:absolute;left:0;right:0;bottom:0;top:62%;background:linear-gradient(180deg,rgba(0,0,0,.35),transparent 40%),repeating-linear-gradient(180deg,#1c5a1f 0 14%,#16491a 14% 30%,#1c5a1f 30% 52%,#16491a 52% 78%,#1c5a1f 78% 100%);border-top:3px solid rgba(255,255,255,.5)}
.hv-pitch::before{content:"";position:absolute;left:50%;top:22%;width:46%;height:56%;transform:translateX(-50%);border:3px solid rgba(255,255,255,.5);border-radius:50%}
.hv-shadow,.hv-ball{display:none}
#hero-media{position:absolute;inset:0}
#hero-media picture,#hero-media img{width:100%;height:100%;object-fit:cover}
#hero-media.has-img ~ *{display:none!important}
.hero-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,8,5,.25) 0%,rgba(5,8,5,.82) 48%,var(--bg) 100%)}

/* bonus */
.bonus{padding:0}
.bonus-card{position:relative;overflow:hidden;border-radius:var(--r);padding:20px 18px;background:linear-gradient(135deg,#123a14 0%,#0b2410 55%,#071409 100%);border:1px solid rgba(131,224,55,.32);display:grid;gap:16px;text-align:center}
.bonus-card::before{content:"";position:absolute;inset:auto -20% -60% auto;width:70%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(245,200,66,.18),transparent 65%);pointer-events:none}
.bonus-h{font-family:var(--head);font-weight:900;font-size:clamp(30px,8.6vw,46px);line-height:1;letter-spacing:-.02em;color:var(--gold);text-wrap:balance}
.bonus-x{font-family:var(--head);font-weight:900;font-size:clamp(20px,5.4vw,28px);letter-spacing:-.01em;margin-top:6px}
.bonus-act{position:relative;display:grid;gap:10px}

/* sections */
.section{padding:40px 0}
.section-cta{margin-top:20px}
.section-cta .btn{width:100%}

/* betting options */
.options{padding-bottom:32px}
.opt-list{display:grid;gap:8px;margin-top:18px}
.opt-list li{display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--card);border:1px solid var(--line);border-radius:14px}
.opt-em{flex:0 0 40px;height:40px;border-radius:11px;background:rgba(131,224,55,.1);display:grid;place-items:center;font-size:20px;line-height:1}
.opt-list h3{font-family:var(--head);font-weight:900;font-size:15px;letter-spacing:.02em;text-transform:uppercase;line-height:1.2}
.opt-list p{color:var(--mute);font-size:14px;line-height:1.4}

/* trust strip */
.trust{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg-2)}
.trust ul{display:grid;grid-template-columns:1fr 1fr;gap:0}
.trust li{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 8px;font-weight:700;font-size:13.5px;text-align:center}
.trust li:nth-child(odd){border-right:1px solid var(--line)}
.trust li:nth-child(-n+2){border-bottom:1px solid var(--line)}

/* payment methods strip */
.pay{padding:22px 0 20px;background:var(--bg)}
.pay .wrap{display:grid;justify-items:center;gap:10px}
.pay-label{font-weight:700;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--lime);text-align:center}
.pay-list{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;width:100%;max-width:420px}
.pay-list li{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid var(--line);border-radius:12px;background:var(--card);box-shadow:0 0 22px -12px rgba(131,224,55,.45);font-weight:600;font-size:14.5px;color:#fff}
.pay-list svg{flex:0 0 auto;color:var(--lime)}
.pay-note{font-size:12.5px;color:#a9b8a4;text-align:center}
@media (min-width:768px){.pay{padding:26px 0 24px}.pay-list{grid-template-columns:repeat(3,minmax(0,1fr));max-width:820px;gap:10px}.pay-list li{justify-content:center}}

/* live */
.live{background:radial-gradient(70% 50% at 100% 0%,rgba(131,224,55,.14),transparent 70%),var(--bg-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.live{margin-top:24px}
.live-grid{display:grid;gap:22px;align-items:center}
.live-copy{display:grid;gap:12px}
.live-cta{order:2}
.live-copy .btn{width:100%}
.bet-card{background:linear-gradient(180deg,#112512,#0a170b);border:1px solid rgba(131,224,55,.28);border-radius:22px;padding:18px;box-shadow:0 30px 70px -30px rgba(0,0,0,.9),0 0 0 6px rgba(131,224,55,.04);max-width:440px;width:100%;justify-self:center}
.bet-top{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;font-weight:700;letter-spacing:.1em;color:var(--mute);text-transform:uppercase}
.live-pill{display:inline-flex;align-items:center;gap:7px;padding:5px 10px;border-radius:99px;background:rgba(255,75,75,.14);color:#ff8a8a;font-size:11.5px;letter-spacing:.1em}
.live-pill i{width:8px;height:8px;border-radius:50%;background:var(--live);box-shadow:0 0 0 0 rgba(255,75,75,.7);animation:pulse 1.8s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 8px rgba(255,75,75,0)}100%{box-shadow:0 0 0 0 rgba(255,75,75,0)}}
.match{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;padding:18px 4px}
.team{display:grid;justify-items:center;gap:8px;font-weight:700;font-size:15px;text-align:center}
.crest{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font-family:var(--head);font-weight:900;font-size:18px}
.crest-a{background:#1b3a1c;color:var(--lime)}
.crest-b{background:#2b2a12;color:var(--gold)}
.score{font-family:var(--head);font-weight:900;font-size:40px;letter-spacing:-.02em;line-height:1;text-align:center}
.score small{display:block;font-family:var(--body);font-size:12px;font-weight:700;color:var(--lime);letter-spacing:.06em;margin-top:6px}
.odds{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.odd{display:grid;gap:2px;justify-items:center;padding:12px 6px;min-height:58px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);color:var(--txt);transition:background-color .15s,border-color .15s}
.odd span{font-size:12px;color:var(--mute);font-weight:700}
.odd b{font-family:var(--head);font-size:18px;font-weight:900}
.odd:hover{background:rgba(131,224,55,.14);border-color:rgba(131,224,55,.5);color:var(--txt)}
.more{display:flex;justify-content:center;align-items:center;min-height:44px;margin-top:8px;font-weight:700;font-size:14px}

/* final */
.final{padding:44px 0 48px;text-align:center;background:radial-gradient(60% 60% at 50% 100%,rgba(131,224,55,.22),transparent 70%),var(--bg);border-top:1px solid var(--line)}
.final .wrap{display:grid;justify-items:center;gap:12px}
.final .lead{margin:0 auto}
.final .btn{width:100%;max-width:440px;min-height:60px;font-size:17px;margin-top:4px}
.final-bonus{font-family:var(--head);font-weight:900;color:var(--gold);font-size:clamp(17px,4.6vw,22px);line-height:1.25;text-wrap:balance}

/* footer */
.site-footer{background:#030503;border-top:1px solid var(--line);padding:28px 0 calc(28px + var(--safe))}
.site-footer .wrap{display:grid;gap:18px}
.foot-links{display:flex;flex-wrap:wrap;gap:4px 18px}
.foot-links a{display:inline-flex;align-items:center;min-height:40px;color:var(--mute);font-size:14px}
.foot-links a:hover{color:var(--txt)}
.rg{display:flex;align-items:center;gap:16px;padding:16px;border:1.5px solid rgba(255,255,255,.22);border-radius:14px}
.age{flex:0 0 auto;width:56px;height:56px;border-radius:50%;border:3px solid var(--txt);display:grid;place-items:center;font-family:var(--head);font-weight:900;font-size:20px}
.rg p{font-family:var(--head);font-weight:900;font-size:15px;line-height:1.3;letter-spacing:.02em;text-transform:uppercase}
.copy{color:#7f8f78;font-size:12.5px}

/* sticky mobile cta */
.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:50;padding:10px 16px calc(10px + var(--safe));background:rgba(5,8,5,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--line);transform:translateY(110%);transition:transform .25s ease;visibility:hidden}
.sticky-cta.is-on{transform:none;visibility:visible}
.sticky-cta .btn{width:100%;min-height:50px}
.sticky-bonus{text-align:center;font-weight:600;font-size:13px;line-height:1;color:var(--gold);margin:0 0 8px}
body{padding-bottom:0}
@media (max-width:899px){body:has(.sticky-cta.is-on){padding-bottom:calc(92px + var(--safe))}}
@media (max-width:359px){.sticky-bonus{display:none}.btn-head{padding:0 12px;font-size:12.5px}.hdr .logo{font-size:19px}}

/* first reveal: fade-in + one CTA glow/scale 1 → 1.03 → 1, then static */
@keyframes rv-pop{0%{transform:scale(1)}45%{transform:scale(1.03);box-shadow:0 0 0 6px rgba(243,144,33,.22),0 10px 34px -6px rgba(243,144,33,.9)}100%{transform:scale(1)}}
.rv-first .btn-primary{animation:rv-pop .7s ease .25s both}
@media (prefers-reduced-motion:reduce){.rv-first .btn-primary{animation:none}.hdr-bonus{transition:none}}

/* header states: tablet+ shows top (REGISTRATE) → scrolled (bonus + OBTENÉ TU BONO) */
@media (min-width:768px){
  :root{--hdr-h:62px}
  .hdr-bonus{display:block}
  .hb-full{display:none}.hb-short{display:inline}
  .btn-head{min-height:46px;padding:0 22px;font-size:14px}
  .btn-head .lbl-top{opacity:1;visibility:visible}
  .btn-head .lbl-scr{opacity:0;visibility:hidden}
  .site-header.is-scrolled .hdr-bonus{opacity:1;transform:none}
  .site-header.is-scrolled .lbl-top{opacity:0;visibility:hidden}
  .site-header.is-scrolled .lbl-scr{opacity:1;visibility:visible}
}
@media (min-width:1024px){
  .hb-full{display:inline}.hb-short{display:none}
  .hdr-bonus{font-size:15px}
}

/* ---------- ≥ 600 ---------- */
@media (min-width:600px){
  .wrap{padding:0 32px}
  .hero .btn,.section-cta .btn,.live-copy .btn{width:auto;min-width:320px}
  .opt-list{grid-template-columns:repeat(3,1fr);gap:12px}
  .trust ul{grid-template-columns:repeat(4,1fr)}
  .trust li{border:0!important;padding:16px 8px}
  .trust li+li{border-left:1px solid var(--line)!important}
  .bonus-card{padding:28px 32px}
}

/* ---------- ≥ 900 desktop ---------- */
@media (min-width:900px){
  .hero-grid{grid-template-columns:minmax(0,52fr) minmax(0,48fr);align-items:center;gap:32px}
  .hero{padding:32px 0 40px}
  .hero-copy{gap:18px}
  .hero h1{font-size:clamp(38px,4.4vw,60px);line-height:.98}
  .hero-sub{font-size:17px}
  .hero-copy{gap:16px}
  .hero-legal{text-align:left}
  .hero-visual{position:relative;inset:auto;z-index:0;aspect-ratio:11/10;border-radius:28px;overflow:hidden;border:1px solid var(--line);box-shadow:0 40px 90px -40px rgba(0,0,0,.9)}
  .hero-visual::after{z-index:1;background:linear-gradient(0deg,rgba(5,8,5,.45),transparent 30%)}
  .hero-mid{display:block;margin:0}
  .mascot-m{display:none}
  .mascot{display:block;position:absolute;z-index:3;left:50%;bottom:4%;height:86%;width:auto;max-width:none;transform:translateX(-50%);filter:drop-shadow(0 30px 34px rgba(0,0,0,.6))}
  .hv-shadow{display:block;position:absolute;z-index:2;left:32%;bottom:2.5%;width:38%;height:5%;border-radius:50%;background:radial-gradient(closest-side,rgba(0,0,0,.65),transparent)}
  .hv-ball{display:block;position:absolute;z-index:4;left:62%;bottom:4%;width:14%;height:auto;border-radius:50%;filter:drop-shadow(0 16px 18px rgba(0,0,0,.55))}
  .hero-bg{position:absolute;inset:0;z-index:-1;background:radial-gradient(50% 60% at 80% 30%,rgba(131,224,55,.14),transparent 70%)}
  .bonus-card{grid-template-columns:1fr auto;align-items:center;text-align:left;padding:32px 40px;gap:32px}
  .bonus-act{justify-items:start;min-width:300px}
  .bonus-act .btn{width:100%}
  .section{padding:56px 0}
  .options{padding-bottom:48px}
  .live{margin-top:40px}
  .live-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px}
  .bet-card{justify-self:end;padding:22px}
  .final{padding:64px 0 72px}
  .site-footer .wrap{grid-template-columns:1fr auto;align-items:start}
  .foot-links,.copy{grid-column:1}
  .rg{grid-column:2;grid-row:1 / span 3;max-width:380px}
  .sticky-cta{display:none}
  [data-hero="football"] .hv-ball{left:50%;bottom:9%;width:28%;transform:translateX(-50%)}
  [data-hero="football"] .hv-shadow{left:34%;width:32%;bottom:6%}
}
@media (min-width:1100px){
  .hero-grid{grid-template-columns:minmax(0,45fr) minmax(0,55fr);gap:48px}
  .hero{padding:40px 0 48px}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
