:root {
  --ella-ground: #e6dac5;
  --ella-ink: #14110c;
  --ella-muted: #5a5142;
  --ella-navy: #0b1b2a;
  --ella-accent: #8c4a2f;
  --ella-band: #6eb4d7;
  --ella-display: Outfit, "Noto Sans Hebrew", "Glacial Indifference", system-ui, sans-serif;
  --ella-body: "Glacial Indifference", Assistant, "Noto Sans Hebrew", system-ui, sans-serif;
}

body.woocommerce-page,
body.woocommerce-cart,
body.woocommerce-checkout { background: var(--ella-ground); color: var(--ella-ink); font-family: var(--ella-body); }

.woocommerce-page #content,
.woocommerce-page main,
.woocommerce-cart main,
.woocommerce-checkout main { width: min(100% - 2.5rem, 1360px); margin-inline: auto; padding-block: clamp(2rem, 5vw, 5rem); }

.woocommerce-page h1,
.woocommerce-page h2,
.woocommerce-page h3,
.woocommerce-cart h1,
.woocommerce-checkout h1 { color: var(--ella-navy); font-family: var(--ella-display); font-weight: 800; letter-spacing: -.02em; }

.woocommerce ul.products { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1.5rem, 3vw, 3rem); }
.woocommerce ul.products::before,
.woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product { float: none; width: auto; margin: 0; }
.ella-gallery-products .woocommerce ul.products::before,
.ella-gallery-products .woocommerce ul.products::after { content: none !important; display: none !important; }
.ella-gallery-products .woocommerce ul.products li.product,
.woocommerce-page .ella-gallery-products ul.products li.product { clear: none !important; float: none !important; width: 100% !important; margin-right: 0 !important; margin-left: 0 !important; }
.woocommerce ul.products li.product a img { width: 100%; aspect-ratio: 1 / 1; object-fit: contain; background: rgba(255,255,255,.16); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 1.15rem; line-height: 1.25; }
.woocommerce ul.products li.product .price { color: var(--ella-accent); font-family: var(--ella-display); font-weight: 700; }

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit { border: 2px solid var(--ella-navy); border-radius: 0; background: var(--ella-navy); color: var(--ella-ground); font-family: var(--ella-display); font-weight: 700; line-height: 1.4; }
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover { border-color: var(--ella-accent); background: var(--ella-accent); color: #fbf3e6; }

.woocommerce div.product { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 430px); gap: clamp(2rem, 5vw, 5rem); }
.woocommerce div.product div.images,
.woocommerce div.product div.summary { float: none; width: auto; margin: 0; }
.woocommerce div.product div.images img { max-height: 76vh; object-fit: contain; }
.woocommerce div.product p.price { color: var(--ella-accent); font-family: var(--ella-display); font-size: 2rem; font-weight: 800; }
.woocommerce div.product .woocommerce-tabs,
.woocommerce div.product .related { grid-column: 1 / -1; }

@media (max-width: 860px) {
  .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .woocommerce div.product { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
  .woocommerce-page #content,
  .woocommerce-page main,
  .woocommerce-cart main,
  .woocommerce-checkout main { width: min(100% - 2rem, 1360px); padding-block: 2rem; }
  .woocommerce ul.products { grid-template-columns: 1fr; gap: 2.5rem; }
  .woocommerce ul.products li.product a img { aspect-ratio: auto; max-height: 70vh; }
  .woocommerce .cart-collaterals .cart_totals,
  .woocommerce-page .cart-collaterals .cart_totals { float: none; width: 100%; }
}
