* {
  box-sizing: border-box;
}


body{
    background-color: #ffffff;
    font-family: "DM Sans", sans-serif;
    margin: 0;
}

h1{
    font-weight: 800;
    font-size: 50px;
    font-family: "Inter", sans-serif;
}

p{
    font-family: "DM Sans", sans-serif;
    font-weight: 200;
}

.nav-menu{
    top: 16px;
    transition: top 0.3s ease-in-out, opacity 0.3s ease-in-out;
}
.dalos-logo{
    height: 100px;
    width: 100px;
    position: fixed;
}

.dalos-logo img{
    height: 100px;
    width: 100px;
}

.nav-menu-container{
    display: grid;
    grid-template-columns: auto auto auto auto;
    justify-content: center;
    margin: 0 38%;
    padding: 8px 0;
    column-gap: 16px;
    background-color: #000000;
    height: 48px;
    border-radius: 15px;
    border: 5px solid #000000;
    position: fixed;
    top: 16px;
    transition: top 0.3s ease-in-out, opacity 0.3s ease-in-out;
}

.nav-menu-container a{
    text-decoration: none;
    color: #ffd21f;
    text-align: center;
    align-self: center;
    height: 24px;
}

.nav-menu-container a:hover{
    text-decoration: none;
    border-radius: 5px;
    text-decoration: underline;
}

.hero_section{
    display: flex;
    flex-direction: column;
    gap: 4px;
    align-items: center;
    justify-content: center;
    height: 100vh;
    text-align: center;
    color: #ffffff;
    background-image: url(/webimages/background_image_dalos.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.hero_section h1{
    margin: 0;
    font-size: 72px;
    text-transform: uppercase;
}
.hero_section h2{
    margin: 0;
    text-transform: uppercase;
}
.hero_section p{
    margin: 0;
}
.cta_buttons button{
    height: 50px;
    width: 100px;
    color: #000000;
    border-radius: 5px;
    border: 1px solid #ffd21f;
    background-color: #ffd21f;
}

.clients{
    text-align: center;
    margin-top: 128px;
}
.clients h1{
    margin: 0 15% 0 15%;
}

.clients_container{
    overflow: hidden;
    margin-top: 64px;
    margin: 64px 5% 0 5%;
    padding: 0 16px;
}

.clients_container_track{
    display: flex;
    width: max-content;
    animation: scroll 20s linear infinite;
}

@keyframes scroll{
    0%{
        transform: translateX(0);
    }
    100%{
        transform: translateX(-50%);
    }
}

.client_card{
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    height: 150px;
    width: 150px;
    margin: 0 1;
}

.client_card img{
    height: 150px;
    width: 150px;
}

.services{
    background-color: rgba(244, 245, 245, 0.8);
    margin: 10%;
    padding-top: 16px;
    padding-bottom: 16px;
    border-radius: 25px;
    text-align: center;
}
.services h1{
    text-align: center;
}
.services_grid{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px;
    margin: 32px;
}
.service_tab{
    height: 40%;
    width: 40%;
    text-align: center;
    background-color: #009951;
    border-radius: 25px;
    margin-bottom: 16px;
    padding-top: 32px;
}
.service_tab{
    padding: 0 16px 0 16px;
}
.service_tab img{
    height: 400px;
    width: 400px;
}

.statement {
    width: 100%;
    padding: 0 5px;
}

.statement h1{
    font-weight: 900;
    font-size: 120px;
}

.how_it_works{
    text-align: center;
    background-color: #ffd21f;
    border-radius: 25px;
    padding: 32px 0 96px 0;
    margin: 8%;
}
.how_grid{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 16px;
    justify-content: center;
    padding: 0 2% 0 2%;
}
.how_grid div{
    height: 50vh;
    width: 22%;
    background-color: #ffffff;
    border-radius: 25px;
    padding-top: 8px;
    padding-bottom: 32px;
    border: 5px solid #009951;
}


.how_grid img{
    height: 200px;
    width: 200px;
}

.portfolio{
    margin-top: 96px;
    text-align: center;
}

.portfolio_grid{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    gap: 32px;
}
.portfolio_tab{
    height: 100vh;
    width: 20%;
}
.portfolio_tab img{
    border-radius: 15px;
    height: 70vh;
    width: 20vw;
    border-bottom: 1px solid rgb(0, 0, 0);
    border-right: 1px solid rgb(0, 0, 0);
}
.testimonials{
    text-align: center;
}
.testimonials_grid{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    gap: 48px;
}
.testimonial_tab{
    display: flex;
    flex-direction: column;
    justify-content: center;
    border-radius: 25px;
    height: 60vh;
    width: 20vw;
    background-color: blue;
}
.testimonial_tab img{
    display: flex;
    align-items: center;
    height: 10vh;
    margin: 0 auto 0 auto;
    text-align: center;
}
.testimonial_tab h5{
    align-items: flex-end;
}

.quality{
    text-align: center;
    margin-top: 96px;
    height: auto;
}
.quality img{
    height: auto;
}

.faq{
    text-align: center;
}
.faq_grid{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 16px;
    margin: 0 15% 0 15%;
}
.faq_grid div{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-radius: 25px;
    height: 70vh;
    width: 40%;
    background-color: rgba(244, 245, 245, 0.6);
    border: 10px solid #ffd21f;
}

.faq_grid div:hover{
    background-color: rgba(244, 245, 245) ;
}

.contact{
    text-align: center;
    margin-bottom: 64px;
}

.contact_form{
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    gap: 16px;
    align-items: center;
}

input{
    height: 48px;
    width: 60%;
    border-bottom: 1px solid rgb(184, 184, 184);
    border-top: 0;
    border-right: 0;
    border-left: 0;
}

#message{
    height: 96px;
}

#submit{
    width: 20%;
    cursor: pointer;
    background-color: #ffd21f;
    border: 0;
    text-transform: uppercase;
}
#submit:hover{
    background-color: #e6b800;
}

@media (max-width: 600px){
    .nav-menu{
        display: none;
    }
    .clients{
        height: 70vh;
    }
    .clients h1{
        margin: 0 0 96px 0;
        font-size: 32px;
    }
    .services{
        margin: 5%;
    }
    .services h1{
        font-size: 32px;
    }
    .services_grid{
        flex-direction: column;
    }
    .service_tab{
        height: 100%;
        width: 100%;
        justify-content: center;
        align-items: center;
    }
    .service_tab img{
        height: 80%;
        width: 80%;
    }
    .statement{
        margin: 25vh 0;
    }
    .statement h1{
        font-size: 60px;
        text-align: center;
    }
    .how_it_works{
        margin: 5%;
    }
    .how_it_works h1{
        font-size: 32px;
    }
    .how_grid{
        flex-direction: column;
        margin: 0 16px ;
    }
    .how_grid div{
        height: 100%;
        width: 100%;
    }
    .how_grid img{
        height: 90%;
        width: 90%;
    }
    .portfolio_grid{
        flex-direction: column;
        margin: 5%;
    }
    .portfolio_tab{
        height: 100%;
        width: 100%;
    }
    .portfolio_tab img{
        border-radius: 15px;
        height: 70vh;
        width: 100%;
    }
    .testimonials_grid{
        flex-direction: column;
        margin: 5%;
    }
    .testimonial_tab{
        height: 60vh;
        width: 100%;
    }
    .quality img{
        height: 100%;
        width: 100%;
    }
    .quality{
        margin: 5%;
        height: 100%;
    }
    .faq_grid{
        flex-direction: column;
        margin: 0 5%;
    }
    .faq_grid div{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        border-radius: 25px;
        height: 70vh;
        width: 100%;
    }
}

@media (max-width: 768px){
    .nav-menu{
        display: none;
    }
    .clients{
        height: 100%;
    }
    .clients h1{
        margin: 0 0 96px 0;
        font-size: 32px;
    }
    .services{
        margin: 5%;
    }
    .services h1{
        font-size: 32px;
    }
    .services_grid{
        flex-direction: column;
    }
    .service_tab{
        height: 100%;
        width: 100%;
        justify-content: center;
        align-items: center;
    }
    .service_tab img{
        height: 80%;
        width: 80%;
    }
    .statement{
        margin: 25vh 0;
    }
    .statement h1{
        font-size: 60px;
        text-align: center;
    }
    .how_it_works{
        margin: 5%;
    }
    .how_it_works h1{
        font-size: 32px;
    }
    .how_grid{
        flex-direction: column;
        margin: 0 16px ;
    }
    .how_grid div{
        height: 100%;
        width: 100%;
    }
    .how_grid img{
        height: 90%;
        width: 90%;
    }
    .portfolio_grid{
        flex-direction: column;
        margin: 5%;
    }
    .portfolio_tab{
        height: 100%;
        width: 100%;
    }
    .portfolio_tab img{
        border-radius: 15px;
        height: 70vh;
        width: 100%;
    }
    .testimonials_grid{
        flex-direction: column;
        margin: 5%;
    }
    .testimonial_tab{
        height: 60vh;
        width: 100%;
    }
    .quality img{
        height: 100%;
        width: 100%;
    }
    .quality{
        margin: 5%;
        height: 100%;
    }
    .faq_grid{
        flex-direction: column;
        margin: 0 5%;
    }
    .faq_grid div{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        border-radius: 25px;
        height: 70vh;
        width: 100%;
    }

}