body *{
    box-sizing: border-box;
    width: 100%;
}


body {
    position: absolute;
    right: 0;
    left: 0;
    top:0;
    margin:0;
    width: 100%;
    min-height: 100vh;
    padding: 0 max(20px, calc((100% - 1080px) / 2));
    background: #FFFFFF;
    box-sizing: border-box;
}

a{
    cursor: pointer;
    color: #FFFFFF;
}

a *{
    color:inherit;
    width: auto;
    margin: 0 auto;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    background-color: inherit;
    border-color: inherit;
}


.satelite {
    position: absolute;
    height: 1357px;
    object-fit: cover;
    width: 100%;
    left: 0;
    right: 0;
    top: -38px;
    background: linear-gradient(0deg, rgba(0, 73, 118, 0) 26vw, rgba(0, 73, 118, 0.2) 65vw, #004976 100vw);
    transform: matrix(1, 0, 0, -1, 0, 0);
}

div{
    box-sizing: border-box;
    width: 100%;
}

span{
    box-sizing: border-box;
    width: 100%;
}


.caption-principal{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-top: 250px;
    padding: 0;
    gap: 16px;
    position: relative;
    width: 856px;
    height: 234px;
}

.descripcion{
    width: 256px;
    height: 55px;
    margin:0;
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 800;
    font-size: 55px;
    line-height: 55px;
    letter-spacing: -1px;
    color: #FFFFFF;
    flex: none;
    order: 0;
    flex-grow: 0;
}

.entradilla{
    width: 520px;
    height: 81px;
    font-family: 'Source Sans 3';
    font-style: normal;
    font-weight: 400;
    font-size: 22px;
    line-height: 27px;
    color: #FFFFFF;
    flex: none;
    order: 1;
    flex-grow: 0;
}

.frame32 {
    order: 2;
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    gap: 30px;
    width: 858px;
    height: 90px;
    flex: none;

}

.ico-v4{
    width: 120px;
    height: 60px;
    flex: none;
    flex-grow: 0;
}

.bg-icon{
    position: absolute;
    width: 100%;
    height: 1236px;
    left:0;
    bottom: 0;
    margin-top: 872px;
    z-index: 1;
    background: #FFFFFF;
}

.modulos{
    margin-top: 242px;
    position: relative;
    z-index: 10;
    margin-bottom: 72px;
}

.modulo-partner{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
    position: relative;
    padding: 60px;
    gap: 40px;
    width: 100%;
    height: auto;
    left: 0;
    background: rgba(255, 255, 255, 0.9);
}

.modulo-partner2{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
    position:relative;
    padding: 60px;
    gap: 40px;
    width: 100%;
    height: 498px;
    left: 0;
    background: #F2F2F2;
}
.modulo-partner3{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
    position: relative;
    padding: 60px;
    gap: 40px;
    width: 100%;
    height: 498px;
    left: 0;
    background: #FFFFFF;
}

.logo-vortex{
    width: 268px;
    height: 78px;
    flex: none;
    order: 0;
    flex-grow: 0;

}
.modulo-magnitudes{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
    padding: 0;
    width: 960px;
    height: 378px;
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 1;
}
.titulo-iconos{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 0;
    gap: 30px;
    width: 960px;
    height: 186px;
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 0;
}

.descripcion2{
    width: 100%;
    height: auto;
    font-family: 'Source Sans 3';
    font-style: normal;
    font-size: 22px;
    line-height: 26px;
    letter-spacing: 0.5px;
    color: #757575;
    flex: none;
    flex-grow: 1;
}

.modulo-caracteristicas{
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 0;
    gap: 2px;
    width: auto;
    height: 78px;
    flex: none;
    flex-grow: 0;
}

.caracteristica{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 10px 20px;
    gap: 10px;
    width: fit-content;
    height: 100%;
    background: #FFFFFF;
    border-radius: 5px;
    flex: none;
    align-self: stretch;
    flex-grow: 0;
}

.nebbo-caracteristica{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 10px 20px;
    gap: 10px;
    width: fit-content;
    height: 100%;
    background: #F5F5F5;
    border-radius: 5px;
    flex: none;
    align-self: stretch;
    flex-grow: 0;
}

.vortex-text{
    width: auto;
    height: auto;
    white-space: nowrap;
    font-family: 'Source Sans 3';
    font-style: normal;
    font-size: 22px;
    line-height: 27px;
    color: #004557;
    flex: none;
    flex-grow: 0;
}
.meteo-text{
    width: auto;
    height: auto;
    white-space: nowrap;
    font-family: 'Source Sans 3';
    font-style: normal;
    font-size: 22px;
    line-height: 27px;
    color: #009EE2;
    flex: none;
    flex-grow: 0;
}

.nebbo-text{
    width: auto;
    height: auto;
    white-space: nowrap;
    font-family: 'Source Sans 3';
    font-style: normal;
    font-size: 22px;
    line-height: 27px;
    color: #020204;
    flex: none;
    flex-grow: 0;
}

.climate-text{
    width: auto;
    height: auto;
    white-space: nowrap;
    font-family: 'Source Sans 3';
    font-style: normal;
    font-size: 22px;
    line-height: 27px;
    color: #000000;
    flex: none;
    flex-grow: 0;
}

.logo-molino{
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    width: 27px;
    height: 58px;
    flex: none;
    flex-grow: 0;
}

.logo-weather{
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    width: 145px;
    height: 55px;
    flex: none;
    flex-grow: 0;
}

.logo-services{
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    width: 122px;
    height: 78px;
    flex: none;
    flex-grow: 0;
}
.logo-services-nebbo{
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    width: 140px;
    height: 59px;
    flex: none;
    flex-grow: 0;
}
.frame49{
    display: block;
    flex-direction: row;
    align-items: center;
    width: 960px;
    height: auto;
    flex: none;
    align-self: stretch;
    flex-grow: 0;
}
