
:root{
  --container: 1100px;
  --gap: 16px;
  --radius: 16px;
}

*{ box-sizing: border-box; }
body{ margin:0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Helvetica Neue', Arial, sans-serif; color:#111; background:#fff; }
a{ color:inherit; text-decoration:none; }
.container{ max-width: var(--container); margin: 0 auto; padding: 0 16px; }

.site-header{ position: sticky; top:0; background:#fff; border-bottom:1px solid #eee; z-index: 99; }
.header-inner{ display:flex; align-items:center; gap:16px; padding:12px 0; }
.site-branding{ display:flex; align-items:center; gap:12px; }
.site-title{ font-weight:700; font-size:18px; }

.menu{ list-style:none; margin:0; padding:0; display:flex; gap:16px; }
.primary-nav{ margin-left:auto; }

.header-actions{ display:flex; align-items:center; gap:12px; }
.cart-link .count{ background:#111; color:#fff; font-size:12px; padding:2px 6px; border-radius:999px; margin-left:6px; }

.hero{ background:linear-gradient(180deg,#f7f7f7, #fff); padding:48px 0 24px; text-align:center; }
.hero h1{ font-size:36px; margin:0 0 8px; }
.hero p{ color:#444; margin:0 0 18px; }
.btn{ display:inline-block; padding:10px 16px; border-radius:12px; background:#111; color:#fff; }

.home-section{ padding:24px 0; }
.home-section h2{ margin:0 0 12px; font-size:20px; }

/* Product & category grids (shortcode output styles) */
.product-grid, .category-grid{ display:grid; grid-template-columns: repeat(4, 1fr); gap:12px; }
ul.products{ list-style:none; padding:0; margin:0; display:grid !important; grid-template-columns: repeat(4, 1fr); gap:12px; }
ul.products li.product{ border:1px solid #eee; border-radius: var(--radius); overflow:hidden; background:#fff; }
ul.products li.product a img{ width:100%; height:auto; display:block; aspect-ratio:1/1; object-fit:cover; }
ul.products li.product .woocommerce-loop-product__title{ font-size:14px; line-height:1.3; padding:10px 10px 0; min-height: 40px; }
ul.products li.product .price{ padding:8px 10px 12px; font-weight:700; }
ul.products li.product .button{ margin: 0 10px 12px; border-radius:12px; }

/* Footer */
.site-footer{ border-top:1px solid #eee; margin-top:32px; }
.footer-inner{ padding:24px 0; }
.menu--footer{ font-size:14px; color:#444; }
.footer-copy{ font-size:13px; color:#666; margin-top:12px; }

/* Search form */
.search-form{ display:flex; gap:8px; }
.search-field{ border:1px solid #ddd; border-radius:12px; padding:8px 12px; }
.search-submit{ border:1px solid #111; background:#111; color:#fff; border-radius:12px; padding:8px 14px; }

/* Mobile */
@media (max-width: 1024px){
  .product-grid, .category-grid, ul.products{ grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 768px){
  .header-inner{ flex-wrap:wrap; gap:10px; }
  .primary-nav{ width:100%; order: 3; }
  .menu{ flex-wrap: wrap; gap:10px; }
  .hero{ padding:28px 0 14px; }
  .product-grid, .category-grid, ul.products{ grid-template-columns: repeat(2, 1fr); gap:8px; }
  ul.products li.product .woocommerce-loop-product__title{ font-size:13px; }
}
