@import url('https://fonts.googleapis.com/css2?family=Poppins&display=swap');

* {
    margin: 0 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Poppins', sans-serif;
}

body {
    display: flex;
    flex-direction: column;
    align-items: normal;
    justify-content: center;
}

/* .margin{
    margin: 0 30px;
} */

/* navbar */
/* .headercontainer{
    display: flex;
    text-align: center;
    
    position: static;
    top: 0;

}
.headercontainer .logo img{
    height: 12vh;
    padding: 20px 80px;
}
.headercontainer .navbar{
    height: 17vh;
    
}
.headercontainer .navbar a{
    color: black;
}
.headercontainer .navbar ul{
    line-height: 12vh;
    display: flex;
    text-align: center;
    justify-content: space-evenly;
    width: 900px;

}
.headercontainer .navbar ul li{
    list-style: none;
}

.headercontainer .navbar ul li a:hover{
    color: #999770;
    transition: .2s ease;
    -webkit-transition: .3s;

} */

/* Navigation bar */
nav {
    opacity: 0;
    overflow: hidden;
    transform: translateY(10px);
    animation: fadeInUp .8s forwards;
}


/* Banner 1 */


#banner1 {
    text-align: center;
    display: flex;
    height: 500px;
    flex-direction: column;
    justify-content: center;
    margin-top: 15rem;
    /* animation: fadeInUp .8s forwards; */
}

#banner1 div,
#banner1 h5,
#banner1 h1,
#banner1 p {
    opacity: 0;
    /* overflow: hidden; */
    transform: translateY(10px);
    animation: fadeInUp .8s forwards;
}

.subheading h5 {
    font-weight: 300;
    font-size: .9rem;
    padding: 2px 0;
}

.heading h1 {
    font-size: 3rem;
    font-weight: 700;
    padding: 3px 420px;

}

.description p {
    font-weight: 400;
    font-size: 1.2rem;
    padding: 8px 20%;
    text-align: justify;
}

/* Banner 2 */
#banner2 {
    padding-top: 50px;
    padding: 20px 0;
    margin-top: 20px;
}

#banner2 h3,
#banner2 div,
#banner2 img,
#banner2 p {
    opacity: 0;
    /* overflow: hidden; */
    transform: translateY(10px);
    animation: fadeInUp .8s forwards;
}

#banner2 h3 {
    text-align: center;
    color: #333333;
    font-size: 2rem;
    font-weight: 700;
}

#banner2 .desc p {
    padding: 0 20%;
    padding-bottom: 12px;
    text-align: justify;
}

.servicewrap .servicebox p {
    padding: 0 10%;
    text-align: left;
}

.servicewrap {
    display: flex;
    text-align: center;
    justify-content: center;
    /* padding: 20px; */
    margin: 20px 0;
}

.servicewrap .box1,
.servicewrap .box2,
.servicewrap .box3 {
    padding: 20px 0;
    margin: 0px 30px;
    /* border: 2px solid #c2c2c2; */
    border-radius: 18px;
    width: 100%;
    box-shadow: 0px 0px 15px rgba(0, 0, 0, .1);
    background-color: #ffffff;
    transition: .3s ease;
    cursor: pointer;
}

.servicewrap .box1:hover,
.servicewrap .box2:hover,
.servicewrap .box3:hover {
    /* border: 2px solid #9a9999; */
    box-shadow: 0 0px 15px rgba(0, 0, 0, .3);

}

.servicewrap h6 {
    font-size: 1rem;
    padding: 20px 30px;
    font-weight: 600;
}

.servicewrap p {
    font-size: 1rem;
    padding: 0 30px;
    color: #5e5e5e;
}

/* Previous Work */
#prevwork {
    margin: 30px 43%;
    text-align: center;
    background: #e0e0e0;
    /* height: 8vh; */
    border-radius: 5px;
    /* box-shadow: 0px 15px 15px rgba(0, 0, 0, .2); */
    transition: .3s ease;
}

#prevwork:hover {
    background: #b9b9b9;
    box-shadow: 0px 0px 15px rgba(0, 0, 0, .4);
}

#prevwork a {
    color: rgb(44, 44, 44);
    transition: .2s ease;
    font-size: 1.3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 5vh;
    text-decoration: none;


}

#prevwork,
#prevwork a {
    opacity: 0;
    /* overflow: hidden; */
    transform: translateY(10px);
    animation: fadeInUp .8s forwards;
}

#prevwork a:hover {
    /* text-decoration-line: underline; */
    color: #000000;
    transition: .3s ease;
}

/* Footer */
#footer {
    margin: 20px 0;
    padding: 20px 0;
    display: flex;
    align-items: baseline;
    justify-content: space-around;
    background-color: #313131;
    margin-bottom: 0;
    color: #efefef;
    padding-top: 50px;
}

#footer h2,
#footer .footabout,
#footer h4,
#footer h6,
#footer .footcontact {
    opacity: 0;
    overflow: hidden;
    transform: translateY(10px);
    animation: fadeInUp .8s forwards;
}


.footabout h4 {
    font-size: 1.2rem;

}

.footabout h6 {
    font-weight: 400;
    font-size: .878rem;
}

.footabout a {
    color: rgb(255, 255, 255);
}

.footabout a:hover {
    text-decoration-line: underline;
    color: #ffffff;
}

.footcontact P {
    /* padding: 4px 0px; */
    padding-right: 80px;
}

/* Service Page */
.servicebanner {
    background-image: url(service-banner.jpg);
    background-position: top;
    background-size: cover;
    background-repeat: no-repeat;
}


/* About us Page */
#about {
    margin-top: 6.7rem;
    width: 100%;
    height: 250px;
    text-align: center;
    line-height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-image: url(about-banner.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    color: #c5c5c5;
}

#about h1 {
    opacity: 0;
    overflow: hidden;
    transform: translateY(10px);
    animation: fadeInUp .8s forwards;
}

#about h1 {
    font-size: 3.2rem;
    font-weight: 900;
}

/* about Banner 1 */
#aboutbanner1 {
    padding: 12px;
    margin: 12px;
    margin-top: 50px;
}

#aboutbanner1 span,
#aboutbanner1 div,
#aboutbanner1 p,
#aboutbanner1 i,
#aboutbanner1 img {
    opacity: 0;
    /* overflow: hidden; */
    transform: translateY(10px);
    animation: fadeInUp .8s forwards;
}

#aboutbanner1 .vision {
    padding-top: 30px;
    padding: 0 30px;
    color: #3e3e3e;
    font-weight: bold;
}

#aboutbanner1 .abtbannerwrap {
    display: flex;

}

#aboutbanner1 .abtbannerwrap .abtbannerleft {
    width: 70%;
    padding: 0 30px;
}

#aboutbanner1 .abtbannerwrap .abtbannerleft .future h3 {
    font-size: 2.9rem;
    font-weight: 600;
}

#aboutbanner1 .abtbannerwrap .abtbannerleft .pointswrap {
    display: flex;
    padding: 20px 10px;
}

#aboutbanner1 .abtbannerwrap .abtbannerleft .pointswrap .pointlogos {
    padding: 0 20px;
    background-color: #d8ae5f;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 57px;
    height: 57px;
}

#aboutbanner1 .abtbannerwrap .abtbannerleft .pointswrap .pointlogos i {
    color: #fff;
}

#aboutbanner1 .abtbannerwrap .abtbannerleft .pointswrap .pointdescription {
    padding: 0 20px;
}

#aboutbanner1 .abtbannerwrap .abtbannerleft .pointswrap .pointdescription h5 {
    font-size: 1rem;
    padding-bottom: 8px;
}

#aboutbanner1 .abtbannerwrap .abtbannerleft .pointswrap .pointdescription p {
    font-size: .9rem;
    color: #333333;
}

#aboutbanner1 .abtbannerwrap .abtbannerright .imgwrap {
    display: flex;
    flex-wrap: wrap;
    /* background-image: url("dots_1HevSx5z-qjqt13r149z4ec1xk50f8rgicgw4azanssbtmxba2g.webp");
    background-position: center;
    background-size: cover no-repeat; */
    height: 100%;
}

#aboutbanner1 .abtbannerwrap .abtbannerright .imgwrap .twoimg {
    display: flex;
    z-index: 999;
}

.mobileneed {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}

.mobileneed img {
    width: 70%;
    height: 50vh;
    border-radius: 20px;
    position: relative;
    left: 0px;
    bottom: 0px;
    z-index: 99;
}


/* About banner 2 */
#aboutbanner2 {
    display: flex;

}

#aboutbanner2 div,
#aboutbanner2 img {
    opacity: 0;
    overflow: hidden;
    transform: translateY(10px);
    animation: fadeInUp .8s forwards;
}

#aboutbanner2 .abtbanner2left {
    width: 140%;
    padding: 60px
}

#aboutbanner2 .abtbanner2right {
    padding: 60px 0px;
    padding-right: 30px;
}

#aboutbanner2 .abtbanner2right span {
    color: #3e3e3e;
    font-weight: bold;
    /* padding: 30px; */
}

#aboutbanner2 .abtbanner2right h4 {
    font-size: 1.9rem;
    font-weight: 600;
    padding-top: 12px;

}

#aboutbanner2 .abtbanner2right p {
    font-size: .9rem;
    padding-top: 12px;
    font-weight: light;
    color: #333333;
}

/* About Banner 3 */
#aboutbanner3 {
    display: flex;
}

#aboutbanner3 div,
#aboutbanner3 span,
#aboutbanner3 h1,
#aboutbanner3 p,
#aboutbanner3 img {
    opacity: 0;
    overflow: hidden;
    transform: translateY(10px);
    animation: fadeInUp .8s forwards;
}

#aboutbanner3 .abtbanner3right {
    width: 150%;
    padding: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
}


#aboutbanner3 .abtbanner3left {
    padding: 60px;
}

#aboutbanner3 .abtbanner3left .ourskills span {
    color: #3e3e3e;
    font-weight: bold;
}

#aboutbanner3 .abtbanner3left .banner3heading {
    padding: 12px 0;
}

#aboutbanner3 .abtbanner3left .banner3heading h1 {
    font-size: 2.2rem;
    font-weight: 600;
}

#aboutbanner3 .abtbanner3left .banner3heading p {
    color: #333333;
    padding: 12px 0;
    padding-bottom: 20px;
    font-size: .9rem;
    font-weight: light;
}

#aboutbanner3 .abtbanner3left .banner3heading .skills .banner3skill {
    padding-bottom: 20px;
}
/* #aboutbanner3 .abtbanner3left .banner3heading .skills .content{
    position: relative;
    height: 30px
} */
#aboutbanner3 .abtbanner3left .banner3heading .skills .banner3skill hr {
    padding-top: 5px;
    border-radius: 30px;
    background-color: #001f35;
    /* opacity: 1; */
    /* transition: all 0.5s ease-in-out; */
    /* width: 0;
    height: 3px;
    border: none;
    animation: slideIn 1s forwards; */

}

/* .vertical-hr {
    width: 2px;
  } */

#aboutbanner3 .abtbanner3left .banner3heading .skills .banner3skill span {
    font-size: medium;
    font-weight: 300;
    color: #5e5e5e;
}


/* Contact page */
#cnctbanner1 {
    margin-top: 6.7rem;
    width: 100%;
    height: 250px;
    text-align: center;
    display: flex;
    line-height: 200px;
    align-items: center;
    justify-content: center;

    /* background-color: #000; */
    color: #e1e1e1;
}

.contactbanner {
    background-image: url(contact-banner.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

#cnctbanner1 h1 {
    opacity: 0;
    overflow: hidden;
    transform: translateY(10px);
    animation: fadeInUp .8s forwards;
}

#cnctbanner1 .cnctbanner1heading h1 {
    font-size: 3.2rem;
    font-weight: bold;
}

#cnctbanner2 {
    display: flex;
    padding: 60px;
    justify-content: space-evenly;
}

#cnctbanner2 input,
#cnctbanner2 textarea,
#cnctbanner2 button,
#cnctbanner2 div {
    opacity: 0;
    overflow: hidden;
    transform: translateY(10px);
    animation: fadeInUp .8s forwards;
}

#cnctbanner2 .cnctbanner2left {
    width: 50%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

#cnctbanner2 .cnctbanner2left h4 {
    font-weight: bold;
    padding-bottom: 10px;
}

#cnctbanner2 .cnctbanner2left p {
    color: #333333;
    font-size: .9rem;
}

#cnctbanner2 .cnctbanner2right {
    padding: 0 30px;
    display: flex;
    align-items: center;
    justify-content: center;
}

#cnctbanner2 .cnctbanner2right .forminput {
    padding: 4px 0;

}

#cnctbanner2 .cnctbanner2right .forminput input,
#cnctbanner2 .cnctbanner2right .forminput textarea {
    padding: 6px 12px;

}

#cnctbanner2 .cnctbanner2right .formsubmit {
    text-align: center;
}

#cnctbanner2 .cnctbanner2right .formsubmit button {
    width: 100%;
    padding: 8px 210px;
    font-weight: bolder;
    font-size: .999rem;
    background-color: #d8ae5f;
    color: #fff;
    border: none;
    border-radius: 2px;
}

/* Media Querries */
/* Mobile */
@media screen and (max-width: 450px) {

    .nav-item-wrap {
        align-items: center;
        display: flex;
        align-items: center;
        justify-content: center;
        padding-left: 35%;
        margin: 15px 0;
    }

    .nav-item {
        margin: 12px 0;
    }

    /* Banner 1 */
    #banner1 {
        text-align: center;
        display: flex;
        height: 430px;
        flex-direction: column;
        justify-content: center;
        margin-top: 7rem;
    }

    .heading h1 {
        font-size: 2.2rem;
        font-weight: 700;
        padding: 3px 8%;
        /* margin-top: 6.8rem; */
    }

    /* .subheading h5{
        margin-top: 6.8rem;
    } */

    .description p {
        font-weight: 400;
        font-size: .7rem;
        padding: 8px 6%;
        color: #777777;
        text-align: justify;
    }

    .subheading h5 {
        padding: 0px 0;
    }


    /* Banner 2 */
    .servicewrap .box1,
    .servicewrap .box2,
    .servicewrap .box3 {
        padding: 20px 0%;
        margin: 14px 19px;
        /* border: 1px solid #6c757d;
        border-radius: 18px; */
        width: 100%;
    }

    .servicewrap {
        display: flex;
        text-align: center;
        justify-content: center;
        /* padding: 20px; */
        /* margin: 20px 0; */
        flex-direction: column;
        width: 90%;
        /* margin: 12px -15%; */
    }

    .servicewrap p {
        font-size: .8rem;
        padding: 0 20px;
        color: #5e5e5e;
        text-align: justify;
    }

    #banner2 h3 {
        font-size: 1.8rem;
    }

    #prevwork {
        margin: 30px 25%;
        border-radius: 10px;
        /* box-shadow: 0px 15px 15px rgba(0, 0, 0, .2); */
        transition: .3s ease;
    }

    #prevwork a {
        height: 8vh;
    }

    /* #footer .footheading{
        display: none;
    } */
    #footer {
        padding: 20px;
        display: flex;
        align-items: flex-start;
        justify-content: space-around;
        flex-direction: column;
    }

    .footabout {
        margin: 30px 0;
    }


    /* Services Page */
    #cnctbanner1 {
        margin-top: 25%;
        width: 100%;
        height: 200px;
        text-align: center;
        line-height: 200px;
    }

    #banner2 p {
        padding: 0 5%;
        text-align: justify;
    }

    #banner2 .desc p {
        padding: 0 8%;

    }


    /* About us page */
    #about {
        margin-top: 25%;
        width: 100%;
        height: 200px;
        text-align: center;
        line-height: 200px;
    }

    #aboutbanner1 .vision {
        padding: 0 0px;

    }

    #aboutbanner1 .abtbannerwrap {
        display: flex;
        flex-direction: column-reverse;
        align-items: flex-start;
        justify-content: center;
    }

    #aboutbanner1 .abtbannerwrap .abtbannerright .imgwrap .twoimg {
        display: none;
    }

    #aboutbanner1 .abtbannerright .imgwrap img {
        width: 100%;
        height: 30vh;
        margin: 10px 0;
        position: initial;
    }

    #aboutbanner1 .abtbannerwrap .abtbannerleft {
        width: 100%;
        padding: 0 0px;
    }

    #aboutbanner1 .abtbannerwrap .abtbannerleft {
        width: 100%;
        padding: 0 0px;
    }

    #aboutbanner1 .abtbannerwrap .abtbannerleft .future h3 {
        font-size: 2rem;
        font-weight: 600;
    }

    #aboutbanner1 .abtbannerwrap .abtbannerleft .pointswrap {
        padding: 20px 0px;
    }

    #aboutbanner1 .abtbannerwrap .abtbannerleft .pointswrap .pointdescription {
        padding: 0px 14px;
        /* width: 100%; */
    }

    #aboutbanner1 .abtbannerwrap .abtbannerleft .pointswrap .pointdescription h5 {
        font-size: 1rem;
        padding-top: 15px;
        font-weight: 700;
    }

    #aboutbanner1 .abtbannerwrap .abtbannerleft .pointswrap .pointdescription p {
        font-size: .85rem;
        color: #808080;
    }

    #aboutbanner2 {
        display: flex;
        flex-direction: column-reverse;
        align-items: flex-start;
        justify-content: center;
    }

    #aboutbanner2 .abtbanner2right p {
        text-align: justify;
    }

    #aboutbanner2 .abtbanner2right {
        padding: 60px 30px;
        /* padding-right: 30px; */
        padding-bottom: 0px;
    }

    #aboutbanner2 .abtbanner2left {
        width: 100%;
        padding: 30px;
    }

    #aboutbanner3 {
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;
    }

    #aboutbanner3 .abtbanner3left {
        padding: 30px;
        padding-bottom: 0;
    }

    #aboutbanner3 .abtbanner3left .banner3heading p {
        text-align: justify;
    }

    #aboutbanner3 .abtbanner3right {
        width: 100%;
        padding: 30px;
        padding-top: 2px;
    }
    




    /* Contact Page */
    #cnctbanner2 {
        display: flex;
        padding: 60px 30px;
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;
    }

    #cnctbanner2 .cnctbanner2left {
        width: 100%;
    }

    #cnctbanner2 .cnctbanner2left p {
        font-size: .85rem;
    }

    #cnctbanner2 .cnctbanner2right .forminput input,
    #cnctbanner2 .cnctbanner2right .forminput textarea {
        padding: 6px 12px;
        width: 100%;
    }

    #cnctbanner2 .cnctbanner2right .formsubmit button {
        width: 100%;
        padding: 8px 0;
        font-weight: bolder;
        font-size: .999rem;
        background-color: #d8ae5f;
        color: #fff;
        border: none;
        border-radius: 2px;
    }

    #cnctbanner2 .cnctbanner2right {
        padding: 40px 0px;
        display: flex;
        align-items: center;
        justify-content: center;
        padding-bottom: 0;
    }

    /* Previous Page */
    .prevbanner h1 {
        font-size: 2.2rem;
        width: 99%;
    }

    #previouswork .allworkwrap .work div {
        padding: 0px 8px;
        width: 100%;
    }

    #previouswork .allworkwrap .work img {
        padding: 0;
        max-height: 45vh;
        margin: 10px 0;
    }

    #previouswork .allworkwrap .work{
        flex-direction: column;
    }
    #previouswork .allworkwrap .proj2,
    #previouswork .allworkwrap .proj4 {
        display: flex;
        flex-direction: column;
    }


    /* Mission page */
    .missioncontent p {
        margin: 0px -65px;
    }
    

}


/* Previous Work Page */
#previouswork .allworkwrap {
    display: flex;
    flex-direction: column;
    align-items: normal;
    justify-content: space-evenly;
}

#previouswork .allworkwrap .work {
    display: flex;
    align-items: center;
    /* flex-direction: row-reverse; */
    justify-content: space-evenly;
    margin: 20px 20px;
    box-shadow: 0 0 15px rgba(0, 0, 0, .123);
    border-radius: 20px;
    background-color: #f5f5f5;
}

#previouswork .allworkwrap .worktitle {
    width: 50%;
}

#previouswork .allworkwrap .work div {
    padding: 0px 45px;
    opacity: 0;
    overflow: hidden;
    transform: translateY(10px);
    animation: fadeInUp .8s forwards;
}

#previouswork .allworkwrap .work img {
    width: 100%;
    height: 60vh;
    border-radius: 30px;
    padding: 30px;
    margin: 30px 0;
    box-shadow: 0 0 10px rgba(0, 0, 0, .123);
    background-color: #fff;
}

#previouswork .allworkwrap .proj2,
#previouswork .allworkwrap .proj4 {
    /* display: flex; */
    /* flex-direction: row-reverse; */
    background-color: #dce5ec;
}

.prevbanner {
    background-image: url(prevbanner.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}


/* Mission Page */
.missionbanner{
    background-image: url(mission-banner.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
.missioncontent {
    margin: 30px 100px;
    text-align: justify;
    display: flex;
    align-items: center;
    justify-content: center;
}
.missioncontent p{
    opacity: 0;
    overflow: hidden;
    transform: translateY(10px);
    animation: fadeInUp .8s forwards;
}


/* ANIMATION */
@keyframes fadeInUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}