/* 
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
*/

/* Add your custom styles here */

/*Scroll top*/
#scrollTop{
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 9999;

  opacity: 0;
  pointer-events: none;
  transform: translateY(8px);
  transition: opacity .2s ease, transform .2s ease;
}

#scrollTop.is-visible{
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

/* opcional: en móvil un pelín más arriba por barras del navegador */
@media (max-width: 767px){
  #scrollTop{ bottom: 80px; }
}


/* Ajustar espacio entre párrafos SOLO en Editor de Texto */
.elementor-widget-text-editor p {
  margin-block-end: 20px!important;
}

/*.elementor-widget-text-editor p:last-child {
  margin-block-end: 0!important;
}*/

.desc-box .elementor-image-box-description{
    text-align: justify!important;
    width: 75%!important;
	margin-inline: auto !important;
}
.woocommerce-product-gallery__trigger{
	z-index:5!important;
}

.woocommerce div.product form.cart .variations select{
	width: fit-content;
    min-width: auto;
}
@media (max-width: 767px){
  .woocommerce div.product form.cart .variations tr{
		display:flex;
		flex-direction:column;
		gap:10px;
   }
	.desc-box{
		display:flex!important;
		justify-content:center!important;
	}

}
/* WC: botones ALT deshabilitados (incluye hover/focus) */
.woocommerce .button.alt:disabled,
.woocommerce .button.alt[disabled],
.woocommerce .button.alt.disabled,
.woocommerce #respond input#submit.alt:disabled,
.woocommerce #respond input#submit.alt[disabled],
.woocommerce #respond input#submit.alt.disabled{
  background-color: #000 !important; /* tu negro */
  opacity: .55;
  cursor: not-allowed;
}

/* Evita que Woo les cambie el fondo en hover/focus */
.woocommerce .button.alt:disabled:hover,
.woocommerce .button.alt:disabled:focus,
.woocommerce .button.alt[disabled]:hover,
.woocommerce .button.alt[disabled]:focus,
.woocommerce .button.alt.disabled:hover,
.woocommerce .button.alt.disabled:focus,
.woocommerce #respond input#submit.alt:disabled:hover,
.woocommerce #respond input#submit.alt:disabled:focus,
.woocommerce #respond input#submit.alt[disabled]:hover,
.woocommerce #respond input#submit.alt[disabled]:focus,
.woocommerce #respond input#submit.alt.disabled:hover,
.woocommerce #respond input#submit.alt.disabled:focus{
  background-color: #000 !important;
  box-shadow: none;
  outline: none;
}

/*ITEM BUCLE HOME*/
/* El área donde vive la imagen + quick-view */
.product-thumb-media {
    position: relative;
    overflow: hidden;
}

/* Reset márgenes típicos del Heading */
.product-thumb-media .quick-view,
.product-thumb-media .quick-view .elementor-heading-title {
    margin: 0 !important;
    padding: 0 !important;
}

/* Estado oculto */
.product-thumb-media .quick-view {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 40px;
    width: 100%;
    transform: translateY(100%);
    opacity: 0;
    /* OJO: transición en el elemento que cambia */
    transition: transform .4s cubic-bezier(.22, .61, .36, 1), opacity .4s ease !important;
    z-index: 5;
    pointer-events: none;
    /* no roba el click a la imagen */
    will-change: transform, opacity;
}

/* El <a> es el que se puede clicar */
.product-thumb-media .quick-view a {
    display: block;
    height: 40px;
    line-height: 40px;
    width: 100%;
    text-align: center;
    background: rgba(255, 255, 255, .5);
    color: #000;
    text-decoration: none;
    pointer-events: auto;
    /* este sí */
    transition: background .5s ease;
}

/* Hover EN EL CONTENEDOR CORRECTO (imagen + franja) */
.product-thumb:hover .quick-view {
    transform: translateY(0);
    opacity: 1;

}

.add-cart-accesories-popup .quantity{
    display: flex;
    align-items: center;
    gap: 10px;
}
.elementor-element-9103151 .quantity input.qty{
  width: 70px !important;
}

.add-cart-accesories-popup .wc-qty-label{
    color:#000;
}

/*CARRUSEL HOME PRODUCTOS*/
/* ====== WRAPPER DEL CARRUSEL ====== */
.my-loop-carousel{
  position:relative;
}

/* El contenedor visible (viewport) */
.my-loop-carousel .my-loop-viewport{
  overflow:hidden;            /* <-- sin barra */
  width:100%;
}

/* Track: hacemos flex el loop container */
.my-loop-carousel .e-loop-container,
.my-loop-carousel .elementor-loop-container{
  display:flex !important;
  gap:30px;
  overflow-x:auto;            /* <-- CLAVE */
  overflow-y:hidden;
  scroll-behavior:smooth;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;       /* Firefox oculta barra */
  padding:0;                  /* evita cosas raras */
  margin:0;
}

/* Items: 3 visibles exactos (restando gaps) */
.my-loop-carousel .e-loop-item{
  flex:0 0 calc((100% - (30px * 2)) / 3); /* 3 items + 2 gaps */
}

/* ====== OCULTAR SCROLLBAR (por si algún navegador lo muestra) ====== */
.my-loop-carousel .e-loop-container{
  scrollbar-width:none;        /* Firefox */
}
.my-loop-carousel .e-loop-container::-webkit-scrollbar{
  display:none;                /* Webkit */
}

/* ====== FLECHAS ====== */
.my-loop-carousel .my-loop-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:34px;
  height:34px;
  border:1px solid #d9d9d9;
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  padding:0;
  z-index:5;
}

.my-loop-carousel .my-loop-arrow:hover{
  background:#bd7702;
  border-color:#bd7702;
}

.my-loop-carousel .my-loop-arrow svg{
  width:14px;
  height:14px;
  fill:#111;
}

.my-loop-carousel .my-loop-arrow:hover svg{
  fill:#fff;
}

/* Posición flechas */
.my-loop-carousel .my-loop-arrow.prev{ left:10px; }
.my-loop-carousel .my-loop-arrow.next{ right:10px; }

/* Deshabilitadas */
.my-loop-carousel .my-loop-arrow[disabled]{
  opacity:.35;
  cursor:not-allowed;
}

/* ====== RESPONSIVE (tablet: 2 visibles, móvil: 1) ====== */
@media (max-width: 1024px){
  .my-loop-carousel .e-loop-item{
    flex:0 0 calc((100% - 30px) / 2);
  }
}
@media (max-width: 767px){
  .my-loop-carousel .e-loop-container,
  .my-loop-carousel .elementor-loop-container{
	gap:0;
	scroll-snap-type: x mandatory;
  }

  .my-loop-carousel .e-loop-item{
    flex: 0 0 100%;
    max-width: 100%;
	scroll-snap-align: start;
  }
}

/*CARRITO Y CHECKOUT*/
@media (min-width: 992px) and (max-width: 1199.98px) {
  .page-header .entry-title,
  .site-footer .footer-inner,
  .site-footer:not(.dynamic-footer),
  .site-header .header-inner,
  .site-header:not(.dynamic-header),
  body:not([class*=elementor-page-]) .site-main {
    max-width: 950px;
  }
}
@media (max-width: 575px) {
  .page-header .entry-title,
  .site-footer .footer-inner,
  .site-footer:not(.dynamic-footer),
  .site-header .header-inner,
  .site-header:not(.dynamic-header),
  body:not([class*=elementor-page-]) .site-main {
    padding-inline-start: 20px;
    padding-inline-end: 20px;
  }
}
.alignwide{
	margin-inline: 0;
}
.wc-custom-heads,
.wp-block-woocommerce-empty-cart-block h2{
    font-family: "Oswald Variable", Sans-serif!important;
    font-size: 34px;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 40px;
    letter-spacing: 0.3px;
 
}
.wc-block-components-product-metadata__description{
	display:none!important;
}
/* Carrito y Checkout - forzar fuente */
.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout {
  font-family: 'Poppins', sans-serif;
  font-weight: 400;
  color:#000;
}

/* Forzar herencia real */
.wp-block-woocommerce-cart *,
.wp-block-woocommerce-checkout * {
  font-family: inherit !important;
}

@container (min-width: 700px) {
  .wp-block-woocommerce-checkout .wc-block-checkout__sidebar {
    top: 104px;
  }
}

.dmgz-cart-group .wc-block-cart-items__header-image,
.dmgz-cart-group .wc-block-cart__totals-title,
.dmgz-cart-group .wc-block-cart-items__header-total{
	font-weight:600;
	font-size:16px!important;
	letter-spacing:0.7px;
}
.dmgz-cart-group .wc-block-cart-items__header th{
	border-block-start: none;
}
.dmgz-cart-group .wc-block-components-product-name{
	text-decoration:none;
	font-weight:500;
	font-size:14px;
	letter-spacing:0.7px;
}
.dmgz-wc-button a{
	background-color: #000;
    border-width: 0;
    color: #fff;
    font-family: inherit;
    font-size: inherit;
    font-style: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    padding-top: calc(0.667em + 2px);
    padding-right: calc(1.333em + 2px);
    padding-bottom: calc(0.667em + 2px);
    padding-left: calc(1.333em + 2px);
    text-decoration: none;
    text-transform: inherit;
}
.dmgz-wc-button a:hover{
    background-color:#BD7702;
	color:#fff;
}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__products{
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product{
  box-sizing: border-box;
  border: 1px solid #000;
  padding: 20px;

  /* 3 columnas con separación */
  flex: 0 0 calc(33.333% - 30px)!important;
  max-width: calc(33.333% - 30px)!important;

  /* centra la card dentro de su columna */
  margin: 0 10px 30px;
}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product a{
	text-decoration:none!important;
}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product .wc-block-grid__product-title{
	color: #000;
    font-size: 14px;
    text-decoration: none;
    text-align: center;
    font-weight: 600;
    text-transform: capitalize;
    letter-spacing: 0.4px;
}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product .wc-block-grid__product-title:hover{
	color: #BD7702;
}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price{
    font-size: 15px;
    line-height: 30px;
	font-weight: 600;
	letter-spacing: 0.7px;
}

.wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-collection li{
	border: 1px solid #000;
  	padding: 20px;
}

.wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-collection h2 a{
	text-decoration:none!important;
	font-family:'Poppins'!important;
	color: #000;
    font-size: 14px;
    text-decoration: none;
    text-align: center;
    font-weight: 600;
    text-transform: capitalize;
    letter-spacing: 0.4px;
}

.wc-block-components-address-card__edit:hover{
	background:#BD7702;
	border-radius:0;
}