body{
margin:0;
font-family:'Poppins', sans-serif;
background:#111;
color:white;
}

/* intro */

#intro{
position:fixed;
width:100%;
height:100vh;
background:black;
display:flex;
align-items:center;
justify-content:center;
font-family:'Playfair Display';
font-size:40px;
z-index:1000;
animation:sumir 2s forwards 2s;
}

@keyframes sumir{
to{
opacity:0;
visibility:hidden;
}
}

/* topo */

.topo{
background:#111;
padding:20px;
text-align:center;
}

.busca{
margin-top:10px;
padding:10px;
width:80%;
border-radius:6px;
border:none;
}

/* hero */

.hero{
height:70vh;
background:url("https://images.unsplash.com/photo-1555396273-367ea4eb4db5?auto=format&fit=crop&w=1600&q=80") center/cover;
display:flex;
align-items:center;
justify-content:center;
animation:zoomHero 20s ease-in-out infinite alternate;
}

@keyframes zoomHero{

from{
background-size:100%;
}

to{
background-size:110%;
}

}

.overlay{
background:rgba(0,0,0,0.6);
padding:40px;
text-align:center;
}

.overlay h1{
font-family:'Playfair Display';
font-size:48px;
}

.overlay button{

margin-top:20px;
padding:14px 32px;
background:#e63946;
border:none;
color:white;
font-size:16px;
cursor:pointer;
border-radius:6px;
transition:0.3s;

}

.overlay button:hover{

background:#ff4d5a;
transform:scale(1.05);

}

/* populares */

.populares{
padding:40px;
}

.scroll{

display:flex;
gap:20px;
overflow-x:auto;
padding-bottom:10px;

scroll-snap-type:x mandatory;

}

.card{

scroll-snap-align:start;

}

.card{
min-width:200px;
background:#1b1b1b;
border-radius:10px;
padding:15px;
transition:0.3s;
}

.card:hover{
transform:translateY(-10px);
box-shadow:0 10px 30px rgba(0,0,0,0.5);
}

.card img{
width:100%;
border-radius:10px;
}

/* categorias */

.categorias{
padding:40px;
}

.grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:15px;
}

.categoria{

background:#1b1b1b;
padding:25px;
border-radius:12px;
text-align:center;
font-size:18px;
font-weight:500;
cursor:pointer;

display:flex;
align-items:center;
justify-content:center;

transition:0.3s;

border:1px solid rgba(255,255,255,0.05);

}

.categoria{

background:#1b1b1b;
padding:25px;
border-radius:12px;
text-align:center;
font-size:18px;
font-weight:500;
cursor:pointer;

display:flex;
align-items:center;
justify-content:center;

transition:0.3s;

border:1px solid rgba(255,255,255,0.05);

text-decoration:none;
color:white;
}

.categoria:hover{

background:#e63946;
transform:translateY(-5px);
box-shadow:0 10px 20px rgba(0,0,0,0.4);

}

.categoria:visited{
color:white;
}

    
/* animação de entrada */
    
.fade{
opacity:0;
transform:translateY(30px);
transition:1s;
}

.fade.show{
opacity:1;
transform:translateY(0);
}

.menu-section{

padding:60px 40px;

}

.menu-grid{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
gap:20px;
margin-top:30px;

}

.menu-item{

background:#1b1b1b;
padding:20px;
border-radius:10px;
transition:0.3s;

}

.menu-item:hover{

transform:translateY(-5px);
box-shadow:0 10px 20px rgba(0,0,0,0.4);

}

.menu-item span{

display:block;
margin-top:10px;
font-weight:600;
color:#e63946;

}

.menu-item img{

width:100%;
height:160px;
object-fit:cover;
border-radius:10px;
margin-bottom:10px;

}

.menu-item button{

margin-top:10px;
padding:10px;
width:100%;
border:none;
border-radius:6px;
background:#e63946;
color:white;
cursor:pointer;
transition:0.3s;

}

.menu-item button:hover{

background:#ff4d5a;

}

.carrinho{

position:fixed;
right:20px;
bottom:20px;

background:#1b1b1b;
padding:20px;
border-radius:12px;

width:250px;

box-shadow:0 10px 30px rgba(0,0,0,0.5);

}

.carrinho ul{

list-style:none;
padding:0;

}

.carrinho button{

width:100%;
padding:10px;
border:none;
background:#e63946;
color:white;
border-radius:6px;
cursor:pointer;

}