@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@500;600;700;800&display=swap');

:root {
  --eg-black: #111111;
  --eg-ink: #161616;
  --eg-lime: #b6e23a;
  --eg-lime-dark: #8fbe12;
  --eg-gray: #f3f3f3;
  --eg-muted: #6b6b6b;
}

body,
.page-index,
#wrapper {
  font-family: Montserrat, Arial, sans-serif;
  background: #fff;
  color: #111;
}

#header {
  background: var(--eg-black);
}
#header .header-nav,
#header .header-top,
.header-top,
header.page-header {
  background: var(--eg-black) !important;
  border: 0;
}
#header a,
#header .header-nav a,
#header .search-widget,
#header .user-info a,
#header .cart-preview .body,
#header .cart-preview .header,
#_desktop_logo + *,
.header-top a,
#header .material-icons {
  color: #fff !important;
}
#header .header-nav {
  border-bottom: 1px solid #222;
}
#header .header-top {
  padding: 10px 0 6px;
}
#header .menu,
#top-menu,
.top-menu {
  background: var(--eg-black) !important;
}
#top-menu a,
.top-menu a {
  color: #fff !important;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .04em;
  font-size: 13px;
}

#_desktop_logo img,
.logo img {
  max-height: 36px;
}

#search_widget,
.search-widget form {
  background: #fff;
  border-radius: 999px;
  overflow: hidden;
}
#search_widget input,
.search-widget input[type="text"] {
  border: 0 !important;
  border-radius: 999px;
  min-height: 42px;
  color: #111 !important;
}

.eg-hero {
  background: linear-gradient(180deg, #f6f6f6 0%, #fff 70%);
  padding: 72px 20px 56px;
  text-align: center;
}
.eg-hero h1 {
  font-size: clamp(40px, 7vw, 84px);
  font-weight: 800;
  letter-spacing: -0.04em;
  margin: 0 0 12px;
  color: #d7d7d7;
}
.eg-hero h1 span {
  color: #111;
}
.eg-hero p {
  font-size: 20px;
  font-weight: 700;
  margin: 0;
}

.eg-cats {
  max-width: 1180px;
  margin: 0 auto 40px;
  padding: 0 16px;
  text-align: center;
}
.eg-cats h2 {
  font-size: 28px;
  font-weight: 800;
  letter-spacing: .08em;
  margin: 10px 0 28px;
}
.eg-cats-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}
@media (max-width: 900px) {
  .eg-cats-grid { grid-template-columns: repeat(2, 1fr); }
}
.eg-cat {
  background: var(--eg-gray);
  border-radius: 18px;
  padding: 28px 12px 20px;
  text-decoration: none;
  color: #111;
  display: block;
}
.eg-cat .ico {
  width: 72px;
  height: 72px;
  margin: 0 auto 14px;
  background: #e8e8e8;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 30px;
}
.eg-cat strong {
  display: block;
  font-size: 14px;
}

.featured-products,
.products {
  max-width: 1180px;
  margin: 0 auto;
}
.featured-products h2,
.page-home .products-section-title {
  text-align: center;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.product-miniature {
  border: 1px solid #eee;
  border-radius: 12px;
  overflow: hidden;
}
.product-miniature .product-title a {
  font-weight: 600;
  font-size: 14px;
}
.product-price-and-shipping .price {
  color: #111;
  font-weight: 800;
}
.btn-primary,
.btn-primary:hover,
.add-to-cart,
.product-add-to-cart .add-to-cart {
  background: var(--eg-lime) !important;
  border-color: var(--eg-lime) !important;
  color: #111 !important;
  font-weight: 700;
}

#footer,
.footer-container {
  background: #111 !important;
  color: #ddd;
}
#footer a,
.footer-container a {
  color: #ddd !important;
}
#footer .h3,
#footer .hidden-sm-down,
.footer-container .h3 {
  color: #fff !important;
}

.eg-strip {
  background: var(--eg-lime);
  color: #111;
  text-align: center;
  font-weight: 700;
  padding: 10px 12px;
  letter-spacing: .04em;
}
