/* ! General Style */
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;  
    scroll-behavior: smooth; 
    scroll-padding: 15vh;
}
:root{
    --font-default:'Open Sans', 'Source Sans 3' , sans-serif;
    --heading-font:'Amatic SC', sans-serif;
    --heading-color:#37373f;
    --main--color:#212529;
    --second-color:#7f7f90;
    --third-color:#ce1212;
    --background-gray:#eee;
    --hover-color:#e61414;
    --forth-color:#4f4f5a;
    --color-white:#fff;
    --sub-heading-font:'Inter', sans-serif;
}

ul{
    list-style-type: none;
}
a{
    text-decoration: none;
    color: inherit;
}
.container{
    width: 85%;
    margin: auto;     
}
.logo{
    font-size: 1.875rem;
    color: var(--main--color);
    position: relative;
}
.logo::after{
    content: "";
    background-color: var(--third-color);
    width: 5px;
    height: 5px;
    border-radius: 50%;
    position: absolute;
    bottom: 8px;
    right: -4px;
}
.sub-heading{
    font-family: var(--sub-heading-font);
    color: var(--second-color);
    font-size: 0.9375rem;
    font-weight: 400;
    text-align: center;
    padding-top: 70px;
}
.describtion{
    font-family: var(--heading-font);
    font-size: 3.125rem;
    text-align: center;
    color: var(--main--color);
    font-weight: 500;
    padding-bottom: 50px;
}
.describtion span{
    color: var(--third-color);
}

/* ^Navbar Section */

.navbar{
    position: fixed;
    z-index: 99;
    width: 100%;
    box-shadow: 0 0 5px var(--second-color);
    background-color: #fff;
}
.navbar .container{
    /* background-color: limegreen; */
    padding-block: 1.25rem;
    font-family: var(--font-default);
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    position: relative;
}
.navbar .menu{
    font-size: 1.4375rem;
    position: absolute;
    right: 0;
    display: none;
    cursor: pointer;
}
.navbar ul{
    /* background-color: blue; */
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    gap: 0.9375rem;
    color: var(--second-color);
    font-size: 1.0625rem;
    font-weight: 600;
    cursor: pointer;
    margin-inline: auto;
}
.navbar ul a{
    position: relative;
    padding-block: 5px;
}
.navbar ul a::after{
    content: "";
    background-color: var(--third-color);
    width: 0%;
    height: 3px;
    position: absolute;
    bottom: 0;
    left: 0;
    transition: width 0.4s, color 0.4s;
}
.navbar ul a:hover, .navbar ul a:hover::after{
    color: var(--main--color);
    width: 100%;
}
.navbar ul a.active, .navbar ul a.active::after{
    color: var(--main--color);
    width: 100%;
}
/* .navbar ul:has(.chefs:target) a[href="#chefs"]{
    color: #000;
} */
.navbar .modes i{
    font-size: 1.5625rem;
    color: var(--main--color);
    cursor: pointer;
}
.navbar .modes .light{
    display: none;
}
.navbar .modes{
    position: relative;
}
.navbar .modes .mode{
    position: absolute;
    right: 35px;
    top: 5px;
    opacity: 0;
}


/* ?Header Section */
header{
    background-color: var(--background-gray);
    padding-top: 6.25rem;
}
header .container{
    /* background-color: blue; */
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    padding-block: 50px;
}
header .header-content{
    width: 35%;
}
header .header-content h2{
    font-family: var(--heading-font);
    font-size: 4.375rem;
    color: var(--heading-color);
}
header .header-content p{
    color: var(--forth-color);
    font-size: 1.0625rem;
    line-height: 1.5;
    padding-block: 15px;
}
header .buttons{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 50px;
}
header .buttons .btn1, header .buttons .btn2{
    font-family: var(--font-default);
    font-size: 0.9375rem;
}
header .buttons .btn1{
    border: 2px solid transparent;
    color: var(--color-white);
    background-color: var(--third-color);
    border-radius: 0 25px 25px 25px;
    padding: 10px 20px;
    transition: background-color 0.5s;
}
header .buttons .btn1:hover{
    background-color: var(--hover-color);
}
header .buttons .btn2{
    transition: color 0.5s;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
}
header .buttons .btn2:hover{
    color: var(--hover-color);
}
.btn2 .play-btn{
    width: 3.125rem;
    height: 3.125rem;
    border-radius: 50%;
    background-image: linear-gradient(to right, var(--third-color) 50%, rgba(255,255,255,0) 50% 100%);
    /* background-color: var(--third-color); */
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.btn2 .play-btn .play-icon{
    z-index: 5;
}
.btn2 .play-btn::after{
    content: "";
    background-color: var(--color-white);
    width: 2.1875rem;
    height: 2.1875rem;
    border-radius: 50%;
    position: absolute;
}
header .header-img{
    width: 40%;
    transition: transform 0.5s;
    filter: drop-shadow(5px 5px 10px #000);
}
header img{
    width: 100%;
}
header .header-img:hover{
    animation: vibrate 0.7s  infinite;
}
@keyframes vibrate{
    10%{
        translate: 1px 1px;
        rotate: -1deg;
    }
    20%{
        translate: -1px -1px;
        rotate: 1deg;
    }
    30%{
        translate: 1px 1px;
        rotate: -1deg;
    }
    40%{
        translate: -1px -1px;
        rotate: 1deg;
    }
    50%{
        translate: 1px 1px;
        rotate: -1deg;
    }
    60%{
        translate: -1px -1px;
        rotate: 1deg;
    }
    70%{
        translate: 1px 1px;
        rotate: 1deg;
    }
    80%{
        translate: -1px -1px;
        rotate: 1deg;
    }
    90%{
        translate: 1px 1px;
        rotate: -1deg;
    }
    100%{
        translate: -1px -1px;
        rotate: 1deg;
    }
    
}

/* ~Chefs Section */
.chefs{
    padding-bottom: 70px;
}
.chefs .cards{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.chefs .card{
    box-shadow: 0 0 5px #000;
    width: 32%;
    border-radius: 10px;
    text-align: center;
    font-family: var(--sub-heading-font);
    position: relative;
    overflow: hidden;
    transition: scale 0.5s 0.1s;
}
.chefs .card:hover{
    scale: 1.05;
}
.chefs .card img{
    width: 100%;
    border-radius: 10px;
    
}
.chefs .card-img{
    position: relative;
}
.chefs .card-img::after{
    content: "";
    background-image: url(../images/team-shape.svg);
    background-repeat: repeat-x;
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    height: 5.625rem;
}
.chefs .card-content{
    padding: 10px 20px;
}
.chefs .card-content h3{
    color: var(--main--color);
    font-size: 1.25rem;
}
.chefs .card-content h4{
    color: var(--second-color);
    font-weight: 400;
    font-size: 0.9375rem;
    padding-block: 8px;
}
.chefs .card-content p{
    color: var(--second-color);
    font-style: italic;
    font-size: 0.9375rem;
}
.chefs .card-icons{
    background-color: red;
    width: 10%;
    position: absolute;
    right: 0;
    top: 30px;
    translate: 4.0625rem;
    /* right: -45px; */
    right: 10px;
    background-color: rgba(255, 255, 255, 0.3);
    color: var(--second-color);
    padding-block: 15px;
    border-radius: 7px;
    transition: translate 0.5s;
}
.chefs .card-icons li{
    padding-block: 10px;
    font-size: 1.0625rem;
}
.chefs .card:hover .card-icons{
    translate: 0;
    transition: translate 0.5s 0.2s;
}


/* ^Gallary Section  */
.gallary{
    background-color: var(--background-gray);
}
.gallary .container{
    padding-block: 3.125rem;
}
.gallary .photos{
    display: grid;
    grid-template-rows: 350px 350px 150px 200px 50px 100px;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
}
.gallary .photos .meat{
    grid-row-start: span 3;
}
.gallary .photos .pizza-slices{
    grid-row-start: span 3;
}
.gallary .photos .kofta{
    grid-row-start: span 3;
}
.gallary .photos .eggs{
    grid-row-start: span 3;
}


.gallary .photos .parent{
    position: relative;
    color: #fff;
    text-align: center;
    font-family: var(--sub-heading-font);
    border: 5px solid #fff;
    overflow: hidden;
    
}
.gallary .photos img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: scale 0.5s;
}
.gallary .photos .parent:hover img, .gallary .photos .parent:hover .layer{
    scale: 1.05;
    top: 0;
}
.gallary .photos .parent h4{
    font-size: 1.25rem;
}
.gallary .photos .parent p{
    font-size: 0.9375rem;
}
.gallary .photos .layer{
    background-color: rgba(0, 0, 0, 0.588);
    padding-inline: 5px;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    transition: top 0.5s;
}



/* ?Contact Section */
.contact .contact-details{
    padding-block: 20px;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.contact .box{
    background-color: var(--background-gray);
    width: 49%;
    padding: 25px 30px;
    display: flex;
    gap: 25px;
}
.contact .box .icon{
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-size: 18px;
    position: relative;
    
}
.contact .box .icon i{
    position: relative;
    z-index: 9;
}
.contact .box .icon i::after{
    content: "";
    width: 45px;
    height: 45px;
    border-radius: 50%;
    background-color: var(--third-color);
    position: absolute;
    bottom: -13px;
    left: -12px;
    z-index: -1;
}
.contact .box .content{
    font-family: var(--sub-heading-font);
}
.contact .box .content h3{
    color: #7d7d7d;
    padding-bottom: 5px;
}
.contact .box .content p{
    font-size: 0.9375rem;
}
.contact form{
    background-color: #fff;
    box-shadow: 0 0 3px #313030;
    display: flex;
    flex-wrap: wrap;
    padding: 20px;
    gap: 10px;
    margin-bottom: 50px;
}
.contact form .two-inputs{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    gap: 10px;
}
.contact form input, .contact form textarea{
    padding: 15px;
    border: 2px solid var(--background-gray);
    width: 100%;
}
.contact form .two-inputs input{
    width: 49%;
}
.contact form input:focus, .contact form textarea:focus{
    outline: none;
    border-color: var(--hover-color);
}
.contact form textarea{
    resize: vertical;
}
.contact form button{
    margin: 20px auto;
    padding: 10px 35px;
    background-color: var(--third-color);
    color: #fff;
    border-radius: 20px;
    border-color: transparent;
    font-family: var(--sub-heading-font);
    font-size: 0.9375rem;
    transition:  background-color 0.4s;
}
.contact form button:hover{
    background-color: var(--hover-color);
}

/* ^Footer Section */
footer{
    background-image: linear-gradient(rgba(0, 0, 0, 0.618),rgba(0, 0, 0, 0.618)),url(../images/textured-metal-background.jpg);
    background-position: center;
    background-size: cover;
    color: #fff;
    font-family: var(--sub-heading-font);
    padding-block: 50px;
}
footer .container{
    display: flex;
    gap: 25px;
    line-height: 1.3;
}
footer .container p{
    font-weight: 300;
    
}
footer .about{
    width: 30%;
}
footer .about img{
    width: 13%;
}
footer .about .heading{
    display: flex;
    align-items: center;
    gap: 10px;
}
footer .about .heading h2{
    color: #fff;
}
footer .about p{
    padding-block: 10px;
    
}
footer .about h3{
    text-align: center;
    border-bottom: 2px solid #ddd6;
    padding-block: 10px;
}
footer .about .links{
    display: flex;
    /* gap: 15px; */
    justify-content: space-evenly;
    font-size: 25px;
    padding-block: 15px;
}
footer .subscribtion{
    width: 55%;
}
footer .subscribtion h3,footer .subscribtion p{
    padding-block: 10px;
}
footer .subscribtion .subsribe{
    display: flex;
    gap: 5px;
    padding-block: 10px;
}
footer .subscribtion .subsribe input{
    padding: 10px 2px;
    flex-grow: 1;
    outline: none;
}
footer .subscribtion .subsribe button{
    cursor: pointer;
    background-color: var(--third-color);
    color: #fff;
    border: none;
    padding: 10px 25px;
    font-size: 0.9375rem;
    display: flex;
    align-items: center;
    gap: 5px;
}
footer .subscribtion .quick-links ul{
    display: flex;
    flex-wrap: wrap;
    font-size: 15px;
}
footer .subscribtion .quick-links ul li{
    /* width: calc(calc(100% - 20px) / 2); */
    width: calc(calc(100% - 20px * 2) / 2);
    padding: 5px 15px;
    overflow: hidden;
    transition: translate 0.5s, background-color 0.5s;
}
footer .subscribtion .quick-links ul li:hover{
    background-color: #222;
    translate: 10px;
}
footer .contact-details{
    width: 25%;
}
footer .contact-details h3{
    padding-block: 10px;
}
footer .contact-details ul li{
    padding-block: 5px;
    display: flex;
    align-items: center;
    gap: 15px;
}
footer .contact-details ul li i{
    color: var(--third-color);
    font-size: 23px;
}