/* ==========================================================================
   FOOD HERO
========================================================================== */

.food-hero{

position:relative;

min-height:100vh;

display:flex;

align-items:center;

overflow:hidden;

background:#000;

}

.food-hero-image{

position:absolute;

inset:0;

}

.food-hero-image img{

width:100%;

height:100%;

object-fit:cover;

filter:brightness(.45);

transform:scale(1.05);;

}

.food-overlay{

position:absolute;

inset:0;

background:linear-gradient(

to right,

rgba(0,0,0,.82),

rgba(0,0,0,.40)

);

}

.food-hero .container{

position:relative;

z-index:2;

}

.food-content{

max-width:650px;

}

.food-content span{

color:#c7a86d;

letter-spacing:.35em;

text-transform:uppercase;

font-size:.85rem;

}

.food-content h1{

margin:25px 0;

font-family:"Playfair Display",serif;

font-size:clamp(3.5rem,7vw,6rem);

line-height:1.05;

}

.food-content p{

color:#d6d6d6;

line-height:2;

font-size:1.1rem;

max-width:600px;

}

.food-content span,
.food-content h1,
.food-content p{

opacity:0;

transform:translateY(40px);

}
/* ==========================================================================
   INTRODUCTION
========================================================================== */

.food-intro{

    padding:var(--space-md) 0;

    background:#050505;

}

.food-intro-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:80px;

    align-items:center;

}

.food-intro-text span{

    color:#c7a86d;

    letter-spacing:.3em;

    text-transform:uppercase;

    font-size:.85rem;

}

.food-intro-text h2{

    margin:25px 0;

    font-family:"Playfair Display",serif;

    font-size:clamp(3rem,5vw,4.8rem);

    line-height:1.1;

}

.food-intro-text p{

    color:#d0d0d0;

    line-height:2;

    margin-bottom:24px;

}

.food-intro-image{

    overflow:hidden;

    border-radius:var(--radius);

}

.food-intro-image img{

    width:100%;

    display:block;

    transition:transform .8s cubic-bezier(.2,.8,.2,1);

}

.food-intro-image:hover img{

    transform:scale(1.05);

}

.food-intro-text,
.food-intro-image{

    opacity:0;

    transform:translateY(60px);

}
/* ==========================================================================
   FOOD GALLERY
========================================================================== */

.food-gallery{

    padding:var(--space-md) 0;

    background:#000;

}

.food-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    grid-auto-rows:280px;

    gap:22px;

}

.food-item{

    overflow:hidden;

    border-radius:var(--radius);

    background:#0b0b0b;

    cursor:pointer;

    opacity:0;

    transform:translateY(60px);

}

.food-item img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:transform .8s ease;

}

.food-item:hover img{

    transform:scale(1.05);;

}

.food-item.tall{

    grid-row:span 2;

}

.food-item.wide{

    grid-column:span 2;

}
/* ==========================================================================
   FEATURED PROJECT
========================================================================== */

.food-featured{

    position:relative;

    min-height:90vh;

    display:flex;

    align-items:center;

    overflow:hidden;

}

.food-featured-image{

    position:absolute;

    inset:0;

}

.food-featured-image img{

    width:100%;

    height:100%;

    object-fit:cover;

    filter:brightness(.42);

    transform:scale(1.05);;

}

.food-featured-overlay{

    position:absolute;

    inset:0;

    background:
    linear-gradient(
        to right,
        rgba(0,0,0,.82),
        rgba(0,0,0,.35)
    );

}

.food-featured .container{

    position:relative;

    z-index:2;

}

.food-featured-content{

    max-width:650px;

    opacity:0;

    transform:translateY(60px);

}

.food-featured-content span{

    color:#c7a86d;

    text-transform:uppercase;

    letter-spacing:.35em;

    font-size:.85rem;

}

.food-featured-content h2{

    margin:25px 0;

    font-family:"Playfair Display",serif;

    font-size:clamp(3rem,6vw,5rem);

    line-height:1.1;

}

.food-featured-content p{

    color:#d5d5d5;

    line-height:2;

    font-size:1.1rem;

}
/* ==========================================================================
   FOOD CTA
========================================================================== */

.food-cta{

    padding:180px 0;

    background:#050505;

    text-align:center;

    opacity:0;

    transform:translateY(60px);

}

.food-cta span{

    display:block;

    color:#c7a86d;

    letter-spacing:.35em;

    text-transform:uppercase;

    font-size:.85rem;

    margin-bottom:20px;

}

.food-cta h2{

    font-family:"Playfair Display",serif;

    font-size:clamp(3rem,6vw,5.5rem);

    line-height:1.1;

    margin-bottom:30px;

}

.food-cta p{

    max-width:760px;

    margin:0 auto 50px;

    color:#d0d0d0;

    line-height:2;

    font-size:1.1rem;

}