/* ---- NOSOTROS INTO ---- */
.intro-nosotros {
    position: relative;
    padding: 100px 20px;
    color: rgb(0, 0, 0);
    min-height: 500px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}
.intro-nosotros::before {
    content: "";
    background: url('../media/img/background-01.webp') no-repeat center center;
    background-size: cover;
    opacity: 0.5;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    position: absolute;
    z-index: -1;   
}
.intro-nosotros .content {
    width: 35%;
    margin-right: 5%;
    text-align: right;
}
.intro-nosotros h1 {
    font-size: 2.9em;
    font-weight: 600;
    font-style: italic;
    margin-bottom: 20px;
    font-family: 'Montserrat', sans-serif;
    text-align: left;
}
.intro-nosotros p {
    font-size: 1.2em;
    line-height: 1.6;
    margin-bottom: 20px;
    font-family: 'Montserrat', sans-serif;
    text-align: left;
}
.intro-nosotros .scroll-down {
    display: block;
    text-decoration: none;
    color: inherit;
    justify-content: flex-end;
    align-items: center;
    gap: 8px;
    font-size: 1em;
    cursor: pointer;
}
.bi-chevron-down {
    animation: bounce 2s
    infinite;
}
@keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        transform: translateY(0);
    }
    40% {
        transform: translateY(-30px);
    }
    60% {
        transform: translateY(-15px);
    }
}
/* ---- RESPONSIVE PARA INTRO NOSOTROS ---- */
@media (max-width: 900px) {
    .intro-nosotros {
        min-height: 500px;
        align-items: center;
        justify-content: center;
    }
    .intro-nosotros .content {
        width: 90%;
        text-align: center;
    }
}
/* ---- Seccion de Ivy ---- */
.sobre-ivy {
    display: flex;
    align-items: flex-start;
    padding: 50px;
    font-family: 'Montserrat', sans-serif;
    height: auto;
}
.texto-ivy {
    flex: 1;
    padding: 0 90px;
    margin-top: 2em;
}
.texto-ivy h2 {
    font-size: 3em;
    font-weight: 700;
    font-style: italic;
    margin-bottom: 20px;
}
.texto-ivy p {
    position: relative;
    padding: 35px 35px;
}
.texto-ivy p::before, .texto-ivy p::after {
    content: "";
    position: absolute;
    background: black;
    height: 1px;
}
.texto-ivy p::before {
    width: 70%;
    top: 0; 
    left: 10%;
    right: 15%; 
}

.texto-ivy p::after {
    height: 70%;
    width: 1px;
    top: 10%;
    bottom: 15%;
    left: 0;
}
.imagen-ivy {
    flex: 1;
    background-size: cover;
    background-position: center;
    transition: background-image 0.5s ease-in-out;
}
.carrusel04 {
    position: relative;
}
.carrusel04 img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%; 
    height: auto;
    visibility: hidden;
    opacity: 0;
    transition: opacity 1s ease-in-out;
    border-radius: 10px;
}
.carrusel04 img.active {
    visibility: visible;
    opacity: 1;
    transition: opacity 1s ease-in-out;
}
/* ---- Responsive de la seccion de Ivy ---- */
@media (max-width: 900px) {
    .sobre-ivy {
        flex-direction: column;
    }
    .texto-ivy, .imagen-ivy {
        width: 100%;
        padding: 10px;
        text-align: center;
    }
    .texto-ivy {
        margin-top: 0%;
    }
    .texto-ivy p {
        font-size: 0.8em;
    }
}
/* ---- Seccion de filosofia ---- */
.filosofia {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 50px;
    font-family: 'Montserrat', sans-serif;
    margin-top: 7em;
}
.filosofia-content {
    width: 60%;
    margin-left: 4em;
}
.filosofia-imagen {
    width: 40%;
    text-align: left;
}
.filosofia-content h2 {
    font-size: 4em;
    font-style: italic;
    margin-bottom: 0.5em;
    font-weight: 500;
    text-transform: uppercase;
    border-bottom: 3px solid black;
}
.filosofia-content p {
    font-size: 1.5em;
    line-height: 1.4;
    margin-top: 20px;
    text-align: right;
    margin-right: 30px;
}
.filosofia-imagen img {
    max-width: 60%;
    height: auto;
}
/* ---- Responsive para la seccion de filosifia ---- */
@media (max-width: 768px) {
    .filosofia {
        flex-direction: column;
        text-align: center;
        margin-top: 250px;
    }
    .filosofia-content, .filosofia-imagen {
        width: 100%;
        text-align: center;
    }
    .filosofia-content{
        margin-left: 0;
    }
    .filosofia-imagen img {
        max-width: 80%;
        margin-top: 20px;
    }
    .filosofia-content h2 {
        font-size: 2em;
    }
    .filosofia-content p {
        text-align: center;
    }
}
@media (min-width: 1600px) {
    .filosofia {
        margin-top: 35em;
    }
}
/* ---- Seccion de informacion ---- */
.informacion {
    background-color: #000;
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    padding: 50px 20px;
    display: flex;
    align-items: center;
    justify-content: left;
    text-align: left;
}
.informacion-content h2 {
    font-size: 3em;
    margin-bottom: 0.5em;
    font-weight: 800;
    text-transform: uppercase;
    border-bottom: 1px solid white;
    padding-bottom: 10px;
    margin-left: 40px;
}
.informacion-content p {
    font-size: 1.5em;
    line-height: 1.6;
    margin-left: 40px;
}
@media (max-width: 768px) {
    .informacion-content h2 {
        margin-left: 0px;
    }
    .informacion-content p {
        margin-left: 0px;
    }
}