/* HOME */

/* Estilos para la imagen dentro del contenedor .right__content */
.right__content img {
    width: 100% !important;
    height: auto !important;
    transform: scale(1.25);
}

/* Estilos para la sección principal de inicio */
.home__page {
    height: 100vh; /* La altura de la sección ocupa toda la ventana del navegador (viewport) */
    width: 100%; /* La sección ocupa el 100% del ancho disponible */
    position: relative; /* Permite posicionar elementos hijos de forma absoluta dentro de esta sección */
    padding-top: 4rem;
}

/* Estilos para el contenedor de la burbuja de mensaje */
.message__bubble {
    display: inline-block; /* Permite que el contenedor se comporte como un bloque en línea */
    position: relative; /* Necesario para posicionar el triángulo con ::after dentro de este contenedor */
    width: 180px; /* Ancho fijo de la burbuja */
    height: auto; /* La altura se ajusta automáticamente al contenido */
    background-color: var(--secondary-bg-color); /* Color de fondo definido por una variable CSS personalizada */
    border-radius: 0.5rem; /* Bordea las esquinas dentro del mensaje "Hola yo soy" */
}


/* Triangulo decorativo que simula la punta de la burbuja de mensaje */
.triangle:after {
    content: "";
    position: absolute;
    top: calc(100% - 1px);
    left: 40%;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 15px 15px 0 15px;
    border-color: var(--secondary-bg-color) transparent transparent transparent;
}
/* Estilos para el texto dentro de la burbuja de mensaje */
.message__text {
    padding: 1rem; /* Espaciado interno alrededor del texto para que no quede pegado a los bordes */
    
}


/* Estilos para los botones dentro del contenedor .home__buttons */
.home__buttons button {
    padding: 1rem 2rem; /* Espaciado interno: 1rem arriba/abajo, 2rem izquierda/derecha */
    color: var(--font-color); /* Color del texto definido por la variable personalizada --font-color */
}

/* Estilos para los enlaces <a> dentro del contenedor .home__buttons */
.home__buttons a {
    background-color: var(--secondary-bg-color); /* Color de fondo definido por la variable personalizada --secondary-bg-color */
    font-size: 0.9rem; /* Tamaño de fuente ligeramente reducido */
    color: #fff; /* Color del texto blanco */
    padding: 1rem 1.5rem; /* Espaciado interno: 1rem arriba/abajo, 1.5rem izquierda/derecha */
}

/* Reescritura de estilos para los botones dentro de .home__buttons */
.home__buttons button {
    background-color: transparent; /* Fondo transparente para el botón */
    border: 1px solid #fff; /* Borde blanco de 1px */
    border-width: thin; /* Alternativamente define el grosor del borde como "thin" (puede sobrescribir el anterior) */
    font-family: var(--font); /* Fuente definida por la variable personalizada --font */
    font-size: 0.9rem; /* Tamaño de fuente igual al de los enlaces */
    color: #fff; /* Color del texto blanco (sobrescribe el anterior si se aplica después) */
    padding: 1rem 1.5rem; /* Espaciado interno igual al de los enlaces */
}

/* Diseño responsivo */
/* Estilos aplicados cuando el ancho de pantalla es igual o menor a 576px (dispositivos móviles pequeños) */
@media screen and (max-width: 576px) {
    /* Ajusta el ancho de los globos de mensaje para pantallas pequeñas */
    .message__bubble {
        width: 160px; /* Establece un ancho fijo de 160px para los globos de mensaje */
    }

    /* Modifica el espaciado interno de los enlaces en .home__buttons para pantallas pequeñas */
    .home__buttons a {
        padding: 1rem 1rem !important; /* Fuerza el padding a 1rem en todos los lados, sobrescribiendo otros estilos */
    }
}

/* Estilos aplicados cuando el ancho de pantalla es igual o menor a 1200px (tablets y laptops medianos) */
@media screen and (max-width: 1200px) {
    /* Ajusta el espaciado superior de la sección principal en pantallas medianas */
    .home__page {
        padding-top: 10rem; /* Agrega un espacio superior de 10rem para mejorar la distribución visual */
    }
}


/* Mobile hero polish */
@media screen and (max-width: 768px) {
    .home__page {
        min-height: 100vh;
        height: auto;
        padding-top: 7rem;
        padding-bottom: 3rem;
        text-align: center;
    }

    .left__content {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .left__content > p {
        max-width: 28rem;
        line-height: 1.55;
    }

    .home__buttons {
        justify-content: center;
        flex-wrap: wrap;
        margin-top: 2rem !important;
    }

    .home__buttons a,
    .home__buttons button {
        min-width: 9rem;
        padding: 0.85rem 1rem !important;
        font-size: 0.85rem;
    }

    .right__content {
        width: min(88vw, 23rem);
        max-width: 23rem;
        margin-inline: auto;
        margin-top: 1.5rem;
    }

    .right__content img {
        transform: scale(1.18);
    }
}

@media screen and (max-width: 420px) {
    .home__buttons {
        width: 100%;
    }

    .home__buttons a,
    .home__buttons button {
        width: 100%;
    }

    .message__bubble {
        width: 8.75rem;
    }

    .triangle:after {
        border-width: 12px 12px 0 12px;
    }

    .right__content {
        width: min(92vw, 21rem);
        max-width: 21rem;
    }
}


