:root{
    --background:#EEF6FF;
    --text: #3F4247;
    --blue:#074064;
    --light-blue:#1399ED;
    --white:#ffffff;
    --grey:#9AA3B4;

    /*CIC colors*/
    --ux:#A2DF76; /*green*/
    --research:#F09294; /*red*/
    --ui: #90CBF0; /*blue*/
    --dev:#D2A4DB; /*purple*/

    /*--secondary CIC colors*/
    --secondary-ux:#91CB67; /*seondary green*/
    --secondary-research: #B86F71; /*secondary red*/
    --secondary-ui:#6D9CBA; /*secondary blue*/
    --secondary-dev:#A583AB; /*secondary purple*/

}

body{
    background-color: var(--background);
    color: var(--text);
    padding-top:50px;
    display:flex;
    gap:150px;
    flex-direction: column;
    align-items:stretch;
    width:100%;
    margin:0;
    
}
header{
    display:flex;
    flex-direction: row;
    justify-content:space-between;
    padding: 0px 100px;
    align-items: center;

}
footer{
    background-color: var(--blue);
    display: flex;
    padding: 32px 150px 50px 150px;
    flex-direction: column;
    gap: 10px;
    align-self: stretch;
    color:var(--white);
}
footer p, footer a{
    color:var(--white);
    margin:0;
}
h1{
    color: var(--blue);
    font-family: "Roboto Slab", serif;
    font-size: 48px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -0.288px;
}

h2{
    color: var(--blue);
    font-family: "Roboto Slab", serif;
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    letter-spacing: -0.144px;
}
h4{
    font-family: "Roboto Slab", serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    letter-spacing: -0.108px;
}
h5{
    font-family: "Roboto Slab", serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 900;
    line-height: normal;
    letter-spacing: -0.096px;
}
legend{
    color: var(--blue);
    font-family: "Roboto Slab", serif;
    font-size: 12px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: -0.072px;
}
a{
    color: var(--blue);
    font-family: "Roboto Slab", serif;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -0.096px;
    text-decoration-line: underline;
}
p{
    color:var(--text);
    font-family: "Roboto Slab", serif;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -0.096px; 
}
nav> a{
    text-decoration-line: none;
}

button{
    border-radius:20px;
    background-color: var(--blue);
    color:var(--background);
    display:flex;
    flex-direction: row;
    align-items: center;
    padding: 8px 32px;
    font-size: 18px;
    border: none;
    gap:10px;
}
button:hover{
    background-color:var(--light-blue);
    cursor: pointer;
    text-decoration-line:none;
}
header> img, footer>img{
    width:220px;
}
body> div:first-of-type> img, body> div:nth-of-type(2)> img{
    width: 50%;
}
body> div:nth-of-type(2)> img{
    border:2px solid white;
}
body>div{
    display:flex;
    flex-direction: row;
    justify-content:space-between;
    padding: 0px 200px;
    align-items: center;
}
body>div>div, .blocks>div>div{
    display:flex;
    flex-direction: row;
    flex-wrap:wrap;
    align-items: center;
    width: 40%;

}
body>div>div>div, .blocks>div>div>div{
    display:flex;
    flex-direction: row;
    flex-wrap:wrap;
    flex-grow:1;
    justify-content: space-around;
}
.blocks>div>div>div {
    justify-content: space-between;
}
body>div>div>div>div, .blocks>div>div>div>div{
    display:flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}
.blocks>div>div>div>div{
    margin-top:20px;
}
body>div>div>div>div>div, .blocks>div>div>div>div>div{
    display:flex;
    flex-direction: row;
    justify-content: flex-start;
    gap:10px;
    align-items: center;
}
.blocks>div>div>div>div>div{
    min-width: 100%;
}
body>div:first-of-type>div>div>div>div> div, .blocks>div>div>div>div>div>div, .blocks>div>div>div>div>div>img{
    width: 36px;
    height: 36px;
}
/*cores*/
.research h4{
    color:var(--secondary-research);
}
.research > div{
    background-color: var(--research);
}
.ux h4{
    color:var(--secondary-ux);
}
.ux>div{
    background-color: var(--ux);
}
.ui h4{
    color: var(--secondary-ui);
}
.ui>div{
    background-color: var(--ui);
}
.dev h4{
    color:var(--secondary-dev);
}
.dev> div{
    background-color: var(--dev);
}

/*blocks*/
.blocks{
    display:flex;
    align-items: flex-start;
    flex-direction:column;
}
.blocks>div{
    display:flex;
    flex-direction: row;
    justify-content:space-between;
    align-items: flex-start;
    width:100%;
    gap:120px;
}
#complex_digital_interface.blocks>div{
    gap:30px;
}
#complex_digital_interface.blocks>div>div>div{
    flex-direction: column;
    gap:0;
    align-items: center;
}

.blocks>div>div img{
    width:100%;
}
.blocks h5, .blocks p{
    margin:0;
}
footer .blocks p, footer .blocks a{
    margin-bottom: 10px;
}
.research-1 h5{
    color:var(--secondary-research);
}
.ux-1 h5{
    color:var(--secondary-ux);
}
.ui-1 h5{
    color: var(--secondary-ui);
}
.dev-1 h5{
    color:var(--secondary-dev);
}

#complex_digital_interface>div:first-of-type{
    width:50%;
    flex-direction: column;
    align-items:flex-end;
}
#complex_digital_interface img{
    width: 60%;
}
#complex_digital_interface>div{
    align-items:center;
}
#complex_digital_interface>div>div{
    flex-direction: column;
    gap:10px;
    padding-top:50px;
}
/*video*/
.blocks>div.video{
    width:100%;
    position:relative;
    display:flex;
    justify-content: center;
}
iframe{
width:90%;
height:70vh;
}

/*sombra*/
.shadow{
    box-shadow: 0px 100px 80px 0px rgba(0, 0, 0, 0.07), 0px 41.778px 33.422px 0px rgba(0, 0, 0, 0.05), 0px 22.336px 17.869px 0px rgba(0, 0, 0, 0.04), 0px 12.522px 10.017px 0px rgba(0, 0, 0, 0.04), 0px 6.65px 5.32px 0px rgba(0, 0, 0, 0.03), 0px 2.767px 2.214px 0px rgba(0, 0, 0, 0.02);
}
footer .blocks>div{
    flex-direction: row;

}
footer .blocks>div>div{
    flex-direction: column;
    gap:0;
    align-items: flex-start;
    justify-content: flex-start;
    align-content: flex-start;
}

footer .blocks>div>div>div{
    gap:20px;
}
footer .blocks>div>div>div img{
    width: 150px;
    height: auto;
}

/*queries*/
@media (max-width: 1300px){
    body>div{
        padding: 0px 120px;
    }
    iframe{
        height:50vh;
        }
}

@media (max-width: 1115px){

    body>div>div>div{
        justify-content: flex-start;
    }
    #complex_digital_interface>div:first-of-type{
        width:80%;
    }
    body> div:first-of-type> img{
        width:60%;
    }
     body> div:nth-of-type(2)> div{
        width: 47%; 
     }
     iframe{
        height:40vh;
        }
}
@media (max-width: 1050px){
    :root{
        h1{
            font-size:36px;
        }
    }
    .blocks>div>div>div{
        justify-content: flex-start;
    }
    
}
@media (max-width: 1000px){
    body>div{
        padding: 0px 100px;
    }
    body{
        gap:100px;
    }
    footer{
        padding: 32px 100px 50px 100px;
    }
    .blocks>div{
        gap:30px; 
    }

}

@media (max-width: 800px){
    body>div, header{
        padding: 0px 50px;
    }
    body{
        gap:50px;
    }
    footer{
        padding: 16px 50px 50px 50px;
    }
    .blocks>div>div.desktop{
        display:none;
    }
    .blocks>div>div>div{
        justify-content: space-around;
    }
    #complex_digital_interface > div:nth-child(3)>div>img{
        width: 100%;
    }
    body > div:nth-child(4) > div > div:nth-child(2)  h5{
        font-size: 12px;
        font-weight: 600;
    }
}
@media (max-width: 700px){
    body>div{
        flex-direction: column;
    }
    body>div>div>div{
        justify-content: space-around;
    }
    body>div>div, .blocks>div>div{
        width: 100%;
    }
    body> div:nth-of-type(2)> div{
        width:100%;
    }
    body> div:first-of-type> img, body> div:nth-of-type(2)> img{
        width: 90%;
        margin-top:20px
    }
    #complex_digital_interface>div:first-of-type{
        width:100%;
    }
    #complex_digital_interface > div:nth-child(3)>div{
        width:45%;
    }
}
@media (max-width: 600px){
    body>div, header{
        padding: 0px 20px;
    }
    body{
        gap:30px;
    }
    footer{
        padding: 32px 20px 50px 20px;
    }
    #complex_digital_interface>div:first-of-type{
        width:100%;
    }
    iframe{
        height:30vh;
        }
}
@media (max-width: 550px){
    header{
        flex-direction: column;
        justify-content: flex-start;
        gap:20px;
    }
    header img{
        align-self: flex-start;
    }
    header nav{
        align-self: flex-end;
    }
    footer .blocks>div{
        flex-direction: column;
        gap:10px;
    }
}
@media (max-width: 450px){
    body>div>div>div{
        justify-content: flex-start;
        flex-direction: column;
    }
    .blocks>div>div>div{
        flex-direction: column;  
        justify-content: flex-start;
    }
    #complex_digital_interface > div:nth-child(3){
        flex-direction: column;
        gap:0;
    }
    #complex_digital_interface > div:nth-child(3)>div{
        width:75%;
    }
    body > footer > div > img{
        width:275px;
    }
}
@media (max-width: 300px){
    body>div, header{
        padding: 0px 10px;
    }
    body{
        gap:16px;
    }
    footer{
        padding: 32px 10px 50px 10px;
    }
    body > footer > div > img{
        width:100%;
    }
}
}
