/*
 * EKOTEKS v12.12 — Ecover screenshot-matched category landing.
 * All rules target only Ecover-specific classes; loaded only when is_page('ecover').
 * Unchanged: navigation, homepage, Lyapko, Trend Active, others, checkout.
 */

/* Top hero, rebuilt using the actual approved mock's photographic composition. */
.brand-hero.ek-simple-brand.is-photo.ecover.ecover-exact {
  min-height:304px;
  display:flex;
  align-items:center;
  position:relative;
  isolation:isolate;
  border-radius:27px;
  border-color:#e6ebdd;
  background:linear-gradient(106deg,#f0f8e9 0%,#ecf5e5 55%,#ecf2e5 100%);
  overflow:hidden;
}
.brand-hero.ek-simple-brand.is-photo.ecover.ecover-exact::before,
.brand-hero.ek-simple-brand.is-photo.ecover.ecover-exact::after {display:none!important;content:none!important}
.brand-hero.ek-simple-brand.is-photo.ecover.ecover-exact .brand-copy {
  position:relative;
  z-index:3;
  width:51%;
  max-width:690px;
  flex:0 0 auto;
  padding:31px 35px 35px 46px;
}
.brand-hero.ek-simple-brand.is-photo.ecover.ecover-exact .brand-copy .eyebrow{display:none!important}
.brand-hero.ek-simple-brand.is-photo.ecover.ecover-exact .brand-copy h1{
  font:500 clamp(52px,4.6vw,68px)/1.02 Georgia,'Times New Roman',serif;
  color:#103f2c;
  letter-spacing:-.052em;
  margin:0 0 15px;
}
.brand-hero.ek-simple-brand.is-photo.ecover.ecover-exact .brand-copy p{
  max-width:540px;
  color:#284a3e;
  font-size:15.5px;
  line-height:1.47;
  margin:0 0 21px;
}
.brand-hero.ek-simple-brand.is-photo.ecover.ecover-exact .brand-hero-visual{
  position:absolute;
  z-index:1;
  inset:0 0 0 auto;
  width:66%;
  height:100%;
  overflow:hidden;
  background:transparent;
}
.brand-hero.ek-simple-brand.is-photo.ecover.ecover-exact .brand-hero-visual img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:right center;
  border:0;
  padding:0;
  margin:0;
  max-width:none;
  opacity:1;
}
.brand-hero.ek-simple-brand.is-photo.ecover.ecover-exact .btn.primary.ecover-cta{
  min-height:55px;
  border:0;
  padding:14px 26px;
  border-radius:99px;
  background:linear-gradient(112deg,#70b72b 0%,#2e8d15 100%);
  box-shadow:0 8px 18px rgba(41,111,29,.18);
  color:#fff;
  font-size:15px;
  font-weight:780;
  line-height:1.25;
}
.brand-hero.ek-simple-brand.is-photo.ecover.ecover-exact .btn.primary.ecover-cta:hover{
  background:linear-gradient(112deg,#82c83a,#32931b);
}
.brand-hero.ek-simple-brand.is-photo.ecover.ecover-exact .btn.primary.ecover-cta svg{width:17px;height:17px}

/* Align filter bar and headings to the approved composition. */
.brand-hero.ecover-exact + .ek127-brand-filter-wrap{
  margin-top:11px;
  margin-bottom:0;
}
.brand-hero.ecover-exact + .ek127-brand-filter-wrap .ekshop-filters{
  min-height:67px;
  border-radius:19px;
  background:linear-gradient(90deg,#f0f7e9,#ecf5e6,#f0f5e8);
}
.ek-subcats.ecover-exact-subcats.section{padding-top:20px;padding-bottom:0}
.ek-subcats.ecover-exact-subcats .section-head{margin-bottom:21px}
.ek-subcats.ecover-exact-subcats .section-head h2{
  font-size:clamp(33px,3.4vw,44px);
  font-weight:520;
  letter-spacing:-.047em;
  line-height:1.02;
  margin-top:5px;
}
.ek-subcats.ecover-exact-subcats .section-head .eyebrow{
  color:#35683a;font-size:10px;letter-spacing:.14em;font-weight:850;
}

/* Three category images are crops from the accepted visual, with alpha-blended left edges. */
.ek-subcats.ecover-exact-subcats .subcategory-grid{gap:16px}
.ek-subcats.ecover-exact-subcats .subcategory-card{
  min-height:194px;
  border-radius:22px;
  background:linear-gradient(106deg,#f3f8eb 0%,#f0f5e8 48%,#e7f1db 100%);
  border:1px solid #e6ebdb;
  box-shadow:0 4px 13px rgba(27,75,42,.06);
}
.ek-subcats.ecover-exact-subcats .subcategory-card::after{display:none!important;content:none!important}
.ek-subcats.ecover-exact-subcats .subcategory-card img{
  position:absolute;
  right:0;
  top:0;
  width:54%;
  height:100%;
  padding:0;
  margin:0;
  max-width:none;
  object-fit:fill;
  object-position:right center;
  opacity:1;
  -webkit-mask-image:none;
  mask-image:none;
  mix-blend-mode:normal;
  z-index:1;
  pointer-events:none;
}
.ek-subcats.ecover-exact-subcats .subcategory-card .subcopy{
  position:relative;
  z-index:2;
  max-width:58%;
  padding:22px 18px 17px 25px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:0;
}
.ek-subcats.ecover-exact-subcats .subcategory-card .subcopy .eyebrow{
  font-size:10px;
  color:#2b6541;
  font-weight:850;
  letter-spacing:.07em;
  margin-bottom:5px;
}
.ek-subcats.ecover-exact-subcats .subcategory-card .subcopy strong{
  font:520 clamp(23px,2.2vw,29px)/1.04 Georgia,'Times New Roman',serif;
  color:#173f31;
  letter-spacing:-.04em;
  margin:0 0 9px;
}
/* In the approved visual the cleaning category title uses two lines. */
.ek-subcats.ecover-exact-subcats .subcategory-card:nth-child(3) .subcopy strong{max-width:145px}
.ek-subcats.ecover-exact-subcats .subcategory-card .subcopy small{
  color:#46664f;
  font-size:12px;
  line-height:1.3;
}
.ek-subcats.ecover-exact-subcats .subcategory-card .category-arrow{
  margin-top:10px;
  width:37px;
  height:37px;
  border-radius:50%;
  color:#255c31;
  background:#d9f2ad;
  font-size:21px;
}
.ek-subcats.ecover-exact-subcats .subcategory-card:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 22px rgba(27,75,42,.08);
}

/* The featured products begin close to the categories, and show 4 real Woo products. */
.ecover-products-section.section{padding-top:27px;padding-bottom:10px}
.ecover-products-section .section-head{margin-bottom:15px;align-items:end}
.ecover-products-section .section-head h2{
  font-size:clamp(32px,3.4vw,42px);
  font-weight:520;
  letter-spacing:-.048em;
  line-height:1.06;
  margin:3px 0 0;
}
.ecover-products-section .section-head .eyebrow{
  font-size:10px;color:#28663b;letter-spacing:.14em;
}
.ecover-products-section .section-head .text-link{
  font-size:12.5px;
  font-weight:770;
  color:#17432e;
  margin-bottom:8px;
}
.ecover-products-section .woocommerce ul.products,
.ecover-products-section .ek-products ul.products{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
  margin-bottom:10px!important;
}
.ecover-products-section .woocommerce ul.products li.product.ek-product-card{
  min-height:205px!important;
  grid-template-columns:minmax(0,40%) minmax(0,60%)!important;
  border-radius:19px!important;
  background:#fffdfa!important;
  border-color:#ece9e0!important;
  box-shadow:0 5px 15px rgba(31,65,42,.05)!important;
}
.ecover-products-section .woocommerce ul.products li.product.ek-product-card .ek-product-image{
  min-height:195px!important;
  padding:10px 5px 15px 9px!important;
}
.ecover-products-section .woocommerce ul.products li.product.ek-product-card .ek-product-image img{
  height:142px!important;
  object-fit:contain!important;
}
.ecover-products-section .woocommerce ul.products li.product.ek-product-card .ek-product-copy{
  padding:16px 11px 43px 5px!important;
  position:static!important;
}
.ecover-products-section .woocommerce ul.products li.product.ek-product-card .ek-product-name{
  font-size:12.8px!important;
  line-height:1.32!important;
  -webkit-line-clamp:4!important;
}
.ecover-products-section .woocommerce ul.products li.product.ek-product-card .ek-product-excerpt{display:none!important}
.ecover-products-section .woocommerce ul.products li.product.ek-product-card .ek-product-bottom{
  position:absolute;
  left:17px;
  right:13px;
  bottom:13px;
  width:auto;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:7px!important;
  flex-wrap:nowrap!important;
}
.ecover-products-section .woocommerce ul.products li.product.ek-product-card .ek-product-price{
  font-size:15.5px!important;
  font-weight:800!important;
  white-space:nowrap!important;
}
.ecover-products-section .woocommerce ul.products li.product.ek-product-card .ek-product-add a.button{
  min-height:33px!important;
  min-width:116px!important;
  border-radius:30px!important;
  padding:7px 12px!important;
  font-size:10.5px!important;
  color:#1d5032!important;
  background:#e3f1bd!important;
}
.ecover-products-section .woocommerce ul.products li.product.ek-product-card .ek-product-add a.button::before{
  content:"";
  display:inline-block;
  width:14px;
  height:14px;
  flex:none;
  margin-right:5px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23265038' 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;
}
.ecover-products-section .ekshop-pagination{padding-top:15px}

@media(max-width:1180px) and (min-width:741px){
 .brand-hero.ek-simple-brand.is-photo.ecover.ecover-exact .brand-copy{width:52%;padding:31px 26px 31px 32px}
 .brand-hero.ek-simple-brand.is-photo.ecover.ecover-exact .brand-copy h1{font-size:clamp(47px,4.8vw,62px)}
 .brand-hero.ek-simple-brand.is-photo.ecover.ecover-exact .brand-hero-visual{width:70%}
 .ek-subcats.ecover-exact-subcats .subcategory-card .subcopy{padding:20px 12px 16px 19px}
 .ek-subcats.ecover-exact-subcats .subcategory-card .subcopy strong{font-size:clamp(21px,2.3vw,26px)}
 .ecover-products-section .woocommerce ul.products li.product.ek-product-card .ek-product-name{font-size:11.5px!important}
}
@media(max-width:740px){
 .brand-hero.ek-simple-brand.is-photo.ecover.ecover-exact{
   min-height:0;height:auto;display:flex;flex-direction:column;
   align-items:stretch;
 }
 .brand-hero.ek-simple-brand.is-photo.ecover.ecover-exact .brand-copy{
   order:1;width:100%;max-width:none;padding:26px 23px 20px;
 }
 .brand-hero.ek-simple-brand.is-photo.ecover.ecover-exact .brand-copy h1{
   font-size:clamp(41px,9vw,53px);margin-bottom:12px;
 }
 .brand-hero.ek-simple-brand.is-photo.ecover.ecover-exact .brand-copy p{font-size:14px;line-height:1.5}
 .brand-hero.ek-simple-brand.is-photo.ecover.ecover-exact .brand-hero-visual{
   position:relative;inset:auto;order:2;width:100%;height:195px;
 }
 .brand-hero.ek-simple-brand.is-photo.ecover.ecover-exact .btn.primary.ecover-cta{
   min-height:47px;font-size:13px;padding:11px 19px;
 }
 .brand-hero.ecover-exact + .ek127-brand-filter-wrap{margin-top:9px}
 .ek-subcats.ecover-exact-subcats.section{padding-top:14px}
 .ek-subcats.ecover-exact-subcats .subcategory-grid{grid-template-columns:1fr!important;gap:12px}
 .ek-subcats.ecover-exact-subcats .subcategory-card{min-height:166px}
 .ek-subcats.ecover-exact-subcats .subcategory-card .subcopy{max-width:58%;padding:18px 15px 14px 19px}
 .ek-subcats.ecover-exact-subcats .subcategory-card .subcopy strong{font-size:25px}
 .ek-subcats.ecover-exact-subcats .subcategory-card img{width:52%}
 .ecover-products-section.section{padding-top:18px}
 .ecover-products-section .section-head h2{font-size:29px}
 .ecover-products-section .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .ecover-products-section .woocommerce ul.products li.product.ek-product-card{
   display:flex!important;flex-direction:column!important;min-height:0!important;
 }
 .ecover-products-section .woocommerce ul.products li.product.ek-product-card .ek-product-image{
   min-height:124px!important;padding:8px 10px!important;
 }
 .ecover-products-section .woocommerce ul.products li.product.ek-product-card .ek-product-image img{height:114px!important}
 .ecover-products-section .woocommerce ul.products li.product.ek-product-card .ek-product-copy{
   padding:8px 10px 50px!important;
 }
 .ecover-products-section .woocommerce ul.products li.product.ek-product-card .ek-product-bottom{
   left:10px;right:10px;bottom:11px;flex-wrap:wrap!important;
 }
 .ecover-products-section .woocommerce ul.products li.product.ek-product-card .ek-product-add a.button{min-width:0!important;font-size:9px!important;padding:7px 9px!important}
}
