/* =========================
   HOME PAGE
========================= */

.hero-section{
    background:#fff8ef;
    padding:80px 20px;
    text-align:center;
}

.hero-section h1{
    font-size:42px;
    font-weight:700;
    margin-bottom:15px;
    color:#222;
}

.hero-section p{
    max-width:700px;
    margin:auto;
    font-size:18px;
    line-height:1.8;
    color:#666;
}

.hero-section .btn-primary{
    margin-top:25px;
}

/* =========================
   COMMON
========================= */

.categories-section,
.shops-section,
.why-us-section,
.cta-section{
    padding:60px 20px;
}

.section-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:30px;
}

.section-header h2,
.categories-section h2,
.why-us-section h2,
.cta-section h2{
    font-size:32px;
    color:#222;
    margin-bottom:20px;
}

/* =========================
   CATEGORY GRID
========================= */

/* ==========================
   CATEGORY SECTION FIX
========================== */

.category-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(180px,1fr));
    gap:20px;
    margin-top:20px;
}

.category-card{
    background:#fff;
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 2px 10px rgba(0,0,0,0.08);
    text-align:center;
    max-width:220px;
    margin:auto;
    transition:0.3s;
    text-decoration:none;
}

.category-card:hover{
    transform:translateY(-4px);
}

.category-card img{
    width:100% !important;
    height:120px !important;
    object-fit:cover !important;
    display:block;
}

.category-card h3{
    padding:12px;
    margin:0;
    font-size:16px;
    font-weight:600;
    color:#333;
}

/* Mobile */

@media(max-width:768px){

    .category-grid{
        grid-template-columns:repeat(2,1fr);
        gap:15px;
    }

    .category-card{
        max-width:100%;
    }

    .category-card img{
        height:90px !important;
    }

    .category-card h3{
        font-size:14px;
        padding:10px;
    }

}

/* =========================
   SHOP GRID
========================= */

.shop-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
    gap:25px;
}

.shop-card{
    background:#fff;
    border-radius:15px;
    overflow:hidden;
    box-shadow:0 2px 15px rgba(0,0,0,.08);
    transition:.3s;
}

.shop-card:hover{
    transform:translateY(-5px);
}

.shop-card img{
    width:100%;
    height:160px;
    object-fit:cover;
    display:block;
}

.shop-content{
    padding:15px;
}

.shop-content h3{
    margin:0 0 10px;
    font-size:20px;
    color:#222;
}

.location{
    color:#666;
    margin-bottom:10px;
    font-size:14px;
}

.prep-time{
    color:#444;
    font-size:14px;
    margin-bottom:15px;
}

.shop-thumb{

    width:25%;

    height:220px;

    object-fit:contain;

    background:#fff;

    padding:15px;

}

/* =========================
   FEATURES
========================= */

.features-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:20px;
}

.feature-card{
    background:#fff;
    border-radius:15px;
    padding:25px;
    text-align:center;
    box-shadow:0 2px 12px rgba(0,0,0,.08);
    transition:.3s;
}

.feature-card:hover{
    transform:translateY(-5px);
}

.feature-card i{
    font-size:42px;
    color:#ff6b00;
    margin-bottom:15px;
}

.feature-card h3{
    margin-bottom:10px;
    color:#222;
}

.feature-card p{
    color:#666;
    line-height:1.6;
}

/* =========================
   CTA
========================= */

.cta-section{
    background:#fff8ef;
    text-align:center;
}

.cta-section p{
    max-width:600px;
    margin:auto auto 25px;
    color:#666;
    line-height:1.8;
}

/* =========================
   BUTTONS
========================= */

.btn-primary{
    display:inline-block;
    background:#ff6b00;
    color:#fff;
    padding:12px 24px;
    border-radius:8px;
    text-decoration:none;
    font-weight:600;
    transition:.3s;
}

.btn-primary:hover{
    background:#e85f00;
}

.btn-small{
    padding:10px 18px;
    font-size:14px;
}

.view-all-btn{
    text-decoration:none;
    color:#ff6b00;
    font-weight:600;
}

/* =========================
   MOBILE
========================= */

@media(max-width:768px){

    .hero-section{
        padding:60px 15px;
    }

    .hero-section h1{
        font-size:30px;
    }

    .hero-section p{
        font-size:16px;
    }

    .section-header{
        flex-direction:column;
        gap:10px;
        text-align:center;
    }

    .categories-section,
    .shops-section,
    .why-us-section,
    .cta-section{
        padding:40px 15px;
    }

    .category-card img{
        height:100px;
    }

    .shop-card img{
        height:140px;
    }

    .shop-content h3{
        font-size:18px;
    }

    .features-grid,
    .shop-grid,
    .category-grid{
        gap:15px;
    }
}