/* Oleum storefront 2.6: shared identity, native commerce controls. */
.oleum-commerce.single-product .oleum-commerce-hero{padding:24px 0}
.oleum-commerce.single-product .oleum-commerce-heading{font-size:28px;margin-bottom:12px}
.oleum-commerce.single-product .oleum-commerce-content div.product .woocommerce-product-gallery{opacity:1!important;visibility:visible}
.oleum-commerce.single-product .oleum-commerce-content div.product div.images{width:46%;float:left;margin:0 0 36px}
.oleum-commerce.single-product .oleum-commerce-content div.product div.summary{width:48%;float:right;margin:0 0 36px}
.oleum-commerce.single-product .oleum-commerce-content .woocommerce-product-gallery__image img{width:100%;max-height:600px;object-fit:contain}
.oleum-commerce.single-product .oleum-commerce-content .woocommerce-tabs{clear:both;padding-top:28px}
.oleum-commerce.single-product .oleum-commerce-content .woocommerce-Tabs-panel{background:#fffdf8;padding:28px;border:1px solid #ded9cb;border-radius:18px;line-height:1.8}
.oleum-commerce.single-product .oleum-commerce-content form.cart{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:26px 0}
.oleum-commerce.single-product .oleum-commerce-content form.variations_form{display:block}
.oleum-commerce.single-product .oleum-commerce-content .quantity .qty{min-height:48px;width:80px;padding:10px}
.oleum-commerce.single-product .oleum-commerce-content .product_meta{font-size:14px;border-top:1px solid #ddd7c6;padding-top:20px;margin-top:22px}
.oleum-commerce.single-product .oleum-commerce-content .product_meta>span{display:block;margin:5px 0}
@media(max-width:780px){.oleum-commerce.single-product .oleum-commerce-content div.product div.images,.oleum-commerce.single-product .oleum-commerce-content div.product div.summary{width:100%;float:none}.oleum-commerce.single-product .oleum-commerce-content .woocommerce-product-gallery__image img{max-height:400px}.oleum-commerce.single-product .oleum-commerce-content .woocommerce-Tabs-panel{padding:18px}}
.oleum-commerce{--wp--preset--color--contrast:#132017;--wp--preset--color--base:#f5f1e7;--wp--style--global--content-size:1220px;--wp--style--global--wide-size:1220px}
.oleum-commerce-hero{background:radial-gradient(ellipse at 90% 0,rgba(213,179,106,.17),transparent 55%),#0b1510;color:#fff;padding:62px 0 66px;border-bottom:1px solid #d5b36a}
.oleum-commerce-hero h1,.oleum-commerce-heading{font:400 clamp(38px,5vw,68px)/1.08 Georgia,serif;letter-spacing:-.025em;margin:0 0 20px;color:#fff}
.oleum-commerce-hero p:not(.oleum-eyebrow):not(.oleum-commerce-heading){color:#d4dace;max-width:650px;margin:0 0 20px;font-size:17px}
.oleum-commerce-back{color:#e7d3a4;font-size:14px;font-weight:700}
.oleum-commerce-content{padding-top:52px;padding-bottom:76px;min-height:360px;color:#132017}
.oleum-commerce-content a{color:#32563d;text-underline-offset:4px}
.oleum-commerce-content h1,.oleum-commerce-content h2,.oleum-commerce-content h3{font-family:Georgia,serif;font-weight:400;line-height:1.2;color:#132017}
.oleum-commerce-content .woocommerce-products-header__title{display:none}
.oleum-commerce-content .wp-block-woocommerce-cart,.oleum-commerce-content .wp-block-woocommerce-checkout{max-width:none;margin:0;width:100%}
.oleum-commerce-content .wc-block-cart,.oleum-commerce-content .wc-block-checkout{font-family:var(--sans);color:#132017}
.oleum-commerce-content .wc-block-cart__main,.oleum-commerce-content .wc-block-checkout__main{background:#fffdf8;padding:28px;border:1px solid #e2dfd2;border-radius:22px}
.oleum-commerce-content .wc-block-cart__sidebar,.oleum-commerce-content .wc-block-checkout__sidebar{background:#eeeadf;padding:24px;border:1px solid #d8d3c4;border-radius:22px;height:fit-content}
.oleum-commerce-content .wc-block-components-button:not(.is-link),.oleum-commerce-content .wp-element-button,.oleum-commerce-content .wp-block-button__link,.oleum-commerce-content .button,.oleum-commerce-content button.button{background:#173523;color:#fff;border:1px solid #173523;border-radius:999px;padding:15px 25px;font-weight:700;line-height:1.4;min-height:48px;box-shadow:none;text-decoration:none}
.oleum-commerce-content .wc-block-components-button:not(.is-link):hover,.oleum-commerce-content .button:hover{background:#294c33;color:#fff}
.oleum-commerce-content :is(input:not([type=checkbox]):not([type=radio]):not([type=submit]),select,textarea){font:inherit;color:#132017;background:#fffdf8;border:1px solid #aaa995;border-radius:8px;max-width:100%;box-sizing:border-box}
.oleum-commerce-content .woocommerce form .form-row input.input-text,.oleum-commerce-content .woocommerce form .form-row textarea{padding:12px}
.oleum-commerce-content :is(a,button,input,select,textarea):focus-visible{outline:3px solid #a8843e;outline-offset:3px}
.oleum-commerce-content .wc-block-components-text-input label{color:#535a50}
.oleum-commerce-content .wp-block-woocommerce-empty-cart-block{padding:44px 24px;background:#fffdf8;border:1px solid #ddd7c6;border-radius:24px;text-align:center}
.oleum-commerce-content .wc-block-cart__empty-cart__title{font-size:clamp(28px,3vw,40px);padding:0;margin:0 0 28px}
.oleum-commerce-content .wc-block-cart__empty-cart__title::before{display:none}
.oleum-commerce-content .wp-block-woocommerce-empty-cart-block .wp-block-heading{color:#173523}
.oleum-commerce-content .wp-block-separator{border:none;border-top:1px solid #ddd7c6;margin:32px auto;max-width:100px}
.oleum-commerce-content .wp-block-woocommerce-product-collection ul,.oleum-commerce-content ul.wc-block-product-template{padding:0;list-style:none}
.oleum-commerce-content .wc-block-product{padding:20px;border:1px solid #e2dfd2;background:#fffdf8;border-radius:18px;text-align:left}
.oleum-commerce-content .wc-block-components-product-image img{object-fit:contain;border-radius:12px}
.oleum-commerce-content .woocommerce-message,.oleum-commerce-content .woocommerce-info{background:#fffdf8;color:#173523;border-top-color:#a8843e;border-radius:8px}
.oleum-commerce-content .woocommerce-error{background:#fff4f0;color:#7f271e;border-radius:8px}
.oleum-commerce-content table.shop_table{background:#fffdf8;border:1px solid #ded9cb;border-radius:16px;border-collapse:separate;padding:12px}
.oleum-commerce-content table.shop_table td,.oleum-commerce-content table.shop_table th{padding:16px 10px}
.oleum-commerce-content .cart_totals{background:#eeeadf;border:1px solid #ded9cb;border-radius:20px;padding:24px}
.oleum-commerce-content div.product div.images img{border-radius:20px;background:#fffdf8}
.oleum-commerce-content div.product .product_title{font-size:clamp(32px,4vw,52px)}
.oleum-commerce-content div.product p.price,.oleum-commerce-content div.product span.price{color:#32563d;font-size:28px}
.oleum-commerce-content .woocommerce-tabs ul.tabs li{background:#eeeadf;border-color:#ded9cb}
.oleum-commerce-content .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:12px;background:#173523;border-radius:18px}
.oleum-commerce-content .woocommerce-MyAccount-navigation li a{display:block;padding:14px 18px;color:#fff;border-radius:10px}
.oleum-commerce-content .woocommerce-MyAccount-navigation li.is-active a{background:#d5b36a;color:#132017}
.oleum-commerce-assistance{background:#e9e5d8;border-top:1px solid #dad3c0;padding:42px 0}
.oleum-commerce-assistance .oleum-shell{display:flex;justify-content:space-between;align-items:center;gap:30px}
.oleum-commerce-assistance h2{font:400 clamp(26px,3vw,38px)/1.2 Georgia,serif;margin:0 0 10px}
.oleum-commerce-assistance p{margin:0;color:#556058}
.oleum-commerce-assistance .oleum-eyebrow{color:#78612c;margin-bottom:10px}
.oleum-cart-link{border:1px solid #8e7c51;border-radius:999px;padding:9px 18px}
.oleum-premium-site .oleum-footer{padding-bottom:110px}
@media(min-width:783px){.admin-bar .oleum-header{top:32px}}
@media(max-width:782px){.admin-bar .oleum-header{top:46px}}
@media(max-width:600px){.admin-bar .oleum-header{top:0}}
@media(max-width:780px){.oleum-commerce-hero{padding:38px 0}.oleum-commerce-content{padding-top:28px;padding-bottom:40px}.oleum-commerce-content .wc-block-cart__main,.oleum-commerce-content .wc-block-checkout__main,.oleum-commerce-content .wc-block-cart__sidebar,.oleum-commerce-content .wc-block-checkout__sidebar{padding:18px;width:100%;margin-bottom:20px}.oleum-commerce-assistance .oleum-shell{align-items:flex-start;flex-direction:column}.oleum-commerce-content .wp-block-woocommerce-empty-cart-block{padding:28px 16px}.oleum-commerce-content .cart_totals{width:100%;float:none}.oleum-commerce-content .woocommerce-MyAccount-navigation,.oleum-commerce-content .woocommerce-MyAccount-content{width:100%;float:none;margin-bottom:24px}}
/* Keep the existing contact extension from covering checkout controls. */
.oleum-commerce #oleum-contact-fix-dock{position:static;inset:auto;transform:none;width:min(720px,calc(100% - 40px));max-width:720px;display:flex;gap:16px;margin:24px auto;z-index:auto}
.oleum-commerce #oleum-contact-fix-dock .oleum-fix-dock-item{flex:1;min-width:0}
.oleum-commerce .oleum-whatsapp{position:static;margin:20px;display:inline-flex}
@media(max-width:520px){.oleum-commerce #oleum-contact-fix-dock{flex-direction:column}}

/* Oleum 2.6.2: use one grid model even when WooCommerce mobile CSS loads later.
 * Scope every rule to Oleum's product lists; checkout and product data stay native.
 */
body.oleum-premium-site :is(.oleum-home-shop .woocommerce, .oleum-commerce-content.woocommerce) ul.products {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  width: 100%;
  padding: 0;
  margin: 0;
  clear: both;
  list-style: none;
}
body.oleum-premium-site :is(.oleum-home-shop .woocommerce, .oleum-commerce-content.woocommerce) ul.products::before,
body.oleum-premium-site :is(.oleum-home-shop .woocommerce, .oleum-commerce-content.woocommerce) ul.products::after {
  display: none;
  content: none;
}
body.oleum-premium-site :is(.oleum-home-shop .woocommerce, .oleum-commerce-content.woocommerce) ul.products li.product {
  float: none;
  clear: none;
  width: 100%;
  min-width: 0;
  max-width: none;
  margin: 0;
  box-sizing: border-box;
  position: relative;
}
body.oleum-premium-site :is(.oleum-home-shop .woocommerce, .oleum-commerce-content.woocommerce) ul.products li.product .woocommerce-LoopProduct-link {
  display: flex;
  flex: 1 1 auto;
  min-width: 0;
  flex-direction: column;
}
body.oleum-premium-site :is(.oleum-home-shop .woocommerce, .oleum-commerce-content.woocommerce) ul.products li.product .price {
  margin-top: auto;
}
body.oleum-premium-site :is(.oleum-home-shop .woocommerce, .oleum-commerce-content.woocommerce) ul.products li.product .button {
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  width: 100%;
  min-height: 48px;
  margin: auto 0 0;
  padding: 12px 10px;
  box-sizing: border-box;
  border: 1px solid #173523;
  border-radius: 12px;
  background: #173523;
  color: #fff;
  font-family: var(--sans);
  font-size: 14px;
  line-height: 1.35;
  letter-spacing: 0;
  text-align: center;
  white-space: normal;
  overflow-wrap: anywhere;
}
body.oleum-premium-site :is(.oleum-home-shop .woocommerce, .oleum-commerce-content.woocommerce) ul.products li.product .button:hover {
  background: #294c33;
  border-color: #294c33;
  color: #fff;
}
body.oleum-premium-site :is(.oleum-home-shop .woocommerce, .oleum-commerce-content.woocommerce) ul.products li.product .added_to_cart {
  display: block;
  min-height: 44px;
  padding: 10px 0 0;
  margin: 0;
  font-size: 14px;
  font-weight: 700;
  text-align: center;
}
/* woocommerce_content() can emit a second H1 with the plain page-title class. */
body.oleum-commerce.post-type-archive-product .oleum-commerce-content > h1.page-title {
  display: none;
}

@media (max-width: 800px) {
  body.oleum-premium-site :is(.oleum-home-shop .woocommerce, .oleum-commerce-content.woocommerce) ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
  }
  body.oleum-premium-site :is(.oleum-home-shop .woocommerce, .oleum-commerce-content.woocommerce) ul.products li.product {
    padding: 14px;
    border-radius: 18px;
  }
  body.oleum-premium-site :is(.oleum-home-shop .woocommerce, .oleum-commerce-content.woocommerce) ul.products li.product a img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    object-position: center;
    margin: 0 0 14px;
    border-radius: 10px;
    background: #fff;
  }
  body.oleum-premium-site :is(.oleum-home-shop .woocommerce, .oleum-commerce-content.woocommerce) ul.products li.product :is(.woocommerce-loop-product__title, .woocommerce-loop-category__title) {
    padding: 0;
    margin: 0 0 12px;
    font-size: 20px;
    line-height: 1.3;
    letter-spacing: 0;
    overflow-wrap: anywhere;
  }
  body.oleum-premium-site :is(.oleum-home-shop .woocommerce, .oleum-commerce-content.woocommerce) ul.products li.product .price {
    font-size: 21px;
    line-height: 1.4;
    margin-bottom: 14px;
  }
  body.oleum-premium-site :is(.oleum-home-shop .woocommerce, .oleum-commerce-content.woocommerce) ul.products li.product .price :is(ins, del) {
    display: inline-block;
  }
}

@media (max-width: 600px) {
  body.oleum-commerce .oleum-commerce-content,
  body.oleum-premium-site .oleum-home-shop > .oleum-shell {
    width: calc(100% - 24px);
  }
  body.oleum-commerce.post-type-archive-product .oleum-commerce-hero {
    padding: 26px 0 24px;
  }
  body.oleum-commerce.post-type-archive-product .oleum-commerce-hero .oleum-eyebrow {
    margin-bottom: 10px;
    font-size: 10px;
    letter-spacing: .15em;
  }
  body.oleum-commerce.post-type-archive-product .oleum-commerce-hero h1 {
    margin-bottom: 12px;
    font-size: clamp(30px, 8vw, 40px);
    line-height: 1.12;
  }
  body.oleum-commerce.post-type-archive-product .oleum-commerce-hero p:not(.oleum-eyebrow) {
    margin-bottom: 0;
    font-size: 15px;
    line-height: 1.5;
  }
  body.oleum-commerce.post-type-archive-product .oleum-commerce-back {
    display: none;
  }
  body.oleum-commerce .oleum-commerce-content .woocommerce-result-count {
    float: none;
    width: 100%;
    margin: 0 0 10px;
    font-size: 14px;
    line-height: 1.4;
  }
  body.oleum-commerce .oleum-commerce-content .woocommerce-ordering {
    float: none;
    width: 100%;
    margin: 0 0 20px;
  }
  body.oleum-commerce .oleum-commerce-content .woocommerce-ordering select {
    width: 100%;
    min-height: 48px;
    padding: 10px 12px;
    font-size: 16px;
    line-height: 1.4;
    border-radius: 10px;
  }
  body.oleum-premium-site :is(.oleum-home-shop .woocommerce, .oleum-commerce-content.woocommerce) ul.products {
    gap: 12px;
  }
  body.oleum-premium-site :is(.oleum-home-shop .woocommerce, .oleum-commerce-content.woocommerce) ul.products li.product {
    padding: 12px;
    border-radius: 16px;
  }
  body.oleum-premium-site :is(.oleum-home-shop .woocommerce, .oleum-commerce-content.woocommerce) ul.products li.product :is(.woocommerce-loop-product__title, .woocommerce-loop-category__title) {
    font-size: 18px;
  }
  body.oleum-premium-site :is(.oleum-home-shop .woocommerce, .oleum-commerce-content.woocommerce) ul.products li.product .price {
    font-size: 20px;
  }
}

@media (max-width: 359px) {
  body.oleum-premium-site :is(.oleum-home-shop .woocommerce, .oleum-commerce-content.woocommerce) ul.products {
    grid-template-columns: minmax(0, 1fr);
  }
  body.oleum-premium-site :is(.oleum-home-shop .woocommerce, .oleum-commerce-content.woocommerce) ul.products li.product a img {
    max-height: 260px;
  }
  body.oleum-premium-site :is(.oleum-home-shop .woocommerce, .oleum-commerce-content.woocommerce) ul.products li.product :is(.woocommerce-loop-product__title, .woocommerce-loop-category__title) {
    font-size: 21px;
  }
}
