@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;700&display=swap');
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* ############## html element styling ############### */

html{
    font-size: 62.5%;
}
body{
    font-family: 'Montserrat', sans-serif;
    line-height: 1.7;
}
ul li{
    list-style: none;
}
a{
    font-size: 1.6rem;
    text-decoration: none;
}
p, li{
    font-size: 1.6rem;
    margin-bottom: 0.5em;
    letter-spacing: 0.15em;
}
h1, h2, h3{
    margin-bottom: 0.5em;
    letter-spacing: 0.15em;
    font-weight: 500;
}

/* ############### Utility classes ############## */

.container{
    max-width: 1200px;
    width: 90%;
    margin: 0 auto;
}




.lg-heading{
    font-size: 3.5rem;
}

.md-heading{
    font-size: 2.2rem;
}

.text-red{
    color: #e63946;
}

.text-light{
    color: #f4f4f4;
}
 .text-black{
     color: #333333;
 }

 .text-gray{
     color: #555555;
 }

 .bg-dark{
     background-color: #263238;



 }

 .btn{
     display: inline-block;
     padding: 0.5em;
     font-weight: 500;
     text-transform: uppercase;
     margin: 0.5em 0;
 }
  .btn-primary{
      background-color: #fff;
      border-radius: 10em;
  }
  .btn-primary:hover{
      background-color: #ddd;
  }

  .btn-secondary{
      border: 2px solid #e63946;
      border-radius: 1.8em;
      color: #e63946;
      background: #fff;
  }
  .btn-secondary:hover{
      background-color: #fcf3f2;
  }


/* ################# header styling ###################### */

.header{
    position: relative;
    height: 95vh;
    background:linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)) , url('../IMG/header-image.jpg');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.navbar{
    
    padding: 1rem;
}

.header .logo,
.header .navbar a{
    color: white; 
}

 .navbar .logo{
    float: left;
    font-size: 3.5rem;
}

 .navbar .nav-items{
    float: right;
    margin-top: 1rem ;
}
.navbar .nav-item{
    display: inline-block ;
    padding: 1rem;
    text-transform: uppercase;
}


 .navbar a:link,
 .navbar a:visited{
     color: #f4f4f4;
 }
.navbar a{
    padding-bottom: 0.3rem;
}

 .navbar a:hover{
     border-bottom: 1px solid #fff;
 }
.navbar::after{
    content: "";
    display: block;
    clear: both;
}
/* ################### header content styling ################ */

 .header-content{
     position: absolute;
     top: 50%;
     left: 50%;
     transform: translate(-50%, -50%);
     text-align: center;
     background: linear-gradient(rgba(0,0,0,.2), rgba(0,0,0,.2));
 }
.header-content h1{
    text-transform: uppercase;
    font-weight: 700;

}
.header-content p{
    text-transform: uppercase;
   
}

/* ############ showcase section styling ############### */
.showcase{
    background: #ddd;
    padding: 10rem 0;
}
.row{
    height: 350px;
    background: #fff;
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.316);
}
.row1{
    margin-bottom: 10rem;
}
 .row1 .img-box, .row2 .text-box{
     float: left;
     width: 50%;
 }
 .row2 .img-box, .row1 .text-box{
    float: right;
    width: 50%;
}
.row .img-box{
  
    height: 100%;

}
.row .text-box{
  
    padding: 3rem;
}
.row .img-box img{
    display: inline-block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.row::after{
    content: "";
    display: block;
    clear: both;
}

/* ################ features section styling ################ */

.features{
    padding: 10rem 0;
}
.box-wrapper{
    box-shadow: 5px 5px 10px rgba(102, 102, 102, 0.521);
}

.box{
    width: 33.3333333%;
    float: left;
    padding: 2rem;
    text-align: center;
}
.box-1{
    
    background: #263238;
    color: white;
}
.box-3{
    
    background: #263238;
    color: white;
  }

.box-2{
     
    background: linear-gradient(25deg,#d64c7f,#ee4758 50%);
    color: #fff;
}

.box-wrapper::after{
    content: "";
    display: block;
    clear: both;
}

/* ##################### Footer Styling ################## */

.footer{
    background: #263238;
    color: #f4f4f4;
    padding: 2rem;
    text-align: center;

}

.social-media-links i{
    color: #f4f4f4;
    margin: 2rem;
    box-shadow: 5px 5px 10px rgba(102, 102, 102, 0.521);

}

.social-media-links i:hover
{
  color: rgb(245, 189, 189);
}

/* ################## About page styling #####################  */

.about{
    padding: 5rem 0;
}

.about-heading{
    border-bottom: 6px solid #e63946;
}

/* .about-heading::after{

    content: "";
    display: block;
    border: 3px solid #e63946;
    width: 100%;
} */

/* ################ about wrapper ####################  */

.about-wrapper .left{
    float: left;
    width: 50%;
    text-align: left;

}

.about-wrapper .right{
    float: right;
    width: 50%;
    text-align: left;
    
    
    
}

.about-wrapper::after{
    content: "";
    display: block;
    clear: both;
}

.about-wrapper{
    padding: 0 15rem;
    text-align: center;
    margin-top: 2rem;
}

.about-wrapper li::before{
    content: "\2713";
    color: #e63946;
    font-weight: bold;
    padding-right: 1rem;
}
/* ###################### count styling ###################################  */
.counts{
    
    margin-top: 3rem;

}

.count-item{
    
    width: 25%;
    float: left;
    text-align: center;

}
.counts::after{
    content: "";
    display: block;
    clear: both;
}

.count-item span{
    font-size: 3rem;
    font-weight: 700;
    color: #e63946;
}

.count-item p{
    font-weight: 700;
    color: #555;
    font-size: 1.8rem;
}
/* ########################### banner styling ######################  */

.cta-banner{
    background: linear-gradient(25deg,#d64c7f,#ee4758 50%);
    color: #f4f4f4;
    padding: 1rem;
    box-shadow: 5px 5px 10px #00000056;
    margin-top: 3rem;
}

.cta-banner-left{
    width: 60%;
    float: left;

}

.cta-banner-right{
    width: 40%;
    float: right;
    text-align: right;
}

.cta-line{

    font-weight: 700;
    font-size: 2rem;
    margin-top: 1.7rem;
}

.btn-cta{
    text-align: center;
    display: inline-block;
    font-weight: 700;
    font-size: 3rem;
    text-transform: uppercase;
    border: 4px solid white;
    color: white;
    padding: 0.3em 2.5em;
    letter-spacing: 0.5em0;
}
.cta-banner::after{
    content: "";
    display: block;
    clear: both;
}

/* ############################# contact page styling ###################### */

.contact-form{
    padding: 5rem 0;
    background: #f7f7f7;
   
}



.form-wrapper::after{
    content: "";
    display: block;
    clear: both;
}
.form-wrapper .company-address{
    height: 760px;
    background: #fff;
    width: 49%;
    float: left;
    padding: 1rem;
}
.form-wrapper .company-address i{
    display: inline-block;
    margin-right: 1rem;
}

.form-wrapper .company-address h2{
    display: inline-block;
    text-transform: uppercase;
}

.form-wrapper .address-group{
    margin-bottom: 3rem;
}

.form-wrapper .company-address img{
    max-width: 90%;
    min-height: 40rem;
    object-fit: cover;
    object-position: right;

}

/* ######################## form styling ###################### */


.form-wrapper .form{
    height: 760px;
    font-size: 1.6rem;
    background: #fff;
    width: 49%;
    float: right;
    padding: 1rem;
}

.form h1::after{
    content: "";
    display: block;
    border: 4px solid #e63946;
    width: 100%;
    
}

.form-wrapper .form label{
    display: block;
}

.form-wrapper .form input{
    padding: 0.5rem;
    width: 100%;

}

.form-wrapper .form .form-group{
    margin-bottom: 1.2rem;
}

.form-wrapper .form label::after{
    content: "* ";
    color: #e63946;
}

.form-wrapper .form textarea{
    width: 100%;
    height: 300px;
    padding: 1rem;
}

.form-btn{
     display: block;
     margin: 0 auto;
     padding: 0.5em 3em;
     font-size: 1.8rem;
     text-transform: uppercase;
     background: #e63946;
     color: #fff;
     outline: none;
     cursor: pointer;
}

/* #################################### media queries ######################### */

@media(min-width: 201px) and (max-width: 500px){
    html{
        font-size: 50%;
    }
    p{
        font-size: 1.8rem;
    }

    .navbar .nav-items, .navbar .logo{
        float: none; 
        display: block;
        width: 100%;
        text-align: center;
    
    }

    .row{
        height: auto;
        width: 100%;

    }

    .row .img-box, .row .text-box{
        float: none;
        width: 100%;
        text-align: center;
    }

    .features .box{
        float: none;
        width: 100%;
        text-align: center;
        box-shadow: 5px 5px 10px rgba(102, 102, 102, 0.521);
     }

     .features .box-2,
     .features .box-3{
         margin-top: 7rem;
     }

     .box-wrapper{
        box-shadow: none;
    }

    .cta-banner-left, .cta-banner-right{
        float: none;
        width: 100%;
        text-align: center;

    }

    .form-wrapper .company-address{
        float: none;
        width: 100%;
        height: auto;
        margin-bottom: 5rem;

    }

    .form-wrapper .form{
        float: none;
        width: 100%;
        height: auto;

    }

    .about-wrapper .left, .right{
        float: none;
        width: 100%;
        /* text-align: center; */
        height: auto;
        /* margin-top: 5rem; */
       

       

    }

    .counts .count-item{
        float: none;
        width: 100%;
        text-align: center;
        height: auto;
        margin-top: 5rem;
    }

}

@media(min-width: 501px) and (max-width:768px){
    html{
        font-size: 8px;
     }
     p{
        font-size: 1.8rem;
    }

    .navbar .nav-items, .navbar .logo{
        float: none; 
        display: block;
        width: 100%;
        text-align: center;
    
    }

    .row{
        height: auto;
        width: 100%;

    }

    .row .img-box, .row .text-box{
        float: none;
        width: 100%;
        text-align: center;
    }

    .features .box{
        float: none;
        width: 100%;
        text-align: center;
        box-shadow: 5px 5px 10px rgba(102, 102, 102, 0.521);
     }

     .features .box-2,
     .features .box-3{
         margin-top: 7rem;
     }

     .box-wrapper{
        box-shadow: none;
    }

    .cta-banner-left, .cta-banner-right{
        float: none;
        width: 100%;
        text-align: center;

    }

    .form-wrapper .company-address{
        float: none;
        width: 100%;
        height: auto;
        margin-bottom: 5rem;

    }

    .form-wrapper .form{
        float: none;
        width: 100%;
        height: auto;

    }
}
@media(min-width:769px) and (max-width:1200px){
    html{
        font-size: 56.25%;
    }
    .row .text-box h2{
        font-size: 2.2rem;
        font-weight: 500;
    }
}

@media(orientation: landscape) and (max-height:500px){
    .header{
        height: 90vmax;
    }
}