.elementor-3939 .elementor-element.elementor-element-c85d6e8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3939 .elementor-element.elementor-element-c85d6e8.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-3939 .elementor-element.elementor-element-049ead6 > .elementor-widget-container{padding:0px 0px 0px 0px;}@media(min-width:768px){.elementor-3939 .elementor-element.elementor-element-c85d6e8{--width:104.01%;}}/* Start custom CSS for html, class: .elementor-element-049ead6 */.sobre-nosotros {
    padding: 100px 20px;
    background: linear-gradient(to bottom, #f8f9fa, #eef2f7);
    font-family: 'Segoe UI', sans-serif;
}

.contenedor {
    max-width: 1000px;
    margin: auto;
}

/* Imagen superior */
.imagen {
    margin-bottom: 50px;
}

.imagen img {
    width: 100%;
    height: 400px;
    object-fit: cover;
    border-radius: 20px;
    box-shadow: 0 15px 35px rgba(0,0,0,0.08);
    transition: 0.4s ease;
}

.imagen img:hover {
    transform: scale(1.02);
}

/* Texto */
.texto h2 {
    font-size: 38px;
    margin-bottom: 30px;
    color: #00528A;
}

.historia p {
    font-size: 17px;
    line-height: 1.9;
    margin-bottom: 20px;
    color: #00528A;
}

/* Cards */
.mision-vision {
    display: flex;
    gap: 25px;
    margin-top: 50px;
    flex-wrap: wrap;
}

.card {
    flex: 1;
    min-width: 260px;
    background: #ffffff;
    padding: 25px;
    border-radius: 15px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.06);
    transition: all 0.3s ease;
}

.card:hover {
    transform: translateY(-6px);
    box-shadow: 0 15px 35px rgba(0,0,0,0.1);
}

.card h3 {
    margin-bottom: 15px;
    color: #00528A;
}

.card p {
    margin-bottom: 15px;
    color: #00528A;
}

/* Animaciones */
.fade-in {
    opacity: 0;
    transform: translateY(25px);
    animation: fadeUp 0.8s ease forwards;
}

.delay-1 { animation-delay: 0.2s; }
.delay-2 { animation-delay: 0.4s; }
.delay-3 { animation-delay: 0.6s; }

@keyframes fadeUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Responsive */
@media (max-width: 768px) {
    .imagen img {
        height: 250px;
    }

    .texto h2 {
        font-size: 30px;
    }

    .mision-vision {
        flex-direction: column;
    }
}/* End custom CSS */