html{
    scroll-behavior: smooth;
}

body{
    overflow-x: hidden;
    /* background: #131212; */
    background: #EDEDED;
}

.menu-icon{
    position: relative;
    top: 13px;
    margin-right: 12px;
    padding-left: 3px;
    font-weight: 900 !important;
    font-size: 33px !important;
}

.title-bar{
    color: white;
    line-height: 56px;

    position: fixed;
    left: 0px;
    top: 0px;
    width: 100%;
    z-index: 2;

}


.title-bar-row{
    background: #1949ad00;
    transition: background 0.5s;
}

#site-logo{
    width : 117px;
}

.title-bar-items-container div{
    padding: 0px 30px;
    font-size: 13px;
}

.title-bar-items-container .current-link{
    border: solid #ffffff;
    border-width: 0px 0px 5px 0px;

}

.title-bar-items-container a{
    color: white;
    text-decoration: none;
}

.intro-container{
    height: 740px;
    text-align: right;
    color:white;
    margin-bottom: 30px;
    box-shadow: -2px 19px 9px -11px #000000a8;

    background-color: #343b45;
}


.intro-container .text-bg{
    font-weight: 600;
    font-size: 60px;
}


.intro-container .description{
    margin-top: 30px; 
    font-size: 1.4em; 
}

.intro-container .text-sm{
    font-size: 31px; 
    font-weight: 400;
}

.intro-container .right-side div{
    height: 740px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.intro-container .left-side{
    padding-left: 100px;
    padding-top: 60px;
    padding-bottom: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 820px;
}


.buttons-container.d-flex div {
    font-weight: 600;
    background: white;
    margin: 11px;
    font-size: 13px;
    padding: 10px 35px;
    border-radius: 16px;
    color: #1d1d1d;
}

.posts-container-wrapper{
    padding-top: 120px;
    padding-bottom: 30px;
    display: flex;
    justify-content: center;
}

.posts-container{
    width: 1170PX;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.single-post {
    margin: 70px 0px;
    /* background: #f7f7f7; */
    padding: 0px 6px;
    /* height: 400px; */
    box-shadow: 0px 0px 0px 0px #ffffff;
    transition: 0.2s box-shadow;
    width: 384px;
    overflow: hidden;
}

.single-post:hover{
    /* box-shadow: 0px -5px 10px 0px #016fe266; */
}

.single-post .image{
    width : 100%;
    border-radius: 7px;
    /* height: 100%; */
}

.single-post .img-container{
    overflow: hidden;
    /* height: 400px; */
}


.single-post .right-side {
    padding-top: 60px;
    padding-bottom: 60px;
    padding-left: 10px;
    padding-right: 10px;
}

.single-post .right-side:hover{
    /* box-shadow: 0px 0px 9px 0px #016fe24a; */
}

.single-post .img-container{
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;

    border-radius: 10px;
    width: 100%;
    height: 370px;
}

.post-sub-title{
    font-size: 18px;
    color: #989898;
    font-weight: 500;
}


.post-title{
    font-size: 28px;
    font-weight: 500;
}

.post-content{
    color: #989898;
    font-weight: 500;
    font-size: 15px;
    margin-top: 20px;
    text-align: justify;
}

.post-date{
    margin-top: 35px;
    color: #989898;
    font-weight: 400;
    font-size: 15px;
}

.explore-more-panel{
    text-align: center;
}

.explore-more-btn {
    font-weight: 600;
    box-shadow: 0px 0px 1px 1px #a2a2a2;
    border-radius: 15px;
    padding: 10px 20px;
    margin: 0px 0px 25px 0px;
    font-size: 14px;
    color: #464646;
    cursor: pointer;
}

.testimonials-title{
    padding: 0px 10px;
}

.testimonials-title .logo{
    width: 167px;
    border-radius: 5px;
    padding: 2px 8px;
}

.testimonials-title div{
    font-size: 30px;
    width: 732px;
    display: inline-block;
    margin-top: 60px;
    margin-bottom: 65px;
}


.single-testimonial-container{
    height: 500px;
    /* background-color: white; */
    outline: none;
}

.testimonials-container{
    padding: 50px 150px;
    padding-top: 0px;
}

.testimonials-container .quote-box {
    background-color: white;
    /* height: 250px; */
    width: 100%;
    margin-top: 50px;
    margin-bottom: 35px;
    border-radius: 5px;
    font-size: 15px;
    color: #808080;
    text-align: justify;
    justify-content: center;
    align-items: center;
}

.testimonials-container .quote {
    padding-left: 58px;
    padding-right: 50px;
    line-height: 30px;
    font-weight: 400;
    font-size: 18px;
    max-width: 950px;
}


.slick-next.slick-arrow{
    display: none !important;
}

.testimonials-container .slick-dots{
    top: 0px;
}

.testimonials-container .slick-dots li {
    background: #ffffff2b;
    border: #007bff solid;
    border-width: 1.5px;
    border-radius: 50%;
    width: 15px !important;
    height: 15px !important;
}

.testimonials-container li.slick-active {
    background: #007bff;
}

.quote-mark-container {
    font-size: 140px;
    color: #808080;
    text-align: left;
    line-height: 0px;
}

.quote-mark-container.left{
    text-align: left;
    padding-left: 300px;
}

.quote-mark-container.right{
    position: relative;
    top: 77px;
    text-align: right;
    padding-right: 300px;
}

.quote-info-container .left{
    display: inline-block;
    width: 80px;
}

.quote-info-container .left img{
    border-radius: 50%;
    width: 80px;
    height: 80px;
}

.quote-info-container .right{
    display: inline-block;
    padding-left: 30px;
}

.quote-info-container .author{
    font-weight: 500;
    color: #808080;
    font-size: 18px;
}

.quote-info-container .position{
    font-weight: 500;
    color: #6c757d;
}

.quote-info-container .company-name{
    font-weight: 500;
    font-size: 16px;
    color: #6c757d;
}


.quote-info-container {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 70px;
    margin-top: 80px;
}

/* NOTE THAT THE porfolio carousel and the portfolio panel are two different parts
portfolio panel is the old component */
.portfolio-carousel-item{
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
}


.portfolio-carousel-item::before {
    content: "";
    background: #0000002e;
    height: 100%;
    width: 100%;
    z-index: 0;
    position: absolute;
}



.portfolio-carousel-item .text-container{
    position: absolute;
    width: 680px;
    top: 50%;
    left: 5%;
    transform: translate(0, -50%);
}

.portfolio-carousel-item .title{
    background: #0000001f;
    padding: 10px;
    border-radius: 8px;
    display: inline-block;
    font-size: 60px;
}


.portfolio-carousel-item .description{
    font-size: 1.4em;
    margin-top: 30px;
}


.slick-dots li.slick-active button:before {
    color: transparent !important;
}

.portfolio-panel{
    background-image: url(/static/img/slider-background.jpg);
    background-size: cover;
    background-position: center center;

    height: 700px;
    margin-top: 70px;

    display: none;
    justify-content: center;
    overflow: hidden;
}


.portfolio-panel .controllers{
    margin: 30px 0px;
    display: flex;
    justify-content: center;
}

.portfolio-panel .controllers .next,
.portfolio-panel .controllers .previous
{
    background: rgb(71,183,247);
    background: linear-gradient(90deg, rgba(71,183,247,1) 27%, rgba(61,131,253,1) 56%);
    color: white;
    padding: 10px 0px;
    width: 135px;
    border-radius: 24px;
    margin: 0px 5px;
    font-weight: 900;
    font-size: 13px;
    text-align: center;
    cursor: pointer;
}   


.slick-dots{
    position: relative !important;
    top: -90px;
}

.slick-dots li{
    background: #ffffff2b;
    border-radius: 50%;
    width: 15px !important;
    height: 15px !important;
}

li.slick-active {
    background: #007bff;
}

#pf-title{
    font-weight: 400;
}

#pf-image{
    width: 100%;
    border-radius: 10px;
}

.pf-container{
    max-width: 800px;
}

#pf-description{
    padding: 0px 100px;
    margin-top: 30px;
    font-size: 17px;
    color: #7d7d7d;
    text-align: center;
}

#footer-section{
    background: #000000;
    background-image: url(/static/img/footer-image.jpg);
    background-repeat: no-repeat;
    background-position-x: 44%;
    background-position-y: center;
    background-size: cover;
    background-attachment: fixed;
    color: white;
    padding: 100px 60px 60px;
    margin-top: 100px;
}

#footer-section input::placeholder, #footer-section textarea::placeholder {
    color: #d2d0d0;
}

#footer-section .user-name{
    margin-top: 21px;
    display: flex;
    justify-content: center;
    align-items: center;
    /* padding: 20px 20px; */
}

#footer-section .user-name h1{
    font-weight: 300;
    margin-left: 30px;
}


.reCaptcha-container{
    display: flex; 
    justify-content: center;
    margin-bottom: 10px;
    overflow: hidden;
}



.contact-form-container{
    margin-top: 130px;
    /* border: solid #0e5ea1; */
    border-width: 0px 0px 0px 6px;
    text-align: left;
    padding: 25px 40px;
    /* padding-left: 40px; */
}

.contact-form-container .title{
    font-size: 22px;
    font-weight: 500;
}

.contact-form-container .email-icon{
    position: relative;
    left: 22px;
    top: 5px;
    font-size: 26px;

}

.contact-form-container .form-container{
    margin-top: 40px;
}

.contact-form-container .input-box{
    width: 100%;
    background: transparent;
    outline: none;
    border: none;
    color: white;
    font-style: italic;
}

.contact-linkedin-wrapper{
    font-size: 20px;
    font-weight: 600;
    display: flex;
    justify-content: center;
}

#footer-section .qr-container{
    width: 360px;
}

#footer-section .description-container{
    /* width: 690px; */
    text-align: left;
}


#footer-section .description{
    margin: 100px 0px;
    font-size: 22px;
    text-align: center;
}

#footer-section .image-container img{
    width: 120px;
}


#footer-section .description img{
    width: 140px;
}


.message-row{
    margin-top: 30px;
}

#mobile-menu-background{
    display: none;
}

.mobile-menu ul{
    padding: 0px;
}

.mobile-menu li{
    list-style: none;
    text-align: center;
}

.mobile-menu a{
    color: white;
}

.mobile-menu a:hover {
    text-decoration: none;
    font-weight: bolder;
}


.special-section{
    /* margin-top: 100px; */
    height: 1000px;
}


#projects-section{
    margin-top: 100px;
}

#services-section{
    margin-top: 100px;
}

.navigation-section::before {
    content: "";
    margin-top: -60px;
    height: 60px;
    display: block;
}

.special-section .image-container{
    background-color: black;
    height: 448px;
    background-position: left center;
    background-attachment: fixed;
    position: relative;
    background-size: cover;
}

.special-section .image-container::before {
    content: "";
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    background: #0000007d;
    width: 100%;
}

.special-section .text-container{
    position: absolute;
    color: white;

    display: flex;
    flex-direction: column;
    align-items: center;
}

.special-section .text-container .title{
    text-align: center;
    margin-top: 50px;
}

.special-section .text-container .title h2{
    font-size: 60px;
    font-weight: 600;
    margin-bottom: 50px;
}
.special-section .text-container .description.long{
    width: 700px;
    text-align: justify;
    margin-top: 20px;
    text-shadow: 0 3px 6px rgba(0, 0, 0, 0.14);
    font-size: 20px;
}

.special-section .text-container .boxes-container{
    display: flex;
    margin-top: 60px;
}

.special-section .single-item{
    background: white;
    color: black;
    height: 278px;
    width: 280px;
    padding: 20px;
    margin: 11px;
    border-radius: 17px;
}


.special-section .single-item img{
    width: 80px;
    height: 80px;
}

.special-sections .single-item .vector-img-container{
    display: inline-block;
    /* background-color: #008EFF; */
    border-radius: 50%;
}

.special-section .single-item h4    {
    color: #008EFF;
    font-size: 20px;
}

.special-section .boxes-container .description-small{
    text-align: center;
    font-size: 15px;
    margin-top: 14px;
    color: #615f5f;
}

.special-posts-container{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 60px;
}





.post-single {
    background: #ffffff;
    color: white;
    height: 402px;
    width: 370px;
    margin: 7px;
    border-radius: 10px;
    overflow: hidden;
    position: relative;
}

.black-overlay{
    position: absolute;
    top: 0px;
    left: 0px;
    height: 100%;
    width: 100%;
    background: #00000080;
    transition: 0.3s;
}


.post-single:hover .black-overlay {
    background: #00000000;
}

.post-single div:nth-child(1) {
    height: 100%;
    width: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}


.post-single .text {
    position: absolute;
    top: 0;
    z-index: 1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 85%;
}


.post-single .text .description{
    font-size: 16px;
    font-weight: 400;
    width: 100%;
}

.post-single .read-more-wrapper{
    position: absolute;
    bottom: 45px;
    justify-content: center;
    width: 100%;
    z-index: 1;
}

.post-single .read-more-link{
    color: white;
    border: white solid;
    border-width: 0.6px;
    border-radius: 9px;
    padding: 0px 29px;
    line-height: 51px;
    position: relative;

    background: #ffffff00;
    transition: 0.2s;
}


.post-single .read-more-link:hover{
    background: #ffffffbd;
    color: black;
}


.post-single .read-more-link i{
    position: relative; top: 6px; left: 15px;
}

.post-single .read-more-wrapper a {
    color: white;
    text-decoration: none;
}

.special-sections {
    height: 1180px;
}

.disclaimer-footer{
    background: black;
    color: whitesmoke;
    font-size: 15px;
    padding: 20px 15px;
    text-align: center;
}

.disclaimer-footer div{
    max-width: 1060px;
    display: inline-block;
}

.bg-attachment-local{
    background-attachment: local !important;
}


@media screen and (max-width :1880px) {
    .quote-mark-container.left{
        padding-left: 170px;
    }


    .quote-mark-container.right{
        padding-right: 150px;
    }

    .testimonials-container .quote-box{
        /* width: 386px; */
    }

    .quote-mark-container {
        font-size: 140px;
    }
}


@media screen and (max-width: 1590px) {
    .quote-mark-container.left{
        padding-left: 0px;
    }


    .quote-mark-container.right{
        padding-right: 0px;
    }

}   


@media screen and (max-width: 1300px) {
    .posts-container {
        padding: 20px 10px;
    }


}

@media screen and (max-width: 1200px) {
    .posts-container {
        padding: 20px 10px;
    }

    .special-section .single-item{
        height: 261px;
        width: 261px;
    }

    .testimonials-container{
        padding: 0px 50px 150px 50px;
    }


    .post-single{
        height: 366px;
        width: 313px;
    }

    .post-single .text{
        top: 44%;
    }


}




@media screen and (max-width: 1165px) {
    #footer-section{
        padding: 60px 40px 40px;
    }

    .footer-iphone{
    }

    #footer-section .user-name h1{
        font-size: 2.0rem;
    }

    .title-bar-items-container div{
        font-size: 10px;
    }


}


@media screen and (max-width: 981px) {
    .special-sections {
        height: 1550px;
    }


}




@media screen and (max-width: 950px) {
    .post-title{
        font-size: 28px;
    }

    #footer-section{
        height: auto;
        /* padding: 100px 40px 0px; */
        padding-bottom: 70px;
    }

    .intro-container .left-side{
        width: 100%;
        padding-left: 30px;
        padding-right: 30px;
    }

    .portfolio-carousel-item .text-container{
        width: 100%;
        left: 0;
        padding: 0 25px;
    }

    .special-section .single-item{
        width: unset;
    }

}


@media screen and (max-width: 872px) {
    .testimonials-container .quote-box{
        /* width: 95%; */
    }


    #footer-section .description-container .description{
        width: auto;
    }

    .qr-container{
        width: auto !important;
        margin-top: 60px;
    }

    .description-container-wrapper{
        flex-direction: column;
    }



}

@media screen and (max-width: 768px) {
    .intro-container{
        height: auto;
    }

    
    .intro-container .right-side div {
        height: auto;
    }


    .intro-container .left-side {
        padding-left: 30px;
        padding-top: 118px;
    }

    .testimonials-title div{
        width: auto;
    }

    .testimonials-container{
        padding: 0px 5px 150px 5px;
    }

    .testimonials-container .quote-box{
        height: auto;
    }

    .posts-container {
        padding: 20px 5px;
    }

    #pf-description {
        padding: 0px 40px;
        text-align: justify;
    }

    .single-post .img-container{
        min-height: 330px;
    }

    .special-section .text-container .description.long{
        width: 100%;
        padding: 0px 15px;
        font-size: 16px;
    }

    .special-section .text-container .boxes-container{
        flex-wrap: wrap;
    }


    .special-section .single-item{
        width: 100%;
    }

    .special-sections{
        height: 2600px;
    }


    .post-single{
        width: 100%;
    }

    .contact-form-container{
        background: #ffffff70;
        color: black;
    }

    #footer-section input::placeholder, #footer-section textarea::placeholder {
        color: black;
    }

    #footer-section input, #footer-section textarea {
        color: black;
    }

    #btn-send-msg{
        color: white !important;
    }

    .message-row{
        margin-top: 0px;
    }


    #footer-section .description{
        background: #00000094;
        font-size: 19px;
        padding: 25px;
    }

    .contact-form-container{
        margin: 0px;
    }

    .disclaimer-footer{
        text-align: justify;
        font-size: 13px;
    }

  }

@media screen and (max-width: 625px) {
    .intro-container .text-bg{
        font-size: 45px;
    }


    .intro-container .text-sm{
        font-size: 25px;
    }

    .intro-container .description{
        font-size: 18px;
    }

    .intro-container .left-side{
        padding-top: 40px;
    }

    #footer-section {
        padding: 60px 20px 20px;
    }
}


@media screen and (max-width: 480px) {
    .testimonials-container .quote-box{
        height: auto;
        padding: 35px 15px;
    }

    .testimonials-container .quote {
        padding-left: 20px;
        padding-right: 22px;
        font-size: 13px;
    }
    

    .quote-mark-container {
    }

    .single-post .img-container{
        min-height: 250px;
    }


    #footer-section{
      padding: 0px 22px 30px;  
    }

    .footer-iphone{
    }

    #footer-section .user-name{
        padding: 6px;
        margin-top: 30px;
    }


    #footer-section .user-name h1{
        font-size: 22px;
    }

    .contact-form-container{
        padding: 25px 25px;
        border-width: 0px 0px 0px 0px;
    }

    /* For making the reCaptcha Check box clickable in smaller devices */
    .g-recaptcha{
        width: 100%;
    }

    #footer-section .description{
        margin: 55px 0px;
    }

}


@media screen and (max-width: 425px) {
    .post-single .text .description {
        padding-bottom: 20px;
    }
}

@media screen and (max-width: 375px) {
    .post-title {
        font-size: 25px;
    }

    .single-post .img-container{
        min-height: 190px;
    }

    .intro-container .text-sm{
        font-size: 22px;
    }

    .intro-container .text-bg{
        font-size: 37px;
    }

    /* This special .long-desc class was created to prevent other .description elements from being this much small */
    .intro-container .description.long-desc{
        font-size: 15px;
    }

    #footer-section .user-name h1{
        font-size: 20px;
    }

    

    
}


@media screen and (max-width: 320px){
    .footer-iphone{
    }
}