/* ==========================================================================
   ESTILOS EXCLUSIVOS - PÁGINA SOBRE NOSOTROS
   ========================================================================== */

/* 1. SECCIÓN HISTORIA Y TEXTO PRINCIPAL */
/* Corrección de altura para igualar la imagen al texto */
.nosotros-grid {
    display: flex;
    align-items: stretch; /* Mantiene ambas columnas con la misma altura */
    gap: 40px;
    margin: 40px 0 60px 0;
    width: 100%;
}

.nosotros-texto {
    flex: 1;
    /* Elimina el flex de centrado si existía para definir la altura real del bloque */
}

.nosotros-texto h2 {
    font-size: 1.8rem;
    font-weight: 800;
    color: var(--escady-black);
    margin-bottom: 20px;
    line-height: 1.3;
}

.nosotros-texto p {
    color: var(--text-color);
    font-size: 1.05rem;
    line-height: 1.7;
    margin-bottom: 18px;
}

.nosotros-texto p:last-child {
    margin-bottom: 0;
}

.nosotros-imagen {
    flex: 1;
    position: relative; /* Permite que la imagen se reescale sin inflar el alto del contenedor */
}

.nosotros-imagen img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; /* Recorta la imagen limpiamente para llenar el alto sin deformarse */
    border-radius: 12px;
    border: 3px solid var(--escady-yellow);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
    box-sizing: border-box;
}

/* Ajuste móvil para evitar que desaparezca con position: absolute */
@media (max-width: 900px) {
    .nosotros-grid {
        flex-direction: column;
    }

    .nosotros-imagen {
        position: static;
        height: 300px;
    }

    .nosotros-imagen img {
        position: static;
    }
}

/* 2. TARJETAS CENTRADAS Y A LO ANCHO DE LA PANTALLA */
.nosotros-pilares {
    margin: 60px 0;
    width: 100%;
}

.nosotros-pilares .grid-cards {
    display: grid;
    /* Divide el contenedor exactamente en 3 columnas iguales */
    grid-template-columns: repeat(3, 1fr); 
    gap: 25px;
    width: 100%;
    justify-content: center;
}

.nosotros-pilares .card {
    width: 100%;
    box-sizing: border-box;
}

/* 3. BLOQUE LLAMADO A LA ACCIÓN (CTA) */
.nosotros-cta {
    background-color: var(--escady-black);
    color: #ffffff;
    padding: 50px 30px;
    border-radius: 12px;
    text-align: center;
    margin: 50px 0;
    width: 100%;
    box-sizing: border-box;
}

.nosotros-cta h2 {
    font-size: 1.8rem;
    font-weight: 800;
    color: var(--escady-yellow);
    margin-bottom: 15px;
}

.nosotros-cta p {
    font-size: 1.1rem;
    color: #e2e8f0;
    margin-bottom: 25px;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}

.nosotros-cta .btn-wsp-grande {
    display: inline-block;
}

/* ==========================================================================
   RESPONSIVE / MÓVILES
   ========================================================================== */
@media (max-width: 900px) {
    .nosotros-grid {
        flex-direction: column;
    }

    .nosotros-imagen img {
        height: 300px; /* Altura fija apropiada para pantallas pequeñas */
    }

    .nosotros-pilares .grid-cards {
        grid-template-columns: 1fr; /* Pasa a 1 columna en celulares */
    }

    .nosotros-cta h2 {
        font-size: 1.4rem;
    }
}