/* ==========================================================
   PRISMA WEB
   Plataforma de Revisión Inteligente de Soportes Multimedia
   ========================================================== */


* {
    box-sizing: border-box;
}


body {

    margin: 0;

    font-family: "Segoe UI", Arial, sans-serif;

    background: #0D1B2A;

    color: #DDE6EF;

    line-height: 1.6;

}


/* ================= HEADER ================= */


header {

    min-height: 90vh;

    display: flex;

    flex-direction: column;

    justify-content: center;

    align-items: center;

    text-align: center;

    padding: 40px 20px;

    background:

    radial-gradient(
        circle at top,
        #1B6CA8 0%,
        #0D1B2A 45%
    );

}


.logo img {

    width: 350px;

    height: auto;

    display: block;

    margin: 0 auto 30px;

}


header h1 {

    font-size: 3.5rem;

    margin: 0;

    letter-spacing: 3px;

    color: white;

}


header p {

    max-width: 700px;

    font-size: 1.2rem;

    color: #C9D4E2;

    margin: 20px auto 35px;

}



/* ================= BOTONES ================= */


.button {

    display: inline-block;

    padding: 14px 32px;

    margin: 10px;

    border-radius: 8px;

    text-decoration: none;

    font-weight: bold;

    color: white;

    background: #1B6CA8;

    border: 1px solid #2E8FD8;

    transition: 0.3s;

}


.button:hover {

    background: #2E8FD8;

    transform: translateY(-3px);

}



/* ================= SECCIONES ================= */


section {

    max-width: 1100px;

    margin: auto;

    padding: 70px 25px;

    text-align: center;

}


section h2 {

    font-size: 2rem;

    color: white;

    margin-bottom: 30px;

}


section p {

    color: #B8C7D9;

    font-size: 1.1rem;

}



/* ================= TARJETAS ================= */


.cards {

    display: grid;

    grid-template-columns: repeat(
        auto-fit,
        minmax(250px, 1fr)
    );

    gap: 25px;

}


.card {

    background: #0F2236;

    border: 1px solid #1C3A52;

    border-radius: 12px;

    padding: 30px;

    transition: 0.3s;

}


.card:hover {

    transform: translateY(-8px);

    border-color: #2E8FD8;

}



.card h3 {

    color: #FFFFFF;

    font-size: 1.3rem;

}


.card p {

    font-size: 1rem;

}



/* ================= VIDEO ================= */


video {

    width: 90%;

    max-width: 850px;

    border-radius: 12px;

    border: 1px solid #1C3A52;

    box-shadow: 0 10px 40px rgba(0,0,0,0.4);

}



/* ================= FOOTER ================= */


footer {

    text-align: center;

    padding: 35px;

    background: #091724;

    color: #7A93AB;

    border-top: 1px solid #1C3A52;

}



/* ================= RESPONSIVE ================= */


@media(max-width:700px){


    header h1 {

        font-size: 2.5rem;

    }


    header p {

        font-size: 1rem;

    }


    section {

        padding: 40px 15px;

    }

}
