@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Margarine&family=Roboto:ital,wght@0,100..900;1,100..900&family=Satisfy&display=swap');
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

:root{
    /*------------------font family -----------------*/
    --ff-primary: *Roboto*, sans-serif;
     --ff-secondary: *Inter*, sans-serif;
      --ff-design: *Satisfy*, cursive;
       --ff-brand: *Margarine*, sans-serif;

/*------------------colors -----------------*/
--clr-white: #fff;
--clr-dark: #333;
--clr-grey-1: #102a42;
--clr-grey-2: #617d98;
--clr-grey-3: #f1f5f8;
--clr-primary: #f53b57;
--clr-primary-light: #f04660;
--clr-secondary: #e9b949;
}
/*------------------ Global CSS -----------------*/
a{
    text-decoration: none;
}
ing{
    width: 100px;
    display: block;
}
h1,
h2,
h3,
h4{
    letter-spacing: 0.5px;
    text-transform: capitalize;
    line-height: 1.25;
    margin-bottom: 0.75rem;
}
h1{
    font-size: 3rem;
}
h2{
    font-size: 2rem;
}
h3{
    font-size: 1.5rem;
}
h4{
    font-size: 0.875rem;
}
p{
    margin-bottom: 1.75rem;
}
body{
    font-family: var(--ff-primary);
    font-size: 0.875rem;
    background-color: var(--clr-white);
    color: var(--clr-grey-1);
    line-height: 1.5;
}
/*-------------------------------------------*/

.btn {
    background-color: var(--clr-primary);
    color: var(--clr-white);
    padding: 0.375rem 0.75rem;
    letter-spacing: 0.5px;
    display: inline-block;
    font-weight: 400;
    transition: var(--transition);
    font-size: 0.875rem;
    border: none;
    cursor: pointer;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);

}
.btn:hover {
    background-color: var(--clr-primary-light);
}

.clearfix::after,
.clearfix::before {
    content:  "";
    clear:both;
    display: table;
}
.section-center{
    padding: 4rem 0;
    width: 85vm;
    margin: 0 auto;
    max-width: 1170px;
}
.section-title h3 {
    font-family: var(--ff-design);
    color: var(--clr-primary);
    font-size: 2rem;
}
.section-title {
    margin-bottom: 2rem;
}
@media  screen and(min-width: 992px) {
    .section-center{
        width: 95%;
        padding: 4rem 1rem;
    }
    
}

/*------------------ Navbar -----------------*/

.nav-btn svg{
    fill: var(--clr-primary);
    position: fixed;
    top: 5%;
    left:  5%;
    cursor: pointer;
   /* height: 32px;
    width: 32px; */
    z-index: 1;
}
#nav-check{
    display: none;
}
#nav-check:checked ~ .navbar {
   transform: translateX(0);  

}
.navbar {
    position: fixed;
    background-color: rgba(0, 0, 0, 0.9);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transform: translateX(-100%);
    transition: var(--transition);
    z-index: 3;
}



.navbar h3{
    padding: 1rem;
    color: transparent;
    font-size: 1.5rem;
    text-align: center;
    text-transform: uppercase;
    font-weight: 700;
    background-image: linear-gradient(180deg,var(--clr-primary) 25%, var(--clr-secondary));
    background-clip: text;
    margin-bottom: -1rem;
}
.navbar-header img{
    width: 100px;
    margin: 0 auto;

}
.navbar-header {
    position: relative;
}
.nav-close {
position: absolute;
right: 0;
top: 5px;
}

.nav-close svg{
    cursor: pointer;
  fill: var(--clr-dark);
  transition: var(--transition);
}
.nav-close:hover svg{
    fill: var(--clr-white);
}

.nav-items{
    list-style-type: none;
}

.nav-link {
    display: block;
    color: var(--clr-white);
    text-transform: uppercase;
    font-size: 1.2rem;
    padding: 0.75rem 1rem;
    letter-spacing: 0.5px;
     transition: var(--transition);

}

.nav-link:hover {
    background-color: var(--clr-primary-light);
    padding-left: 1.5rem;
    border-left: 0,5rem solid var(--clr-secondary);
}

@media screen and (min-width: 768px) {
.navbar{
    width: 35%;
    max-width: 25rem;

}
}
/*----------------------------banner------------------------*/
.header {
    min-height: 100vh;
    background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)),url("../img/ban.jpeg") center/cover no-repeat fixed;
    position: relative;
}

.banner{
    text-align: center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.banner h2{
    font-family: var(--ff-design);
    color: transparent;
    background-image: linear-gradient (180deg,var(--clr-primary) 80%, var(--clr-secondary));
    background-clip: text;
}
.banner h1{
    font-family: var(--ff-brand);
    color: var(--clr-white);
    margin-top: 1.25rem;
    margin-bottom: 2rem;
    font-weight: 400;
    text-shadow: 2px 5px 5px var(--clr-primary);
    animation: flame 1s infinite;
}

@keyframes flame {
    0%,
    100% {
        text-shadow: 0 -5px 10px rgba(255, 69, 0, 0.6),  0 -5px 20px rgba(255, 69, 0, 0.4),  0 -5px 30px rgba(255, 69, 0, 0.2),  0 -5px 40px rgba(255, 69, 0, 0.1);
    }
    25% {
        text-shadow: 0 -5px 15px rgba(255, 69, 0, 0.8),  0 -5px 30px rgba(255, 69, 0, 0.6),  0 -5px 45px rgba(255, 69, 0, 0.4),  0 -5px 60px rgba(255, 69, 0, 0.2);
    }
    50% {
        text-shadow: 0 -5px 20px rgba(255, 69, 0, 0.8),  0 -5px 40px rgba(255, 69, 0, 0.6),  0 -5px 60px rgba(255, 69, 0, 0.4),  0 -5px 80px rgba(255, 69, 0, 0.2);
    }
    75% {
        text-shadow: 0 -5px 15px rgba(255, 69, 0, 0.8),  0 -5px 30px rgba(255, 69, 0, 0.6),  0 -5px 45px rgba(255, 69, 0, 0.4),  0 -5px 60px rgba(255, 69, 0, 0.2);
    }
}

.banner-btn {
    font-size: 1rem;
    padding: 0.75rem 2rem;
    border-radius: 1000px;
    background-image: linear-gradient (180deg,var(--clr-primary) 80%, var(--clr-secondary));
    
}

.banner-btn:hover {
    outline: 0.125rem solid var(--clr-primary);
    outline-offset: 0.25rem;
}

.content-divider {
    height: 0.5rem;
    background-image: linear-gradient(to left,var(--clr-primary),var(--clr-secondary),var(--clr-primary));
}

/*--------------------- Features ------------------*/
.features{
    background-color: var(--clr-grey-3);
    cursor: pointer;
} 

.feature{
    padding: 2.5rem 0;
    text-align: center;
    transition: var(--transition);
}
.feature-icon svg {
    transition: var(--transition);
}
.feature-title {
    text-transform: uppercase;
}
.feature-text {
    color: var(--clr-grey-2);
    max-width: 17rem;
    margin: 0 auto;
}
.feature:hover {
    background-color: var(--clr-white);
    box-shadow: 0 2px var(--clr-primary);
}
.feature:hover .feature-title {
    color: var(--clr-primary);
}
.feature:hover .feature-icon svg {
    fill: var(--clr-primary);
    transform: translateY(-5px);
}
@media screen and (min-width: 576px) {
    .feature {
        width: 50%;
        float: left;
    }
}
@media screen and (min-width: 1200px) {
    .feature {
        width: 25%;
    }
}
/**-----------------------------About----------------------*/
.about-img,
.about-info{
    padding: 2rem 0;
    
}
.about-picture-container{
    background-color: var(--clr-primary);
    max-width: 30rem;
    box-shadow: 0px 3px 5px rgba(0, 0, 0, 0.2);
    border-radius: 5px;
    overflow: hidden;
}
.about-picture{
    transition: var(--transition);
}
.about-picture-container:hover .about-picture {
    transform: scale(1.2);
    opacity: 0.5;
}
.about-text{
    max-width: 26rem;
    color: var(--clr-grey-2);

}
@media screen and (min-width: 992px){
    .about-img,
    .about-img{
        float: left;
        width: 50%;

    }
    .about-info{
        padding-left: 2rem;
    }
}

/*----------------------- products -------------------*/

.products {
    background-color: var(--clr-grey-3);
}
.products .product-info{
    padding: 2rem 0;

}


.product-text{
    color: var(--clr-grey-2);
    max-width: 26rem;
}

.product-img{
    border-radius: 5px;
    height: 17rem;
    object-fit: cover;
    margin-bottom: 2rem;
    box-shadow: 0px 6px 3px rgba(0, 0, 0, 0.2);
    transition: var(--transition);
}
.product-img:hover {
    box-shadow: 0px 6px 3px rgba(0, 0, 0, 0.3);
    transform: translateY(-2px);
}

.product-title{
    font-size: 1.02rem;

}
.product-price{
    color: var(--clr-primary);
    font-size: 1.01rem;
}
@media screen and (min-width: 768px){
    .product {
        float: left;
        width: 50%;
        padding-right: 2rem;
    }
}
@media screen and (min-width: 992px){
    .product{
        width: 33.33%;

    }
}
@media screen and (min-width: 1200px){
    .product-info{
        float: left;
        width: 35%;
        /*background-color: red;*/
    }
    .product-inventory{
        float: right;
        width: 65%;
      /*  background-color: blue;*/
        

    }
    .product{
        margin: 0;
        padding: 0 1rem;
    }
}
/*------------------Service--------------*/
.service-title{
    text-align: center;
    margin-top: 4rem;
    margin-bottom: -4rem;

}
.service-card{
    margin: 2rem 0;
    background-color: var(--clr-grey-3);
    border-radius: 5px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
    cursor: pointer;
    transition: var(--transition);
}
.service-card:hover{
    transform: translateY(-2px);
}
.service-img{
    height: 17rem;
    object-fit: cover;
    border-top-left-radius: 5px;
    border-top-right-radius:5px;

}
.serivce-info{
    text-align: center;
    padding: 3rem 1rem 2.5rem 1rem;
}
.service-info p{
    max-width: 20rem;
    margin: 0 auto;
    color: var(--clr-grey-2);
}
.service-btn{
    font-size: 0.75rem;
    text-transform: capitalize;
    padding: 0.4rem 0.8rem;
    border-radius: 3px;
    font-weight: 400;
    margin-top: 1.25rem;
}
.service-img-container{
    position: relative;
}
.service-icon{
    height: 60px;
    width: 60px;
    background-color: var(--clr-primary-light);
    padding: 0.25rem 0.6rem;
    border-radius: 50%;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translate(-50%, 50%);
    display: grid;
    place-items: center;
    border: 0.375rem solid var(--clr-grey-3);
}
.service-icon svg{
    fill: var(--clr-white);
    width: 30px;
    height: 30px;
}
@media screen and (min-width: 768px) {
    .service-card{
width: 45%;
float:left;
margin-right: 5%;
    }
}
    
@media screen and (min-width: 992px) {
    .service-card{
width: 30%;

margin-right: 3.33%;
    }
}
  /*-------------contact us-------------------*/
  .contact{
    background-color: var(--clr-grey-3);

  }
  .contact-form,
  .contact-info{
    margin: 1rem 0;
  }
  .contact-title{
    display: flex;
    align-items: center;
    gap: 5px;
    font-weight: 500;
    margin-bottom: -0.05;
  }
  .contact-text{
    color: var(--clr-grey-2);
  }
  .contact-title svg{
    fill: var(--clr-grey-1);
  }
  .contact-item{
    margin-bottom: 1.25rem;
  }
  .contact-form{
    background-color: var(--clr-white);
    padding: 1.3rem;
    max-width: 35rem;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
    border-radius: 5px;
  }
  .contact-form h3{
    font-family: var(--ff-design);
    color: var(--clr-primary);
    font-size: 1.75rem;
    text-align: center;
  }

  .form-group {
    height: 35px;
    margin-bottom: 20px;
  }
  .form-control{
    width: 100%;
    height: 100%;
    background: none;
    border: 1px solid var(--clr-grey-2);
    outline: none;
    padding: 16px;
    border-radius: 3px;
    resize: none;
    font-family: var(--ff-secondary);
    position: absolute;
    top: 0;
    left: 0;

  }

  textarea.form-control{
    height: 100px;

  }

  .form-label{
    position: absolute;
    left: 7px;
    top: 7px;
    color: var(--clr-grey-2);
    background-color: red;
    padding: 0 6px;
    font-size: 14px;
    transition: var(--transition);
  }
  .form-control:focus + .form-label{
    top: -10px;
    color: var(--clr-primary);

  }
  .form-control:focus {
    border: 1px solid var(--clr-primary);
  }
  .form-control:not(:focus):valid + label {
    top: -10px;
    z-index: 5;
  }
  .submit-btn {
    padding: 0.7rem 1rem;
    margin-top: 3.5rem;
  }
  @media screen  and (min-width: 992px) {
    .contact-form,
    .contact-info {
        float: left;
        width: 50%;
    }
    
  }
  /*---------------------footer---------------------*/