/* EKOTEKS v12.1 — reference-matched softer editorial headings, live WooCommerce cards and footer.
   Strictly presentation CSS. No selectors for checkout, cart calculations, banks or shipping gateways. */

/* 1. More refined editorial type on home. */
.ekhome-v120 .ekhome-overview h1{
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(25px,2.1vw,34px)!important;
  font-weight:500!important;
  line-height:1.12!important;
  letter-spacing:-.043em!important;
  color:#163e2e!important;
  text-wrap:balance;
}
.ekhome-v120 .ekshop-list-heading h2{
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(29px,2.8vw,39px)!important;
  font-weight:500!important;
  line-height:1.08!important;
  letter-spacing:-.043em!important;
}
.ekhome-v120 .ekhome-overview p{font-weight:400}

/* 2. Product tiles: one system for home, shop, all brand categories and related products.
   Product data and add-to-cart markup remain native WooCommerce. */
.woocommerce ul.products li.product.ek-product-card,
.woocommerce-page ul.products li.product.ek-product-card,
.ekshop-v118 .woocommerce ul.products li.product.ek-product-card{
  display:grid!important;
  grid-template-columns:minmax(0,42%) minmax(0,1fr)!important;
  float:none!important;width:auto!important;
  min-width:0!important;min-height:216px!important;
  padding:0!important;margin:0!important;
  background:#fffdf9!important;
  border:1px solid #e9e7df!important;
  border-radius:19px!important;
  overflow:hidden!important;
  box-shadow:0 7px 20px rgba(34,58,40,.046)!important;
  transition:transform .2s ease,box-shadow .2s ease;
}
.woocommerce ul.products li.product.ek-product-card:hover{
  transform:translateY(-3px);box-shadow:0 12px 26px rgba(29,64,40,.085)!important;
}
.woocommerce ul.products li.product.ek-product-card .ek-product-image,
.ekshop-v118 .woocommerce ul.products li.product.ek-product-card .ek-product-image{
  display:flex!important;align-items:center!important;justify-content:center!important;
  min-width:0!important;min-height:210px!important;
  padding:9px 3px 11px 7px!important;
  background:transparent!important;
}
.woocommerce ul.products li.product.ek-product-card .ek-product-image img,
.ekshop-v118 .woocommerce ul.products li.product.ek-product-card .ek-product-image img{
  display:block!important;max-width:100%!important;width:100%!important;
  height:174px!important;object-fit:contain!important;object-position:center center!important;
  margin:0!important;
}
.woocommerce ul.products li.product.ek-product-card .ek-product-copy,
.ekshop-v118 .woocommerce ul.products li.product.ek-product-card .ek-product-copy{
  display:flex!important;flex-direction:column!important;align-items:stretch!important;
  min-width:0!important;max-width:100%!important;
  padding:17px 12px 15px 5px!important;
  background:transparent!important;
}
.woocommerce ul.products li.product.ek-product-card .ek-product-brand{
  margin:0 0 4px!important;color:#376b46!important;
  letter-spacing:.105em!important;font-size:8.5px!important;
  font-weight:800!important;line-height:1.25!important;
}
.woocommerce ul.products li.product.ek-product-card .ek-product-name,
.ekshop-v118 .woocommerce ul.products li.product.ek-product-card .ek-product-name{
  display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:3!important;
  min-height:0!important;max-height:none!important;
  margin:3px 0 4px!important;
  overflow:hidden!important;overflow-wrap:anywhere!important;
  color:#173b2d!important;font-weight:690!important;
  font-size:12px!important;line-height:1.32!important;letter-spacing:-.01em!important;
}
.woocommerce ul.products li.product.ek-product-card .ek-product-excerpt{
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;
  overflow:hidden;overflow-wrap:anywhere;min-width:0;
  color:#607968;font-size:10.3px;line-height:1.35;font-weight:400;
  margin:3px 0 10px;
}
.woocommerce ul.products li.product.ek-product-card .ek-product-bottom,
.ekshop-v118 .woocommerce ul.products li.product.ek-product-card .ek-product-bottom{
  display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;
  align-items:center!important;justify-content:space-between!important;
  gap:7px 5px!important;min-width:0!important;
  margin-top:auto!important;
}
.woocommerce ul.products li.product.ek-product-card .ek-product-price,
.ekshop-v118 .woocommerce ul.products li.product.ek-product-card .ek-product-price{
  color:#163e2f!important;font-weight:790!important;
  font-size:14px!important;line-height:1.2!important;
  white-space:normal!important;overflow-wrap:anywhere!important;
}
.woocommerce ul.products li.product.ek-product-card .ek-product-price .woocommerce-Price-amount{
  color:inherit!important;font-weight:inherit!important;
}
.woocommerce ul.products li.product.ek-product-card .ek-product-add{
  min-width:0!important;flex:0 1 auto;
}
.woocommerce ul.products li.product.ek-product-card .ek-product-add a.button,
.woocommerce ul.products li.product.ek-product-card .ek-product-add a.added_to_cart,
.ekshop-v118 .woocommerce ul.products li.product.ek-product-card .ek-product-add a.button{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  gap:5px!important;min-height:30px!important;width:auto!important;max-width:100%!important;
  border:0!important;border-radius:99px!important;
  padding:7px 11px!important;margin:0!important;
  background:#e2eecb!important;color:#1c4d31!important;
  box-shadow:none!important;font-size:10px!important;
  font-weight:750!important;line-height:1.1!important;
  white-space:normal!important;text-align:center!important;
}
.woocommerce ul.products li.product.ek-product-card .ek-product-add a.button:hover,
.ekshop-v118 .woocommerce ul.products li.product.ek-product-card .ek-product-add a.button:hover{
  background:#cfe3ac!important;color:#16432d!important;
}
.ekshop-v118 .woocommerce ul.products li.product.ek-product-card .ek-product-add a.button::before{
  width:13px!important;height:13px!important;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231c4d31' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m2 3 2 2h2l3 11h10l3-9H7'/%3E%3Ccircle cx='10' cy='21' r='1'/%3E%3Ccircle cx='18' cy='21' r='1'/%3E%3C/svg%3E") center/contain no-repeat!important;
}
.woocommerce ul.products li.product.ek-product-card .ek-sale-tag{z-index:2!important}

@media(max-width:1190px) and (min-width:651px){
  .woocommerce ul.products li.product.ek-product-card,
  .ekshop-v118 .woocommerce ul.products li.product.ek-product-card{
    min-height:206px!important;
  }
  .woocommerce ul.products li.product.ek-product-card .ek-product-image,
  .ekshop-v118 .woocommerce ul.products li.product.ek-product-card .ek-product-image{min-height:195px!important}
  .woocommerce ul.products li.product.ek-product-card .ek-product-image img,
  .ekshop-v118 .woocommerce ul.products li.product.ek-product-card .ek-product-image img{height:158px!important}
}
@media(max-width:650px){
  .ekhome-v120 .ekhome-overview h1{font-size:clamp(27px,6.5vw,35px)!important;line-height:1.09!important}
  .ekhome-v120 .ekshop-list-heading h2{font-size:clamp(27px,6.3vw,34px)!important}
  .woocommerce ul.products li.product.ek-product-card,
  .woocommerce-page ul.products li.product.ek-product-card,
  .ekshop-v118 .woocommerce ul.products li.product.ek-product-card{
    display:flex!important;flex-direction:column!important;
    grid-template-columns:1fr!important;min-height:0!important;
    border-radius:15px!important;
  }
  .woocommerce ul.products li.product.ek-product-card .ek-product-image,
  .ekshop-v118 .woocommerce ul.products li.product.ek-product-card .ek-product-image{
    width:100%!important;min-height:132px!important;
    padding:9px 9px 0!important;
  }
  .woocommerce ul.products li.product.ek-product-card .ek-product-image img,
  .ekshop-v118 .woocommerce ul.products li.product.ek-product-card .ek-product-image img{
    height:122px!important;
  }
  .woocommerce ul.products li.product.ek-product-card .ek-product-copy,
  .ekshop-v118 .woocommerce ul.products li.product.ek-product-card .ek-product-copy{
    padding:11px 11px 13px!important;flex:1 1 auto!important;
  }
  .woocommerce ul.products li.product.ek-product-card .ek-product-brand{font-size:8px!important}
  .woocommerce ul.products li.product.ek-product-card .ek-product-name,
  .ekshop-v118 .woocommerce ul.products li.product.ek-product-card .ek-product-name{
    font-size:11px!important;-webkit-line-clamp:3!important;
  }
  .woocommerce ul.products li.product.ek-product-card .ek-product-excerpt{
    font-size:9.4px!important;line-height:1.3!important;-webkit-line-clamp:2!important;margin-bottom:9px!important;
  }
  .woocommerce ul.products li.product.ek-product-card .ek-product-bottom,
  .ekshop-v118 .woocommerce ul.products li.product.ek-product-card .ek-product-bottom{
    align-items:flex-start!important;gap:8px 4px!important;
  }
  .woocommerce ul.products li.product.ek-product-card .ek-product-price,
  .ekshop-v118 .woocommerce ul.products li.product.ek-product-card .ek-product-price{font-size:14px!important}
  .woocommerce ul.products li.product.ek-product-card .ek-product-add a.button,
  .ekshop-v118 .woocommerce ul.products li.product.ek-product-card .ek-product-add a.button{min-height:29px!important;padding:7px 9px!important;font-size:9.6px!important}
}
@media(max-width:370px){
  .woocommerce ul.products li.product.ek-product-card .ek-product-copy,
  .ekshop-v118 .woocommerce ul.products li.product.ek-product-card .ek-product-copy{padding:9px 9px 11px!important}
  .woocommerce ul.products li.product.ek-product-card .ek-product-add a.button,
  .ekshop-v118 .woocommerce ul.products li.product.ek-product-card .ek-product-add a.button{font-size:9px!important;padding:6px 8px!important}
}

/* 3. Rich dark-green footer, matching the reference, across the whole store. */
.footer.ek-footer-v121{
  position:relative;isolation:isolate;overflow:hidden;
  background:linear-gradient(113deg,#113c2d 0%,#174d39 55%,#10382a 100%)!important;
  color:#f3f8f1!important;margin-top:38px!important;padding:29px 0 14px!important;
}
.ek-footer-v121 .container{position:relative;z-index:2;max-width:1480px;width:min(1480px,calc(100% - 72px))}
.ek-footer-v121 .ek-footer-main{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(0,.68fr) minmax(0,.82fr) minmax(0,.72fr) minmax(0,1.4fr) minmax(0,.55fr);
  gap:clamp(12px,1.7vw,29px);
  align-items:start;min-width:0;
}
.ek-footer-v121 .ek-footer-main>*{min-width:0}
.ek-footer-v121 .ek-footer-brand{padding-right:15px;border-right:1px solid rgba(224,243,224,.33)}
.ek-footer-v121 .brand{color:white!important;max-width:100%;min-width:0;gap:7px}
.ek-footer-v121 .brand-word{color:#fff!important;font-weight:820!important;font-size:29px!important;letter-spacing:-.07em}
.ek-footer-v121 .brand-word span{color:#dbe8c9!important}
.ek-footer-v121 .brand-foot{display:none!important}
.ek-footer-v121 .brand-mark{width:44px!important;height:44px!important}
.ek-footer-v121 .brand-custom-logo{max-width:230px!important;filter:brightness(0) invert(1)}
.ek-footer-v121 .footer-desc{font-size:11.5px!important;line-height:1.58!important;max-width:218px!important;margin:11px 0 0!important;color:#d3e4d6!important}
.ek-footer-v121 h3{font-size:13px!important;line-height:1.4!important;color:#fff!important;font-weight:700!important;margin:4px 0 12px!important}
.ek-footer-v121 .footer-links{display:flex!important;flex-direction:column!important;gap:6px!important}
.ek-footer-v121 .footer-links a{font-size:11.4px!important;line-height:1.45!important;color:#d5e6d8!important;transition:color .2s ease!important}
.ek-footer-v121 .footer-links a:hover{color:#fff!important;text-decoration:underline}
.ek-footer-v121 .ek-footer-subscribe{padding-right:15px;border-right:1px solid rgba(224,243,224,.30)}
.ek-footer-v121 .ek-footer-subscribe p{margin:0 0 11px;color:#d8e7db;font-size:10.9px;line-height:1.45}
.ek-footer-v121 .ek-footer-newsletter{
  display:flex;align-items:stretch;gap:6px;max-width:100%;position:relative;
}
.ek-footer-v121 .ek-footer-newsletter input[type=email]{
  flex:1 1 0;min-width:0;width:0;height:35px;border:1px solid #dbe3d9;border-radius:8px;
  background:#fffefa;padding:8px 12px;color:#193e2d;font-size:11px!important;line-height:1.3;
}
.ek-footer-v121 .ek-footer-newsletter button{
  flex:0 0 auto;max-width:43%;border:0;border-radius:8px;
  padding:9px 11px;background:#d9e8b9;color:#143e2d;
  font-size:10px;font-weight:800;cursor:pointer;line-height:1;
}
.ek-footer-v121 .ek-footer-newsletter button:hover{background:#bfd99b}
.ek-footer-v121 .ek-footer-consent{font-size:9px!important;color:#b5d1be!important;line-height:1.45!important;margin-top:7px!important}
.ek-footer-v121 .ek-footer-consent a{text-decoration:underline;color:#d3e7d3}
.ek-footer-v121 .ek-footer-nl-message{font-size:10px!important;background:#eaf3e7;color:#153c29!important;border-radius:8px;margin-top:9px!important;padding:7px 9px}
.ek-footer-v121 .ek-footer-social-icons{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.ek-footer-v121 .ek-footer-social-icon{
  display:grid;place-items:center;width:31px;height:31px;flex:none;border-radius:50%;
  color:#15422f;background:#f2f9ef;transition:transform .2s ease;
}
.ek-footer-v121 a.ek-footer-social-icon:hover{transform:translateY(-2px)}
.ek-footer-v121 .ek-footer-social-icon svg{width:19px;height:19px}
.ek-footer-v121 .ek-footer-social-disabled{opacity:.64;cursor:default}
.ek-footer-v121 .footer-bottom{border-top:1px solid rgba(255,255,255,.21)!important;margin-top:24px!important;padding-top:11px!important;font-size:10px!important;color:#bdd2c2!important}
.ek-footer-v121 .footer-bottom a{color:inherit}
.ek-footer-v121 .ek-footer-leaves{position:absolute;right:-40px;bottom:-65px;width:340px;z-index:1;pointer-events:none;opacity:.75}
.ek-footer-v121 .ek-footer-sr-only,.ek-footer-v121 .ek-footer-nl-trap{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

@media(max-width:1200px){
  .ek-footer-v121 .ek-footer-main{grid-template-columns:1.2fr .85fr .85fr .85fr;gap:22px 28px}
  .ek-footer-v121 .ek-footer-brand{border-right:0;padding-right:0}
  .ek-footer-v121 .ek-footer-subscribe{grid-column:1/span 3;border-right:0;padding-right:0;max-width:420px}
  .ek-footer-v121 .ek-footer-social{grid-column:4}
}
@media(max-width:710px){
  .ek-footer-v121 .container{width:calc(100% - 30px)}
  .footer.ek-footer-v121{padding:28px 0 17px!important}
  .ek-footer-v121 .ek-footer-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 15px}
  .ek-footer-v121 .ek-footer-brand{grid-column:1/-1}
  .ek-footer-v121 .footer-desc{max-width:300px!important}
  .ek-footer-v121 .ek-footer-subscribe{grid-column:1/-1;max-width:420px}
  .ek-footer-v121 .ek-footer-social{grid-column:1/-1}
  .ek-footer-v121 .ek-footer-leaves{width:270px;opacity:.28}
}
@media(max-width:370px){
  .ek-footer-v121 .ek-footer-main{gap:18px 12px}
  .ek-footer-v121 .ek-footer-newsletter{gap:4px}
  .ek-footer-v121 .ek-footer-newsletter button{font-size:9px;padding:8px 9px}
}
