/* General Reset */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    scroll-behavior: smooth;
}

body { line-height: 1.6; color: #333; }

/* Header & Nav */
header {
    background: #2c1e12;
    color: #fff;
    padding: 1rem 5%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

.logo { font-size: 1.5rem; font-weight: bold; }
.logo span { color: #d4a373; }

nav ul { display: flex; list-style: none; }
nav ul li { margin-left: 20px; }
nav ul li a { color: white; text-decoration: none; font-weight: 500; }

.cart-icon { cursor: pointer; color: #d4a373; font-size: 1.2rem; }

/* Hero Section */
.hero {
    height: 100vh;
    background: linear-gradient(rgba(0,0,0,0.6), rgba(0,0,0,0.6)), 
                url('https://images.unsplash.com/photo-1447933601403-0c6688de566e?auto=format&fit=crop&w=1500&q=80');
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: white;
}

.hero-content h1 { font-size: 3.5rem; margin-bottom: 1rem; }
.btn { background: #d4a373; color: white; padding: 10px 25px; text-decoration: none; border-radius: 5px; }

/* Sections Styling */
section { padding: 80px 10%; }
h2 { text-align: center; margin-bottom: 40px; font-size: 2.5rem; color: #2c1e12; }

/* About */
.about-flex { display: flex; align-items: center; gap: 40px; }
.about-flex img { width: 50%; border-radius: 10px; }

/* Service Grid */
.service-grid, .menu-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
}

.service-card, .menu-item {
    text-align: center;
    padding: 20px;
    border: 1px solid #eee;
    border-radius: 10px;
    transition: 0.3s;
}

.menu-item img { width: 100%; border-radius: 10px; height: 200px; object-fit: cover; }
.menu-item button { 
    background: #2c1e12; color: white; border: none; 
    padding: 8px 15px; cursor: pointer; border-radius: 5px; margin-top: 10px;
}

/* Mobile Responsive */
.menu-toggle { display: none; font-size: 1.5rem; cursor: pointer; }

@media (max-width: 768px) {
    .menu-toggle { display: block; }
    nav ul {
        display: none;
        flex-direction: column;
        position: absolute;
        top: 100%; left: 0; width: 100%;
        background: #2c1e12; padding: 20px;
    }
    nav ul.active { display: flex; }
    nav ul li { margin: 10px 0; }
    .about-flex { flex-direction: column; }
    .about-flex img { width: 100%; }
}