/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* ==== Custom overrides (variables y tipografías) ==== */
:root {
	--link: #004B47;
	--link-hover: #FFC20E;
	--text: #383332;
	--font: "Poppins", Sans-serif;
}

/* Texto base y enlaces */
body,
.custom-woo #coupon_code,
.elementor-widget-woocommerce-cart .woocommerce {
	color :var(--text);
	font-family: var(--font);
}
a {
	color: var(--link);
}
a:hover {
	color: var(--link-hover);
}
h1,h2,h3,h4,h5,h6 {
	color: inherit;
	font-family: inherit;
	font-weight: 600;
}

/* ==== General ==== */

/* Transiciones suaves para elementos clave */
a,
button,
body .custom-woo span.price,
body .custom-woo .woocommerce-loop-product__title,
body .custom-woo .woocommerce-loop-product__buttons,
body .custom-woo .woocommerce-loop-product__link::before,
body:not(.woocommerce-block-theme-has-button-styles) .wc-block-components-button:not(.is-link) {
	transition: .4s;
}
/* Botones */
[type=button], [type=submit], button {
	background-color: #004B47;
	border: 1px solid #004B47;
	color: #fff;
	border-radius: 8px;
	padding: 15px 25px;
	font-family: poppins;
	font-size: 15px;
}
[type=button]:focus, [type=button]:hover, [type=submit]:focus, [type=submit]:hover, button:focus, button:hover {
	background-color: #FFC20E;
	border: 1px solid #FFC20E;
}

/* ==== WooCommerce widged categoras ==== */

/* Oculta la miniatura del widget de categorías */
.woocommerce .custom-woo.elementor-widget-wc-categories .woocommerce img {
	display: none;
}
/* Base para los iconos */
.woocommerce .custom-woo.elementor-widget-wc-categories .woocommerce ul.products a .woocommerce-loop-category__title::before {
	display: inline-block;
    margin-right: 5px;
    font-size: 1.6rem;
    position: relative;
    top: 5px;
	font-family: 'icomoon' !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
	-webkit-font-smoothing: antialiased;
}
/* Agrega iconos a categorías principales */
.woocommerce .custom-woo.elementor-widget-wc-categories .woocommerce ul.products a[href*="/categoria-de-producto/accesorios/"] .woocommerce-loop-category__title::before {
	content: "\e917";
}
.woocommerce .custom-woo.elementor-widget-wc-categories .woocommerce ul.products a[href*="/categoria-de-producto/jabones/"] .woocommerce-loop-category__title::before {
	content: "\e915";
}
.woocommerce .custom-woo.elementor-widget-wc-categories .woocommerce ul.products a[href*="/categoria-de-producto/jabones-decorativos/"] .woocommerce-loop-category__title::before {
	content: "\e919";
}
.woocommerce .custom-woo.elementor-widget-wc-categories .woocommerce ul.products a[href*="/categoria-de-producto/sets-y-regalos/"] .woocommerce-loop-category__title::before {
	content: "\e918";
}

/* Agrega iconos a subcategoras */
.woocommerce .custom-woo.elementor-widget-wc-categories .woocommerce ul.products a[href*="/categoria-de-producto/accesorios/bolsas-exfoliantes"] .woocommerce-loop-category__title::before {
	content: "\e91a";
}
.woocommerce .custom-woo.elementor-widget-wc-categories .woocommerce ul.products a[href*="/categoria-de-producto/jabones/jabones-faciales/"] .woocommerce-loop-category__title::before {
	content: "\e90b";
}
.woocommerce .custom-woo.elementor-widget-wc-categories .woocommerce ul.products a[href*="/categoria-de-producto/jabones-decorativos/jabones-florales/"] .woocommerce-loop-category__title::before {
	content: "\e904";
}
.woocommerce .custom-woo.elementor-widget-wc-categories .woocommerce ul.products a[href*="/categoria-de-producto/jabones-decorativos/jabones-frutales/"] .woocommerce-loop-category__title::before {
	content: "\e91c";
}
.woocommerce .custom-woo.elementor-widget-wc-categories .woocommerce ul.products a[href*="/categoria-de-producto/accesorios/jabonneras/"] .woocommerce-loop-category__title::before {
	content: "\e91e";
}
.woocommerce .custom-woo.elementor-widget-wc-categories .woocommerce ul.products a[href*="/categoria-de-producto/accesorios/jaboneras/"] .woocommerce-loop-category__title::before {
	content: "\e91e";
}
.woocommerce .custom-woo.elementor-widget-wc-categories .woocommerce ul.products a[href*="/categoria-de-producto/jabones-decorativos/jabones-tematicos/"] .woocommerce-loop-category__title::before {
	content: "\e91d";
}
.woocommerce .custom-woo.elementor-widget-wc-categories .woocommerce ul.products a[href*="/categoria-de-producto/jabones/jabones-de-temporada/"] .woocommerce-loop-category__title::before {
	content: "\e91b";
}

/* Ajuste de gap en grilla 1 columna del widget de categorías */
.woocommerce .custom-woo.elementor-widget-wc-categories .woocommerce ul.elementor-grid {
	grid-row-gap: 5px;
}
/* Oculta link Sin categora */
.woocommerce .custom-woo.elementor-widget-wc-categories .woocommerce ul.products a[href*="/categoria-de-producto/uncategorized/"] {
	display: none;
}

/* ==== WooCommerce product meta ==== */

.custom-woo.elementor-woo-meta--view-inline .product_meta {
	flex-direction: column;
}

/* ==== WooCommerce cupones ==== */

.custom-woo #coupon_code {
	padding: 12px 25px;
	border-radius: 8px;
	border-color: #004b47;
}

/* ==== WooCommerce tarjetas de productos ==== */

/* Overlay hover en la tarjeta de producto */
body .custom-woo .woocommerce-loop-product__link::before {
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background-color: #225b58;
	opacity: 0;
}

/* Muestra overlay al pasar el mouse sobre la tarjeta */
body .custom-woo li.product:hover>.woocommerce-loop-product__link::before { 
	opacity: .7;
}

/* Precio: posición y estado inicial oculto */
body .custom-woo span.price {
	width: 100%;
	bottom: 7.8rem;
	position: absolute;
	padding: 0 .7rem;
	opacity: 0;
}

/* En hover: muestra precio */
body .custom-woo li.product:hover>.woocommerce-loop-product__link span.price {
	opacity: 1;
	bottom: 7rem;
}

/* Título: posición y estado inicial */
body .custom-woo.elementor-wc-products .woocommerce ul.products li.product .woocommerce-loop-product__title,
body .custom-woo ul.products li.product .woocommerce-loop-product__title {
	position: absolute;
	padding: 0 .7rem;
	bottom: 1.5rem;
	width: 100%;
	text-shadow: 0 0 36px #004b47;
}

/* En hover: mueve título */
body .custom-woo.elementor-wc-products .woocommerce ul.products li.product:hover>.woocommerce-loop-product__link .woocommerce-loop-product__title,
body .custom-woo ul.products li.product:hover>.woocommerce-loop-product__link .woocommerce-loop-product__title {
	bottom: 9.2rem;
	text-shadow: 0 0 0 #004b47;
}

/* Botones de producto: posición inicial oculta sobre la tarjeta */
body .custom-woo .woocommerce-loop-product__buttons {
	bottom: -1.5rem;
	opacity: 0;
	position: absolute;
	display: flex;
	flex-direction: column;
	align-self: center;
	min-height: 94px;
}

/* Botones de producto en hover: muestra el botón y alinea */
body .custom-woo li.product:hover>.woocommerce-loop-product__link + .woocommerce-loop-product__buttons {
	bottom: 1.3rem;
	opacity: 1;
}

/* 1 solo producto por fila en el widget archive products en mobile */
@media (max-width: 420px) {
    .elementor-widget-wc-archive-products .products,
	.elementor-grid-mobile-2 .elementor-grid {
        grid-template-columns: repeat(1, 1fr);
    }
}

/* ==== Notificaciones de Woocommerce ==== */

body .woocommerce-message {
	border-radius: 8px;
	overflow: hidden;
}

/* ==== Checkout ==== */

.custom-woo .wc-block-components-sidebar-layout .wc-block-components-main {
	padding-right: 0;
}
/* Corrección de breakpoint */
@container (max-width: 1024px) {
    .custom-woo .wc-block-components-sidebar-layout .wc-block-components-main, .wc-block-components-sidebar-layout .wc-block-components-sidebar,
	.custom-woo .wc-block-components-sidebar-layout .wc-block-components-main {
        width: 100%;
    }
}

/* Estilos del formulario */
body .wc-block-components-form .wc-block-components-text-input.is-active input[type=email],
.custom-woo .wc-block-components-textarea {
	border: 1px solid #A0A6A2;
	border-radius: 8px;
}

.custom-woo .wc-block-components-form .wc-block-components-checkout-step {
	margin-bottom: 0;
}

.custom-woo .wp-block-woocommerce-checkout-order-summary-block {
	border: 1px solid #DEDBC3;
	border-radius: 8px;
}

.custom-woo .wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted {
	border-radius: 8px;
	box-shadow: inset 0 0 0 1.5px #9B5D80;
}
.custom-woo .wc-block-components-radio-control .wc-block-components-radio-control__input:checked {
	border: 1px solid #9B5D80;
}

.custom-woo .wc-block-components-radio-control--highlight-checked:after {
	border: none;
}

.custom-woo .wc-block-components-radio-control .wc-block-components-radio-control__input:checked:before {
	background: #9B5D80;
}

.custom-woo .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox] {
	border: 1px solid #A0A6A2;
}

body:not(.woocommerce-block-theme-has-button-styles) .wc-block-components-button:not(.is-link) {
	
}

/* ==== Estilo del orderby ==== */

/* <select class="orderby"> — sin tocar HTML, usando la tipografía del tema */
.woocommerce-ordering .orderby{
  -webkit-appearance:none;
  appearance:none;
  width:min(100%,260px);
  padding:12px 44px 12px 14px;
  border:1px solid #cfd4dc;
  border-radius:8px;
  background:
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='currentColor' d='M7.41 8.59 12 13.17 16.59 8.59 18 10l-6 6-6-6z'/></svg>")
    no-repeat right 12px center/18px 18px,
    #fff;
  color:inherit;           /* hereda color del tema */
  font:inherit;            /* hereda familia, peso y tamaño del tema */
  line-height:1.2;
  transition:border-color .15s, box-shadow .15s, background-color .15s;
  cursor:pointer;
}
.woocommerce-ordering .orderby:hover{
  border-color:#94a3b8;
  background-color:#fcfcfd;
}
.woocommerce-ordering .orderby:focus{
  outline:0;
  box-shadow:0 0 0 3px rgba(37,99,235,.15);
  border-color:#2563eb;
}
.woocommerce-ordering .orderby:disabled{
  opacity:.6;
  cursor:not-allowed;
}
.woocommerce-ordering .orderby::-ms-expand{display:none}

/* Altura consistente en Safari iOS */
@supports (-webkit-touch-callout:none){
  .woocommerce-ordering .orderby{padding-top:14px;padding-bottom:14px}
}

/* Opciones (limitado por navegador) */
.woocommerce-ordering .orderby option{
  padding:8px;
  background:#fff;
  color:inherit; /* hereda color del tema */
  font:inherit;  /* hereda tipografía del tema */
}