/*=========================================================
  THE SPOILED CHEF
  HOME PAGE
=========================================================*/

/*=========================================================
SECTION TITLE
=========================================================*/

.section-heading{
    text-align:center;
    max-width:720px;
    margin:0 auto 70px;
}

.section-subtitle{
    display:inline-block;
    color:var(--color-primary);
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:2px;
    margin-bottom:15px;
}

.section-heading h2{
    margin-bottom:20px;
}

.section-heading p{
    color:var(--color-text);
}

/*=========================================================
TRUST BAR
=========================================================*/

.trust-bar{
    margin-top:-45px;
    position:relative;
    z-index:10;
}

.trust-grid{

    display:grid;

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

    gap:24px;

}

.trust-card{

    background:#fff;

    border-radius:20px;

    padding:30px;

    text-align:center;

    box-shadow:var(--shadow-md);

    transition:var(--transition);

}

.trust-card:hover{

    transform:translateY(-8px);

}

.trust-card img{

    width:55px;

    margin:auto auto 15px;

}

.trust-card h3{

    margin-bottom:10px;

}

/*=========================================================
CATEGORY
=========================================================*/

.category{

    background:#fff;

}

.category-grid{

    display:grid;

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

    gap:30px;

}

.category-card{

    background:#fff;

    border-radius:22px;

    padding:40px 25px;

    text-align:center;

    box-shadow:var(--shadow-sm);

    transition:var(--transition);

}

.category-card:hover{

    transform:translateY(-10px);

    box-shadow:var(--shadow-lg);

}

.category-card img{

    width:150px;

    margin:auto auto 25px;

}

.category-card h3{

    margin-bottom:12px;

}

.category-card p{

    margin-bottom:20px;

}

.category-card a{

    color:var(--color-primary);

    font-weight:700;

}

/*=========================================================
BEST SELLERS
=========================================================*/

.best-seller{

    background:var(--color-background);

}

.product-grid{

    display:grid;

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

    gap:35px;

}

.product-card{

    overflow:hidden;

    background:#fff;

    border-radius:24px;

    box-shadow:var(--shadow-md);

    transition:var(--transition);

}

.product-card:hover{

    transform:translateY(-10px);

}

.product-card__image{

    overflow:hidden;

}

.product-card img{

    transition:.5s;

}

.product-card:hover img{

    transform:scale(1.08);

}

.product-card__content{

    padding:30px;

}

.product-card__content h3{

    margin:15px 0;

}

.product-footer{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-top:25px;

}

/*=========================================================
OFFER BANNER
=========================================================*/

.offer-banner{

    background:

    linear-gradient(135deg,

    var(--color-primary),

    var(--color-primary-dark));

    color:#fff;

}

.offer-content{

    text-align:center;

    max-width:700px;

    margin:auto;

}

.offer-content span{

    display:inline-block;

    margin-bottom:15px;

    letter-spacing:3px;

    font-weight:700;

}

.offer-content h2{

    color:#fff;

    margin-bottom:20px;

}

.offer-content p{

    color:#fff;

    margin-bottom:40px;

}

/*=========================================================
ABOUT
=========================================================*/

.about{

    background:#fff;

}

.about__wrapper{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:70px;

    align-items:center;

}

.about__image img{

    border-radius:25px;

}

.about-features{

    display:grid;

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

    gap:18px;

    margin:35px 0;

}

.feature{

    font-weight:600;

}

/*=========================================================
WHY US
=========================================================*/

.why-us{

    background:var(--color-background);

}

.why-grid{

    display:grid;

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

    gap:30px;

}

.why-card{

    background:#fff;

    padding:40px 30px;

    border-radius:20px;

    text-align:center;

    box-shadow:var(--shadow-sm);

}

/*=========================================================
REVIEWS
=========================================================*/

.reviews{

    background:#fff;

}

.review-grid{

    display:grid;

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

    gap:30px;

}

.review-card{

    background:#fff;

    padding:35px;

    border-radius:20px;

    box-shadow:var(--shadow-md);

}

.review-card .stars{

    margin-bottom:20px;

}

.review-card h4{

    margin-top:20px;

}

/*=========================================================
GALLERY
=========================================================*/

.gallery{

    background:var(--color-background);

}

.gallery-grid{

    display:grid;

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

    gap:18px;

}

.gallery-grid img{

    border-radius:20px;

    transition:.4s;

    cursor:pointer;

}

.gallery-grid img:hover{

    transform:scale(1.04);

}

/*=========================================================
FAQ
=========================================================*/

.faq{

    background:#fff;

}

.faq-wrapper{

    max-width:900px;

    margin:auto;

}

.faq-item{

    background:#fff;

    margin-bottom:18px;

    padding:30px;

    border-radius:18px;

    box-shadow:var(--shadow-sm);

}

.faq-item h3{

    margin-bottom:15px;

}

/*=========================================================
CTA
=========================================================*/

.contact-cta{

    background:

    linear-gradient(135deg,

    var(--color-secondary),

    #FFD84A);

    text-align:center;

}

.contact-cta h2{

    margin-bottom:20px;

}

.contact-cta p{

    margin-bottom:35px;

}

/*=========================================================
LOCATION
=========================================================*/

.location{

    background:#fff;

}

.location-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:50px;

}

.location-info h3{

    margin-top:30px;

    margin-bottom:10px;

}

.location iframe{

    width:100%;

    min-height:450px;

    border-radius:25px;

}

/*=========================================================
SPACING
=========================================================*/

.about,
.reviews,
.gallery,
.faq,
.location{

    overflow:hidden;

}
/*=========================================================
SPECIAL OFFER
=========================================================*/

.offer-wrapper{

    display:grid;

    grid-template-columns:1fr 1fr;

    align-items:center;

    gap:60px;

}

.offer-list{

    margin:30px 0;

    display:grid;

    gap:14px;

}

.offer-list li{

    font-weight:600;

}

.offer-buttons{

    display:flex;

    gap:18px;

    flex-wrap:wrap;

}

.offer-image{

    position:relative;

    text-align:center;

}

.offer-image img{

    max-width:600px;

    margin:auto;

}

.offer-discount{

    position:absolute;

    top:20px;

    right:20px;

    width:120px;

    height:120px;

    border-radius:50%;

    background:var(--color-secondary);

    color:#111;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    font-weight:700;

    box-shadow:var(--shadow-lg);

}

.offer-discount span{

    font-size:2rem;

    line-height:1;

}
/*=========================================================
ABOUT BUTTONS
=========================================================*/

.about-buttons{

    display:flex;

    gap:18px;

    flex-wrap:wrap;

    margin-top:35px;

}
/*=========================================================
WHY CHOOSE US
=========================================================*/

.why-card{

    text-align:center;

}

.why-card img{

    width:70px;

    height:70px;

    margin:0 auto 25px;

}

.why-card h3{

    margin-bottom:15px;

}

.why-card p{

    margin-bottom:0;

}
/*=========================================================
REVIEW SUMMARY
=========================================================*/

.review-summary{

    display:grid;

    grid-template-columns:220px 1fr auto;

    gap:40px;

    align-items:center;

    background:#fff;

    border-radius:24px;

    padding:35px;

    margin-bottom:60px;

    box-shadow:var(--shadow-md);

}

.review-score{

    text-align:center;

}

.review-score h2{

    font-size:4rem;

    color:var(--color-primary);

    margin-bottom:10px;

}

.review-details p{

    margin-top:10px;

    margin-bottom:0;

}

.review-action{

    display:flex;

    justify-content:flex-end;

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

.gallery-item{

    overflow:hidden;

    border-radius:24px;

    background:#ffffff;

    box-shadow:var(--shadow-md);

}

.gallery-item img{

    width:100%;

    height:100%;

    aspect-ratio:1/1;

    object-fit:cover;

    transition:.5s;

}

.gallery-item:hover img{

    transform:scale(1.08);

}

.gallery-footer{

    text-align:center;

    margin-top:60px;

}

.gallery-buttons{

    display:flex;

    justify-content:center;

    gap:18px;

    flex-wrap:wrap;

    margin-top:30px;

}
/*=========================================================
FAQ
=========================================================*/

.faq{

    background:#ffffff;

}

.faq-wrapper{

    max-width:900px;

    margin:auto;

}

.faq-item{

    padding:28px 32px;

    margin-bottom:20px;

    background:#ffffff;

    border-radius:20px;

    border:1px solid var(--color-border);

    box-shadow:var(--shadow-sm);

    transition:var(--transition);

}

.faq-item:hover{

    transform:translateY(-4px);

    box-shadow:var(--shadow-md);

}

.faq-item h3{

    margin-bottom:15px;

    color:var(--color-heading);

}

.faq-item p{

    margin-bottom:0;

    color:var(--color-text);

}
/*=========================================================
CONTACT CTA
=========================================================*/

.contact-cta{

    background:linear-gradient(
        135deg,
        var(--color-primary),
        var(--color-primary-dark)
    );

    color:#fff;

}

.cta-wrapper{

    display:grid;

    grid-template-columns:2fr 1fr;

    gap:60px;

    align-items:center;

}

.cta-content h2{

    color:#fff;

    margin:20px 0;

}

.cta-content p{

    color:rgba(255,255,255,.9);

    margin-bottom:35px;

}

.cta-buttons{

    display:flex;

    flex-wrap:wrap;

    gap:18px;

}

.cta-info{

    display:grid;

    gap:20px;

}

.info-card{

    background:rgba(255,255,255,.1);

    backdrop-filter:blur(10px);

    border-radius:20px;

    padding:25px;

    border:1px solid rgba(255,255,255,.15);

}

.info-card h3{

    color:#fff;

    margin-bottom:12px;

}

.info-card p{

    color:rgba(255,255,255,.85);

    margin-bottom:8px;

}

.info-card strong{

    color:var(--color-secondary);

    font-size:1.2rem;

}

.info-card a{

    color:var(--color-secondary);

    font-weight:600;

}
/*=========================================================
LOCATION
=========================================================*/

.location-card{

    background:#ffffff;

    border-radius:20px;

    padding:28px;

    margin-bottom:22px;

    box-shadow:var(--shadow-sm);

}

.location-card h3{

    margin-bottom:15px;

}

.location-card p{

    margin-bottom:10px;

}

.location-card strong{

    color:var(--color-primary);

    font-size:1.1rem;

}

.location-card a{

    color:var(--color-primary);

    font-weight:600;

}

.location-list{

    display:grid;

    gap:10px;

}

.location-list li{

    color:var(--color-text);

}

.location-map iframe{

    width:100%;

    min-height:650px;

    border:0;

    border-radius:24px;

    box-shadow:var(--shadow-lg);

}