/* ═══════════════════════════════════════
   ZAYOLI — Design Tokens & Global Reset
   ═══════════════════════════════════════ */

:root {
  --z-olive: #7A8C35;
  --z-olive-light: #96A84A;
  --z-olive-dark: #5C6A28;
  --z-beige: #F5F0E8;
  --z-beige-light: #FAF8F3;
  --z-gold: #D4A853;
  --z-gold-light: #E8C97A;
  --z-text: #3D3D35;
  --z-text-light: #6B6B60;
  --z-text-muted: #A09A8E;
  --z-white: #FFFFFF;
  --z-cream: #EFE8DC;

  --z-font-display: 'Playfair Display', Georgia, serif;
  --z-font-body: 'Raleway', 'Helvetica Neue', sans-serif;
  --z-font-label: 'Nunito', sans-serif;

  --z-radius: 16px;
  --z-radius-lg: 24px;
  --z-radius-pill: 50px;

  --z-shadow: 0 4px 24px rgba(0,0,0,0.06);
  --z-shadow-lg: 0 12px 48px rgba(0,0,0,0.1);

  --z-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --z-duration: 0.6s;

  --z-container: min(90%, 1200px);
  --z-section-pad: clamp(3rem, 8vw, 6rem);
}

/* Reset */
*, *::before, *::after { box-sizing: border-box; }
body {
  font-family: var(--z-font-body) !important;
  color: var(--z-text);
  background: var(--z-white);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin: 0 !important;
  padding: 0 !important;
}

h1, h2, h3, h4 { font-family: var(--z-font-display) !important; color: var(--z-text); }
a { transition: all 0.3s ease; }
img { max-width: 100%; height: auto; }
::selection { background: rgba(122,140,53,0.15); }

/* Scrollbar */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--z-beige); }
::-webkit-scrollbar-thumb { background: var(--z-gold); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: var(--z-olive); }

/* ═══════════════════════════════════════
   WooCommerce Overrides
   ═══════════════════════════════════════ */
.woocommerce ul.products li.product {
  background: var(--z-white);
  border-radius: var(--z-radius) !important;
  border: 1px solid rgba(212,168,83,0.08);
  padding: 20px !important;
  transition: transform var(--z-duration) var(--z-ease), box-shadow var(--z-duration) var(--z-ease);
}
.woocommerce ul.products li.product:hover {
  transform: translateY(-6px);
  box-shadow: var(--z-shadow-lg);
}
.woocommerce ul.products li.product img {
  border-radius: 12px !important;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-family: var(--z-font-display) !important;
  font-size: 16px !important;
  color: var(--z-text) !important;
  font-weight: 400 !important;
}
.woocommerce ul.products li.product .price {
  font-family: var(--z-font-label) !important;
  color: var(--z-olive) !important;
  font-weight: 700 !important;
}
.woocommerce a.button, .woocommerce button.button,
.woocommerce input.button, .woocommerce .button {
  background-color: var(--z-olive) !important;
  color: var(--z-white) !important;
  border-radius: var(--z-radius-pill) !important;
  font-family: var(--z-font-label) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  padding: 12px 28px !important;
  border: none !important;
  transition: all 0.3s ease !important;
}
.woocommerce a.button:hover, .woocommerce button.button:hover {
  background-color: var(--z-olive-dark) !important;
  transform: translateY(-2px);
}

/* Elementor overrides */
.elementor-section { padding-top: 0 !important; padding-bottom: 0 !important; }
.elementor-widget-heading h1, .elementor-widget-heading h2 {
  font-family: var(--z-font-display) !important;
  color: var(--z-text) !important;
}
