@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@200;300;400;600;700&display=swap');
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Nunito', sans-serif;
    text-transform: capitalize;
    text-decoration: none;
    transition: all .2s linear;
}
body{
    background-color: #f7f7f7;
}
section{
    padding: 2rem 9%;
  
}
.heading{
    text-align: center;
    font-size: 3.5rem;
    padding: 1rem;  
    color: #666;
    margin-top: 4.5rem;
}
.heading span{
    color: red;
}
.btn{
    display: inline-block;
    padding: .6rem 2.6rem;
    border: .2rem solid red;
    color: red;
    cursor: pointer;
    font-size: 1.7rem;
    border-radius: .5rem;
    position: relative;
    margin-top: 1rem;
    z-index: 0;
    
}
.btn::before{
    content: '';
    position: absolute;
    top: 0;right: 0;
    width: 0%;
    height: 100%;
    background-color: red;
    transition: .5s ease-in-out;
    z-index: -1;
}
.btn:hover::before{
    width: 100%;
    left: 0;
}
.btn:hover{
    color: white;
}
header{
    position: fixed;
    top: 0;left: 0;right: 0;
    z-index: 100;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #fff;
    padding: 2rem 9%;
    box-shadow: 0 .5rem 1rem rgba(0, 0, 0 , .1);
}
header .logo{
    font-size: 1.5rem;
    font-weight: bolder;
    color: #666;
}
header i{
    padding-right: .5rem;
    color: red;
    font-size: 1.5rem;
}
.nav-bar a{
    font-size: 1.5rem;
    margin-left: 1rem;
    color: #666;

}
.nav-bar a:hover{
    color: red;
}
#menu-bar{
    font-size: 3rem;
    cursor: pointer;
    color: #666;
    border: .1rem solid #666;
    border-radius: .3rem;
    padding: 0.6rem 0.8rem;
    display: none;
}
.home{
    display: flex;
    min-height: 100vh;
    justify-content: space-evenly;
    align-items: center;
    
    margin-top: 4rem;
}

.home .image{
    width: 25vw;
 
}
.home .content{
    width: 30vw;
}
.home .content h3{
    font-size: 3rem;
    color: #333;
}
.home .content p{
    font-size: 1.7rem;
    color: #333;
    padding: 1rem 0;
}
.home .image img{
    width: 30vw;
}
.speciality .box-container{
    display: flex;
    flex-wrap: wrap;
    max-width: 100vw;
    justify-content: space-between;
    
}
.speciality .box-container .box{
    overflow: hidden;
    position: relative;
    width: 360px;
    box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .1);
    border: .1rem solid rgba(0, 0, 0, .3);
    cursor: pointer;
    border-radius: .5rem;
    margin: 1.2rem;

}
.speciality .box-container .box img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: -100%;
}
.speciality .box-container .box .content{
    text-align: center;
    background-color: #fff;
    padding: 2rem;
}
.speciality .box-container .box .content h3{
    font-size: 2.5rem;
    color: #333;
}
.speciality .box-container .box .content p{
    font-size: 1.1rem;
    color: #666;
    padding: .8rem 0;
}
.speciality .box-container .box:hover img{
    top: 0;
}
.speciality .box-container .box:hover .content{
    transform: translateY(100%);
}
.popular .box-container{
    display: flex;
    flex-wrap: wrap;
    max-width: 100vw;
    justify-content: space-between;
}
.popular .box-container .box{
    padding: 2rem;
    box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .1);
    border: .1rem solid rgba(0, 0, 0, .3);
    
    border-radius: .5rem;
    text-align: center;
    width: 400px;
    margin: 1.2rem;
    position: relative;
}
.popular .box-container .box img{
    width: 100%;
    border-radius: .5rem;
    box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .1);
}
.popular .box-container .box .price{
    position: absolute;
    top: 3rem;
    left: 3rem;
    background-color: red;
    color: #fff;
    font-size: 1.6rem;
    border-radius: .5rem;

}
.popular .box-container .box h3{
    color: #333;
    font-size: 2rem;
    padding: .5rem;
}
.gallery .box-container{
    display: flex;
    flex-wrap: wrap;
    max-width: 100vw;
    justify-content: space-between;
    
}
.gallery .box-container .box{
    overflow: hidden;
    position: relative;
    width: 400px;
    box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .1);
    border: .1rem solid rgba(0, 0, 0, .3);
    cursor: pointer;
    border-radius: .5rem;
    margin: 1.2rem;

}
.gallery .box-container .box img{
    width: 100%;
    height: 100%;
}
.gallery .box-container .box .content{
    position: absolute;
    top: -100%;
    background-color: rgba(255, 255, 255, .7);
    padding: 1.3rem;
    text-align: center;
}
.gallery .box-container .box .content h3{
    font-size: 1.8rem;
    color: #333;
}
.gallery .box-container .box .content p{
    font-size: 1.1rem;
    color: #666;
    padding: 0.5rem 0;
}
.gallery .box-container .box:hover .content{
    top: 0;
}
.review .box-container{
    display: flex;
    flex-wrap: wrap;
    max-width: 100vw;
    justify-content: space-between;
}
.review .box-container .box{
    text-align: center;
    padding: 2rem;
    width: 400px;
    box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .1);
    border: .1rem solid rgba(0, 0, 0, .3);
   
    border-radius: .5rem;
    margin: 1.2rem;
    background-color: #333; 
    margin-top: 12rem;

}
.review .box-container .box img{
    width: 100%;
    margin-top: -200px;
    border: 1rem solid #fff;
    border-radius: 50%;
   
}
.review .box-container .box h3{
    font-size: 1.5rem;
    color: #eee;
    padding: .5rem 0;
}
.review .box-container .box .stars i{
    font-size: 1.5rem;
    color: #eee;
    padding: .5rem 0;
}
.review .box-container .box p{
    font-size: 1.1rem;
    color: #eee;
    padding: .5rem 0;
}
.order .row{
    padding: 2.5rem ;
    box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .1);
    display: flex;
    flex-wrap: wrap;
    max-width: 100vw;
    justify-content: space-around;
}
.order .row .img{
    width: 420px;
}
.order .row img{
    width: 100%;
    border-radius: .5rem;
}
.order .row form{
    flex-basis: 40rem;
}
.order .row form .inputBox{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.order .row form .inputBox input,
.order .row form textarea{
    padding: 1rem;
    margin: 0 0 2rem;
    font-size: 1.5rem;
    
    text-transform: none;
    border: .1rem solid rgba(0, 0, 0, .3);
    border-radius: .5rem;
    width: 49%;
}
.order .row form textarea{
    width: 100%;
    resize: none;
    height: 20rem;
}
.footer{
    background-color: #000;
    text-align: center;
}
.footer .share{
    display: flex;
    justify-content: center;
    gap: 1.5rem;
    flex-wrap: wrap;
    margin: 2rem;
}
.footer .credit{
    padding: 2rem 1rem;
    color: #fff;
    font-weight: normal;
    font-size: 1rem;
}
.footer .credit span{
    color: red;
}
@media(max-width:768px){
    html{
        font-size: 50%;
    }
    header{
        padding: 2rem 5%;
    }
    .nav-bar a{
        margin-left: 1rem;
    }

}
@media(max-width:512px){
    header{
        padding: 2rem 8%;
    }
    #menu-bar{
        display: initial;
    }
    .nav-bar{
        position: absolute;
        top: 100%; left: 0; right: 0;
        display: none;
        background-color: #fff;
        padding: 1rem;
    }
    .active{
        display: initial;
    }
    .nav-bar a{
        margin: 1.5rem;
        padding: 1.5rem 3rem;
        display: block;
        border: .2rem solid rgba(0, 0, 0, .1);
        border-left: .5rem solid red;
    }
}