.amp-home-category-section,
.amp-shop-filter,
.amp-shop-search {
  --amp-filter-accent: #e31b23;
  box-sizing: border-box;
  color: #f5f5f5;
  font-family: inherit;
}
.amp-home-category-section { background: #080808; padding: 28px 1.3%; }
.amp-home-category-section *, .amp-shop-filter *, .amp-shop-search * { box-sizing: border-box; }
.amp-home-search { display:flex; gap:14px; max-width:1180px; margin:0 auto 46px; }
.amp-home-search input[type="search"] { flex:1; min-width:0; height:58px; padding:0 24px; border:2px solid var(--amp-filter-accent); border-radius:13px; background:#141414; color:#fff; font:inherit; font-size:17px; outline:none; }
.amp-home-search input[type="search"]::placeholder { color:#898989; }
.amp-home-search button, .amp-shop-filter button, .amp-shop-search button { min-height:54px; padding:0 27px; display:inline-flex; align-items:center; justify-content:center; gap:11px; border:1px solid var(--amp-filter-accent); border-radius:10px; background:var(--amp-filter-accent); color:#fff; font:inherit; font-weight:700; text-transform:uppercase; cursor:pointer; }
.amp-search-glyph { width:16px; height:16px; border:2px solid currentColor; border-radius:50%; display:inline-block; position:relative; }
.amp-search-glyph:after { content:""; position:absolute; width:7px; height:2px; background:currentColor; right:-5px; bottom:-2px; transform:rotate(48deg); border-radius:2px; }
.amp-category-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:16px; }
.amp-category-card { min-height:171px; padding:21px 12px 17px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:11px; text-align:center; text-decoration:none !important; color:#f5f5f5 !important; border:1px solid var(--amp-filter-accent); border-radius:16px; background:#171719; transition:transform .18s ease,background .18s ease,box-shadow .18s ease; }
.amp-category-card:hover, .amp-category-card:focus-visible { transform:translateY(-2px); background:#1d1d20; box-shadow:0 0 0 1px var(--amp-filter-accent),0 8px 24px rgba(0,0,0,.28); }
.amp-category-icon { width:62px; height:62px; display:grid; place-items:center; color:var(--amp-filter-accent); border:1px solid var(--amp-filter-accent); border-radius:17px; background:rgba(227,27,35,.08); }
.amp-category-icon svg { width:34px; height:34px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
.amp-category-icon-image { width:38px; height:38px; object-fit:contain; }
.amp-category-name { max-width:100%; color:#f7f7f7; font-size:16px; line-height:1.25; font-weight:700; }
.amp-category-count { color:#85858c; font-size:14px; line-height:1.2; }
.amp-view-all-categories { width:max-content; display:block; margin:32px auto 0; color:var(--amp-filter-accent) !important; text-decoration:none !important; font-size:17px; font-weight:600; }
.amp-view-all-categories:hover { text-decoration:underline !important; }
.amp-shop-layout { display:grid; grid-template-columns:minmax(210px,250px) minmax(0,1fr); gap:24px; align-items:start; width:100%; }
.amp-shop-filter-sidebar { min-width:0; }
.amp-shop-search { display:flex; flex-direction:row; gap:0; margin:0 0 14px; overflow:hidden; border:1px solid var(--amp-filter-accent); border-radius:9px; background:#171719; }
.amp-shop-search:focus-within { box-shadow:0 0 0 1px var(--amp-filter-accent); }
.amp-shop-search input[type="search"] { flex:1 1 auto; width:100%; min-width:0; height:50px; padding:0 13px; border:0; border-radius:0; outline:none; background:transparent; color:#fff; font:inherit; }
.amp-shop-search input[type="search"]::placeholder { color:#999; }
.amp-shop-search button { flex:0 0 78px; min-height:50px; width:78px; padding:0 6px; border:0; border-radius:0; font-size:13px; }
.amp-shop-products { min-width:0; }
.amp-shop-filter { display:flex; flex-direction:column; align-items:stretch; gap:12px; margin:0; padding:16px; border:1px solid var(--amp-filter-accent); border-radius:12px; background:#101010; }
.amp-shop-filter select { min-width:190px; max-width:100%; height:48px; padding:0 38px 0 14px; border:1px solid var(--amp-filter-accent); border-radius:8px; background:#171719; color:#fff; font:inherit; }
.amp-shop-filter button { min-height:48px; padding:0 20px; border-radius:8px; }
.amp-filter-reset { color:var(--amp-filter-accent) !important; font-weight:600; }
.amp-infinite-status { min-height:28px; margin:18px 0; color:#aaa; text-align:center; font-size:14px; }
.amp-elementor-infinite .woocommerce-pagination,
.amp-elementor-infinite .elementor-pagination { display:none !important; }
.amp-home-infinite-status { clear:both; width:100%; min-height:28px; margin:24px 0; color:#aaa; text-align:center; font-size:14px; }
.amp-shop-products .woocommerce-pagination { display:none !important; }
.amp-shop-products { color:#f3f3f3; }
.amp-shop-products .woocommerce-result-count { float:left; margin:0 0 22px; color:#777; font-size:16px; }
.amp-shop-products .woocommerce-ordering { float:right; margin:0 0 22px; }
.amp-shop-products .woocommerce-ordering select { min-width:220px; height:50px; padding:0 38px 0 16px; border:1px solid #ddd; border-radius:4px; background:#fff; color:#111; font:inherit; }
.amp-shop-products ul.products { clear:both; display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)); gap:38px 3.4%; margin:26px 0 0 !important; padding:0 !important; }
.amp-shop-products ul.products:before, .amp-shop-products ul.products:after { display:none !important; content:none !important; }
.amp-shop-products ul.products li.product { position:relative; float:none !important; width:auto !important; margin:0 !important; padding:0 !important; text-align:left; background:transparent; }
.amp-shop-products ul.products li.product a.woocommerce-LoopProduct-link { display:block; color:inherit; text-decoration:none; }
.amp-shop-products ul.products li.product a img { display:block; width:100%; height:auto; aspect-ratio:3 / 4; margin:0 0 26px !important; object-fit:contain; background:#111; }
.amp-shop-products ul.products li.product .onsale { position:absolute; z-index:2; top:-10px !important; right:-10px !important; left:auto !important; min-width:64px; min-height:64px; margin:0 !important; padding:0 8px; display:grid; place-items:center; border:0; border-radius:50%; background:#a19b0a; color:#fff; font-size:18px; font-weight:700; line-height:1; }
.amp-shop-products ul.products li.product .woocommerce-loop-product__title { padding:0 !important; color:#d8194a; font-size:20px; font-weight:500; line-height:1.35; text-align:left; text-transform:uppercase; }
.amp-shop-products ul.products li.product .price { display:block; margin:12px 0 22px !important; color:#d8194a !important; font-size:18px; font-weight:600; line-height:1.35; }
.amp-shop-products ul.products li.product .price del { color:#a91239 !important; opacity:1; }
.amp-shop-products ul.products li.product .price ins { color:#d8194a !important; text-decoration:none; }
.amp-shop-products ul.products li.product a.button { min-height:46px; margin:0 !important; padding:10px 22px !important; display:inline-flex; align-items:center; justify-content:center; border:0; border-radius:6px; background:#e8e5eb; color:#555 !important; font-size:16px; font-weight:600; line-height:1.2; text-align:center; text-decoration:none; }
.amp-shop-products ul.products li.product a.button:hover { background:#d8d4dc; color:#333 !important; }
.amp-shop-products .woocommerce-info { clear:both; color:#ddd; }
.amp-filter-notice { padding:12px 16px; border-left:3px solid var(--amp-filter-accent); background:#151515; color:#fff; }
@media (max-width:1100px) { .amp-category-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:900px) { .amp-shop-products ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:640px) {
  .amp-home-category-section { padding:22px 14px; }
  .amp-home-search { gap:9px; margin-bottom:26px; }
  .amp-home-search input[type="search"] { height:48px; padding:0 13px; font-size:15px; }
  .amp-home-search button { min-height:48px; padding:0 14px; }
  .amp-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .amp-category-card { min-height:148px; border-radius:12px; padding:16px 8px; gap:9px; }
  .amp-category-icon { width:52px; height:52px; border-radius:14px; }
  .amp-category-icon svg { width:29px; height:29px; }
  .amp-category-name { font-size:14px; }
  .amp-category-count { font-size:12px; }
  .amp-view-all-categories { margin-top:24px; font-size:15px; }
  .amp-shop-layout { grid-template-columns:minmax(0,1fr); gap:18px; }
  .amp-shop-filter-sidebar { order:0; }
  .amp-shop-products { order:1; }
  .amp-shop-filter { display:grid; grid-template-columns:1fr 1fr; align-items:stretch; }
  .amp-shop-filter select, .amp-shop-filter button { width:100%; }
  .amp-shop-filter button { grid-column:1 / -1; }
  .amp-shop-search input[type="search"] { height:46px; }
  .amp-shop-search button { flex-basis:78px; width:78px; min-height:46px; }
  .amp-shop-products .woocommerce-result-count { float:none; margin:0 0 12px; font-size:14px; }
  .amp-shop-products .woocommerce-ordering { float:none; margin:0 0 18px; }
  .amp-shop-products .woocommerce-ordering select { width:100%; }
  .amp-shop-products ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px 12px; margin-top:12px !important; }
  .amp-shop-products ul.products li.product a img { margin-bottom:14px !important; }
  .amp-shop-products ul.products li.product .onsale { min-width:48px; min-height:48px; top:-7px !important; right:-5px !important; font-size:13px; }
  .amp-shop-products ul.products li.product .woocommerce-loop-product__title { font-size:14px; }
  .amp-shop-products ul.products li.product .price { margin:8px 0 13px !important; font-size:14px; }
  .amp-shop-products ul.products li.product a.button { min-height:40px; padding:8px 12px !important; font-size:13px; }
}

/* Product archive cards match the homepage cards. */
.amp-shop-products ul.products li.product {
  min-width:0;
  padding:0 12px 14px !important;
  display:flex;
  flex-direction:column;
  text-align:center;
  border:2px solid #3b3b3b;
  border-radius:16px;
  background:#050505;
}
.amp-shop-products ul.products li.product a.woocommerce-LoopProduct-link {
  flex:1 0 auto;
  display:flex;
  flex-direction:column;
  align-items:stretch;
}
.amp-shop-products ul.products li.product a img {
  aspect-ratio:1 / 1;
  width:calc(100% + 24px);
  margin:0 -12px 18px !important;
  max-width:calc(100% + 24px);
  object-fit:contain;
  background:#080808;
}
.amp-shop-products ul.products li.product .woocommerce-loop-product__title {
  min-height:2.6em;
  color:#d8194a;
  text-align:center;
  font-size:18px;
  line-height:1.3;
}
.amp-shop-products ul.products li.product .price {
  min-height:2.1em;
  margin:12px 0 22px !important;
  color:#fff !important;
  text-align:center;
  font-size:17px;
}
.amp-shop-products ul.products li.product .price del { color:#c21a43 !important; opacity:1; }
.amp-shop-products ul.products li.product .price ins { color:#fff !important; text-decoration:underline; }
.amp-shop-products ul.products li.product a.button {
  width:72%;
  min-height:56px;
  align-self:center;
  margin:0 0 0 !important;
  padding:10px 14px !important;
  border-radius:15px;
  background:#bd281e;
  color:#fff !important;
  font-size:16px;
  font-weight:600;
  text-align:center;
}
.amp-shop-products ul.products li.product a.button:hover { background:#d23428; color:#fff !important; }
.amp-shop-products ul.products li.product .onsale {
  top:8px !important;
  right:8px !important;
  left:auto !important;
  width:68px !important;
  height:68px !important;
  min-width:68px !important;
  min-height:68px !important;
  max-width:68px !important;
  max-height:68px !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  white-space:nowrap !important;
  line-height:1 !important;
  box-sizing:border-box !important;
  background:#a19b0a;
  color:#fff;
  font-size:18px;
  transform:none !important;
}
@media (max-width:640px) {
  .amp-shop-products ul.products li.product { padding:0 8px 12px !important; border-radius:12px; }
  .amp-shop-products ul.products li.product a img { width:calc(100% + 16px); margin-left:-8px !important; margin-right:-8px !important; max-width:calc(100% + 16px); margin-bottom:12px !important; }
  .amp-shop-products ul.products li.product .woocommerce-loop-product__title { min-height:2.6em; font-size:14px; }
  .amp-shop-products ul.products li.product .price { min-height:2.1em; margin:8px 0 13px !important; font-size:14px; }
  .amp-shop-products ul.products li.product a.button { width:86%; min-height:42px; padding:8px 9px !important; border-radius:12px; font-size:13px; }
  .amp-shop-products ul.products li.product .onsale { top:7px !important; right:7px !important; width:48px !important; height:48px !important; min-width:48px !important; min-height:48px !important; max-width:48px !important; max-height:48px !important; font-size:13px; }
}
