:root {
  --bs-primary: #1B5E3C;
  --bs-primary-rgb: 27, 94, 60;
  --ink: #1A1F1C;
  --accent: #E07A1F;
  --sage: #EEF3EC;
}
body { background: #FAF8F3; color: var(--ink); }
.store-header { z-index: 1030; border-bottom: 1px solid #E5E0D4; }
.nav-link-custom { position: relative; padding-bottom: 2px; }
.nav-link-custom:hover { color: var(--bs-primary) !important; }
.dropdown-menu a:hover { background: var(--sage); border-radius: 4px; }

.hero { background: linear-gradient(120deg, #1B5E3C, #0F3D27); color: #fff; }
.hero .btn-light { color: var(--bs-primary); font-weight: 600; }

h2.h5 { font-weight: 700; letter-spacing: -.01em; }

.cat-card { border: 1px solid #EDEAE0 !important; box-shadow: none !important; transition: background .15s, border-color .15s; }
.cat-card:hover { border-color: var(--bs-primary) !important; background: var(--sage); }
.cat-card i { color: var(--bs-primary); }

.product-card img { aspect-ratio: 1/1; object-fit: cover; background: var(--sage); }
.product-card { transition: transform .15s, box-shadow .15s; border: 1px solid #EDEAE0; }
.product-card:hover { transform: translateY(-2px); box-shadow: 0 .5rem 1rem rgba(27,94,60,.1) !important; }
.product-name { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.6em; font-size: .92rem; }
.badge.bg-danger { background: var(--accent) !important; }

.thumb { cursor: pointer; object-fit: cover; }
#suggest { z-index: 1050; top: 100%; border: 1px solid #E5E0D4; }
.dropdown.mega:hover > .dropdown-menu { display: block; }

footer.bg-dark { background: #14201A !important; }
footer h6 { color: #fff; font-weight: 600; margin-bottom: .75rem; }
footer a.text-secondary:hover { color: #fff !important; }

@media (max-width: 575px) {
  .product-card .btn-sm { padding: .3rem .4rem; font-size: .8rem; }
  main.container { padding-left: .6rem; padding-right: .6rem; }
}
.order-steps i { line-height: 1; color: var(--bs-primary); }
@media (max-width: 575px) { .order-steps .small { font-size: .68rem; } }