/*
Theme Name: Estrategas Olfativos
Theme URI: https://www.estrategasolfativos.com/
Description: Tema hijo de Blocksy para Estrategas Olfativos. Conserva la identidad visual del sitio.
Author: Luis Fernando Alvarez A
Template: blocksy
Version: 1.0.0
Text Domain: estrategas-olfativos-child
License: GNU General Public License v3 or later.
*/

:root{
  --eo-acento:#23C0A8;
  --eo-acento-oscuro:#0C6E63;
  --eo-acento-texto:#04302A;
  --eo-acento2:#E4614A;
  --eo-acento2-texto:#B93A20;
  --eo-oscuro:#12303C;
  --eo-crema:#FEFBF9;
  --eo-primario:#474E55;
  --eo-secundario:#F0DDD3;
  --eo-texto:#474E55;
  --eo-beige:#FBEDE6;
  --eo-overlay:rgba(0,0,0,.8);
}


/* === ANULA-KIT-ELEMENTOR ===
   El kit de Elementor (.elementor-kit-183 a) tiene especificidad (0,1,1)
   y pisa los botones de Blocksy (.ct-button = 0,1,0).
   Estas reglas (0,2,0) devuelven el control a las variables del tema. */
.ct-header .ct-button,
.ct-header-cta .ct-button,
.ct-footer .ct-button,
.ct-panel .ct-button{
  font-family: var(--theme-button-font-family, var(--theme-font-family));
  color: var(--theme-button-text-initial-color);
}
.ct-header .ct-button:hover,
.ct-header-cta .ct-button:hover,
.ct-footer .ct-button:hover,
.ct-panel .ct-button:hover{
  color: var(--theme-button-text-hover-color);
}
/* Los botones que son enlaces (<a class="button">: Finalizar compra, Ver carrito)
   heredaban Questrial de .elementor-kit-183 a (0,1,1). (0,2,1) los devuelve a Work Sans. */
.elementor-kit-183 a.button,
.elementor-kit-183 a.checkout-button{
  font-family: var(--theme-button-font-family, var(--theme-font-family));
}

/* === PIE-ESTRATEGAS ===
   Reproduce el pie original (Elementor) con los widgets de Blocksy.
   Selectores con .ct-footer para ganar al kit de Elementor (0,1,1). */
.ct-footer .widget-title,
.ct-footer .widget .widget-title{
  font-family:'Work Sans',sans-serif;font-size:16px;font-weight:400;
  color:#474E55;text-transform:uppercase;letter-spacing:.89px;margin-bottom:18px;
}
.ct-footer .eo-footer-links{list-style:none;margin:0;padding:0;}
.ct-footer .eo-footer-links li{margin:0 0 10px;}
.ct-footer .eo-footer-links a{
  font-family:'Work Sans',sans-serif;font-size:16px;color:#474E55;text-decoration:none;
}
.ct-footer .eo-footer-links a:hover{color:#0C6E63;}
/* Formulario de suscripcion: campo con solo linea inferior */
.ct-footer .eo-newsletter-wrap .wpforms-field{padding:0 0 12px;}
.ct-footer .eo-newsletter-wrap .wpforms-field-label{display:none;}
.ct-footer .eo-newsletter-wrap input[type=email]{
  background:transparent;border:0;border-bottom:1px solid #474E55;border-radius:0;
  height:40px;padding:0;width:100%;max-width:100%;box-shadow:none;
  font-family:'Work Sans',sans-serif;font-size:16px;color:#474E55;
}
.ct-footer .eo-newsletter-wrap input[type=email]:focus{border-bottom-color:#0C6E63;outline:0;}
.ct-footer .eo-newsletter-wrap .wpforms-field-checkbox label,
.ct-footer .eo-newsletter-wrap .wpforms-field-checkbox .wpforms-field-label-inline{
  font-family:'Work Sans',sans-serif;font-size:13px;color:#474E55;
}
.ct-footer .eo-newsletter-wrap button[type=submit],
.ct-footer .eo-newsletter-wrap .wpforms-submit{
  background:#22262B;color:#fff;border:0;border-radius:0;
  font-family:"Work Sans",sans-serif;font-size:15px;font-weight:500;
  padding:12px 28px;cursor:pointer;
}
.ct-footer .eo-newsletter-wrap button[type=submit]:hover,
.ct-footer .eo-newsletter-wrap .wpforms-submit:hover{background:#23C0A8;color:#fff;}
/* Instagram y metodos de pago */
.ct-footer .eo-footer-social{margin:18px 0 12px;}
.ct-footer .eo-footer-social a{color:#474E55;display:inline-block;}
.ct-footer .eo-footer-social a:hover{color:#0C6E63;}
.ct-footer .eo-footer-pago{margin:0;}
.ct-footer .eo-footer-pago img{max-width:220px;height:auto;}

/* === VARIABLES-WPFORMS ===
   WPForms gana por especificidad (0,4,2) con
   div.wpforms-container-full button[type=submit]:not(:hover):not(:active).
   En vez de escalar selectores, se usan sus propias variables. */
.ct-footer .wpforms-container-full,
.ct-footer div.wpforms-container-full{
  --wpforms-button-background-color:#22262B;
  --wpforms-button-background-color-alt:#22262B;
  --wpforms-button-text-color:#FFFFFF;
  --wpforms-button-border-radius:0px;
  --wpforms-button-border-color:#22262B;
  --wpforms-field-border-radius:0px;
  --wpforms-field-border-color:#474E55;
  --wpforms-field-text-color:#474E55;
  --wpforms-label-color:#474E55;
  --wpforms-label-sublabel-color:#474E55;
}
.ct-footer div.wpforms-container-full button[type="submit"]:hover{
  background:#23C0A8;border-color:#0C6E63;color:#fff;
}

/* === FICHA-PRODUCTO ===
   Reproduce la ficha original de Elementor: titulo en mayusculas,
   descripcion completa en la columna de compra y proporciones 39/43. */
.single-product .product_title{
  font-family:'Fraunces',Georgia,serif;font-size:27px;font-weight:400;color:#474E55;
  text-transform:uppercase;letter-spacing:.89px;margin:0 0 10px;
}
.single-product .product-entry-wrapper{gap:10%;align-items:flex-start;}
.single-product .product-entry-wrapper > .woocommerce-product-gallery{flex:0 0 43%;max-width:43%;}
.single-product .product-entry-wrapper > .summary{flex:0 0 47%;max-width:47%;}
.single-product .eo-descripcion{
  font-family:'Work Sans',sans-serif;font-size:14px;line-height:1.6;color:#474E55;
  margin:14px 0 18px;
}
.single-product .eo-descripcion p{margin:0 0 10px;font-size:14px;}
.single-product .eo-descripcion strong{color:#474E55;font-weight:400;}
.single-product .eo-descripcion ul{margin:0 0 10px;padding-left:18px;}
/* La ficha original no mostraba SKU ni categoria */
.single-product .product_meta{display:none;}
.eo-pagos{margin:18px 0 0;}
.eo-pagos img{max-width:240px;height:auto;}
.eo-testimonios-seccion{margin:60px 0 0;padding:40px 0 0;border-top:1px solid #F0DDD3;}
.eo-testimonios-seccion .eo-testimonios-titulo{
  font-family:'Fraunces',Georgia,serif;font-size:26px;font-weight:400;color:#474E55;
  letter-spacing:.89px;text-align:center;margin:0 0 32px;
}
.eo-testimonios .eo-testimonio{border:0;border-left:2px solid #23C0A8;margin:0;padding:0 0 0 16px;}
.eo-testimonios .eo-testimonio p{font-family:'Work Sans',sans-serif;font-size:15px;line-height:1.5;color:#474E55;margin:0 0 10px;}
.eo-testimonios .eo-testimonio cite{font-family:"Work Sans",sans-serif;font-size:13px;font-weight:500;color:#474E55;font-style:normal;}
@media (max-width:999px){
  .single-product .product-entry-wrapper{gap:24px;}
  .single-product .product-entry-wrapper > .woocommerce-product-gallery,
  .single-product .product-entry-wrapper > .summary{flex:0 0 100%;max-width:100%;}
  .eo-testimonios{gap:24px;}
}

.single-product .eo-precio-repetido{margin:8px 0 6px;}
.single-product .eo-precio-repetido .price{font-family:'Fraunces',Georgia,serif;color:#0C6E63;}

/* Blocksy pinta el extracto corto desde su propio sistema de elementos,
   no por el hook de WooCommerce, asi que no basta con remove_action.
   La ficha original no lo mostraba. */
.single-product .summary > .woocommerce-product-details__short-description{display:none;}

/* Venta cruzada bajo la ficha */
.eo-cruzada{margin:56px 0 0;}
.eo-cruzada-titulo{font-family:'Fraunces',Georgia,serif;font-size:26px;font-weight:400;color:#474E55;letter-spacing:.89px;text-transform:uppercase;margin:0 0 24px;}

/* === TARJETA-PRODUCTO ===
   Medido en la rejilla original: titulo Questrial 29px #474E55 sin mayusculas,
   letter-spacing .89px; precio 16px en turquesa. */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product .entry-title{
  font-family:'Fraunces',Georgia,serif;font-size:29px;font-weight:400;color:#474E55;
  text-transform:none;letter-spacing:.89px;line-height:1.2;margin:14px 0 6px;
}
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .woocommerce-Price-amount{
  font-family:'Fraunces',Georgia,serif;font-size:16px;color:#0C6E63;
}
.woocommerce ul.products li.product{text-align:center;}
@media (max-width:1100px){
  .woocommerce ul.products li.product .woocommerce-loop-product__title,
  .woocommerce ul.products li.product h2{font-size:22px;}
}

/* Descripcion corta de la tarjeta: en el original era #474E55 */
.woocommerce ul.products li.product .entry-excerpt{
  font-family:'Work Sans',sans-serif;font-size:14px;line-height:1.45;color:#474E55;
  margin:6px 0 0;text-align:center;
}

/* === PORTADA-ANCHO-COMPLETO ===
   El ancho lo fija la variable --theme-container-width (88vw) sobre el <article>,
   no sobre .ct-container. Hay que sobrescribir la variable en el articulo. */
.home article.page,
.page-id-274 article.page,
.home .ct-container,
.page-id-274 .ct-container{
  --theme-container-width:100%;
  width:100%;max-width:100%;padding-left:0;padding-right:0;
}
.home .entry-content,
.page-id-274 .entry-content{max-width:100%;width:100%;}
/* El pie mantiene su contenedor normal */
.home .ct-footer .ct-container,
.page-id-274 .ct-footer .ct-container{--theme-container-width:min(100%, calc(88vw - 0px * 2));width:var(--theme-container-width);}

/* El plugin Variation Swatches inyecta los selectores de tamano en las
   tarjetas del archivo. La tarjeta original no los tenia: solo se eligen
   dentro de la ficha del producto. */
.woocommerce ul.products li.product .cfvsw_variations_form,
.woocommerce ul.products li.product .variations_form{display:none!important;}

/* === LEGIBILIDAD-MOVIL ===
   Texto mas grande y mas aireado en pantallas pequenas.
   No toca colores ni tipografias: solo tamano, interlineado y espacio. */
@media (max-width:767px){
  body{font-size:15px;line-height:1.6;}
  p{line-height:1.6;}
  /* Tarjetas de producto */
  .woocommerce ul.products li.product .woocommerce-loop-product__title,
  .woocommerce ul.products li.product h2{font-size:18px;line-height:1.3;margin:12px 0 6px;}
  .woocommerce ul.products li.product .price,
  .woocommerce ul.products li.product .woocommerce-Price-amount{font-size:15px;}
  .woocommerce ul.products li.product .entry-excerpt{font-size:14px;line-height:1.5;margin-top:8px;}
  .woocommerce ul.products{gap:22px 16px;}
  /* Ficha de producto */
  .single-product .product_title{font-size:24px;line-height:1.3;}
  .single-product .eo-descripcion,
  .single-product .eo-descripcion p,
  .single-product .eo-descripcion li{font-size:15px;line-height:1.65;}
  .single-product .eo-descripcion p{margin:0 0 12px;}
  .single-product .eo-descripcion ul{padding-left:20px;}
  .single-product .eo-descripcion li{margin:0 0 6px;}
  /* Testimonios */
  .eo-testimonios .eo-testimonio p{font-size:15px;line-height:1.6;}
  .eo-testimonios .eo-testimonio cite{font-size:14px;}
  .eo-testimonios-seccion .eo-testimonios-titulo,
  .eo-cruzada-titulo{font-size:22px;line-height:1.35;}
  /* Titulares de seccion en la portada */
  .home .elementor .elementor-heading-title{font-size:22px;line-height:1.35;}
  /* Pie: mas aire entre enlaces para el dedo */
  .ct-footer .eo-footer-links li{margin:0 0 14px;}
  .ct-footer .eo-footer-links a{font-size:16px;line-height:1.6;display:inline-block;padding:2px 0;}
  .ct-footer .widget-title{font-size:16px;line-height:1.5;margin-bottom:14px;}
  .ct-footer .eo-newsletter-wrap input[type=email]{font-size:16px;}
}

/* === CONTRASTE ===
   Paleta B (2026-09-22): #474E55 sobre #FEFBF9 da 8,2:1, muy por encima del minimo.
   #474E55 da 5,10:1. Solo se oscurece el texto de lectura;
   los titulares grandes se quedan con el gris de marca. */
.single-product .eo-descripcion,
.single-product .eo-descripcion p,
.single-product .eo-descripcion li,
.eo-testimonios .eo-testimonio p,
.ct-footer .eo-footer-links a,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2{color:#474E55;}
.ct-footer .eo-footer-links a:hover{color:#0C6E63;}

/* === AJUSTES-TARJETA-V2 ===
   El 87% va SOLO en el figure. El .ct-media-container que lleva dentro
   debe ir al 100%, o el 87% se aplica dos veces (324 -> 282 -> 245). */
.woocommerce ul.products li.product figure{
  width:87%;margin:0 auto;border-radius:30px 0 30px 30px;overflow:hidden;
  aspect-ratio:1/1;height:auto;padding-bottom:0;display:block;
}
.woocommerce ul.products li.product figure .ct-media-container{
  width:100%;height:100%;aspect-ratio:1/1;padding-bottom:0;display:block;
  border-radius:30px 0 30px 30px;overflow:hidden;margin:0;
}
.woocommerce ul.products li.product .ct-media-container::before{display:none;}
.woocommerce ul.products li.product figure img{
  width:100%;height:100%;aspect-ratio:1/1;
  object-fit:cover;object-position:50% 100%;
  border-radius:30px 0 30px 30px;display:block;max-width:100%;
}
@media (max-width:767px){
  .woocommerce ul.products,
  .woocommerce ul.products[data-products]{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:22px 16px;
  }
  .woocommerce ul.products li.product figure{width:100%;border-radius:18px 0 18px 18px;}
  .woocommerce ul.products li.product figure .ct-media-container,
  .woocommerce ul.products li.product figure img{border-radius:18px 0 18px 18px;}
}

/* === SIN-TITULOS-DE-PAGINA ===
   El original no mostraba el titulo de la pagina: cada pagina ya lleva
   su propio titular en el contenido. Pero el bloque hero de Blocksy tambien
   contiene las MIGAS DE PAN en las fichas de producto, asi que no se puede
   ocultar entero: se oculta solo el h1 y se deja el bloque sin fondo. */
.hero-section h1.page-title,
.hero-section > figure{display:none;}
.hero-section{
  background:none;background-color:transparent;
  padding-top:0;padding-bottom:0;min-height:0;
}
.hero-section .entry-header{padding-top:0;padding-bottom:0;}
/* Migas visibles y con aire, como en la ficha original */
.hero-section .ct-breadcrumbs{
  display:block;font-family:'Work Sans',sans-serif;font-size:14px;color:#474E55;
  padding:18px 0 0;
}
.hero-section .ct-breadcrumbs a{color:#474E55;text-decoration:none;}
.hero-section .ct-breadcrumbs a:hover{color:#0C6E63;}
/* El carrusel de la portada, a todo el ancho */
.home .elementor-widget-image-carousel .swiper-slide img{width:100%;height:auto;object-fit:cover;}
.home .elementor-image-carousel-wrapper{max-width:100%;}

/* === PAGINA 404 === Replica la original: titular 42px, texto, imagen y boton. */
.eo-404{text-align:center;padding:60px 20px 80px;max-width:760px;margin:0 auto;}
.eo-404-titulo{font-family:'Fraunces',Georgia,serif;font-size:42px;font-weight:400;color:#22262B;letter-spacing:.89px;text-transform:uppercase;margin:0 0 18px;line-height:1.2;}
.eo-404-texto{font-family:'Work Sans',sans-serif;font-size:16px;line-height:1.7;color:#474E55;margin:0 0 30px;}
.eo-404-img{margin:0 0 30px;}
.eo-404-img img{max-width:29%;height:auto;border-radius:30px 0 30px 30px;}
.eo-404-cta{margin:0;}
.eo-404-boton{display:inline-block;background:#23C0A8;color:#fff;text-decoration:none;font-family:"Work Sans",sans-serif;font-size:14px;font-weight:600;letter-spacing:.28px;padding:14px 28px;border-radius:2px;}
.eo-404-boton:hover{background:#0C6E63;color:#fff;}
@media (max-width:767px){
  .eo-404{padding:40px 20px 60px;}
  .eo-404-titulo{font-size:28px;}
  .eo-404-texto{font-size:15px;}
  .eo-404-img img{max-width:60%;border-radius:18px 0 18px 18px;}
}


/* === PALETA-B-TIPOGRAFIA ===
   Algo deja el <body> en Questrial 14px y no aparece en ninguna hoja legible
   del sitio (ni Blocksy, ni el tema hijo, ni los <style> en linea): debe venir
   de una hoja bloqueada por CORS. En vez de seguir persiguiendola se fija aqui,
   que carga en prioridad 100. Hizo falta !important: la regla fantasma le gana a un
   selector 'body' a secas, y se comprobo inyectando la misma regla con !important
   desde la consola. Medido el 2026-09-22. */
body{font-family:'Work Sans',sans-serif!important;font-size:17px!important;line-height:1.6!important;color:#474E55!important;}
h1,h2,h3,h4,h5,h6{font-family:'Fraunces',Georgia,serif;letter-spacing:-.02em;}
/* El titulo de la tarjeta de producto es un enlace que heredaba del body */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
	font-family:'Fraunces',Georgia,serif;color:#22262B;}
@media (max-width:767px){body{font-size:16px!important;}}


/* === PALETA-B-CONTRASTE ===
   Medido en vivo el 2026-09-22: el turquesa #23C0A8 como texto sobre blanco da
   2,29:1 y el minimo AA es 4,5:1. Los precios pasan al turquesa oscuro #0C6E63
   (5,4:1). El importe del carrito y el texto de los botones arrastraban grises
   de la paleta anterior. */
.woocommerce .price,.woocommerce .price bdi,.woocommerce-Price-amount,
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .price bdi,
.woocommerce div.product p.price,.woocommerce div.product p.price bdi{
	color:#0C6E63!important;}
.ct-header [data-id="cart"] bdi,.ct-header [data-id="cart"] .woocommerce-Price-amount,
.ct-cart-item .ct-amount{color:#474E55!important;}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce .button.wc-backward{color:#04302A!important;}


/* === PALETA-B-CHECKOUT ===
   14 campos visibles, no 48: la cifra vieja contaba tambien los de envio, que
   estan ocultos tras la casilla. Aqui solo se arregla contraste y presentacion;
   el formulario lo sigue montando WooCommerce. */
.woocommerce button.button,.woocommerce input.button,.woocommerce a.button,
.woocommerce button.button.alt,.woocommerce a.button.alt,
.wc-block-components-button,.woocommerce .wc-proceed-to-checkout a.button{
	color:#04302A!important;}
.woocommerce button.button:hover,.woocommerce a.button:hover{color:#fff!important;}
.woocommerce-form-login-toggle .showlogin,.woocommerce-info .showcoupon,
.woocommerce-form-coupon-toggle .showcoupon{color:#0C6E63!important;font-weight:600;text-decoration:underline;}
.woocommerce-shipping-fields > h3 span,#ship-to-different-address span{color:#474E55!important;}
@media (min-width:900px){
	.woocommerce-checkout form.checkout.woocommerce-checkout{display:grid;
		grid-template-columns:1.25fr 1fr;gap:46px;align-items:start;}
	.woocommerce-checkout form.checkout #customer_details{grid-column:1;}
	.woocommerce-checkout form.checkout h3#order_review_heading{grid-column:2;margin-top:0;}
	.woocommerce-checkout form.checkout #order_review{grid-column:2;position:sticky;top:20px;}
}
.woocommerce-checkout #order_review{background:#FBEDE6;border-radius:30px 0 30px 30px;padding:28px 30px;}
.woocommerce-checkout #order_review_heading{font-family:'Fraunces',Georgia,serif;font-size:24px;}
.woocommerce-checkout .shop_table{background:transparent;border:0;}
.woocommerce-checkout .shop_table th,.woocommerce-checkout .shop_table td{border-color:#E9D5C8;}
.woocommerce-checkout .order-total .amount{font-family:'Fraunces',Georgia,serif;font-size:24px;color:#0C6E63;}
.woocommerce-checkout .form-row label{font-size:14.5px;font-weight:500;color:#22262B;}
.woocommerce-checkout .form-row input.input-text,.woocommerce-checkout .form-row textarea,
.woocommerce-checkout .select2-selection{min-height:48px;border:1px solid #E3CABD!important;
	border-radius:2px!important;font-size:15.5px;background:#fff;}
.woocommerce-checkout .form-row input.input-text:focus{outline:2px solid #0C6E63;outline-offset:1px;}
.woocommerce-checkout #payment{background:transparent;border-radius:0;}
.woocommerce-checkout #payment ul.payment_methods{border:0;padding:0;}
.woocommerce-checkout #payment li.wc_payment_method{background:#fff;border:1px solid #E3CABD;
	border-radius:4px;margin-bottom:10px;padding:4px 14px;list-style:none;}
.woocommerce-checkout #payment li.wc_payment_method > label{font-size:15.5px;font-weight:500;padding:12px 0;}
.woocommerce-checkout #payment div.payment_box{background:#F0FBF9;border-radius:4px;font-size:14px;color:#22262B;}
.woocommerce-checkout #payment div.payment_box:before{display:none;}
.woocommerce-checkout #place_order{width:100%;min-height:56px;font-size:16px;border-radius:2px;}


/* === PALETA-B-MENU ===
   Los enlaces del menu daban 4,17:1 sobre la crema, justo por debajo del
   minimo de 4,5. Medido el 2026-09-22. */
.ct-header .ct-menu-link,.ct-header [data-id="menu"] > ul > li > a{color:#474E55;}
.ct-header .ct-menu-link:hover,.ct-header .current-menu-item > .ct-menu-link{color:#0C6E63;}


/* === PALETA-B-MIS-DIFUSORES === */
.eo-mis-intro{font-size:15.5px;color:#474E55;margin:0 0 22px;}
.eo-mis-g{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.eo-mi{display:flex;flex-direction:column;background:#fff;border:1px solid #F0DDD3;border-radius:26px 0 26px 26px;overflow:hidden;}
.eo-mi-im{background:#FBEDE6;display:flex;align-items:center;justify-content:center;padding:14px;}
.eo-mi-im img{width:100%;height:auto;max-width:160px;display:block;}
.eo-mi-bd{padding:18px 20px 20px;flex:1;display:flex;flex-direction:column;}
.eo-mi-bd h3{font-family:'Fraunces',Georgia,serif;font-size:20px;font-weight:500;margin:0 0 5px;color:#22262B;}
.eo-mi-bd .meta{font-size:13px;color:#6B655E;line-height:1.5;margin:0 0 16px;}
.eo-mi-acts{margin-top:auto;display:flex;flex-direction:column;gap:9px;}
.eo-mis-btn{display:flex;align-items:center;justify-content:center;min-height:44px;padding:11px 16px;border-radius:2px;font-family:'Work Sans',sans-serif;font-size:14px;font-weight:600;text-decoration:none;border:1px solid transparent;}
.eo-mis-btn.p{background:#23C0A8;color:#04302A;}
.eo-mis-btn.p:hover{background:#0C6E63;color:#fff;}
.eo-mis-btn.s{background:transparent;border-color:#E3CABD;color:#22262B;}
.eo-mis-btn.s:hover{border-color:#22262B;}
.eo-mis-vacio{padding:34px 30px;background:#FBEDE6;border-radius:26px 0 26px 26px;text-align:center;}
.eo-mis-vacio h3{font-family:'Fraunces',Georgia,serif;font-size:22px;font-weight:500;margin:0 0 10px;color:#22262B;}
.eo-mis-vacio p{font-size:15px;color:#474E55;margin:0 0 20px;}
.eo-mis-vacio .eo-mis-btn{display:inline-flex;}
@media (max-width:860px){.eo-mis-g{grid-template-columns:1fr;}}


/* === PALETA-B-BOTONES-CABECERA ===
   El CTA de la cabecera y los botones del carrito flotante salian con texto
   claro sobre el turquesa: 2,29:1 y 1,82:1. Con #04302A suben a 6,3. */
.ct-header .ct-button,.ct-header .ct-button-ghost,
.ct-cart-content .ct-button,.ct-cart-actions .ct-button,
.ct-cart-actions a,.ct-cart-content a.button,.ct-cart-content button{
	color:#04302A!important;}
.ct-header .ct-button:hover,.ct-cart-actions .ct-button:hover,
.ct-cart-actions a:hover{background:#0C6E63!important;color:#fff!important;}
/* el segundo boton del carrito, en version secundaria */
.ct-cart-actions [class*="ghost"],.ct-cart-actions .ct-button-ghost{
	background:transparent!important;border:1px solid #22262B!important;color:#22262B!important;}


/* === PALETA-B-CUENTA ===
   La pagina de Mi cuenta lleva 43 KB de Elementor con el gris viejo #7C7C7C
   incrustado en sus propios estilos: 12 textos daban 4,17:1. En vez de reescribir
   la maqueta se pisan los colores aqui. Medido el 2026-09-22. */
.woocommerce-account .elementor-heading-title,
.woocommerce-account .elementor-widget-container h1,
.woocommerce-account .elementor-widget-container h2,
.woocommerce-account .elementor-widget-container h3,
.woocommerce-account .eo-cuenta h2,.woocommerce-account .eo-cuenta h3{color:#22262B;} /* 2026-09-23: antes forzaba TODOS los titulos de la pagina, tambien los de la seccion oscura */
.woocommerce-account .elementor-widget-container p,
.woocommerce-account .elementor-text-editor,
.woocommerce-account .elementor-icon-box-description{color:#474E55!important;}
.woocommerce-account .elementor-widget-container a,
.woocommerce-account .woocommerce-LostPassword a,
.woocommerce-account .woocommerce-privacy-policy-text a{color:#0C6E63!important;}
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:14px;
	background:#FBEDE6;border-radius:26px 0 26px 26px;}
.woocommerce-account .woocommerce-MyAccount-navigation li{margin:0;}
.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:12px 15px;
	border-radius:2px;font-size:14.5px;font-weight:500;color:#474E55!important;text-decoration:none;}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{background:#fff;
	color:#22262B!important;font-weight:600;}
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{color:#0C6E63!important;}

/* El boton de Elementor de Mi cuenta daba 1,23:1 */
.woocommerce-account .elementor-button{background-color:#23C0A8!important;}
.woocommerce-account .elementor-button,
.woocommerce-account .elementor-button .elementor-button-text{color:#04302A!important;}
.woocommerce-account .elementor-button:hover,
.woocommerce-account .elementor-button:hover .elementor-button-text{color:#fff!important;}

/* === MINI-CARRITO (2026-09-22) ===
   Blocksy lo trae oscuro (#29333C, texto blanco), pero el kit de Elementor pinta
   los enlaces en gris #7C7C7C con Questrial: el nombre del producto casi no se
   leia. Se pasa a la paleta clara. Especificidad (0,3,1) para ganar a la regla
   en linea de Blocksy ([data-header] [data-id=cart] .ct-cart-content). */
body[data-header*="type-1"] [data-id="cart"] .ct-cart-content{
  --mini-cart-background-color:#FFFFFF;
  --theme-text-color:#474E55;
  --mini-cart-divider-color:#F0DDD3;
  border:1px solid #F0DDD3;
  box-shadow:0 14px 34px rgba(18,48,60,.14);
}
body[data-header*="type-1"] [data-id="cart"] .ct-cart-content .total{--theme-text-color:#22262B;}
body .ct-cart-content .woocommerce-mini-cart-item a:not(.remove):not(.ct-media-container){
  font-family:'Work Sans',sans-serif;font-size:15px;font-weight:500;color:#22262B;
}
body .ct-cart-content .woocommerce-mini-cart-item a:not(.remove):not(.ct-media-container):hover{color:#0C6E63;}
body .ct-cart-content .woocommerce-mini-cart .remove{color:#474E55;}
body .ct-cart-content .woocommerce-mini-cart .remove:hover{color:#B93A20;}
body .ct-cart-content .quantity,
body .ct-cart-content .woocommerce-mini-cart__total strong{color:#474E55;}
/* !important: la regla del importe junto al icono (#474E55 !important) alcanza al
   desplegable, que va dentro de [data-id=cart]. Esta (0,3,1) gana por especificidad. */
body .ct-cart-content .quantity .amount,body .ct-cart-content .quantity bdi,
body .ct-cart-content .woocommerce-mini-cart__total .amount,body .ct-cart-content .woocommerce-mini-cart__total bdi{color:#0C6E63 !important;font-weight:600;}
/* Dos botones iguales no dicen cual es el siguiente paso: Finalizar compra manda */
body .ct-cart-content .woocommerce-mini-cart__buttons .button:not(.checkout){
  background:transparent;border:1px solid #22262B;
}
body .ct-cart-content .woocommerce-mini-cart__buttons .button:not(.checkout):hover{background:#22262B;color:#FFFFFF !important;}
body .ct-cart-content .woocommerce-mini-cart__buttons .button.checkout:hover{background:#0C6E63;color:#FFFFFF !important;}
/* === HUECO-BAJO-CABECERA (2026-09-23) ===
   En las paginas quedaban 135 px vacios entre la cabecera y el titulo:
   60 px de relleno del area de contenido de Blocksy, 40 px de margen de la
   .hero-section (vacia: su h1 esta oculto en SIN-TITULOS) y el espaciador de
   Elementor. Solo paginas: en las fichas de producto la hero lleva las migas. */
.page .ct-container-full[data-vertical-spacing*="top"]{padding-top:24px;}
/* Las paginas de HTML propio (portada, tienda, negocios, ayuda) ya traen su espacio: el hero va pegado a la cabecera. */
.page .ct-container-full[data-vertical-spacing*="top"]:has(.entry-content > .eo-landing:first-child){padding-top:0;}
.page .hero-section{margin-bottom:0;}
/* === CTA-CABECERA (2026-09-23) ===
   Sin el brinco de Blocksy (translate -3px al pasar el raton): como en SERMA,
   solo cambia el color. A la escala del menu: 40 px de alto, 15 px de texto.
   Hover en #0C6E63 con texto blanco (5,6:1); el #1B9A87 anterior no llegaba a 4,5:1. */
.ct-header .ct-header-cta .ct-button{--theme-button-transform:none;--theme-button-min-height:40px;min-height:40px;transform:none;}
.ct-header .ct-header-cta .ct-button:hover,.ct-header .ct-header-cta .ct-button:focus-visible{color:#FFFFFF !important;transform:none;}

/* === PIE-AJUSTES (2026-09-23) === */
@media (min-width:1000px){
  .ct-footer .eo-footer-links a[href^="mailto:"]{white-space:nowrap;font-size:15px;}
}
.ct-footer .eo-footer-links a[href^="mailto:"]{overflow-wrap:anywhere;}
.ct-footer .eo-footer-wa a{display:inline-flex;align-items:center;gap:8px;}
.ct-footer .eo-footer-wa svg{flex:0 0 16px;color:#0C6E63;}
/* El hueco entre los metodos de pago y el copyright: 70 px de relleno inferior de la fila central */
.ct-footer [data-row="middle"] > .ct-container{padding-bottom:28px;}
.ct-footer .eo-footer-pago{margin-bottom:0;}
/* === FICHA-AJUSTES (2026-09-23) === */
/* Menos aire entre cabecera, migas y producto */
.single-product .ct-container-full[data-vertical-spacing*="top"]{padding-top:18px;}
.single-product .hero-section{margin-bottom:20px;}
/* Galeria mas grande y texto dentro del contenedor: antes 43% + 47% + hueco 10% se salia 40 px */
.single-product.eo-ficha .product-entry-wrapper{gap:56px;}
.single-product.eo-ficha .product-entry-wrapper > .woocommerce-product-gallery{flex:0 0 52%;max-width:52%;}
.single-product.eo-ficha .product-entry-wrapper > .summary{flex:1 1 0;max-width:none;min-width:0;}
/* Las fotos son cuadradas: Blocksy las recortaba a 3:4 */
.single-product.eo-ficha .woocommerce-product-gallery .ct-media-container{aspect-ratio:1/1 !important;}
.single-product.eo-ficha .woocommerce-product-gallery .ct-media-container img{object-fit:contain;background:#fff;}
@media (max-width:999px){
  .single-product.eo-ficha .product-entry-wrapper > .woocommerce-product-gallery,
  .single-product.eo-ficha .product-entry-wrapper > .summary{flex:0 0 100%;max-width:100%;}
}
/* Muestras de color mas grandes y etiqueta legible */
.single-product .variations .label label{font-family:'Work Sans',sans-serif;font-size:15px;font-weight:600;color:#22262B;}
.single-product .cfvsw-swatches-option{min-width:44px !important;min-height:44px !important;border-radius:50% !important;}
.single-product .cfvsw-swatches-option.cfvsw-selected-swatch{box-shadow:0 0 0 2px #fff,0 0 0 4px #0C6E63;}

/* === RELACIONADOS (fichas de aroma) === */
.eo-cruzada{max-width:1200px;margin:64px auto 0;padding:0 40px;text-align:center;}
.eo-cruzada .eo-cruzada-titulo{font-family:'Fraunces',Georgia,serif;font-weight:400;font-size:clamp(27px,3.3vw,40px);line-height:1.2;letter-spacing:-.6px;text-transform:none;color:#22262B;margin:0 0 36px;}
.eo-cruzada .eo-cruzada-titulo::after{content:"";display:block;width:120px;height:1px;background:#474E55;margin:18px auto 0;}
.eo-cruzada ul.products{justify-content:center;margin-left:auto;margin-right:auto;}
.eo-cruzada ul.products li.product{text-align:center;}

/* === TESTIMONIOS (carrusel) === */
.eo-testi{max-width:1200px;margin:0 auto;padding:72px 40px;}
.eo-testi-cab{text-align:center;margin-bottom:40px;}
.eo-testi-cab h2{font-family:'Fraunces',Georgia,serif;font-weight:400;font-size:clamp(27px,3.3vw,40px);line-height:1.2;letter-spacing:-.6px;color:#22262B;margin:0 0 14px;}
.eo-testi-cab h2::after{content:"";display:block;width:120px;height:1px;background:#474E55;margin:18px auto 0;}
.eo-testi-cab p{font-family:'Work Sans',sans-serif;font-size:17px;color:#474E55;margin:0;}
.eo-testi-pista{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:6px 2px 18px;scrollbar-width:none;}
.eo-testi-pista::-webkit-scrollbar{display:none;}
.eo-testi-card{flex:0 0 calc((100% - 48px)/3);scroll-snap-align:start;margin:0;background:#fff;border:1px solid #F0DDD3;border-radius:22px 0 22px 22px;padding:30px 28px 26px;display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s;}
.eo-testi-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(18,48,60,.09);}
.eo-testi-card::before{content:"\201C";font-family:'Fraunces',Georgia,serif;font-size:64px;line-height:.6;color:#23C0A8;height:30px;}
.eo-testi-card p{font-family:'Work Sans',sans-serif;font-size:16px;line-height:1.65;color:#22262B;margin:12px 0 22px;flex:1;}
.eo-testi-quien{display:flex;align-items:center;gap:12px;}
.eo-testi-ini{width:40px;height:40px;border-radius:50%;background:#E6F7F4;color:#0C6E63;display:inline-flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;flex:0 0 40px;}
.eo-testi-quien cite{font-family:'Work Sans',sans-serif;font-style:normal;font-weight:600;font-size:15px;color:#22262B;}
.eo-testi-nav{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:18px;}
.eo-testi-nav button{width:44px;height:44px;border-radius:50%;border:1px solid #22262B;background:transparent;color:#22262B;cursor:pointer;font-size:18px;display:inline-flex;align-items:center;justify-content:center;transition:background .2s,color .2s;}
.eo-testi-nav button:hover,.eo-testi-nav button:focus-visible{background:#22262B;color:#fff;}
.eo-testi-puntos{display:flex;gap:6px;}
.eo-testi-puntos span{width:8px;height:8px;border-radius:50%;background:#E3CABD;transition:background .2s,width .2s;}
.eo-testi-puntos span.on{background:#0C6E63;width:22px;border-radius:4px;}
@media (max-width:999px){ .eo-testi-card{flex-basis:calc((100% - 24px)/2);} }
@media (max-width:640px){ .eo-testi{padding:56px 20px;} .eo-testi-card{flex-basis:86%;} }
@media (prefers-reduced-motion:reduce){ .eo-testi-pista{scroll-behavior:auto;} .eo-testi-card{transition:none;} }
/* Pagos -> ficha tecnica: que se vea que hay mas abajo (PC y tableta) */
@media (min-width:768px){ .single-product.eo-ficha .eo-ficha-extra{margin-top:16px;} .single-product.eo-ficha .eo-ficha-extra > section:first-child{padding-top:56px;} }

/* === RELACIONADOS-BLOCKSY (2026-09-23) ===
   "Productos relacionados" al pie de las fichas: mismo criterio que el resto de
   secciones (centrada, titulo Fraunces 40 px con la raya, 72 px de aire). */
.single-product .related.products{max-width:1200px;margin:0 auto;padding:72px 40px;text-align:center;}
.single-product .related.products .ct-module-title{font-family:'Fraunces',Georgia,serif;font-weight:400;font-size:clamp(27px,3.3vw,40px);line-height:1.2;letter-spacing:-.6px;text-transform:none;color:#22262B;margin:0 0 40px;}
.single-product .related.products .ct-module-title::after{content:"";display:block;width:120px;height:1px;background:#474E55;margin:18px auto 0;}
.single-product .related.products ul.products{justify-content:center;margin-left:auto;margin-right:auto;}
.single-product .related.products li.product{text-align:center;}
.single-product .related.products li.product .woocommerce-loop-product__title{font-family:'Fraunces',Georgia,serif;font-weight:400;font-size:20px;color:#22262B;}
.single-product .related.products li.product .price{font-family:'Work Sans',sans-serif;font-weight:600;font-size:16px;color:#0C6E63;}
/* Testimonios: lugar y aviso de ejemplo (2026-09-23) */
.eo-testi-quien > span{display:flex;flex-direction:column;}
.eo-testi-lugar{font-family:'Work Sans',sans-serif;font-size:13px;color:#474E55;margin-top:2px;}
.eo-testi-demo{max-width:720px;margin:0 auto 24px;padding:10px 16px;border:1px dashed #B93A20;border-radius:2px;background:#FBEDE6;color:#B93A20;font-size:14px;text-align:center;}

/* === HISTORIAS DE ESPACIOS (2026-09-23) === Reutiliza el carrusel .eo-testi */
.eo-historias{max-width:1200px;}
.eo-historias .eo-testi-card.eo-hist{padding:0;overflow:hidden;}
.eo-historias .eo-testi-card.eo-hist::before{display:none;}
.eo-hist-img{margin:0;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.eo-hist-img img{width:70%;height:auto;max-height:88%;object-fit:contain;mix-blend-mode:multiply;}
.eo-hist-img.es-foto img{width:100%;height:100%;max-height:none;object-fit:cover;mix-blend-mode:normal;}
.eo-hist-bd{display:flex;flex-direction:column;flex:1;padding:22px 24px 24px;}
.eo-hist-giro{align-self:flex-start;font-family:'Work Sans',sans-serif;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#B93A20;margin-bottom:10px;}
.eo-historias .eo-hist-txt{font-family:'Fraunces',Georgia,serif;font-size:19px;line-height:1.45;color:#22262B;margin:0 0 12px;flex:1;}
.eo-hist-quien{font-family:'Work Sans',sans-serif;font-weight:600;font-size:15px;color:#22262B;margin:0 0 16px;}
.eo-hist-pie{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid #F0DDD3;padding-top:14px;}
.eo-hist-aroma{font-family:'Work Sans',sans-serif;font-size:14px;color:#474E55;}
.eo-hist-aroma b{color:#0C6E63;}
.eo-hist-btn{display:inline-flex;align-items:center;min-height:40px;padding:0 16px;border-radius:2px;background:#23C0A8;color:#04302A !important;font-family:'Work Sans',sans-serif;font-size:14px;font-weight:600;text-decoration:none;transition:background .2s,color .2s;}
.eo-hist-btn:hover,.eo-hist-btn:focus-visible{background:#0C6E63;color:#fff !important;}

/* ZONA-TACTIL (2026-09-23): el boton del menu medía 18x18 y el carrito 19 px de alto en movil. Se amplia el area pulsable a 44 px con un ::after, sin mover nada (el padding del boton lo fija Blocksy con !important). */
@media (max-width:999px){
	body[data-header] .ct-header-trigger::after{content:"";position:absolute;inset:-13px;}
	body[data-header] .ct-header-cart .ct-cart-item{position:relative;}
	body[data-header] .ct-header-cart .ct-cart-item::after{content:"";position:absolute;inset:-12px -4px;}
}


/* MENU-FIJO-Y-MOVIL (2026-09-23)
   - Cabecera fija arriba en todo el sitio (Blocksy gratis no trae sticky).
   - "Inicio" solo se ve en el menu del movil (clase eo-solo-movil en el menu 24).
   - En el panel oscuro del movil la pagina actual iba en verde oscuro, casi invisible.
   - Icono de Instagram del panel: gris de 15px sobre fondo oscuro. */
body[data-header] #header{position:sticky;top:0;z-index:100;background:#FEFBF9;box-shadow:0 1px 0 rgba(71,78,85,.10),0 4px 16px rgba(28,38,45,.08);}
body.admin-bar[data-header] #header{top:32px;}
@media (max-width:782px){body.admin-bar[data-header] #header{top:46px;}}
@media (max-width:600px){body.admin-bar[data-header] #header{top:0;}}
body[data-header] #header [data-id="menu"] .eo-solo-movil{display:none;}
[data-header*="type-1"] [data-id="mobile-menu"]{--theme-link-hover-color:#3FD9C2;--theme-link-active-color:#3FD9C2;}
body[data-header] #offcanvas [data-id="mobile-menu"] .current-menu-item > .ct-menu-link,
body[data-header] #offcanvas [data-id="mobile-menu"] .current-menu-item > .ct-sub-menu-parent > .ct-menu-link,
body[data-header] #offcanvas [data-id="mobile-menu"] .current-menu-ancestor > .ct-sub-menu-parent > .ct-menu-link,
body[data-header] #offcanvas [data-id="mobile-menu"] .current-menu-ancestor > .ct-menu-link{color:#3FD9C2;}
body[data-header] #offcanvas .ct-social-box{--theme-icon-color:#FFFFFF;--theme-icon-hover-color:#3FD9C2;--theme-icon-size:22px;}
body[data-header] #offcanvas .ct-social-box svg{fill:#FFFFFF;width:22px;height:22px;}
body[data-header] #offcanvas .ct-social-box a:hover svg{fill:#3FD9C2;}
/* Con la cabecera fija, los enlaces a #asesoria o #app quedaban tapados por ella. */
html{scroll-padding-top:100px;}
@media (max-width:999px){html{scroll-padding-top:85px;}}

/* Desplegable de Productos en escritorio: la pagina actual iba en verde casi negro (#04302A) sobre gris #474E55. */
[data-header*="type-1"] .ct-header [data-id="menu"] .sub-menu .ct-menu-link{--theme-link-hover-color:#3FD9C2;--theme-link-active-color:#3FD9C2;}


/* PANTALLAS-ANCHAS (2026-09-23): en monitores ultra anchos (o con zoom alejado) las
   paginas propias quedaban en una caja de 1600px con los fondos de color cortados, y
   la cabecera repartia logo y menu a 3.400px de distancia.
   - Las secciones de color van a todo lo ancho; el contenido sigue centrado (.eo-wrap, 1200px).
   - El hero se limita a 1920px: sus fotos miden 1536px y se verian borrosas.
   - El contenido de la cabecera se limita a 1600px centrado (el fondo sigue a todo lo ancho). */
.is-layout-constrained > .eo-landing{max-width:none;}
.eo-landing .eo-hero-slider{max-width:1920px;margin-inline:auto;}
body[data-header] #header .ct-container-fluid{max-width:1600px;margin-inline:auto;}
/* Con zoom fuerte o un movil en horizontal quedan menos de 500px de alto: ahi la cabecera fija se comeria un tercio de la pantalla, asi que vuelve a desplazarse con la pagina. */
@media (max-height:500px){body[data-header] #header{position:relative;top:auto;}html{scroll-padding-top:0;}}

/* Pie en pantallas muy anchas (zoom al 25%): sus columnas se estiraban a casi 7.000px. Mismo tope que la cabecera. */
body footer [data-row] > .ct-container{max-width:1600px;margin-inline:auto;}

/* Copyright centrado (2026-09-23, pedido de Luis Fernando). */
body footer.ct-footer [data-column="copyright"]{justify-content:center;}
body footer.ct-footer .ct-footer-copyright{text-align:center;}


/* Pie con el mismo margen que la cabecera (2026-09-23): en escritorio la cabecera usa --theme-container-edge-spacing = calc(100vw - 60px); en movil ambos usan 88vw. */
@media (min-width:1000px){body footer.ct-footer [data-row] > .ct-container{width:calc(100vw - 60px);max-width:1600px;margin-inline:auto}}
/* Enlaces legales debajo de los metodos de pago. */
.ct-footer .eo-footer-legal{margin:14px 0 0;font-size:13px;line-height:1.6;color:#474E55}
.ct-footer .eo-footer-legal a{color:#474E55;text-decoration:none}
.ct-footer .eo-footer-legal a:hover{color:#0C6E63;text-decoration:underline}
