*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{
background:#f5f5f5;
min-height:100vh;
display:flex;
flex-direction:column;
align-items:center;
}

/* HEADER */

header{
text-align:center;
padding:70px 20px 40px;
background:#0B3E34;
width:100%;
border-bottom:3px solid #F5F1DC;
}

/* LOGO */

.logo{
font-family:'Playfair Display', serif;
font-size:50px;
letter-spacing:2px;
color:#FF5733;
margin-bottom:10px;
}

/* AMPERSAND FIX */

.amp{
font-family:'Poppins', sans-serif;
font-weight:600;
}

/* TAGLINE */

.tagline{
font-family:'Poppins', sans-serif;
font-size:16px;
color:#FF5733;
opacity:0.9;
}

/* MENU BACKGROUND SECTION */

.menu-section{
width:100%;
background-image:url("assets/bg.jpg");
background-size:cover;
background-position:center;
padding:50px 20px;
}

/* GRID */

.menu-grid{
max-width:900px;
margin:auto;
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:25px;
}

/* MENU IMAGE */

.menu-grid img{
width:100%;
border-radius:14px;
cursor:pointer;
transition:0.3s;
box-shadow:0 8px 25px rgba(0,0,0,0.25);
}

.menu-grid img:hover{
transform:scale(1.04);
}

/* POPUP */

#popup{
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,0.85);
display:none;
justify-content:center;
align-items:center;
padding:20px;
z-index:999;
}

#popup img{
max-width:100%;
max-height:100%;
border-radius:12px;
}

/* TOMBOL SILANG */

.close-btn{
position:absolute;
top:25px;
right:35px;
font-size:40px;
color:white;
background:none;
border:none;
cursor:pointer;
transition:0.2s;
}

.close-btn:hover{
transform:scale(1.2);
color:#FF5733;
}

#popup img{
max-width:100%;
max-height:100%;
border-radius:12px;
animation: zoomIn 0.3s ease;
}

@keyframes zoomIn{
from{
transform:scale(0.8);
opacity:0;
}
to{
transform:scale(1);
opacity:1;
}
}