.elementor-kit-18{--e-global-color-primary:#000000;--e-global-color-secondary:#222222;--e-global-color-text:#4E4E4E;--e-global-color-accent:#22355C;--e-global-color-21bfb04:#FFFFFF;--e-global-color-08fcc9d:#787878;--e-global-color-e5e9561:#D7BCE0;--e-global-color-8bef9c6:#CCBCE0;--e-global-color-ca439ff:#DDC2E1;--e-global-typography-primary-font-family:"Source Serif Pro";--e-global-typography-primary-font-size:60px;--e-global-typography-primary-font-weight:700;--e-global-typography-primary-line-height:1.1em;--e-global-typography-secondary-font-family:"Source Serif Pro";--e-global-typography-secondary-font-size:50px;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-line-height:1.2em;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.5em;--e-global-typography-accent-font-family:"Rajdhani";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:1em;--e-global-typography-61eed76-font-family:"Source Serif Pro";--e-global-typography-61eed76-font-size:48px;--e-global-typography-61eed76-font-weight:700;--e-global-typography-61eed76-line-height:1.2em;--e-global-typography-92b0a2d-font-family:"Source Serif Pro";--e-global-typography-92b0a2d-font-size:35px;--e-global-typography-92b0a2d-font-weight:700;--e-global-typography-92b0a2d-line-height:1.2em;--e-global-typography-f500460-font-family:"Source Serif Pro";--e-global-typography-f500460-font-size:24px;--e-global-typography-f500460-font-weight:700;--e-global-typography-f500460-line-height:1.2em;--e-global-typography-ba6914a-font-family:"Source Serif Pro";--e-global-typography-ba6914a-font-size:20px;--e-global-typography-ba6914a-font-weight:600;--e-global-typography-ba6914a-line-height:1.2em;--e-global-typography-317d263-font-family:"Source Serif Pro";--e-global-typography-317d263-font-size:300px;--e-global-typography-317d263-font-weight:900;--e-global-typography-317d263-line-height:1.1em;--e-global-typography-99dd0b2-font-family:"Source Serif Pro";--e-global-typography-99dd0b2-font-size:90px;--e-global-typography-99dd0b2-font-weight:900;--e-global-typography-99dd0b2-line-height:1.1em;--e-global-typography-2bd9da1-font-family:"Source Serif Pro";--e-global-typography-2bd9da1-font-size:75px;--e-global-typography-2bd9da1-font-weight:800;--e-global-typography-2bd9da1-line-height:1.2em;--e-global-typography-f95c007-font-family:"Source Serif Pro";--e-global-typography-f95c007-font-size:13px;--e-global-typography-f95c007-font-weight:400;--e-global-typography-f95c007-line-height:1.2em;--e-global-typography-74bb46b-font-family:"Rajdhani";--e-global-typography-74bb46b-font-size:16px;--e-global-typography-74bb46b-font-weight:600;--e-global-typography-74bb46b-line-height:1em;background-color:#F6F0FA;color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-18 button,.elementor-kit-18 input[type="button"],.elementor-kit-18 input[type="submit"],.elementor-kit-18 .elementor-button{background-color:#D7BCE0;font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );line-height:var( --e-global-typography-accent-line-height );color:var( --e-global-color-21bfb04 );border-style:solid;border-width:0px 0px 0px 0px;border-radius:10px 10px 10px 10px;padding:15px 30px 15px 30px;}.elementor-kit-18 button:hover,.elementor-kit-18 button:focus,.elementor-kit-18 input[type="button"]:hover,.elementor-kit-18 input[type="button"]:focus,.elementor-kit-18 input[type="submit"]:hover,.elementor-kit-18 input[type="submit"]:focus,.elementor-kit-18 .elementor-button:hover,.elementor-kit-18 .elementor-button:focus{background-color:#CCBCE0;color:var( --e-global-color-e5e9561 );border-style:solid;border-width:0px 0px 0px 0px;border-radius:10px 10px 10px 10px;}.elementor-kit-18 e-page-transition{background-color:#FFBC7D;}.elementor-kit-18 p{margin-block-end:15px;}.elementor-kit-18 a{color:var( --e-global-color-primary );}.elementor-kit-18 a:hover{color:#616161;}.elementor-kit-18 h1{color:#191919;font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-18 h2{color:#191919;font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-18 h3{color:#191919;font-family:var( --e-global-typography-61eed76-font-family ), Sans-serif;font-size:var( --e-global-typography-61eed76-font-size );font-weight:var( --e-global-typography-61eed76-font-weight );line-height:var( --e-global-typography-61eed76-line-height );}.elementor-kit-18 h4{color:#191919;font-family:var( --e-global-typography-92b0a2d-font-family ), Sans-serif;font-size:var( --e-global-typography-92b0a2d-font-size );font-weight:var( --e-global-typography-92b0a2d-font-weight );line-height:var( --e-global-typography-92b0a2d-line-height );}.elementor-kit-18 h5{color:#191919;font-family:var( --e-global-typography-f500460-font-family ), Sans-serif;font-size:var( --e-global-typography-f500460-font-size );font-weight:var( --e-global-typography-f500460-font-weight );line-height:var( --e-global-typography-f500460-line-height );}.elementor-kit-18 h6{color:#191919;font-family:var( --e-global-typography-ba6914a-font-family ), Sans-serif;font-size:var( --e-global-typography-ba6914a-font-size );font-weight:var( --e-global-typography-ba6914a-font-weight );line-height:var( --e-global-typography-ba6914a-line-height );}.elementor-kit-18 label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-18 input:not([type="button"]):not([type="submit"]),.elementor-kit-18 textarea,.elementor-kit-18 .elementor-field-textual{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-text );border-style:none;border-radius:30px 30px 30px 30px;padding:13px 18px 13px 18px;}.elementor-kit-18 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-18 textarea:focus,.elementor-kit-18 .elementor-field-textual:focus{border-radius:30px 30px 30px 30px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1366px){.elementor-kit-18{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-18 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-18 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-18 h3{font-size:var( --e-global-typography-61eed76-font-size );line-height:var( --e-global-typography-61eed76-line-height );}.elementor-kit-18 h4{font-size:var( --e-global-typography-92b0a2d-font-size );line-height:var( --e-global-typography-92b0a2d-line-height );}.elementor-kit-18 h5{font-size:var( --e-global-typography-f500460-font-size );line-height:var( --e-global-typography-f500460-line-height );}.elementor-kit-18 h6{font-size:var( --e-global-typography-ba6914a-font-size );line-height:var( --e-global-typography-ba6914a-line-height );}.elementor-kit-18 button,.elementor-kit-18 input[type="button"],.elementor-kit-18 input[type="submit"],.elementor-kit-18 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-18 label{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-18 input:not([type="button"]):not([type="submit"]),.elementor-kit-18 textarea,.elementor-kit-18 .elementor-field-textual{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}@media(max-width:1024px){.elementor-kit-18{--e-global-typography-primary-font-size:55px;--e-global-typography-secondary-font-size:45px;--e-global-typography-text-font-size:18px;--e-global-typography-accent-font-size:16px;--e-global-typography-317d263-font-size:250px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-18 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-18 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-18 h3{font-size:var( --e-global-typography-61eed76-font-size );line-height:var( --e-global-typography-61eed76-line-height );}.elementor-kit-18 h4{font-size:var( --e-global-typography-92b0a2d-font-size );line-height:var( --e-global-typography-92b0a2d-line-height );}.elementor-kit-18 h5{font-size:var( --e-global-typography-f500460-font-size );line-height:var( --e-global-typography-f500460-line-height );}.elementor-kit-18 h6{font-size:var( --e-global-typography-ba6914a-font-size );line-height:var( --e-global-typography-ba6914a-line-height );}.elementor-kit-18 button,.elementor-kit-18 input[type="button"],.elementor-kit-18 input[type="submit"],.elementor-kit-18 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-18 label{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-18 input:not([type="button"]):not([type="submit"]),.elementor-kit-18 textarea,.elementor-kit-18 .elementor-field-textual{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-18{--e-global-typography-primary-font-size:40px;--e-global-typography-secondary-font-size:34px;--e-global-typography-text-font-size:15px;--e-global-typography-accent-font-size:13px;--e-global-typography-61eed76-font-size:28px;--e-global-typography-92b0a2d-font-size:24px;--e-global-typography-f500460-font-size:20px;--e-global-typography-ba6914a-font-size:16px;--e-global-typography-317d263-font-size:130px;--e-global-typography-99dd0b2-font-size:55px;--e-global-typography-2bd9da1-font-size:48px;--e-global-typography-f95c007-font-size:13px;--e-global-typography-f95c007-line-height:1.2em;--e-global-typography-74bb46b-font-size:13px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-18 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-18 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-18 h3{font-size:var( --e-global-typography-61eed76-font-size );line-height:var( --e-global-typography-61eed76-line-height );}.elementor-kit-18 h4{font-size:var( --e-global-typography-92b0a2d-font-size );line-height:var( --e-global-typography-92b0a2d-line-height );}.elementor-kit-18 h5{font-size:var( --e-global-typography-f500460-font-size );line-height:var( --e-global-typography-f500460-line-height );}.elementor-kit-18 h6{font-size:var( --e-global-typography-ba6914a-font-size );line-height:var( --e-global-typography-ba6914a-line-height );}.elementor-kit-18 button,.elementor-kit-18 input[type="button"],.elementor-kit-18 input[type="submit"],.elementor-kit-18 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-18 label{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-18 input:not([type="button"]):not([type="submit"]),.elementor-kit-18 textarea,.elementor-kit-18 .elementor-field-textual{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* =========================
   UI BASE + PALETA GLOBAL
   ========================= */
:root{
  --brand-ink:#1F2937;
  --brand-purple:#7A3E92;         /* Títulos */
  --brand-purple-200:#B997CA;     /* Tinte claro */
  --bg-lavender:#F6F0F9;          /* Fondo alterno */
  --line:#E8E3F4;                 /* Línea sutil */
  --white:#fff;

  --radius-outer:16px;
  --radius:12px;
  --shadow:0 10px 30px rgba(2,6,23,.06);
  --shadow-lg:0 14px 34px rgba(2,6,23,.10);
  --focus:#5B21B6; /* púrpura más oscuro para accesibilidad */
}

/* (Opcional) Fuentes de Google
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Poppins:wght@600;700;800&display=swap');
*/

/* Respeta usuarios con reducción de movimiento */
@media (prefers-reduced-motion: reduce){
  *{ animation:none !important; transition:none !important; }
}

/* =========================
   TIPOGRAFÍAS (FORZADAS)
   ========================= */
/* Títulos */
:where(h1,h2,h3,h4,h5,h6,.elementor-heading-title){
  font-family: 'Poppins', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: .2px;
  color: var(--brand-purple);
}
/* Texto general */
:where(body,p,li,ul,ol,dl,small,span,a,blockquote,figcaption,label,input,textarea,select,button,.elementor-widget-text-editor,.woocommerce,.woocommerce div,.woocommerce p){
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif !important;
  color: var(--brand-ink);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Tipografía de títulos más estable en móviles */
@media (max-width: 767px){
  h1{ font-size: clamp(28px, 6vw, 36px); }
  h2{ font-size: clamp(22px, 5vw, 28px); }
  h3{ font-size: clamp(18px, 4.5vw, 22px); }
}

/* =========================
   CAJAS INFORMATIVAS
   ========================= */
.elementor-widget-container{
  border-radius: var(--radius-outer);
  padding: 20px;
  margin-bottom: 18px;
  box-shadow: var(--shadow);
  background: var(--white); /* base limpia */
}

/* Alternancia SOLO fuera de WooCommerce (solo un tono) */
body:not(.woocommerce):not(.woocommerce-page) .elementor-widget-container:nth-of-type(odd){
  background: var(--bg-lavender);
}
body:not(.woocommerce):not(.woocommerce-page) .elementor-widget-container:nth-of-type(even){
  background: var(--white);
}

/* =========================
   LIMPIEZA FILTROS (Woo/JetSmart)
   ========================= */
.woocommerce .widget,
.woocommerce-page .widget,
.jet-smart-filters-widget,
.jet-smart-filters,
.jet-filters-group,
.jet-checkboxes-list,
.jet-range,
.jet-range-slider,
.jet-active-filters,
.widget-area .widget{
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
}
.woocommerce .widget::before,
.woocommerce .widget::after,
.jet-smart-filters-widget::before,
.jet-smart-filters-widget::after,
.jet-filters-group::before,
.jet-filters-group::after{
  background: transparent !important;
  content: none !important;
}

/* Quitar alternancia en listados de tienda/categoría */
.post-type-archive-product .elementor-widget-container:nth-of-type(odd),
.post-type-archive-product .elementor-widget-container:nth-of-type(even),
.tax-product_cat .elementor-widget-container:nth-of-type(odd),
.tax-product_cat .elementor-widget-container:nth-of-type(even){
  background: transparent !important;
}

/* Forzar transparencia filtros (redundante pero seguro) */
.elementor-widget-jet-smart-filters .elementor-widget-container,
[class*="elementor-widget-jet-smart-filters"] .elementor-widget-container,
.widget_price_filter,
.woocommerce.widget_price_filter,
.woocommerce-widget-layered-nav{
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
}
.elementor-widget-jet-smart-filters .elementor-widget-container::before,
.elementor-widget-jet-smart-filters .elementor-widget-container::after,
.jet-smart-filters-widget::before,
.jet-smart-filters-widget::after,
.widget_price_filter::before,
.widget_price_filter::after{
  content: none !important;
  background: transparent !important;
}
.post-type-archive-product .jet-smart-filters-widget,
.tax-product_cat .jet-smart-filters-widget{
  padding: 10px 0 !important;
  border-radius: 0 !important;
}

/* =========================
   DECORACIÓN TITULARES (limpia)
   ========================= */
:where(h1,h2){ padding-bottom: 0; margin-bottom: initial; }

/* (Se eliminó .titulo-patita y .no-patita) */

/* =========================
   ACCORDION (FAQ) – Estilo morado
   ========================= */
.elementor-accordion .elementor-tab-title{
  background: var(--brand-purple-200);
  color:#111;
  border-radius: var(--radius);
  padding: 14px 16px;
  font-weight: 700;
  box-shadow: var(--shadow);
  position: relative;
}
.elementor-accordion .elementor-tab-title .elementor-accordion-icon{
  filter: saturate(1.05);
}
.elementor-accordion .elementor-tab-content{
  background: var(--white);
  border-left: 4px solid var(--brand-purple);
  border-radius: 0 0 var(--radius) var(--radius);
  padding: 14px 16px;
  box-shadow: var(--shadow);
}
/* Enfoques accesibles */
.elementor-accordion .elementor-tab-title:focus-visible{
  outline:3px solid var(--focus);
  outline-offset:3px;
  border-radius: calc(var(--radius) + 2px);
}

/* =========================
   GALERÍA / IMÁGENES
   ========================= */
.gallery img,
.elementor-gallery__img{
  border-radius: 12px;
  transition: transform .25s ease, box-shadow .25s ease;
}
.gallery img:hover,
.elementor-gallery__img:hover{
  transform: translateY(-3px) scale(1.03);
  box-shadow: var(--shadow-lg);
  outline: 2px solid var(--brand-purple);
  outline-offset: 2px;
}

/* =========================
   MINI CARRITO / ICONOS
   ========================= */
.elementor-menu-cart__toggle,
.woocommerce .widget_shopping_cart_icon,
a.elementor-button.elementor-size-sm.elementor-menu-cart__toggle_button{
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
  padding: 0 !important;
}
/* Burbuja contador */
.elementor-menu-cart__toggle .elementor-button-icon-qty{
  background:#FF4D4D !important;
  color:#fff !important;
  font-size:12px;
  font-weight:700;
  min-width:18px; min-height:18px;
  border-radius:50%;
  top:-6px; right:-6px;
}

/* Botones minicart igualados */
.woocommerce-mini-cart__buttons a,
.woocommerce-mini-cart__buttons .button{
  display:inline-flex;
  align-items:center; justify-content:center;
  min-height:48px;
  padding:12px 20px;
  font-size:15px; line-height:1.2;
  border-radius: 10px;
  box-sizing:border-box;
  transition: transform .15s ease, box-shadow .25s ease, background .25s ease;
}
.woocommerce-mini-cart__buttons a{
  flex:1; text-align:center;
}
.woocommerce-mini-cart__buttons{
  display:flex; gap:10px;
}
/* CTA primario vs secundario (sin coral/miel) */
.woocommerce-mini-cart__buttons .checkout{
  background: var(--brand-purple); color:#fff !important; border:none;
}
.woocommerce-mini-cart__buttons .checkout:hover{
  background: var(--focus); transform: translateY(-2px);
}
.woocommerce-mini-cart__buttons .view-cart{
  background: var(--white);
  color: var(--brand-purple) !important;
  border: 2px solid var(--brand-purple);
}
.woocommerce-mini-cart__buttons .view-cart:hover{
  background: var(--brand-purple); color:#fff !important;
}

/* =========================
   ENLACES Y FOCUS STATES
   ========================= */
a:focus-visible,
button:focus-visible,
input:focus-visible,
.select2-selection:focus-visible{
  outline:3px solid var(--focus);
  outline-offset:3px;
  border-radius: 8px;
}

/* =========================
   DETALLES FINOS
   ========================= */
:where(.elementor-widget-container){
  border: 1px solid var(--line);
}
:where(.elementor-widget-container):hover{
  box-shadow: var(--shadow-lg);
}

/* =========================
   HEADER SUPERPUESTO SIN STICKY
   ========================= */
:root{
  --header-h: 90px; /* ajusta a la altura real de tu header */
}

/* 1) Sacar el header del flujo y superponerlo */
.elementor-location-header,
.site-header{
  position: absolute !important;
  top: 0; left: 0; right: 0;
  z-index: 9999;
  background: transparent !important;
  box-shadow: none !important;
  margin: 0 !important;
  padding: 0;
}

/* Compatibilidad con barra de admin */
body.admin-bar .elementor-location-header,
body.admin-bar .site-header{ top: 32px; }
@media (max-width:782px){
  body.admin-bar .elementor-location-header,
  body.admin-bar .site-header{ top: 46px; }
}

/* 2) Eliminar el “hueco” que algunos temas dejan tras el header */
.site-header + *,
.elementor-location-header + *{
  margin-top: 0 !important;
}

/* 3) Hacer que el primer section (el hero/banner) suba bajo el header
   y añadir padding-top igual a la altura del header para que
   su contenido no quede oculto tras el header */
.elementor-location-header + .elementor .elementor-section:first-of-type,
.site-header + .elementor .elementor-section:first-of-type,
.elementor-location-header + .site-main .elementor-section:first-of-type,
.site-header + .site-main .elementor-section:first-of-type{
  margin-top: calc(-1 * var(--header-h)) !important;
  padding-top: var(--header-h) !important;
}

/* Si quieres texto/iconos en blanco cuando el header está sobre el banner */
.site-header,
.site-header a,
.site-header .elementor-nav-menu--main .elementor-item{
  color: #fff !important;
}
.site-header i,
.site-header svg,
.site-header .elementor-button-icon{
  filter: brightness(0) invert(1);
}

/* PÁGINAS SIN HERO: añade la clase "no-hero" al body (Elementor > Ajustes de página > Body classes) */
.no-hero .elementor-location-header,
.no-hero .site-header{
  position: relative !important;
  background: #fff !important;
  color: var(--brand-ink) !important;
  box-shadow: 0 10px 30px rgba(2,6,23,.06) !important;
}
.no-hero .elementor-location-header + .elementor .elementor-section:first-of-type,
.no-hero .site-header + .elementor .elementor-section:first-of-type,
.no-hero .elementor-location-header + .site-main .elementor-section:first-of-type,
.no-hero .site-header + .site-main .elementor-section:first-of-type{
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* ==== FORZAR NO-STICKY EN EL HEADER (anula cualquier fixed/sticky) ==== */

/* Tu header siempre absoluto arriba (superpuesto al banner) */
.elementor-location-header,
.site-header{
  position: absolute !important;
  top: 0 !important; left: 0; right: 0;
  transform: none !important;
}

/* Si Elementor intenta poner fixed/sticky al hacer scroll, lo anulamos */
.elementor-sticky--active .elementor-location-header,
.elementor-sticky--effects .elementor-location-header,
.elementor-sticky--active .site-header,
.elementor-sticky--effects .site-header{
  position: absolute !important;
  top: 0 !important;
  transform: none !important;
}

/* Temas que usan clases propias de sticky */
.site-header.is-sticky,
.sticky-header,
.header-sticky{
  position: absolute !important;
  top: 0 !important;
}

/* Por si sticky aplica al contenedor interno del header */
.elementor-location-header .e-con[data-element_type="container"],
.site-header .e-con[data-element_type="container"]{
  transform: none !important;
}

/* (Mantengo lo de superponer y ajustar el hero) */
:root{ --header-h: 90px; }
.site-header + *,
.elementor-location-header + *{ margin-top: 0 !important; }
.elementor-location-header + .elementor .elementor-section:first-of-type,
.site-header + .elementor .elementor-section:first-of-type,
.elementor-location-header + .site-main .elementor-section:first-of-type,
.site-header + .site-main .elementor-section:first-of-type{
  margin-top: calc(-1 * var(--header-h)) !important;
  padding-top: var(--header-h) !important;
}

/* ======== FONDO BLANCO TOTAL ======== */
.single-product,
.single-product body,
.single-product #content,
.single-product .site,
.single-product .content-area,
.single-product .site-main,
.single-product .woocommerce {
  background-color: #ffffff !important;
}

/* ======= META DEL PRODUCTO (SKU, CATEGORÍAS, MARCA) ======= */
.single-product .product_meta {
  margin-top: 24px !important;
  font-size: 0.9rem !important;
  line-height: 1.6 !important;
  color: #333 !important;
  font-weight: 400 !important;
  border-top: 1px solid #e2e2e2 !important;
  padding-top: 10px !important;
}

/* Cada línea (span) */
.single-product .product_meta > span {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 6px !important;
  padding: 8px 0 !important;
  border-bottom: 1px solid #e2e2e2 !important;
}

/* Etiquetas (SKU, CATEGORÍAS, MARCA) */
.single-product .product_meta > span strong {
  font-weight: 600 !important;
  color: #111 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.02em !important;
  min-width: 110px !important; /* mantiene alineación vertical */
}

/* Enlaces y texto */
.single-product .product_meta a {
  color: #555 !important;
  text-decoration: none !important;
  transition: color 0.2s ease;
}

.single-product .product_meta a:hover {
  color: #b498c8 !important; /* tono lila */
  text-decoration: underline !important;
}

/* Quita línea inferior final */
.single-product .product_meta > span:last-child {
  border-bottom: none !important;
}

/* ====== BLOQUE PESO GLOBAL ====== */

/* Forzar que el contenedor del atributo (la fila donde va PESO + select)
   sea inline-flex limpio */
.single-product td.label,
.single-product td.value {
  background: transparent !important;
  border: 0 !important;
  padding: 0 0 0 0 !important;
  margin: 0 !important;
  line-height: 1.2 !important;
}

/* El label "PESO" */
.single-product td.label {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 8px !important;

  font-size: 0.8rem !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.03em !important;
  color: #1a1a1a !important;

  /* quitamos cualquier caja gris que lo envuelva */
  background-color: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

/* Que el contenedor que agrupa label + value se comporte como fila */
.single-product td.label + td.value {
  display: inline-flex !important;
  align-items: center !important;
  margin-left: 10px !important;
}

/* ====== EL SELECT (peso) ====== */

.single-product select#peso,
.single-product select.attribute_peso,
.single-product .attribute_peso,
.single-product [name="attribute_peso"],
.single-product select[name="attribute_peso"] {
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;

  background-color: #ffffff !important;
  border: 1px solid #cfc6dc !important;         /* borde gris-lila suave */
  border-radius: 8px !important;
  padding: 10px 36px 10px 12px !important;
  font-size: 0.9rem !important;
  line-height: 1.4 !important;
  color: #1a1a1a !important;
  min-width: 160px !important;
  cursor: pointer !important;
  font-weight: 500 !important;

  box-shadow: 0 2px 4px rgba(0,0,0,0.04) !important;
  transition: all 0.2s ease !important;

  /* flecha personalizada */
  background-image:
    linear-gradient(to bottom, transparent 0%, transparent 100%),
    radial-gradient(#1a1a1a 0%, #1a1a1a 100%) !important;
  background-position: right 12px center, right 8px center !important;
  background-size: 10px 10px, 0 !important;
  background-repeat: no-repeat !important;
}

/* hover / focus */
.single-product select#peso:hover,
.single-product select.attribute_peso:hover,
.single-product .attribute_peso:hover,
.single-product [name="attribute_peso"]:hover,
.single-product select[name="attribute_peso"]:hover,
.single-product select#peso:focus,
.single-product select.attribute_peso:focus,
.single-product .attribute_peso:focus,
.single-product [name="attribute_peso"]:focus,
.single-product select[name="attribute_peso"]:focus {
  border-color: #b498c8 !important;
  box-shadow: 0 0 0 3px rgba(180,152,200,0.22) !important;
  outline: none !important;
}

/* ====== AJUSTE DE LA FILA ENTERA ======
   Esto intenta forzar que "PESO [select]" no se quede roto encima,
   sino que se comporte visualmente como un bloque horizontal */
.single-product select#peso,
.single-product td.label,
.single-product td.value {
  vertical-align: middle !important;
}

/* ===== Separar "PESO" del .elementor-kit-18 ===== */

/* Aplica al contenedor general del atributo */
.single-product .summary td.label {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important; /* 🔥 esta propiedad añade aire automático entre ellos */
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
}

/* Si el tema no aplica flex correctamente, hacemos fallback con margen */
.single-product .summary td.label > *:not(:last-child) {
  margin-right: 12px !important;
}

/* Ajuste del select */
.single-product .summary td.label select,
.single-product .summary td.label .attribute_peso,
.single-product .summary td.label [name="attribute_peso"] {
  appearance: none !important;
  background-color: #fff !important;
  border: 1px solid #cfc6dc !important;
  border-radius: 8px !important;
  padding: 10px 36px 10px 12px !important;
  font-size: 0.9rem !important;
  line-height: 1.4 !important;
  color: #1a1a1a !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04) !important;
}

.single-product .summary td.label select:hover,
.single-product .summary td.label select:focus {
  border-color: #b498c8 !important;
  box-shadow: 0 0 0 3px rgba(180, 152, 200, 0.22) !important;
  outline: none !important;
}/* End custom CSS */