*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Arial,Helvetica,sans-serif;color:#f5f7f6}body{background:radial-gradient(circle at 52% 0,#06261e 0,#001510 40%,#000b08 78%);font-size:14px}.wrap{width:1200px;max-width:calc(100% - 40px);margin:auto}.site-header{height:72px;border-bottom:1px solid rgba(255,255,255,.045);background:rgba(0,15,12,.55)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{font-size:31px;font-weight:850;letter-spacing:-2px;white-space:nowrap}.brand span{color:#39e77d}.searchbox{width:300px;height:40px;border-radius:24px;background:#142721;color:#aab4b0;display:flex;align-items:center;padding:0 15px;font-size:24px}.searchbox input{width:100%;border:0;outline:0;background:transparent;color:#fff;font-size:13px;padding-left:8px}.hero{width:100%;height:265px;margin:14px 0 24px;border-radius:13px;overflow:hidden;border:1px solid rgba(57,231,125,.22);background:#071612}.hero img{width:100%;height:100%;display:block;object-fit:cover}.agenda{padding-bottom:35px}.titleline{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin:0 0 14px}.titleline h1{font-size:29px;line-height:1;margin:0 0 8px;letter-spacing:-.7px;color:#39e77d}.titleline p{margin:0;color:#f2f4f3;font-size:13px}.date{justify-self:end;font-size:14px;font-weight:700;color:#39e77d;white-space:nowrap}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:17px}.filters,.views{display:flex;gap:6px;white-space:nowrap}.filters{overflow-x:auto;scrollbar-width:none}.filters::-webkit-scrollbar{display:none}.toolbar button{border:0;border-radius:10px;background:#10231e;color:#f4f6f5;height:37px;padding:0 12px;font-weight:700;font-size:12px;cursor:pointer}.toolbar button.active{background:#39e77d;color:#00140d}.views button{padding:0 15px}.list-head{height:31px;display:grid;grid-template-columns:95px 170px 1fr 120px 120px;align-items:center;padding:0 14px;color:#f2f4f3;font-size:12px}.list-head{color:#39e77d}.list-head span:nth-child(3){text-align:center}.list-head span:last-child{text-align:center}.matches{display:flex;flex-direction:column;gap:9px}.match{min-height:78px;border-radius:12px;background:linear-gradient(100deg,#0b211c,#071a16);display:grid;grid-template-columns:95px 150px 1fr 120px 130px;align-items:center;padding:0 14px;box-shadow:inset 0 0 0 1px rgba(62,229,125,.07)}.kickoff{color:#39e77d;font-size:13px;font-weight:800}.sport{display:flex;align-items:center;gap:10px;font-weight:800}.sport-icon{font-size:25px;line-height:1}.fixture{min-width:0}.competition-name{text-align:center;color:#9eaaa6;font-size:11px;margin-bottom:5px}.teams{display:grid;grid-template-columns:1fr 28px 1fr;align-items:center;gap:7px}.team{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:800;min-width:0}.team.home{justify-content:flex-end}.team.away{justify-content:flex-start}.team img{width:48px;height:52px;object-fit:contain;display:block}.team-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#10231e;border:1px solid rgba(57,231,125,.25);font-size:12px;font-weight:900;color:#39e77d}.vs{text-align:center;color:#39e77d;font-size:13px;font-weight:900;line-height:1}.live{justify-self:center;display:flex;align-items:center;justify-content:center}.acciones{justify-self:end}.options{justify-self:end;width:122px;height:40px;border:1.5px solid #39e77d;border-radius:9px;background:#071612;color:#39e77d;font-size:12px;font-weight:850;cursor:pointer}.options:hover{background:#0c261d}.empty{padding:30px;text-align:center;color:#9eaaa6}@media(max-width:1000px){.toolbar{overflow:auto}.list-head{display:none}.match{grid-template-columns:75px 130px 1fr 116px 120px}.options{width:110px}.team img,.badge{width:44px;height:46px}}@media(max-width:720px){.site-header{height:auto}.header-inner{padding:12px 0;gap:12px}.brand{font-size:25px}.searchbox{width:50%}.hero{height:180px;margin-top:10px}.titleline{align-items:flex-end;gap:10px}.date{font-size:11px}.toolbar{align-items:flex-start}.views{display:none}.match{grid-template-columns:58px 1fr 94px;min-height:105px}.sport{display:none}.fixture{grid-column:2}.options{grid-column:3;width:88px;font-size:10px}.team{gap:6px;font-size:11px;flex-direction:column;text-align:center}.team.home{flex-direction:column-reverse}.team img,.badge{width:38px;height:42px}.vs{font-size:13px}}






/* Ajuste visual agenda sin tocar datos */
.agenda-row,
.match-row,
.partido-row {
    align-items: center;
}





/* Estado EN VIVO dentro de la tarjeta */


/* Acción derecha siempre verde */
.ver-opciones,
.btn-opciones,
.boton-opciones {
    background: transparent !important;
    color: #35e879 !important;
    border: 1px solid #35e879 !important;
}


/* Corrección: vivo es estado, no acción */


/* Todas las acciones usan botón verde */
.ver-opciones, .btn-opciones, .boton-opciones {
  color: #35e879 !important;
  border: 1px solid #35e879 !important;
  background: transparent !important;
}


/* Acción siempre verde */
button.ver-opciones,
button.btn-opciones,
button.boton-opciones {
    background: transparent !important;
    color: #35e879 !important;
    border: 1px solid #35e879 !important;
}


/* Botón acción siempre verde */
.options,
button.options {
    background: transparent !important;
    color: #35e879 !important;
    border: 1px solid #35e879 !important;
}

/* Fix final: action buttons never use live style */



/* Corrección final botones agenda */
.options {
  background: transparent !important;
  color: #35e879 !important;
  border: 1px solid #35e879 !important;
}




/* Estado EN VIVO separado */


/* Acción siempre verde */
.options {
  background: transparent !important;
  color: #35e879 !important;
  border: 1px solid #35e879 !important;
}


/* Restauración botones agenda */
.options {
  background: transparent !important;
  color: #35e879 !important;
  border: 1px solid #35e879 !important;
}









/* Columna Estado EN VIVO */
.estado-evento {
  display: flex;
  justify-content: center;
  align-items: center;
}




.estado-evento {
  display:flex;
  justify-content:center;
  align-items:center;
}





.estado-evento {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:120px;
}




.estado-evento {
  display:flex;
  justify-content:center;
  align-items:center;
}



.competicion {
  display:flex;
  flex-direction:column;
}


.estado-evento {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}



.options {
  color: #35e879 !important;
  border: 1px solid #35e879 !important;
  background: transparent !important;
}


.estado-evento {
  display:flex;
  align-items:center;
  justify-content:center;
}



.options {
  color:#35e879 !important;
  border:1px solid #35e879 !important;
  background:transparent !important;
}








.zona-usuario {
  opacity: .9;
  font-size: 0.9em;
}


.zona-usuario {
  font-size: 0.9em;
  margin: 8px 0;
}


.zona-usuario {
  margin: 6px 0 14px;
  font-size: 0.9rem;
}

/* contenedor agenda definitivo */
.agenda{
  background:rgba(0,25,19,.28);
  border:1px solid rgba(57,231,125,.08);
  border-radius:16px;
  padding:22px 18px 24px;
  overflow:hidden;
}
.titleline{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  margin-bottom:12px;
}
.date{
  margin-top:4px;
}
.toolbar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:nowrap;
  margin-bottom:17px;
}
.matches{
  width:100%;
  overflow:hidden;
}


/* desplegable canales por evento */
.channels-box{
 display:none;
 margin:12px 18px 18px;
 padding:18px;
 border:1px solid #16e676;
 border-radius:14px;
 background:#061f18;
}
.match.open .channels-box{display:block}
.channel-item{
 display:flex;
 justify-content:space-between;
 padding:12px;
 margin-top:8px;
 background:#092b21;
 border-radius:10px;
}
.channel-item small{opacity:.8}

/* canales final: bandera + stream + ver canal */
.channel-item{
 display:flex;
 align-items:center;
 justify-content:space-between;
 width:100%;
 padding:14px 18px;
}
.channel-item span{
 font-size:16px;
}
.channel-item small{
 background:#12382d;
 padding:6px 14px;
 border-radius:12px;
}
.channel-item button{
 border:1px solid #16e676;
 background:transparent;
 color:#16e676;
 border-radius:8px;
 padding:8px 16px;
}

.channels-box{
 width:calc(100% - 36px);
 margin:16px auto;
 padding:18px;
 box-sizing:border-box;
}
.channel-item{
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:20px;
 width:100%;
 padding:14px 18px;
}
.channel-item span{flex:1;font-weight:700;}
.channel-item small{padding:6px 18px;}
.channel-item button{min-width:110px;}


/* Ajuste final panel canales */
.channels-box{
    width: calc(100% - 32px);
    margin: 14px 16px;
    padding: 18px;
    box-sizing: border-box;
}

.channel-item{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    width:100%;
    min-height:58px;
    padding:12px 18px;
    box-sizing:border-box;
}

.channel-item span{
    flex:1;
    display:flex;
    align-items:center;
    gap:10px;
    white-space:nowrap;
    font-weight:700;
}

.channel-item small{
    min-width:90px;
    text-align:center;
    background:#12382d;
    border-radius:12px;
    padding:7px 14px;
}

.channel-item button{
    min-width:120px;
    white-space:nowrap;
}

/* evitar columnas estrechas */
.match.open .channels-box{
    overflow:hidden;
}


/* FIX COMPLETO DESPLEGABLE CANALES */
.match.open {
    display:block;
}

.match.open .channels-box {
    display:block;
    width:calc(100% - 32px);
    margin:16px;
    padding:18px;
    min-height:auto;
    box-sizing:border-box;
}

.channels-box h3 {
    margin:0 0 16px 0;
}

.channel-item {
    display:grid !important;
    grid-template-columns: 1fr 120px 140px;
    align-items:center;
    gap:20px;
    width:100% !important;
    min-height:58px;
    padding:12px 16px;
    box-sizing:border-box;
}

.channel-item span {
    display:flex;
    align-items:center;
    gap:10px;
    white-space:nowrap;
    overflow:visible;
    flex:none;
}

.channel-item small {
    justify-self:center;
    min-width:80px;
    text-align:center;
}

.channel-item button {
    justify-self:end;
    min-width:120px;
    white-space:nowrap;
}

/* elimina columnas estrechas */
.channels-box,
.channel-item,
.channel-item span {
    max-width:none !important;
}


/* Ajuste final visual canales */
.channel-item span{
    display:flex;
    align-items:center;
    gap:12px;
    white-space:nowrap;
}

.channel-item{
    grid-template-columns: 1fr 120px 140px !important;
}

.options{
    position:relative;
}

.channel-flag{
 width:32px;
 height:22px;
 object-fit:contain;
 vertical-align:middle;
 margin-right:10px;
}

.channel-flag{
 width:28px;
 height:18px;
 object-fit:cover;
 display:inline-block;
 margin-right:10px;
 vertical-align:middle;
}

/* menu canales compacto final */
.channels-box { padding: 12px; }
.channel-item {
 min-height: 42px;
 padding: 8px 12px;
}
.channel-flag {
 width: 28px;
 height: 18px;
 object-fit: contain;
}

.inline-flag{
 display:inline-block;
 width:28px;
 margin-right:10px;
 font-size:22px;
 vertical-align:middle;
}
.channel-item{
 min-height:38px;
 padding:6px 12px;
}

/* Banderas definitivas inline */
.inline-flag{
 display:inline-flex;
 width:28px;
 margin-right:10px;
 font-size:22px;
 align-items:center;
}
.channel-item{
 min-height:38px;
 padding:6px 12px;
}

.inline-flag{
 display:inline-block;
 font-size:20px;
 margin-right:8px;
 vertical-align:middle;
}

.country-initial{color:#39ff88;font-weight:800;margin-right:8px;}

.channel-label{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;}
.country-initial{color:#35f58a;font-weight:800;}
.channel-item{display:grid;grid-template-columns:1fr auto auto;align-items:center;}


/* Panel canales compacto */
.channels-container,
.channel-list,
.available-channels {
  gap: 5px;
  padding-top: 8px;
  padding-bottom: 8px;
}

.channel-item,
.channel-row,
.available-channel {
  min-height: 36px;
  padding-top: 4px;
  padding-bottom: 4px;
}

.channel-name {
  line-height: 1;
}

.channel-item button,
.channel-row button,
.available-channel button {
  padding-top: 5px;
  padding-bottom: 5px;
}

/* Ajuste visual deportes y partidos */
.sport{
  color:#8f9995;
  font-size:12px;
  font-weight:700;
}
.team{
  font-size:16px;
  font-weight:850;
}

.league-logo{width:32px;height:32px;object-fit:contain;margin-right:8px;vertical-align:middle}.competition-name{display:flex;align-items:center;justify-content:center;gap:8px}

.team>div{display:flex;flex-direction:column;align-items:center;gap:3px}.team-name{font-size:11px;font-weight:700}.team.home,.team.away{justify-content:center}.team img{width:42px;height:42px;object-fit:contain}

.match-row{
display:grid;
grid-template-columns:90px 230px 1fr 120px;
padding:15px;
border-bottom:1px solid #174638;
color:white;
}


/* Agenda partidos - añadido sin modificar estructura */
#matches, #partidos {
    margin-top: 20px;
}

.match-row, .partido {
    display: grid;
    grid-template-columns: 90px 230px 1fr 120px;
    align-items: center;
    gap: 12px;
    padding: 14px;
    margin-bottom: 8px;
    background: #062a22;
    border: 1px solid #174638;
    border-radius: 10px;
}

.competicion, .competition {
    color: #20e878;
    font-weight: bold;
}

.live, .en-vivo {
    background: #d71920;
    padding: 5px 10px;
    border-radius: 10px;
    font-size: 12px;
}


/* Submenu enlaces partido */
.match-row{
    position:relative;
    cursor:pointer;
}

.submenu-enlaces{
    display:flex;
    gap:8px;
    margin-top:10px;
}

.submenu-enlaces a{
    background:#20e878;
    color:#001b14;
    padding:6px 12px;
    border-radius:12px;
    text-decoration:none;
    font-size:13px;
}


.date{
 color:#20e878;
 font-weight:bold;
 white-space:nowrap;
}

/* Boton ver opciones */
.ver-opciones{
 background:transparent;
 color:#20e878;
 border:1px solid #20e878;
 border-radius:8px;
 padding:8px 14px;
 cursor:pointer;
}

.submenu-enlaces{
 display:none;
 margin-top:10px;
}

.submenu-enlaces.show{
 display:flex;
 gap:8px;
}


/* Submenu opciones partido */
.opciones-box{
    position:relative;
}

.btn-opciones{
    background:#20e878;
    color:#002018;
    border:0;
    border-radius:8px;
    padding:7px 12px;
    cursor:pointer;
    font-weight:bold;
}

.menu-opciones{
    display:none;
    margin-top:8px;
    background:#062a22;
    border:1px solid #174638;
    border-radius:10px;
    padding:10px;
    gap:8px;
    flex-direction:column;
}

.menu-opciones.activo{
    display:flex;
}

.menu-opciones a{
    color:white;
    text-decoration:none;
    padding:6px 10px;
    border-radius:6px;
    background:#103c31;
}


.equipos{
 display:flex;
 align-items:center;
 justify-content:center;
 gap:22px;
}
.equipos b{
 color:#20e878;
 font-size:14px;
}
.btn-opciones{
 background:transparent;
 border:1px solid #20e878;
 color:#20e878;
 padding:7px 12px;
 border-radius:8px;
 cursor:pointer;
}
.menu-opciones{
 display:none;
 margin-top:8px;
 gap:6px;
 flex-wrap:wrap;
}
.menu-opciones.activo{
 display:flex;
}
.menu-opciones a{
 background:#103c31;
 color:white;
 padding:6px 10px;
 border-radius:8px;
 text-decoration:none;
 font-size:12px;
}
.match-row{
 grid-template-columns:90px 220px 1fr 120px 150px;
}

/* Ajustes finales partidos */
.equipos{
 display:flex;
 justify-content:center;
 align-items:center;
 gap:24px;
}
.equipos b{
 color:#20e878;
}
.menu-opciones a{
 border:1px solid #20e878;
}


/* Corrección final agenda */
.hora-partido::before{
 content:"🕒";
 margin-right:8px;
}

.equipos{
 display:flex;
 align-items:center;
 justify-content:center;
 gap:28px;
}

.equipos b{
 color:#20e878;
 font-size:16px;
 min-width:35px;
 text-align:center;
}

.menu-opciones{
 display:flex;
 flex-direction:row;
 flex-wrap:nowrap;
 gap:10px;
 width:100%;
}

.menu-opciones a{
 flex:1;
 text-align:center;
 border:1px solid #20e878;
 border-radius:8px;
 padding:10px;
}


/* Layout final agenda */
.match-row{
    position:relative;
}

.hora-partido{
    display:flex;
    align-items:center;
    gap:8px;
}

.hora-partido::before{
    content:"🕒";
}

.equipos{
    display:grid;
    grid-template-columns:1fr 55px 1fr;
    align-items:center;
    text-align:center;
}

.equipos b{
    color:#20e878;
}

.menu-opciones{
    display:none;
    width:100%;
    grid-column:1 / -1;
    margin-top:12px;
}

.menu-opciones.activo{
    display:flex;
    flex-direction:row;
    gap:12px;
}

.menu-opciones a{
    flex:1;
    text-align:center;
    border:1px solid #20e878;
    border-radius:8px;
    padding:10px;
}


/* Ajuste submenu debajo del partido */
.match-row{
    display:grid;
}

.menu-opciones{
    grid-column:1 / -1;
    width:100%;
    margin-top:12px;
    display:none;
    flex-direction:row;
    gap:12px;
}

.menu-opciones.activo{
    display:flex;
}

.menu-opciones a{
    flex:1;
    text-align:center;
    border:1px solid #20e878;
    border-radius:8px;
    padding:10px;
}

/* Icono delante de la hora */
.hora-partido{
    display:flex;
    align-items:center;
    gap:8px;
}

.hora-partido::before{
    content:"🕒";
}


/* Diseño imagen 2 */
.match-row{
    display:grid;
    grid-template-columns:90px 220px 1fr 130px;
    align-items:center;
}

.equipos{
    display:grid;
    grid-template-columns:1fr 45px 1fr;
    align-items:center;
    text-align:center;
}

.equipos b{
    color:#20e878;
}

.hora-partido{
    display:flex;
    align-items:center;
    gap:8px;
}

.menu-opciones{
    grid-column:1 / -1;
    display:none;
    flex-direction:row;
    gap:12px;
    width:100%;
    margin-top:12px;
}

.menu-opciones.activo{
    display:flex;
}

.menu-opciones a{
    flex:1;
    text-align:center;
    border:1px solid #20e878;
    border-radius:8px;
    padding:10px;
}


/* Ajuste final solicitado */
.match-row{
    margin-bottom:18px;
}

.competicion{
    color:#9aa6a2;
    font-size:14px;
    font-weight:600;
}

.equipos{
    font-size:22px;
    font-weight:700;
}

.menu-opciones{
    grid-column:1/-1;
    width:100%;
    display:none;
    flex-direction:row;
    gap:12px;
}

.menu-opciones.activo{
    display:flex;
}

.menu-opciones a{
    flex:1;
    height:42px;
    display:flex;
    justify-content:center;
    align-items:center;
    border:1px solid #20e878;
    border-radius:10px;
}


/* Corrección definitiva submenu debajo del partido */
.match-row{
    display:flex;
    flex-direction:column;
}

.match-main{
    width:100%;
    display:grid;
    grid-template-columns:90px 220px 1fr 150px;
    align-items:center;
}

.menu-opciones{
    order:2;
    width:100%;
    display:none;
    flex-direction:row;
    gap:12px;
    margin-top:14px;
}

.menu-opciones.activo{
    display:flex;
}

.menu-opciones a{
    flex:1;
    height:44px;
    display:flex;
    justify-content:center;
    align-items:center;
    border:1px solid #20e878;
    border-radius:10px;
}

.competicion{
    color:#9aa6a2;
    font-size:13px;
}


/* Estructura final submenu debajo de la tarjeta */
.match-main-wrapper{
    width:100%;
}

.match-row{
    display:flex;
    flex-direction:column;
    width:100%;
}

.match-main{
    width:100%;
    display:grid;
    grid-template-columns:90px 220px 1fr 150px;
    align-items:center;
}

.menu-opciones{
    position:relative;
    clear:both;
    width:100%;
    display:none;
    flex-direction:row;
    gap:12px;
    margin-top:14px;
    padding-top:10px;
}

.menu-opciones.activo{
    display:flex;
}

.menu-opciones a{
    flex:1;
    min-height:42px;
    display:flex;
    justify-content:center;
    align-items:center;
    border:1px solid #20e878;
    border-radius:10px;
}


/* Fix definitivo: submenu fuera de acciones */
.match-row{
 display:flex;
 flex-direction:column;
 width:100%;
}
.match-main{
 display:grid;
 grid-template-columns:90px 220px 1fr 150px;
 align-items:center;
 width:100%;
}
.menu-opciones{
 width:100%;
 display:none;
 flex-direction:row;
 gap:12px;
 margin-top:14px;
}
.menu-opciones.activo{
 display:flex;
}
.menu-opciones a{
 flex:1;
 height:44px;
 display:flex;
 align-items:center;
 justify-content:center;
 border:1px solid #20e878;
 border-radius:10px;
}


/* submenu debajo del partido - estructura limpia */
.match-row{
    display:flex;
    flex-direction:column;
}

.match-main{
    width:100%;
}

.menu-opciones{
    width:100%;
    margin-top:12px;
    display:none;
    flex-direction:row;
    gap:12px;
}

.menu-opciones.activo{
    display:flex;
}

.menu-opciones a{
    flex:1;
    text-align:center;
    border:1px solid #20e878;
    border-radius:10px;
    padding:10px;
}


/* Correccion cierre submenu */
.match-row{
    overflow:visible;
}

.match-main{
    width:100%;
}

.menu-opciones{
    position:relative;
    width:100%;
}


/* Ajuste compacto final */
.equipos{
    display:grid;
    grid-template-columns:1fr 35px 1fr;
    gap:8px;
    font-size:18px;
    align-items:center;
}

.equipos b{
    color:#20e878;
    text-align:center;
}

.competicion{
    color:#8c9995;
    font-size:12px;
}

.menu-opciones{
    width:100%;
    display:none;
    flex-direction:row;
    gap:12px;
    margin-top:12px;
}

.menu-opciones.activo{
    display:flex;
}

.menu-opciones a{
    flex:1;
    min-height:42px;
    display:flex;
    justify-content:center;
    align-items:center;
    border:1px solid #20e878;
    border-radius:10px;
}


/* Ajuste final partidos compactos y VS */
.equipos{
    grid-template-columns:auto 32px auto;
    justify-content:center;
    column-gap:12px;
    font-size:16px;
    font-weight:700;
}

.equipos b{
    color:#20e878;
}

/* Competiciones pequeñas */
.competicion{
    font-size:12px;
    color:#8d9894;
}

/* Boton opciones */
.btn-opciones{
    cursor:pointer;
}

/* submenu */
.menu-opciones{
    width:100%;
    display:none;
    flex-direction:row;
    gap:12px;
}

.menu-opciones.activo{
    display:flex;
}


/* Fix conexión botón-menu */
.btn-opciones{
 cursor:pointer;
}
.menu-opciones.activo{
 display:flex !important;
}


/* limpieza estructura submenu */
.match-row{
    overflow:visible;
}

.match-main{
    width:100%;
}

.menu-opciones{
    width:100%;
}


/* Footer */
.site-footer{
    margin-top:40px;
    padding:25px 20px;
    border-top:1px solid #123c31;
    background:#001a14;
    color:#9aa6a2;
    text-align:center;
}

.footer-content{
    display:flex;
    flex-direction:column;
    gap:8px;
    font-size:14px;
}

.footer-content strong{
    color:#20e878;
    font-size:20px;
}


/* Footer compacto */
.site-footer{
    width:100%;
    margin-top:30px;
    padding:14px 10px;
}

.footer-content{
    gap:4px;
    font-size:12px;
}

.footer-content strong{
    font-size:16px;
}

.flag{width:34px;height:22px;vertical-align:middle;margin-right:10px;border-radius:3px;object-fit:cover;}

.flag{
 width:28px;
 height:18px;
 object-fit:cover;
 vertical-align:middle;
 margin-right:6px;
}

.liga-con-bandera{display:flex;align-items:center;gap:8px;}
.flag{width:28px;height:18px;object-fit:cover;display:inline-block;}


.badge-vivo{
 display:inline-flex;
 align-items:center;
 background:#e93434;
 color:white;
 font-size:11px;
 font-weight:700;
 padding:4px 8px;
 border-radius:12px;
 margin-left:8px;
 white-space:nowrap;
}


/* Ajuste fila partidos + EN VIVO */
.match-row{
    display:grid;
    grid-template-columns:190px 90px 1fr 140px;
    align-items:center;
    gap:10px;
}

.competicion{
    display:flex;
    align-items:center;
    gap:6px;
}

.badge-vivo{
    font-size:10px;
    padding:3px 7px;
    white-space:nowrap;
    border-radius:20px;
}

.partido{
    display:flex;
    justify-content:flex-start;
    align-items:center;
    gap:12px;
    white-space:nowrap;
}

.acciones{
    display:flex;
    justify-content:flex-end;
}


\/\* FIX FINAL GRID EN VIVO \*\/
.match-row{
    grid-template-columns: 100px 210px 90px minmax(300px,1fr) 150px !important;
    gap: 12px;
}
.partido,.equipos{
    min-width:0;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:12px;
    white-space:nowrap;
}
.partido span{
    white-space:nowrap;
}
.acciones{
    justify-content:flex-end;
}
.badge-vivo{
    margin:0;
    font-size:10px;
    padding:3px 7px;
}

.liga-con-bandera{display:flex;align-items:center;gap:10px;color:#9eaaa6}
.flag{width:27px;height:18px;object-fit:cover}
.acciones{display:flex;justify-content:center;position:relative}
.btn-opciones{border:1px solid #39e77d;background:transparent;color:#39e77d;border-radius:8px;padding:10px 14px;font-weight:700}
.menu-opciones{display:none;position:absolute;top:45px;background:#08231b;border:1px solid #39e77d;border-radius:8px;padding:10px;z-index:5}
.menu-opciones.activo{display:flex;flex-direction:column;gap:8px}
.menu-opciones a{color:#fff;text-decoration:none}
.vs{color:#39e77d}
@media(max-width:800px){
 .match,.list-head{grid-template-columns:75px 120px 1fr}
 .acciones{display:none}
}

.team.home{padding-right:4px}.team.away{padding-left:4px}.fixture{padding:0 8px}

/* Ajuste final: vivo dentro de deporte y partidos juntos al VS */
.sport{
 display:flex;
 align-items:center;
 gap:8px;
 min-width:0;
}
.badge-vivo{
 background:#e93434;
 color:#fff;
 font-size:10px;
 font-weight:700;
 padding:2px 6px;
 border-radius:10px;
 white-space:nowrap;
}
.teams{
 display:grid;
 grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);
 align-items:center;
 gap:4px;
}
.vs{
 font-size:12px;
 font-weight:800;
 text-align:center;
}
.team-name{
 font-size:12px;
}
.team.home{text-align:right;padding-right:2px}
.team.away{text-align:left;padding-left:2px}
.fixture{padding:0}
/* ajuste final: acercar equipos al VS */
.teams{grid-template-columns:auto 22px auto;justify-content:center;gap:5px}
.team.home{justify-content:flex-end;padding-right:0}
.team.away{justify-content:flex-start;padding-left:0}
.vs{font-size:11px;letter-spacing:-.5px}
.fixture{padding:0}

/* mover EN VIVO ligeramente a la derecha */
.badge-vivo{margin-left:6px;}

/* Alineacion final VS y banderas */
.match{
 grid-template-columns:95px 135px 1fr 120px;
}
.kickoff{margin-right:0}
.sport{gap:5px}
.teams{
 display:grid;
 grid-template-columns:180px 30px 180px;
 justify-content:center;
 align-items:center;
 gap:0;
}
.team.home{
 justify-content:flex-end;
 padding-right:0;
}
.team.away{
 justify-content:flex-start;
 padding-left:0;
}
.vs{
 font-size:11px;
 width:30px;
}
@media(max-width:1000px){
 .teams{grid-template-columns:140px 25px 140px}
}


/* VS alineado justo bajo la cabecera Partido */
.fixture,
.teams {
    display: grid;
    grid-template-columns: minmax(120px, 1fr) 45px minmax(120px, 1fr);
    align-items: center;
    column-gap: 0;
}

.teams .home,
.teams .away {
    display: flex;
    align-items: center;
}

.teams .home {
    justify-content: end;
    padding-right: 8px;
}

.teams .away {
    justify-content: start;
    padding-left: 8px;
}

.teams .vs {
    width: 45px;
    text-align: center;
    font-size: 11px;
    font-weight: 700;
}


/* Ajuste final: VS bajo la columna Partido y banderas junto a la hora */
.match{
 grid-template-columns:78px 125px 1fr 120px;
}
.kickoff{
 padding-left:0;
}
.sport{
 gap:6px;
}
.sport .flag,.flag{
 margin-left:0;
}
.fixture{
 width:100%;
}
.teams{
 grid-template-columns: minmax(150px,1fr) 42px minmax(150px,1fr);
 gap:0;
}
.team.home{
 justify-content:flex-end;
 padding-right:10px;
}
.team.away{
 justify-content:flex-start;
 padding-left:10px;
}
.vs{
 width:42px;
 text-align:center;
 font-size:12px;
}
.badge-vivo{
 margin-left:8px;
}


/* CORRECCION REAL: columna Partido y VS fija */
.match{
    display:grid !important;
    grid-template-columns: 90px 210px 1fr 130px !important;
    align-items:center;
}

.fixture{
    display:grid !important;
    grid-template-columns: minmax(180px, 1fr) 50px minmax(180px, 1fr) !important;
    align-items:center;
    width:100%;
}

.team.home{
    justify-content:flex-end !important;
    text-align:right;
    padding-right:0 !important;
}

.team.away{
    justify-content:flex-start !important;
    text-align:left;
    padding-left:0 !important;
}

.vs{
    display:flex !important;
    justify-content:center;
    align-items:center;
    font-size:11px !important;
    width:50px !important;
}

/* Bandera pegada a la hora */
.match .sport{
    justify-content:flex-start;
    gap:4px;
}
.match .flag{
    margin-left:0;
}
.badge-vivo{
    margin-left:12px !important;
}


/* Ajuste partido: VS fijo bajo cabecera Partido sin tocar banderas */
.match .fixture{
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:0;
}
.match .teams{
    width:100%;
    display:grid;
    grid-template-columns:minmax(120px,1fr) 32px minmax(120px,1fr);
    align-items:center;
    gap:0;
}
.match .team.home{
    justify-content:flex-end;
    padding-right:8px;
}
.match .team.away{
    justify-content:flex-start;
    padding-left:8px;
}
.match .vs{
    width:32px;
    text-align:center;
    font-size:12px;
}


/* Ajuste solicitado: banderas junto a la hora y partidos desplazados a la derecha */
.match, .match-row {
    grid-template-columns: 85px 220px 1fr 120px;
}
.time, .kickoff {
    margin-right:0;
}
.sport, .league, .deporte {
    margin-left:-20px;
}
.fixture, .teams {
    transform: translateX(55px);
}
.flag {
    margin-left:-8px;
    margin-right:8px;
}


/* Separar equipo visitante del VS sin mover banderas ni deporte */
.teams .away,
.fixture .away {
    padding-left: 18px !important;
}

.teams .home,
.fixture .home {
    padding-right: 8px !important;
}

.teams {
    column-gap: 8px !important;
}


/* Vista tarjetas 4 columnas */
#matches:has(.card-match){
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
}
.card-match{
    min-height:260px;
    border-radius:14px;
    background:linear-gradient(145deg,#0b211c,#061713);
    box-shadow:inset 0 0 0 1px rgba(62,229,125,.12);
    padding:16px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
}
.card-match .kickoff{
    order:3;
    text-align:center;
    color:#e8efec;
    margin-top:10px;
}
.card-match .sport{
    order:0;
    justify-content:space-between;
    font-size:13px;
}
.card-match .fixture{
    order:1;
    transform:none;
}
.card-match .teams{
    display:grid;
    grid-template-columns:1fr 35px 1fr;
    transform:none;
    margin-top:20px;
}
.card-match .team{
    flex-direction:column;
    text-align:center;
    gap:8px;
}
.card-match .home,.card-match .away{
    padding:0!important;
    justify-content:center!important;
}
.card-match .vs{
    align-self:center;
}
.card-match .acciones{
    order:4;
    width:100%;
}
.card-match .btn-opciones{
    width:100%;
}
@media(max-width:1000px){
 #matches:has(.card-match){grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:600px){
 #matches:has(.card-match){grid-template-columns:1fr;}
}


/* AJUSTE FINAL TARJETAS */
#matches:has(.card-match){
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:16px !important;
}

.card-match{
  min-height:230px !important;
  padding:14px !important;
  position:relative;
}

.card-match .sport{
  justify-content:flex-start !important;
  gap:8px !important;
  padding-right:70px;
}

.card-match .sport .flag{
  margin-left:8px !important;
}

.card-match .badge-vivo{
  position:absolute !important;
  top:12px !important;
  right:12px !important;
  margin:0 !important;
}

.card-match .fixture,
.card-match .teams{
  transform:none !important;
  width:100% !important;
  justify-content:center !important;
}

.card-match .teams{
  grid-template-columns:1fr 24px 1fr !important;
  margin-top:12px !important;
}

.card-match .team{
  justify-content:center !important;
  text-align:center !important;
  overflow-wrap:anywhere;
  font-size:14px;
}

.card-match .vs{
  width:24px !important;
  font-size:10px !important;
}

.card-match .kickoff{
  margin-top:8px !important;
}


/* CORRECCION TARJETAS VERTICAL FINAL */
.card-match .sport{
  justify-content:flex-start !important;
  align-items:center !important;
  padding-right:60px !important;
}
.card-match .teams{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  margin-top:18px !important;
  width:100% !important;
}
.card-match .team{
  width:100% !important;
  justify-content:center !important;
  text-align:center !important;
  display:flex !important;
  white-space:normal !important;
}
.card-match .vs{
  font-size:11px !important;
  width:auto !important;
  line-height:1 !important;
  opacity:.9;
}
.card-match .fixture{
  width:100% !important;
  text-align:center !important;
}

/* Ajuste final tarjetas */
.match-card .card-header,
.card-header {
  display:flex;
  align-items:center;
  justify-content:flex-start;
  padding-left:12px;
  position:relative;
}
.match-card .live-badge,
.live-badge {
  position:absolute;
  right:12px;
  top:12px;
}
.match-card .match-content,
.match-content,
.match-teams,
.teams {
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.match-card .team,
.team {
  width:100%;
  text-align:center;
  overflow-wrap:anywhere;
}
.match-card .vs,
.vs {
  font-size:12px;
  line-height:1;
  margin:6px 0;
}

/* Separacion final de vistas: lista y tarjetas */
#matches:has(.card-match) .match-content,
#matches:has(.card-match) .match-teams,
#matches:has(.card-match) .teams {
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  overflow:hidden;
}
#matches:has(.card-match) .team,
#matches:has(.card-match) .team.home,
#matches:has(.card-match) .team.away {
  width:100%;
  max-width:100%;
  padding:0 14px;
  box-sizing:border-box;
  text-align:center;
  justify-content:center;
  overflow-wrap:anywhere;
}
#matches:has(.card-match) .vs {
  font-size:12px;
  margin:3px 0;
}
#matches:has(.card-match) .sport {
  padding-left:12px;
}

#matches:not(:has(.card-match)) .teams,
#matches:not(:has(.card-match)) .match-content,
#matches:not(:has(.card-match)) .match-teams {
  flex-direction:row;
  text-align:left;
  align-items:center;
}


/* Correccion final: tarjetas sin desplazamientos laterales */
#matches:has(.card-match) .card-match .match-content,
#matches:has(.card-match) .card-match .match-teams,
#matches:has(.card-match) .card-match .teams {
  position: static !important;
  transform: none !important;
  left: auto !important;
  right: auto !important;
  margin-left: auto !important;
  margin-right: auto !important;
  width: 100% !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
}

#matches:has(.card-match) .card-match .team {
  position: static !important;
  transform: none !important;
  left: auto !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
  box-sizing: border-box !important;
  text-align: center !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
}

#matches:has(.card-match) .card-match .vs {
  position: static !important;
  transform: none !important;
  font-size: 11px !important;
  margin: 4px auto !important;
}

#matches:has(.card-match) .card-header {
  padding-left: 14px !important;
}


/* FINAL OVERRIDE - tarjetas aisladas */
.card-match .teams,
.card-match .match-teams,
.card-match .match-content {
  position: static !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  margin: 0 auto !important;
  width: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  overflow: visible !important;
}

.card-match .team,
.card-match .team.home,
.card-match .team.away {
  position: static !important;
  left: auto !important;
  transform: none !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 18px !important;
  box-sizing: border-box !important;
  text-align: center !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

.card-match .vs {
  font-size: 12px !important;
  margin: 4px 0 !important;
}

.card-match .sport,
.card-match .league {
  padding-left: 12px !important;
}


/* Tarjetas aisladas - no afecta a Lista */
.card-match .card-fixture{
  width:100%;
  display:flex;
  justify-content:center;
  align-items:center;
}
.card-match .card-teams{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  margin:0 auto;
}
.card-match .card-team{
  width:100%;
  box-sizing:border-box;
  padding:0 12px;
  text-align:center;
  overflow-wrap:anywhere;
  white-space:normal;
}
.card-match .card-vs{
  font-size:12px;
  margin:4px 0;
  line-height:1;
}
/* Ajuste VS tarjetas */
.card-match .card-vs{color:#39e77d;font-size:12px;font-weight:900;line-height:1;margin:14px 0;}
.card-match .card-team{margin:8px 0;}


/* Fondo tarjetas - Opcion 2 verde oscuro */
.card-match {
  background: #0f2419 !important;
  border-color: rgba(57, 231, 125, 0.22) !important;
}
.card-match:hover {
  background: #122b1e !important;
}


/* Lista: columnas fijas para EN VIVO alineado */
.list-row{
  display:grid !important;
  grid-template-columns:95px 150px 1fr 120px !important;
  align-items:center !important;
}

.list-row .live,
.list-row .en-vivo,
.list-row .live-badge{
  justify-self:end !important;
  margin-left:auto !important;
}

.list-row .sport{
  min-width:0 !important;
}


 /* Lista: columnas definitivas */
.list-row{
  display:grid !important;
  grid-template-columns: 70px 45px 170px 120px 1fr !important;
  align-items:center !important;
}

.list-row .time{
  width:70px !important;
}

.list-row .flag{
  width:45px !important;
  text-align:center !important;
}

.list-row .sport,
.list-row .league{
  width:170px !important;
  min-width:170px !important;
}

.list-row .live,
.list-row .en-vivo,
.list-row .live-badge{
  width:120px !important;
  justify-self:end !important;
  text-align:center !important;
}


/* Ajuste final Lista EN VIVO */
.list-row{
  display:grid !important;
  grid-template-columns: 70px 45px 170px minmax(0,1fr) 120px !important;
  align-items:center !important;
  width:100% !important;
}

.list-row .live,
.list-row .en-vivo,
.list-row .live-badge,
.list-row .badge-vivo{
  grid-column:5 !important;
  justify-self:end !important;
  margin-left:auto !important;
}

.list-row .match,
.list-row .fixture,
.list-row .event{
  grid-column:4 !important;
}

/* Lista EN VIVO columna real */
.match:not(.card-match){
  display:grid !important;
  grid-template-columns:70px 45px 170px minmax(200px,1fr) 120px 120px !important;
  align-items:center !important;
}
.match:not(.card-match) .kickoff{grid-column:1!important;}
.match:not(.card-match) .sport{grid-column:2 / 4!important;}
.match:not(.card-match) .fixture{grid-column:4!important;}
.match:not(.card-match) .live{grid-column:5!important;justify-self:end!important;}
.match:not(.card-match) .acciones{grid-column:6!important;}

.match .live{justify-self:end;display:flex;align-items:center;justify-content:flex-end;}
.match .acciones{justify-self:end;}


/* AJUSTE FINAL LISTA: separar Partido, EN VIVO y Acciones */
.match:not(.card-match){
  display:grid !important;
  grid-template-columns:70px 45px 170px minmax(260px,1fr) 130px 140px !important;
  align-items:center !important;
  width:100% !important;
  column-gap:10px !important;
}

.match:not(.card-match) .kickoff{
  grid-column:1 !important;
}

.match:not(.card-match) .sport{
  grid-column:2 / 4 !important;
}

.match:not(.card-match) .fixture{
  grid-column:4 !important;
  min-width:0 !important;
  justify-self:start !important;
}

.match:not(.card-match) .live{
  grid-column:5 !important;
  justify-self:center !important;
  white-space:nowrap !important;
}

.match:not(.card-match) .acciones{
  grid-column:6 !important;
  justify-self:end !important;
}


/* FOOTER SIEMPRE ABAJO */
html, body {
  min-height: 100%;
}

body {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

main {
  flex: 1 0 auto;
}

footer {
  margin-top: auto;
  flex-shrink: 0;
}


/* Ajuste final limpio de lista */
.agenda{
  width:100%;
}
.match:not(.card-match){
  margin-left:-10px;
  width:calc(100% + 10px)!important;
  grid-template-columns:70px 170px minmax(320px,1fr) 150px 170px!important;
}
.match:not(.card-match) .kickoff{grid-column:1!important;}
.match:not(.card-match) .sport{grid-column:2!important;}
.match:not(.card-match) .fixture{grid-column:3!important;}
.match:not(.card-match) .live{grid-column:4!important;}
.match:not(.card-match) .acciones{grid-column:5!important;}
.btn-opciones{
  min-width:160px;
  padding:13px 22px;
}


/* Encabezados Lista alineados con sus columnas */
.list-head{
  display:grid !important;
  grid-template-columns:70px 215px minmax(260px,1fr) 270px !important;
  align-items:center !important;
  text-align:center !important;
  column-gap:10px !important;
}

.list-head span:nth-child(3),
.list-head span:nth-child(4){
  justify-self:center !important;
}

/* Eventos sin rival: centrar nombre y ocultar VS */
.teams.single-event{justify-content:center;}
.teams.single-event .team-name{text-align:center;}


/* Eventos sin rival: centrar nombre del evento */
.teams.single-event{
  display:flex;
  justify-content:center;
  align-items:center;
  width:100%;
}
.teams.single-event .team.home{
  justify-content:center;
  width:100%;
}
.teams.single-event .team-name{
  text-align:center;
}
.landing{margin:0;background:#00150f;color:#fff;font-family:Arial,sans-serif}.landing .topbar{height:75px;display:flex;align-items:center;justify-content:space-between;padding:0 8%;background:#001c14;border-bottom:1px solid #123}.logo{font-size:32px;font-weight:800}.logo span,footer span{color:#28ff63}.topbar nav a{margin:0 18px;color:#ddd;text-decoration:none}.active{color:#28ff63!important}.search{border:1px solid #28ff63;border-radius:30px;padding:12px 25px;color:#aaa}.hero{min-height:560px;background:linear-gradient(90deg,#00150f55,#00150f22),url('img/estadio-nocturno.jpg') center 70%/cover;display:flex;align-items:center;padding-left:8%}.hero h1{font-size:72px;margin:0}.hero h1 span{color:#28ff00}.hero p{font-size:22px}.hero button{padding:16px 30px;border-radius:30px;border:0;background:#28ff00;font-weight:bold;margin-right:15px}.hero .ghost{background:transparent;color:white;border:1px solid #28ff00}.sports,.blocks,.why{padding:35px 8%}.cards{display:grid;grid-template-columns:repeat(7,1fr);gap:18px}.cards div,.blocks article{background:#06251a;border:1px solid #164d34;border-radius:18px;padding:25px;text-align:center}.cards b{display:block;margin-top:15px}.blocks{display:grid;grid-template-columns:1fr 1fr;gap:20px}.why div{display:flex;justify-content:space-between}footer{padding:35px 8%;border-top:1px solid #164d34}@media(max-width:900px){.cards{grid-template-columns:repeat(2,1fr)}.blocks{grid-template-columns:1fr}.hero h1{font-size:42px}}


/* --- CORRECCION PORTADA MODERNA --- */
.landing .topbar{
 height:78px!important;
 padding:0 7%!important;
 background:rgba(0,20,14,.88)!important;
 backdrop-filter:blur(8px);
}
.landing .logo{
 font-size:34px!important;
 color:#fff;
}
.landing .logo span{color:#39e77d!important}
.landing .search{
 width:280px;
 text-align:center;
 color:#aab;
 background:#071d16;
}
.landing .hero{
 min-height:560px!important;
 padding-left:8%!important;
}
.landing .hero h1{
 font-size:76px!important;
 line-height:1.05;
 font-weight:900;
}
.landing .hero p{
 max-width:850px;
 color:#ddd;
}
.landing .hero .btn,
.landing .hero a.btn{
 display:inline-flex!important;
 align-items:center;
 justify-content:center;
 text-decoration:none!important;
 color:#00150f!important;
 background:#39e77d!important;
 border-radius:30px!important;
 padding:16px 34px!important;
 margin-right:15px;
 font-weight:800;
 border:none!important;
}
.landing .hero .btn.ghost,
.landing .hero a.ghost{
 background:transparent!important;
 color:#fff!important;
 border:1px solid #39e77d!important;
}
.landing .sports,
.landing .blocks,
.landing .why{
 padding-left:8%!important;
 padding-right:8%!important;
}
.landing .cards div,
.landing .cards a{
 display:flex!important;
 flex-direction:column;
 align-items:center;
 justify-content:center;
 min-height:130px;
 background:#08251b!important;
 border:1px solid rgba(57,231,125,.25)!important;
 border-radius:18px!important;
 color:#fff!important;
 text-decoration:none!important;
 font-size:20px;
 transition:.2s;
}
.landing .cards a:hover{
 transform:translateY(-5px);
 border-color:#39e77d!important;
}
.landing .cards b{
 color:#fff;
}
.landing .blocks article{
 min-height:170px;
 display:flex;
 flex-direction:column;
 justify-content:center;
 background:linear-gradient(145deg,#09251b,#04150f)!important;
}
.landing .blocks h2{
 font-size:28px;
}
.landing footer{
 background:#00110d;
}
/* enlaces de bloques sin estilo navegador */
.landing .blocks > a {
 color:#fff;
 text-decoration:none;
 display:block;
}
.landing .blocks > a:visited {
 color:#fff;
}
.landing .blocks > a:hover h2 {
 color:#39e77d;
}
.landing .blocks p {
 color:#fff;
}

/* Ajuste buscador: quitar borde exterior duplicado */
.landing .search { border: none !important; background: transparent !important; padding: 0 !important; }
.landing .search input { border: 1px solid #28ff63 !important; border-radius: 30px !important; background: #071d16 !important; padding: 12px 25px !important; color: #fff !important; width: 100% !important; outline: none !important; }
.landing .search input::placeholder { color: #aab4b0 !important; }


/* Menu movil hamburguesa */
.menu-toggle{
 display:none;
 background:none;
 border:0;
 padding:8px;
 cursor:pointer;
}
.menu-toggle span{
 display:block;
 width:28px;
 height:3px;
 margin:5px 0;
 background:#28ff63;
 border-radius:5px;
}

@media(max-width:900px){
 .landing .topbar{
   height:auto;
   min-height:78px;
   padding:14px 20px;
   flex-wrap:wrap;
   gap:12px;
 }
 .landing .logo{
   font-size:30px;
 }
 .menu-toggle{
   display:block;
   order:2;
 }
 .landing .topbar nav{
   display:none;
   order:3;
   width:100%;
   justify-content:center;
 }
 .landing .search{
   order:4;
   width:100%;
   padding:0;
   background:transparent;
 }
 .landing .search input{
   width:100%!important;
   height:44px;
 }
}

@media(max-width:600px){
 .landing .hero{
   min-height:560px;
   padding:70px 30px 40px;
   align-items:flex-start;
 }
 .landing .hero h1{
   font-size:58px;
   line-height:1.05;
 }
 .landing .hero p{
   font-size:18px;
 }
}

/* menu hamburguesa desplegable */
@media(max-width:900px){
 .landing .topbar nav.open{
   display:flex;
   flex-direction:column;
   align-items:center;
   gap:16px;
   background:#001a13;
   padding:18px;
   border-radius:12px;
   border:1px solid rgba(40,255,99,.25);
 }
 .menu-toggle.active span:nth-child(1){
   transform:translateY(8px) rotate(45deg);
 }
 .menu-toggle.active span:nth-child(2){
   opacity:0;
 }
 .menu-toggle.active span:nth-child(3){
   transform:translateY(-8px) rotate(-45deg);
 }
}

/* Corrección menú móvil: el menú ocupa espacio y empuja el hero */
@media(max-width:900px){
  .landing .topbar{
    position:relative;
    display:flex;
    align-items:center;
  }

  .landing .topbar nav.mobile-open{
    display:flex;
    width:100%;
    order:5;
    background:#001b14;
    border:1px solid rgba(40,255,99,.35);
    border-radius:16px;
    padding:16px;
    flex-direction:column;
    align-items:center;
    gap:14px;
    margin-top:8px;
    z-index:2;
  }

  .landing .topbar nav.mobile-open a{
    display:block;
    width:100%;
    text-align:center;
    padding:6px;
  }

  .landing .search{
    position:relative;
    z-index:1;
  }
}

.menu-toggle.open span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.menu-toggle.open span:nth-child(2){opacity:0}.menu-toggle.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}

/* Menu movil en flujo correcto */
@media (max-width: 720px){
  .site-header{position:relative;z-index:20;height:auto;}
  .header-inner{display:flex;flex-wrap:wrap;padding:12px 10px;}
  .mobile-menu{position:static!important;width:100%;order:3;margin-top:10px;}
  .mobile-menu.show{display:block;}
  .searchbox{order:4;width:100%!important;height:42px;margin:8px 0;}
  .hero{margin-top:0!important;}
}

/* Carruseles portada */
.carousels article{
overflow:hidden;
}
.carousel-box{
padding:25px;
}
.slide{
position:relative;
height:180px;
border-radius:16px;
overflow:hidden;
border:1px solid rgba(40,255,99,.25);
}
.slide img{
width:100%;
height:100%;
object-fit:cover;
filter:brightness(.55);
}
.slide-info{
position:absolute;
inset:0;
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
gap:8px;
color:white;
font-size:18px;
}
.slide-info b{font-size:24px}
.slide-info span{color:#39ff14}
.slide-info a{
background:#39ff14;
color:#001a13;
padding:10px 22px;
border-radius:25px;
font-weight:bold;
text-decoration:none;
}
.dots{
display:flex;
justify-content:center;
gap:8px;
margin-top:15px;
}
.dots i{
width:10px;height:10px;border-radius:50%;
background:#aaa;display:block;
}
.dots i.on{background:#39ff14}
@media(max-width:700px){
.slide{height:160px}
.slide-info b{font-size:18px}
}

/* Ajuste carruseles: titulos mas arriba */
.carousel-box{padding:18px 25px 25px;}
.carousel-box h2{margin:0 0 14px;}
.slide{margin-top:4px;}

/* Ajustes carrusel responsive final */
.carousel-box{border:1px solid rgba(57,231,125,.25)!important;border-radius:18px!important;background:#06251a!important;padding:12px 18px 16px!important;}
.carousel-box h2{margin:0 0 8px!important;font-size:28px!important;}
.carousel-box p{display:none!important;}
.carousel-slide{border:1px solid rgba(57,231,125,.3)!important;}
.live-carousel .carousel-slide{border-color:rgba(57,231,125,.3)!important;}
.carousel-dots{margin-top:10px!important;}
.why div{gap:20px;align-items:center;}
@media(max-width:720px){
 .carousels{gap:14px!important;}
 .carousel-box h2{font-size:22px!important;text-align:center;}
 .carousel-box{padding:10px 12px 12px!important;}
 .carousel-slide{height:150px!important;}
 .why div{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px!important;}
 .why div>*{min-width:0;}
}

/* Correccion final carruseles portada */
.carousel-slide,
.live-carousel .carousel-slide,
.slide {
  border: 1px solid rgba(57,231,125,.3) !important;
}

.slide {
  height: 260px !important;
}

.slide img {
  object-fit: cover !important;
}

.carousel-box {
  padding: 12px 18px 14px !important;
}

.carousel-box h2 {
  margin-bottom: 10px !important;
}

.slide-info b {
  font-size: 26px !important;
}

@media(max-width:720px){
  .slide { height: 220px !important; }
  .slide-info b { font-size: 20px !important; }
  .carousel-box { margin-bottom: 8px !important; }
}

.why {
  margin-top: 25px !important;
}

/* Ajuste final portada: iconos grandes y carruseles altos */
.live-carousel .carousel-slide,
.carousel-slide,
.slide{
  border:1px solid rgba(57,231,125,.3)!important;
  height:360px!important;
  overflow:hidden;
}
.slide img,.carousel-slide img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

/* beneficios con iconos grandes */
.why div p{
  font-size:16px!important;
  font-weight:700!important;
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
}
.why div p::first-letter{
  font-size:38px!important;
}

@media(max-width:720px){
 .slide,.carousel-slide{height:260px!important;}
 .why div p{font-size:14px!important;}
 .why div p::first-letter{font-size:32px!important;}
}

/* Correccion solicitada final */
.live-carousel .carousel-slide,
.carousel-slide,
.slide {
  border-color: rgba(57,231,125,.3) !important;
  border-width: 1px !important;
  height: 360px !important;
}

.slide img,
.carousel-slide img {
  height: 100% !important;
  object-fit: cover !important;
}

.why div p {
  gap: 18px !important;
  font-size: 18px !important;
}

.why div p::first-letter {
  font-size: 52px !important;
}

.why {
  margin-top: 10px !important;
}

@media(max-width:720px){
 .live-carousel .carousel-slide,
 .carousel-slide,
 .slide {height:260px !important;}
 .why div p {font-size:15px !important;}
 .why div p::first-letter {font-size:40px !important;}
}

.topbar nav a{font-weight:900!important;font-size:16px!important;} footer{font-weight:800!important;font-size:16px!important;} .extra-slide{display:none;} .extra-slide.active{display:block;}

.vpn-box{margin:40px auto 20px;max-width:1100px;background:#071c16;border-top:2px solid #39ff14;border-radius:18px;padding:25px;color:#fff;text-align:center}.vpn-links{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin:20px 0}.vpn-links a{background:#0d2b22;border:1px solid #39ff14;color:#fff;text-decoration:none;padding:10px 18px;border-radius:30px;font-weight:700}.vpn-links a:hover{background:#39ff14;color:#06100c}.legal{font-size:14px;opacity:.8}

/* Scrollbar DeporteLibre */
::-webkit-scrollbar{width:12px}
::-webkit-scrollbar-track{background:#001b14}
::-webkit-scrollbar-thumb{background:#39ff14;border-radius:20px;border:3px solid #00251b}
::-webkit-scrollbar-thumb:hover{background:#24d80d}
*{scrollbar-color:#39ff14 #001b14;scrollbar-width:thin}

/* Iconos beneficios */
.why p{font-size:18px;font-weight:800}




/* posicion real del fondo hero */
.hero{background-position:center 15%!important;}


/* Movil horizontal: corregir recorte */
@media (max-width:768px) and (orientation:landscape){
    .hero{
        height:420px!important;
        background-size:cover!important;
        background-position:center 20%!important;
    }
}

/* Ocultar menu hamburguesa y buscador en movil */
@media (max-width:768px){
    .menu-toggle,
    .hamburger,
    .nav-toggle,
    .search-box,
    .header-search,
    .search-container {
        display:none!important;
    }
}

/* HERO LIMPIO FINAL */
.landing .hero{
 background:none!important;
 min-height:0!important;
 height:auto!important;
 padding:0!important;
 display:block!important;
 overflow:hidden;
}
.landing .hero picture,.landing .hero img{
 display:block;
 width:100%;
 height:auto;
}
.landing .hero img{
    object-fit:contain!important;
}

/* Ajuste final PC: reducir hero sin tocar movil */
@media (min-width:769px){
    .landing .hero img{
        max-height:1000px!important;
        object-fit:contain!important;
    }
    .landing .hero{
        max-height:670px!important;
        overflow:hidden!important;
    }
}


/* Botones sobre hero */
.hero{
    position:relative;
}

.hero-buttons{
    position:absolute;
    bottom:5px;
    left:50%;
    transform:translateX(-50%);
    display:flex;
    gap:20px;
    z-index:5;
}

.hero-buttons a{
    min-width:250px;
    padding:23px 28px;
    border-radius:30px;
    text-align:center;
    font-weight:700;
    text-decoration:none;
    background:#00e676;
    color:#06130e;
    border:1px solid #39e77d;
}

.hero-buttons a:first-child{
    background:#39ff7d !important;
    color:#001b12 !important;
    box-shadow:0 0 25px #39ff7d !important;
}

.hero-buttons a:last-child{
    background:rgba(0,0,0,.75) !important;
    color:white !important;
    border:2px solid #39ff7d !important;
    box-shadow:0 0 20px rgba(57,255,125,.6) !important;
}

.hero-buttons a:last-child{
    background:rgba(0,0,0,.55);!important;
    color:white;
    border:1px solid #39ff7d;!important;
    box-shadow:0 0 12px rgba(57,255,125,.4);!important;
}



@media(max-width:768px){
    .hero-buttons{
        position:static;
        transform:none;
        margin-top:18px;
        justify-content:center;
        flex-direction:column;
        align-items:center;
    }
}

.landing .logo{display:flex;align-items:center;gap:8px}.logo-balon{width:38px;height:38px;object-fit:cover;border-radius:50%;}

/* Logo cabecera: texto más compacto */
.landing .logo{
    gap:5px !important;
    letter-spacing:-1.5px !important;
}
.landing .logo span{
    margin-left:-1px !important;
}

/* FIX móvil horizontal: no mostrar menú detrás del hero */
@media (max-width:900px) and (orientation:landscape){
    .landing .menu-toggle,
    .landing .topbar nav,
    .landing .topbar nav.open,
    .landing .topbar nav.mobile-open{
        display:none!important;
    }
    .landing .topbar{
        min-height:70px!important;
        flex-wrap:nowrap!important;
    }
}

/* Explora por deporte: 4x2 PC, 2 por fila en móvil */
.landing .sports .cards{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:20px!important;}
.landing .sports .cards a{position:relative;min-height:145px!important;padding:18px 48px 18px 18px!important;box-sizing:border-box;font-size:20px!important;}
.landing .sports .cards .sport-icon{font-size:36px;line-height:1;display:block;margin-bottom:10px;}
.landing .sports .cards .more-icon{font-size:30px;letter-spacing:4px;}
.landing .sports .cards b{margin-top:0!important;}
.landing .sports .cards i{position:absolute;right:18px;top:50%;transform:translateY(-50%);width:34px;height:34px;border:1px solid #39ff7d;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#39ff7d;font-size:32px;font-style:normal;line-height:28px;}
@media(max-width:900px){
 .landing .sports .cards{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;}
 .landing .sports .cards a{min-height:115px!important;padding:14px 12px!important;font-size:15px!important;}
 .landing .sports .cards .sport-icon{font-size:27px;margin-bottom:8px;}
 .landing .sports .cards i{display:none;}
}

/* Portada: En vivo y proximos eventos conectados a agenda.json */
.landing .agenda-home-blocks{align-items:stretch;}
.landing .agenda-auto-box{display:flex;flex-direction:column;min-width:0;}
.landing .home-event-stage{min-height:190px;display:flex;}
.landing .home-event-card,.landing .home-event-empty{
  width:100%;min-height:190px;box-sizing:border-box;border:1px solid rgba(57,255,125,.32);
  border-radius:16px;background:#031f17;display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:22px;text-align:center;
}
.landing .home-event-card.is-live{border-color:rgba(255,70,85,.55);background:linear-gradient(135deg,rgba(120,12,22,.22),#031f17 62%);}
.landing .home-event-meta{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:12px;font-size:14px;font-weight:800;text-transform:uppercase;}
.landing .home-event-meta span{color:#39ff7d;}
.landing .home-event-card.is-live .home-event-meta span{color:#ff4a59;}
.landing .home-event-meta strong{color:#fff;font-size:16px;}
.landing .home-event-title{font-size:22px;line-height:1.2;max-width:95%;}
.landing .home-event-comp{color:#39ff7d;margin:7px 0 14px;font-size:15px;}
.landing .home-event-card a{background:#39ff7d;color:#001b12;text-decoration:none;font-weight:800;border-radius:24px;padding:9px 20px;}
.landing .home-event-empty{color:#a9bdb5;font-weight:700;}
.landing .home-auto-dots{min-height:10px;margin-top:10px;}
.landing .home-auto-dots:empty{display:none;}
@media(max-width:720px){
  .landing .home-event-stage,.landing .home-event-card,.landing .home-event-empty{min-height:170px;}
  .landing .home-event-card{padding:18px 14px;}
  .landing .home-event-title{font-size:19px;}
}

/* Portada: destacar ligeramente las cajas de En vivo / Proximos */
.landing .agenda-home-blocks .agenda-auto-box{
  background:linear-gradient(145deg,rgba(7,46,35,.88),rgba(2,29,22,.94));
  border:1px solid rgba(57,255,125,.36);
  border-radius:18px;
  padding:20px;
  box-shadow:0 8px 28px rgba(0,0,0,.24),0 0 18px rgba(57,255,125,.07);
}
.landing .agenda-home-blocks .home-event-stage{min-height:225px;}
.landing .agenda-home-blocks .home-event-card,
.landing .agenda-home-blocks .home-event-empty{
  min-height:225px;
  background:linear-gradient(145deg,#062a20,#031c16);
  border-color:rgba(57,255,125,.46);
  box-shadow:inset 0 0 22px rgba(57,255,125,.035);
}
.landing .agenda-home-blocks .home-event-card.is-live{
  border-color:rgba(255,70,85,.58);
  background:linear-gradient(135deg,rgba(120,12,22,.24),#062a20 62%);
}
@media(max-width:720px){
  .landing .agenda-home-blocks .agenda-auto-box{padding:15px;border-radius:16px;}
  .landing .agenda-home-blocks .home-event-stage,
  .landing .agenda-home-blocks .home-event-card,
  .landing .agenda-home-blocks .home-event-empty{min-height:205px;}
}


/* BLOQUE POR QUE DEPORTELIBRE + CONTENIDO SEO */
.landing .why-seo{padding:45px 6% 50px!important;max-width:1600px;margin:0 auto;box-sizing:border-box}
.landing .why-seo>h2{text-align:center;margin:0 0 26px;font-size:28px}
.landing .why-seo .why-cards{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important;align-items:stretch!important}
.landing .why-seo .why-cards article{background:#06251a;border:1px solid #167247;border-radius:16px;padding:24px 20px;text-align:center;box-shadow:0 8px 24px rgba(0,255,100,.04)}
.landing .why-seo .why-cards article>span{display:block;font-size:34px;line-height:1;margin-bottom:13px}
.landing .why-seo .why-cards h3{font-size:17px;margin:0 0 10px;color:#fff}
.landing .why-seo .why-cards p{font-size:14px!important;line-height:1.55;font-weight:400!important;color:#cbd8d2;margin:0}
.landing .why-seo .why-cards p::first-letter{font-size:inherit!important}
.landing .seo-copy{display:block!important;margin:34px auto 0;max-width:1200px;background:#031e16;border-top:2px solid #39ff7d;border-radius:16px;padding:28px 32px;box-sizing:border-box}
.landing .seo-copy h2{font-size:23px;margin:0 0 16px;text-align:left}
.landing .seo-copy p{font-size:15px!important;line-height:1.75!important;font-weight:400!important;color:#cbd8d2;margin:0 0 13px;text-align:left}
.landing .seo-copy p:last-child{margin-bottom:0}
.landing .seo-copy p::first-letter{font-size:inherit!important}
.landing .seo-copy strong{color:#fff}
@media(max-width:900px){
 .landing .why-seo{padding:35px 18px 40px!important}
 .landing .why-seo .why-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
 .landing .why-seo .why-cards article{padding:20px 12px}
 .landing .why-seo .why-cards h3{font-size:15px}
 .landing .why-seo .why-cards p{font-size:13px!important}
 .landing .seo-copy{margin-top:26px;padding:23px 20px}
 .landing .seo-copy h2{font-size:20px}
 .landing .seo-copy p{font-size:14px!important}
}

/* === FIX REAL GUIA SEO: neutraliza .why div {display:flex} === */
.landing .why-seo .seo-guide{
  display:block!important;width:100%!important;max-width:1200px!important;
  margin:34px auto 0!important;padding:28px 32px!important;box-sizing:border-box!important;
}
.landing .why-seo .seo-guide .seo-intro{
  display:block!important;width:100%!important;max-width:1000px!important;
  margin:0 auto 28px!important;text-align:center!important;
}
.landing .why-seo .seo-guide .seo-guide-grid{
  display:grid!important;width:100%!important;max-width:none!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:18px!important;align-items:stretch!important;justify-content:normal!important;
}
.landing .why-seo .seo-guide .seo-guide-grid>article{
  display:block!important;width:100%!important;min-width:0!important;max-width:none!important;
  box-sizing:border-box!important;padding:24px!important;text-align:left!important;
}
.landing .why-seo .seo-guide .seo-guide-grid>article h3{
  display:block!important;width:auto!important;margin:0 0 12px!important;line-height:1.3!important;
}
.landing .why-seo .seo-guide .seo-guide-grid>article p,
.landing .why-seo .seo-guide .seo-intro p,
.landing .why-seo .seo-guide .seo-faq p{
  display:block!important;width:auto!important;max-width:none!important;
  margin:0 0 13px!important;font-size:15px!important;line-height:1.7!important;
  font-weight:400!important;text-align:left!important;white-space:normal!important;
}
.landing .why-seo .seo-guide p::first-letter{
  font-size:inherit!important;font-weight:inherit!important;
}
.landing .why-seo .seo-guide .seo-faq{
  display:block!important;width:100%!important;box-sizing:border-box!important;margin-top:22px!important;
}
.landing .why-seo .seo-guide .seo-faq details,
.landing .why-seo .seo-guide .seo-faq summary{
  display:block!important;width:100%!important;box-sizing:border-box!important;
}
@media(max-width:768px){
 .landing .why-seo .seo-guide{padding:20px 16px!important;margin-top:24px!important;}
 .landing .why-seo .seo-guide .seo-guide-grid{grid-template-columns:minmax(0,1fr)!important;gap:12px!important;}
 .landing .why-seo .seo-guide .seo-guide-grid>article{padding:18px!important;}
 .landing .why-seo .seo-guide .seo-guide-grid>article p,
 .landing .why-seo .seo-guide .seo-intro p,
 .landing .why-seo .seo-guide .seo-faq p{font-size:14px!important;line-height:1.65!important;}
}

/* === GUIA SEO: tarjetas informativas === */
.landing .why-seo .seo-guide .seo-guide-grid>article{
  background:linear-gradient(180deg,rgba(8,42,31,.96),rgba(4,30,23,.96))!important;
  border:1px solid rgba(57,255,125,.30)!important;
  border-radius:16px!important;
  padding:26px!important;
  box-shadow:0 8px 24px rgba(0,0,0,.18),inset 0 1px 0 rgba(57,255,125,.04)!important;
}
.landing .why-seo .seo-guide .seo-guide-grid>article:hover{
  border-color:rgba(57,255,125,.48)!important;
}
@media(max-width:768px){
  .landing .why-seo .seo-guide .seo-guide-grid>article{
    padding:20px!important;
    border-radius:14px!important;
  }
}

/* === VPN + FAQ AISLADOS DEL CSS LEGACY === */
.landing .why-seo .seo-guide .seo-vpn,
.landing .why-seo .seo-guide .seo-vpn * ,
.landing .why-seo .seo-guide .seo-faq,
.landing .why-seo .seo-guide .seo-faq *{box-sizing:border-box}
.landing .why-seo .seo-guide .seo-vpn{
 display:block!important;width:100%!important;max-width:none!important;margin:24px 0 0!important;padding:28px!important;
 background:linear-gradient(145deg,rgba(7,46,35,.96),rgba(3,29,22,.98))!important;border:1px solid rgba(57,255,125,.58)!important;
 border-radius:18px!important;box-shadow:0 10px 30px rgba(0,0,0,.20),0 0 20px rgba(57,255,125,.07)!important;text-align:left!important
}
.landing .why-seo .seo-guide .seo-vpn-badge{display:inline-block!important;width:auto!important;margin:0 0 8px!important;padding:5px 10px!important;border:1px solid rgba(57,255,125,.35)!important;border-radius:999px!important;background:rgba(57,255,125,.08)!important;color:#39ff7d!important;font-size:11px!important;font-weight:800!important;letter-spacing:.7px!important}
.landing .why-seo .seo-guide .seo-vpn h2{display:block!important;width:100%!important;margin:0 0 16px!important;font-size:25px!important;line-height:1.25!important}
.landing .why-seo .seo-guide .seo-vpn>p{display:block!important;width:100%!important;max-width:none!important;margin:0 0 14px!important;font-size:15px!important;line-height:1.75!important;color:#cbd8d2!important;white-space:normal!important}
.landing .why-seo .seo-guide .seo-vpn>p strong{display:inline!important;color:#fff!important}
.landing .why-seo .seo-guide .seo-vpn a{display:inline!important;width:auto!important}
.landing .why-seo .seo-guide .seo-vpn-devices{display:grid!important;width:100%!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;margin:20px 0!important;align-items:stretch!important}
.landing .why-seo .seo-guide .seo-vpn-devices>div{display:block!important;width:100%!important;min-width:0!important;margin:0!important;padding:18px!important;background:rgba(0,0,0,.20)!important;border:1px solid rgba(57,255,125,.22)!important;border-radius:14px!important;text-align:left!important}
.landing .why-seo .seo-guide .seo-vpn-devices strong{display:block!important;width:100%!important;margin:0 0 9px!important;color:#fff!important;font-size:15px!important;line-height:1.3!important}
.landing .why-seo .seo-guide .seo-vpn-devices span{display:block!important;width:100%!important;color:#c3d2cc!important;font-size:13px!important;line-height:1.6!important;font-weight:400!important}
.landing .why-seo .seo-guide .seo-vpn .seo-vpn-note{display:block!important;width:100%!important;margin:18px 0 0!important;padding:14px 16px!important;border:1px solid rgba(57,255,125,.20)!important;border-left:4px solid #39ff7d!important;border-radius:10px!important;background:rgba(57,255,125,.065)!important;color:#d5e2dc!important}
.landing .why-seo .seo-guide .seo-vpn .seo-vpn-note strong{display:inline!important;color:#39ff7d!important}

.landing .why-seo .seo-guide .seo-faq{display:block!important;width:100%!important;margin:24px 0 0!important;padding:26px!important;background:linear-gradient(180deg,rgba(6,37,27,.96),rgba(3,27,21,.96))!important;border:1px solid rgba(57,255,125,.28)!important;border-radius:18px!important}
.landing .why-seo .seo-guide .seo-faq h2{display:block!important;width:100%!important;margin:0 0 14px!important;font-size:24px!important}
.landing .why-seo .seo-guide .seo-faq details{display:block!important;width:100%!important;margin:0!important;padding:0!important;border:0!important;border-top:1px solid rgba(57,255,125,.16)!important}
.landing .why-seo .seo-guide .seo-faq details:first-of-type{border-top:0!important}
.landing .why-seo .seo-guide .seo-faq summary{display:block!important;width:100%!important;padding:15px 34px 15px 4px!important;position:relative!important;cursor:pointer!important;color:#fff!important;font-size:15px!important;font-weight:800!important;line-height:1.4!important;list-style:none!important}
.landing .why-seo .seo-guide .seo-faq summary::-webkit-details-marker{display:none!important}
.landing .why-seo .seo-guide .seo-faq summary:after{content:'+';position:absolute;right:6px;top:50%;transform:translateY(-50%);color:#39ff7d;font-size:22px;font-weight:400}
.landing .why-seo .seo-guide .seo-faq details[open] summary:after{content:'−'}
.landing .why-seo .seo-guide .seo-faq details p{display:block!important;width:100%!important;margin:0!important;padding:0 34px 15px 4px!important;font-size:14px!important;line-height:1.65!important;color:#cbd8d2!important}
@media(max-width:900px){.landing .why-seo .seo-guide .seo-vpn-devices{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:560px){
 .landing .why-seo .seo-guide .seo-vpn{padding:20px 16px!important;border-radius:15px!important}
 .landing .why-seo .seo-guide .seo-vpn h2{font-size:21px!important}
 .landing .why-seo .seo-guide .seo-vpn>p{font-size:14px!important;line-height:1.65!important}
 .landing .why-seo .seo-guide .seo-vpn-devices{grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
 .landing .why-seo .seo-guide .seo-vpn-devices>div{padding:15px!important}
 .landing .why-seo .seo-guide .seo-faq{padding:18px 15px!important;border-radius:15px!important}
 .landing .why-seo .seo-guide .seo-faq h2{font-size:20px!important}
}


/* Footer centrado + cierre responsive */
.landing footer{
  text-align:center!important;
  display:block!important;
  width:100%!important;
  box-sizing:border-box!important;
}
@media(max-width:900px){
  .landing footer{
    text-align:center!important;
    padding-left:18px!important;
    padding-right:18px!important;
  }
}


/* Chat lateral DeporteLibre */
.dl-chat-tab{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:10001;border:1px solid #39ff7d;border-right:0;border-radius:14px 0 0 14px;background:#063126;color:#fff;padding:15px 10px;box-shadow:0 0 22px rgba(57,255,125,.22);cursor:pointer;font:900 13px/1 Arial,sans-serif;letter-spacing:.8px;display:flex;flex-direction:column;align-items:center;gap:8px;transition:right .25s ease,background .2s ease}.dl-chat-tab:hover{background:#0a4635}.dl-chat-tab.is-open{right:350px}.dl-chat-dot{width:9px;height:9px;border-radius:50%;background:#39ff7d;box-shadow:0 0 10px #39ff7d}.dl-chat-panel{position:fixed;z-index:10000;right:0;top:50%;width:350px;height:min(650px,calc(100vh - 32px));transform:translate(100%,-50%);background:#031c15;border:1px solid rgba(57,255,125,.65);border-right:0;border-radius:18px 0 0 18px;box-shadow:-16px 0 45px rgba(0,0,0,.45),0 0 25px rgba(57,255,125,.08);overflow:hidden;visibility:hidden;transition:transform .25s ease,visibility .25s ease;box-sizing:border-box}.dl-chat-panel.is-open{transform:translate(0,-50%);visibility:visible}.dl-chat-head{height:62px;padding:0 15px 0 18px;display:flex;align-items:center;justify-content:space-between;background:#06291f;border-bottom:1px solid rgba(57,255,125,.25);box-sizing:border-box}.dl-chat-head>div{display:block}.dl-chat-head strong{display:block;color:#fff;font-size:18px}.dl-chat-head strong span{color:#39ff7d}.dl-chat-head small{display:block;margin-top:3px;color:#9fb9ae;font-size:11px}.dl-chat-close{width:36px;height:36px;border-radius:50%;border:1px solid rgba(57,255,125,.35);background:#041b15;color:#fff;font-size:25px;line-height:30px;cursor:pointer}.dl-chat-close:hover{border-color:#39ff7d;color:#39ff7d}.dl-chat-frame{height:calc(100% - 62px);background:#071f18;position:relative}.dl-chat-frame iframe{display:block;width:100%;height:100%;border:0;background:#fff}.dl-chat-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#9fb9ae;font-size:13px}
@media(max-width:600px){.dl-chat-panel{top:auto;bottom:8px;right:8px;width:calc(100% - 16px);height:min(78vh,650px);border:1px solid rgba(57,255,125,.65);border-radius:16px;transform:translateY(calc(100% + 20px))}.dl-chat-panel.is-open{transform:translateY(0)}.dl-chat-tab{top:auto;bottom:90px;transform:none;padding:13px 9px}.dl-chat-tab.is-open{right:8px;bottom:calc(78vh + 18px)}.dl-chat-head{height:58px}.dl-chat-frame{height:calc(100% - 58px)}}


/* En vivo y resultados */
.landing .results-hub{max-width:1600px;margin:24px auto 8px;padding:20px;border:1px solid #19c86b;border-radius:18px;background:linear-gradient(135deg,#031d15,#03271c);box-sizing:border-box;box-shadow:0 10px 35px rgba(0,0,0,.18)}
.landing .results-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:12px}.landing .results-head h2{margin:0;font-size:28px;color:#fff}.landing .results-status,.landing .results-sports{display:flex;gap:8px;align-items:center}.landing .results-status button,.landing .results-sports button{border:1px solid #14774a;background:#05271d;color:#fff;border-radius:10px;padding:10px 14px;font-weight:800;cursor:pointer;white-space:nowrap}.landing .results-status button.on,.landing .results-sports button.on{background:#39ff7d;color:#001b12;border-color:#39ff7d;box-shadow:0 0 16px rgba(57,255,125,.16)}
.landing .results-sports{overflow-x:auto;padding:4px 0 12px;scrollbar-width:thin}.landing .results-sports button{padding:8px 12px;font-size:13px}.landing .results-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.landing .result-card{min-width:0;border:1px solid #14774a;border-radius:15px;background:#04281e;padding:16px;display:flex;flex-direction:column;gap:9px}.landing .result-card.is-live{border-color:#db2f42;background:linear-gradient(145deg,rgba(100,10,20,.25),#04281e 55%)}.landing .result-top{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:12px;font-weight:800;color:#d7e4de;text-transform:uppercase}.landing .result-badge{background:#2e5548;border-radius:12px;padding:4px 8px;color:#fff}.landing .is-live .result-badge{background:#c7192d}.landing .is-next .result-badge{background:#8a5a00}.landing .result-comp{color:#39ff7d;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.landing .result-match{min-height:58px;display:flex;flex-direction:column;justify-content:center;gap:6px}.landing .result-team{display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:800;font-size:15px}.landing .result-team span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.landing .result-team b,.landing .result-plain-score{font-size:20px;color:#39ff7d}.landing .result-event-name{font-weight:800;font-size:15px;line-height:1.3}.landing .result-card a{align-self:flex-start;margin-top:auto;background:#39ff7d;color:#001b12;text-decoration:none;font-weight:900;border-radius:20px;padding:8px 15px;font-size:13px}.landing .results-empty{grid-column:1/-1;padding:30px;text-align:center;color:#a9bdb5;font-weight:700;border:1px dashed #14774a;border-radius:14px}
@media(max-width:1100px){.landing .results-hub{margin-left:4%;margin-right:4%}.landing .results-head{align-items:flex-start;flex-direction:column}.landing .results-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.landing .results-hub{margin:18px 12px 6px;padding:14px 12px;border-radius:15px}.landing .results-head h2{font-size:22px}.landing .results-status{width:100%;overflow-x:auto;padding-bottom:3px}.landing .results-status button{padding:8px 10px;font-size:12px}.landing .results-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.landing .result-card{padding:12px 10px}.landing .result-top{font-size:10px;align-items:flex-start;flex-direction:column;gap:5px}.landing .result-team{font-size:12px}.landing .result-team b{font-size:17px}.landing .result-card a{padding:7px 10px;font-size:11px}.landing .result-comp{font-size:11px}}

/* Información sobre DeporteLibre */
.landing .dl-site-info{
  width:min(1180px,92%);
  margin:22px auto;
  padding:22px 24px;
  border:1px solid #14774a;
  border-radius:16px;
  background:#03271d;
  box-sizing:border-box;
}
.landing .dl-site-info h2{margin:0 0 12px;font-size:22px;color:#fff}
.landing .dl-site-info p{margin:8px 0;line-height:1.65;color:#d7e4de}
@media(max-width:600px){
  .landing .dl-site-info{width:auto;margin:18px 12px;padding:18px 16px}
  .landing .dl-site-info h2{font-size:19px}
  .landing .dl-site-info p{font-size:14px}
}

/* Enlaces informativos DeporteLibre - verde brillante
   IMPORTANTE: limitado a bloques de texto/SEO para no pisar botones CTA. */
.landing .seo a,
.landing .seo-section a,
.landing .dl-site-info a{
  color:#20e878 !important;
  text-decoration:underline;
  text-decoration-color:#20e878;
  text-underline-offset:3px;
  font-weight:600;
}
.landing .seo a:hover,
.landing .seo-section a:hover,
.landing .dl-site-info a:hover{
  color:#5cff9d !important;
  text-decoration-color:#5cff9d;
}

/* Ajuste final: enlaces de texto SEO verdes; CTA verdes con texto oscuro */
.landing .why-seo .seo-guide a:link,
.landing .why-seo .seo-guide a:visited,
.landing .why-seo .seo-guide a:hover,
.landing .why-seo .seo-guide a:active,
.landing .dl-site-info a:link,
.landing .dl-site-info a:visited,
.landing .dl-site-info a:hover,
.landing .dl-site-info a:active{
  color:#20e878 !important;
  text-decoration:underline;
  text-decoration-color:#20e878 !important;
  text-underline-offset:3px;
}
.landing .why-seo .seo-guide a:hover,
.landing .dl-site-info a:hover{
  color:#5cff9d !important;
  text-decoration-color:#5cff9d !important;
}
.hero-buttons a:first-child:link,
.hero-buttons a:first-child:visited,
.hero-buttons a:first-child:hover,
.hero-buttons a:first-child:active,
.landing .home-event-card a:link,
.landing .home-event-card a:visited,
.landing .home-event-card a:hover,
.landing .home-event-card a:active,
.landing .result-card a:link,
.landing .result-card a:visited,
.landing .result-card a:hover,
.landing .result-card a:active{
  color:#001b12 !important;
}
