.video-fondo {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: -2;
}

.capa-oscura {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.55);
    z-index: -1;
}

.contenido {
    position: relative;
    z-index: 1;
}

body {
    font-family: Arial, Helvetica, sans-serif;
    margin: 0;
    padding: 0;
    background-color: #082f1f;
    color: white;
}

.portada {
    text-align: center;
    padding: 80px 30px;
}

.portada h1 {
    font-size: 60px;
    margin: 0;
    color: #ffffff;
}

.portada p {
    font-size: 24px;
    color: #d1fae5;
}

.seccion {
    width: 90%;
    margin: 50px auto;
    padding: 35px;
    background-color: rgba(255,255,255,0.10);
    border: 3px solid #22c55e;
    border-radius: 25px;
    box-shadow: 0px 10px 25px rgba(0,0,0,0.35);
    animation-name: entradaSeccion;
    animation-duration: 1.2s;
    animation-timing-function: ease;
}

.seccion h2 {
    text-align: center;
    color: #facc15;
    font-size: 34px;
}

h1,
h2 {
    text-shadow:
    0px 0px 10px rgba(250,204,21,0.8),
    0px 0px 20px rgba(34,197,94,0.5);
}

/* TABLAS */

table {
    width: 100%;
    border-collapse: collapse;
    background-color: rgba(255,255,255,0.92);
    color: #0f172a;
    transition: 0.4s;
}

table:hover {
    transform: scale(1.02);
    box-shadow:
    0px 0px 25px rgba(34,197,94,0.8),
    0px 0px 45px rgba(250,204,21,0.4);
}

tr {
    transition: 0.3s;
}

tr:hover {
    background-color: #bbf7d0;
    color: #0f172a;
}

th {
    background-color: #16a34a;
    color: white;
    padding: 14px;
    border: 2px solid #14532d;
}

td {
    padding: 12px;
    text-align: center;
    border: 2px solid #86efac;
}

.tabla-principal {
    border: 6px groove #facc15;
    border-radius: 18px;
    overflow: hidden;
}

.fila-verde {
    background-color: #dcfce7;
}

.fila-clara {
    background-color: #ffffff;
}

.contenedor-tablas {
    text-align: center;
}

.caja-tabla {
    width: 30%;
    display: inline-block;
    vertical-align: top;
    margin: 10px;
}

.caja-tabla h3 {
    color: #ffffff;
    font-size: 24px;
}

.tabla-izquierda {
    border: 5px dashed #22c55e;
}

.tabla-centro {
    border: 5px dotted #38bdf8;
}

.tabla-derecha {
    border: 5px double #facc15;
}

.texto-izquierda {
    text-align: left;
}

.texto-centro {
    text-align: center;
}

.texto-derecha {
    text-align: right;
}

/* BORDER STYLE */

.contenedor-bordes {
    text-align: center;
}

.borde {
    width: 180px;
    height: 80px;
    display: inline-block;
    margin: 15px;
    padding-top: 55px;
    text-align: center;
    font-weight: bold;
    background-color: rgba(0,0,0,0.35);
    color: white;
    border-width: 5px;
    border-color: #facc15;
    border-radius: 18px;
}

.solid {
    border-style: solid;
}

.dashed {
    border-style: dashed;
}

.dotted {
    border-style: dotted;
}

.double {
    border-style: double;
}

.groove {
    border-style: groove;
}

.ridge {
    border-style: ridge;
}

/* FORMAS */

.contenedor-formas {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 80px;
    margin-top: 60px;
    flex-wrap: wrap;
}

.forma {
    width: 170px;
    height: 170px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 20px;
    color: transparent;
    font-size: 24px;
    font-weight: bold;
    box-shadow: 0px 10px 20px rgba(0,0,0,0.4);
    transition: 0.4s;
}

.forma:hover {
    transform: scale(1.1);
}

.balon {
    border-radius: 50%;
    background-image: url("imagenes/balon.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.tarjeta {
    border-radius: 20px;
    overflow: hidden;
    background-image: url("imagenes/champions.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    box-shadow: 0px 0px 25px gold;
}

.escudo {
    border-radius: 40px 5px 40px 5px;
    background-image:
        linear-gradient(rgba(0,0,0,0.25), rgba(0,0,0,0.25)),
        url("imagenes/escudo.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    background-color: #14532d;
}



.jugadores {
    text-align: center;
}

.contenedor-cards {
    text-align: center;
}

.card {
    width: 260px;
    display: inline-block;
    vertical-align: top;
    margin: 20px;
    padding: 20px;
    background-color: rgba(255,255,255,0.14);
    border: 3px solid #22c55e;
    border-radius: 25px;
    box-shadow: 0px 10px 25px rgba(0,0,0,0.35);
    transition: 0.4s;
}

.card img {
    width: 100%;
    height: 260px;
    object-fit: cover;
    border-radius: 20px;
    border: 3px solid #facc15;
}

.card h3 {
    color: #facc15;
    font-size: 24px;
}

.card p {
    color: white;
    font-size: 18px;
}

.card:hover {
    transform: translateY(-12px) scale(1.03);
    box-shadow: 0px 0px 30px rgba(250,204,21,0.7);
}



.fondo-repeat,
.fondo-cover,
.fondo-contain,
.fondo-position,
.imagen-superpuesta {
    width: 90%;
    height: 320px;
    margin: 30px auto;
    border-radius: 22px;
    border: 5px solid #facc15;
    box-shadow: 0px 10px 25px rgba(0,0,0,0.45);
    overflow: hidden;
}

.fondo-repeat h3,
.fondo-cover h3,
.fondo-contain h3,
.fondo-position h3,
.imagen-superpuesta h3 {
    text-align: center;
    color: white;
    padding-top: 25px;
    font-size: 28px;
    text-shadow: 2px 2px 8px black;
}

.fondo-repeat {
    background-color: #14532d;
    background-image: url("imagenes/balon.png");
    background-size: 300px;
    background-repeat: repeat;
    background-position: center;
}

.fondo-cover {
    background-color: #0f172a;
    background-image:
        linear-gradient(rgba(0,0,0,0.35), rgba(0,0,0,0.35)),
        url("imagenes/champions.png");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.fondo-contain {
    background-color:transparent;
    background-image: url("imagenes/cristiano.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.fondo-position {
    background-color: #064e3b;
    background-image: url("imagenes/balon.png");
    background-size: 20%;
    background-repeat: no-repeat;
    background-position: center;
}



/* IMAGEN SOBRE OTRA - TIRO LIBRE */

.imagen-superpuesta {
    position: relative;

    width: 88%;
    max-width: 1100px;
    height: 560px;

    margin: 35px auto;

    border: 5px solid #facc15;
    border-radius: 25px;

    overflow: hidden;

    background-image:
        linear-gradient(rgba(0,0,0,0.08), rgba(0,0,0,0.20)),
        url("imagenes/cancha.png");

    background-size: cover;
    background-position: center bottom;
    background-repeat: no-repeat;

    box-shadow:
        0px 0px 25px rgba(250,204,21,0.55),
        0px 12px 35px rgba(0,0,0,0.65);
}


.imagen-superpuesta h3 {
    position: absolute;

    top: 18px;
    left: 50%;

    transform: translateX(-50%);

    padding: 10px 22px;

    background-color: rgba(0,0,0,0.45);

    border: 2px solid rgba(250,204,21,0.75);
    border-radius: 20px;

    text-align: center;

    color: white;
    font-size: 22px;

    text-shadow:
        2px 2px 8px black,
        0px 0px 15px rgba(250,204,21,0.9);

    z-index: 10;
}


.barrera-tiro {
    position: absolute;

    width: 430px;

    left: 60%;
   

    transform: translateX(-50%);

    z-index: 2;

    filter:
        drop-shadow(0px 8px 12px rgba(0,0,0,0.75));
}


.jugador-tiro {
    position: absolute;

    width: 330px;

    
    bottom: 32px;

    z-index: 5;

    filter:
        drop-shadow(0px 10px 16px rgba(0,0,0,0.85));
}



@keyframes entradaSeccion {
    0% {
        opacity: 0;
        transform: translateY(60px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}
/* FOOTER */

.footer {
    width: 85%;
    margin: 70px auto 35px auto;
    padding: 35px 40px;

    text-align: center;

    background-color: rgba(0, 0, 0, 0.65);

    border: 3px solid #facc15;
    border-radius: 28px;

    box-shadow:
        0px 0px 25px rgba(250, 204, 21, 0.55),
        0px 10px 30px rgba(0, 0, 0, 0.65);

    color: white;
}

.footer h2 {
    color: #facc15;
    font-size: 36px;
    margin: 0 0 12px 0;

    text-align: center;

    text-shadow:
        0px 0px 12px rgba(250, 204, 21, 0.9),
        0px 0px 22px rgba(34, 197, 94, 0.6);
}

.footer h3 {
    color: #22c55e;
    font-size: 30px;
    margin: 10px 0 18px 0;

    text-align: center;

    text-shadow:
        0px 0px 12px rgba(34, 197, 94, 0.8);
}

.footer p {
    width: 100%;
    margin: 10px auto;

    text-align: center;

    font-size: 18px;
    line-height: 1.6;
}

.footer-texto {
    max-width: 750px;
    margin: 20px auto;

    text-align: center;

    color: #e5e7eb;
}

.footer-copy {
    margin-top: 25px;

    text-align: center;

    color: #facc15;
    font-weight: bold;
}