@import url('../reutilizables/fonts.css');

/* 2. Propiedades Globales (Fuera de MQ) */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html,
body {
    background-color: #fff;
    overflow-x: hidden;
    scrollbar-width: none;
    /* Firefox */
    -ms-overflow-style: none;
    /* IE y Edge */
}

html::-webkit-scrollbar,
body::-webkit-scrollbar {
    display: none;
    /* Chrome, Safari, Brave y Opera */
}

/* 1. MQ1 */
@media (min-width: 1367px) {

    .seccion-1 {
        width: 100%;
        min-height: 100vh;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .modulo-11 {
        width: 70%;
        height: 55%;
        display: flex;
        align-items: flex-end;
        justify-content: flex-end;
    }

    .bloque-111 {
        width: 60%;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .icono-1111 {
        width: 100%;
        display: block;
    }

    .modulo-12 {
        width: 70%;
        height: 140px;
        background-color: #ffffff;
        border-radius: 40px;
        display: flex;
        align-items: center;
        justify-content: space-around;
        box-shadow: 0 10px 40px rgba(0, 0, 0, 0.05);
        padding: 0 40px;
        margin-bottom: 40px;
    }

    .bloque-121 {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        cursor: pointer;
    }

    .contenido-1211 {
        width: 70px;
        height: 70px;
        border: 1px solid #ff6600;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 12px;
    }

    .icono-12111 {
        width: 35px;
    }

    .texto-1212 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #000000;
        font-weight: 600;
    }

    /* ---------------------------------------------------------
       SECCIÓN 2: Bloques de Video (Grid de Proyectos)
       --------------------------------------------------------- */
    .seccion-2 {
        width: 100%;
        min-height: 100vh;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 100px 0;
    }

    .modulo-21 {
        width: 71vw;
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        margin-bottom: 50px;
        position: relative;
    }

    .modulo-21::before {
        content: '';
        position: absolute;
        top: -30px;
        left: 0;
        width: 40px;
        height: 20px;
        background-color: #ff3b30;
        border-radius: 40px 40px 0 0;
    }

    .bloque-211 {
        display: flex;
        flex-direction: column;
    }

    .texto-2111 {
        font-family: 'Outfit', sans-serif;
        font-size: 28px;
        color: #213242;
        font-weight: 700;
        letter-spacing: -0.5px;
    }

    .texto-2111-alt {
        color: #777777;
        font-weight: 300;
    }

    .bloque-212 {
        display: flex;
        align-items: center;
        gap: 10px;
        text-decoration: none;
        cursor: pointer;
    }

    .texto-2121 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        color: #ff3b30;
        font-weight: 600;
        text-decoration: none;
    }

    .icono-2122 {
        width: 30px;
        height: 30px;
        background-color: #ff3b30;
        color: #ffffff;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 14px;
    }

    .modulo-22 {
        width: 100%;
        display: flex;
        justify-content: center;
        gap: 2.5vw;
    }

    .bloque-221 {
        position: relative;
        width: 22vw;
        aspect-ratio: 9 / 16;
        border-radius: 15px;
        overflow: hidden;
        cursor: pointer;
        transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    }


    .bloque-222 {
        position: relative;
        width: 22vw;
        aspect-ratio: 9 / 16;
        border-radius: 15px;
        overflow: hidden;
        cursor: pointer;
        transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    }


    .bloque-223 {
        position: relative;
        width: 22vw;
        aspect-ratio: 9 / 16;
        border-radius: 15px;
        overflow: hidden;
        cursor: pointer;
        transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    }


    .contenido-2211 {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
    }

    .contenido-2221 {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
    }

    .contenido-2231 {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
    }

    .video-22111 {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .video-22211 {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .video-22311 {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .bloque-221::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 50%;
        background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, transparent 100%);
        z-index: 1;
    }

    .bloque-222::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 50%;
        background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, transparent 100%);
        z-index: 1;
    }

    .bloque-223::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 50%;
        background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, transparent 100%);
        z-index: 1;
    }

    .contenido-2212 {
        position: absolute;
        top: 20px;
        right: 20px;
        background-color: #003cff;
        padding: 6px 15px;
        border-radius: 15px;
        z-index: 2;
        text-decoration: none;
        backdrop-filter: blur(5px);
    }

    .contenido-2222 {
        position: absolute;
        top: 20px;
        right: 20px;
        background-color: #003cff;
        padding: 6px 15px;
        border-radius: 15px;
        z-index: 2;
        text-decoration: none;
        backdrop-filter: blur(5px);
    }

    .contenido-2232 {
        position: absolute;
        top: 20px;
        right: 20px;
        background-color: #003cff;
        padding: 6px 15px;
        border-radius: 15px;
        z-index: 2;
        text-decoration: none;
        backdrop-filter: blur(5px);
    }

    .texto-22121 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        color: #ffffff;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 1px;
    }

    .texto-22221 {
        background-color: #003cff;
        color: #ffffff;
        padding: 8px 20px;
        border-radius: 50px;
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 1px;
        backdrop-filter: blur(5px);
    }

    .texto-22321 {
        background-color: #003cff;
        color: #ffffff;
        padding: 8px 20px;
        border-radius: 50px;
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 1px;
        backdrop-filter: blur(5px);
    }

    .seccion-3 {
        width: 100%;
        min-height: 100vh;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 100px 0;
    }

    .modulo-31 {
        width: 70%;
        display: flex;
        flex-direction: column;
        margin-bottom: 80px;
    }

    .bloque-311 {
        width: 100%;
        margin-bottom: 40px;
    }

    .texto-3111 {
        font-family: 'Outfit', sans-serif;
        font-size: 32px;
        color: #213242;
        font-weight: 600;
    }

    .bloque-312 {
        width: 100%;
        display: flex;
        justify-content: space-between;
        gap: 20px;
    }

    .contenido-3121 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3122 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3123 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3124 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3125 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-31211 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31221 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31231 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31241 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31251 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .imagen-312111 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312211 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312311 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312411 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312511 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .contenido-31212 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31222 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31232 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31242 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31252 {
        display: flex;
        flex-direction: column;
    }

    .texto-312121 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312221 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312321 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312421 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312521 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312122 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312222 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312322 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312422 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312522 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .modulo-32 {
        width: 70%;
        display: flex;
        flex-direction: column;
    }

    .bloque-321 {
        width: 100%;
        margin-bottom: 40px;
    }

    .texto-3211 {
        font-family: 'Outfit', sans-serif;
        font-size: 32px;
        color: #213242;
        font-weight: 600;
    }

    .bloque-322 {
        width: 100%;
        display: flex;
        justify-content: space-between;
        gap: 20px;
    }

    .contenido-3221 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3222 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3223 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3224 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3225 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-32211 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32221 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32231 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32241 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32251 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .imagen-322111 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322211 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322311 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322411 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322511 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .contenido-32212 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32222 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32232 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32242 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32252 {
        display: flex;
        flex-direction: column;
    }

    .texto-322121 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322221 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322321 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322421 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322521 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322122 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-322222 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-322322 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-322422 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-322522 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .seccion-4 {
        width: 100%;
        min-height: 100vh;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 100px 0;
    }

    .modulo-41 {
        width: 70%;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        margin-bottom: 80px;
    }

    .bloque-411 {
        width: 100%;
        display: flex;
        justify-content: center;
    }

    .bloque-412 {
        width: 100%;
        display: flex;
        justify-content: center;
    }

    .texto-4111 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #ff6600;
        font-weight: 600;
        margin-bottom: 20px;
        text-align: center;
    }

    .texto-4121 {
        font-family: 'Outfit', sans-serif;
        font-size: 45px;
        color: #213242;
        font-weight: 300;
        max-width: 850px;
        text-align: center;
    }

    .modulo-42 {
        width: 70%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .bloque-421 {
        width: 40%;
        display: flex;
        flex-direction: column;
    }

    .contenido-4211 {
        width: 100%;
        border-bottom: 1px solid #eeeeee;
        padding: 30px 0;
        cursor: pointer;
        display: flex;
        flex-direction: column;
    }

    .contenido-4212 {
        width: 100%;
        border-bottom: 1px solid #eeeeee;
        padding: 30px 0;
        cursor: pointer;
        display: flex;
        flex-direction: column;
    }

    .contenido-4213 {
        width: 100%;
        border-bottom: 1px solid #eeeeee;
        padding: 30px 0;
        cursor: pointer;
        display: flex;
        flex-direction: column;
    }

    .contenido-4214 {
        width: 100%;
        border-bottom: 1px solid #eeeeee;
        padding: 30px 0;
        cursor: pointer;
        display: flex;
        flex-direction: column;
    }

    .contenido-42111 {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .contenido-42121 {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .contenido-42131 {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .contenido-42141 {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .texto-421111 {
        font-family: 'Outfit', sans-serif;
        font-size: 20px;
        font-weight: 400;
        color: #777777;
    }

    .texto-421211 {
        font-family: 'Outfit', sans-serif;
        font-size: 20px;
        font-weight: 400;
        color: #777777;
    }

    .texto-421311 {
        font-family: 'Outfit', sans-serif;
        font-size: 20px;
        font-weight: 400;
        color: #777777;
    }

    .texto-421411 {
        font-family: 'Outfit', sans-serif;
        font-size: 20px;
        font-weight: 400;
        color: #777777;
    }

    .contenido-42112 {
        display: none;
        padding-top: 20px;
        flex-direction: column;
        gap: 20px;
    }

    .contenido-42122 {
        display: none;
        padding-top: 20px;
        flex-direction: column;
        gap: 20px;
    }

    .contenido-42132 {
        display: none;
        padding-top: 20px;
        flex-direction: column;
        gap: 20px;
    }

    .contenido-42142 {
        display: none;
        padding-top: 20px;
        flex-direction: column;
        gap: 20px;
    }

    /* Estados activos (1:1) */
    .bloque-421>div.activo .texto-421111 {
        color: #213242;
        font-weight: 600;
    }

    .bloque-421>div.activo .texto-421211 {
        color: #213242;
        font-weight: 600;
    }

    .bloque-421>div.activo .texto-421311 {
        color: #213242;
        font-weight: 600;
    }

    .bloque-421>div.activo .texto-421411 {
        color: #213242;
        font-weight: 600;
    }

    .bloque-421>div.activo .contenido-42112 {
        display: flex;
    }

    .bloque-421>div.activo .contenido-42122 {
        display: flex;
    }

    .bloque-421>div.activo .contenido-42132 {
        display: flex;
    }

    .bloque-421>div.activo .contenido-42142 {
        display: flex;
    }

    .texto-421121 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        color: #777777;
        line-height: 1.6;
    }

    .texto-421221 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        color: #777777;
        line-height: 1.6;
    }

    .texto-421321 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        color: #777777;
        line-height: 1.6;
    }

    .texto-421421 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        color: #777777;
        line-height: 1.6;
    }

    .contenido-421122 {
        width: 150px;
        height: 40px;
        border: 1px solid #cccccc;
        border-radius: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        color: #213242;
        font-weight: 500;
    }

    .contenido-421222 {
        width: 150px;
        height: 40px;
        border: 1px solid #cccccc;
        border-radius: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        color: #213242;
        font-weight: 500;
    }

    .contenido-421322 {
        width: 150px;
        height: 40px;
        border: 1px solid #cccccc;
        border-radius: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        color: #213242;
        font-weight: 500;
    }

    .contenido-421422 {
        width: 150px;
        height: 40px;
        border: 1px solid #cccccc;
        border-radius: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        color: #213242;
        font-weight: 500;
    }

    .bloque-422 {
        width: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .contenido-4221 {
        width: 100%;
        overflow: hidden;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0;
    }

    .imagen-42211 {
        width: 100%;
        height: auto;
        border-radius: 10px;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
    }

    .seccion-5 {
        width: 100%;
        min-height: 100vh;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .modulo-51 {
        width: 70%;
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
    }

    .bloque-511 {
        width: 18%;
        display: flex;
        flex-direction: column;
        gap: 30px;
    }

    .bloque-512 {
        width: 18%;
        display: flex;
        flex-direction: column;
        gap: 30px;
    }

    .bloque-513 {
        width: 18%;
        display: flex;
        flex-direction: column;
        gap: 30px;
    }

    .bloque-514 {
        width: 18%;
        display: flex;
        flex-direction: column;
        gap: 30px;
    }

    .bloque-515 {
        width: 18%;
        display: flex;
        flex-direction: column;
        gap: 30px;
    }

    .contenido-5111 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5112 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5113 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5121 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5122 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5123 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5124 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5125 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5131 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5132 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5133 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5134 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5141 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5142 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5143 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5151 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5152 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5153 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5154 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5155 {
        display: flex;
        flex-direction: column;
    }

    .texto-51111 {
        font-family: 'Outfit', sans-serif;
        font-size: 15px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51121 {
        font-family: 'Outfit', sans-serif;
        font-size: 15px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51131 {
        font-family: 'Outfit', sans-serif;
        font-size: 15px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51211 {
        font-family: 'Outfit', sans-serif;
        font-size: 15px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51221 {
        font-family: 'Outfit', sans-serif;
        font-size: 15px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51231 {
        font-family: 'Outfit', sans-serif;
        font-size: 15px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51241 {
        font-family: 'Outfit', sans-serif;
        font-size: 15px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51251 {
        font-family: 'Outfit', sans-serif;
        font-size: 15px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51311 {
        font-family: 'Outfit', sans-serif;
        font-size: 15px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51321 {
        font-family: 'Outfit', sans-serif;
        font-size: 15px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51331 {
        font-family: 'Outfit', sans-serif;
        font-size: 15px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51341 {
        font-family: 'Outfit', sans-serif;
        font-size: 15px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51411 {
        font-family: 'Outfit', sans-serif;
        font-size: 15px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51421 {
        font-family: 'Outfit', sans-serif;
        font-size: 15px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51431 {
        font-family: 'Outfit', sans-serif;
        font-size: 15px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51511 {
        font-family: 'Outfit', sans-serif;
        font-size: 15px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51521 {
        font-family: 'Outfit', sans-serif;
        font-size: 15px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51531 {
        font-family: 'Outfit', sans-serif;
        font-size: 15px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51541 {
        font-family: 'Outfit', sans-serif;
        font-size: 15px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51551 {
        font-family: 'Outfit', sans-serif;
        font-size: 15px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51112 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51122 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51132 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51212 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51222 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51232 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51242 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51252 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51312 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51322 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51332 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51342 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51412 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51422 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51432 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51512 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51522 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51532 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51542 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51552 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .modulo-52 {
        width: 70%;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
        margin-top: 80px;
        border-top: 1px solid #eeeeee;
        padding-top: 60px;
    }

    .bloque-521 {
        display: flex;
        flex-direction: column;
        width: 40%;
    }

    .bloque-522 {
        display: flex;
        flex-direction: column;
        width: 55%;
    }

    .texto-5211 {
        font-family: 'Outfit', sans-serif;
        font-size: 15px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 12px;
    }

    .texto-5221 {
        font-family: 'Outfit', sans-serif;
        font-size: 15px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 12px;
    }

    .texto-5212 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 400;
        color: #777777;
        line-height: 1.6;
    }

    .texto-5222 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 400;
        color: #777777;
        line-height: 1.6;
    }
}

/* MQ2...MQ6 */
@media (min-width: 1281px) and (max-width: 1366px) {

    .seccion-1 {
        width: 100%;
        min-height: 100vh;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .modulo-11 {
        width: 70%;
        height: 50%;
        display: flex;
        align-items: flex-end;
        justify-content: flex-end;
    }

    .bloque-111 {
        width: 55%;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .icono-1111 {
        width: 100%;
        display: block;
    }

    .modulo-12 {
        width: 70%;
        height: 130px;
        background-color: #ffffff;
        border-radius: 35px;
        display: flex;
        align-items: center;
        justify-content: space-around;
        box-shadow: 0 10px 40px rgba(0, 0, 0, 0.05);
        padding: 0 30px;
        margin-bottom: 35px;
    }

    .bloque-121 {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        cursor: pointer;
    }

    .contenido-1211 {
        width: 65px;
        height: 65px;
        border: 1px solid #ff6600;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 10px;
    }

    .icono-12111 {
        width: 32px;
    }

    .texto-1212 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        color: #000000;
        font-weight: 600;
    }

    /* ---------------------------------------------------------
       SECCIÓN 2: Bloques de Video (Grid de Proyectos)
       --------------------------------------------------------- */
    .seccion-2 {
        width: 100%;
        min-height: 100vh;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 80px 0;
    }

    .modulo-21 {
        width: 71vw;
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        margin-bottom: 45px;
        position: relative;
    }

    .modulo-21::before {
        content: '';
        position: absolute;
        top: -25px;
        left: 0;
        width: 35px;
        height: 18px;
        background-color: #ff3b30;
        border-radius: 40px 40px 0 0;
    }

    .bloque-211 {
        display: flex;
        flex-direction: column;
    }

    .texto-2111 {
        font-family: 'Outfit', sans-serif;
        font-size: 26px;
        color: #213242;
        font-weight: 700;
        letter-spacing: -0.5px;
    }

    .texto-2111-alt {
        color: #777777;
        font-weight: 300;
    }

    .bloque-212 {
        display: flex;
        align-items: center;
        gap: 10px;
        text-decoration: none;
        cursor: pointer;
    }

    .texto-2121 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        color: #ff3b30;
        font-weight: 600;
        text-decoration: none;
    }

    .icono-2122 {
        width: 30px;
        height: 30px;
        background-color: #ff3b30;
        color: #ffffff;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 14px;
    }

    .modulo-22 {
        width: 100%;
        display: flex;
        justify-content: center;
        gap: 2.5vw;
    }

    .bloque-221 {
        position: relative;
        width: 22vw;
        aspect-ratio: 9 / 16;
        border-radius: 15px;
        overflow: hidden;
        cursor: pointer;
        transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    }


    .bloque-222 {
        position: relative;
        width: 22vw;
        aspect-ratio: 9 / 16;
        border-radius: 15px;
        overflow: hidden;
        cursor: pointer;
        transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    }


    .bloque-223 {
        position: relative;
        width: 22vw;
        aspect-ratio: 9 / 16;
        border-radius: 15px;
        overflow: hidden;
        cursor: pointer;
        transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    }


    .contenido-2211 {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
    }

    .contenido-2221 {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
    }

    .contenido-2231 {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
    }

    .video-22111 {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .video-22211 {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .video-22311 {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .bloque-221::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 50%;
        background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, transparent 100%);
        z-index: 1;
    }

    .bloque-222::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 50%;
        background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, transparent 100%);
        z-index: 1;
    }

    .bloque-223::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 50%;
        background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, transparent 100%);
        z-index: 1;
    }

    .contenido-2212 {
        position: absolute;
        top: 20px;
        right: 20px;
        background-color: #003cff;
        padding: 6px 15px;
        border-radius: 15px;
        z-index: 2;
        text-decoration: none;
        backdrop-filter: blur(5px);
    }

    .contenido-2222 {
        position: absolute;
        top: 20px;
        right: 20px;
        background-color: #003cff;
        padding: 6px 15px;
        border-radius: 15px;
        z-index: 2;
        text-decoration: none;
        backdrop-filter: blur(5px);
    }

    .contenido-2232 {
        position: absolute;
        top: 20px;
        right: 20px;
        background-color: #003cff;
        padding: 6px 15px;
        border-radius: 15px;
        z-index: 2;
        text-decoration: none;
        backdrop-filter: blur(5px);
    }

    .texto-22121 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        color: #ffffff;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 1px;
    }

    .texto-22221 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        color: #ffffff;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 1px;
    }

    .texto-22321 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        color: #ffffff;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 1px;
    }

    .seccion-3 {
        width: 100%;
        min-height: 100vh;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 80px 0;
    }

    .modulo-31 {
        width: 70%;
        display: flex;
        flex-direction: column;
        margin-bottom: 60px;
    }

    .bloque-311 {
        width: 100%;
        margin-bottom: 35px;
    }

    .texto-3111 {
        font-family: 'Outfit', sans-serif;
        font-size: 30px;
        color: #213242;
        font-weight: 600;
    }

    .bloque-312 {
        width: 100%;
        display: flex;
        justify-content: space-between;
        gap: 20px;
    }

    .contenido-3121 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3122 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3123 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3124 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3125 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-31211 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31221 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31231 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31241 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31251 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .imagen-312111 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312211 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312311 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312411 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312511 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .contenido-31212 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31222 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31232 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31242 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31252 {
        display: flex;
        flex-direction: column;
    }

    .texto-312121 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312221 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312321 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312421 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312521 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312122 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312222 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312322 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312422 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312522 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .modulo-32 {
        width: 70%;
        display: flex;
        flex-direction: column;
    }

    .bloque-321 {
        width: 100%;
        margin-bottom: 40px;
    }

    .texto-3211 {
        font-family: 'Outfit', sans-serif;
        font-size: 30px;
        color: #213242;
        font-weight: 600;
    }

    .bloque-322 {
        width: 100%;
        display: flex;
        justify-content: space-between;
        gap: 20px;
    }

    .contenido-3221 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3222 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3223 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3224 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3225 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-32211 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32221 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32231 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32241 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32251 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .imagen-322111 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322211 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322311 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322411 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322511 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .contenido-32212 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32222 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32232 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32242 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32252 {
        display: flex;
        flex-direction: column;
    }

    .texto-322121 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322221 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322321 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322421 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322521 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322122 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-322222 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-322322 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-322422 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-322522 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .seccion-4 {
        width: 100%;
        min-height: 100vh;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 80px 0;
    }

    .modulo-41 {
        width: 70%;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        margin-bottom: 60px;
    }

    .bloque-411 {
        width: 100%;
        display: flex;
        justify-content: center;
    }

    .bloque-412 {
        width: 100%;
        display: flex;
        justify-content: center;
    }

    .texto-4111 {
        font-family: 'Outfit', sans-serif;
        font-size: 15px;
        color: #ff6600;
        font-weight: 600;
        margin-bottom: 18px;
        text-align: center;
    }

    .texto-4121 {
        font-family: 'Outfit', sans-serif;
        font-size: 40px;
        color: #213242;
        font-weight: 300;
        max-width: 800px;
        text-align: center;
    }

    .modulo-42 {
        width: 70%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .bloque-421 {
        width: 40%;
        display: flex;
        flex-direction: column;
    }

    .contenido-4211 {
        width: 100%;
        border-bottom: 1px solid #eeeeee;
        padding: 30px 0;
        cursor: pointer;
        display: flex;
        flex-direction: column;
    }

    .contenido-4212 {
        width: 100%;
        border-bottom: 1px solid #eeeeee;
        padding: 30px 0;
        cursor: pointer;
        display: flex;
        flex-direction: column;
    }

    .contenido-4213 {
        width: 100%;
        border-bottom: 1px solid #eeeeee;
        padding: 30px 0;
        cursor: pointer;
        display: flex;
        flex-direction: column;
    }

    .contenido-4214 {
        width: 100%;
        border-bottom: 1px solid #eeeeee;
        padding: 30px 0;
        cursor: pointer;
        display: flex;
        flex-direction: column;
    }

    .contenido-42111 {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .contenido-42121 {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .contenido-42131 {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .contenido-42141 {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .texto-421111 {
        font-family: 'Outfit', sans-serif;
        font-size: 20px;
        font-weight: 400;
        color: #777777;
    }

    .texto-421211 {
        font-family: 'Outfit', sans-serif;
        font-size: 20px;
        font-weight: 400;
        color: #777777;
    }

    .texto-421311 {
        font-family: 'Outfit', sans-serif;
        font-size: 20px;
        font-weight: 400;
        color: #777777;
    }

    .texto-421411 {
        font-family: 'Outfit', sans-serif;
        font-size: 20px;
        font-weight: 400;
        color: #777777;
    }

    .contenido-42112 {
        display: none;
        padding-top: 20px;
        flex-direction: column;
        gap: 20px;
    }

    .contenido-42122 {
        display: none;
        padding-top: 20px;
        flex-direction: column;
        gap: 20px;
    }

    .contenido-42132 {
        display: none;
        padding-top: 20px;
        flex-direction: column;
        gap: 20px;
    }

    .contenido-42142 {
        display: none;
        padding-top: 20px;
        flex-direction: column;
        gap: 20px;
    }

    /* Estados activos (1:1) */
    .bloque-421>div.activo .texto-421111 {
        color: #213242;
        font-weight: 600;
    }

    .bloque-421>div.activo .texto-421211 {
        color: #213242;
        font-weight: 600;
    }

    .bloque-421>div.activo .texto-421311 {
        color: #213242;
        font-weight: 600;
    }

    .bloque-421>div.activo .texto-421411 {
        color: #213242;
        font-weight: 600;
    }

    .bloque-421>div.activo .contenido-42112 {
        display: flex;
    }

    .bloque-421>div.activo .contenido-42122 {
        display: flex;
    }

    .bloque-421>div.activo .contenido-42132 {
        display: flex;
    }

    .bloque-421>div.activo .contenido-42142 {
        display: flex;
    }

    .texto-421121 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        color: #777777;
        line-height: 1.6;
    }

    .texto-421221 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        color: #777777;
        line-height: 1.6;
    }

    .texto-421321 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        color: #777777;
        line-height: 1.6;
    }

    .texto-421421 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        color: #777777;
        line-height: 1.6;
    }

    .contenido-421122 {
        width: 150px;
        height: 40px;
        border: 1px solid #cccccc;
        border-radius: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        color: #213242;
        font-weight: 500;
    }

    .contenido-421222 {
        width: 150px;
        height: 40px;
        border: 1px solid #cccccc;
        border-radius: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        color: #213242;
        font-weight: 500;
    }

    .contenido-421322 {
        width: 150px;
        height: 40px;
        border: 1px solid #cccccc;
        border-radius: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        color: #213242;
        font-weight: 500;
    }

    .contenido-421422 {
        width: 150px;
        height: 40px;
        border: 1px solid #cccccc;
        border-radius: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        color: #213242;
        font-weight: 500;
    }

    .bloque-422 {
        width: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .contenido-4221 {
        width: 100%;
        overflow: hidden;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0;
    }

    .imagen-42211 {
        width: 100%;
        height: auto;
        border-radius: 10px;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
    }

    .seccion-5 {
        width: 100%;
        min-height: 100vh;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .modulo-51 {
        width: 70%;
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
    }

    .bloque-511 {
        width: 18%;
        display: flex;
        flex-direction: column;
        gap: 30px;
    }

    .bloque-512 {
        width: 18%;
        display: flex;
        flex-direction: column;
        gap: 30px;
    }

    .bloque-513 {
        width: 18%;
        display: flex;
        flex-direction: column;
        gap: 30px;
    }

    .bloque-514 {
        width: 18%;
        display: flex;
        flex-direction: column;
        gap: 30px;
    }

    .bloque-515 {
        width: 18%;
        display: flex;
        flex-direction: column;
        gap: 30px;
    }

    .contenido-5111 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5112 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5113 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5121 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5122 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5123 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5124 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5125 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5131 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5132 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5133 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5134 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5141 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5142 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5143 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5151 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5152 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5153 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5154 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5155 {
        display: flex;
        flex-direction: column;
    }

    .texto-51111 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51121 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51131 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51211 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51221 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51231 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51241 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51251 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51311 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51321 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51331 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51341 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51411 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51421 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51431 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51511 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51521 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51531 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51541 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51551 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51112 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51122 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51132 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51212 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51222 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51232 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51242 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51252 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51312 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51322 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51332 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51342 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51412 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51422 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51432 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51512 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51522 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51532 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51542 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51552 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .modulo-52 {
        width: 70%;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
        margin-top: 60px;
        border-top: 1px solid #eeeeee;
        padding-top: 50px;
    }

    .bloque-521 {
        display: flex;
        flex-direction: column;
        width: 40%;
    }

    .bloque-522 {
        display: flex;
        flex-direction: column;
        width: 55%;
    }

    .texto-5211 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 12px;
    }

    .texto-5221 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 12px;
    }

    .texto-5212 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.6;
    }

    .texto-5222 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.6;
    }
}

@media (min-width: 1025px) and (max-width: 1280px) {

    .seccion-1 {
        width: 100%;
        min-height: 100vh;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .modulo-11 {
        width: 900px;
        height: 370px;
        display: flex;
        align-items: flex-end;
        justify-content: flex-end;
    }

    .bloque-111 {
        width: 600px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .icono-1111 {
        width: 100%;
        display: block;
    }

    .modulo-12 {
        width: 900px;
        height: 120px;
        background-color: #ffffff;
        border-radius: 30px;
        display: flex;
        align-items: center;
        justify-content: space-around;
        box-shadow: 0 10px 40px rgba(0, 0, 0, 0.05);
        padding: 0 25px;
        margin-bottom: 30px;
    }

    .bloque-121 {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        cursor: pointer;
    }

    .contenido-1211 {
        width: 60px;
        height: 60px;
        border: 1px solid #ff6600;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 10px;
    }

    .icono-12111 {
        width: 32px;
    }

    .texto-1212 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        color: #000000;
        font-weight: 600;
    }

    /* ---------------------------------------------------------
       SECCIÓN 2: Bloques de Video (Grid de Proyectos)
       --------------------------------------------------------- */
    .seccion-2 {
        width: 100%;
        min-height: 100vh;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 60px 0;
    }

    .modulo-21 {
        width: 71vw;
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        margin-bottom: 40px;
        position: relative;
    }

    .modulo-21::before {
        content: '';
        position: absolute;
        top: -20px;
        left: 0;
        width: 30px;
        height: 15px;
        background-color: #ff3b30;
        border-radius: 40px 40px 0 0;
    }

    .bloque-211 {
        display: flex;
        flex-direction: column;
    }

    .texto-2111 {
        font-family: 'Outfit', sans-serif;
        font-size: 24px;
        color: #213242;
        font-weight: 700;
        letter-spacing: -0.5px;
    }

    .texto-2111-alt {
        color: #777777;
        font-weight: 300;
    }

    .bloque-212 {
        display: flex;
        align-items: center;
        gap: 10px;
        text-decoration: none;
        cursor: pointer;
    }

    .texto-2121 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        color: #ff3b30;
        font-weight: 600;
        text-decoration: none;
    }

    .icono-2122 {
        width: 30px;
        height: 30px;
        background-color: #ff3b30;
        color: #ffffff;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 14px;
    }

    .modulo-22 {
        width: 100%;
        display: flex;
        justify-content: center;
        gap: 2.5vw;
    }

    .bloque-221 {
        position: relative;
        width: 22vw;
        aspect-ratio: 9 / 16;
        border-radius: 15px;
        overflow: hidden;
        cursor: pointer;
        transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    }


    .bloque-222 {
        position: relative;
        width: 22vw;
        aspect-ratio: 9 / 16;
        border-radius: 15px;
        overflow: hidden;
        cursor: pointer;
        transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    }


    .bloque-223 {
        position: relative;
        width: 22vw;
        aspect-ratio: 9 / 16;
        border-radius: 15px;
        overflow: hidden;
        cursor: pointer;
        transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    }


    .contenido-2211 {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
    }

    .contenido-2221 {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
    }

    .contenido-2231 {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
    }

    .video-22111 {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .video-22211 {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .video-22311 {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .bloque-221::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 50%;
        background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, transparent 100%);
        z-index: 1;
    }

    .bloque-222::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 50%;
        background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, transparent 100%);
        z-index: 1;
    }

    .bloque-223::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 50%;
        background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, transparent 100%);
        z-index: 1;
    }

    .contenido-2212 {
        position: absolute;
        top: 20px;
        right: 20px;
        background-color: #003cff;
        padding: 6px 15px;
        border-radius: 15px;
        z-index: 2;
        text-decoration: none;
        backdrop-filter: blur(5px);
    }

    .contenido-2222 {
        position: absolute;
        top: 20px;
        right: 20px;
        background-color: #003cff;
        padding: 6px 15px;
        border-radius: 15px;
        z-index: 2;
        text-decoration: none;
        backdrop-filter: blur(5px);
    }

    .contenido-2232 {
        position: absolute;
        top: 20px;
        right: 20px;
        background-color: #003cff;
        padding: 6px 15px;
        border-radius: 15px;
        z-index: 2;
        text-decoration: none;
        backdrop-filter: blur(5px);
    }

    .texto-22121 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        color: #ffffff;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 1px;
    }

    .texto-22221 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        color: #ffffff;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 1px;
    }

    .texto-22321 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        color: #ffffff;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 1px;
    }

    .seccion-3 {
        width: 100%;
        min-height: 100vh;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 60px 0;
    }

    .modulo-31 {
        width: 70%;
        display: flex;
        flex-direction: column;
        margin-bottom: 50px;
    }

    .bloque-311 {
        width: 100%;
        margin-bottom: 30px;
    }

    .texto-3111 {
        font-family: 'Outfit', sans-serif;
        font-size: 28px;
        color: #213242;
        font-weight: 600;
    }

    .bloque-312 {
        width: 100%;
        display: flex;
        justify-content: space-between;
        gap: 20px;
    }

    .contenido-3121 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3122 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3123 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3124 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3125 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-31211 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31221 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31231 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31241 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31251 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .imagen-312111 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312211 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312311 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312411 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312511 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .contenido-31212 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31222 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31232 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31242 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31252 {
        display: flex;
        flex-direction: column;
    }

    .texto-312121 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312221 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312321 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312421 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312521 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312122 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312222 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312322 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312422 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312522 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .modulo-32 {
        width: 70%;
        display: flex;
        flex-direction: column;
    }

    .bloque-321 {
        width: 100%;
        margin-bottom: 40px;
    }

    .texto-3211 {
        font-family: 'Outfit', sans-serif;
        font-size: 28px;
        color: #213242;
        font-weight: 600;
    }

    .bloque-322 {
        width: 100%;
        display: flex;
        justify-content: space-between;
        gap: 20px;
    }

    .contenido-3221 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3222 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3223 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3224 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3225 {
        width: 19%;
        display: flex;
        flex-direction: column;
    }

    .contenido-32211 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32221 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32231 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32241 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32251 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .imagen-322111 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322211 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322311 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322411 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322511 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .contenido-32212 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32222 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32232 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32242 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32252 {
        display: flex;
        flex-direction: column;
    }

    .texto-322121 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322221 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322321 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322421 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322521 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322122 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-322222 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-322322 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-322422 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-322522 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .seccion-4 {
        width: 100%;
        min-height: 100vh;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 20px 0;
        gap: 30px;
    }

    .modulo-41 {
        width: 70%;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .bloque-411 {
        width: 100%;
        display: flex;
        justify-content: center;
    }

    .bloque-412 {
        width: 100%;
        display: flex;
        justify-content: center;
    }

    .texto-4111 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        color: #ff6600;
        font-weight: 600;
        margin-bottom: 15px;
        text-align: center;
    }

    .texto-4121 {
        font-family: 'Outfit', sans-serif;
        font-size: 36px;
        color: #213242;
        font-weight: 300;
        max-width: 750px;
        text-align: center;
    }

    .modulo-42 {
        width: 70%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .bloque-421 {
        width: 40%;
        display: flex;
        flex-direction: column;
    }

    .contenido-4211 {
        width: 100%;
        border-bottom: 1px solid #eeeeee;
        padding: 15px 0;
        cursor: pointer;
        display: flex;
        flex-direction: column;
    }

    .contenido-4212 {
        width: 100%;
        border-bottom: 1px solid #eeeeee;
        padding: 15px 0;
        cursor: pointer;
        display: flex;
        flex-direction: column;
    }

    .contenido-4213 {
        width: 100%;
        border-bottom: 1px solid #eeeeee;
        padding: 15px 0;
        cursor: pointer;
        display: flex;
        flex-direction: column;
    }

    .contenido-4214 {
        width: 100%;
        border-bottom: 1px solid #eeeeee;
        padding: 15px 0;
        cursor: pointer;
        display: flex;
        flex-direction: column;
    }

    .contenido-42111 {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .contenido-42121 {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .contenido-42131 {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .contenido-42141 {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .texto-421111 {
        font-family: 'Outfit', sans-serif;
        font-size: 20px;
        font-weight: 400;
        color: #777777;
    }

    .texto-421211 {
        font-family: 'Outfit', sans-serif;
        font-size: 20px;
        font-weight: 400;
        color: #777777;
    }

    .texto-421311 {
        font-family: 'Outfit', sans-serif;
        font-size: 20px;
        font-weight: 400;
        color: #777777;
    }

    .texto-421411 {
        font-family: 'Outfit', sans-serif;
        font-size: 20px;
        font-weight: 400;
        color: #777777;
    }

    .contenido-42112 {
        display: none;
        padding-top: 20px;
        flex-direction: column;
        gap: 20px;
    }

    .contenido-42122 {
        display: none;
        padding-top: 20px;
        flex-direction: column;
        gap: 20px;
    }

    .contenido-42132 {
        display: none;
        padding-top: 20px;
        flex-direction: column;
        gap: 20px;
    }

    .contenido-42142 {
        display: none;
        padding-top: 20px;
        flex-direction: column;
        gap: 20px;
    }

    /* Estados activos (1:1) */
    .bloque-421>div.activo .texto-421111 {
        color: #213242;
        font-weight: 600;
    }

    .bloque-421>div.activo .texto-421211 {
        color: #213242;
        font-weight: 600;
    }

    .bloque-421>div.activo .texto-421311 {
        color: #213242;
        font-weight: 600;
    }

    .bloque-421>div.activo .texto-421411 {
        color: #213242;
        font-weight: 600;
    }

    .bloque-421>div.activo .contenido-42112 {
        display: flex;
    }

    .bloque-421>div.activo .contenido-42122 {
        display: flex;
    }

    .bloque-421>div.activo .contenido-42132 {
        display: flex;
    }

    .bloque-421>div.activo .contenido-42142 {
        display: flex;
    }

    .texto-421121 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        color: #777777;
        line-height: 1.6;
    }

    .texto-421221 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        color: #777777;
        line-height: 1.6;
    }

    .texto-421321 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        color: #777777;
        line-height: 1.6;
    }

    .texto-421421 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        color: #777777;
        line-height: 1.6;
    }

    .contenido-421122 {
        width: 150px;
        height: 40px;
        border: 1px solid #cccccc;
        border-radius: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        color: #213242;
        font-weight: 500;
    }

    .contenido-421222 {
        width: 150px;
        height: 40px;
        border: 1px solid #cccccc;
        border-radius: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        color: #213242;
        font-weight: 500;
    }

    .contenido-421322 {
        width: 150px;
        height: 40px;
        border: 1px solid #cccccc;
        border-radius: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        color: #213242;
        font-weight: 500;
    }

    .contenido-421422 {
        width: 150px;
        height: 40px;
        border: 1px solid #cccccc;
        border-radius: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        color: #213242;
        font-weight: 500;
    }

    .bloque-422 {
        width: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .contenido-4221 {
        width: 100%;
        overflow: hidden;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0;
    }

    .imagen-42211 {
        width: 100%;
        height: auto;
        border-radius: 10px;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
    }

    .seccion-5 {
        width: 100%;
        min-height: 100vh;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .modulo-51 {
        width: 70%;
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
    }

    .bloque-511 {
        width: 18%;
        display: flex;
        flex-direction: column;
        gap: 25px;
    }

    .bloque-512 {
        width: 18%;
        display: flex;
        flex-direction: column;
        gap: 25px;
    }

    .bloque-513 {
        width: 18%;
        display: flex;
        flex-direction: column;
        gap: 25px;
    }

    .bloque-514 {
        width: 18%;
        display: flex;
        flex-direction: column;
        gap: 25px;
    }

    .bloque-515 {
        width: 18%;
        display: flex;
        flex-direction: column;
        gap: 25px;
    }

    .contenido-5111 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5112 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5113 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5121 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5122 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5123 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5124 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5125 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5131 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5132 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5133 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5134 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5141 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5142 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5143 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5151 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5152 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5153 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5154 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5155 {
        display: flex;
        flex-direction: column;
    }

    .texto-51111 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51121 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51131 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51211 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51221 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51231 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51241 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51251 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51311 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51321 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51331 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51341 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51411 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51421 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51431 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51511 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51521 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51531 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51541 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51551 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51112 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51122 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51132 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51212 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51222 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51232 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51242 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51252 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51312 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51322 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51332 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51342 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51412 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51422 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51432 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51512 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51522 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51532 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51542 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51552 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .modulo-52 {
        width: 70%;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
        margin-top: 50px;
        border-top: 1px solid #eeeeee;
        padding-top: 40px;
    }

    .bloque-521 {
        display: flex;
        flex-direction: column;
        width: 40%;
    }

    .bloque-522 {
        display: flex;
        flex-direction: column;
        width: 55%;
    }

    .texto-5211 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 12px;
    }

    .texto-5221 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 12px;
    }

    .texto-5212 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.6;
    }

    .texto-5222 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.6;
    }
}

@media (min-width: 768px) and (max-width: 1024px) {

    .seccion-1 {
        width: 100%;
        min-height: 100vh;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .modulo-11 {
        width: 700px;
        height: 350px;
        display: flex;
        align-items: flex-end;
        justify-content: flex-end;
    }

    .bloque-111 {
        width: 500px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .icono-1111 {
        width: 100%;
        display: block;
    }

    .modulo-12 {
        width: 700px;
        height: 100px;
        background-color: #ffffff;
        border-radius: 30px;
        display: flex;
        align-items: center;
        justify-content: space-around;
        box-shadow: 0 10px 40px rgba(0, 0, 0, 0.05);
        padding: 0 25px;
        margin-bottom: 30px;
    }

    .bloque-121 {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        cursor: pointer;
    }

    .contenido-1211 {
        width: 50px;
        height: 50px;
        border: 1px solid #ff6600;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 10px;
    }

    .icono-12111 {
        width: 28px;
    }

    .texto-1212 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        color: #000000;
        font-weight: 600;
    }

    /* ---------------------------------------------------------
       SECCIÓN 2: Bloques de Video (Grid de Proyectos)
       --------------------------------------------------------- */
    .seccion-2 {
        width: 100%;
        min-height: 100vh;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 15px 0;
    }

    .modulo-21 {
        width: 80%;
        display: flex;
        justify-content: center;
        align-items: flex-end;
        margin-bottom: 40px;
        position: relative;
        gap: 20px;
    }

    .bloque-211 {
        display: flex;
        flex-direction: column;
        position: relative;
    }

    .bloque-211::before {
        content: '';
        position: absolute;
        top: -20px;
        left: 0;
        width: 30px;
        height: 15px;
        background-color: #ff3b30;
        border-radius: 40px 40px 0 0;
    }

    .texto-2111 {
        font-family: 'Outfit', sans-serif;
        font-size: 24px;
        color: #213242;
        font-weight: 700;
        letter-spacing: -0.5px;
    }

    .texto-2111-alt {
        color: #777777;
        font-weight: 300;
    }

    .bloque-212 {
        display: flex;
        align-items: center;
        gap: 10px;
        text-decoration: none;
        cursor: pointer;
    }

    .texto-2121 {
        display: none;
    }

    .icono-2122 {
        width: 30px;
        height: 30px;
        background-color: #ff3b30;
        color: #ffffff;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 14px;
    }

    .modulo-22 {
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 40px;
    }

    .bloque-221 {
        position: relative;
        width: 380px;
        aspect-ratio: 9 / 16;
        border-radius: 15px;
        overflow: hidden;
        cursor: pointer;
        transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    }


    .bloque-222 {
        position: relative;
        width: 380px;
        aspect-ratio: 9 / 16;
        border-radius: 15px;
        overflow: hidden;
        cursor: pointer;
        transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    }


    .bloque-223 {
        position: relative;
        width: 380px;
        aspect-ratio: 9 / 16;
        border-radius: 15px;
        overflow: hidden;
        cursor: pointer;
        transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    }


    .contenido-2211 {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
    }

    .contenido-2221 {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
    }

    .contenido-2231 {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
    }

    .video-22111 {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .video-22211 {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .video-22311 {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .bloque-221::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 50%;
        background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, transparent 100%);
        z-index: 1;
    }

    .bloque-222::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 50%;
        background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, transparent 100%);
        z-index: 1;
    }

    .bloque-223::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 50%;
        background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, transparent 100%);
        z-index: 1;
    }

    .contenido-2212 {
        position: absolute;
        top: 20px;
        right: 20px;
        background-color: #003cff;
        padding: 6px 15px;
        border-radius: 15px;
        z-index: 2;
        text-decoration: none;
        backdrop-filter: blur(5px);
    }

    .contenido-2222 {
        position: absolute;
        top: 20px;
        right: 20px;
        background-color: #003cff;
        padding: 6px 15px;
        border-radius: 15px;
        z-index: 2;
        text-decoration: none;
        backdrop-filter: blur(5px);
    }

    .contenido-2232 {
        position: absolute;
        top: 20px;
        right: 20px;
        background-color: #003cff;
        padding: 6px 15px;
        border-radius: 15px;
        z-index: 2;
        text-decoration: none;
        backdrop-filter: blur(5px);
    }

    .texto-22121 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        color: #ffffff;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 1px;
    }

    .texto-22221 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        color: #ffffff;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 1px;
    }

    .texto-22321 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        color: #ffffff;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 1px;
    }

    .seccion-3 {
        width: 100%;
        min-height: 100vh;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 60px 0;
    }

    .modulo-31 {
        width: 85%;
        display: flex;
        flex-direction: column;
        margin-bottom: 50px;
    }

    .bloque-311 {
        width: 100%;
        margin-bottom: 30px;
    }

    .texto-3111 {
        font-family: 'Outfit', sans-serif;
        font-size: 28px;
        color: #213242;
        font-weight: 600;
        text-align: center;
    }

    .bloque-312 {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 30px;
    }

    .contenido-3121 {
        width: 30%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3122 {
        width: 30%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3123 {
        width: 30%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3124 {
        width: 30%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3125 {
        width: 30%;
        display: flex;
        flex-direction: column;
    }

    .contenido-31211 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31221 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31231 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31241 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31251 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .imagen-312111 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312211 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312311 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312411 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312511 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .contenido-31212 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31222 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31232 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31242 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31252 {
        display: flex;
        flex-direction: column;
    }

    .texto-312121 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312221 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312321 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312421 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312521 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312122 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312222 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312322 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312422 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312522 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .modulo-32 {
        width: 85%;
        display: flex;
        flex-direction: column;
    }

    .bloque-321 {
        width: 100%;
        margin-bottom: 40px;
    }

    .texto-3211 {
        font-family: 'Outfit', sans-serif;
        font-size: 28px;
        color: #213242;
        font-weight: 600;
        text-align: center;
    }

    .bloque-322 {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 30px;
    }

    .contenido-3221 {
        width: 30%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3222 {
        width: 30%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3223 {
        width: 30%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3224 {
        width: 30%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3225 {
        width: 30%;
        display: flex;
        flex-direction: column;
    }

    .contenido-32211 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32221 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32231 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32241 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32251 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .imagen-322111 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322211 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322311 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322411 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322511 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .contenido-32212 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32222 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32232 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32242 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32252 {
        display: flex;
        flex-direction: column;
    }

    .texto-322121 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322221 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322321 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322421 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322521 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322122 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-322222 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-322322 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-322422 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-322522 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .seccion-4 {
        width: 100%;
        min-height: 100vh;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 20px 0;
        gap: 30px;
    }

    .modulo-41 {
        width: 70%;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .bloque-411 {
        width: 100%;
        display: flex;
        justify-content: center;
    }

    .bloque-412 {
        width: 100%;
        display: flex;
        justify-content: center;
    }

    .texto-4111 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        color: #ff6600;
        font-weight: 600;
        margin-bottom: 15px;
        text-align: center;
    }

    .texto-4121 {
        font-family: 'Outfit', sans-serif;
        font-size: 30px;
        color: #213242;
        font-weight: 300;
        max-width: 750px;
        text-align: center;
    }

    .modulo-42 {
        width: 70%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .bloque-421 {
        width: 40%;
        display: flex;
        flex-direction: column;
    }

    .contenido-4211 {
        width: 100%;
        border-bottom: 1px solid #eeeeee;
        padding: 15px 0;
        cursor: pointer;
        display: flex;
        flex-direction: column;
    }

    .contenido-4212 {
        width: 100%;
        border-bottom: 1px solid #eeeeee;
        padding: 15px 0;
        cursor: pointer;
        display: flex;
        flex-direction: column;
    }

    .contenido-4213 {
        width: 100%;
        border-bottom: 1px solid #eeeeee;
        padding: 15px 0;
        cursor: pointer;
        display: flex;
        flex-direction: column;
    }

    .contenido-4214 {
        width: 100%;
        border-bottom: 1px solid #eeeeee;
        padding: 15px 0;
        cursor: pointer;
        display: flex;
        flex-direction: column;
    }

    .contenido-42111 {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .contenido-42121 {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .contenido-42131 {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .contenido-42141 {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .texto-421111 {
        font-family: 'Outfit', sans-serif;
        font-size: 18px;
        font-weight: 400;
        color: #777777;
    }

    .texto-421211 {
        font-family: 'Outfit', sans-serif;
        font-size: 18px;
        font-weight: 400;
        color: #777777;
    }

    .texto-421311 {
        font-family: 'Outfit', sans-serif;
        font-size: 18px;
        font-weight: 400;
        color: #777777;
    }

    .texto-421411 {
        font-family: 'Outfit', sans-serif;
        font-size: 18px;
        font-weight: 400;
        color: #777777;
    }

    .contenido-42112 {
        display: none;
        padding-top: 20px;
        flex-direction: column;
        gap: 20px;
    }

    .contenido-42122 {
        display: none;
        padding-top: 20px;
        flex-direction: column;
        gap: 20px;
    }

    .contenido-42132 {
        display: none;
        padding-top: 20px;
        flex-direction: column;
        gap: 20px;
    }

    .contenido-42142 {
        display: none;
        padding-top: 20px;
        flex-direction: column;
        gap: 20px;
    }

    /* Estados activos (1:1) */
    .bloque-421>div.activo .texto-421111 {
        color: #213242;
        font-weight: 600;
    }

    .bloque-421>div.activo .texto-421211 {
        color: #213242;
        font-weight: 600;
    }

    .bloque-421>div.activo .texto-421311 {
        color: #213242;
        font-weight: 600;
    }

    .bloque-421>div.activo .texto-421411 {
        color: #213242;
        font-weight: 600;
    }

    .bloque-421>div.activo .contenido-42112 {
        display: flex;
    }

    .bloque-421>div.activo .contenido-42122 {
        display: flex;
    }

    .bloque-421>div.activo .contenido-42132 {
        display: flex;
    }

    .bloque-421>div.activo .contenido-42142 {
        display: flex;
    }

    .texto-421121 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        line-height: 1.6;
    }

    .texto-421221 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        line-height: 1.6;
    }

    .texto-421321 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        line-height: 1.6;
    }

    .texto-421421 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        line-height: 1.6;
    }

    .contenido-421122 {
        width: 150px;
        height: 40px;
        border: 1px solid #cccccc;
        border-radius: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        color: #213242;
        font-weight: 500;
    }

    .contenido-421222 {
        width: 150px;
        height: 40px;
        border: 1px solid #cccccc;
        border-radius: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        color: #213242;
        font-weight: 500;
    }

    .contenido-421322 {
        width: 150px;
        height: 40px;
        border: 1px solid #cccccc;
        border-radius: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        color: #213242;
        font-weight: 500;
    }

    .contenido-421422 {
        width: 150px;
        height: 40px;
        border: 1px solid #cccccc;
        border-radius: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        color: #213242;
        font-weight: 500;
    }

    .bloque-422 {
        width: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .contenido-4221 {
        width: 100%;
        overflow: hidden;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0;
    }

    .imagen-42211 {
        width: 100%;
        height: auto;
        border-radius: 10px;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
    }

    .seccion-5 {
        width: 100%;
        min-height: 100vh;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .modulo-51 {
        width: 90%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: flex-start;
        gap: 50px 3%;
    }

    .bloque-511 {
        width: 30%;
        display: flex;
        flex-direction: column;
        gap: 25px;
    }

    .bloque-512 {
        width: 30%;
        display: flex;
        flex-direction: column;
        gap: 25px;
    }

    .bloque-513 {
        width: 30%;
        display: flex;
        flex-direction: column;
        gap: 25px;
    }

    .bloque-514 {
        width: 30%;
        display: flex;
        flex-direction: column;
        gap: 25px;
    }

    .bloque-515 {
        width: 30%;
        display: flex;
        flex-direction: column;
        gap: 25px;
    }

    .contenido-5111 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5112 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5113 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5121 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5122 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5123 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5124 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5125 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5131 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5132 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5133 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5134 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5141 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5142 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5143 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5151 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5152 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5153 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5154 {
        display: flex;
        flex-direction: column;
    }

    .contenido-5155 {
        display: flex;
        flex-direction: column;
    }

    .texto-51111 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51121 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51131 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51211 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51221 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51231 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51241 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51251 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51311 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51321 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51331 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51341 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51411 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51421 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51431 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51511 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51521 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51531 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51541 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51551 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51112 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51122 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51132 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51212 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51222 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51232 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51242 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51252 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51312 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51322 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51332 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51342 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51412 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51422 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51432 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51512 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51522 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51532 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51542 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51552 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .modulo-52 {
        width: 90%;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
        margin-top: 50px;
        border-top: 1px solid #eeeeee;
        padding-top: 40px;
    }

    .bloque-521 {
        display: flex;
        flex-direction: column;
        width: 40%;
    }

    .bloque-522 {
        display: flex;
        flex-direction: column;
        width: 55%;
    }

    .texto-5211 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 12px;
    }

    .texto-5221 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 12px;
    }

    .texto-5212 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.6;
    }

    .texto-5222 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 400;
        color: #777777;
        line-height: 1.6;
    }
}

@media (min-width: 481px) and (max-width: 767px) {

    .seccion-1 {
        width: 100%;
        min-height: 100vh;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .modulo-11 {
        width: 90%;
        height: 280px;
        display: flex;
        align-items: flex-end;
        justify-content: flex-end;
    }

    .bloque-111 {
        width: 100%;
        max-width: 450px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .icono-1111 {
        width: 100%;
        display: block;
    }

    .modulo-12 {
        width: 90%;
        height: 110px;
        background-color: #ffffff;
        border-radius: 30px;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        box-shadow: 0 10px 40px rgba(0, 0, 0, 0.05);
        padding: 0 10px;
        margin-bottom: 30px;
        scrollbar-width: none;
        cursor: grab;
    }

    .modulo-12:active {
        cursor: grabbing;
    }

    .modulo-12::-webkit-scrollbar {
        display: none;
    }

    .bloque-121 {
        flex: 0 0 25%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        scroll-snap-align: center;
    }

    .contenido-1211 {
        width: 50px;
        height: 50px;
        border: 1px solid #ff6600;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 10px;
    }

    .icono-12111 {
        width: 28px;
    }

    .texto-1212 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        color: #000000;
        font-weight: 600;
    }

    /* ---------------------------------------------------------
       SECCIÓN 2: Bloques de Video (Grid de Proyectos)
       --------------------------------------------------------- */
    .seccion-2 {
        width: 100%;
        min-height: 100vh;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 15px 0;
    }

    .modulo-21 {
        width: 80%;
        display: flex;
        justify-content: center;
        align-items: flex-end;
        margin-bottom: 40px;
        position: relative;
        gap: 20px;
    }

    .bloque-211 {
        display: flex;
        flex-direction: column;
        position: relative;
    }

    .bloque-211::before {
        content: '';
        position: absolute;
        top: -20px;
        left: 0;
        width: 30px;
        height: 15px;
        background-color: #ff3b30;
        border-radius: 40px 40px 0 0;
    }

    .texto-2111 {
        font-family: 'Outfit', sans-serif;
        font-size: 24px;
        color: #213242;
        font-weight: 700;
        letter-spacing: -0.5px;
    }

    .texto-2111-alt {
        color: #777777;
        font-weight: 300;
    }

    .bloque-212 {
        display: flex;
        align-items: center;
        gap: 10px;
        text-decoration: none;
        cursor: pointer;
    }

    .texto-2121 {
        display: none;
    }

    .icono-2122 {
        width: 30px;
        height: 30px;
        background-color: #ff3b30;
        color: #ffffff;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 14px;
    }

    .modulo-22 {
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 40px;
    }

    .bloque-221 {
        position: relative;
        width: 380px;
        aspect-ratio: 9 / 16;
        border-radius: 15px;
        overflow: hidden;
        cursor: pointer;
        transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    }


    .bloque-222 {
        position: relative;
        width: 380px;
        aspect-ratio: 9 / 16;
        border-radius: 15px;
        overflow: hidden;
        cursor: pointer;
        transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    }


    .bloque-223 {
        position: relative;
        width: 380px;
        aspect-ratio: 9 / 16;
        border-radius: 15px;
        overflow: hidden;
        cursor: pointer;
        transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    }


    .contenido-2211 {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
    }

    .contenido-2221 {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
    }

    .contenido-2231 {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
    }

    .video-22111 {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .video-22211 {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .video-22311 {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .bloque-221::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 50%;
        background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, transparent 100%);
        z-index: 1;
    }

    .bloque-222::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 50%;
        background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, transparent 100%);
        z-index: 1;
    }

    .bloque-223::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 50%;
        background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, transparent 100%);
        z-index: 1;
    }

    .contenido-2212 {
        position: absolute;
        top: 20px;
        right: 20px;
        background-color: #003cff;
        padding: 6px 15px;
        border-radius: 15px;
        z-index: 2;
        text-decoration: none;
        backdrop-filter: blur(5px);
    }

    .contenido-2222 {
        position: absolute;
        top: 20px;
        right: 20px;
        background-color: #003cff;
        padding: 6px 15px;
        border-radius: 15px;
        z-index: 2;
        text-decoration: none;
        backdrop-filter: blur(5px);
    }

    .contenido-2232 {
        position: absolute;
        top: 20px;
        right: 20px;
        background-color: #003cff;
        padding: 6px 15px;
        border-radius: 15px;
        z-index: 2;
        text-decoration: none;
        backdrop-filter: blur(5px);
    }

    .texto-22121 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        color: #ffffff;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 1px;
    }

    .texto-22221 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        color: #ffffff;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 1px;
    }

    .texto-22321 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        color: #ffffff;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 1px;
    }

    .seccion-3 {
        width: 100%;
        min-height: 100vh;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 60px 0;
    }

    .modulo-31 {
        width: 85%;
        display: flex;
        flex-direction: column;
        margin-bottom: 50px;
    }

    .bloque-311 {
        width: 100%;
        margin-bottom: 30px;
    }

    .texto-3111 {
        font-family: 'Outfit', sans-serif;
        font-size: 22px;
        color: #213242;
        font-weight: 600;
        text-align: center;
    }

    .bloque-312 {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 20px;
    }

    .contenido-3121 {
        width: 45%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3122 {
        width: 45%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3123 {
        width: 45%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3124 {
        width: 45%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3125 {
        width: 45%;
        display: flex;
        flex-direction: column;
    }

    .contenido-31211 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31221 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31231 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31241 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31251 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .imagen-312111 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312211 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312311 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312411 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312511 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .contenido-31212 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31222 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31232 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31242 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31252 {
        display: flex;
        flex-direction: column;
    }

    .texto-312121 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312221 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312321 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312421 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312521 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312122 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312222 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312322 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312422 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312522 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .modulo-32 {
        width: 85%;
        display: flex;
        flex-direction: column;
    }

    .bloque-321 {
        width: 100%;
        margin-bottom: 40px;
    }

    .texto-3211 {
        font-family: 'Outfit', sans-serif;
        font-size: 22px;
        color: #213242;
        font-weight: 600;
        text-align: center;
    }

    .bloque-322 {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 20px;
    }

    .contenido-3221 {
        width: 45%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3222 {
        width: 45%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3223 {
        width: 45%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3224 {
        width: 45%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3225 {
        width: 45%;
        display: flex;
        flex-direction: column;
    }

    .contenido-32211 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32221 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32231 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32241 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32251 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .imagen-322111 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322211 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322311 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322411 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322511 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .contenido-32212 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32222 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32232 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32242 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32252 {
        display: flex;
        flex-direction: column;
    }

    .texto-322121 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322221 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322321 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322421 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322521 {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322122 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-322222 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-322322 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-322422 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-322522 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .seccion-4 {
        width: 100%;
        min-height: 100vh;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        padding: 60px 0;
    }

    .modulo-41 {
        width: 80%;
        margin-bottom: 40px;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .bloque-411,
    .bloque-412 {
        width: 100%;
        display: flex;
        justify-content: center;
    }

    .texto-4111 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        color: #ff6600;
        font-weight: 600;
        margin-bottom: 10px;
        text-align: center;
    }

    .texto-4121 {
        font-family: 'Outfit', sans-serif;
        font-size: 22px;
        color: #213242;
        font-weight: 300;
        text-align: center;
    }

    .modulo-42 {
        width: 80%;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    /* 1. IMAGEN (Arriba) */
    .bloque-422 {
        width: 100%;
        order: 1;
        margin-bottom: 30px;
    }

    .imagen-42211 {
        width: 100%;
        height: auto;
        border-radius: 20px;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    }

    /* 2. PUNTOS (Centro) */
    .bloque-421 {
        width: 100%;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        /* Permitimos que el contenido baje */
        justify-content: center;
        order: 2;
        gap: 15px;
        margin-bottom: 30px;
    }

    /* Cada item ahora es un contenedor pequeño para el punto */
    .contenido-4211,
    .contenido-4212,
    .contenido-4213,
    .contenido-4214 {
        display: flex;
        flex-direction: column;
        align-items: center;
        cursor: pointer;
    }

    .contenido-42111,
    .contenido-42121,
    .contenido-42131,
    .contenido-42141 {
        width: 15px;
        height: 15px;
        background-color: #e0e0e0;
        border-radius: 50%;
        transition: all 0.3s ease;
        /* Eliminamos cualquier rastro de texto interno */
        font-size: 0 !important;
        color: transparent !important;
        overflow: hidden;
    }

    /* Ocultación absoluta de hijos */
    .contenido-42111 *,
    .contenido-42121 *,
    .contenido-42131 *,
    .contenido-42141 * {
        display: none !important;
    }

    .bloque-421>div.activo .contenido-42111,
    .bloque-421>div.activo .contenido-42121,
    .bloque-421>div.activo .contenido-42131,
    .bloque-421>div.activo .contenido-42141 {
        background-color: #ff6600;
        transform: scale(1.3);
    }

    /* 3. CONTENIDO (Abajo) */
    .contenido-42112,
    .contenido-42122,
    .contenido-42132,
    .contenido-42142 {
        display: none;
        width: 100%;
        /* Forzamos ancho total */
        flex-direction: column;
        align-items: center;
        text-align: center;
        margin-top: 20px;
        order: 10;
        /* Siempre al final */
    }

    /* Truco para que el contenido activo ocupe su propia fila en un flex wrap */
    .bloque-421>div.activo .contenido-42112,
    .bloque-421>div.activo .contenido-42122,
    .bloque-421>div.activo .contenido-42132,
    .bloque-421>div.activo .contenido-42142 {
        display: flex;
        position: absolute;
        /* Lo sacamos del flujo de los puntos para que no los mueva */
        left: 0;
        right: 0;
        margin-top: 50px;
    }

    /* Ajustamos el modulo-42 para que tenga espacio para el contenido absoluto */
    .modulo-42 {
        padding-bottom: 250px;
    }

    /* Títulos dinámicos de las apps */
    .bloque-421>div.activo .contenido-42112::before {
        content: "link.emphorio.com";
        font-family: 'Outfit', sans-serif;
        font-size: 20px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 10px;
    }

    .bloque-421>div.activo .contenido-42122::before {
        content: "style.emphorio.com";
        font-family: 'Outfit', sans-serif;
        font-size: 20px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 10px;
    }

    .bloque-421>div.activo .contenido-42132::before {
        content: "dental.emphorio.com";
        font-family: 'Outfit', sans-serif;
        font-size: 20px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 10px;
    }

    .bloque-421>div.activo .contenido-42142::before {
        content: "petshop.emphorio.com";
        font-family: 'Outfit', sans-serif;
        font-size: 20px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 10px;
    }


    .texto-421121,
    .texto-421221,
    .texto-421321,
    .texto-421421 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        color: #777777;
        margin-bottom: 20px;
    }

    .contenido-421122,
    .contenido-421222,
    .contenido-421322,
    .contenido-421422 {
        width: 160px;
        height: 40px;
        border: 1px solid #213242;
        border-radius: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 12px;
        color: #213242;
        font-weight: 600;
        text-decoration: none;
    }

    .seccion-5 {
        width: 100%;
        min-height: auto;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        padding: 40px 0;
    }

    .modulo-51 {
        width: 80%;
        display: flex;
        flex-direction: column;
        gap: 0;
        margin-bottom: 20px;
    }

    .modulo-52 {
        width: 80%;
        display: flex;
        flex-direction: column;
        gap: 0;
        margin-top: 50px;
        border-top: 1px solid #eeeeee;
        padding-top: 40px;
        margin-bottom: 20px;
    }

    .bloque-511,
    .bloque-512,
    .bloque-513,
    .bloque-514,
    .bloque-515,
    .bloque-521,
    .bloque-522 {
        width: 100%;
        display: flex;
        flex-direction: column;
    }

    /* Estilo de cada item del acordeón */
    [class^="contenido-51"],
    .bloque-521,
    .bloque-522 {
        width: 100%;
        border-bottom: 1px solid #eeeeee;
        padding: 15px 0;
    }

    /* Estilo de los títulos del acordeón */
    [class^="contenido-51"] h4,
    .bloque-521 h4,
    .bloque-522 h4 {
        margin-bottom: 0;
        display: flex;
        justify-content: space-between;
        align-items: center;
        transition: all 0.3s ease;
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        font-weight: 600;
        color: #213242;
    }

    /* Indicador + */
    [class^="contenido-51"] h4::after,
    .bloque-521 h4::after,
    .bloque-522 h4::after {
        content: '+';
        font-size: 18px;
        color: #ff6600;
        transition: transform 0.3s ease;
    }

    /* Ocultar párrafos por defecto */
    [class^="contenido-51"] p,
    .bloque-521 p,
    .bloque-522 p {
        display: none;
        padding-top: 15px;
        animation: fadeIn 0.4s ease forwards;
    }

    /* Estado Activo */
    [class^="contenido-51"].activo p,
    .bloque-521.activo p,
    .bloque-522.activo p {
        display: block;
    }

    [class^="contenido-51"].activo h4::after,
    .bloque-521.activo h4::after,
    .bloque-522.activo h4::after {
        transform: rotate(45deg);
        /* El + se vuelve una x */
    }

    @keyframes fadeIn {
        from {
            opacity: 0;
            transform: translateY(-10px);
        }

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

    .texto-51111 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51121 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51131 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51211 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51221 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51231 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51241 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51251 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51311 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51321 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51331 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51341 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51411 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51421 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51431 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51511 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51521 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51531 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51541 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51551 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51112 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51122 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51132 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51212 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51222 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51232 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51242 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51252 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51312 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51322 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51332 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51342 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51412 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51422 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51432 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51512 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51522 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51532 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51542 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51552 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }


}

@media (min-width: 320px) and (max-width: 480px) {

    .seccion-1 {
        width: 100%;
        min-height: 100vh;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .modulo-11 {
        width: 90%;
        height: 220px;
        display: flex;
        align-items: flex-end;
        justify-content: flex-end;
    }

    .bloque-111 {
        width: 100%;
        max-width: 450px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .icono-1111 {
        width: 100%;
        display: block;
    }

    .modulo-12 {
        width: 90%;
        height: 100px;
        background-color: #ffffff;
        border-radius: 30px;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        box-shadow: 0 10px 40px rgba(0, 0, 0, 0.05);
        padding: 0 10px;
        margin-bottom: 30px;
        scrollbar-width: none;
        cursor: grab;
    }

    .modulo-12:active {
        cursor: grabbing;
    }

    .modulo-12::-webkit-scrollbar {
        display: none;
    }

    .bloque-121 {
        flex: 0 0 25%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        scroll-snap-align: center;
    }

    .contenido-1211 {
        width: 45px;
        height: 45px;
        border: 1px solid #ff6600;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 10px;
    }

    .icono-12111 {
        width: 24px;
    }

    .texto-1212 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        color: #000000;
        font-weight: 600;
    }

    /* ---------------------------------------------------------
       SECCIÓN 2: Bloques de Video (Grid de Proyectos)
       --------------------------------------------------------- */
    .seccion-2 {
        width: 100%;
        min-height: 100vh;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 15px 0;
    }

    .modulo-21 {
        width: 80%;
        display: flex;
        justify-content: center;
        align-items: flex-end;
        margin-bottom: 40px;
        position: relative;
        gap: 20px;
    }

    .bloque-211 {
        display: flex;
        flex-direction: column;
        position: relative;
    }

    .bloque-211::before {
        content: '';
        position: absolute;
        top: -20px;
        left: 0;
        width: 30px;
        height: 15px;
        background-color: #ff3b30;
        border-radius: 40px 40px 0 0;
    }

    .texto-2111 {
        font-family: 'Outfit', sans-serif;
        font-size: 20px;
        color: #213242;
        font-weight: 700;
        letter-spacing: -0.5px;
    }

    .texto-2111-alt {
        color: #777777;
        font-weight: 300;
    }

    .bloque-212 {
        display: flex;
        align-items: center;
        gap: 10px;
        text-decoration: none;
        cursor: pointer;
    }

    .texto-2121 {
        display: none;
    }

    .icono-2122 {
        width: 30px;
        height: 30px;
        background-color: #ff3b30;
        color: #ffffff;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 14px;
    }

    .modulo-22 {
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 40px;
    }

    .bloque-221 {
        position: relative;
        width: 300px;
        aspect-ratio: 9 / 16;
        border-radius: 15px;
        overflow: hidden;
        cursor: pointer;
        transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    }


    .bloque-222 {
        position: relative;
        width: 300px;
        aspect-ratio: 9 / 16;
        border-radius: 15px;
        overflow: hidden;
        cursor: pointer;
        transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    }


    .bloque-223 {
        position: relative;
        width: 300px;
        aspect-ratio: 9 / 16;
        border-radius: 15px;
        overflow: hidden;
        cursor: pointer;
        transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    }


    .contenido-2211 {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
    }

    .contenido-2221 {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
    }

    .contenido-2231 {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
    }

    .video-22111 {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .video-22211 {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .video-22311 {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .bloque-221::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 50%;
        background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, transparent 100%);
        z-index: 1;
    }

    .bloque-222::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 50%;
        background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, transparent 100%);
        z-index: 1;
    }

    .bloque-223::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 50%;
        background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, transparent 100%);
        z-index: 1;
    }

    .contenido-2212 {
        position: absolute;
        top: 20px;
        right: 20px;
        background-color: #003cff;
        padding: 6px 15px;
        border-radius: 15px;
        z-index: 2;
        text-decoration: none;
        backdrop-filter: blur(5px);
    }

    .contenido-2222 {
        position: absolute;
        top: 20px;
        right: 20px;
        background-color: #003cff;
        padding: 6px 15px;
        border-radius: 15px;
        z-index: 2;
        text-decoration: none;
        backdrop-filter: blur(5px);
    }

    .contenido-2232 {
        position: absolute;
        top: 20px;
        right: 20px;
        background-color: #003cff;
        padding: 6px 15px;
        border-radius: 15px;
        z-index: 2;
        text-decoration: none;
        backdrop-filter: blur(5px);
    }

    .texto-22121 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        color: #ffffff;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 1px;
    }

    .texto-22221 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        color: #ffffff;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 1px;
    }

    .texto-22321 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        color: #ffffff;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 1px;
    }

    .seccion-3 {
        width: 100%;
        min-height: 100vh;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 40px 0;
    }

    .modulo-31 {
        width: 85%;
        display: flex;
        flex-direction: column;
        margin-bottom: 50px;
    }

    .bloque-311 {
        width: 100%;
        margin-bottom: 30px;
    }

    .texto-3111 {
        font-family: 'Outfit', sans-serif;
        font-size: 18px;
        color: #213242;
        font-weight: 600;
        text-align: center;
    }

    .bloque-312 {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 20px;
    }

    .contenido-3121 {
        width: 45%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3122 {
        width: 45%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3123 {
        width: 45%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3124 {
        width: 45%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3125 {
        width: 45%;
        display: flex;
        flex-direction: column;
    }

    .contenido-31211 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31221 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31231 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31241 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-31251 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .imagen-312111 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312211 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312311 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312411 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-312511 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .contenido-31212 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31222 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31232 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31242 {
        display: flex;
        flex-direction: column;
    }

    .contenido-31252 {
        display: flex;
        flex-direction: column;
    }

    .texto-312121,
    .texto-312221,
    .texto-312321,
    .texto-312421,
    .texto-312521 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-312122 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312222 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312322 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312422 {
        font-family: 'Outfit', sans-serif;
        font-size: 13px;
        color: #777777;
        font-weight: 400;
    }

    .texto-312122,
    .texto-312222,
    .texto-312322,
    .texto-312422,
    .texto-312522 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        color: #777777;
        font-weight: 400;
    }

    .modulo-32 {
        width: 85%;
        display: flex;
        flex-direction: column;
    }

    .bloque-321 {
        width: 100%;
        margin-bottom: 40px;
    }

    .texto-3211 {
        font-family: 'Outfit', sans-serif;
        font-size: 18px;
        color: #213242;
        font-weight: 600;
        text-align: center;
    }

    .bloque-322 {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 20px;
    }

    .contenido-3221 {
        width: 45%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3222 {
        width: 45%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3223 {
        width: 45%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3224 {
        width: 45%;
        display: flex;
        flex-direction: column;
    }

    .contenido-3225 {
        width: 45%;
        display: flex;
        flex-direction: column;
    }

    .contenido-32211 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32221 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32231 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32241 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .contenido-32251 {
        width: 100%;
        aspect-ratio: 1/1;
        background-color: #f5f7f9;
        border-radius: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-bottom: 15px;
    }

    .imagen-322111 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322211 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322311 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322411 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .imagen-322511 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
    }

    .contenido-32212 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32222 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32232 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32242 {
        display: flex;
        flex-direction: column;
    }

    .contenido-32252 {
        display: flex;
        flex-direction: column;
    }

    .texto-322121,
    .texto-322221,
    .texto-322321,
    .texto-322421,
    .texto-322521 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        color: #213242;
        font-weight: 600;
        margin-bottom: 4px;
    }

    .texto-322122,
    .texto-322222,
    .texto-322322,
    .texto-322422,
    .texto-322522 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        color: #777777;
        font-weight: 400;
    }

    .seccion-4 {
        width: 100%;
        min-height: 100vh;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        padding: 60px 0;
    }

    .modulo-41 {
        width: 80%;
        margin-bottom: 40px;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .bloque-411,
    .bloque-412 {
        width: 100%;
        display: flex;
        justify-content: center;
    }

    .texto-4111 {
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        color: #ff6600;
        font-weight: 600;
        margin-bottom: 10px;
        text-align: center;
    }

    .texto-4121 {
        font-family: 'Outfit', sans-serif;
        font-size: 18px;
        color: #213242;
        font-weight: 300;
        text-align: center;
    }

    .modulo-42 {
        width: 80%;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    /* 1. IMAGEN (Arriba) */
    .bloque-422 {
        width: 100%;
        order: 1;
        margin-bottom: 30px;
    }

    .imagen-42211 {
        width: 100%;
        height: auto;
        border-radius: 20px;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    }

    /* 2. PUNTOS (Centro) */
    .bloque-421 {
        width: 100%;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        /* Permitimos que el contenido baje */
        justify-content: center;
        order: 2;
        gap: 10px;
        margin-bottom: 30px;
    }

    /* Cada item ahora es un contenedor pequeño para el punto */
    .contenido-4211,
    .contenido-4212,
    .contenido-4213,
    .contenido-4214 {
        display: flex;
        flex-direction: column;
        align-items: center;
        cursor: pointer;
    }

    .contenido-42111,
    .contenido-42121,
    .contenido-42131,
    .contenido-42141 {
        width: 12px;
        height: 12px;
        background-color: #e0e0e0;
        border-radius: 50%;
        transition: all 0.3s ease;
        /* Eliminamos cualquier rastro de texto interno */
        font-size: 0 !important;
        color: transparent !important;
        overflow: hidden;
    }

    /* Ocultación absoluta de hijos */
    .contenido-42111 *,
    .contenido-42121 *,
    .contenido-42131 *,
    .contenido-42141 * {
        display: none !important;
    }

    .bloque-421>div.activo .contenido-42111,
    .bloque-421>div.activo .contenido-42121,
    .bloque-421>div.activo .contenido-42131,
    .bloque-421>div.activo .contenido-42141 {
        background-color: #ff6600;
        transform: scale(1.3);
    }

    /* 3. CONTENIDO (Abajo) */
    .contenido-42112,
    .contenido-42122,
    .contenido-42132,
    .contenido-42142 {
        display: none;
        width: 100%;
        /* Forzamos ancho total */
        flex-direction: column;
        align-items: center;
        text-align: center;
        margin-top: 20px;
        order: 10;
        /* Siempre al final */
    }

    /* Truco para que el contenido activo ocupe su propia fila en un flex wrap */
    .bloque-421>div.activo .contenido-42112,
    .bloque-421>div.activo .contenido-42122,
    .bloque-421>div.activo .contenido-42132,
    .bloque-421>div.activo .contenido-42142 {
        display: flex;
        position: absolute;
        /* Lo sacamos del flujo de los puntos para que no los mueva */
        left: 0;
        right: 0;
        margin-top: 50px;
    }

    /* Ajustamos el modulo-42 para que tenga espacio para el contenido absoluto */
    .modulo-42 {
        padding-bottom: 220px;
    }

    /* Títulos dinámicos de las apps */
    .bloque-421>div.activo .contenido-42112::before,
    .bloque-421>div.activo .contenido-42122::before,
    .bloque-421>div.activo .contenido-42132::before,
    .bloque-421>div.activo .contenido-42142::before {
        font-family: 'Outfit', sans-serif;
        font-size: 16px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 10px;
    }

    .bloque-421>div.activo .contenido-42112::before { content: "link.emphorio.com"; }
    .bloque-421>div.activo .contenido-42122::before { content: "style.emphorio.com"; }
    .bloque-421>div.activo .contenido-42132::before { content: "dental.emphorio.com"; }
    .bloque-421>div.activo .contenido-42142::before { content: "petshop.emphorio.com"; }


    .texto-421121,
    .texto-421221,
    .texto-421321,
    .texto-421421 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        color: #777777;
        margin-bottom: 20px;
    }

    .contenido-421122,
    .contenido-421222,
    .contenido-421322,
    .contenido-421422 {
        width: 160px;
        height: 40px;
        border: 1px solid #213242;
        border-radius: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 12px;
        color: #213242;
        font-weight: 600;
        text-decoration: none;
    }

    .seccion-5 {
        width: 100%;
        min-height: auto;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        padding: 40px 0;
    }

    .modulo-51 {
        width: 80%;
        display: flex;
        flex-direction: column;
        gap: 0;
        margin-bottom: 20px;
    }

    .modulo-52 {
        width: 80%;
        display: flex;
        flex-direction: column;
        gap: 0;
        margin-top: 50px;
        border-top: 1px solid #eeeeee;
        padding-top: 40px;
        margin-bottom: 20px;
    }

    .bloque-511,
    .bloque-512,
    .bloque-513,
    .bloque-514,
    .bloque-515,
    .bloque-521,
    .bloque-522 {
        width: 100%;
        display: flex;
        flex-direction: column;
    }

    /* Estilo de cada item del acordeón */
    [class^="contenido-51"],
    .bloque-521,
    .bloque-522 {
        width: 100%;
        border-bottom: 1px solid #eeeeee;
        padding: 15px 0;
    }

    /* Estilo de los títulos del acordeón */
    [class^="contenido-51"] h4,
    .bloque-521 h4,
    .bloque-522 h4 {
        margin-bottom: 0;
        display: flex;
        justify-content: space-between;
        align-items: center;
        transition: all 0.3s ease;
        font-family: 'Outfit', sans-serif;
        font-size: 14px;
        font-weight: 600;
        color: #213242;
    }

    /* Indicador + */
    [class^="contenido-51"] h4::after,
    .bloque-521 h4::after,
    .bloque-522 h4::after {
        content: '+';
        font-size: 16px;
        color: #ff6600;
        transition: transform 0.3s ease;
    }

    /* Ocultar párrafos por defecto */
    [class^="contenido-51"] p,
    .bloque-521 p,
    .bloque-522 p {
        display: none;
        padding-top: 15px;
        animation: fadeIn 0.4s ease forwards;
    }

    /* Estado Activo */
    [class^="contenido-51"].activo p,
    .bloque-521.activo p,
    .bloque-522.activo p {
        display: block;
    }

    [class^="contenido-51"].activo h4::after,
    .bloque-521.activo h4::after,
    .bloque-522.activo h4::after {
        transform: rotate(45deg);
        /* El + se vuelve una x */
    }

    @keyframes fadeIn {
        from {
            opacity: 0;
            transform: translateY(-10px);
        }

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

    .texto-51111 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51121 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51131 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51211 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51221 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51231 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51241 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        color: #213242;
        font-weight: 700;
        margin-bottom: 8px;
    }

    .texto-51251 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51311 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51321 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51331 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51341 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51411 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51421 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51431 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51511 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51521 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51531 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51541 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51551 {
        font-family: 'Outfit', sans-serif;
        font-size: 12px;
        font-weight: 700;
        color: #213242;
        margin-bottom: 8px;
    }

    .texto-51112 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51122 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51132 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51212 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51222 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51232 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51242 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51252 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51312 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51322 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51332 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51342 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51412 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51422 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51432 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51512 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51522 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51532 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51542 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }

    .texto-51552 {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #777777;
        line-height: 1.5;
    }


}