/* =============================================
                Media queries start here
================================================ */
/* large phones (upto 768px) */
@media only screen and (max-width : 768px) and (min-width:280px){
    p{
        font-size: 16px;
    }
    .heading{
        font-size: 30px;
    }
    .header{
        padding: 10px 40px;
    }
    #navbar {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        position: fixed;
        top: 0;
        right: -300px;
        height: 100vh;
        width: 300px;
        background-color: #E3E6F3;
        box-shadow: 0px 40px 60px rgba(0,0,0,0.1);
        padding: 80px 0px 0px 10px;
        transition: 0.3s;
    }
    #navbar.active{
        right: 0px;
    }
    #navbar li{
        margin-bottom: 25px;
    }
    #mobile{
        display: flex;
        align-items: center;
    }
    #mobile i{
        font-size: 24px;
    }
    #close{
        display: initial;
        position: absolute;
        top: 30px;
        left: 30px;
        font-size: 24px;
        color: #222;
    }
    .hero {
        height: 60vh;
        justify-content: start;
    }
    .hero h1{
        margin-top: 20%;
        font-size: 40px;
    }
    .hero .feature-products{
        left: 0;
        display: flex;
        width: 100%;
    }
    .feature-product-btn{
        width: 158px;
    }
    #feature {
        justify-content: center;
    }
    #feature .boxes{
        flex-direction: column;
        gap: 1rem;
    }
    #feature .fe-box{
        width: 100%;
    }
    .about{
        flex-direction: column;
        padding-left: 10px;
        padding-right: 10px;
        align-items: start;
    }
    .about .about-img{
        height: 500px;
        width: 100%;
    }
    .about .about-content{
        width: 100%;
        position: relative;
        justify-content: center;
        align-items: center;
        right: 0px;
        padding: 10px;
        top: 95%;
    }
    .about-content h2{
        font-size: 25px;
    }
    .about-content p{
        font-size: 16px;
    }
   .about-content .about-btn{
    margin-top: 0px;
    width: 250px;
    font-size: 16px;
   }
   .services{
    margin-top: 500px;
    }
    .services .boxes{
        grid-template-columns: repeat(1, 1fr);
        gap: 1rem;
    }
    .services .fe-box{
        width: 100%;
        padding: 0px 50px;
    }
    .services .fe-box h6{
        font-size: 25px;
        font-weight: 600;
    }
    .work{
        height: 1024px;
        display: flex;
    }
    .work-content{        
        flex-direction: column;
    }
    .work .work-count{
        position: relative;
        display: flex;
        flex-direction: column;
        gap: 2rem;
        padding: 0px 10px;
    }
    .work .p-box{
        width: 100%;
        flex-direction: column;
        position: relative;
    }
    .work .p-box img{
        width: 70px;
        height: 70px;
    }
    .work .p-box h2{
        font-size: 52px;
    }
    .work .p-box p{
        font-size: 20px;
    }
    .happy-client{
        right: 0px;
        top: 10px;
    }
    .happy-client img{
        top: -15px;
        right: -18px;
    }
    .projects-completed{
        left: 0px;
        top: 60px;
        z-index: 1;
    }
    .projects-completed img{
        left: -20px;
        top: -60px;
    }
    .awards-win{
        right: 0px;
        top: 70px;
    }
    .awards-win img{
        top: -20px;
        right: -18px;
    }
    .Years-business{
        top: 60px;
        left: 0px;
    }
    .Years-business img {
        bottom: -30px;
        right: -20px;
    }
    .experience{
        position: relative;
        left: 0;
        top: 100px;
    }
    .experience h1{
        font-size: 35px;
        margin-bottom: 10px;
    }
    .experience p{
        font-size: 18px;
    }
    .work-btn{
        margin-top: 20px;
    }
    .news-letter{
        flex-direction: column;
        align-items: center;
        text-align: center;
        margin-top: 100px;
    }
    .news-letter .newsletter-text h2{
        font-size: 30px;
    }
    .projects{
        display: flex;
        justify-content: start;
        flex-direction: column;
    }
    .project-categories h1{
        text-align: center;
        margin-bottom: 20px;
    }
    .navbar{
            display: flex;
            flex-direction: row;
            flex-wrap: wrap;
            align-items: center;
            justify-content: center;
            margin-bottom: 20px;
    }
    .navbar li{
        padding: 0px 20px; 
    }
    .navbar li a{
        text-decoration: none;
        font-size: 16px;
        font-weight: 600;
        color: grey;
        transition: 0.1s ease;    
    }
    .navbar li a.active::after,.navbar li a:hover::after{
        content: "";
        width: 3px;
        height: 15px;
        background: var(--primary-color);
        position: absolute;
        bottom: 0px;
        left: 10px;
    }
    .projects-content{
        grid-template-columns: repeat(1, 1fr);
        gap: 2rem;
    }
    .card{
        flex-direction: column;
        align-items: start;
    }
    .projects-btns{
        gap: .3rem;
    }
    .projects-btn{
        width: 90px;
    }
    .pagination-dots {
        gap: .2rem;
    }
    .pagination-dots li {
        width: 8px;
        height: 8px;
    }
    .contact{
        display: block;
        align-items: start;
        padding: 40px 10px;
    }
    .contact p{
        margin-top: 10px;
    }
    .contact form{
        margin-top: 50px;
        text-align: center;
    }
    .form-row {
        display: flex;
        flex-direction: column;
    }
    .form-input,.form-select,
    .form-textarea {
        width: 100%;
    }
    .contact-btn{
        margin-left: 10px;
        margin-bottom: 10px;
    }
    .footer{
        position: relative;
        padding: 40px 10px;
    }
    .footer-row{
        flex-direction: column;
        flex-wrap: wrap;
    }
    .footer-row p{
        font-size: 18px;
        margin-bottom: 10px;
    }
    .footer-row .col{
        display: block;
    }
    .footer-btn{
        width: 100%;
    }
    .footer-row .social{
        margin-top: 10px;
    }
    .icons{
        margin-bottom: 20px;
    }
    footer .copyright{
        width: 100%;
        height: 50px;
        padding: 0px;
    }
    .copyright p{
        font-size: 14px;
    }
}
/* ======================================================= 
             tablets (upto 1024) 
   ===========================================================*/
@media only screen and (max-width : 64rem)and (min-width:48rem){
    p{
        font-size: 18px;
    }
    .header{
        padding: 10px 40px;
    }
    #navbar li{
        list-style: none;
        padding: 0px 10px; 
    }
    .hero{
        height: 70vh;
    }
    .hero h1{
        font-size: 40px;
    }
    .hero .feature-products{
        left: 0;
        width: 100%;
    }
    .feature-product-btn{
        width: 258px;
        height: 40px;
    }
    #feature {
        justify-content: center;
        margin-top: 40px;
    }
    #feature .boxes{
       flex-direction: row;
    }
    #feature .fe-box{
        width: 250px;
    }
    .about{
        flex-direction: column;
        padding: 10px;
        align-items: start;
    }
    .about .about-img{
        height: 669px;
        width: 70%;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .about .about-content{
        width: 70%;
        height: 523px;
        position: relative;
        justify-content: start;
        align-items: start;
        left: 58%;
        padding: 30px;
    }
    .about-content h2{
        font-size: 30px;
        font-weight: 700;
    }
    .about-content p{
        font-size: 18px;
        font-weight: 400;
    }
   .about-content .about-btn{
    margin-top: 20px;
    width: 300px;
    font-size: 18px;
   }
    .services .boxes{
        grid-template-columns: repeat(2, 1fr);
        gap: 2rem;
    }
    .services .fe-box{
        width: 100%;
        gap: 20px;
        padding: 0px 50px;   
    }
    .services .fe-box h6{
        font-size: 25px;
        font-weight: 600;
    }
    .work{
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 3rem;
        padding: 10px;
    }
  .work-content{
        height: 100%;
        display: flex;
        position: relative;
    }      
    .work .work-count{
        height: 100%;
        position: relative;
    }
    .work .p-box{
        width: 100%;
        flex-direction: column;
        position: relative;
    }
    .work .p-box img{
        width: 70px;
        height: 70px;
        position: absolute;
    }
    .work .p-box h2{
        font-size: 52px;
    }
    .work .p-box p{
        font-size: 20px;
    }
    .happy-client{
        right: 30px;
        top: 60px;
        z-index: 3;
    }
    .happy-client img{
        top: -15px;
        right: -30px;
    }
    .projects-completed{
        left: -210px;
        top: 20px;
        z-index: 1;
    }
    .projects-completed img{
        left: -40px;
        top: -60px;
    }
    .awards-win{
        right: 20px;
        top: 0px;
        z-index: 3;
    }
    .awards-win img{
        top: -20px;
        right: -20px;
    }
    .Years-business{
        top: -20px;
        left: -210px;
    }
    .Years-business img{
        left: -40px;
        top: -60px;
    }
    .experience{
        position: absolute;
        left: 310px;
        top: 100px;
    }
    .experience h1{
        font-size: 40px;
        font-weight: 700;
        color: var(--primary-color);
        margin-bottom: 50px;
    }
    .experience p{
        font-size: 18px;
    }
    .work-btn{
        margin-top: 70px;
    }
    .news-letter{
        padding: 0px 10px;
        justify-content: start;
    }
    .news-letter .transparent-btn{
        width: 400px;
    }
    .projects{
        display: flex;
        justify-content: start;
        flex-direction: column;
        align-items: center;
    
    }
    .project-categories h1{
        text-align: center;
        margin-bottom: 20px;
    }
    .navbar{
            display: flex;
            flex-direction: row;
            align-items: flex-start;
            justify-content: flex-start;
            margin-bottom: 20px;
    }
    .projects-content{
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 2rem;
        align-items: center;
    }
    .projects-btns{
        gap: .3rem;
        grid-column: 1 / -1; 
    }
    .projects-btn{
        width: 90px;
    }
    .pagination-dots {
        gap: .2rem;
    }
    .pagination-dots li {
        width: 8px;
        height: 8px;
    }
    .contact{
        display: block;
        padding: 40px 10px;
    }
    .contact p{
        font-size: 20px;
    }
    .contact form{
        margin-top: 50px;
        text-align: center;
    }
    .form-row {
        display: flex;
        flex-direction: row;
    }
    .form-input,.form-select,
    .form-textarea {
        width: 100%;
    } 
    .contact-btn{
        margin-left: 30%;
        margin-bottom: 10px;
    }
    .footer{
        padding: 80px 10px;
    }
    .footer-row{
        flex-direction: row;
        flex-wrap: nowrap;
        justify-content: space-between;
        gap: 1rem;
    }
    .footer-row .col{
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        margin-bottom: 20px;
    }
    .footer-row p{
        font-size: 18px;
        margin-bottom: 10px;
    }
    .footer-row .social{
        margin-top: 10px;
    }
    .icons{
        margin-bottom: 20px;
    }
    footer .copyright{
        width: 100%;
        height: 50px;
        padding: 0px;
    }
    .copyright p{
        font-size: 14px;
    }
}

/* =========================================================
                    larger devices than 1024 upto 1560
============================================================*/
@media only screen and (max-width : 1550px)and (min-width:1025px){
    .about{
        flex-direction: column;
        padding-left: 5%;
        
        align-items: start;
    }
    .about .about-content{
        width: 70%;
        height: 523px;
        position: relative;
        justify-content: start;
        align-items: start;
        left: 50%;
        padding: 30px;
    }
    .about-content h2{
        font-size: 30px;
        font-weight: 700;
    }
    .about-content p{
        font-size: 18px;
        font-weight: 400;
    }
   .about-content .about-btn{
    margin-top: 20px;
    width: 300px;
    font-size: 18px;
   }
   .footer .form-input{
    width: 250px;
   }
    footer .copyright{
        padding: 0px;
    }
    
}
/* =============================================
                Media Quiries ends here
================================================ */