/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: Elementor Team
Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
Tags: accessibility-ready,flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready
Version: 3.4.2.1749138411
Updated: 2025-06-05 17:46:51

*/


/* Ocultar del cehckout mensaje y botón carrito */
.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-message {
  display: none !important;
}

/* slide movimiento nueva home */
.logo-marquee{
    position:relative;
    width:100%;
    overflow:hidden;
    background:#000; /* para que el degradado a negro tenga sentido */
    padding:12px 0;
  }

  /* degradados laterales (15%) */
  .logo-marquee::before,
  .logo-marquee::after{
    content:"";
    position:absolute;
    top:0;
    width:15%;
    height:100%;
    z-index:3;
    pointer-events:none;
  }
  .logo-marquee::before{
    left:0;
    background:linear-gradient(to right, #000 0%, rgba(0,0,0,0) 100%);
  }
  .logo-marquee::after{
    right:0;
    background:linear-gradient(to left, #000 0%, rgba(0,0,0,0) 100%);
  }

  .logo-marquee__track{
    display:flex;
    width:max-content;
    will-change:transform;
    animation:logo-marquee-move 22s linear infinite;
  }

  .logo-marquee__group{
    display:flex;
    align-items:center;
    gap:28px;
    padding-right:28px;
  }

  .logo-marquee img{
    width:150px;
    height:auto;
    display:block;
    filter:grayscale(0);
    opacity:0.95;
  }

  /* pausa al hover */
  .logo-marquee:hover .logo-marquee__track{
    animation-play-state:paused;
  }

  @keyframes logo-marquee-move{
    0%{ transform:translateX(0); }
    100%{ transform:translateX(-50%); } /* mueve exactamente un grupo */
  }

  @media (max-width:768px){
    .logo-marquee__track{ animation-duration:18s; }
    .logo-marquee__group{ gap:18px; padding-right:18px; }
    .logo-marquee img{ width:120px; }
  }

/* CHECK OUT*/
.page-id-14248 .elementor-widget-woocommerce-checkout-page .e-checkout__container {grid-column-gap: 0!important;grid-row-gap: 0!important;}  
.page-id-14248 .elementor-14248 .elementor-element.elementor-element-cf19993 .woocommerce-checkout #customer_details .col-1 {margin: 0!important;}
.page-id-14248 .shop_table thead, .page-id-14248 .cart-subtotal, .page-id-14248 .e-woocommerce-login-section {display:none!important;}  


.borde-texto-negro h3 {-webkit-text-stroke: 1px #000000;}    

.gradient-text-blue {
    background: linear-gradient(90deg, #0A2B84, #6CA8FF);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-weight: bold;
}

.gradient-text-animated .elementor-headline-dynamic-text span {
  background: linear-gradient(90deg, #0A2B84, #6CA8FF);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text; /* Para navegadores que soportan la propiedad sin prefijo */
  text-fill-color: transparent;
}


.elementor-11454 .elementor-element.elementor-element-04d384f .elementor-active .elementor-accordion-icon, .elementor-11454 .elementor-element.elementor-element-04d384f .elementor-active .elementor-accordion-title {color: #0394FF!important;}

.elementor-11454 .elementor-element.elementor-element-04d384f .elementor-accordion-icon, .elementor-11454 .elementor-element.elementor-element-04d384f .elementor-accordion-title {color: #0C2D86!important;}


/* ANIMACIÓN CARRUSEL */
.animation-carrusel {
  position: relative;
  overflow: hidden;
  width: 100%;
  background: #fff;
}

/* degradado lateral 30% */
.animation-carrusel::before,
.animation-carrusel::after {
  content: "";
  position: absolute;
  top: 0;
  width: 30%;
  height: 100%;
  z-index: 2;
  pointer-events: none;
}

.animation-carrusel::before {
  left: 0;
  background: linear-gradient(to right, #fff 0%, rgba(255, 255, 255, 0) 100%);
}

.animation-carrusel::after {
  right: 0;
  background: linear-gradient(to left, #fff 0%, rgba(255, 255, 255, 0) 100%);
}

/* contenedor de los textos duplicados */
.animation-carrusel-track {
  display: flex;
  white-space: nowrap;
}

/* animación base (desktop) */
.animation-carrusel-text {
  display: inline-block;
  white-space: nowrap;
  font-weight: 700;
  font-size: clamp(18px, 3vw, 32px);
  animation: scroll-text 30s linear infinite;
}

/* animación horizontal continua */
@keyframes scroll-text {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

/* versión mobile: más rápida */
@media (max-width: 768px) {
  .animation-carrusel-text {
    animation-duration: 20s; /* más rápido en móviles */
  }
}


/* SLIDE IMAGENES HOME */
.sc-marquee{
  width: 100%;
  overflow: hidden;
  position: relative;
}

.sc-marquee__track{
  display: flex;
  align-items: center;
  gap: 20px;
  width: max-content;
  animation: sc-marquee-left 100s linear infinite;
  will-change: transform;
}

.sc-marquee:hover .sc-marquee__track{
  animation-play-state: paused;
}

.sc-marquee__item{
  flex: 0 0 auto;
}

/* imágenes: sin interacción */
.sc-marquee__item img{
  width: 400px;
  height: auto;
  display: block;
  border-radius: 20px;
  pointer-events: none;   /* no click */
  user-select: none;      /* no selección */
  -webkit-user-drag: none;/* no arrastrar */
  cursor: default;        /* sin mano */
}

@keyframes sc-marquee-left{
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}

/* SLIDE COMMUNITY */
/* =========================
slide vertical loop (elementor)
col 1 y 3: suben | col 2: baja
/* ===== viewport + degradado 15% ===== */
.slide-community .slide-column-1,
.slide-community .slide-column-2,
.slide-community .slide-column-3{
  position: relative;
  overflow: hidden;
}

.slide-community .slide-column-1::before,
.slide-community .slide-column-2::before,
.slide-community .slide-column-3::before,
.slide-community .slide-column-1::after,
.slide-community .slide-column-2::after,
.slide-community .slide-column-3::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  height:15%;
  pointer-events:none;
  z-index:5;
}

.slide-community .slide-column-1::before,
.slide-community .slide-column-2::before,
.slide-community .slide-column-3::before{
  top:0;
  background: linear-gradient(to bottom, #000 0%, rgba(0,0,0,0) 100%);
}

.slide-community .slide-column-1::after,
.slide-community .slide-column-2::after,
.slide-community .slide-column-3::after{
  bottom:0;
  background: linear-gradient(to top, #000 0%, rgba(0,0,0,0) 100%);
}

/* ===== importante: convertir el widget-wrap en "track" ===== */
.slide-community .slide-column-1 > .elementor-widget-wrap,
.slide-community .slide-column-2 > .elementor-widget-wrap,
.slide-community .slide-column-3 > .elementor-widget-wrap{
  position: relative;
  z-index:1;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: 24px;            /* separación entre “cards” */
  will-change: transform;
}

/* evitar márgenes raros internos */
.slide-community .elementor-inner-section{
  margin: 0 !important;
}

/* ===== animación seamless =====
   Requisito: contenido duplicado 2 veces.
   Por eso movemos -50% del track (la primera mitad).
*/
@keyframes sc_slide_up{
  0%{ transform: translateY(0); }
  100%{ transform: translateY(-50%); }
}

@keyframes sc_slide_down{
  0%{ transform: translateY(-50%); }
  100%{ transform: translateY(0); }
}

/* velocidades (ajusta a gusto) */
.slide-community .slide-column-1 > .elementor-widget-wrap,
.slide-community .slide-column-3 > .elementor-widget-wrap{
  animation: sc_slide_up 22s linear infinite;
}

.slide-community .slide-column-2 > .elementor-widget-wrap{
  animation: sc_slide_down 22s linear infinite;
}

/* opcional: pausa al hover */
.slide-community .slide-column-1:hover > .elementor-widget-wrap,
.slide-community .slide-column-2:hover > .elementor-widget-wrap,
.slide-community .slide-column-3:hover > .elementor-widget-wrap{
  animation-play-state: paused;
}

/* accesibilidad */
@media (prefers-reduced-motion: reduce){
  .slide-community .slide-column-1 > .elementor-widget-wrap,
  .slide-community .slide-column-2 > .elementor-widget-wrap,
  .slide-community .slide-column-3 > .elementor-widget-wrap{
    animation: none !important;
    transform: none !important;
  }
}

/* =========================
   tabs manuales - section-tabs
   ========================= */

#section-tabs .tab-content-1,
#section-tabs .tab-content-2,
#section-tabs .tab-content-3 {
  display: none;
}

/* estado activo: se oculta el title y se muestra el content */
#section-tabs .tab-is-active.tab-title-1,
#section-tabs .tab-is-active.tab-title-2,
#section-tabs .tab-is-active.tab-title-3 {
  display: none;
}

#section-tabs .tab-is-active.tab-content-1,
#section-tabs .tab-is-active.tab-content-2,
#section-tabs .tab-is-active.tab-content-3 {
  display: block;
}

/* apariencia “clicable” de los títulos */
#section-tabs .tab-title-1,
#section-tabs .tab-title-2,
#section-tabs .tab-title-3 {
  cursor: pointer;
}

/* opcional: feedback hover */
#section-tabs .tab-title-1:hover,
#section-tabs .tab-title-2:hover,
#section-tabs .tab-title-3:hover {
  opacity: 0.9;
}

/* opcional: animación suave al mostrar contenido */
#section-tabs .tab-content-1,
#section-tabs .tab-content-2,
#section-tabs .tab-content-3 {
  animation: tabFade 220ms ease-out;
}

@keyframes tabFade {
  from { opacity: 0; transform: translateY(6px); }
  to   { opacity: 1; transform: translateY(0); }
}


/* NUEVO CHECKOUT
/* solo para /checkout-bf/ (page-id-14248) */
body.page-id-14248 .woocommerce-checkout form.checkout{
  width: 100%;
}

/* forzar checkout a 1 columna (floats) */
body.page-id-14248 .woocommerce-checkout .col2-set,
body.page-id-14248 .woocommerce-checkout #order_review,
body.page-id-14248 .woocommerce-checkout #order_review_heading{
  float: none !important;
  width: 100% !important;
}

/* forzar checkout a 1 columna (flex) */
body.page-id-14248 .woocommerce-checkout .col2-set{
  display: flex !important;
  flex-direction: column !important;
  gap: 20px;
}

/* por si el theme crea col-1/col-2 */
body.page-id-14248 .woocommerce-checkout .col-1,
body.page-id-14248 .woocommerce-checkout .col-2{
  float: none !important;
  width: 100% !important;
}

/* espaciado limpio tipo “card” */
body.page-id-14248 .woocommerce-checkout .woocommerce-billing-fields,
body.page-id-14248 .woocommerce-checkout .woocommerce-additional-fields,
body.page-id-14248 .woocommerce-checkout .woocommerce-checkout-review-order{
  margin: 0 0 20px 0;
}

body.page-id-14248 #ship-to-different-address,
body.page-id-14248 .woocommerce-additional-fields{
  display: none !important;
}

body.page-id-14248 .woocommerce-form-coupon-toggle,
body.page-id-14248 form.checkout_coupon{
  display: none !important;
}

/* solo page-id-14248 */
body.page-id-14248 #joinpl .woocommerce-billing-fields > h3{
  text-align: center !important;
  font-size: 14px !important;      /* más pequeño */
  color: #1CD05C !important;
  font-weight: 700 !important;
  letter-spacing: .5px;
  text-transform: none;
  margin: 10px 0 15px !important;
}

/* cambia el texto visual "Billing details" -> "Your info" */
body.page-id-14248 #joinpl .woocommerce-billing-fields > h3{
  visibility: hidden;              /* oculta el original */
  position: relative;
}

body.page-id-14248 #joinpl .woocommerce-billing-fields > h3::after{
  content: "Your info";
  visibility: visible;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 0;
  text-align: center;
  font-size: 14px;
  color: #1CD05C;
  font-weight: 700;
}

/* your order -> payment (centrado, verde, más pegado arriba) */
body.page-id-14248 #joinpl h3#order_review_heading{
  text-align: center !important;
  color: #1CD05C !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  margin-top: -40px !important;   /* sube el bloque */
  margin-bottom: 12px !important;
  letter-spacing: .5px;
  text-transform: none;
}

/* cambia el texto visual "Your order" -> "Payment" */
body.page-id-14248 #joinpl h3#order_review_heading{
  visibility: hidden;
  position: relative;
}

body.page-id-14248 #joinpl h3#order_review_heading::after{
  content: "Payment";
  visibility: visible;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 0;
  color: #1CD05C;
  font-weight: 700;
  font-size: 14px;
}

body.page-id-14248 #joinpl #customer_details{
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* botón checkout: Complete Order */
body.page-id-14248 #joinpl #place_order{
  width: 100% !important;              /* ancho completo */
  text-align: center !important;
  background-color: #1CD05C !important;
  border-color: #1CD05C !important;
  color: #ffffff !important;
  font-weight: 700;
  font-size: 16px;
  padding: 14px 20px;
  border-radius: 6px;                  /* ajusta si quieres más/menos redondeo */
  display: block;
}

/* hover */
body.page-id-14248 #joinpl #place_order:hover{
  background-color: #17b54f !important; /* un verde un poco más oscuro */
  border-color: #17b54f !important;
  color: #ffffff !important;
}

/* cambiar texto visual "Comprar" -> "Complete Order" */
body.page-id-14248 #joinpl #place_order{
  font-size: 0;                         /* oculta el texto original */
}

body.page-id-14248 #joinpl #place_order::after{
  content: "Complete Order";
  font-size: 16px;
  font-weight: 700;
  color: #ffffff;
}

.woocommerce-privacy-policy-text p {text-align:center;font-size:12px;} 
.woocommerce-form-login-toggle {display: none !important;}
.woocommerce-billing-fields label {font-size:12px;}
.recurring-totals, .order-total.recurring-total, .order-total {display:none;}
#add_payment_method #payment, .woocommerce-cart #payment, .woocommerce-checkout #payment {background: transparent;}
.woocommerce-checkout #payment div.payment_box {background-color: transparent;margin-bottom:-40px;}
/* quitar el triangulito/flecha de la caja de pago (WooCommerce) */
#payment .payment_box::before, #payment .payment_box::after {display: none !important;content: none !important;}
.woocommerce-checkout #payment, #wc-stripe-card-element.payment-type {margin-top:-25px;}