:root{--pink-50:#fff1f6;--pink-100:#ffe5ee;--pink-200:#ffd7e6;--pink-400:#ff7aa4;--pink-500:#e14b7a;--gray-50:#fafafa;--gray-100:#f3f3f3;--gray-200:#eaeaea;--gray-400:#9aa0a6;--gray-900:#111;--black:#000;--white:#fff;--green-50:#e8fff5}
:root{--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px}
:root{--radius-6:6px;--radius-8:8px;--radius-10:10px;--radius-12:12px}
body{color:var(--gray-900)}
body, button, input, select, textarea{font-family:'Poppins', system-ui, -apple-system, Segoe UI, Roboto, 'Helvetica Neue', Arial, 'Noto Sans', 'Liberation Sans', sans-serif}
/* Home page base styles matching mockup */
.page-home { background:#fff; }
.container { max-width:1180px; margin:0 auto; padding:0 16px; }
.section-title { font-size:28px; text-align:center; margin:32px 0 24px; }
.section-title{position:relative; font-weight:800}
.section-title:after{content:""; display:block; width:54px; height:6px; border-radius:6px; background:var(--pink-500); margin:10px auto 0}

.home-hero { background:var(--pink-100); position:relative; }
.home-hero .hero-inner { padding:0 0 32px; text-align:center; }
.home-hero .hero-img { width:100%; height:auto; display:block; }
.home-hero .hero-badge { background:var(--black); color:var(--white); display:inline-block; padding:6px 10px; border-radius:var(--radius-6); font-size:14px; margin:var(--space-2) 0; }
.home-hero .hero-title { font-size:40px; line-height:1.15; font-weight:800; letter-spacing:-.3px; color:var(--gray-900); margin:var(--space-2) 0 var(--space-3); }
.home-hero .hero-title em { font-style:normal; font-weight:600; margin:0 6px; }
.home-hero .hero-title strong { background:#ffdbef; padding:0 6px; border-radius:4px; }
.home-hero .hero-subtitle { color:#444; }

.home-categories { background:var(--white); padding:var(--space-8) 0; }
.category-list { display:grid; grid-template-columns:repeat(6,1fr); gap:24px; list-style:none; padding:0; margin:0; text-align:center; }
.category-item img{ width:96px; height:96px; object-fit:cover; border-radius:50%; background:var(--gray-100); border:1px solid var(--gray-200); box-shadow:0 2px 6px rgba(17,17,17,.04) }
.category-item span { display:block; margin-top:10px; font-weight:700; }
.category-item{ padding:12px 6px }
.category-item:hover img{ transform:translateY(-2px); transition:transform .2s ease }
.home-products { background:var(--pink-50); padding:var(--space-8) 0; }
.product-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.product-card { background:var(--white); border:1px solid var(--gray-200); border-radius:var(--radius-10); padding:var(--space-4); text-align:center; box-shadow:0 2px 8px rgba(17,17,17,.04); display:flex; flex-direction:column; align-items:center }
.product-card img{ width:100%; max-width:240px; height:auto; border-radius:12px }
.product-card h3 { font-size:16px; margin:8px 0; }
.product-card .price { color:var(--pink-500); font-weight:800; }
.product-card:hover{ box-shadow:0 6px 18px rgba(17,17,17,.08); transform:translateY(-2px); transition:all .2s ease }
.product-card.small img { width:160px; height:auto; }
.home-banners { background:var(--white); padding:var(--space-8) 0; }
.banner { position:relative; overflow:hidden; border-radius:12px; }
.banner-content { position:absolute; left:16px; bottom:16px; background:rgba(255,255,255,.9); padding:8px 12px; border-radius:8px; }
.banner img{ display:block; width:100%; height:auto }
.home-occasions { background:var(--pink-200); padding:var(--space-8) 0; }
.carousel-mock { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.home-diets { background:var(--white); padding:var(--space-6) 0; }
.home-testimonials { background:var(--pink-100); padding:var(--space-8) 0; }
.testimonial { background:#fff; border-radius:10px; padding:16px; margin-bottom:12px; border:1px solid #f3c1d3; }
.testimonial .author { margin-top:8px; font-weight:700; }
.home-newsletter { background:var(--pink-400); padding:var(--space-6) 0; color:var(--white); }
.newsletter-box { text-align:center; }
.newsletter-form { display:flex; gap:10px; justify-content:center; margin-top:10px; }
.newsletter-form input { padding:10px 12px; border-radius:6px; border:none; width:240px; }
.newsletter-form button { background:var(--gray-900); color:var(--white); border:none; padding:10px 14px; border-radius:6px; cursor:pointer; }

.grid-2 { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.two-columns { display:grid; grid-template-columns:1fr 1fr; gap:24px; align-items:center; }
.icons-row { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; text-align:center; }
.diet-item img{ border-radius:50%; border:1px solid var(--gray-200); background:var(--gray-100) }
.diet-item{ padding:10px }

@media (max-width:768px){
  .grid-2, .two-columns { grid-template-columns:1fr; }
  .icons-row { grid-template-columns:repeat(2,1fr); }
  .category-list { grid-template-columns:repeat(3,1fr); }
  .product-grid { grid-template-columns:repeat(2,1fr); }
  .carousel-mock { grid-template-columns:repeat(2,1fr); }
  .home-hero .hero-title { font-size:30px; }
}

@media (max-width:480px){
  .section-title{font-size:22px}
  .category-list{grid-template-columns:repeat(2,1fr)}
  .product-grid{grid-template-columns:1fr}
  .carousel-mock{grid-template-columns:1fr}
}
body{
    background-color: #ffd7e6;
}