@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@100;200;300;400;500;600&display=swap');

:root{
   --blue:#00b8b8;
   --black:#333;
   --white:#fff;
   --light-color:#666;
   --light-bg:#eee;
   --border:.2rem solid rgba(0,0,0,.1);
   --box-shadow:0 .5rem 1rem rgba(0,0,0,.1);
}

*{
   font-family: 'Poppins', sans-serif;
   margin:0; padding:0;
   box-sizing: border-box;
   outline: none; border:none;
   text-decoration: none !important;
   text-transform: none;
}

*::-webkit-scrollbar{
   height: .5rem;
   width: 1rem;
}

*::-webkit-scrollbar-track{
   background-color: transparent;
}

*::-webkit-scrollbar-thumb{
   background-color: var(--blue);
}

html{
   font-size: 62.5%;
   overflow-x: hidden;
   scroll-behavior: smooth;
   scroll-padding-top: 6.5rem;
}

section{
   padding:7rem 2rem;
}

.heading{
   text-align: center;
   font-size: 4rem;
   color:var(--black);
   text-transform: none;
   font-weight: bolder;
   margin-bottom: 3rem;
}

.link-btn{
   display: inline-block;
   padding:1rem 3rem;
   border-radius: .5rem;
   background-color: var(--blue);
   cursor: pointer;
   font-size: 1.7rem;
   color:var(--white);
}

.link-btn:hover{
   background-color: var(--black);
   color:var(--white);
}

.header{
   padding:2rem;
   border-bottom: var(--border);
}

.header.active{
   background-color: var(--white);
   box-shadow: var(--box-shadow);
   border:0;
}

.header .logo{
   font-size: 2rem;
   color:var(--black);
}

.header .logo span{
   color:var(--blue);
}

.header .nav a{
   margin:0 1rem;
   font-size: 1.7rem;
   color:var(--black);
   font-weight: bold;
}

.header .nav a:hover{
   color:var(--blue);
}

#menu-btn{
   font-size: 2.5rem;
   color:var(--black);
   cursor: pointer;
   display: none;
}

.home{
   /* background:url(../images/home-bg.jpg) no-repeat; */
   background-image: linear-gradient(rgba(0,0,0,0.3),rgba(0,0,0,0.3)),url(../images/home-bg.jpg);
   background-size: cover;
   background-position: center;
}

.home .content{
   width: 55rem;
   padding:2rem;
}

.home .content h3{
   font-size: 6rem;
   text-transform: none ;
   color:var(--black);
}

.home .content p{
   line-height: 2;
   font-size: 1.5rem;
   color:var(--black);
   padding:1rem 0;
}

.about .row{
   min-height: 50vh;
}

.about .content span{
   font-size: 2rem;
   color:var(--blue);
}

.about .content h3{
   font-size: 3rem;
   color:var(--black);
   margin-top: 0rem;
}

.about .content p{
   padding:1rem 0;
   font-size: 1.4rem;
   color:var(--light-color);
   line-height: 2;
}

.services{
   background-color: var(--light-bg);
}

.services .content
{
   display: flex;
   justify-content: center;
   flex-direction: row-reverse;
   flex-wrap: wrap;
   margin-top: 40px;
}
.services .content .box
{
   width: 340px;
   margin: 20px;
   border: 15px solid #fff;
   box-shadow: 0 5px 35px rgba(0,0,0,0.08);
}
.services .content .box .imgBx
{
   position: relative;
   width: 100%;
   height: 300px;

}
.services .content .box .imgBx img
{
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   object-fit: cover;
}
.services .content .box .text
{
   padding: 15px 0 5px;
}
.services .content .box .text h3
{
   font-weight: 400;
   color: #111;
}


.reviews{
   background-color: var(--light-bg);
}

.reviews .box-container{
   display: grid;
   grid-template-columns: repeat(auto-fit, minmax(30rem, 1fr));
   gap:2rem;
}

.reviews .box-container .box{
   background-color: var(--white);
   text-align: center;
   border-radius: .5rem;
   box-shadow: var(--box-shadow);
   padding:2rem;
}

.reviews .box-container .box img{
   height: 10rem;
   width: 10rem;
   border-radius: 50%;
}

.reviews .box-container .box p{
   padding:2rem 0;
   line-height: 2;
   font-size: 1.5rem;
   color:var(--light-color);
   margin-bottom: 0;
}

.reviews .box-container .box .stars{
   padding:.5rem 1.5rem;
   border-radius: .5rem;
   background-color: var(--light-bg);
   margin-bottom: 2rem;
   display: inline-block;
}

.reviews .box-container .box .stars i{
   font-size: 1.5rem;
   color:var(--blue);
}

.reviews .box-container .box h3{
   font-size: 2rem;
   color:var(--black);
}

.reviews .box-container .box span{
   color:var(--light-color);
   font-size: 1.5rem;
}

.row
{
   position: relative;
   width: 100%;
   display: flex;
   justify-content: space-between;
}
.row .col50
{
   position: relative;
   width: 48%;
}

.titleText
{
   color: #111;
   font-size: 2em;
   font-weight: 300;
}
.titleText span
{
   color: --blue:#00b8b8;
   font-weight: 700;
   font-size: 1.5em;
}
.row .col50 .imgBx
{
   position: relative;
   width: 100%;
   /*min-height: 300px;*/
   height: 100%;
}
.row .col50 .imgBx img
{
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   object-fit: cover;
}
.title
{
   width: 100%;
   display: flex;
   justify-content: center;
   align-items: center;
   flex-direction: column;
}

.contact{
  display: flex;
  padding: 0 10px;
  min-height: 100vh;
  background: --blue:#00b8b8;
  align-items: center;
  justify-content: center;
}

@media (min-width: 768px)
.container-form {
    width: 750px;
}

.container-form {
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}

.container-form {
    border-radius: 5px;
    background-color: #f2f2f2;
    padding: 20px;
}

body {font-family: Arial, Helvetica, sans-serif;}
* {box-sizing: border-box;}

input[type=text], select, textarea {
  width: 100%;
  padding: 12px;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-sizing: border-box;
  margin-top: 6px;
  margin-bottom: 16px;
  resize: vertical;
}

input[type=submit] {
  background-color: #04AA6D;
  color: white;
  padding: 12px 20px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
}

input[type=submit]:hover {
  background-color: #45a049;
}

.container-form {
  border-radius: 5px;
  background-color: #f2f2f2;
  padding: 20px;
}











::selection{
  color: #fff;
  background: #00b8b8;
}
.wrapper{
  width: 715px;
  background: #fff;
  border-radius: 5px;
  box-shadow: 10px 10px 10px rgba(0,0,0,0.05);
}
.wrapper header{
  font-size: 22px;
  font-weight: 600;
  padding: 20px 30px;
  border-bottom: 1px solid #ccc;
}
.wrapper form{
  margin: 35px 30px;
}
.wrapper form.disabled{
  pointer-events: none;
  opacity: 0.7;
}
form .dbl-field{
  display: flex;
  margin-bottom: 25px;
  justify-content: space-between;
}
.dbl-field .field{
  height: 50px;
  display: flex;
  position: relative;
  width: calc(100% / 2 - 13px);
}
.wrapper form i{
  position: absolute;
  top: 50%;
  left: 18px;
  color: #ccc;
  font-size: 17px;
  pointer-events: none;
  transform: translateY(-50%);
}
form .field input,
form .message textarea{
  width: 100%;
  height: 100%;
  outline: none;
  padding: 0 18px 0 48px;
  font-size: 16px;
  border-radius: 5px;
  border: 1px solid #ccc;
}
.field input::placeholder,
.message textarea::placeholder{
  color: #ccc;
}
.field input:focus,
.message textarea:focus{
  padding-left: 47px;
  border: 2px solid --blue:#00b8b8;
}
.field input:focus ~ i,
.message textarea:focus ~ i{
  color: --blue:#00b8b8;
}
form .message{
  position: relative;
}
form .message i{
  top: 30px;
  font-size: 20px;
}
form .message textarea{
  min-height: 130px;
  max-height: 230px;
  max-width: 100%;
  min-width: 100%;
  padding: 15px 20px 0 48px;
}
form .message textarea::-webkit-scrollbar{
  width: 0px;
}
.message textarea:focus{
  padding-top: 14px;
}
form .button-area{
  margin: 25px 0;
  display: flex;
  align-items: center;
}
.button-area button{
  color: #111;
  border: none;
  outline: none;
  font-size: 18px;
  cursor: pointer;
  border-radius: 5px;
  padding: 13px 25px;
  background: --black;
  transition: background 0.3s ease;
}
.button-area button:hover{
  background: #00b8c8;
}
.button-area span{
  font-size: 17px;
  margin-left: 30px;
  display: inline-block;
}

.footer{
   background-color: var(--light-bg);
}

.footer .box-container{
   display: grid;
   grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
   gap:3rem;
}

.footer .box-container .box{
   text-align: center;
}

.footer .box-container .box i{
   height: 5rem;
   width: 5rem;
   border-radius: 50%;
   line-height: 5rem;
   font-size: 2rem;
   background-color: var(--blue);
   color:var(--white);
}

.footer .box-container .box h3{
   font-size: 2rem;
   margin:2rem 0;
   color:var(--black);
}

.footer .box-container .box p{
   font-size: 1.5rem;
   color:var(--light-color);
   text-transform: none;
}

.footer .copyright{
   text-align: center;
   border-top: var(--border);
   padding-top: 2rem;
   margin-top: 2rem;
   font-size: 2rem;
   color:var(--light-color);
}

.footer .copyright span{
   color:var(--blue);
}







/* media queries  */

@media (max-width:991px){

   html{
      font-size: 55%;
   }

   .header .link-btn{
      display: none;
   }

   section{
      padding:5rem 2rem;
   }

}

@media (max-width: 600px){
  .wrapper header{
    text-align: center;
  }
  .wrapper form{
    margin: 35px 20px;
  }
  form .dbl-field{
    flex-direction: column;
    margin-bottom: 0px;
  }
  form .dbl-field .field{
    width: 100%;
    height: 45px;
    margin-bottom: 20px;
  }
  form .message textarea{
    resize: none;
  }
  form .button-area{
    margin-top: 20px;
    flex-direction: column;
  }
  .button-area button{
    width: 100%;
    padding: 11px 0;
    font-size: 16px;
  }
  .button-area span{
    margin: 20px 0 0;
    text-align: center;
  }
}

@media (max-width:768px){

   section{
      padding:3rem 1rem;
   }

   #menu-btn{
      display: inline-block;
      transition: .2s linear;
   }

   #menu-btn.fa-times{
      transform: rotate(180deg);
   }

   .header .nav{
      position: absolute;
      top:99%; left:0; right:0;
      background-color: var(--white);
      border-top: var(--border);
      border-bottom: var(--border);
      padding:1rem 0;
      text-align: center;
      flex-flow: column;
      clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
      transition: .2s linear;
   }

   .header .nav.active{
      clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
   }

   .header .nav a{
      margin:1rem 0;
      font-size: 2rem;
   }

   .home{
      background-position: left;
   }

   .home .content{
      width: auto;
   }

   .title
   {
      text-align: center;
   }
   .titleText
   {
      font-size: 1.8em;
      line-height: 1.5em;
      margin-bottom: 15px;
      font-weight: 300;
   }

   .row 
   {
      flex-direction: column;
   }
   .row .col50
   {
      position: relative;
      width: 100%;
   }
   .row .col50 .imgBx
   {
      height: 300px;
      margin-top: 20px;
   }

}

@media (max-width:450px){

   html{
      font-size: 50%;
   }

   .home .content h3{
      font-size: 4rem;
   }

   .heading{
      font-size: 3rem;
   }
 .link-btn{
   display: inline-block;
   padding:1rem 3rem;
   border-radius: .5rem;
   background-color: var(--blue);
   cursor: pointer;
   font-size: 1.7rem;
   color:var(--white);
}

}