/* Chave Vertical Lite v0.13 — product listing parity with final CV-Shopware card */

/*
 * Mantém o markup e a lógica comercial nativos do WooCommerce.
 * Esta camada trata apenas a apresentação da listagem de produtos.
 */
:is(.woocommerce,.cvl-v4-products) ul.products{
  display:grid!important;
  grid-template-columns:repeat(8,minmax(0,1fr))!important;
  gap:8px!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category){
  position:relative!important;
  z-index:1!important;
  min-width:0!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  border:1px solid #eee!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 2px 8px rgba(0,0,0,.04)!important;
  transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category):hover{
  z-index:20!important;
  border-color:var(--cvl-ref-red)!important;
  box-shadow:0 12px 24px rgba(0,0,0,.10)!important;
  transform:translateY(-4px)!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category)>a.woocommerce-LoopProduct-link{
  min-width:0!important;
  flex:1 1 auto!important;
  padding:0!important;
  display:flex!important;
  flex-direction:column!important;
  color:inherit!important;
  text-decoration:none!important;
}

/* Imagem 1:1 */
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category)>a.woocommerce-LoopProduct-link>img{
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  aspect-ratio:1/1!important;
  margin:0 0 8px!important;
  padding:10px!important;
  border:0!important;
  border-radius:0!important;
  background:#f8f8f6!important;
  object-fit:contain!important;
  object-position:center!important;
  transition:transform .3s ease!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category):hover a img{
  transform:scale(1.025)!important;
}

/* Badge comercial */
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-badge{
  position:absolute!important;
  z-index:3!important;
  top:8px!important;
  left:8px!important;
  right:auto!important;
  transform:none!important;
  max-width:calc(100% - 16px)!important;
  min-width:auto!important;
  min-height:auto!important;
  padding:5px 12px!important;
  border:0!important;
  border-radius:4px!important;
  background:#ff7a21!important;
  color:#fff!important;
  box-shadow:0 2px 5px rgba(0,0,0,.18)!important;
  clip-path:none!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:.05em!important;
  line-height:1.2!important;
  text-align:center!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-badge.is-stock{
  background:#079653!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-badge.is-low-stock{
  background:#d97706!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-badge.is-featured,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-badge.is-sale{
  background:var(--cvl-ref-red)!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-badge.is-unavailable{
  background:#6b7280!important;
}

/* Categoria + título */
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-category{
  min-height:0!important;
  margin:0 10px 6px!important;
  display:block!important;
  overflow:hidden!important;
  color:#7a838b!important;
  font-size:8px!important;
  font-weight:700!important;
  letter-spacing:0!important;
  line-height:1.15!important;
  text-align:center!important;
  text-overflow:ellipsis!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .woocommerce-loop-product__title{
  min-height:2.6em!important;
  height:2.6em!important;
  max-height:2.6em!important;
  margin:0 10px 7px!important;
  padding:0!important;
  display:-webkit-box!important;
  overflow:hidden!important;
  color:var(--cvl-ref-ink)!important;
  font:700 11px/1.3 "DM Sans",system-ui,sans-serif!important;
  letter-spacing:0!important;
  text-align:center!important;
  text-overflow:ellipsis!important;
  text-transform:none!important;
  white-space:normal!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category):hover .woocommerce-loop-product__title{
  display:-webkit-box!important;
  height:2.6em!important;
  max-height:2.6em!important;
  overflow:hidden!important;
  color:var(--cvl-ref-red)!important;
  -webkit-line-clamp:2!important;
}

/* Marca — logótipo quando existe; nome quando não existe */
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-row{
  min-height:34px!important;
  margin:1px 10px 0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:24px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-logo{
  display:block!important;
  width:auto!important;
  max-width:118px!important;
  height:auto!important;
  max-height:30px!important;
  margin:0 auto!important;
  object-fit:contain!important;
  padding:0!important;
  aspect-ratio:auto!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-name{
  width:auto!important;
  max-width:100%!important;
  overflow:hidden!important;
  color:var(--cvl-ref-red)!important;
  font-size:8px!important;
  font-weight:900!important;
  letter-spacing:0!important;
  line-height:1!important;
  text-align:center!important;
  text-overflow:ellipsis!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}

/* Referência */
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-sku-row{
  min-height:30px!important;
  margin:0 10px!important;
  padding:6px 0 7px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-bottom:1px solid #eef1f2!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-sku{
  width:auto!important;
  min-width:0!important;
  max-width:100%!important;
  min-height:16px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  overflow:hidden!important;
  color:#66727a!important;
  font-size:9.5px!important;
  font-weight:800!important;
  line-height:1!important;
  text-align:center!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-sku i{
  width:17px!important;
  height:11px!important;
  flex:0 0 17px!important;
  background:repeating-linear-gradient(90deg,#4b5563 0 1px,transparent 1px 3px,#4b5563 3px 5px,transparent 5px 6px,#4b5563 6px 7px,transparent 7px 9px)!important;
  opacity:.8!important;
}

/* A versão final da listagem Shopware não mostra rating/stock no card. */
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .star-rating,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-stock{
  display:none!important;
}

/* Preço */
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .price{
  width:auto!important;
  min-height:48px!important;
  margin:auto 10px 0!important;
  padding:10px 0 0!important;
  border:0!important;
  display:flex!important;
  align-items:baseline!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:5px!important;
  color:var(--cvl-ref-ink)!important;
  font-family:"Manrope","DM Sans",sans-serif!important;
  font-size:19px!important;
  font-weight:800!important;
  line-height:1.15!important;
  letter-spacing:-.015em!important;
  text-align:center!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .price del{
  width:100%!important;
  margin:0 0 2px!important;
  display:block!important;
  color:#9aa2a8!important;
  font-size:9px!important;
  font-weight:600!important;
  line-height:1.1!important;
  opacity:1!important;
  text-align:center!important;
  text-decoration-thickness:1px!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .price ins{
  color:inherit!important;
  font-weight:inherit!important;
  text-decoration:none!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .price::after{
  content:"c/ IVA";
  margin-left:0;
  display:inline-block;
  color:#9099a0;
  font-family:"DM Sans",sans-serif;
  font-size:8.5px;
  font-weight:600;
  line-height:1;
  letter-spacing:0;
  white-space:nowrap;
}

/* Ações: carrinho compacto à esquerda + VER à direita */
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions{
  width:calc(100% - 20px)!important;
  margin:10px 10px 12px!important;
  padding:0!important;
  display:flex!important;
  align-items:stretch!important;
  justify-content:space-between!important;
  gap:12px!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .button{
  height:36px!important;
  min-height:36px!important;
  margin:0!important;
  border-radius:5px!important;
  box-shadow:none!important;
  font-size:8.5px!important;
  font-weight:800!important;
  line-height:1!important;
  text-decoration:none!important;
  text-transform:none!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button{
  width:40px!important;
  min-width:40px!important;
  flex:0 0 40px!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid var(--cvl-commercial-green)!important;
  background:var(--cvl-commercial-green)!important;
  color:#fff!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button:hover,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button:focus{
  border-color:var(--cvl-commercial-green-dark)!important;
  background:var(--cvl-commercial-green-dark)!important;
  color:#fff!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-cart-button-icon{
  width:17px!important;
  height:17px!important;
  flex:0 0 17px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-view-product{
  width:auto!important;
  min-width:64px!important;
  flex:0 0 auto!important;
  margin-left:auto!important;
  padding:6px 10px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  border:1px solid #cfd7db!important;
  background:#fff!important;
  color:#344149!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-view-product::before{
  content:none!important;
  display:none!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-view-product-icon{
  width:14px!important;
  height:14px!important;
  flex:0 0 14px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.7!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-view-product:hover,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-view-product:focus{
  border-color:var(--cvl-ref-teal)!important;
  background:var(--cvl-ref-teal-soft)!important;
  color:var(--cvl-ref-teal-dark)!important;
}

/* Link "Ver carrinho" que o WooCommerce pode injetar após AJAX. */
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .added_to_cart{
  align-self:center;
  color:var(--cvl-ref-teal-dark);
  font-size:8px;
  font-weight:800;
}

/* Breakpoints iguais à densidade da storefront de referência. */
@media(max-width:1599.98px) and (min-width:1200px){
  :is(.woocommerce,.cvl-v4-products) ul.products{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
  }
}

@media(max-width:1199.98px){
  :is(.woocommerce,.cvl-v4-products) ul.products{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
}

@media(max-width:991.98px){
  :is(.woocommerce,.cvl-v4-products) ul.products{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

@media(max-width:767.98px){
  :is(.woocommerce,.cvl-v4-products) ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions{
    gap:8px!important;
  }
}

@media(max-width:420px){
  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-category{
    font-size:7.5px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .woocommerce-loop-product__title{
    font-size:10.5px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .price{
    font-size:17px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category),
  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category)>a.woocommerce-LoopProduct-link>img{
    transition:none!important;
  }
}


/* Home section labels — simplified hierarchy */
.cvl-v4-categories-section .cvl-v4-section-head>div>span,
.cvl-home-product-strip .cvl-v4-section-head>div>span{
  display:block!important;
  font-size:18px!important;
  font-weight:900!important;
  line-height:1.15!important;
  letter-spacing:.07em!important;
}

.cvl-v4-categories-section .cvl-v4-section-head>div>p,
.cvl-home-product-strip .cvl-v4-section-head>div>p{
  margin-top:8px!important;
}

@media(max-width:767.98px){
  .cvl-v4-categories-section .cvl-v4-section-head>div>span,
  .cvl-home-product-strip .cvl-v4-section-head>div>span{
    font-size:16px!important;
  }
}

/* Home product strips — 8 recent / 16 promotional products */
.cvl-home-product-strip{
  padding:56px 0 64px!important;
}
.cvl-home-promo-products{
  background:#fff!important;
  border-top:1px solid #eef1f2;
  border-bottom:1px solid #eef1f2;
}
.cvl-home-recent-products{
  background:#f6f8f8!important;
}
.cvl-home-product-strip .products{
  width:100%!important;
  grid-template-columns:repeat(8,minmax(0,1fr))!important;
  gap:10px!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
.cvl-home-product-strip .cvl-v4-section-head{
  margin-bottom:22px!important;
}

@media(max-width:1599.98px){
  .cvl-home-product-strip .products{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
  }
}
@media(max-width:1199.98px){
  .cvl-home-product-strip .products{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
}
@media(max-width:767.98px){
  .cvl-home-product-strip{
    padding:42px 0 48px!important;
  }
  .cvl-home-product-strip .products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
}


/* Product archive density — 8 cards per row on wide desktop. */
@media(min-width:1600px){
  .tax-product_cat .woocommerce ul.products,
  .post-type-archive-product .woocommerce ul.products,
  body.search-results.woocommerce ul.products{
    grid-template-columns:repeat(8,minmax(0,1fr))!important;
  }
}


/* Search results — OpenSearch products with brand/category/price facets. */
.cvl-search-page{padding-top:34px}
.cvl-search-page .cvl-search-heading{margin-bottom:22px}
.cvl-search-count{margin:0;color:#6f7a81;font-size:12px}
.cvl-search-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:24px;align-items:start}
.cvl-search-filters{position:sticky;top:18px;padding:16px;border:1px solid #e2e7e9;border-radius:10px;background:#fff}
.cvl-search-filters-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid #edf0f1}
.cvl-search-filters-head strong{color:#26343b;font-size:11px;font-weight:900;letter-spacing:.04em}
.cvl-search-filters-head a{color:var(--cvl-ref-teal);font-size:10px;font-weight:800;text-decoration:none}
.cvl-search-filter-group{margin-top:18px}
.cvl-search-filter-group h2{margin:0 0 9px;color:#5f6b72;font-size:10px;font-weight:900;letter-spacing:.06em}
.cvl-search-filter-list{display:grid;gap:2px}
.cvl-search-filter-list a{min-height:32px;padding:7px 8px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-radius:5px;color:#334149;font-size:11px;line-height:1.25;text-decoration:none}
.cvl-search-filter-list a:hover,.cvl-search-filter-list a.is-active{background:#eef8f6;color:var(--cvl-ref-teal-dark)}
.cvl-search-filter-list a.is-active{font-weight:800}
.cvl-search-filter-list a.is-query-match{border-left:3px solid var(--cvl-ref-teal);padding-left:7px;font-weight:800}
.cvl-search-filter-list small{min-width:24px;color:#8b959b;font-size:9px;text-align:right}
.cvl-search-price-inputs{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.cvl-search-price-inputs label{display:grid;gap:4px;color:#7c878d;font-size:9px;font-weight:800;text-transform:uppercase}
.cvl-search-price-inputs input{width:100%;height:36px;padding:0 8px;border:1px solid #d9e0e3;border-radius:5px;background:#fff;color:#29373e;font-size:11px}
.cvl-search-price-range{margin:8px 0;color:#7b868c;font-size:9px}
.cvl-search-price-filter button{width:100%;height:34px;border:1px solid var(--cvl-ref-teal);border-radius:5px;background:var(--cvl-ref-teal);color:#fff;font-size:9px;font-weight:900;cursor:pointer}
.cvl-search-price-filter button:hover{background:var(--cvl-ref-teal-dark);border-color:var(--cvl-ref-teal-dark)}
.cvl-search-products{min-width:0}
.cvl-search-products>ul.products{margin-top:0!important}
body.search-results .cvl-search-products.woocommerce ul.products{grid-template-columns:repeat(6,minmax(0,1fr))!important}
body.search-results .cvl-search-products .cvl-product-category,
body.search-results .cvl-search-products li.product-category{display:none!important}
@media(max-width:1399.98px){body.search-results .cvl-search-products.woocommerce ul.products{grid-template-columns:repeat(5,minmax(0,1fr))!important}}
@media(max-width:1199.98px){
  .cvl-search-layout{grid-template-columns:205px minmax(0,1fr);gap:18px}
  body.search-results .cvl-search-products.woocommerce ul.products{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media(max-width:991.98px){
  .cvl-search-layout{grid-template-columns:1fr}
  .cvl-search-filters{position:static}
  .cvl-search-filter-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.search-results .cvl-search-products.woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:767.98px){body.search-results .cvl-search-products.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:520px){.cvl-search-filter-list{grid-template-columns:1fr}}


/* Search heading + progressive load more v0.16.4 */
.cvl-search-page .cvl-search-heading-compact{
  margin-bottom:18px!important;
}
.cvl-search-page .cvl-search-heading-compact>span{
  margin-bottom:5px!important;
  display:block!important;
  color:#8a949a!important;
  font-size:9px!important;
  font-weight:900!important;
  letter-spacing:.09em!important;
  line-height:1!important;
}
.cvl-search-page .cvl-search-heading-compact h1{
  margin:0 0 5px!important;
  color:#25333a!important;
  font-family:"Manrope","DM Sans",system-ui,sans-serif!important;
  font-size:24px!important;
  font-weight:800!important;
  letter-spacing:-.025em!important;
  line-height:1.15!important;
  text-transform:none!important;
}
.cvl-search-page .cvl-search-heading-compact h1>span{
  color:#77838a!important;
  font-size:.72em!important;
  font-weight:650!important;
  letter-spacing:-.01em!important;
}
.cvl-search-load-more-wrap{
  width:100%;
  margin:28px 0 10px;
  display:flex;
  justify-content:center;
}
.cvl-search-load-more{
  min-width:190px;
  min-height:42px;
  padding:11px 22px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--cvl-ref-teal);
  border-radius:6px;
  background:#fff;
  color:var(--cvl-ref-teal-dark);
  font-size:10px;
  font-weight:900;
  letter-spacing:.045em;
  line-height:1;
  text-decoration:none;
  transition:background .18s ease,color .18s ease,border-color .18s ease,opacity .18s ease;
}
.cvl-search-load-more:hover,
.cvl-search-load-more:focus{
  border-color:var(--cvl-ref-teal-dark);
  background:var(--cvl-ref-teal);
  color:#fff;
}
.cvl-search-load-more.is-loading{
  pointer-events:none;
  opacity:.65;
}
@media(max-width:767.98px){
  .cvl-search-page .cvl-search-heading-compact h1{
    font-size:20px!important;
  }
  .cvl-search-load-more{
    width:100%;
    max-width:320px;
  }
}


/* Shop root — single catalog heading v0.16.6 */
.cvl-shop-category-section{
  padding-top:30px;
  padding-bottom:56px;
}
.cvl-shop-catalog-heading{
  margin:0 0 24px;
}
.cvl-shop-catalog-heading h1{
  margin:0;
  color:#253239;
  font-family:"Manrope","DM Sans",system-ui,sans-serif;
  font-size:clamp(34px,4vw,48px);
  font-weight:900;
  letter-spacing:-.035em;
  line-height:1;
  text-transform:uppercase;
}
@media(max-width:767.98px){
  .cvl-shop-category-section{
    padding-top:24px;
    padding-bottom:42px;
  }
  .cvl-shop-catalog-heading{
    margin-bottom:18px;
  }
  .cvl-shop-catalog-heading h1{
    font-size:30px;
  }
}


/* Desktop: 5% side gutters. Tablet/mobile keep their responsive gutters. */
@media (min-width:1201px){
  body.cvl-site .cvl-shell{
    width:90%!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}


/* Single product add-to-cart must stay green */
body.single-product.woocommerce .cvl-product-summary form.cart button.single_add_to_cart_button,
body.single-product.woocommerce .cvl-product-summary form.cart .single_add_to_cart_button.button,
body.single-product.woocommerce .cvl-product-summary form.cart .single_add_to_cart_button.button.alt{
  background:var(--cvl-commercial-green)!important;
  background-color:var(--cvl-commercial-green)!important;
  border-color:var(--cvl-commercial-green)!important;
  color:#fff!important;
}

body.single-product.woocommerce .cvl-product-summary form.cart button.single_add_to_cart_button:hover,
body.single-product.woocommerce .cvl-product-summary form.cart .single_add_to_cart_button.button:hover,
body.single-product.woocommerce .cvl-product-summary form.cart .single_add_to_cart_button.button.alt:hover{
  background:var(--cvl-commercial-green-dark)!important;
  background-color:var(--cvl-commercial-green-dark)!important;
  border-color:var(--cvl-commercial-green-dark)!important;
  color:#fff!important;
}


/* Brands heading aligned with Novidades */
.cvl-brand-carousel-section .cvl-brand-carousel-header{
  margin-bottom:22px!important;
  text-align:left!important;
  display:block!important;
}

.cvl-brand-carousel-section .cvl-brand-carousel-kicker{
  display:block!important;
  margin:0!important;
  color:var(--cvl-ref-teal)!important;
  font-size:18px!important;
  font-weight:900!important;
  line-height:1.15!important;
  letter-spacing:.07em!important;
  text-align:left!important;
  text-transform:uppercase!important;
}

@media(max-width:767.98px){
  .cvl-brand-carousel-section .cvl-brand-carousel-kicker{
    font-size:16px!important;
  }
}


/* Remove brands upper box */
.cvl-brand-carousel-section{
  padding:0 0 48px!important;
  margin:0!important;
  background:transparent!important;
  border-top:0!important;
  border-bottom:0!important;
  box-shadow:none!important;
}

.cvl-brand-carousel-section .cvl-brand-carousel-header{
  min-height:0!important;
  margin:0 0 18px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

.cvl-brand-carousel-section .cvl-brand-carousel-kicker{
  margin:0!important;
  padding:0!important;
}


/* Category archives use the search-results catalogue layout */
body.tax-product_cat .cvl-category-catalog-page .cvl-search-products.woocommerce ul.products{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
}
body.tax-product_cat .cvl-category-catalog-page .cvl-search-products .cvl-product-category,
body.tax-product_cat .cvl-category-catalog-page .cvl-search-products li.product-category{
  display:none!important;
}

@media(max-width:1399.98px){
  body.tax-product_cat .cvl-category-catalog-page .cvl-search-products.woocommerce ul.products{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
  }
}
@media(max-width:1199.98px){
  body.tax-product_cat .cvl-category-catalog-page .cvl-search-products.woocommerce ul.products{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
}
@media(max-width:991.98px){
  body.tax-product_cat .cvl-category-catalog-page .cvl-search-products.woocommerce ul.products{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media(max-width:767.98px){
  body.tax-product_cat .cvl-category-catalog-page .cvl-search-products.woocommerce ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}


/* Category image carousel */
.cvl-category-catalog-page .cvl-category-carousel{
  width:100%;
  margin:0 0 24px;
}
.cvl-category-carousel-head{
  margin:0 0 10px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.cvl-category-carousel-head h2{
  margin:0;
  color:#25333a;
  font-size:13px;
  font-weight:900;
  letter-spacing:.06em;
  line-height:1.1;
}
.cvl-category-carousel-controls{
  display:flex;
  gap:6px;
}
.cvl-category-carousel-arrow{
  width:32px;
  height:32px;
  padding:0;
  display:grid;
  place-items:center;
  border:1px solid #dce2e5;
  border-radius:50%;
  background:#fff;
  color:#3f4b52;
  font-size:22px;
  line-height:1;
  cursor:pointer;
  transition:border-color .15s ease,color .15s ease,background .15s ease;
}
.cvl-category-carousel-arrow:hover,
.cvl-category-carousel-arrow:focus{
  border-color:var(--cvl-ref-teal);
  background:#eef8f6;
  color:var(--cvl-ref-teal-dark);
}
.cvl-category-carousel-arrow:disabled{
  opacity:.35;
  cursor:default;
}
.cvl-category-carousel-viewport{
  width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  scrollbar-width:none;
  -ms-overflow-style:none;
  scroll-behavior:smooth;
  scroll-snap-type:x proximity;
}
.cvl-category-carousel-viewport::-webkit-scrollbar{
  display:none;
  width:0;
  height:0;
}
.cvl-category-carousel-track{
  width:max-content;
  min-width:100%;
  display:flex;
  gap:12px;
  align-items:stretch;
}
.cvl-category-carousel-card{
  width:146px;
  flex:0 0 146px;
  min-width:0;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid #e2e7ea;
  border-radius:10px;
  background:#fff;
  color:#26343b;
  text-decoration:none!important;
  scroll-snap-align:start;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.cvl-category-carousel-card:hover,
.cvl-category-carousel-card:focus,
.cvl-category-carousel-card.is-active{
  border-color:var(--cvl-ref-teal);
  box-shadow:0 7px 18px rgba(16,24,32,.08);
  color:var(--cvl-ref-teal-dark);
  transform:translateY(-2px);
}
.cvl-category-carousel-image{
  width:100%;
  aspect-ratio:1/1;
  padding:10px;
  display:grid;
  place-items:center;
  background:#f8f8f6;
}
.cvl-category-carousel-image img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  object-fit:contain!important;
}
.cvl-category-carousel-name{
  min-height:46px;
  padding:9px 8px 10px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:inherit;
  font-size:10.5px;
  font-weight:800;
  line-height:1.25;
  text-align:center;
}
@media(max-width:767.98px){
  .cvl-category-catalog-page .cvl-category-carousel{
    margin-bottom:18px;
  }
  .cvl-category-carousel-card{
    width:124px;
    flex-basis:124px;
  }
  .cvl-category-carousel-name{
    min-height:42px;
    font-size:10px;
  }
}


/* Product card category as a real link */
:is(.woocommerce,.cvl-v4-products) ul.products li.product.cvl-product-split-card>a.woocommerce-LoopProduct-link:not(.cvl-product-content-link){
  flex:0 0 auto!important;
  display:block!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product.cvl-product-split-card>a.cvl-product-content-link{
  min-width:0!important;
  flex:1 1 auto!important;
  display:flex!important;
  flex-direction:column!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category)>a.cvl-product-category{
  color:#7a838b!important;
  text-decoration:none!important;
  cursor:pointer!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category)>a.cvl-product-category:hover,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category)>a.cvl-product-category:focus{
  color:var(--cvl-ref-red)!important;
  text-decoration:none!important;
}


/* Expandable category filter tree */
.cvl-category-filter-tree{
  display:grid;
  gap:2px;
}
.cvl-category-filter-item{
  min-width:0;
}
.cvl-category-filter-row{
  min-width:0;
  display:flex;
  align-items:center;
  gap:2px;
  padding-left:calc(var(--cvl-cat-depth,0) * 12px);
}
.cvl-category-filter-link{
  min-width:0;
  min-height:32px;
  padding:7px 8px;
  flex:1 1 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  border-radius:5px;
  color:#334149;
  font-size:11px;
  line-height:1.25;
  text-decoration:none!important;
}
.cvl-category-filter-link:hover,
.cvl-category-filter-link.is-active{
  background:#eef8f6;
  color:var(--cvl-ref-teal-dark);
}
.cvl-category-filter-link.is-active{
  font-weight:800;
}
.cvl-category-filter-link span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
}
.cvl-category-filter-link small{
  min-width:24px;
  flex:0 0 auto;
  color:#8b959b;
  font-size:9px;
  text-align:right;
}
.cvl-category-filter-toggle{
  width:28px;
  height:28px;
  padding:0;
  flex:0 0 28px;
  display:grid;
  place-items:center;
  border:0;
  border-radius:5px;
  background:transparent;
  color:#7f8a90;
  cursor:pointer;
}
.cvl-category-filter-toggle:hover,
.cvl-category-filter-toggle:focus{
  background:#eef8f6;
  color:var(--cvl-ref-teal-dark);
}
.cvl-category-filter-toggle span{
  display:block;
  font-size:19px;
  line-height:1;
  transition:transform .16s ease;
}
.cvl-category-filter-item.is-expanded>.cvl-category-filter-row .cvl-category-filter-toggle span{
  transform:rotate(90deg);
}
.cvl-category-filter-children[hidden]{
  display:none!important;
}
.cvl-category-filter-children{
  display:grid;
  gap:2px;
}
@media(max-width:991.98px){
  .cvl-category-filter-row{
    padding-left:calc(var(--cvl-cat-depth,0) * 10px);
  }
}


/* Single product sale-price hierarchy */
.single-product div.product .cvl-single-price-row{
  align-items:baseline!important;
  column-gap:10px!important;
  row-gap:6px!important;
}

.single-product div.product .cvl-single-price{
  display:inline-flex!important;
  align-items:baseline!important;
  flex-wrap:wrap!important;
  gap:10px!important;
}

.single-product div.product .cvl-single-price del{
  margin:0!important;
  display:inline-flex!important;
  align-items:baseline!important;
  color:#8f989f!important;
  opacity:1!important;
  text-decoration-color:#8f989f!important;
  text-decoration-thickness:1.5px!important;
  text-decoration-skip-ink:auto!important;
}

.single-product div.product .cvl-single-price del .woocommerce-Price-amount{
  color:#8f989f!important;
  font-size:18px!important;
  font-weight:650!important;
  line-height:1!important;
  letter-spacing:-.01em!important;
}

.single-product div.product .cvl-single-price ins{
  margin:0!important;
  color:#098950!important;
  font-weight:850!important;
  text-decoration:none!important;
}

.single-product div.product .cvl-single-price ins .woocommerce-Price-amount{
  color:#098950!important;
  font-size:clamp(32px,2vw,40px)!important;
  font-weight:850!important;
  line-height:1!important;
  letter-spacing:-.025em!important;
}

.single-product div.product .cvl-single-vat{
  margin:0 0 2px!important;
  color:#69757d!important;
  font-size:9.5px!important;
  font-weight:750!important;
  line-height:1.1!important;
  letter-spacing:.01em!important;
  white-space:nowrap!important;
}

.single-product div.product .cvl-single-price-net{
  margin-top:8px!important;
  color:#77828a!important;
  font-size:11.5px!important;
  line-height:1.3!important;
}

.single-product div.product .cvl-single-price-net strong{
  color:#36434c!important;
  font-weight:750!important;
}

@media(max-width:767.98px){
  .single-product div.product .cvl-single-price del .woocommerce-Price-amount{
    font-size:16px!important;
  }

  .single-product div.product .cvl-single-price ins .woocommerce-Price-amount{
    font-size:32px!important;
  }

  .single-product div.product .cvl-single-vat{
    font-size:9px!important;
  }
}


/* Final category brand chips */
.cvl-category-catalog-page.is-final-category .cvl-final-brand-filter{
  margin:18px 0 0;
  padding:14px 14px 12px;
  border-top:1px solid #edf0f1;
}

.cvl-category-catalog-page.is-final-category .cvl-final-brand-filter h2{
  margin:0 0 12px;
  color:#4f5b62;
  font-size:10px;
  font-weight:900;
  letter-spacing:.06em;
  line-height:1.2;
}

.cvl-final-brand-filter-form{
  margin:0;
}

.cvl-final-brand-chips{
  display:flex;
  flex-wrap:wrap;
  gap:7px 6px;
}

.cvl-final-brand-chip{
  position:relative;
  margin:0;
  padding:0;
  display:inline-flex;
  cursor:pointer;
}

.cvl-final-brand-chip input{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  margin:-1px!important;
  padding:0!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  white-space:nowrap!important;
  border:0!important;
}

.cvl-final-brand-chip span{
  min-height:32px;
  padding:7px 10px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid #d8dde0;
  border-radius:6px;
  background:#fff;
  color:#15191c;
  font-size:10px;
  font-weight:850;
  line-height:1;
  letter-spacing:.01em;
  text-align:center;
  transition:border-color .15s ease,background .15s ease,color .15s ease,box-shadow .15s ease;
}

.cvl-final-brand-chip:hover span,
.cvl-final-brand-chip:focus-within span{
  border-color:#aeb8bd;
  box-shadow:0 1px 3px rgba(16,24,32,.06);
}

.cvl-final-brand-chip input:checked + span,
.cvl-final-brand-chip.is-active span{
  border-color:var(--cvl-ref-teal);
  background:#eef8f6;
  color:var(--cvl-ref-teal-dark);
}

@media(max-width:991.98px){
  .cvl-category-catalog-page.is-final-category .cvl-final-brand-filter{
    padding-left:0;
    padding-right:0;
  }
}


/* Final categories: wider filters + instant brand selection */
.cvl-category-catalog-page.is-final-category .cvl-search-layout{
  grid-template-columns:360px minmax(0,1fr)!important;
  gap:26px!important;
}

.cvl-category-catalog-page.is-final-category .cvl-search-filters{
  width:100%;
  min-width:0;
}

.cvl-category-catalog-page.is-final-category .cvl-final-brand-filter{
  margin-top:18px;
  padding-left:0;
  padding-right:0;
}

.cvl-category-catalog-page.is-final-category .cvl-final-brand-chips{
  width:100%;
  gap:8px 7px;
}

.cvl-category-catalog-page.is-final-category .cvl-final-brand-chip span{
  min-height:34px;
  padding:8px 11px;
  font-size:10.5px;
}

.cvl-category-catalog-page.is-final-category .cvl-final-brand-filter-form[aria-busy="true"]{
  pointer-events:none;
  opacity:.72;
}

@media(max-width:1199.98px){
  .cvl-category-catalog-page.is-final-category .cvl-search-layout{
    grid-template-columns:320px minmax(0,1fr)!important;
    gap:20px!important;
  }
}

@media(max-width:991.98px){
  .cvl-category-catalog-page.is-final-category .cvl-search-layout{
    grid-template-columns:1fr!important;
  }
}

/* Final category brand search */
.cvl-final-brand-search{
  margin:0 0 10px;
}

.cvl-final-brand-search-input{
  width:100%;
  min-height:38px;
  padding:8px 11px;
  border:1px solid #d8dde0;
  border-radius:6px;
  background:#fff;
  color:#263238;
  font-size:12px;
  line-height:1.2;
  outline:none;
  transition:border-color .15s ease,box-shadow .15s ease;
}

.cvl-final-brand-search-input::placeholder{
  color:#7c878d;
  opacity:1;
}

.cvl-final-brand-search-input:focus{
  border-color:var(--cvl-ref-teal);
  box-shadow:0 0 0 3px rgba(15,121,104,.10);
}

.cvl-final-brand-search-empty{
  margin:0 0 10px;
  color:#6c777d;
  font-size:11px;
  line-height:1.4;
}

.cvl-final-brand-chip[hidden]{
  display:none!important;
}

/* Footer v2 — cleaner professional layout */
.cvl-footer-v2{
  margin-top:56px!important;
  padding:0!important;
  background:#11191d!important;
  color:#d9e1e4!important;
  font-family:"DM Sans",system-ui,sans-serif;
}

.cvl-footer-v2 .cvl-footer-v2-grid{
  padding:56px 0 48px;
  display:grid;
  grid-template-columns:1.25fr 1.05fr 1.15fr .85fr;
  gap:38px;
  align-items:start;
}

.cvl-footer-v2-brand{
  min-width:0;
  padding-right:28px;
  border-right:1px solid rgba(255,255,255,.09);
}

.cvl-footer-v2-logo{
  display:inline-block;
  margin-bottom:20px;
}

.cvl-footer-v2-logo img{
  display:block;
  width:210px;
  max-width:100%;
  height:auto;
  background:transparent!important;
}

.cvl-footer-v2-intro{
  max-width:330px!important;
  margin:0 0 22px!important;
  color:#aebbc1!important;
  font-size:13px!important;
  line-height:1.65!important;
}

.cvl-footer-v2-online{
  margin:0 0 18px;
  padding:15px 16px;
  display:grid;
  gap:4px;
  border-left:3px solid var(--cvl-ref-teal);
  background:rgba(255,255,255,.035);
}

.cvl-footer-v2-online>span{
  margin-bottom:3px;
  color:#7fd6ca;
  font-size:9px;
  font-weight:900;
  letter-spacing:.12em;
}

.cvl-footer-v2-online a{
  width:max-content;
  max-width:100%;
  color:#fff!important;
  font-size:13px;
  font-weight:700;
  text-decoration:none;
}

.cvl-footer-v2-online a:hover{
  color:#89ded3!important;
}

.cvl-footer-v2-actions{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
}

.cvl-footer-v2-action{
  min-height:40px;
  padding:0 16px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.18);
  border-radius:5px;
  color:#fff!important;
  font-size:11px;
  font-weight:800;
  letter-spacing:.02em;
  text-decoration:none;
  transition:background .15s ease,border-color .15s ease,transform .15s ease;
}

.cvl-footer-v2-action:hover{
  border-color:rgba(255,255,255,.35);
  background:rgba(255,255,255,.06);
  transform:translateY(-1px);
}

.cvl-footer-v2-action.is-primary{
  border-color:var(--cvl-ref-teal);
  background:var(--cvl-ref-teal);
  color:#fff!important;
}

.cvl-footer-v2-action.is-primary:hover{
  border-color:var(--cvl-ref-teal-dark);
  background:var(--cvl-ref-teal-dark);
}

.cvl-footer-v2-section{
  min-width:0;
}

.cvl-footer-v2-section h2{
  margin:0 0 20px!important;
  padding-bottom:11px;
  border-bottom:1px solid rgba(255,255,255,.1);
  color:#79d0c5!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
  line-height:1.2!important;
}

.cvl-footer-v2-contact{
  padding:0 0 15px;
  display:grid;
  gap:4px;
}

.cvl-footer-v2-contact+.cvl-footer-v2-contact{
  padding-top:15px;
  border-top:1px solid rgba(255,255,255,.065);
}

.cvl-footer-v2-contact strong,
.cvl-footer-v2-location strong{
  color:#fff;
  font-size:12.5px;
  line-height:1.35;
}

.cvl-footer-v2-contact a,
.cvl-footer-v2-contact span{
  width:max-content;
  max-width:100%;
  color:#aebbc1!important;
  font-size:11.5px;
  line-height:1.5;
  text-decoration:none;
}

.cvl-footer-v2-contact a:hover{
  color:#fff!important;
}

.cvl-footer-v2-contact small{
  margin:0 3px;
  color:#627078;
}

.cvl-footer-v2-location{
  padding:0 0 17px;
}

.cvl-footer-v2-location+.cvl-footer-v2-location{
  padding-top:17px;
  border-top:1px solid rgba(255,255,255,.065);
}

.cvl-footer-v2-location p{
  margin:6px 0 8px!important;
  color:#aebbc1!important;
  font-size:11.5px!important;
  line-height:1.55!important;
}

.cvl-footer-v2-location span{
  display:inline-block;
  color:#dce4e7;
  font-size:10.5px;
  font-weight:700;
}

.cvl-footer-v2-info ul{
  margin:0;
  padding:0;
  list-style:none;
  columns:1;
}

.cvl-footer-v2-info li{
  margin:0;
  border-bottom:1px solid rgba(255,255,255,.055);
}

.cvl-footer-v2-info li:last-child{
  border-bottom:0;
}

.cvl-footer-v2-info a{
  min-height:32px;
  display:flex;
  align-items:center;
  color:#aebbc1!important;
  font-size:11.5px;
  text-decoration:none;
  transition:color .15s ease,padding-left .15s ease;
}

.cvl-footer-v2-info a:hover{
  padding-left:4px;
  color:#fff!important;
}

.cvl-footer-v2-trust{
  border-top:1px solid rgba(255,255,255,.08);
  background:#0d1418;
}

.cvl-footer-v2-trust-grid{
  min-height:112px;
  display:grid;
  grid-template-columns:1fr minmax(360px,1.25fr) auto;
  gap:36px;
  align-items:center;
}

.cvl-footer-v2-badges{
  display:flex;
  align-items:center;
  gap:16px;
}

.cvl-footer-v2-badges img{
  width:auto;
  max-width:110px;
  height:43px;
  object-fit:contain;
  opacity:.9;
}

.cvl-footer-v2-payments{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:18px;
  align-items:center;
}

.cvl-footer-v2-payments span{
  color:#73828a;
  font-size:9px;
  font-weight:900;
  letter-spacing:.09em;
  white-space:nowrap;
}

.cvl-footer-v2-payments img{
  width:min(100%,520px);
  max-height:55px;
  object-fit:contain;
}

.cvl-footer-v2 .cvl-footer-social{
  display:flex;
  gap:8px;
}

.cvl-footer-v2 .cvl-footer-social a{
  width:38px!important;
  height:38px!important;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:5px!important;
  background:rgba(255,255,255,.035)!important;
  color:#aebbc1!important;
}

.cvl-footer-v2 .cvl-footer-social a:hover{
  border-color:#79d0c5!important;
  background:rgba(121,208,197,.08)!important;
  color:#79d0c5!important;
}

.cvl-footer-v2 .cvl-footer-social svg{
  width:17px;
  height:17px;
}

.cvl-footer-v2-bottom{
  border-top:1px solid rgba(255,255,255,.055);
  background:#090f12;
}

.cvl-footer-v2-bottom-inner{
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  color:#68767d;
  font-size:9.5px;
  line-height:1.4;
}

@media(max-width:1199.98px){
  .cvl-footer-v2 .cvl-footer-v2-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:36px 42px;
  }

  .cvl-footer-v2-brand{
    border-right:0;
    padding-right:0;
  }

  .cvl-footer-v2-trust-grid{
    grid-template-columns:1fr 1.4fr;
    padding:22px 0;
  }

  .cvl-footer-v2 .cvl-footer-social{
    grid-column:1/-1;
    justify-content:center;
  }
}

@media(max-width:767.98px){
  .cvl-footer-v2{
    margin-top:40px!important;
  }

  .cvl-footer-v2 .cvl-footer-v2-grid{
    padding:42px 0 36px;
    grid-template-columns:1fr;
    gap:34px;
  }

  .cvl-footer-v2-brand{
    padding-bottom:28px;
    border-bottom:1px solid rgba(255,255,255,.08);
  }

  .cvl-footer-v2-intro{
    max-width:420px!important;
  }

  .cvl-footer-v2-trust-grid{
    grid-template-columns:1fr;
    gap:22px;
    text-align:center;
  }

  .cvl-footer-v2-badges{
    justify-content:center;
    flex-wrap:wrap;
  }

  .cvl-footer-v2-payments{
    grid-template-columns:1fr;
    gap:10px;
    justify-items:center;
  }

  .cvl-footer-v2 .cvl-footer-social{
    grid-column:auto;
  }

  .cvl-footer-v2-bottom-inner{
    min-height:70px;
    padding:12px 0;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    gap:4px;
  }
}

@media(max-width:479.98px){
  .cvl-footer-v2-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
  }

  .cvl-footer-v2-action{
    width:100%;
    padding-inline:10px;
  }

  .cvl-footer-v2-badges img{
    max-width:94px;
    height:38px;
  }
}


.cvl-footer-v2 .cvl-footer-social-play{
  fill:#0d1418!important;
}


/* Brand archives use the search-results catalogue layout */
body.tax-product_brand .cvl-brand-catalog-page .cvl-search-products.woocommerce ul.products{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
}

body.tax-product_brand .cvl-brand-catalog-page .cvl-search-products .cvl-product-category,
body.tax-product_brand .cvl-brand-catalog-page .cvl-search-products li.product-category{
  display:none!important;
}

@media(max-width:1399.98px){
  body.tax-product_brand .cvl-brand-catalog-page .cvl-search-products.woocommerce ul.products{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
  }
}

@media(max-width:1199.98px){
  body.tax-product_brand .cvl-brand-catalog-page .cvl-search-products.woocommerce ul.products{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
}

@media(max-width:991.98px){
  body.tax-product_brand .cvl-brand-catalog-page .cvl-search-products.woocommerce ul.products{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

@media(max-width:767.98px){
  body.tax-product_brand .cvl-brand-catalog-page .cvl-search-products.woocommerce ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}


/* Promotion catalogue uses the search-results layout */
body.woocommerce-shop .cvl-promotion-catalog-page .cvl-search-products.woocommerce ul.products{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
}

body.woocommerce-shop .cvl-promotion-catalog-page .cvl-search-products .cvl-product-category,
body.woocommerce-shop .cvl-promotion-catalog-page .cvl-search-products li.product-category{
  display:none!important;
}

@media(max-width:1399.98px){
  body.woocommerce-shop .cvl-promotion-catalog-page .cvl-search-products.woocommerce ul.products{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
  }
}

@media(max-width:1199.98px){
  body.woocommerce-shop .cvl-promotion-catalog-page .cvl-search-products.woocommerce ul.products{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
}

@media(max-width:991.98px){
  body.woocommerce-shop .cvl-promotion-catalog-page .cvl-search-products.woocommerce ul.products{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

@media(max-width:767.98px){
  body.woocommerce-shop .cvl-promotion-catalog-page .cvl-search-products.woocommerce ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}


/* Best price featured catalogue uses the search-results layout */
body.woocommerce-shop .cvl-featured-catalog-page .cvl-search-products.woocommerce ul.products{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
}

body.woocommerce-shop .cvl-featured-catalog-page .cvl-search-products .cvl-product-category,
body.woocommerce-shop .cvl-featured-catalog-page .cvl-search-products li.product-category{
  display:none!important;
}

@media(max-width:1399.98px){
  body.woocommerce-shop .cvl-featured-catalog-page .cvl-search-products.woocommerce ul.products{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
  }
}

@media(max-width:1199.98px){
  body.woocommerce-shop .cvl-featured-catalog-page .cvl-search-products.woocommerce ul.products{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
}

@media(max-width:991.98px){
  body.woocommerce-shop .cvl-featured-catalog-page .cvl-search-products.woocommerce ul.products{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

@media(max-width:767.98px){
  body.woocommerce-shop .cvl-featured-catalog-page .cvl-search-products.woocommerce ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}


/* Floating contact actions */
.cvl-floating-contact{
  position:fixed;
  right:22px;
  bottom:24px;
  z-index:9998;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:10px;
  pointer-events:none;
}

.cvl-floating-contact-button{
  min-width:148px;
  height:54px;
  padding:0 18px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  border:1px solid rgba(0,0,0,.08);
  border-radius:999px;
  box-shadow:0 10px 28px rgba(7,28,24,.2);
  color:#fff!important;
  font-size:13px;
  font-weight:800;
  letter-spacing:.01em;
  line-height:1;
  text-decoration:none!important;
  pointer-events:auto;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
}

.cvl-floating-contact-button:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 34px rgba(7,28,24,.26);
  filter:brightness(.97);
}

.cvl-floating-contact-button:focus-visible{
  outline:3px solid rgba(11,78,70,.28);
  outline-offset:3px;
}

.cvl-floating-contact-button svg{
  width:22px;
  height:22px;
  flex:0 0 22px;
  fill:currentColor;
}

.cvl-floating-contact-button.is-whatsapp{
  background:#25d366;
}

.cvl-floating-contact-button.is-call{
  display:none;
  background:#0b4e46;
}

@media(max-width:767.98px){
  .cvl-floating-contact{
    right:12px;
    bottom:calc(12px + env(safe-area-inset-bottom,0px));
    flex-direction:row;
    gap:8px;
  }

  .cvl-floating-contact-button{
    min-width:46px;
    width:46px;
    height:46px;
    padding:0;
    border-radius:50%;
    box-shadow:0 8px 22px rgba(7,28,24,.22);
  }

  .cvl-floating-contact-button.is-call{
    display:flex;
  }

  .cvl-floating-contact-button span{
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
    border:0;
  }

  .cvl-floating-contact-button svg{
    width:20px;
    height:20px;
    flex-basis:20px;
  }
}


/* v0.16.76 — neutral shared homepage hero */
.cvl-ref-hero-main{
  border:1px solid #e3e6e8!important;
  box-shadow:0 18px 44px rgba(16,24,32,.08)!important;
}
.cvl-ref-hero-main::after{
  border-color:rgba(16,24,32,.07)!important;
}
.cvl-ref-hero-main .cvl-ref-button-primary{
  border-color:#d62828!important;
  background:#d62828!important;
  color:#fff!important;
}
.cvl-ref-hero-main .cvl-ref-button-primary:hover{
  border-color:#b91f1f!important;
  background:#b91f1f!important;
  color:#fff!important;
}
.cvl-ref-hero-help{
  color:var(--cvl-hero-main-text,#101820)!important;
}
.cvl-ref-hero-help:hover{
  color:var(--cvl-hero-main-accent,#d62828)!important;
}
.cvl-ref-hero-orbit{
  border-color:rgba(16,24,32,.08)!important;
}
.cvl-ref-hero-professional-badge{
  border-color:color-mix(in srgb,var(--cvl-hero-main-accent,#d62828) 36%,transparent)!important;
  color:var(--cvl-hero-main-accent,#d62828)!important;
}
.cvl-ref-hero-signature{
  color:color-mix(in srgb,var(--cvl-hero-main-text,#101820) 36%,transparent)!important;
}
.cvl-ref-hero-side{
  border-color:#e3e6e8!important;
}


/* Product breadcrumb path */
body.single-product.woocommerce .cvl-product-breadcrumb{
  margin:0 0 22px;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
  color:#78838a;
  font-size:11px;
  line-height:1.45;
}
body.single-product.woocommerce .cvl-product-breadcrumb a{
  color:#4f5b62;
  font-weight:600;
  transition:color .15s ease;
}
body.single-product.woocommerce .cvl-product-breadcrumb a:hover{
  color:var(--cvl-teal);
}
body.single-product.woocommerce .cvl-product-breadcrumb-sep{
  color:#b3bcc1;
  font-size:13px;
}
body.single-product.woocommerce .cvl-product-breadcrumb-current{
  max-width:min(680px,55vw);
  overflow:hidden;
  color:#69747b;
  text-overflow:ellipsis;
  white-space:nowrap;
}
@media(max-width:767px){
  body.single-product.woocommerce .cvl-product-breadcrumb{
    margin-bottom:16px;
    gap:5px;
    font-size:10px;
  }
  body.single-product.woocommerce .cvl-product-breadcrumb-current{
    max-width:42vw;
  }
}


/* Product cards: hover-only side actions with price centered */
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category){
  position:relative!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .price{
  position:relative;
  z-index:2;
  width:calc(100% - 112px)!important;
  min-height:44px!important;
  margin:10px auto 12px!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-direction:column!important;
  gap:2px!important;
  text-align:center!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions{
  position:absolute!important;
  z-index:4!important;
  left:10px!important;
  right:10px!important;
  bottom:12px!important;
  width:auto!important;
  height:40px!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:0!important;
  pointer-events:none!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .button{
  width:40px!important;
  min-width:40px!important;
  max-width:40px!important;
  height:40px!important;
  min-height:40px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:6px!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translateY(4px)!important;
  transition:opacity .16s ease,visibility .16s ease,transform .16s ease,border-color .16s ease,background .16s ease,color .16s ease!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category):hover .cvl-product-actions .button,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category):focus-within .cvl-product-actions .button{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:none!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button{
  margin-right:auto!important;
  border:1px solid var(--cvl-commercial-green)!important;
  background:var(--cvl-commercial-green)!important;
  color:#fff!important;
  pointer-events:none!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category):hover .cvl-product-actions .cvl-cart-icon-button,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category):focus-within .cvl-product-actions .cvl-cart-icon-button{
  pointer-events:auto!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-view-product{
  margin-left:auto!important;
  border:1px solid #cfd7db!important;
  background:#fff!important;
  color:#344149!important;
  font-size:18px!important;
  line-height:1!important;
  cursor:pointer!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-view-product span{
  display:block!important;
  line-height:1!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-view-product:hover,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-view-product:focus{
  border-color:var(--cvl-ref-teal)!important;
  background:var(--cvl-ref-teal-soft)!important;
  color:var(--cvl-ref-teal-dark)!important;
}
@media(hover:none){
  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .button{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:none!important;
  }
}

/* WooCommerce quick-view modal */
body.cvl-quick-view-open{overflow:hidden}
.cvl-quick-view-modal[hidden]{display:none!important}
.cvl-quick-view-modal{
  position:fixed;
  inset:0;
  z-index:999999;
  padding:24px;
  display:grid;
  place-items:center;
}
.cvl-quick-view-backdrop{
  position:absolute;
  inset:0;
  background:rgba(15,23,42,.58);
  backdrop-filter:blur(2px);
}
.cvl-quick-view-dialog{
  position:relative;
  z-index:1;
  width:min(920px,96vw);
  max-height:88vh;
  overflow:auto;
  border:1px solid #dfe5e8;
  border-radius:14px;
  background:#fff;
  box-shadow:0 24px 80px rgba(15,23,42,.28);
}
.cvl-quick-view-close{
  position:absolute;
  top:12px;
  right:12px;
  z-index:2;
  width:38px;
  height:38px;
  padding:0;
  display:grid;
  place-items:center;
  border:1px solid #d9dfe2;
  border-radius:50%;
  background:#fff;
  color:#26343d;
  font-size:24px;
  line-height:1;
  cursor:pointer;
}
.cvl-quick-view-content{padding:28px}
.cvl-quick-view-loading{padding:64px 24px;text-align:center;color:#66717a}
.cvl-quick-view-grid{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:34px;
  align-items:start;
}
.cvl-quick-view-media{
  aspect-ratio:1/1;
  padding:24px;
  display:grid;
  place-items:center;
  border:1px solid #e5e9eb;
  border-radius:10px;
  background:#fff;
}
.cvl-quick-view-media img{
  width:100%;
  height:100%;
  object-fit:contain;
}
.cvl-quick-view-copy{padding:12px 8px 8px}
.cvl-quick-view-brand{min-height:42px;margin-bottom:10px;display:flex;align-items:center}
.cvl-quick-view-brand img{max-width:150px;max-height:42px;object-fit:contain}
.cvl-quick-view-copy h2{margin:0 0 8px;color:#172b3a;font:800 24px/1.25 "DM Sans",Arial,sans-serif}
.cvl-quick-view-sku{margin-bottom:14px;color:#6a7780;font-size:12px;font-weight:700}
.cvl-quick-view-price{margin:0 0 10px;color:#098950;font:850 32px/1 "Manrope","DM Sans",sans-serif}
.cvl-quick-view-price small{margin-left:7px;color:#69747b;font:700 10px/1 "DM Sans",sans-serif}
.cvl-quick-view-stock{margin-bottom:14px;color:#047857;font-size:12px;font-weight:800}
.cvl-quick-view-description{max-height:230px;overflow:auto;color:#45525a;font-size:13px;line-height:1.6}
.cvl-quick-view-description ul{padding-left:18px}
.cvl-quick-view-open-product{
  margin-top:20px;
  min-height:44px;
  padding:0 18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:6px;
  background:var(--cvl-ref-teal);
  color:#fff!important;
  font-size:11px;
  font-weight:900;
  text-decoration:none!important;
}
@media(max-width:640px){
  .cvl-quick-view-grid{grid-template-columns:1fr;gap:18px}
  .cvl-quick-view-content{padding:18px}
  .cvl-quick-view-copy h2{font-size:20px}
  .cvl-quick-view-price{font-size:28px}
}


/* Product cards — single commercial action on hover */
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category){
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
  transform-origin:center center;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category):hover,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category):focus-within{
  z-index:12!important;
  transform:scale(1.035)!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions{
  position:static!important;
  width:100%!important;
  height:auto!important;
  margin:8px 0 0!important;
  padding:0 10px 12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  pointer-events:none!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .button{
  width:auto!important;
  min-width:112px!important;
  max-width:none!important;
  height:38px!important;
  min-height:38px!important;
  padding:0 16px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:6px!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translateY(5px)!important;
  transition:opacity .16s ease,visibility .16s ease,transform .16s ease,background .16s ease,border-color .16s ease!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category):hover .cvl-product-actions .button,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category):focus-within .cvl-product-actions .button{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:none!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-view-product{
  margin:0 auto!important;
  display:inline-flex!important;
  gap:5px!important;
  border:1px solid var(--cvl-commercial-green)!important;
  background:var(--cvl-commercial-green)!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.04em!important;
  white-space:nowrap!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button:hover,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button:focus,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-view-product:hover,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-view-product:focus{
  border-color:var(--cvl-commercial-green-dark)!important;
  background:var(--cvl-commercial-green-dark)!important;
  color:#fff!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .price{
  width:auto!important;
  margin:10px 10px 0!important;
  text-align:center!important;
}
.cvl-cart-button-label{display:inline-block!important}
@media(hover:none){
  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .button{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:none!important;
  }
  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category):hover{
    transform:none!important;
  }
}

/* Category archive: Produtos / Categorias tabs + hierarchical card browser */
.cvl-category-view-tabs{
  margin:0 0 22px;
  display:flex;
  align-items:flex-end;
  gap:6px;
  border-bottom:1px solid #dfe5e8;
}
.cvl-category-view-tab{
  min-height:42px;
  padding:0 18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid transparent;
  border-bottom:0;
  border-radius:8px 8px 0 0;
  background:transparent;
  color:#526068;
  font-size:11px;
  font-weight:900;
  letter-spacing:.04em;
  text-decoration:none!important;
  text-transform:uppercase;
}
.cvl-category-view-tab:hover,
.cvl-category-view-tab:focus{
  color:var(--cvl-ref-teal-dark);
  background:#f5faf9;
}
.cvl-category-view-tab.is-active{
  margin-bottom:-1px;
  border-color:#dfe5e8;
  border-bottom-color:#fff;
  background:#fff;
  color:var(--cvl-ref-teal-dark);
}
.cvl-category-view-tab.is-disabled{
  opacity:.42;
  cursor:default;
}
.cvl-category-browser-breadcrumb{
  margin:0 0 18px;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
  color:#7c878d;
  font-size:11px;
  line-height:1.4;
}
.cvl-category-browser-breadcrumb a{
  color:#5c696f;
  font-weight:700;
  text-decoration:none;
}
.cvl-category-browser-breadcrumb a:hover,
.cvl-category-browser-breadcrumb a:focus{
  color:var(--cvl-ref-teal-dark);
}
.cvl-category-browser-breadcrumb strong{
  color:#27353c;
  font-weight:900;
}
.cvl-category-browser{
  margin:0 0 28px;
}
.cvl-category-browser-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(145px,154px));
  justify-content:start;
  gap:10px;
}
.cvl-category-browser-card{
  width:154px;
  max-width:154px;
  min-width:0;
  position:relative;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid #e3e8ea;
  border-radius:9px;
  background:#fff;
  color:#26343b;
  text-decoration:none!important;
  box-shadow:0 2px 8px rgba(18,38,48,.035);
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.cvl-category-browser-card:hover,
.cvl-category-browser-card:focus{
  transform:translateY(-1px);
  border-color:#9bcfc5;
  box-shadow:0 7px 18px rgba(18,38,48,.08);
}
.cvl-category-browser-image{
  aspect-ratio:4/3;
  padding:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:#fbfcfc;
}
.cvl-category-browser-image img{
  width:88%;
  height:88%;
  display:block;
  object-fit:contain;
  transition:transform .16s ease;
}
.cvl-category-browser-card:hover .cvl-category-browser-image img,
.cvl-category-browser-card:focus .cvl-category-browser-image img{
  transform:scale(1.025);
}
.cvl-category-browser-copy{
  min-height:58px;
  padding:9px 38px 9px 11px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:3px;
  border-top:1px solid #edf0f1;
}
.cvl-category-browser-copy strong{
  display:-webkit-box;
  overflow:hidden;
  color:#26343b;
  font-size:10.5px;
  font-weight:900;
  line-height:1.24;
  letter-spacing:-.01em;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}
.cvl-category-browser-copy small{
  overflow:hidden;
  color:#819097;
  font-size:7.5px;
  font-weight:800;
  letter-spacing:.025em;
  line-height:1.2;
  text-overflow:ellipsis;
  text-transform:uppercase;
  white-space:nowrap;
}
.cvl-category-browser-arrow{
  position:absolute;
  right:9px;
  bottom:16px;
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#eef8f6;
  color:var(--cvl-ref-teal);
  font-size:17px;
  font-weight:600;
  line-height:1;
  transition:background .16s ease,color .16s ease;
}
.cvl-category-browser-card:hover .cvl-category-browser-arrow,
.cvl-category-browser-card:focus .cvl-category-browser-arrow{
  background:var(--cvl-ref-teal);
  color:#fff;
}
@media(max-width:767.98px){
  .cvl-category-view-tabs{margin-bottom:18px}
  .cvl-category-view-tab{flex:1 1 0;padding:0 10px}
  .cvl-category-browser-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .cvl-category-browser-card{width:auto;max-width:none}
  .cvl-category-browser-copy{min-height:54px;padding:8px 34px 8px 9px}
  .cvl-category-browser-copy strong{font-size:10px}
  .cvl-category-browser-arrow{right:8px;bottom:15px;width:22px;height:22px;font-size:16px}
}
@media(max-width:420px){
  .cvl-category-browser-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .cvl-category-browser-copy small{display:none}
}



/* =========================================================
   Quem Somos — replica da pagina institucional Astro
   ========================================================= */
.cvl-about-catalog-hero{
  padding:42px 0 48px;
  border-bottom:1px solid #e2e7ea;
  background:#f5f7f7;
}
.cvl-about-breadcrumbs{
  margin-bottom:28px;
  overflow:hidden;
  display:flex;
  align-items:center;
  gap:9px;
  color:#7a858d;
  font-size:11px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.cvl-about-breadcrumbs a{
  color:inherit;
  text-decoration:none;
}
.cvl-about-breadcrumbs a:hover,
.cvl-about-breadcrumbs a:focus{
  color:#d62828;
}
.cvl-about-catalog-kicker,
.cvl-about-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#d62828;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.cvl-about-catalog-hero h1{
  margin:10px 0 12px;
  color:#101820;
  font-family:"Manrope","DM Sans",system-ui,sans-serif;
  font-size:clamp(35px,4vw,52px);
  font-weight:800;
  line-height:1.08;
  letter-spacing:-.035em;
}
.cvl-about-catalog-hero p{
  max-width:760px;
  margin:0;
  color:#66727c;
  line-height:1.65;
}
.cvl-about-page{
  padding:54px 0 80px;
}
.cvl-about-hero{
  padding:46px;
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);
  gap:44px;
  border-radius:22px;
  background:linear-gradient(135deg,#111820 0%,#1c2731 100%);
  color:#fff;
  box-shadow:0 18px 48px rgba(17,24,32,.13);
}
.cvl-about-hero-copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.cvl-about-kicker{
  margin-bottom:12px;
}
.cvl-about-hero h2{
  margin:0 0 18px;
  color:#fff;
  font-family:"Manrope","DM Sans",system-ui,sans-serif;
  font-size:clamp(2rem,4vw,3.2rem);
  line-height:1.05;
}
.cvl-about-hero p{
  max-width:820px;
  margin:0 0 16px;
  color:#dce3e9;
  line-height:1.75;
}
.cvl-about-hero .cvl-about-lead{
  font-size:1.08rem;
  font-weight:600;
}
.cvl-about-button{
  margin-top:12px;
  padding:13px 17px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  border-radius:10px;
  background:#d62828;
  color:#fff!important;
  font-weight:800;
  text-decoration:none!important;
}
.cvl-about-button:hover,
.cvl-about-button:focus{
  background:#b91f1f;
  color:#fff!important;
}
.cvl-about-button svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.cvl-about-brand-panel{
  padding:28px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:26px;
  border-radius:18px;
  background:#fff;
}
.cvl-about-brand-panel img{
  width:100%;
  height:auto;
  object-fit:contain;
}
.cvl-about-since{
  padding-top:20px;
  display:flex;
  align-items:center;
  gap:18px;
  border-top:1px solid #e4e7ea;
  color:#4f5a64;
}
.cvl-about-since strong{
  color:#d62828;
  font-size:2rem;
}
.cvl-about-since span{
  line-height:1.45;
}
.cvl-about-values-grid{
  margin-top:22px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.cvl-about-values-grid article{
  padding:24px;
  border:1px solid #e1e6ea;
  border-radius:16px;
  background:#fff;
}
.cvl-about-values-grid article>span{
  margin-bottom:22px;
  display:inline-flex;
  color:#d62828;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.08em;
}
.cvl-about-values-grid h3{
  margin:0 0 8px;
  color:#18212a;
  font-size:1.08rem;
}
.cvl-about-values-grid p{
  margin:0;
  color:#66717b;
  line-height:1.6;
}
.cvl-about-timeline{
  margin-top:22px;
  padding:40px;
  display:grid;
  grid-template-columns:180px minmax(0,1fr);
  gap:38px;
  align-items:start;
  border-radius:20px;
  background:#f2f4f6;
}
.cvl-about-timeline-year{
  color:#d62828;
  font-size:clamp(3rem,7vw,5.5rem);
  font-weight:900;
  line-height:1;
}
.cvl-about-timeline-copy h3{
  margin:0 0 16px;
  color:#18212a;
  font-size:1.7rem;
}
.cvl-about-timeline-copy p{
  margin:0 0 14px;
  color:#5f6a74;
  line-height:1.75;
}
.cvl-about-timeline-copy p:last-child{
  margin-bottom:0;
}
@media(max-width:980px){
  .cvl-about-hero{
    grid-template-columns:1fr;
    padding:34px;
  }
  .cvl-about-values-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:680px){
  .cvl-about-catalog-hero{
    padding:30px 0 36px;
  }
  .cvl-about-page{
    padding:30px 0 56px;
  }
  .cvl-about-hero{
    padding:26px 20px;
    border-radius:16px;
  }
  .cvl-about-brand-panel{
    padding:20px;
  }
  .cvl-about-timeline{
    grid-template-columns:1fr;
    padding:28px 20px;
  }
}


/* =========================================================
   Envios e Entregas — replica da pagina institucional Astro
   ========================================================= */
.cvl-institutional-catalog-hero{
  padding:42px 0 48px;
  border-bottom:1px solid #e2e7ea;
  background:#f5f7f7;
}
.cvl-institutional-breadcrumbs{
  margin-bottom:28px;
  overflow:hidden;
  display:flex;
  align-items:center;
  gap:9px;
  color:#7a858d;
  font-size:11px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.cvl-institutional-breadcrumbs a{
  color:inherit;
  text-decoration:none;
}
.cvl-institutional-breadcrumbs a:hover,
.cvl-institutional-breadcrumbs a:focus{
  color:#d62828;
}
.cvl-institutional-catalog-kicker,
.cvl-institutional-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#d62828;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.cvl-institutional-catalog-hero h1{
  margin:10px 0 12px;
  color:#101820;
  font-family:"Manrope","DM Sans",system-ui,sans-serif;
  font-size:clamp(35px,4vw,52px);
  font-weight:800;
  line-height:1.08;
  letter-spacing:-.035em;
}
.cvl-institutional-catalog-hero p{
  max-width:760px;
  margin:0;
  color:#66727c;
  line-height:1.65;
}
.cvl-institutional-page{
  padding:54px 0 80px;
}
.cvl-institutional-intro-card{
  padding:46px;
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);
  gap:44px;
  border-radius:22px;
  background:linear-gradient(135deg,#111820 0%,#1c2731 100%);
  color:#fff;
  box-shadow:0 18px 48px rgba(17,24,32,.13);
}
.cvl-institutional-kicker{
  margin-bottom:12px;
}
.cvl-institutional-intro-card h2{
  margin:0 0 18px;
  color:#fff;
  font-family:"Manrope","DM Sans",system-ui,sans-serif;
  font-size:clamp(2rem,4vw,3.2rem);
  line-height:1.05;
}
.cvl-institutional-intro-card p{
  max-width:820px;
  margin:0 0 16px;
  color:#dce3e9;
  line-height:1.75;
}
.cvl-institutional-intro-card .cvl-institutional-lead{
  font-size:1.08rem;
  font-weight:600;
}
.cvl-institutional-meta{
  padding-left:28px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  align-items:flex-start;
  gap:16px;
  border-left:1px solid rgba(255,255,255,.14);
}
.cvl-institutional-meta>span{
  color:#aebac4;
  font-size:.9rem;
}
.cvl-institutional-meta a{
  padding:13px 17px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  border-radius:10px;
  background:#d62828;
  color:#fff!important;
  font-weight:800;
  text-decoration:none!important;
}
.cvl-institutional-meta a:hover,
.cvl-institutional-meta a:focus{
  background:#b91f1f;
  color:#fff!important;
}
.cvl-institutional-meta svg{
  width:16px;
  height:16px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.cvl-delivery-highlights{
  margin-top:24px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.cvl-delivery-highlights article{
  padding:24px;
  border:1px solid #e1e6ea;
  border-radius:16px;
  background:#fff;
}
.cvl-delivery-highlights b{
  margin-bottom:22px;
  display:inline-flex;
  color:#d62828;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.08em;
}
.cvl-delivery-highlights h3{
  margin:0 0 8px;
  color:#18212a;
  font-size:1.08rem;
}
.cvl-delivery-highlights p{
  margin:0;
  color:#66717b;
  line-height:1.6;
}
.cvl-institutional-layout{
  margin-top:38px;
  display:grid;
  grid-template-columns:280px minmax(0,1fr);
  gap:34px;
  align-items:start;
}
.cvl-institutional-toc{
  position:sticky;
  top:24px;
  padding:20px;
  border:1px solid #e3e8ec;
  border-radius:16px;
  background:#fff;
  box-shadow:0 10px 30px rgba(15,23,42,.05);
}
.cvl-institutional-toc>strong{
  margin-bottom:12px;
  display:block;
  color:#18212a;
  font-size:.82rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.cvl-institutional-toc nav{
  padding-right:6px;
  display:flex;
  flex-direction:column;
  gap:2px;
  max-height:65vh;
  overflow:auto;
}
.cvl-institutional-toc a{
  padding:8px 9px;
  border-radius:8px;
  color:#5a6570;
  font-size:.86rem;
  line-height:1.35;
  text-decoration:none;
}
.cvl-institutional-toc a:hover,
.cvl-institutional-toc a:focus{
  background:#f4f6f8;
  color:#d62828;
}
.cvl-institutional-sections{
  display:flex;
  flex-direction:column;
  gap:16px;
}
.cvl-institutional-section{
  padding:28px;
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  gap:18px;
  scroll-margin-top:20px;
  border:1px solid #e3e8ec;
  border-radius:16px;
  background:#fff;
  box-shadow:0 8px 26px rgba(15,23,42,.04);
}
.cvl-institutional-section-number{
  width:42px;
  height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:10px;
  background:#f3f5f7;
  color:#d62828;
  font-size:.78rem;
  font-weight:900;
}
.cvl-institutional-section h3{
  margin:4px 0 14px;
  color:#18212a;
  font-size:1.25rem;
}
.cvl-institutional-copy p{
  margin:0 0 13px;
  color:#59646e;
  line-height:1.74;
}
.cvl-institutional-copy p:last-child{
  margin-bottom:0;
}
.cvl-institutional-copy ul{
  margin:10px 0 16px;
  padding-left:20px;
  color:#59646e;
}
.cvl-institutional-copy li{
  margin:6px 0;
  line-height:1.6;
}
.cvl-institutional-copy a{
  color:#bb1f1f;
  font-weight:700;
  text-decoration:none;
}
.cvl-institutional-copy a:hover,
.cvl-institutional-copy a:focus{
  text-decoration:underline;
}
.cvl-institutional-contact{
  margin-top:38px;
  padding:30px 34px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  border-radius:18px;
  background:#f2f4f6;
}
.cvl-institutional-contact h3{
  margin:2px 0 8px;
  color:#18212a;
}
.cvl-institutional-contact p{
  margin:0;
  color:#66717b;
}
.cvl-institutional-contact-actions{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:8px;
  white-space:nowrap;
}
.cvl-institutional-contact-actions a{
  color:#18212a;
  font-weight:800;
  text-decoration:none;
}
.cvl-institutional-contact-actions a:first-child{
  font-size:1.25rem;
}
.cvl-institutional-contact-actions a:hover,
.cvl-institutional-contact-actions a:focus{
  color:#d62828;
}
@media(max-width:980px){
  .cvl-institutional-intro-card{
    grid-template-columns:1fr;
    padding:34px;
  }
  .cvl-institutional-meta{
    padding-left:0;
    padding-top:20px;
    border-left:0;
    border-top:1px solid rgba(255,255,255,.14);
  }
  .cvl-delivery-highlights{
    grid-template-columns:1fr;
  }
  .cvl-institutional-layout{
    grid-template-columns:1fr;
  }
  .cvl-institutional-toc{
    position:relative;
    top:auto;
  }
  .cvl-institutional-toc nav{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    max-height:none;
  }
}
@media(max-width:680px){
  .cvl-institutional-catalog-hero{
    padding:30px 0 36px;
  }
  .cvl-institutional-page{
    padding:30px 0 56px;
  }
  .cvl-institutional-intro-card{
    padding:26px 20px;
    border-radius:16px;
  }
  .cvl-institutional-toc{
    padding:16px;
  }
  .cvl-institutional-toc nav{
    grid-template-columns:1fr;
  }
  .cvl-institutional-section{
    grid-template-columns:1fr;
    padding:22px 18px;
  }
  .cvl-institutional-section-number{
    width:36px;
    height:36px;
  }
  .cvl-institutional-contact{
    padding:24px 20px;
    flex-direction:column;
    align-items:flex-start;
  }
  .cvl-institutional-contact-actions{
    align-items:flex-start;
    white-space:normal;
  }
}


/* v0.16.86 — flat, high-contrast product action icons */
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions{
  width:100%!important;
  margin:8px 0 0!important;
  padding:0 10px 12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  pointer-events:none!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .button{
  width:auto!important;
  min-width:122px!important;
  max-width:100%!important;
  height:40px!important;
  min-height:40px!important;
  padding:0 15px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  border-radius:6px!important;
  box-shadow:none!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:.035em!important;
  white-space:nowrap!important;
  box-sizing:border-box!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button{
  margin:0 auto!important;
  min-width:122px!important;
  height:40px!important;
  padding:0 15px!important;
  border:1px solid var(--cvl-commercial-green,#009a56)!important;
  background:var(--cvl-commercial-green,#009a56)!important;
  color:#fff!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-view-product{
  margin:0 auto!important;
  min-width:122px!important;
  height:40px!important;
  padding:0 15px!important;
  border:1px solid var(--cvl-ref-teal,#007267)!important;
  background:var(--cvl-ref-teal,#007267)!important;
  color:#fff!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button:hover,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button:focus{
  border-color:var(--cvl-commercial-green-dark,#087d4b)!important;
  background:var(--cvl-commercial-green-dark,#087d4b)!important;
  color:#fff!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-view-product:hover,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-view-product:focus{
  border-color:var(--cvl-ref-teal-dark,#005c53)!important;
  background:var(--cvl-ref-teal-dark,#005c53)!important;
  color:#fff!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-action-icon{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  flex:0 0 18px!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
  fill:currentColor!important;
  stroke:none!important;
  color:#fff!important;
  overflow:visible!important;
  transform:none!important;
  opacity:1!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-view-product-icon{
  width:18px!important;
  height:18px!important;
  flex-basis:18px!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-cart-button-icon{
  width:19px!important;
  height:19px!important;
  flex-basis:19px!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-cart-button-label,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-view-product-label{
  display:inline-block!important;
  margin:0!important;
  padding:0!important;
  color:#fff!important;
  line-height:1!important;
}

@media(max-width:420px){
  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .button,
  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button,
  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-view-product{
    min-width:112px!important;
    height:38px!important;
    min-height:38px!important;
    padding:0 13px!important;
    gap:7px!important;
    font-size:9px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-action-icon{
    width:17px!important;
    height:17px!important;
    min-width:17px!important;
    min-height:17px!important;
    flex-basis:17px!important;
  }
}



/* v0.16.87 — full-bleed homepage hero/highlight imagery with optional overlay text */
.cvl-ref-hero-main.is-full-image,
.cvl-ref-hero-side.is-full-image,
.cvl-homepage-highlight.is-full-image{
  position:relative!important;
  isolation:isolate;
}

.cvl-ref-hero-main.is-full-image::after{
  display:none!important;
}

.cvl-ref-hero-main.is-full-image.has-overlay-text::before,
.cvl-ref-hero-side.is-full-image.has-overlay-text::before,
.cvl-homepage-highlight.is-full-image.has-overlay-text::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
}

.cvl-ref-hero-main.is-full-image.has-overlay-text::before{
  background:linear-gradient(90deg,rgba(0,0,0,.66) 0%,rgba(0,0,0,.48) 42%,rgba(0,0,0,.08) 78%,rgba(0,0,0,0) 100%);
}

.cvl-ref-hero-side.is-full-image.has-overlay-text::before{
  background:linear-gradient(180deg,rgba(0,0,0,.50) 0%,rgba(0,0,0,.18) 48%,rgba(0,0,0,.58) 100%);
}

.cvl-ref-hero-main.is-full-image .cvl-ref-hero-main-media,
.cvl-ref-hero-side.is-full-image .cvl-ref-hero-side-media{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  display:block!important;
  overflow:hidden!important;
}

.cvl-ref-hero-main.is-full-image .cvl-ref-hero-main-media img,
.cvl-ref-hero-side.is-full-image .cvl-ref-hero-side-media img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  max-height:none!important;
  margin:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  object-fit:cover!important;
}

.cvl-ref-hero-main.is-full-image .cvl-ref-hero-orbit{
  display:none!important;
}

.cvl-ref-hero-main.is-full-image .cvl-ref-hero-main-copy,
.cvl-ref-hero-main.is-full-image .cvl-ref-hero-professional-badge,
.cvl-ref-hero-main.is-full-image .cvl-ref-hero-signature,
.cvl-ref-hero-side.is-full-image .cvl-ref-hero-side-copy,
.cvl-ref-hero-side.is-full-image .cvl-ref-hero-side-cta{
  position:relative;
  z-index:3;
}

.cvl-ref-hero-main.is-full-image .cvl-ref-hero-main-copy{
  min-height:470px;
  width:min(720px,72%);
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.cvl-ref-hero-main.is-full-image.has-overlay-text .cvl-ref-hero-main-copy,
.cvl-ref-hero-main.is-full-image.has-overlay-text .cvl-ref-hero-main h1,
.cvl-ref-hero-main.is-full-image.has-overlay-text .cvl-ref-hero-main h1 span,
.cvl-ref-hero-main.is-full-image.has-overlay-text .cvl-ref-hero-main p,
.cvl-ref-hero-main.is-full-image.has-overlay-text .cvl-ref-kicker,
.cvl-ref-hero-main.is-full-image.has-overlay-text .cvl-ref-hero-help{
  color:var(--cvl-hero-main-text,#fff)!important;
  text-shadow:0 2px 16px rgba(0,0,0,.24);
}

.cvl-ref-hero-main.is-full-image.has-overlay-text .cvl-ref-hero-main h1 span{
  color:var(--cvl-hero-main-accent,#fff)!important;
}

.cvl-ref-hero-main.is-full-image.has-overlay-text .cvl-ref-hero-professional-badge{
  color:var(--cvl-hero-main-accent,#fff)!important;
  border-color:color-mix(in srgb,var(--cvl-hero-main-accent,#fff) 55%,transparent)!important;
}

.cvl-ref-hero-main.is-full-image.has-overlay-text .cvl-ref-hero-signature{
  color:color-mix(in srgb,var(--cvl-hero-main-text,#fff) 68%,transparent)!important;
}

.cvl-ref-hero-side.is-full-image{
  display:block!important;
}

.cvl-ref-hero-side.is-full-image .cvl-ref-hero-side-copy{
  padding:36px 30px 88px!important;
}

.cvl-ref-hero-side.is-full-image.has-overlay-text .cvl-ref-hero-side-copy,
.cvl-ref-hero-side.is-full-image.has-overlay-text .cvl-ref-hero-side-copy small,
.cvl-ref-hero-side.is-full-image.has-overlay-text .cvl-ref-hero-side-copy strong,
.cvl-ref-hero-side.is-full-image.has-overlay-text .cvl-ref-hero-side-copy strong span,
.cvl-ref-hero-side.is-full-image.has-overlay-text .cvl-ref-hero-side-copy>span,
.cvl-ref-hero-side.is-full-image.has-overlay-text .cvl-ref-hero-side-cta{
  color:var(--cvl-hero-side-text,#fff)!important;
  text-shadow:0 2px 14px rgba(0,0,0,.28);
}

.cvl-ref-hero-side.is-full-image.has-overlay-text .cvl-ref-hero-side-cta b{
  border-color:color-mix(in srgb,var(--cvl-hero-side-text,#fff) 55%,transparent)!important;
  background:rgba(0,0,0,.20)!important;
}

.cvl-ref-hero-main.is-full-image.is-text-hidden .cvl-ref-hero-main-copy,
.cvl-ref-hero-side.is-full-image.is-text-hidden .cvl-ref-hero-side-copy,
.cvl-ref-hero-side.is-full-image.is-text-hidden .cvl-ref-hero-side-cta{
  display:none!important;
}

.cvl-homepage-highlight.is-full-image{
  display:block!important;
  overflow:hidden;
}

.cvl-homepage-highlight.is-full-image .cvl-homepage-highlight-media{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
}

.cvl-homepage-highlight.is-full-image .cvl-homepage-highlight-media img,
.cvl-homepage-highlight.is-full-image .cvl-homepage-highlight-slide{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
}

.cvl-homepage-highlight.is-full-image .cvl-homepage-highlight-media::after{
  z-index:2!important;
  background:none!important;
}

.cvl-homepage-highlight.is-full-image.has-overlay-text::before{
  background:linear-gradient(180deg,rgba(0,0,0,.02) 25%,rgba(0,0,0,.18) 50%,rgba(0,0,0,.72) 100%);
}

.cvl-homepage-highlight.is-full-image .cvl-homepage-highlight-content{
  position:absolute!important;
  left:0;
  right:0;
  bottom:0;
  z-index:3;
  min-height:0;
  padding:24px 22px 22px;
  color:var(--cvl-highlight-color,#fff);
}

.cvl-homepage-highlight.is-full-image .cvl-homepage-highlight-content,
.cvl-homepage-highlight.is-full-image .cvl-kicker,
.cvl-homepage-highlight.is-full-image h2,
.cvl-homepage-highlight.is-full-image p,
.cvl-homepage-highlight.is-full-image strong{
  color:var(--cvl-highlight-color,#fff)!important;
  text-shadow:0 2px 14px rgba(0,0,0,.34);
}

.cvl-homepage-highlight.is-full-image .cvl-solution-number{
  color:var(--cvl-highlight-color,#fff)!important;
  opacity:.28!important;
}

.cvl-homepage-highlight.is-full-image.is-text-hidden::before,
.cvl-homepage-highlight.is-full-image.is-text-hidden .cvl-homepage-highlight-content{
  display:none!important;
}

@media(max-width:991.98px){
  .cvl-ref-hero-main.is-full-image .cvl-ref-hero-main-copy{
    min-height:450px;
    width:min(720px,82%);
  }

  .cvl-ref-hero-side.is-full-image{
    min-height:360px!important;
  }
}

@media(max-width:767.98px){
  .cvl-ref-hero-main.is-full-image{
    min-height:520px!important;
  }

  .cvl-ref-hero-main.is-full-image .cvl-ref-hero-main-copy{
    min-height:520px;
    width:100%;
    padding:38px 28px 42px!important;
  }

  .cvl-ref-hero-main.is-full-image.has-overlay-text::before{
    background:linear-gradient(180deg,rgba(0,0,0,.58) 0%,rgba(0,0,0,.34) 48%,rgba(0,0,0,.62) 100%);
  }
}

@media(max-width:575.98px){
  .cvl-ref-hero-main.is-full-image{
    min-height:500px!important;
  }

  .cvl-ref-hero-main.is-full-image .cvl-ref-hero-main-copy{
    min-height:500px;
    padding:32px 22px 38px!important;
  }

  .cvl-ref-hero-side.is-full-image{
    min-height:390px!important;
  }

  .cvl-ref-hero-side.is-full-image .cvl-ref-hero-side-copy{
    padding:28px 24px 76px!important;
  }

  .cvl-homepage-highlight.is-full-image{
    min-height:390px;
  }

  .cvl-homepage-highlight.is-full-image .cvl-homepage-highlight-content{
    padding:24px 22px;
  }
}

/* =========================================================
   Product cards — design aprovado 0.16.89
   ========================================================= */
:is(.woocommerce,.cvl-v4-products) ul.products{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:14px!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category){
  border:1px solid #dfe5e8!important;
  border-radius:10px!important;
  box-shadow:0 3px 12px rgba(20,34,45,.055)!important;
  transform:none!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category):hover,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category):focus-within{
  z-index:12!important;
  border-color:#cfd8dc!important;
  box-shadow:0 12px 30px rgba(20,34,45,.10)!important;
  transform:translateY(-2px)!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category)>a.woocommerce-LoopProduct-link>img{
  margin:0 0 12px!important;
  padding:14px!important;
  background:#fff!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category):hover a img{
  transform:none!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-category{
  margin:0 12px 7px!important;
  color:#65717c!important;
  font-size:9px!important;
  font-weight:800!important;
  text-align:left!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .woocommerce-loop-product__title{
  min-height:2.8em!important;
  height:2.8em!important;
  max-height:2.8em!important;
  margin:0 12px 9px!important;
  color:#101827!important;
  font:800 13px/1.4 "DM Sans",system-ui,sans-serif!important;
  text-align:left!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category):hover .woocommerce-loop-product__title{
  height:2.8em!important;
  max-height:2.8em!important;
  color:#101827!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-row,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-sku-row{
  display:none!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row{
  min-height:40px!important;
  margin:0 12px!important;
  padding:3px 0 9px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
  border-bottom:1px solid #e5e9eb!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand{
  width:auto!important;
  max-width:100%!important;
  min-height:28px!important;
  justify-content:flex-start!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-logo{
  max-width:92px!important;
  max-height:28px!important;
  margin:0!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-name{
  color:#37434c!important;
  font-size:9px!important;
  text-align:left!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row .cvl-product-sku{
  width:auto!important;
  max-width:98px!important;
  min-height:24px!important;
  padding-left:10px!important;
  border-left:1px solid #d9dfe2!important;
  color:#68747e!important;
  font-size:9.5px!important;
  font-weight:700!important;
  justify-content:flex-end!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-status-row{
  min-height:42px!important;
  margin:0 12px!important;
  padding:9px 0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  border-bottom:1px solid #e5e9eb!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-stock{
  min-height:0!important;
  margin:0!important;
  display:flex!important;
  font-size:10.5px!important;
  font-weight:800!important;
  white-space:nowrap!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-stock>span{
  width:7px!important;
  height:7px!important;
  flex:0 0 7px!important;
  box-shadow:none!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-card-rating{
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:5px!important;
  color:#1c2530!important;
  font-size:9.5px!important;
  line-height:1!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-card-stars{
  overflow:hidden!important;
  color:#f7ad00!important;
  font-size:12px!important;
  letter-spacing:-1px!important;
  white-space:nowrap!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-card-rating strong{
  font-size:10.5px!important;
  font-weight:900!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-card-no-rating{
  color:#9aa3a9!important;
  font-size:8.5px!important;
  font-weight:700!important;
  white-space:nowrap!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .price{
  display:none!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-row{
  min-height:72px!important;
  margin:auto 12px 0!important;
  padding:13px 0 12px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:end!important;
  gap:12px!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-primary{
  min-width:0!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:baseline!important;
  gap:4px 6px!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-regular{
  width:100%!important;
  color:#77828b!important;
  font-size:10px!important;
  font-weight:600!important;
  line-height:1!important;
  text-decoration-thickness:1px!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-from{
  color:#6b7680!important;
  font-size:9px!important;
  font-weight:800!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-current{
  color:#e10d0d!important;
  font-family:"Manrope","DM Sans",sans-serif!important;
  font-size:23px!important;
  font-weight:900!important;
  letter-spacing:-.035em!important;
  line-height:1!important;
  white-space:nowrap!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-net{
  min-width:92px!important;
  min-height:35px!important;
  padding-left:12px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  justify-content:center!important;
  border-left:1px solid #d9dfe2!important;
  color:#606d78!important;
  line-height:1.15!important;
  text-align:right!important;
  white-space:nowrap!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-net strong{
  color:#606d78!important;
  font-size:10.5px!important;
  font-weight:800!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-net span{
  margin-top:2px!important;
  font-size:8.5px!important;
  font-weight:700!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-row.is-no-price{
  grid-template-columns:1fr!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-row.is-no-price .cvl-product-price-current{
  font-size:16px!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions{
  width:auto!important;
  height:auto!important;
  margin:0 12px 12px!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 40px!important;
  align-items:stretch!important;
  gap:8px!important;
  pointer-events:auto!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .button{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
  padding:0 12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:none!important;
  border-radius:5px!important;
  font-size:9.5px!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
  white-space:nowrap!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  flex:1 1 auto!important;
  padding:0 12px!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-view-product{
  width:100%!important;
  min-width:0!important;
  flex:1 1 auto!important;
  margin:0!important;
  border-color:#89959d!important;
  background:#89959d!important;
  color:#fff!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-view-product:hover,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-view-product:focus{
  border-color:#6f7b83!important;
  background:#6f7b83!important;
  color:#fff!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-card-eye-button{
  width:40px!important;
  height:40px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid #c6cfd4!important;
  border-radius:5px!important;
  background:#fff!important;
  color:#111827!important;
  text-decoration:none!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-card-eye-button:hover,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-card-eye-button:focus{
  border-color:#98a4ab!important;
  background:#f6f8f9!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-card-eye-icon{
  width:19px!important;
  height:19px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-card-wishlist{
  position:absolute!important;
  z-index:8!important;
  top:10px!important;
  right:10px!important;
  width:36px!important;
  height:36px!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-card-wishlist :is(a,button){
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  min-height:36px!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid #d7dee2!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#1f2937!important;
  box-shadow:0 1px 3px rgba(0,0,0,.05)!important;
  font-size:0!important;
  text-decoration:none!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-card-wishlist :is(a,button)::before{
  content:"♡"!important;
  font-size:23px!important;
  font-weight:500!important;
  line-height:1!important;
}

@media(max-width:1599.98px) and (min-width:1200px){
  :is(.woocommerce,.cvl-v4-products) ul.products{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
  }
}

@media(max-width:1199.98px){
  :is(.woocommerce,.cvl-v4-products) ul.products{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
}

@media(max-width:991.98px){
  :is(.woocommerce,.cvl-v4-products) ul.products{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

@media(max-width:767.98px){
  :is(.woocommerce,.cvl-v4-products) ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .woocommerce-loop-product__title{
    font-size:11.5px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-current{
    font-size:19px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-net{
    min-width:76px!important;
    padding-left:8px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-net strong{
    font-size:9px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-net span{
    font-size:7.5px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions{
    margin-inline:10px!important;
    grid-template-columns:minmax(0,1fr) 38px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .button{
    font-size:8.5px!important;
    padding-inline:8px!important;
  }
}

@media(max-width:420px){
  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-row{
    gap:7px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-current{
    font-size:17px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-net{
    min-width:68px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-card-stars{
    font-size:10px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .button{
    font-size:7.7px!important;
  }
}



/* =========================================================
   Product actions — final approved state 0.16.92
   Keep this after the 0.16.89 card redesign so action styling wins.
   ========================================================= */
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions{
  width:100%!important;
  height:auto!important;
  margin:8px 0 0!important;
  padding:0 10px 12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
  pointer-events:none!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .button,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-view-product{
  width:auto!important;
  min-width:122px!important;
  max-width:100%!important;
  height:40px!important;
  min-height:40px!important;
  margin:0 auto!important;
  padding:0 15px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  border-radius:6px!important;
  box-shadow:none!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:.035em!important;
  white-space:nowrap!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:none!important;
  box-sizing:border-box!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button{
  border:1px solid var(--cvl-commercial-green,#009a56)!important;
  background:var(--cvl-commercial-green,#009a56)!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-view-product{
  border:1px solid var(--cvl-ref-teal,#007267)!important;
  background:var(--cvl-ref-teal,#007267)!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button:hover,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button:focus{
  border-color:var(--cvl-commercial-green-dark,#087d4b)!important;
  background:var(--cvl-commercial-green-dark,#087d4b)!important;
  color:#fff!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-view-product:hover,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-view-product:focus{
  border-color:var(--cvl-ref-teal-dark,#005c53)!important;
  background:var(--cvl-ref-teal-dark,#005c53)!important;
  color:#fff!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-action-icon{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  flex:0 0 18px!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
  fill:#fff!important;
  stroke:none!important;
  color:#fff!important;
  opacity:1!important;
  overflow:visible!important;
  transform:none!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-cart-button-icon{
  width:19px!important;
  height:19px!important;
  min-width:19px!important;
  min-height:19px!important;
  flex-basis:19px!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-cart-button-label,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-view-product-label{
  margin:0!important;
  padding:0!important;
  display:inline-block!important;
  color:#fff!important;
  line-height:1!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-card-eye-button{
  display:none!important;
}

@media(max-width:420px){
  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .button,
  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button,
  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-view-product{
    min-width:112px!important;
    height:38px!important;
    min-height:38px!important;
    padding:0 13px!important;
    gap:7px!important;
    font-size:9px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-action-icon{
    width:17px!important;
    height:17px!important;
    min-width:17px!important;
    min-height:17px!important;
    flex-basis:17px!important;
  }
}

/* =========================================================
   v0.16.93 — Product card approved reference
   Image -> Category -> Title -> Brand/SKU -> Stock/Rating
   -> VAT price / net price -> Cart + view
   ========================================================= */
:is(.woocommerce,.cvl-v4-products) ul.products{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:14px!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category){
  position:relative!important;
  z-index:1!important;
  overflow:hidden!important;
  border:1px solid #dfe5e8!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 3px 12px rgba(20,34,45,.055)!important;
  transform:none!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category):hover,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category):focus-within{
  z-index:12!important;
  border-color:#cfd8dc!important;
  box-shadow:0 12px 30px rgba(20,34,45,.10)!important;
  transform:translateY(-2px)!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category)>a.woocommerce-LoopProduct-link>img{
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  aspect-ratio:1/1!important;
  margin:0 0 12px!important;
  padding:14px!important;
  background:#fff!important;
  object-fit:contain!important;
  transform:none!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category):hover a img{
  transform:none!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-badge{
  top:10px!important;
  left:10px!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-category{
  margin:0 12px 7px!important;
  color:#65717c!important;
  font-size:9px!important;
  font-weight:800!important;
  text-align:left!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .woocommerce-loop-product__title{
  min-height:2.8em!important;
  height:2.8em!important;
  max-height:2.8em!important;
  margin:0 12px 9px!important;
  color:#101827!important;
  font:800 13px/1.4 "DM Sans",system-ui,sans-serif!important;
  text-align:left!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category):hover .woocommerce-loop-product__title{
  height:2.8em!important;
  max-height:2.8em!important;
  color:#101827!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-row,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-sku-row{
  display:none!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row{
  min-height:40px!important;
  margin:0 12px!important;
  padding:3px 0 9px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
  border-bottom:1px solid #e5e9eb!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand{
  width:auto!important;
  max-width:100%!important;
  min-height:28px!important;
  justify-content:flex-start!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-logo{
  max-width:92px!important;
  max-height:28px!important;
  margin:0!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-name{
  color:#37434c!important;
  font-size:9px!important;
  text-align:left!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row .cvl-product-sku{
  width:auto!important;
  max-width:98px!important;
  min-height:24px!important;
  padding-left:10px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  border-left:1px solid #d9dfe2!important;
  color:#68747e!important;
  font-size:9.5px!important;
  font-weight:700!important;
  white-space:nowrap!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-status-row{
  min-height:42px!important;
  margin:0 12px!important;
  padding:9px 0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  border-bottom:1px solid #e5e9eb!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-stock{
  min-height:0!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  font-size:10.5px!important;
  font-weight:800!important;
  white-space:nowrap!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-stock>span{
  width:7px!important;
  height:7px!important;
  flex:0 0 7px!important;
  border-radius:50%!important;
  background:currentColor!important;
  box-shadow:none!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-stock.is-instock{color:#079653!important}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-stock.is-backorder{color:#d17a00!important}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-stock.is-outofstock{color:#b84d41!important}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-card-rating{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:5px!important;
  color:#1c2530!important;
  font-size:9.5px!important;
  line-height:1!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-card-stars{
  color:#f7ad00!important;
  font-size:12px!important;
  letter-spacing:-1px!important;
  white-space:nowrap!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-card-rating strong{
  font-size:10.5px!important;
  font-weight:900!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-card-no-rating{
  color:#9aa3a9!important;
  font-size:8.5px!important;
  font-weight:700!important;
  white-space:nowrap!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .price{
  display:none!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-row{
  min-height:72px!important;
  margin:auto 12px 0!important;
  padding:13px 0 12px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:end!important;
  gap:12px!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-primary{
  min-width:0!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:baseline!important;
  gap:4px 6px!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-regular{
  width:100%!important;
  color:#77828b!important;
  font-size:10px!important;
  font-weight:600!important;
  line-height:1!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-from{
  color:#6b7680!important;
  font-size:9px!important;
  font-weight:800!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-current{
  color:#e10d0d!important;
  font-family:"Manrope","DM Sans",sans-serif!important;
  font-size:23px!important;
  font-weight:900!important;
  letter-spacing:-.035em!important;
  line-height:1!important;
  white-space:nowrap!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-net{
  min-width:116px!important;
  min-height:35px!important;
  padding-left:12px!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:baseline!important;
  justify-content:flex-end!important;
  gap:4px!important;
  border-left:1px solid #d9dfe2!important;
  color:#606d78!important;
  line-height:1.15!important;
  text-align:right!important;
  white-space:nowrap!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-net strong{
  color:#606d78!important;
  font-size:10.5px!important;
  font-weight:800!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-net span{
  margin:0!important;
  font-size:8.5px!important;
  font-weight:700!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-row.is-no-price{
  grid-template-columns:1fr!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-row.is-no-price .cvl-product-price-current{
  font-size:16px!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions{
  position:static!important;
  width:auto!important;
  height:auto!important;
  margin:0 12px 12px!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 40px!important;
  align-items:stretch!important;
  justify-content:stretch!important;
  gap:8px!important;
  pointer-events:auto!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .button{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
  padding:0 12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:none!important;
  border-radius:5px!important;
  font-size:9.5px!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
  white-space:nowrap!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  padding:0 12px!important;
  border:1px solid var(--cvl-commercial-green)!important;
  background:var(--cvl-commercial-green)!important;
  color:#fff!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-view-product{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  padding:0 12px!important;
  border:1px solid #89959d!important;
  background:#89959d!important;
  color:#fff!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-card-eye-button{
  width:40px!important;
  height:40px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid #c6cfd4!important;
  border-radius:5px!important;
  background:#fff!important;
  color:#111827!important;
  text-decoration:none!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-card-eye-button:hover,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-card-eye-button:focus{
  border-color:#98a4ab!important;
  background:#f6f8f9!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-card-eye-icon{
  width:19px!important;
  height:19px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-card-wishlist{
  position:absolute!important;
  z-index:8!important;
  top:12px!important;
  right:12px!important;
  width:38px!important;
  height:38px!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-card-wishlist :is(a,button){
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid #d7dee2!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#1f2937!important;
  box-shadow:0 1px 4px rgba(15,23,42,.06)!important;
  font-size:0!important;
  text-decoration:none!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-card-wishlist :is(a,button)::before{
  content:"♡"!important;
  font-size:23px!important;
  font-weight:500!important;
  line-height:1!important;
}

@media(max-width:1599.98px) and (min-width:1200px){
  :is(.woocommerce,.cvl-v4-products) ul.products{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
  }
}

@media(max-width:1199.98px){
  :is(.woocommerce,.cvl-v4-products) ul.products{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
}

@media(max-width:991.98px){
  :is(.woocommerce,.cvl-v4-products) ul.products{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

@media(max-width:767.98px){
  :is(.woocommerce,.cvl-v4-products) ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .woocommerce-loop-product__title{
    font-size:11.5px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-current{
    font-size:19px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-net{
    min-width:84px!important;
    padding-left:8px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-net strong{
    font-size:9px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-net span{
    font-size:7.5px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions{
    margin-inline:10px!important;
    grid-template-columns:minmax(0,1fr) 38px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .button{
    font-size:8.5px!important;
    padding-inline:8px!important;
  }
}

/* =========================================================
   v0.16.94 — Mobile cart button alignment
   ========================================================= */
@media(max-width:767.98px){
  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions{
    margin:0 8px 10px!important;
    grid-template-columns:minmax(0,1fr) 36px!important;
    gap:6px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .button,
  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-card-eye-button{
    height:36px!important;
    min-height:36px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button{
    min-width:0!important;
    padding:0 5px!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:center!important;
    gap:4px!important;
    overflow:hidden!important;
    font-size:7.2px!important;
    line-height:1!important;
    letter-spacing:0!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-cart-button-icon{
    position:static!important;
    width:13px!important;
    height:13px!important;
    min-width:13px!important;
    flex:0 0 13px!important;
    margin:0!important;
    transform:none!important;
    vertical-align:middle!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-cart-button-label{
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    display:block!important;
    overflow:hidden!important;
    font-size:7.2px!important;
    font-weight:900!important;
    line-height:1!important;
    letter-spacing:0!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-card-eye-button{
    width:36px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-card-eye-icon{
    width:17px!important;
    height:17px!important;
  }
}

@media(max-width:420px){
  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button,
  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-cart-button-label{
    font-size:6.6px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-cart-button-icon{
    width:12px!important;
    height:12px!important;
    min-width:12px!important;
    flex-basis:12px!important;
  }
}

/* =========================================================
   v0.16.95 — Compact catalog cart action
   ========================================================= */
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button{
  min-width:0!important;
  padding:0 10px!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  overflow:hidden!important;
  font-size:9px!important;
  line-height:1!important;
  letter-spacing:0!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-cart-button-icon{
  position:static!important;
  width:15px!important;
  height:15px!important;
  min-width:15px!important;
  min-height:15px!important;
  flex:0 0 15px!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  vertical-align:middle!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-cart-button-label{
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  display:block!important;
  overflow:visible!important;
  color:#fff!important;
  font-size:9px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:.01em!important;
  text-overflow:clip!important;
  white-space:nowrap!important;
}

@media(max-width:767.98px){
  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button{
    padding:0 7px!important;
    gap:5px!important;
    font-size:8px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-cart-button-icon{
    width:13px!important;
    height:13px!important;
    min-width:13px!important;
    min-height:13px!important;
    flex-basis:13px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-cart-button-label{
    font-size:8px!important;
  }
}

@media(max-width:420px){
  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button{
    padding:0 5px!important;
    gap:4px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-cart-button-icon{
    width:12px!important;
    height:12px!important;
    min-width:12px!important;
    min-height:12px!important;
    flex-basis:12px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-cart-button-label{
    font-size:7.5px!important;
  }
}

/* =========================================================
   v0.16.96 — Homepage product rows
   Desktop: Novidades 1x8 / Promoções 2x8
   ========================================================= */
@media(min-width:1200px){
  .cvl-home-product-strip.cvl-v4-products ul.products{
    grid-template-columns:repeat(8,minmax(0,1fr))!important;
    gap:10px!important;
  }
}

@media(max-width:1199.98px) and (min-width:768px){
  .cvl-home-product-strip.cvl-v4-products ul.products{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
}

@media(max-width:767.98px){
  .cvl-home-product-strip.cvl-v4-products ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* Product card SKU — barcode icon + aligned separator */
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row .cvl-product-sku{
  position:relative!important;
  width:auto!important;
  max-width:128px!important;
  min-height:28px!important;
  padding-left:14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:5px!important;
  overflow:hidden!important;
  border-left:0!important;
  color:#68747e!important;
  font-size:9.5px!important;
  font-weight:700!important;
  line-height:1!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row .cvl-product-sku::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:50%!important;
  width:1px!important;
  height:22px!important;
  background:#d9dfe2!important;
  transform:translateY(-50%)!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-barcode-icon{
  width:15px!important;
  height:10px!important;
  flex:0 0 15px!important;
  display:inline-block!important;
  background:repeating-linear-gradient(
    90deg,
    #65717a 0 1px,
    transparent 1px 3px,
    #65717a 3px 5px,
    transparent 5px 6px,
    #65717a 6px 7px,
    transparent 7px 9px,
    #65717a 9px 11px,
    transparent 11px 13px,
    #65717a 13px 14px,
    transparent 14px 15px
  )!important;
  opacity:.78!important;
}

/* v0.16.99 — Cart icon visually integrated with the action button */
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .cvl-cart-icon-button{
  gap:4px!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-cart-button-icon{
  width:14px!important;
  height:14px!important;
  min-width:0!important;
  min-height:0!important;
  flex:none!important;
  margin:0!important;
  stroke-width:1.7!important;
  transform:translateY(-.5px)!important;
}

/* =========================================================
   v0.16.100 — Full image = no crop
   ========================================================= */
.cvl-ref-hero-main.is-full-image .cvl-ref-hero-main-media,
.cvl-ref-hero-side.is-full-image .cvl-ref-hero-side-media,
.cvl-homepage-highlight.is-full-image .cvl-homepage-highlight-media{
  overflow:hidden!important;
}

.cvl-ref-hero-main.is-full-image .cvl-ref-hero-main-media img{
  object-fit:contain!important;
  object-position:center center!important;
  background:var(--cvl-hero-main-bg,#fff)!important;
}

.cvl-ref-hero-side.is-full-image .cvl-ref-hero-side-media img{
  object-fit:contain!important;
  object-position:center center!important;
  background:var(--cvl-hero-side-bg,#fff)!important;
}

.cvl-homepage-highlight.is-full-image .cvl-homepage-highlight-media img,
.cvl-homepage-highlight.is-full-image .cvl-homepage-highlight-slide{
  object-fit:contain!important;
  object-position:center center!important;
  background:var(--cvl-highlight-bg,#fff)!important;
}

/* =========================================================
   v0.16.102 — Exact homepage hero geometry
   Desktop 1920px shell: 1728px
   Hero: 1244x470 | Gap: 14 | Side: 470x470
   ========================================================= */
@media(min-width:1200px){
  .cvl-ref-hero-showcase .cvl-ref-hero-grid{
    grid-template-columns:minmax(0,1fr) 470px!important;
    align-items:stretch!important;
    gap:14px!important;
  }

  .cvl-ref-hero-showcase .cvl-ref-hero-main{
    width:100%!important;
    height:470px!important;
    min-height:470px!important;
    max-height:470px!important;
  }

  .cvl-ref-hero-showcase .cvl-ref-hero-side{
    width:470px!important;
    min-width:470px!important;
    max-width:470px!important;
    height:470px!important;
    min-height:470px!important;
    max-height:470px!important;
    aspect-ratio:1/1!important;
    align-self:stretch!important;
  }
}

/* v0.16.105 — Brand / SKU separator as a dedicated grid column */
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row{
  grid-template-columns:minmax(0,1fr) 1px auto!important;
  gap:8px!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row::before{
  content:""!important;
  grid-column:2!important;
  width:1px!important;
  height:16px!important;
  align-self:center!important;
  justify-self:center!important;
  background:#d9dfe2!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row .cvl-product-brand{
  grid-column:1!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row .cvl-product-sku{
  grid-column:3!important;
  padding-left:0!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row .cvl-product-sku::before{
  content:none!important;
}


/* v0.16.106 - remove all internal product card separators */
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row{
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:10px!important;
  border-bottom:0!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row::before,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row .cvl-product-sku::before{
  content:none!important;
  display:none!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row .cvl-product-brand,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row .cvl-product-sku{
  grid-column:auto!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row .cvl-product-sku{
  padding-left:0!important;
  border-left:0!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-status-row{
  border-bottom:0!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-net{
  border-left:0!important;
}

/* v0.16.107 - balanced brand/SKU and centered price stack */
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:10px!important;
  align-items:center!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row .cvl-product-brand,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row .cvl-product-sku{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row .cvl-product-brand{
  overflow:hidden!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-logo{
  max-width:100%!important;
  max-height:28px!important;
  object-fit:contain!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-name,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-sku-text{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-sku{
  justify-content:flex-end!important;
  overflow:hidden!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-sku-text{
  display:block!important;
  text-align:right!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-row{
  min-height:84px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:4px!important;
  text-align:center!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-primary{
  width:100%!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-regular{
  width:auto!important;
  text-align:center!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-net{
  min-width:0!important;
  min-height:0!important;
  padding-left:0!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:baseline!important;
  justify-content:center!important;
  gap:4px!important;
  text-align:center!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-price-row.is-no-price{
  align-items:center!important;
  justify-content:center!important;
}

/* v0.16.108 - centered catalog availability */
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-status-row{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-stock{
  width:100%!important;
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  text-align:center!important;
  white-space:normal!important;
  line-height:1.2!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-card-rating,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-card-no-rating{
  display:none!important;
}

/* v0.16.109 - stock links and three-line titles */
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .woocommerce-loop-product__title{
  min-height:4.2em!important;
  height:4.2em!important;
  max-height:4.2em!important;
  overflow:hidden!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:3!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .woocommerce-loop-product__title:hover{
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  display:block!important;
  -webkit-line-clamp:unset!important;
  position:relative!important;
  z-index:8!important;
  background:#fff!important;
  box-shadow:0 6px 18px rgba(20,34,45,.10)!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-stock-link{
  min-width:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  color:inherit!important;
  text-decoration:none!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-stock-link>span{
  width:7px!important;
  height:7px!important;
  flex:0 0 7px!important;
  border-radius:50%!important;
  background:currentColor!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-stock.is-backorder .cvl-product-stock-link{
  white-space:nowrap!important;
}

/* v0.16.110 - availability request modal */
html.cvl-availability-open,
html.cvl-availability-open body{
  overflow:hidden!important;
}
.cvl-availability-request-button{
  cursor:pointer!important;
}
.cvl-availability-modal[hidden]{
  display:none!important;
}
.cvl-availability-modal{
  position:fixed!important;
  inset:0!important;
  z-index:999999!important;
  display:grid!important;
  place-items:center!important;
  padding:20px!important;
}
.cvl-availability-modal__backdrop{
  position:absolute!important;
  inset:0!important;
  background:rgba(15,23,42,.58)!important;
  backdrop-filter:blur(2px)!important;
}
.cvl-availability-modal__dialog{
  position:relative!important;
  z-index:1!important;
  width:min(100%,520px)!important;
  max-height:calc(100vh - 40px)!important;
  overflow:auto!important;
  padding:28px!important;
  border:1px solid #e4e8eb!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 24px 70px rgba(15,23,42,.24)!important;
  color:#101827!important;
}
.cvl-availability-modal__close{
  position:absolute!important;
  top:10px!important;
  right:12px!important;
  width:34px!important;
  height:34px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#68747e!important;
  font-size:26px!important;
  line-height:1!important;
  cursor:pointer!important;
}
.cvl-availability-modal__content h2{
  margin:0 36px 8px 0!important;
  color:#101827!important;
  font-size:22px!important;
  font-weight:900!important;
}
.cvl-availability-modal__intro{
  margin:0 0 8px!important;
  color:#66727c!important;
  font-size:13px!important;
  line-height:1.5!important;
}
.cvl-availability-modal__product{
  margin:0 0 20px!important;
  color:#101827!important;
  font-size:13px!important;
  font-weight:800!important;
}
.cvl-availability-form{
  display:grid!important;
  gap:13px!important;
}
.cvl-availability-form label{
  display:grid!important;
  gap:6px!important;
}
.cvl-availability-form label>span{
  color:#37434c!important;
  font-size:11px!important;
  font-weight:800!important;
}
.cvl-availability-form input{
  width:100%!important;
  min-height:44px!important;
  padding:10px 12px!important;
  border:1px solid #cfd7dc!important;
  border-radius:5px!important;
  background:#fff!important;
  color:#101827!important;
  font-size:14px!important;
  outline:none!important;
}
.cvl-availability-form input:focus{
  border-color:#009a56!important;
  box-shadow:0 0 0 3px rgba(0,154,86,.12)!important;
}
.cvl-availability-submit{
  min-height:44px!important;
  margin-top:4px!important;
  padding:0 18px!important;
  border:1px solid #009a56!important;
  border-radius:5px!important;
  background:#009a56!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
  cursor:pointer!important;
}
.cvl-availability-submit:hover,
.cvl-availability-submit:focus{
  border-color:#087d4b!important;
  background:#087d4b!important;
}
.cvl-availability-submit:disabled{
  opacity:.65!important;
  cursor:wait!important;
}
.cvl-availability-hp{
  position:absolute!important;
  left:-9999px!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
}
.cvl-availability-form__status{
  min-height:18px!important;
  margin:0!important;
  color:#b84d41!important;
  font-size:12px!important;
  font-weight:700!important;
}
.cvl-availability-success{
  padding-top:8px!important;
}
.cvl-availability-success>p{
  margin:0!important;
  color:#23313c!important;
  font-size:14px!important;
  line-height:1.65!important;
}
.cvl-availability-success__actions{
  margin-top:18px!important;
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px 18px!important;
}
.cvl-availability-success__actions a{
  color:#007267!important;
  font-size:13px!important;
  font-weight:800!important;
  text-decoration:none!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-availability-request-button{
  width:100%!important;
  min-width:0!important;
  height:40px!important;
  min-height:40px!important;
  padding:0 12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid var(--cvl-commercial-green,#009a56)!important;
  border-radius:5px!important;
  background:var(--cvl-commercial-green,#009a56)!important;
  color:#fff!important;
  font-size:9.5px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:.01em!important;
  box-shadow:none!important;
}
@media(max-width:600px){
  .cvl-availability-modal{
    padding:12px!important;
  }
  .cvl-availability-modal__dialog{
    padding:22px 18px!important;
  }
}

/* v0.16.111 - keep AJAX view-cart action in the same row */
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions:has(.added_to_cart){
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) 40px!important;
  gap:6px!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions:has(.added_to_cart) .cvl-cart-icon-button{
  grid-column:1!important;
  min-width:0!important;
  width:100%!important;
  margin:0!important;
  padding:0 8px!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .added_to_cart{
  grid-column:2!important;
  width:100%!important;
  min-width:0!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
  padding:0 8px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  align-self:stretch!important;
  border:1px solid var(--cvl-commercial-green,#009a56)!important;
  border-radius:5px!important;
  background:#fff!important;
  color:var(--cvl-commercial-green,#009a56)!important;
  font-size:8px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:0!important;
  text-align:center!important;
  text-decoration:none!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  box-shadow:none!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .added_to_cart:hover,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .added_to_cart:focus{
  border-color:var(--cvl-commercial-green-dark,#087d4b)!important;
  background:#f5fbf8!important;
  color:var(--cvl-commercial-green-dark,#087d4b)!important;
}

:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions:has(.added_to_cart) .cvl-card-eye-button{
  grid-column:3!important;
  width:40px!important;
  min-width:40px!important;
  margin:0!important;
}

@media(max-width:767.98px){
  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions:has(.added_to_cart){
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) 36px!important;
    gap:5px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions:has(.added_to_cart) .cvl-cart-icon-button,
  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .added_to_cart{
    height:36px!important;
    min-height:36px!important;
    padding:0 5px!important;
    font-size:7px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions:has(.added_to_cart) .cvl-card-eye-button{
    width:36px!important;
    min-width:36px!important;
    height:36px!important;
    min-height:36px!important;
  }
}

@media(max-width:420px){
  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions:has(.added_to_cart){
    gap:4px!important;
  }

  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions:has(.added_to_cart) .cvl-cart-icon-button,
  :is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-actions .added_to_cart{
    padding-inline:4px!important;
    font-size:6.4px!important;
  }
}


/* Single product related products — 8 cards on wide screens */
@media(min-width:1600px){
  body.single-product.woocommerce .cvl-product-after .related.products ul.products{
    grid-template-columns:repeat(8,minmax(0,1fr))!important;
    gap:14px!important;
  }
}

/* Contactos - desktop grid layout, final override after v12. */
@media (min-width:768px){
  body .cvl-contact-page .cvl-contact-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:16px!important;
    align-items:stretch!important;
  }
  body .cvl-contact-page .cvl-contact-locations{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:16px!important;
    align-items:stretch!important;
  }
}
body .cvl-contact-page .cvl-contact-grid > .cvl-contact-card,
body .cvl-contact-page .cvl-contact-locations > .cvl-contact-location{
  box-sizing:border-box;
  min-width:0;
  width:100%;
  height:100%;
}
@media (min-width:768px) and (max-width:1050px){
  body .cvl-contact-page .cvl-contact-grid > .cvl-contact-card{padding:14px}
  body .cvl-contact-page .cvl-contact-grid > .cvl-contact-card a{overflow-wrap:anywhere}
}
@media (max-width:767.98px){
  body .cvl-contact-page .cvl-contact-grid,
  body .cvl-contact-page .cvl-contact-locations{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
  }
}

/* Contactos: keep both location maps visible, aligned and responsive. */
body .cvl-contact-page .cvl-contact-locations > .cvl-contact-location{
  display:flex;
  flex-direction:column;
}
body .cvl-contact-page .cvl-contact-location-map{
  width:100%;
  min-height:320px;
  margin-top:auto;
  border-radius:12px;
  overflow:hidden;
  background:#f2f4f5;
}
body .cvl-contact-page .cvl-contact-location-map iframe{
  display:block;
  width:100%;
  height:320px;
  border:0;
}
@media(max-width:767.98px){
  body .cvl-contact-page .cvl-contact-location-map,
  body .cvl-contact-page .cvl-contact-location-map iframe{
    height:260px;
    min-height:260px;
  }
}


/* v0.16.108 - Marca e SKU legiveis; marca com destino proprio. */
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row .cvl-product-brand{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  min-height:34px!important;
  text-decoration:none!important;
  cursor:pointer;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row a.cvl-product-brand:hover,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row a.cvl-product-brand:focus-visible{
  color:#006c96!important;
  text-decoration:underline!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row a.cvl-product-brand:focus-visible{
  outline:2px solid currentColor;
  outline-offset:2px;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row .cvl-product-brand-name,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row .cvl-product-sku,
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row .cvl-product-sku-text{
  font-size:12px!important;
  line-height:1.45!important;
  font-weight:700!important;
}
:is(.woocommerce,.cvl-v4-products) ul.products li.product:not(.product-category) .cvl-product-brand-sku-row .cvl-product-brand-logo{
  max-height:34px!important;
}
