:root{--cvd-green:#0f3d3a;--cvd-green-dark:#0a2c2a;--cvd-sand:#f6f1e6;--cvd-ink:#25231f;--cvd-muted:#6f685f;--cvd-line:#e6ddcf;--cvd-sale:#a3502a}

/* Portada */
.cvd-hero{position:relative;display:grid;align-items:end;min-height:min(46vh,380px);margin:0 0 28px;overflow:hidden;border-radius:0 0 28px 28px;background:var(--cvd-sand);isolation:isolate}
.cvd-hero__img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 60%}
.cvd-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(15,40,36,0) 10%,rgba(15,40,36,.45) 40%,rgba(15,40,36,.8) 100%)}
.cvd-hero__body{display:grid;gap:10px;max-width:560px;padding:24px 20px 22px;color:#fff}
.cvd-hero__title{margin:0;color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:clamp(30px,8.4vw,54px);font-weight:500;line-height:1.05;letter-spacing:-.01em}
.cvd-hero__text{margin:0;font-size:16px;line-height:1.45;opacity:.95}
.cvd-hero__actions{display:flex;gap:10px;margin-top:6px}
.cvd-hero__actions .cvd-hero__cta{flex:1 1 0;min-width:0;max-width:220px;text-align:center}
@media(max-width:360px){.cvd-hero__actions .cvd-hero__cta{padding:0 10px;font-size:15px}}
.cvd-hero__cta{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:0 18px;border-radius:999px;background:var(--cvd-sand);color:var(--cvd-green)!important;font-weight:800;font-size:16px;text-decoration:none!important;box-shadow:0 10px 24px rgba(0,0,0,.18)}
.cvd-hero__cta:hover,.cvd-hero__cta:focus-visible{background:#fff}
.cvd-hero__cta--ghost{background:transparent;color:#fff!important;border:1.5px solid rgba(255,255,255,.85);box-shadow:none}
.cvd-hero__cta--ghost:hover,.cvd-hero__cta--ghost:focus-visible{background:rgba(255,255,255,.14)}
.cvd-hero__cta:focus-visible{outline:3px solid #fff;outline-offset:3px}
.cvd-hero__trust{margin:2px 0 0;font-size:13px;opacity:.9}
@media(min-width:821px){.cvd-hero{min-height:520px;border-radius:28px;margin:20px auto 36px}.cvd-hero__body{padding:48px}}

/* Precios y ofertas con los colores de la marca */
.woocommerce div.product .summary .price,.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--cvd-green)!important;font-weight:800}
.woocommerce div.product .summary .price del,.woocommerce ul.products li.product .price del{color:var(--cvd-muted)!important;font-weight:500;opacity:.8}
.woocommerce div.product .summary .price ins,.woocommerce ul.products li.product .price ins{text-decoration:none;color:var(--cvd-sale)!important}
.woocommerce span.onsale.cvd-sale-badge{min-width:0;min-height:0;padding:5px 10px;border-radius:999px;background:var(--cvd-sale);color:#fff;font-size:12px;font-weight:800;line-height:1.2}

/* Disponibilidad */
.woocommerce div.product .stock{font-weight:700;color:#2e7d4f}
.woocommerce div.product .stock.out-of-stock{color:#9a3b2f}

/* Garantías junto al botón */
.cvd-trust{display:grid;gap:8px;margin:16px 0 4px;padding:14px 16px;list-style:none;border:1px solid var(--cvd-line);border-radius:16px;background:#fbf8f2;color:var(--cvd-ink);font-size:14px;line-height:1.4}
.cvd-trust li{display:flex;gap:8px;align-items:baseline;margin:0}
.cvd-trust li>span{color:var(--cvd-green);font-weight:800}
.cvd-trust a,.cvd-trust__ask{color:var(--cvd-green);font-weight:800;text-decoration:underline;text-underline-offset:2px}
.cvd-trust__ask{margin:0;padding:0;border:0;background:none;font:inherit;cursor:pointer}

/* Botones de carrito y checkout */
.wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button,.woocommerce a.checkout-button,.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,.woocommerce div.product form.cart .single_add_to_cart_button{background:var(--cvd-green)!important;border-color:var(--cvd-green)!important;color:#fff!important;border-radius:999px!important;min-height:52px;font-weight:800!important}
.wc-block-cart__submit-button:hover,.wc-block-components-checkout-place-order-button:hover,.woocommerce a.checkout-button:hover,.woocommerce div.product form.cart .single_add_to_cart_button:hover{background:var(--cvd-green-dark)!important}

/* Barra fija de compra (móvil) */
.cvd-buybar{display:none}
@media(max-width:820px){
 .cvd-buybar{position:fixed;left:0;right:0;bottom:0;z-index:9997;display:flex;align-items:center;gap:12px;padding:10px max(14px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left));border-top:1px solid var(--cvd-line);background:rgba(255,253,249,.97);box-shadow:0 -8px 24px rgba(37,35,31,.08);animation:cvdBarIn .2s ease-out}
 .cvd-buybar[hidden]{display:none}
 body.cvd-customer-navigation-visible .cvd-buybar{bottom:calc(72px + env(safe-area-inset-bottom,0px));padding-bottom:10px}
 .cvd-buybar__info{display:grid;flex:1;min-width:0}
 .cvd-buybar__name{overflow:hidden;color:var(--cvd-ink);font-size:13px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
 .cvd-buybar__price{color:var(--cvd-green);font-size:15px;font-weight:800}
 .cvd-buybar__price del{color:var(--cvd-muted);font-size:12px;font-weight:500}
 .cvd-buybar__price ins{text-decoration:none}
 .cvd-buybar__button{flex:0 0 auto;min-height:48px;margin:0;padding:0 20px;border:0;border-radius:999px;background:var(--cvd-green);color:#fff;font:inherit;font-size:15px;font-weight:800;cursor:pointer}
 .cvd-buybar__button:focus-visible{outline:3px solid rgba(15,61,58,.4);outline-offset:2px}
 /* Curru sube por encima de la barra para no tapar el botón */
 .cvd-buybar-on .cvd-curru-nudge{display:none!important}
 .single-product .cvd-curru-nudge,.home .cvd-curru-nudge,.post-type-archive-product .cvd-curru-nudge,.tax-product_cat .cvd-curru-nudge{display:none!important}
}
@keyframes cvdBarIn{from{transform:translateY(100%)}to{transform:none}}

/* Ventana de ofertas */
.cvd-offers{position:fixed;inset:0;z-index:10000;display:grid;align-items:end;justify-items:center}
.cvd-offers[hidden]{display:none}
.cvd-offers__backdrop{position:absolute;inset:0;background:rgba(15,40,36,.45)}
.cvd-offers__panel{position:relative;box-sizing:border-box;width:min(560px,100%);max-height:88vh;overflow:auto;padding:22px 18px calc(20px + env(safe-area-inset-bottom,0px));border-radius:24px 24px 0 0;background:#fffdf9;color:var(--cvd-ink);box-shadow:0 -20px 50px rgba(0,0,0,.2);animation:cvdBarIn .25s ease-out}
.cvd-offers__close{position:absolute;top:10px;right:10px;width:44px;height:44px;margin:0;padding:0;border:0;border-radius:50%;background:var(--cvd-sand);color:var(--cvd-ink);font-size:26px;line-height:1;cursor:pointer}
.cvd-offers__eyebrow{margin:0 0 4px;color:var(--cvd-sale);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.cvd-offers__title{margin:0 48px 16px 0;font-family:Georgia,"Times New Roman",serif;font-size:24px;font-weight:500;line-height:1.15;color:var(--cvd-green)}
.cvd-offers__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.cvd-offers__item{display:grid;gap:6px;color:var(--cvd-ink)!important;text-decoration:none!important}
.cvd-offers__media{position:relative;display:block;overflow:hidden;border-radius:14px;background:#f4efe6}
.cvd-offers__media img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover}
.cvd-offers__badge{position:absolute;top:8px;left:8px;padding:4px 9px;border-radius:999px;background:var(--cvd-sale);color:#fff;font-size:12px;font-weight:800}
.cvd-offers__name{font-size:13.5px;font-weight:700;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cvd-offers__price{font-size:14px;font-weight:800;color:var(--cvd-sale)}
.cvd-offers__price del{color:var(--cvd-muted);font-weight:500}
.cvd-offers__price ins{text-decoration:none}
.cvd-offers__cta{display:flex;align-items:center;justify-content:center;min-height:50px;margin-top:16px;border-radius:999px;background:var(--cvd-green);color:#fff!important;font-weight:800;text-decoration:none!important}
.cvd-offers a:focus-visible,.cvd-offers button:focus-visible{outline:3px solid rgba(15,61,58,.45);outline-offset:2px}
.cvd-offers-open body{overflow:hidden}
@media(min-width:821px){.cvd-offers{align-items:center}.cvd-offers__panel{border-radius:24px;padding:28px}.cvd-offers__grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.cvd-buybar,.cvd-offers__panel{animation:none}}

/* Botones flotantes: Curru encima de WhatsApp, misma columna, mismo tamaño */
:root{--cvd-fab:56px;--cvd-fab-gap:12px;--cvd-fab-right:20px;--cvd-fab-base:24px}
.cv-whatsapp,.cvd-assistant-launcher{right:var(--cvd-fab-right)!important;width:var(--cvd-fab)!important;height:var(--cvd-fab)!important;border-radius:50%!important;box-shadow:0 8px 22px rgba(15,61,58,.22),0 2px 6px rgba(15,61,58,.12)!important;transition:bottom .2s ease,transform .15s ease}
.cv-whatsapp{position:fixed!important;bottom:var(--cvd-fab-base)!important;z-index:61!important;box-sizing:border-box;border:3px solid #fff!important;background:#25d366!important;color:#fff!important}
.cv-whatsapp svg,.cv-whatsapp img{width:28px;height:28px}
.cvd-assistant-launcher{bottom:calc(var(--cvd-fab-base) + var(--cvd-fab) + var(--cvd-fab-gap))!important;border:3px solid #fff!important;outline:2px solid var(--cvd-green);outline-offset:-1px}
.cvd-curru-nudge{right:var(--cvd-fab-right)!important;bottom:calc(var(--cvd-fab-base) + 2 * var(--cvd-fab) + 2 * var(--cvd-fab-gap))!important}
.cv-whatsapp:active,.cvd-assistant-launcher:active{transform:scale(.94)}
@media(max-width:820px){:root{--cvd-fab:52px;--cvd-fab-gap:10px;--cvd-fab-right:16px}body.cvd-customer-navigation-visible{--cvd-fab-base:calc(92px + env(safe-area-inset-bottom,0px))}html.cvd-buybar-on body{--cvd-fab-base:calc(162px + env(safe-area-inset-bottom,0px))}}
@media(prefers-reduced-motion:reduce){.cv-whatsapp,.cvd-assistant-launcher{transition:none}}
/* Carrito, pago y pedido recibido sin botones flotantes encima del total (como Colo Shop). */
body.woocommerce-cart .cv-whatsapp,body.woocommerce-checkout .cv-whatsapp{display:none!important}
/* Carrito móvil ordenado: nombre limpio, sin descripción genérica y sugerencias en 2 columnas. */
.wc-block-cart .wc-block-components-product-name{color:var(--cvd-ink)!important;font-weight:700;text-decoration:none!important;line-height:1.3}
.wc-block-cart .wc-block-components-product-metadata__description{display:none}
.wc-block-cart .wc-block-cart-item__prices{color:var(--cvd-muted);font-size:14px}
.wc-block-cart .wc-block-cart-item__total{color:var(--cvd-green);font-weight:800}
.wc-block-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{color:var(--cvd-green);font-weight:800}
.woocommerce-cart :is(.wc-block-grid__products,.wc-block-product-template){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px;margin:0!important;padding:0!important;list-style:none}
.woocommerce-cart :is(.wc-block-grid__products,.wc-block-product-template)>:nth-child(n+5){display:none!important}
.woocommerce-cart :is(.wc-block-grid__product,.wc-block-product){width:auto!important;max-width:none!important;flex:none!important;margin:0!important;padding:0!important;border:0!important;text-align:left!important;display:flex;flex-direction:column;gap:6px}
.woocommerce-cart :is(.wc-block-grid__product,.wc-block-product) img{width:100%!important;aspect-ratio:1;object-fit:cover;border-radius:14px;background:var(--cvd-sand);margin:0!important}
.woocommerce-cart :is(.wc-block-grid__product-title,.wp-block-post-title){margin:0!important;font-size:14px!important;font-weight:700;line-height:1.3;text-align:left!important}
.woocommerce-cart :is(.wc-block-grid__product-title,.wp-block-post-title) a{color:var(--cvd-ink)!important;text-decoration:none!important}
.woocommerce-cart :is(.wc-block-grid__product-price,.wc-block-components-product-price){margin:0!important;color:var(--cvd-green);font-size:15px;font-weight:800;text-align:left!important}
.woocommerce-cart :is(.wc-block-grid__product-add-to-cart,.wp-block-button.wc-block-components-product-button){margin:auto 0 0!important;text-align:left!important;width:100%}
.woocommerce-cart :is(.wc-block-grid__product-add-to-cart,.wc-block-components-product-button) :is(a,button){display:flex!important;align-items:center;justify-content:center;width:100%;box-sizing:border-box;min-height:40px;margin:0!important;padding:8px 10px!important;border-radius:999px!important;background:var(--cvd-green)!important;border-color:var(--cvd-green)!important;color:#fff!important;font-size:13px!important;font-weight:800}
.woocommerce-cart .wc-block-grid__product-onsale{font-size:11px;top:8px;left:8px;right:auto}
.woocommerce-cart :is(.wp-block-woocommerce-cart-cross-sells-block,.wp-block-post-content,.entry-content)>h2{margin:28px 0 14px!important;font-size:20px!important;line-height:1.25;text-align:left!important;color:var(--cvd-green)}
.woocommerce-cart .wc-block-grid__product-link{display:flex;flex-direction:column;gap:6px;color:var(--cvd-ink)!important;text-decoration:none!important}
