﻿/* =========================
   BASE
========================= */

body {
    padding-top: 50px; /* para el header fijo */
}

/* =========================
   SECCION HOME
========================= */

.seccion-home {
    width: 80%;
    max-width: 1300px;
    margin: auto;
}

.home-left {
    max-width: 520px;
}

.lado-izquierdo {
    padding: 0 80px;
}

.margen-texto {
    margin-left: 40px;
    margin-right: 40px;
}

/* CONTENEDOR BOTONES */

.botones-home {
    display: flex;
    align-items: center; /* centra verticalmente */
    gap: 20px;
    flex-wrap: nowrap;
}
/*login*/
.loginPopup {
    display: none; /* importante */
    position: fixed;
    z-index: 2000;
    inset: 0;
    background: rgba(0,0,0,0.5);
    align-items: center;
    justify-content: center;
}

.loginBox {
    background: #F4F4F4;
    width: 420px;
    max-width: 92%;
    padding: 30px;
    border-radius: 10px;
    position: relative;
}

.cerrarLogin {
    position: absolute;
    right: 15px;
    top: 10px;
    font-size: 20px;
    cursor: pointer;
}

/* =========================
   TEXTOS
========================= */

.descripcion-home {
    font-family: 'Outfit',sans-serif;
    font-weight: 400;
    font-size: 20px;
    color: #005394;
    margin-bottom: 20px;
}

.bold-azul {
    font-weight: 700;
    color: #005394;
}

.texto-verde {
    font-weight: 700;
    color: #39B54A;
}

/* =========================
   BOTON LOGIN
========================= */

.BtnInicio {
    background: linear-gradient(#fff, #fff) padding-box, linear-gradient(251deg, #39B54A 0%, #37B24C 0%, #33B957 0%, #08FFD0 52%, #01538F 100%) border-box;
    border: 2px solid transparent;
    border-radius: 20px;
    color: #01538F;
    height: 40px;
    padding: 0 25px;
    font-family: 'Outfit', sans-serif; /* fuente correcta */
    font-weight: 500; /* Medium */
    font-size: 15px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    white-space: nowrap;
    transition: all .2s;
}

    .BtnInicio:hover {
        background: linear-gradient(#f8fff9, #f8fff9) padding-box, linear-gradient(251deg, #39B54A 0%, #37B24C 0%, #33B957 0%, #08FFD0 52%, #01538F 100%) border-box;
        transform: translateY(-3px);
    }

/* =========================
   BOTON LOTTIE
========================= */

.btn-lottie {
    display: flex;
    align-items: center;
    width: 182px;
    height: 107px;
    cursor: pointer;
    overflow: hidden;
}

    .btn-lottie lottie-player {
        width: 100%;
        height: 100%;
        pointer-events: none;
    }

/* =========================
   LOGOS
========================= */
.logosdiv {
    margin-left: 40px;
    margin-right: 40px;
}

.logosHomeSize {
    max-width: 300px;
}

/* =========================
   IMAGEN DERECHA
========================= */

.home-img {
    max-height: 520px;
}

/* titulo de algunas secciones*/
.conte-titulo {
    font-family: 'Outfit', sans-serif; /* fuente */
    font-weight: 400; /* Regular */
    font-size: 20px;
    text-align: center; /* centrado */
    margin: 0;
    color: #707070;
}

/* =========================
    SECCION DEL BLOG Y VIDEO
========================= */

.container-flex {
    display: flex;
    gap: 5px;
    align-items: stretch;
    max-width: 1140px;
    margin: auto;
}

.mitad {
    flex: 1; /* cada uno ocupa mitad */
    min-height: 282px;
}

/*Contenedor IZQUIERDO*/
.izquierda {
    background-size: cover;
    background-position: center;
    color: white;
    display: flex;
    align-items: center;
    justify-content: left;
    border-radius: 20px;
    overflow: hidden;
}

.texto {
    margin-left: 30px;
}

.numBlog {
    font-family: 'Outfit';
    font-size: 20px;
    font-weight: 700;
    line-height: 18px;
    letter-spacing: 0;
    color: #fff;
    margin-bottom: 20px;
}

.TitleBLog {
    font-family: 'Outfit';
    font-size: 24px;
    font-weight: 700;
    line-height: 28px;
    letter-spacing: 0;
    color: #fff;
    text-transform: uppercase;
    text-align: left;
    margin-bottom: 1px;
}

.subtitle {
    font-family: 'Outfit';
    font-size: 18px;
    font-weight: 500;
    line-height: 28px;
    letter-spacing: 0;
    color: #fff;
    text-transform: uppercase;
    text-align: left;
    margin-bottom: 25px;
}

.dateBlog {
    font-family: 'Outfit';
    font-size: 18px;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: 0;
    color: #fff;
    text-align: left;
    margin-bottom: 5px;
}

.BtnLeerMas {
    border: 1px solid #FFFFFF;
    border-radius: 20px;
    background: transparent;
    font-family: 'Outfit', sans-serif;
    font-size: 15px;
    font-weight: 500;
    color: #ffffff !important;
    padding: 6px 22px;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    transition: all .2s;
    cursor: pointer;
    outline: none;
    gap: 8px;
}

    .BtnLeerMas img {
        display: block;
        width: 14px;
    }

    .BtnLeerMas:hover {
        transform: translateY(-3px);
    }
/*Contenedor DERECHO*/
.derecha {
    position: relative;
    /*background-image: url('../Images/Home/sincontenido.png');*/
    background-image: url('https://img.youtube.com/vi/wlFxZWDc72U/maxresdefault.jpg');
    background-size: cover;
    background-position: center;
    border-radius: 20px;
    overflow: hidden;
    cursor: pointer;
}

    .derecha::before {
        content: "";
        position: absolute;
        inset: 0;
        background: rgba(0,0,0,0.35); /* nivel de oscuridad */
    }


.videoContent {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px; /* reduce separación */
    text-align: center;
}

.playImg {
    width: 80px; /* antes 70px */
}

.tituloVideo {
    color: white;
    font-size: 14px; /* antes 16px */
    font-weight: 600;
}

/*Moda param video*/
.modal {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.8);
    z-index: 9999;
}

.modalContenido {
    position: relative;
    width: 90%;
    max-width: 1000px;
    margin: 80px auto;
    background: transparent;
    padding: 20px;
}

.cerrar {
    position: absolute;
    top: -15px;
    right: -15px;
    width: 40px;
    height: 40px;
    background: rgba(0,0,0,0.7);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 18px;
    cursor: pointer;
    user-select: none;
}

/* =========================
    SECCION DE OPINIONES
========================= */

.carousel {
    width: 100%;
    max-width: 1100px;
    overflow: hidden;
    margin: auto;
    padding: 20px 0;
}

.carousel-track {
    display: flex;
    gap: 20px;
    transition: transform 0.6s ease;
}

/* TARJETA */

.Opinion {
    background: url("../../Images/Home/Opinion.png") center/cover no-repeat;
    height: 342px;
    position: relative;
    flex: 0 0 calc(33.333% - 14px); /* 3 en desktop */
}

/* TEXTO */

.TextOpinion {
    width: 237px;
    height: 120px;
    position: absolute;
    top: 32%;
    left: 20%;
    font-family: 'Outfit';
    font-size: 16px;
    line-height: 20px;
    color: #707070;
}

/* PIE */

.PieOpinion {
    display: flex;
    align-items: center;
    gap: 12px;
    position: absolute;
    bottom: 80px;
    left: 80px;
    width: 220px;
}

.bandera {
    width: 35px;
}

.NombreOp {
    font-family: 'Outfit';
    font-weight: 600;
    color: #005394;
}

.PaisOp {
    font-family: 'Outfit';
    font-weight: 400;
    color: #005394;
    display: block; /* fuerza salto de línea */
}

/* =========================
   RESPONSIVE
========================= */
/* TABLET */
@media (max-width: 992px) {

    .container-flex {
        flex-direction: column;
    }

    .mitad {
        width: 100%;
    }

    .Opinion {
        flex: 0 0 calc(50% - 10px); /* 2 opiniones */
    }
}
/* MOVIL */
@media (max-width:768px) {

    body {
        padding-top: 10px;
    }

    .seccion-home {
        width: 92%;
    }

    .lado-izquierdo {
        padding: 10px;
    }

    /* MENOS MARGEN LATERAL */

    .margen-texto {
        margin-left: 20px;
        margin-right: 20px;
    }

    /* TEXTO MAS GRANDE */

    .descripcion-home {
        font-size: 18px;
    }

    /* BOTONES MOVIL */

    .botones-home {
        justify-content: center;
        gap: 12px;
    }

    .BtnInicio {
        height: 46px;
        padding: 0 15px;
        font-size: 17px;
    }

    .btn-lottie {
        width: 200px;
        height: 119px;
        height: 119px;
    }

    /* IMAGEN */

    .home-img {
        max-height: 350px;
        margin-top: 30px;
    }

    .logosdiv {
        text-align: center;
    }

    .logosHomeSize {
        width: 70%;
    }

    .carousel {
        max-width: 360px;
    }

    .Opinion {
        flex: 0 0 100%; /* 1 opinión */
    }

    .loginBox {
        width: 90%;
        max-width: 360px;
        padding: 25px;
    }
}
