.elementor-287 .elementor-element.elementor-element-f6a831d{--display:flex;--min-height:152px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-287 .elementor-element.elementor-element-8ae19c8{--display:flex;--min-height:433px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:65px;--padding-right:65px;}.elementor-287 .elementor-element.elementor-element-354a610{--display:flex;--min-height:69vh;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-287 .elementor-element.elementor-element-354a610:not(.elementor-motion-effects-element-type-background), .elementor-287 .elementor-element.elementor-element-354a610 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://invitacionesdigitales.pro/wp-content/uploads/2026/01/PORTADA-CHEVROLETT1.jpg");background-position:center center;background-repeat:no-repeat;background-size:contain;}.elementor-287 .elementor-element.elementor-element-05c8166{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-287 .elementor-element.elementor-element-b18ea9b .elementor-heading-title{font-family:"Arial", Sans-serif;}.elementor-287 .elementor-element.elementor-element-242085d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-287 .elementor-element.elementor-element-d0ef7eb .elementor-heading-title{font-family:"Arial", Sans-serif;}.elementor-287 .elementor-element.elementor-element-2c2f53b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-287 .elementor-element.elementor-element-186b580 .elementor-heading-title{font-family:"Arial", Sans-serif;}.elementor-287 .elementor-element.elementor-element-cb53ab4{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-287 .elementor-element.elementor-element-0f76042 .elementor-heading-title{font-family:"Arial", Sans-serif;}.elementor-287 .elementor-element.elementor-element-0278c32{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-287 .elementor-element.elementor-element-9bc5d46 .elementor-heading-title{font-family:"Arial", Sans-serif;}.elementor-287 .elementor-element.elementor-element-eef78d3{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-287 .elementor-element.elementor-element-1e8451d .elementor-heading-title{font-family:"Arial", Sans-serif;}.elementor-287 .elementor-element.elementor-element-0c0999a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-287 .elementor-element.elementor-element-836597b .elementor-heading-title{font-family:"Arial", Sans-serif;}.elementor-287 .elementor-element.elementor-element-1eb04cd{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-287 .elementor-element.elementor-element-bdcb80d .elementor-heading-title{font-family:"Arial", Sans-serif;}.elementor-287 .elementor-element.elementor-element-020ae9e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-287 .elementor-element.elementor-element-57bd7fd .elementor-heading-title{font-family:"Arial", Sans-serif;}.elementor-287 .elementor-element.elementor-element-696db2d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-287 .elementor-element.elementor-element-0bcde8a .elementor-heading-title{font-family:"Arial", Sans-serif;}.elementor-287 .elementor-element.elementor-element-2781954{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-287 .elementor-element.elementor-element-ddac64e .elementor-heading-title{font-family:"Arial", Sans-serif;}.elementor-287 .elementor-element.elementor-element-67e4ef3{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-287 .elementor-element.elementor-element-45d27a8 .elementor-heading-title{font-family:"Arial", Sans-serif;}.elementor-287 .elementor-element.elementor-element-1164115{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-287 .elementor-element.elementor-element-3318351 .elementor-heading-title{font-family:"Arial", Sans-serif;}.elementor-287 .elementor-element.elementor-element-adf4de2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-287 .elementor-element.elementor-element-ef0bb62 .elementor-heading-title{font-family:"Arial", Sans-serif;}.elementor-287 .elementor-element.elementor-element-b9a8cbe{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-287 .elementor-element.elementor-element-013a1ee .elementor-heading-title{font-family:"Arial", Sans-serif;}@media(max-width:767px){.elementor-287 .elementor-element.elementor-element-8ae19c8{--min-height:0px;--padding-top:15px;--padding-bottom:0px;--padding-left:12px;--padding-right:12px;}.elementor-287 .elementor-element.elementor-element-354a610{--min-height:17vh;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}@media(min-width:768px){.elementor-287 .elementor-element.elementor-element-8ae19c8{--width:100%;}.elementor-287 .elementor-element.elementor-element-354a610{--width:100%;}}/* Start custom CSS for container, class: .elementor-element-05c8166 *//* =========================================================
   Banner Hero Completo
   Pegar en: Contenedor → Avanzado → CSS Personalizado
   Estructura requerida: 1 imagen + 2 headings
   ========================================================= */

/* ===== CONTENEDOR PRINCIPAL ===== */
.elementor-287 .elementor-element.elementor-element-05c8166 {
  position: relative !important;
  --side-gap: 8px;
  --radius: 28px;
  --text-right: 6%;
  --text-shift-x: -130px;
  --text-maxw: 90%;
  --title-separation-up: 44px;
  --title-separation-down: 22px;
  --t1-size: clamp(34px, 3.6vw, 60px);
  --t2-size: clamp(64px, 6.6vw, 140px);
  width: calc(100% - (var(--side-gap) * 2)) !important;
  margin: 30px auto !important;
  overflow: hidden !important;
  padding: 0 !important;
  border-radius: var(--radius) !important;
  isolation: isolate !important;
}

.elementor-287 .elementor-element.elementor-element-05c8166::before {
  content: none !important;
  display: none !important;
}

.elementor-287 .elementor-element.elementor-element-05c8166.e-con-boxed > .e-con-inner {
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

.elementor-287 .elementor-element.elementor-element-05c8166 .elementor-element,
.elementor-287 .elementor-element.elementor-element-05c8166 .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

/* ===== IMAGEN ===== */
.elementor-287 .elementor-element.elementor-element-05c8166 .elementor-widget-image img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 1534 / 553 !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: var(--radius) !important;
  vertical-align: middle !important;
}

/* ===== TODOS LOS HEADINGS - POSICIÓN BASE ===== */
.elementor-287 .elementor-element.elementor-element-05c8166 .elementor-widget-heading {
  position: absolute !important;
  top: 50% !important;
  right: var(--text-right) !important;
  left: auto !important;
  z-index: 5 !important;
  pointer-events: none !important;
  width: max-content !important;
  max-width: var(--text-maxw) !important;
  text-align: center !important;
  white-space: nowrap !important;
}

.elementor-287 .elementor-element.elementor-element-05c8166 .elementor-widget-heading .elementor-heading-title {
  color: #ffffff !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  text-shadow: 0 2px 10px rgba(0,0,0,.35) !important;
  display: inline-block !important;
}

/* ===== TEXTO 1 (PRIMER HEADING) ===== */
.elementor-287 .elementor-element.elementor-element-05c8166 .elementor-widget-heading {
  transform: translate(calc(50% + var(--text-shift-x)), calc(-50% - var(--title-separation-up))) !important;
}

.elementor-287 .elementor-element.elementor-element-05c8166 .elementor-widget-heading .elementor-heading-title {
  font-family: "Bebas Neue", sans-serif !important;
  font-size: var(--t1-size) !important;
  letter-spacing: 0.08em !important;
}

/* ===== TEXTO 2 (SEGUNDO HEADING - sobrescribe al primero) ===== */
.elementor-287 .elementor-element.elementor-element-05c8166 .elementor-widget-heading ~ .elementor-widget-heading {
  transform: translate(calc(50% + var(--text-shift-x)), calc(-50% + var(--title-separation-down))) !important;
}

.elementor-287 .elementor-element.elementor-element-05c8166 .elementor-widget-heading ~ .elementor-widget-heading .elementor-heading-title {
  font-family: "Hatten", sans-serif !important;
  font-size: var(--t2-size) !important;
  letter-spacing: 0.02em !important;
  transform: scaleY(1.40) !important;
  transform-origin: center !important;
}

/* ===== PC (1025px+) ===== */
@media (min-width: 1025px) {
  .elementor-287 .elementor-element.elementor-element-05c8166 {
    --side-gap: 40px;
    --radius: 28px;
    width: calc(100% - (var(--side-gap) * 2)) !important;
    max-width: none !important;
    margin-top: 30px !important;
    margin-bottom: 30px !important;
    --text-right: 6%;
    --text-shift-x: -130px;
    --title-separation-up: calc(clamp(34px, calc(var(--t2-size) * 0.34), 78px) + 9px);
    --title-separation-down: calc(clamp(16px, calc(var(--t2-size) * 0.16), 40px) + 9px);
  }
}

/* ===== TABLET (768px - 1024px) ===== */
@media (max-width: 1024px) {
  .elementor-287 .elementor-element.elementor-element-05c8166 {
    --side-gap: 10px;
    --radius: 22px;
    margin-top: 20px !important;
    margin-bottom: 20px !important;
    --title-separation-up: 28px;
    --title-separation-down: 14px;
    --t1-size: clamp(24px, 3.4vw, 40px);
    --t2-size: clamp(40px, 6.2vw, 86px);
    --text-right: 16px;
    --text-maxw: 88%;
    --text-shift-x: -80px;
  }
  
  .elementor-287 .elementor-element.elementor-element-05c8166 .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}

/* ===== MÓVIL (767px-) ===== */
@media (max-width: 767px) {
  .elementor-287 .elementor-element.elementor-element-05c8166 {
    --side-gap: 8px;
    --radius: 16px;
    margin-top: 16px !important;
    margin-bottom: 16px !important;
    --title-separation-up: 18px;
    --title-separation-down: 10px;
    --t1-size: clamp(16px, 4.2vw, 24px);
    --t2-size: clamp(26px, 7.4vw, 50px);
    --text-right: 10px;
    --text-maxw: 85%;
    --text-shift-x: -45px;
  }
  
  .elementor-287 .elementor-element.elementor-element-05c8166 .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-242085d *//* =========================================================
   Banner Hero Completo
   Pegar en: Contenedor → Avanzado → CSS Personalizado
   Estructura requerida: 1 imagen + 2 headings

   CAMBIO ÚNICO:
   - Textos anclados a la IZQUIERDA (antes a la derecha)
   ========================================================= */

/* ===== CONTENEDOR PRINCIPAL ===== */
.elementor-287 .elementor-element.elementor-element-242085d {
  position: relative !important;
  --side-gap: 8px;
  --radius: 28px;

  /* antes: --text-right */
  --text-left: 6%;

  /* antes era negativo para empujar a la izquierda desde right.
     ahora lo invertimos a positivo para empujar a la derecha desde left. */
  --text-shift-x: 130px;

  --text-maxw: 90%;
  --title-separation-up: 44px;
  --title-separation-down: 22px;
  --t1-size: clamp(34px, 3.6vw, 60px);
  --t2-size: clamp(64px, 6.6vw, 140px);
  width: calc(100% - (var(--side-gap) * 2)) !important;
  margin: 30px auto !important;
  overflow: hidden !important;
  padding: 0 !important;
  border-radius: var(--radius) !important;
  isolation: isolate !important;
}

.elementor-287 .elementor-element.elementor-element-242085d::before {
  content: none !important;
  display: none !important;
}

.elementor-287 .elementor-element.elementor-element-242085d.e-con-boxed > .e-con-inner {
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

.elementor-287 .elementor-element.elementor-element-242085d .elementor-element,
.elementor-287 .elementor-element.elementor-element-242085d .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

/* ===== IMAGEN ===== */
.elementor-287 .elementor-element.elementor-element-242085d .elementor-widget-image img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 1534 / 553 !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: var(--radius) !important;
  vertical-align: middle !important;
}

/* ===== TODOS LOS HEADINGS - POSICIÓN BASE (AHORA IZQUIERDA) ===== */
.elementor-287 .elementor-element.elementor-element-242085d .elementor-widget-heading {
  position: absolute !important;
  top: 50% !important;

  left: var(--text-left) !important;
  right: auto !important;

  z-index: 5 !important;
  pointer-events: none !important;
  width: max-content !important;
  max-width: var(--text-maxw) !important;
  text-align: center !important;
  white-space: nowrap !important;
}

.elementor-287 .elementor-element.elementor-element-242085d .elementor-widget-heading .elementor-heading-title {
  color: #ffffff !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  text-shadow: 0 2px 10px rgba(0,0,0,.35) !important;
  display: inline-block !important;
}

/* ===== TEXTO 1 (PRIMER HEADING) =====
   Nota: al estar anclado a left, usamos -50% en X
*/
.elementor-287 .elementor-element.elementor-element-242085d .elementor-widget-heading {
  transform: translate(calc(-50% + var(--text-shift-x)), calc(-50% - var(--title-separation-up))) !important;
}

.elementor-287 .elementor-element.elementor-element-242085d .elementor-widget-heading .elementor-heading-title {
  font-family: "Bebas Neue", sans-serif !important;
  font-size: var(--t1-size) !important;
  letter-spacing: 0.08em !important;
}

/* ===== TEXTO 2 (SEGUNDO HEADING - sobrescribe al primero) ===== */
.elementor-287 .elementor-element.elementor-element-242085d .elementor-widget-heading ~ .elementor-widget-heading {
  transform: translate(calc(-50% + var(--text-shift-x)), calc(-50% + var(--title-separation-down))) !important;
}

.elementor-287 .elementor-element.elementor-element-242085d .elementor-widget-heading ~ .elementor-widget-heading .elementor-heading-title {
  font-family: "Hatten", sans-serif !important;
  font-size: var(--t2-size) !important;
  letter-spacing: 0.02em !important;
  transform: scaleY(1.40) !important;
  transform-origin: center !important;
}

/* ===== PC (1025px+) ===== */
@media (min-width: 1025px) {
  .elementor-287 .elementor-element.elementor-element-242085d {
    --side-gap: 40px;
    --radius: 28px;
    width: calc(100% - (var(--side-gap) * 2)) !important;
    max-width: none !important;
    margin-top: 30px !important;
    margin-bottom: 30px !important;

    --text-left: 6%;
    --text-shift-x: 130px;

    --title-separation-up: calc(clamp(34px, calc(var(--t2-size) * 0.34), 78px) + 9px);
    --title-separation-down: calc(clamp(16px, calc(var(--t2-size) * 0.16), 40px) + 9px);
  }
}

/* ===== TABLET (768px - 1024px) ===== */
@media (max-width: 1024px) {
  .elementor-287 .elementor-element.elementor-element-242085d {
    --side-gap: 10px;
    --radius: 22px;
    margin-top: 20px !important;
    margin-bottom: 20px !important;
    --title-separation-up: 28px;
    --title-separation-down: 14px;
    --t1-size: clamp(24px, 3.4vw, 40px);
    --t2-size: clamp(40px, 6.2vw, 86px);

    --text-left: 16px;
    --text-maxw: 88%;
    --text-shift-x: 80px;
  }

  .elementor-287 .elementor-element.elementor-element-242085d .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}

/* ===== MÓVIL (767px-) ===== */
@media (max-width: 767px) {
  .elementor-287 .elementor-element.elementor-element-242085d {
    --side-gap: 8px;
    --radius: 16px;
    margin-top: 16px !important;
    margin-bottom: 16px !important;
    --title-separation-up: 18px;
    --title-separation-down: 10px;
    --t1-size: clamp(16px, 4.2vw, 24px);
    --t2-size: clamp(26px, 7.4vw, 50px);

    --text-left: 10px;
    --text-maxw: 85%;
    --text-shift-x: 45px;
  }

  .elementor-287 .elementor-element.elementor-element-242085d .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2c2f53b *//* =========================================================
   Banner Hero Completo
   Pegar en: Contenedor → Avanzado → CSS Personalizado
   Estructura requerida: 1 imagen + 2 headings
   ========================================================= */

/* ===== CONTENEDOR PRINCIPAL ===== */
.elementor-287 .elementor-element.elementor-element-2c2f53b {
  position: relative !important;
  --side-gap: 8px;
  --radius: 28px;
  --text-right: 6%;
  --text-shift-x: -130px;
  --text-maxw: 90%;
  --title-separation-up: 44px;
  --title-separation-down: 22px;
  --t1-size: clamp(34px, 3.6vw, 60px);
  --t2-size: clamp(64px, 6.6vw, 140px);
  width: calc(100% - (var(--side-gap) * 2)) !important;
  margin: 30px auto !important;
  overflow: hidden !important;
  padding: 0 !important;
  border-radius: var(--radius) !important;
  isolation: isolate !important;
}

.elementor-287 .elementor-element.elementor-element-2c2f53b::before {
  content: none !important;
  display: none !important;
}

.elementor-287 .elementor-element.elementor-element-2c2f53b.e-con-boxed > .e-con-inner {
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

.elementor-287 .elementor-element.elementor-element-2c2f53b .elementor-element,
.elementor-287 .elementor-element.elementor-element-2c2f53b .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

/* ===== IMAGEN ===== */
.elementor-287 .elementor-element.elementor-element-2c2f53b .elementor-widget-image img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 1534 / 553 !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: var(--radius) !important;
  vertical-align: middle !important;
}

/* ===== TODOS LOS HEADINGS - POSICIÓN BASE ===== */
.elementor-287 .elementor-element.elementor-element-2c2f53b .elementor-widget-heading {
  position: absolute !important;
  top: 50% !important;
  right: var(--text-right) !important;
  left: auto !important;
  z-index: 5 !important;
  pointer-events: none !important;
  width: max-content !important;
  max-width: var(--text-maxw) !important;
  text-align: center !important;
  white-space: nowrap !important;
}

.elementor-287 .elementor-element.elementor-element-2c2f53b .elementor-widget-heading .elementor-heading-title {
  color: #ffffff !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  text-shadow: 0 2px 10px rgba(0,0,0,.35) !important;
  display: inline-block !important;
}

/* ===== TEXTO 1 (PRIMER HEADING) ===== */
.elementor-287 .elementor-element.elementor-element-2c2f53b .elementor-widget-heading {
  transform: translate(calc(50% + var(--text-shift-x)), calc(-50% - var(--title-separation-up))) !important;
}

.elementor-287 .elementor-element.elementor-element-2c2f53b .elementor-widget-heading .elementor-heading-title {
  font-family: "Bebas Neue", sans-serif !important;
  font-size: var(--t1-size) !important;
  letter-spacing: 0.08em !important;
}

/* ===== TEXTO 2 (SEGUNDO HEADING - sobrescribe al primero) ===== */
.elementor-287 .elementor-element.elementor-element-2c2f53b .elementor-widget-heading ~ .elementor-widget-heading {
  transform: translate(calc(50% + var(--text-shift-x)), calc(-50% + var(--title-separation-down))) !important;
}

.elementor-287 .elementor-element.elementor-element-2c2f53b .elementor-widget-heading ~ .elementor-widget-heading .elementor-heading-title {
  font-family: "Hatten", sans-serif !important;
  font-size: var(--t2-size) !important;
  letter-spacing: 0.02em !important;
  transform: scaleY(1.40) !important;
  transform-origin: center !important;
}

/* ===== PC (1025px+) ===== */
@media (min-width: 1025px) {
  .elementor-287 .elementor-element.elementor-element-2c2f53b {
    --side-gap: 40px;
    --radius: 28px;
    width: calc(100% - (var(--side-gap) * 2)) !important;
    max-width: none !important;
    margin-top: 30px !important;
    margin-bottom: 30px !important;
    --text-right: 6%;
    --text-shift-x: -130px;
    --title-separation-up: calc(clamp(34px, calc(var(--t2-size) * 0.34), 78px) + 9px);
    --title-separation-down: calc(clamp(16px, calc(var(--t2-size) * 0.16), 40px) + 9px);
  }
}

/* ===== TABLET (768px - 1024px) ===== */
@media (max-width: 1024px) {
  .elementor-287 .elementor-element.elementor-element-2c2f53b {
    --side-gap: 10px;
    --radius: 22px;
    margin-top: 20px !important;
    margin-bottom: 20px !important;
    --title-separation-up: 28px;
    --title-separation-down: 14px;
    --t1-size: clamp(24px, 3.4vw, 40px);
    --t2-size: clamp(40px, 6.2vw, 86px);
    --text-right: 16px;
    --text-maxw: 88%;
    --text-shift-x: -80px;
  }
  
  .elementor-287 .elementor-element.elementor-element-2c2f53b .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}

/* ===== MÓVIL (767px-) ===== */
@media (max-width: 767px) {
  .elementor-287 .elementor-element.elementor-element-2c2f53b {
    --side-gap: 8px;
    --radius: 16px;
    margin-top: 16px !important;
    margin-bottom: 16px !important;
    --title-separation-up: 18px;
    --title-separation-down: 10px;
    --t1-size: clamp(16px, 4.2vw, 24px);
    --t2-size: clamp(26px, 7.4vw, 50px);
    --text-right: 10px;
    --text-maxw: 85%;
    --text-shift-x: -45px;
  }
  
  .elementor-287 .elementor-element.elementor-element-2c2f53b .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-cb53ab4 *//* =========================================================
   Banner Hero Completo
   Pegar en: Contenedor → Avanzado → CSS Personalizado
   Estructura requerida: 1 imagen + 2 headings

   CAMBIO ÚNICO:
   - Textos anclados a la IZQUIERDA (antes a la derecha)
   ========================================================= */

/* ===== CONTENEDOR PRINCIPAL ===== */
.elementor-287 .elementor-element.elementor-element-cb53ab4 {
  position: relative !important;
  --side-gap: 8px;
  --radius: 28px;

  /* antes: --text-right */
  --text-left: 6%;

  /* antes era negativo para empujar a la izquierda desde right.
     ahora lo invertimos a positivo para empujar a la derecha desde left. */
  --text-shift-x: 130px;

  --text-maxw: 90%;
  --title-separation-up: 44px;
  --title-separation-down: 22px;
  --t1-size: clamp(34px, 3.6vw, 60px);
  --t2-size: clamp(64px, 6.6vw, 140px);
  width: calc(100% - (var(--side-gap) * 2)) !important;
  margin: 30px auto !important;
  overflow: hidden !important;
  padding: 0 !important;
  border-radius: var(--radius) !important;
  isolation: isolate !important;
}

.elementor-287 .elementor-element.elementor-element-cb53ab4::before {
  content: none !important;
  display: none !important;
}

.elementor-287 .elementor-element.elementor-element-cb53ab4.e-con-boxed > .e-con-inner {
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

.elementor-287 .elementor-element.elementor-element-cb53ab4 .elementor-element,
.elementor-287 .elementor-element.elementor-element-cb53ab4 .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

/* ===== IMAGEN ===== */
.elementor-287 .elementor-element.elementor-element-cb53ab4 .elementor-widget-image img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 1534 / 553 !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: var(--radius) !important;
  vertical-align: middle !important;
}

/* ===== TODOS LOS HEADINGS - POSICIÓN BASE (AHORA IZQUIERDA) ===== */
.elementor-287 .elementor-element.elementor-element-cb53ab4 .elementor-widget-heading {
  position: absolute !important;
  top: 50% !important;

  left: var(--text-left) !important;
  right: auto !important;

  z-index: 5 !important;
  pointer-events: none !important;
  width: max-content !important;
  max-width: var(--text-maxw) !important;
  text-align: center !important;
  white-space: nowrap !important;
}

.elementor-287 .elementor-element.elementor-element-cb53ab4 .elementor-widget-heading .elementor-heading-title {
  color: #ffffff !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  text-shadow: 0 2px 10px rgba(0,0,0,.35) !important;
  display: inline-block !important;
}

/* ===== TEXTO 1 (PRIMER HEADING) =====
   Nota: al estar anclado a left, usamos -50% en X
*/
.elementor-287 .elementor-element.elementor-element-cb53ab4 .elementor-widget-heading {
  transform: translate(calc(-50% + var(--text-shift-x)), calc(-50% - var(--title-separation-up))) !important;
}

.elementor-287 .elementor-element.elementor-element-cb53ab4 .elementor-widget-heading .elementor-heading-title {
  font-family: "Bebas Neue", sans-serif !important;
  font-size: var(--t1-size) !important;
  letter-spacing: 0.08em !important;
}

/* ===== TEXTO 2 (SEGUNDO HEADING - sobrescribe al primero) ===== */
.elementor-287 .elementor-element.elementor-element-cb53ab4 .elementor-widget-heading ~ .elementor-widget-heading {
  transform: translate(calc(-50% + var(--text-shift-x)), calc(-50% + var(--title-separation-down))) !important;
}

.elementor-287 .elementor-element.elementor-element-cb53ab4 .elementor-widget-heading ~ .elementor-widget-heading .elementor-heading-title {
  font-family: "Hatten", sans-serif !important;
  font-size: var(--t2-size) !important;
  letter-spacing: 0.02em !important;
  transform: scaleY(1.40) !important;
  transform-origin: center !important;
}

/* ===== PC (1025px+) ===== */
@media (min-width: 1025px) {
  .elementor-287 .elementor-element.elementor-element-cb53ab4 {
    --side-gap: 40px;
    --radius: 28px;
    width: calc(100% - (var(--side-gap) * 2)) !important;
    max-width: none !important;
    margin-top: 30px !important;
    margin-bottom: 30px !important;

    --text-left: 6%;
    --text-shift-x: 130px;

    --title-separation-up: calc(clamp(34px, calc(var(--t2-size) * 0.34), 78px) + 9px);
    --title-separation-down: calc(clamp(16px, calc(var(--t2-size) * 0.16), 40px) + 9px);
  }
}

/* ===== TABLET (768px - 1024px) ===== */
@media (max-width: 1024px) {
  .elementor-287 .elementor-element.elementor-element-cb53ab4 {
    --side-gap: 10px;
    --radius: 22px;
    margin-top: 20px !important;
    margin-bottom: 20px !important;
    --title-separation-up: 28px;
    --title-separation-down: 14px;
    --t1-size: clamp(24px, 3.4vw, 40px);
    --t2-size: clamp(40px, 6.2vw, 86px);

    --text-left: 16px;
    --text-maxw: 88%;
    --text-shift-x: 80px;
  }

  .elementor-287 .elementor-element.elementor-element-cb53ab4 .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}

/* ===== MÓVIL (767px-) ===== */
@media (max-width: 767px) {
  .elementor-287 .elementor-element.elementor-element-cb53ab4 {
    --side-gap: 8px;
    --radius: 16px;
    margin-top: 16px !important;
    margin-bottom: 16px !important;
    --title-separation-up: 18px;
    --title-separation-down: 10px;
    --t1-size: clamp(16px, 4.2vw, 24px);
    --t2-size: clamp(26px, 7.4vw, 50px);

    --text-left: 10px;
    --text-maxw: 85%;
    --text-shift-x: 45px;
  }

  .elementor-287 .elementor-element.elementor-element-cb53ab4 .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0278c32 *//* =========================================================
   Banner Hero Completo
   Pegar en: Contenedor → Avanzado → CSS Personalizado
   Estructura requerida: 1 imagen + 2 headings
   ========================================================= */

/* ===== CONTENEDOR PRINCIPAL ===== */
.elementor-287 .elementor-element.elementor-element-0278c32 {
  position: relative !important;
  --side-gap: 8px;
  --radius: 28px;
  --text-right: 6%;
  --text-shift-x: -130px;
  --text-maxw: 90%;
  --title-separation-up: 44px;
  --title-separation-down: 22px;
  --t1-size: clamp(34px, 3.6vw, 60px);
  --t2-size: clamp(64px, 6.6vw, 140px);
  width: calc(100% - (var(--side-gap) * 2)) !important;
  margin: 30px auto !important;
  overflow: hidden !important;
  padding: 0 !important;
  border-radius: var(--radius) !important;
  isolation: isolate !important;
}

.elementor-287 .elementor-element.elementor-element-0278c32::before {
  content: none !important;
  display: none !important;
}

.elementor-287 .elementor-element.elementor-element-0278c32.e-con-boxed > .e-con-inner {
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

.elementor-287 .elementor-element.elementor-element-0278c32 .elementor-element,
.elementor-287 .elementor-element.elementor-element-0278c32 .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

/* ===== IMAGEN ===== */
.elementor-287 .elementor-element.elementor-element-0278c32 .elementor-widget-image img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 1534 / 553 !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: var(--radius) !important;
  vertical-align: middle !important;
}

/* ===== TODOS LOS HEADINGS - POSICIÓN BASE ===== */
.elementor-287 .elementor-element.elementor-element-0278c32 .elementor-widget-heading {
  position: absolute !important;
  top: 50% !important;
  right: var(--text-right) !important;
  left: auto !important;
  z-index: 5 !important;
  pointer-events: none !important;
  width: max-content !important;
  max-width: var(--text-maxw) !important;
  text-align: center !important;
  white-space: nowrap !important;
}

.elementor-287 .elementor-element.elementor-element-0278c32 .elementor-widget-heading .elementor-heading-title {
  color: #ffffff !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  text-shadow: 0 2px 10px rgba(0,0,0,.35) !important;
  display: inline-block !important;
}

/* ===== TEXTO 1 (PRIMER HEADING) ===== */
.elementor-287 .elementor-element.elementor-element-0278c32 .elementor-widget-heading {
  transform: translate(calc(50% + var(--text-shift-x)), calc(-50% - var(--title-separation-up))) !important;
}

.elementor-287 .elementor-element.elementor-element-0278c32 .elementor-widget-heading .elementor-heading-title {
  font-family: "Bebas Neue", sans-serif !important;
  font-size: var(--t1-size) !important;
  letter-spacing: 0.08em !important;
}

/* ===== TEXTO 2 (SEGUNDO HEADING - sobrescribe al primero) ===== */
.elementor-287 .elementor-element.elementor-element-0278c32 .elementor-widget-heading ~ .elementor-widget-heading {
  transform: translate(calc(50% + var(--text-shift-x)), calc(-50% + var(--title-separation-down))) !important;
}

.elementor-287 .elementor-element.elementor-element-0278c32 .elementor-widget-heading ~ .elementor-widget-heading .elementor-heading-title {
  font-family: "Hatten", sans-serif !important;
  font-size: var(--t2-size) !important;
  letter-spacing: 0.02em !important;
  transform: scaleY(1.40) !important;
  transform-origin: center !important;
}

/* ===== PC (1025px+) ===== */
@media (min-width: 1025px) {
  .elementor-287 .elementor-element.elementor-element-0278c32 {
    --side-gap: 40px;
    --radius: 28px;
    width: calc(100% - (var(--side-gap) * 2)) !important;
    max-width: none !important;
    margin-top: 30px !important;
    margin-bottom: 30px !important;
    --text-right: 6%;
    --text-shift-x: -130px;
    --title-separation-up: calc(clamp(34px, calc(var(--t2-size) * 0.34), 78px) + 9px);
    --title-separation-down: calc(clamp(16px, calc(var(--t2-size) * 0.16), 40px) + 9px);
  }
}

/* ===== TABLET (768px - 1024px) ===== */
@media (max-width: 1024px) {
  .elementor-287 .elementor-element.elementor-element-0278c32 {
    --side-gap: 10px;
    --radius: 22px;
    margin-top: 20px !important;
    margin-bottom: 20px !important;
    --title-separation-up: 28px;
    --title-separation-down: 14px;
    --t1-size: clamp(24px, 3.4vw, 40px);
    --t2-size: clamp(40px, 6.2vw, 86px);
    --text-right: 16px;
    --text-maxw: 88%;
    --text-shift-x: -80px;
  }
  
  .elementor-287 .elementor-element.elementor-element-0278c32 .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}

/* ===== MÓVIL (767px-) ===== */
@media (max-width: 767px) {
  .elementor-287 .elementor-element.elementor-element-0278c32 {
    --side-gap: 8px;
    --radius: 16px;
    margin-top: 16px !important;
    margin-bottom: 16px !important;
    --title-separation-up: 18px;
    --title-separation-down: 10px;
    --t1-size: clamp(16px, 4.2vw, 24px);
    --t2-size: clamp(26px, 7.4vw, 50px);
    --text-right: 10px;
    --text-maxw: 85%;
    --text-shift-x: -45px;
  }
  
  .elementor-287 .elementor-element.elementor-element-0278c32 .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-eef78d3 *//* =========================================================
   Banner Hero Completo
   Pegar en: Contenedor → Avanzado → CSS Personalizado
   Estructura requerida: 1 imagen + 2 headings

   CAMBIO ÚNICO:
   - Textos anclados a la IZQUIERDA (antes a la derecha)
   ========================================================= */

/* ===== CONTENEDOR PRINCIPAL ===== */
.elementor-287 .elementor-element.elementor-element-eef78d3 {
  position: relative !important;
  --side-gap: 8px;
  --radius: 28px;

  /* antes: --text-right */
  --text-left: 6%;

  /* antes era negativo para empujar a la izquierda desde right.
     ahora lo invertimos a positivo para empujar a la derecha desde left. */
  --text-shift-x: 130px;

  --text-maxw: 90%;
  --title-separation-up: 44px;
  --title-separation-down: 22px;
  --t1-size: clamp(34px, 3.6vw, 60px);
  --t2-size: clamp(64px, 6.6vw, 140px);
  width: calc(100% - (var(--side-gap) * 2)) !important;
  margin: 30px auto !important;
  overflow: hidden !important;
  padding: 0 !important;
  border-radius: var(--radius) !important;
  isolation: isolate !important;
}

.elementor-287 .elementor-element.elementor-element-eef78d3::before {
  content: none !important;
  display: none !important;
}

.elementor-287 .elementor-element.elementor-element-eef78d3.e-con-boxed > .e-con-inner {
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

.elementor-287 .elementor-element.elementor-element-eef78d3 .elementor-element,
.elementor-287 .elementor-element.elementor-element-eef78d3 .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

/* ===== IMAGEN ===== */
.elementor-287 .elementor-element.elementor-element-eef78d3 .elementor-widget-image img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 1534 / 553 !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: var(--radius) !important;
  vertical-align: middle !important;
}

/* ===== TODOS LOS HEADINGS - POSICIÓN BASE (AHORA IZQUIERDA) ===== */
.elementor-287 .elementor-element.elementor-element-eef78d3 .elementor-widget-heading {
  position: absolute !important;
  top: 50% !important;

  left: var(--text-left) !important;
  right: auto !important;

  z-index: 5 !important;
  pointer-events: none !important;
  width: max-content !important;
  max-width: var(--text-maxw) !important;
  text-align: center !important;
  white-space: nowrap !important;
}

.elementor-287 .elementor-element.elementor-element-eef78d3 .elementor-widget-heading .elementor-heading-title {
  color: #ffffff !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  text-shadow: 0 2px 10px rgba(0,0,0,.35) !important;
  display: inline-block !important;
}

/* ===== TEXTO 1 (PRIMER HEADING) =====
   Nota: al estar anclado a left, usamos -50% en X
*/
.elementor-287 .elementor-element.elementor-element-eef78d3 .elementor-widget-heading {
  transform: translate(calc(-50% + var(--text-shift-x)), calc(-50% - var(--title-separation-up))) !important;
}

.elementor-287 .elementor-element.elementor-element-eef78d3 .elementor-widget-heading .elementor-heading-title {
  font-family: "Bebas Neue", sans-serif !important;
  font-size: var(--t1-size) !important;
  letter-spacing: 0.08em !important;
}

/* ===== TEXTO 2 (SEGUNDO HEADING - sobrescribe al primero) ===== */
.elementor-287 .elementor-element.elementor-element-eef78d3 .elementor-widget-heading ~ .elementor-widget-heading {
  transform: translate(calc(-50% + var(--text-shift-x)), calc(-50% + var(--title-separation-down))) !important;
}

.elementor-287 .elementor-element.elementor-element-eef78d3 .elementor-widget-heading ~ .elementor-widget-heading .elementor-heading-title {
  font-family: "Hatten", sans-serif !important;
  font-size: var(--t2-size) !important;
  letter-spacing: 0.02em !important;
  transform: scaleY(1.40) !important;
  transform-origin: center !important;
}

/* ===== PC (1025px+) ===== */
@media (min-width: 1025px) {
  .elementor-287 .elementor-element.elementor-element-eef78d3 {
    --side-gap: 40px;
    --radius: 28px;
    width: calc(100% - (var(--side-gap) * 2)) !important;
    max-width: none !important;
    margin-top: 30px !important;
    margin-bottom: 30px !important;

    --text-left: 6%;
    --text-shift-x: 130px;

    --title-separation-up: calc(clamp(34px, calc(var(--t2-size) * 0.34), 78px) + 9px);
    --title-separation-down: calc(clamp(16px, calc(var(--t2-size) * 0.16), 40px) + 9px);
  }
}

/* ===== TABLET (768px - 1024px) ===== */
@media (max-width: 1024px) {
  .elementor-287 .elementor-element.elementor-element-eef78d3 {
    --side-gap: 10px;
    --radius: 22px;
    margin-top: 20px !important;
    margin-bottom: 20px !important;
    --title-separation-up: 28px;
    --title-separation-down: 14px;
    --t1-size: clamp(24px, 3.4vw, 40px);
    --t2-size: clamp(40px, 6.2vw, 86px);

    --text-left: 16px;
    --text-maxw: 88%;
    --text-shift-x: 80px;
  }

  .elementor-287 .elementor-element.elementor-element-eef78d3 .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}

/* ===== MÓVIL (767px-) ===== */
@media (max-width: 767px) {
  .elementor-287 .elementor-element.elementor-element-eef78d3 {
    --side-gap: 8px;
    --radius: 16px;
    margin-top: 16px !important;
    margin-bottom: 16px !important;
    --title-separation-up: 18px;
    --title-separation-down: 10px;
    --t1-size: clamp(16px, 4.2vw, 24px);
    --t2-size: clamp(26px, 7.4vw, 50px);

    --text-left: 10px;
    --text-maxw: 85%;
    --text-shift-x: 45px;
  }

  .elementor-287 .elementor-element.elementor-element-eef78d3 .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0c0999a *//* =========================================================
   Banner Hero Completo
   Pegar en: Contenedor → Avanzado → CSS Personalizado
   Estructura requerida: 1 imagen + 2 headings
   ========================================================= */

/* ===== CONTENEDOR PRINCIPAL ===== */
.elementor-287 .elementor-element.elementor-element-0c0999a {
  position: relative !important;
  --side-gap: 8px;
  --radius: 28px;
  --text-right: 6%;
  --text-shift-x: -130px;
  --text-maxw: 90%;
  --title-separation-up: 44px;
  --title-separation-down: 22px;
  --t1-size: clamp(34px, 3.6vw, 60px);
  --t2-size: clamp(64px, 6.6vw, 140px);
  width: calc(100% - (var(--side-gap) * 2)) !important;
  margin: 30px auto !important;
  overflow: hidden !important;
  padding: 0 !important;
  border-radius: var(--radius) !important;
  isolation: isolate !important;
}

.elementor-287 .elementor-element.elementor-element-0c0999a::before {
  content: none !important;
  display: none !important;
}

.elementor-287 .elementor-element.elementor-element-0c0999a.e-con-boxed > .e-con-inner {
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

.elementor-287 .elementor-element.elementor-element-0c0999a .elementor-element,
.elementor-287 .elementor-element.elementor-element-0c0999a .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

/* ===== IMAGEN ===== */
.elementor-287 .elementor-element.elementor-element-0c0999a .elementor-widget-image img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 1534 / 553 !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: var(--radius) !important;
  vertical-align: middle !important;
}

/* ===== TODOS LOS HEADINGS - POSICIÓN BASE ===== */
.elementor-287 .elementor-element.elementor-element-0c0999a .elementor-widget-heading {
  position: absolute !important;
  top: 50% !important;
  right: var(--text-right) !important;
  left: auto !important;
  z-index: 5 !important;
  pointer-events: none !important;
  width: max-content !important;
  max-width: var(--text-maxw) !important;
  text-align: center !important;
  white-space: nowrap !important;
}

.elementor-287 .elementor-element.elementor-element-0c0999a .elementor-widget-heading .elementor-heading-title {
  color: #ffffff !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  text-shadow: 0 2px 10px rgba(0,0,0,.35) !important;
  display: inline-block !important;
}

/* ===== TEXTO 1 (PRIMER HEADING) ===== */
.elementor-287 .elementor-element.elementor-element-0c0999a .elementor-widget-heading {
  transform: translate(calc(50% + var(--text-shift-x)), calc(-50% - var(--title-separation-up))) !important;
}

.elementor-287 .elementor-element.elementor-element-0c0999a .elementor-widget-heading .elementor-heading-title {
  font-family: "Bebas Neue", sans-serif !important;
  font-size: var(--t1-size) !important;
  letter-spacing: 0.08em !important;
}

/* ===== TEXTO 2 (SEGUNDO HEADING - sobrescribe al primero) ===== */
.elementor-287 .elementor-element.elementor-element-0c0999a .elementor-widget-heading ~ .elementor-widget-heading {
  transform: translate(calc(50% + var(--text-shift-x)), calc(-50% + var(--title-separation-down))) !important;
}

.elementor-287 .elementor-element.elementor-element-0c0999a .elementor-widget-heading ~ .elementor-widget-heading .elementor-heading-title {
  font-family: "Hatten", sans-serif !important;
  font-size: var(--t2-size) !important;
  letter-spacing: 0.02em !important;
  transform: scaleY(1.40) !important;
  transform-origin: center !important;
}

/* ===== PC (1025px+) ===== */
@media (min-width: 1025px) {
  .elementor-287 .elementor-element.elementor-element-0c0999a {
    --side-gap: 40px;
    --radius: 28px;
    width: calc(100% - (var(--side-gap) * 2)) !important;
    max-width: none !important;
    margin-top: 30px !important;
    margin-bottom: 30px !important;
    --text-right: 6%;
    --text-shift-x: -130px;
    --title-separation-up: calc(clamp(34px, calc(var(--t2-size) * 0.34), 78px) + 9px);
    --title-separation-down: calc(clamp(16px, calc(var(--t2-size) * 0.16), 40px) + 9px);
  }
}

/* ===== TABLET (768px - 1024px) ===== */
@media (max-width: 1024px) {
  .elementor-287 .elementor-element.elementor-element-0c0999a {
    --side-gap: 10px;
    --radius: 22px;
    margin-top: 20px !important;
    margin-bottom: 20px !important;
    --title-separation-up: 28px;
    --title-separation-down: 14px;
    --t1-size: clamp(24px, 3.4vw, 40px);
    --t2-size: clamp(40px, 6.2vw, 86px);
    --text-right: 16px;
    --text-maxw: 88%;
    --text-shift-x: -80px;
  }
  
  .elementor-287 .elementor-element.elementor-element-0c0999a .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}

/* ===== MÓVIL (767px-) ===== */
@media (max-width: 767px) {
  .elementor-287 .elementor-element.elementor-element-0c0999a {
    --side-gap: 8px;
    --radius: 16px;
    margin-top: 16px !important;
    margin-bottom: 16px !important;
    --title-separation-up: 18px;
    --title-separation-down: 10px;
    --t1-size: clamp(16px, 4.2vw, 24px);
    --t2-size: clamp(26px, 7.4vw, 50px);
    --text-right: 10px;
    --text-maxw: 85%;
    --text-shift-x: -45px;
  }
  
  .elementor-287 .elementor-element.elementor-element-0c0999a .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1eb04cd *//* =========================================================
   Banner Hero Completo
   Pegar en: Contenedor → Avanzado → CSS Personalizado
   Estructura requerida: 1 imagen + 2 headings

   CAMBIO ÚNICO:
   - Textos anclados a la IZQUIERDA (antes a la derecha)
   ========================================================= */

/* ===== CONTENEDOR PRINCIPAL ===== */
.elementor-287 .elementor-element.elementor-element-1eb04cd {
  position: relative !important;
  --side-gap: 8px;
  --radius: 28px;

  /* antes: --text-right */
  --text-left: 6%;

  /* antes era negativo para empujar a la izquierda desde right.
     ahora lo invertimos a positivo para empujar a la derecha desde left. */
  --text-shift-x: 130px;

  --text-maxw: 90%;
  --title-separation-up: 44px;
  --title-separation-down: 22px;
  --t1-size: clamp(34px, 3.6vw, 60px);
  --t2-size: clamp(64px, 6.6vw, 140px);
  width: calc(100% - (var(--side-gap) * 2)) !important;
  margin: 30px auto !important;
  overflow: hidden !important;
  padding: 0 !important;
  border-radius: var(--radius) !important;
  isolation: isolate !important;
}

.elementor-287 .elementor-element.elementor-element-1eb04cd::before {
  content: none !important;
  display: none !important;
}

.elementor-287 .elementor-element.elementor-element-1eb04cd.e-con-boxed > .e-con-inner {
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

.elementor-287 .elementor-element.elementor-element-1eb04cd .elementor-element,
.elementor-287 .elementor-element.elementor-element-1eb04cd .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

/* ===== IMAGEN ===== */
.elementor-287 .elementor-element.elementor-element-1eb04cd .elementor-widget-image img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 1534 / 553 !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: var(--radius) !important;
  vertical-align: middle !important;
}

/* ===== TODOS LOS HEADINGS - POSICIÓN BASE (AHORA IZQUIERDA) ===== */
.elementor-287 .elementor-element.elementor-element-1eb04cd .elementor-widget-heading {
  position: absolute !important;
  top: 50% !important;

  left: var(--text-left) !important;
  right: auto !important;

  z-index: 5 !important;
  pointer-events: none !important;
  width: max-content !important;
  max-width: var(--text-maxw) !important;
  text-align: center !important;
  white-space: nowrap !important;
}

.elementor-287 .elementor-element.elementor-element-1eb04cd .elementor-widget-heading .elementor-heading-title {
  color: #ffffff !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  text-shadow: 0 2px 10px rgba(0,0,0,.35) !important;
  display: inline-block !important;
}

/* ===== TEXTO 1 (PRIMER HEADING) =====
   Nota: al estar anclado a left, usamos -50% en X
*/
.elementor-287 .elementor-element.elementor-element-1eb04cd .elementor-widget-heading {
  transform: translate(calc(-50% + var(--text-shift-x)), calc(-50% - var(--title-separation-up))) !important;
}

.elementor-287 .elementor-element.elementor-element-1eb04cd .elementor-widget-heading .elementor-heading-title {
  font-family: "Bebas Neue", sans-serif !important;
  font-size: var(--t1-size) !important;
  letter-spacing: 0.08em !important;
}

/* ===== TEXTO 2 (SEGUNDO HEADING - sobrescribe al primero) ===== */
.elementor-287 .elementor-element.elementor-element-1eb04cd .elementor-widget-heading ~ .elementor-widget-heading {
  transform: translate(calc(-50% + var(--text-shift-x)), calc(-50% + var(--title-separation-down))) !important;
}

.elementor-287 .elementor-element.elementor-element-1eb04cd .elementor-widget-heading ~ .elementor-widget-heading .elementor-heading-title {
  font-family: "Hatten", sans-serif !important;
  font-size: var(--t2-size) !important;
  letter-spacing: 0.02em !important;
  transform: scaleY(1.40) !important;
  transform-origin: center !important;
}

/* ===== PC (1025px+) ===== */
@media (min-width: 1025px) {
  .elementor-287 .elementor-element.elementor-element-1eb04cd {
    --side-gap: 40px;
    --radius: 28px;
    width: calc(100% - (var(--side-gap) * 2)) !important;
    max-width: none !important;
    margin-top: 30px !important;
    margin-bottom: 30px !important;

    --text-left: 6%;
    --text-shift-x: 130px;

    --title-separation-up: calc(clamp(34px, calc(var(--t2-size) * 0.34), 78px) + 9px);
    --title-separation-down: calc(clamp(16px, calc(var(--t2-size) * 0.16), 40px) + 9px);
  }
}

/* ===== TABLET (768px - 1024px) ===== */
@media (max-width: 1024px) {
  .elementor-287 .elementor-element.elementor-element-1eb04cd {
    --side-gap: 10px;
    --radius: 22px;
    margin-top: 20px !important;
    margin-bottom: 20px !important;
    --title-separation-up: 28px;
    --title-separation-down: 14px;
    --t1-size: clamp(24px, 3.4vw, 40px);
    --t2-size: clamp(40px, 6.2vw, 86px);

    --text-left: 16px;
    --text-maxw: 88%;
    --text-shift-x: 80px;
  }

  .elementor-287 .elementor-element.elementor-element-1eb04cd .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}

/* ===== MÓVIL (767px-) ===== */
@media (max-width: 767px) {
  .elementor-287 .elementor-element.elementor-element-1eb04cd {
    --side-gap: 8px;
    --radius: 16px;
    margin-top: 16px !important;
    margin-bottom: 16px !important;
    --title-separation-up: 18px;
    --title-separation-down: 10px;
    --t1-size: clamp(16px, 4.2vw, 24px);
    --t2-size: clamp(26px, 7.4vw, 50px);

    --text-left: 10px;
    --text-maxw: 85%;
    --text-shift-x: 45px;
  }

  .elementor-287 .elementor-element.elementor-element-1eb04cd .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-020ae9e *//* =========================================================
   Banner Hero Completo
   Pegar en: Contenedor → Avanzado → CSS Personalizado
   Estructura requerida: 1 imagen + 2 headings
   ========================================================= */

/* ===== CONTENEDOR PRINCIPAL ===== */
.elementor-287 .elementor-element.elementor-element-020ae9e {
  position: relative !important;
  --side-gap: 8px;
  --radius: 28px;
  --text-right: 6%;
  --text-shift-x: -130px;
  --text-maxw: 90%;
  --title-separation-up: 44px;
  --title-separation-down: 22px;
  --t1-size: clamp(34px, 3.6vw, 60px);
  --t2-size: clamp(64px, 6.6vw, 140px);
  width: calc(100% - (var(--side-gap) * 2)) !important;
  margin: 30px auto !important;
  overflow: hidden !important;
  padding: 0 !important;
  border-radius: var(--radius) !important;
  isolation: isolate !important;
}

.elementor-287 .elementor-element.elementor-element-020ae9e::before {
  content: none !important;
  display: none !important;
}

.elementor-287 .elementor-element.elementor-element-020ae9e.e-con-boxed > .e-con-inner {
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

.elementor-287 .elementor-element.elementor-element-020ae9e .elementor-element,
.elementor-287 .elementor-element.elementor-element-020ae9e .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

/* ===== IMAGEN ===== */
.elementor-287 .elementor-element.elementor-element-020ae9e .elementor-widget-image img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 1534 / 553 !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: var(--radius) !important;
  vertical-align: middle !important;
}

/* ===== TODOS LOS HEADINGS - POSICIÓN BASE ===== */
.elementor-287 .elementor-element.elementor-element-020ae9e .elementor-widget-heading {
  position: absolute !important;
  top: 50% !important;
  right: var(--text-right) !important;
  left: auto !important;
  z-index: 5 !important;
  pointer-events: none !important;
  width: max-content !important;
  max-width: var(--text-maxw) !important;
  text-align: center !important;
  white-space: nowrap !important;
}

.elementor-287 .elementor-element.elementor-element-020ae9e .elementor-widget-heading .elementor-heading-title {
  color: #ffffff !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  text-shadow: 0 2px 10px rgba(0,0,0,.35) !important;
  display: inline-block !important;
}

/* ===== TEXTO 1 (PRIMER HEADING) ===== */
.elementor-287 .elementor-element.elementor-element-020ae9e .elementor-widget-heading {
  transform: translate(calc(50% + var(--text-shift-x)), calc(-50% - var(--title-separation-up))) !important;
}

.elementor-287 .elementor-element.elementor-element-020ae9e .elementor-widget-heading .elementor-heading-title {
  font-family: "Bebas Neue", sans-serif !important;
  font-size: var(--t1-size) !important;
  letter-spacing: 0.08em !important;
}

/* ===== TEXTO 2 (SEGUNDO HEADING - sobrescribe al primero) ===== */
.elementor-287 .elementor-element.elementor-element-020ae9e .elementor-widget-heading ~ .elementor-widget-heading {
  transform: translate(calc(50% + var(--text-shift-x)), calc(-50% + var(--title-separation-down))) !important;
}

.elementor-287 .elementor-element.elementor-element-020ae9e .elementor-widget-heading ~ .elementor-widget-heading .elementor-heading-title {
  font-family: "Hatten", sans-serif !important;
  font-size: var(--t2-size) !important;
  letter-spacing: 0.02em !important;
  transform: scaleY(1.40) !important;
  transform-origin: center !important;
}

/* ===== PC (1025px+) ===== */
@media (min-width: 1025px) {
  .elementor-287 .elementor-element.elementor-element-020ae9e {
    --side-gap: 40px;
    --radius: 28px;
    width: calc(100% - (var(--side-gap) * 2)) !important;
    max-width: none !important;
    margin-top: 30px !important;
    margin-bottom: 30px !important;
    --text-right: 6%;
    --text-shift-x: -130px;
    --title-separation-up: calc(clamp(34px, calc(var(--t2-size) * 0.34), 78px) + 9px);
    --title-separation-down: calc(clamp(16px, calc(var(--t2-size) * 0.16), 40px) + 9px);
  }
}

/* ===== TABLET (768px - 1024px) ===== */
@media (max-width: 1024px) {
  .elementor-287 .elementor-element.elementor-element-020ae9e {
    --side-gap: 10px;
    --radius: 22px;
    margin-top: 20px !important;
    margin-bottom: 20px !important;
    --title-separation-up: 28px;
    --title-separation-down: 14px;
    --t1-size: clamp(24px, 3.4vw, 40px);
    --t2-size: clamp(40px, 6.2vw, 86px);
    --text-right: 16px;
    --text-maxw: 88%;
    --text-shift-x: -80px;
  }
  
  .elementor-287 .elementor-element.elementor-element-020ae9e .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}

/* ===== MÓVIL (767px-) ===== */
@media (max-width: 767px) {
  .elementor-287 .elementor-element.elementor-element-020ae9e {
    --side-gap: 8px;
    --radius: 16px;
    margin-top: 16px !important;
    margin-bottom: 16px !important;
    --title-separation-up: 18px;
    --title-separation-down: 10px;
    --t1-size: clamp(16px, 4.2vw, 24px);
    --t2-size: clamp(26px, 7.4vw, 50px);
    --text-right: 10px;
    --text-maxw: 85%;
    --text-shift-x: -45px;
  }
  
  .elementor-287 .elementor-element.elementor-element-020ae9e .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-696db2d *//* =========================================================
   Banner Hero Completo
   Pegar en: Contenedor → Avanzado → CSS Personalizado
   Estructura requerida: 1 imagen + 2 headings

   CAMBIO ÚNICO:
   - Textos anclados a la IZQUIERDA (antes a la derecha)
   ========================================================= */

/* ===== CONTENEDOR PRINCIPAL ===== */
.elementor-287 .elementor-element.elementor-element-696db2d {
  position: relative !important;
  --side-gap: 8px;
  --radius: 28px;

  /* antes: --text-right */
  --text-left: 6%;

  /* antes era negativo para empujar a la izquierda desde right.
     ahora lo invertimos a positivo para empujar a la derecha desde left. */
  --text-shift-x: 130px;

  --text-maxw: 90%;
  --title-separation-up: 44px;
  --title-separation-down: 22px;
  --t1-size: clamp(34px, 3.6vw, 60px);
  --t2-size: clamp(64px, 6.6vw, 140px);
  width: calc(100% - (var(--side-gap) * 2)) !important;
  margin: 30px auto !important;
  overflow: hidden !important;
  padding: 0 !important;
  border-radius: var(--radius) !important;
  isolation: isolate !important;
}

.elementor-287 .elementor-element.elementor-element-696db2d::before {
  content: none !important;
  display: none !important;
}

.elementor-287 .elementor-element.elementor-element-696db2d.e-con-boxed > .e-con-inner {
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

.elementor-287 .elementor-element.elementor-element-696db2d .elementor-element,
.elementor-287 .elementor-element.elementor-element-696db2d .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

/* ===== IMAGEN ===== */
.elementor-287 .elementor-element.elementor-element-696db2d .elementor-widget-image img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 1534 / 553 !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: var(--radius) !important;
  vertical-align: middle !important;
}

/* ===== TODOS LOS HEADINGS - POSICIÓN BASE (AHORA IZQUIERDA) ===== */
.elementor-287 .elementor-element.elementor-element-696db2d .elementor-widget-heading {
  position: absolute !important;
  top: 50% !important;

  left: var(--text-left) !important;
  right: auto !important;

  z-index: 5 !important;
  pointer-events: none !important;
  width: max-content !important;
  max-width: var(--text-maxw) !important;
  text-align: center !important;
  white-space: nowrap !important;
}

.elementor-287 .elementor-element.elementor-element-696db2d .elementor-widget-heading .elementor-heading-title {
  color: #ffffff !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  text-shadow: 0 2px 10px rgba(0,0,0,.35) !important;
  display: inline-block !important;
}

/* ===== TEXTO 1 (PRIMER HEADING) =====
   Nota: al estar anclado a left, usamos -50% en X
*/
.elementor-287 .elementor-element.elementor-element-696db2d .elementor-widget-heading {
  transform: translate(calc(-50% + var(--text-shift-x)), calc(-50% - var(--title-separation-up))) !important;
}

.elementor-287 .elementor-element.elementor-element-696db2d .elementor-widget-heading .elementor-heading-title {
  font-family: "Bebas Neue", sans-serif !important;
  font-size: var(--t1-size) !important;
  letter-spacing: 0.08em !important;
}

/* ===== TEXTO 2 (SEGUNDO HEADING - sobrescribe al primero) ===== */
.elementor-287 .elementor-element.elementor-element-696db2d .elementor-widget-heading ~ .elementor-widget-heading {
  transform: translate(calc(-50% + var(--text-shift-x)), calc(-50% + var(--title-separation-down))) !important;
}

.elementor-287 .elementor-element.elementor-element-696db2d .elementor-widget-heading ~ .elementor-widget-heading .elementor-heading-title {
  font-family: "Hatten", sans-serif !important;
  font-size: var(--t2-size) !important;
  letter-spacing: 0.02em !important;
  transform: scaleY(1.40) !important;
  transform-origin: center !important;
}

/* ===== PC (1025px+) ===== */
@media (min-width: 1025px) {
  .elementor-287 .elementor-element.elementor-element-696db2d {
    --side-gap: 40px;
    --radius: 28px;
    width: calc(100% - (var(--side-gap) * 2)) !important;
    max-width: none !important;
    margin-top: 30px !important;
    margin-bottom: 30px !important;

    --text-left: 6%;
    --text-shift-x: 130px;

    --title-separation-up: calc(clamp(34px, calc(var(--t2-size) * 0.34), 78px) + 9px);
    --title-separation-down: calc(clamp(16px, calc(var(--t2-size) * 0.16), 40px) + 9px);
  }
}

/* ===== TABLET (768px - 1024px) ===== */
@media (max-width: 1024px) {
  .elementor-287 .elementor-element.elementor-element-696db2d {
    --side-gap: 10px;
    --radius: 22px;
    margin-top: 20px !important;
    margin-bottom: 20px !important;
    --title-separation-up: 28px;
    --title-separation-down: 14px;
    --t1-size: clamp(24px, 3.4vw, 40px);
    --t2-size: clamp(40px, 6.2vw, 86px);

    --text-left: 16px;
    --text-maxw: 88%;
    --text-shift-x: 80px;
  }

  .elementor-287 .elementor-element.elementor-element-696db2d .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}

/* ===== MÓVIL (767px-) ===== */
@media (max-width: 767px) {
  .elementor-287 .elementor-element.elementor-element-696db2d {
    --side-gap: 8px;
    --radius: 16px;
    margin-top: 16px !important;
    margin-bottom: 16px !important;
    --title-separation-up: 18px;
    --title-separation-down: 10px;
    --t1-size: clamp(16px, 4.2vw, 24px);
    --t2-size: clamp(26px, 7.4vw, 50px);

    --text-left: 10px;
    --text-maxw: 85%;
    --text-shift-x: 45px;
  }

  .elementor-287 .elementor-element.elementor-element-696db2d .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2781954 *//* =========================================================
   Banner Hero Completo
   Pegar en: Contenedor → Avanzado → CSS Personalizado
   Estructura requerida: 1 imagen + 2 headings
   ========================================================= */

/* ===== CONTENEDOR PRINCIPAL ===== */
.elementor-287 .elementor-element.elementor-element-2781954 {
  position: relative !important;
  --side-gap: 8px;
  --radius: 28px;
  --text-right: 6%;
  --text-shift-x: -130px;
  --text-maxw: 90%;
  --title-separation-up: 44px;
  --title-separation-down: 22px;
  --t1-size: clamp(34px, 3.6vw, 60px);
  --t2-size: clamp(64px, 6.6vw, 140px);
  width: calc(100% - (var(--side-gap) * 2)) !important;
  margin: 30px auto !important;
  overflow: hidden !important;
  padding: 0 !important;
  border-radius: var(--radius) !important;
  isolation: isolate !important;
}

.elementor-287 .elementor-element.elementor-element-2781954::before {
  content: none !important;
  display: none !important;
}

.elementor-287 .elementor-element.elementor-element-2781954.e-con-boxed > .e-con-inner {
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

.elementor-287 .elementor-element.elementor-element-2781954 .elementor-element,
.elementor-287 .elementor-element.elementor-element-2781954 .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

/* ===== IMAGEN ===== */
.elementor-287 .elementor-element.elementor-element-2781954 .elementor-widget-image img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 1534 / 553 !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: var(--radius) !important;
  vertical-align: middle !important;
}

/* ===== TODOS LOS HEADINGS - POSICIÓN BASE ===== */
.elementor-287 .elementor-element.elementor-element-2781954 .elementor-widget-heading {
  position: absolute !important;
  top: 50% !important;
  right: var(--text-right) !important;
  left: auto !important;
  z-index: 5 !important;
  pointer-events: none !important;
  width: max-content !important;
  max-width: var(--text-maxw) !important;
  text-align: center !important;
  white-space: nowrap !important;
}

.elementor-287 .elementor-element.elementor-element-2781954 .elementor-widget-heading .elementor-heading-title {
  color: #ffffff !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  text-shadow: 0 2px 10px rgba(0,0,0,.35) !important;
  display: inline-block !important;
}

/* ===== TEXTO 1 (PRIMER HEADING) ===== */
.elementor-287 .elementor-element.elementor-element-2781954 .elementor-widget-heading {
  transform: translate(calc(50% + var(--text-shift-x)), calc(-50% - var(--title-separation-up))) !important;
}

.elementor-287 .elementor-element.elementor-element-2781954 .elementor-widget-heading .elementor-heading-title {
  font-family: "Bebas Neue", sans-serif !important;
  font-size: var(--t1-size) !important;
  letter-spacing: 0.08em !important;
}

/* ===== TEXTO 2 (SEGUNDO HEADING - sobrescribe al primero) ===== */
.elementor-287 .elementor-element.elementor-element-2781954 .elementor-widget-heading ~ .elementor-widget-heading {
  transform: translate(calc(50% + var(--text-shift-x)), calc(-50% + var(--title-separation-down))) !important;
}

.elementor-287 .elementor-element.elementor-element-2781954 .elementor-widget-heading ~ .elementor-widget-heading .elementor-heading-title {
  font-family: "Hatten", sans-serif !important;
  font-size: var(--t2-size) !important;
  letter-spacing: 0.02em !important;
  transform: scaleY(1.40) !important;
  transform-origin: center !important;
}

/* ===== PC (1025px+) ===== */
@media (min-width: 1025px) {
  .elementor-287 .elementor-element.elementor-element-2781954 {
    --side-gap: 40px;
    --radius: 28px;
    width: calc(100% - (var(--side-gap) * 2)) !important;
    max-width: none !important;
    margin-top: 30px !important;
    margin-bottom: 30px !important;
    --text-right: 6%;
    --text-shift-x: -130px;
    --title-separation-up: calc(clamp(34px, calc(var(--t2-size) * 0.34), 78px) + 9px);
    --title-separation-down: calc(clamp(16px, calc(var(--t2-size) * 0.16), 40px) + 9px);
  }
}

/* ===== TABLET (768px - 1024px) ===== */
@media (max-width: 1024px) {
  .elementor-287 .elementor-element.elementor-element-2781954 {
    --side-gap: 10px;
    --radius: 22px;
    margin-top: 20px !important;
    margin-bottom: 20px !important;
    --title-separation-up: 28px;
    --title-separation-down: 14px;
    --t1-size: clamp(24px, 3.4vw, 40px);
    --t2-size: clamp(40px, 6.2vw, 86px);
    --text-right: 16px;
    --text-maxw: 88%;
    --text-shift-x: -80px;
  }
  
  .elementor-287 .elementor-element.elementor-element-2781954 .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}

/* ===== MÓVIL (767px-) ===== */
@media (max-width: 767px) {
  .elementor-287 .elementor-element.elementor-element-2781954 {
    --side-gap: 8px;
    --radius: 16px;
    margin-top: 16px !important;
    margin-bottom: 16px !important;
    --title-separation-up: 18px;
    --title-separation-down: 10px;
    --t1-size: clamp(16px, 4.2vw, 24px);
    --t2-size: clamp(26px, 7.4vw, 50px);
    --text-right: 10px;
    --text-maxw: 85%;
    --text-shift-x: -45px;
  }
  
  .elementor-287 .elementor-element.elementor-element-2781954 .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-67e4ef3 *//* =========================================================
   Banner Hero Completo
   Pegar en: Contenedor → Avanzado → CSS Personalizado
   Estructura requerida: 1 imagen + 2 headings

   CAMBIO ÚNICO:
   - Textos anclados a la IZQUIERDA (antes a la derecha)
   ========================================================= */

/* ===== CONTENEDOR PRINCIPAL ===== */
.elementor-287 .elementor-element.elementor-element-67e4ef3 {
  position: relative !important;
  --side-gap: 8px;
  --radius: 28px;

  /* antes: --text-right */
  --text-left: 6%;

  /* antes era negativo para empujar a la izquierda desde right.
     ahora lo invertimos a positivo para empujar a la derecha desde left. */
  --text-shift-x: 130px;

  --text-maxw: 90%;
  --title-separation-up: 44px;
  --title-separation-down: 22px;
  --t1-size: clamp(34px, 3.6vw, 60px);
  --t2-size: clamp(64px, 6.6vw, 140px);
  width: calc(100% - (var(--side-gap) * 2)) !important;
  margin: 30px auto !important;
  overflow: hidden !important;
  padding: 0 !important;
  border-radius: var(--radius) !important;
  isolation: isolate !important;
}

.elementor-287 .elementor-element.elementor-element-67e4ef3::before {
  content: none !important;
  display: none !important;
}

.elementor-287 .elementor-element.elementor-element-67e4ef3.e-con-boxed > .e-con-inner {
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

.elementor-287 .elementor-element.elementor-element-67e4ef3 .elementor-element,
.elementor-287 .elementor-element.elementor-element-67e4ef3 .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

/* ===== IMAGEN ===== */
.elementor-287 .elementor-element.elementor-element-67e4ef3 .elementor-widget-image img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 1534 / 553 !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: var(--radius) !important;
  vertical-align: middle !important;
}

/* ===== TODOS LOS HEADINGS - POSICIÓN BASE (AHORA IZQUIERDA) ===== */
.elementor-287 .elementor-element.elementor-element-67e4ef3 .elementor-widget-heading {
  position: absolute !important;
  top: 50% !important;

  left: var(--text-left) !important;
  right: auto !important;

  z-index: 5 !important;
  pointer-events: none !important;
  width: max-content !important;
  max-width: var(--text-maxw) !important;
  text-align: center !important;
  white-space: nowrap !important;
}

.elementor-287 .elementor-element.elementor-element-67e4ef3 .elementor-widget-heading .elementor-heading-title {
  color: #ffffff !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  text-shadow: 0 2px 10px rgba(0,0,0,.35) !important;
  display: inline-block !important;
}

/* ===== TEXTO 1 (PRIMER HEADING) =====
   Nota: al estar anclado a left, usamos -50% en X
*/
.elementor-287 .elementor-element.elementor-element-67e4ef3 .elementor-widget-heading {
  transform: translate(calc(-50% + var(--text-shift-x)), calc(-50% - var(--title-separation-up))) !important;
}

.elementor-287 .elementor-element.elementor-element-67e4ef3 .elementor-widget-heading .elementor-heading-title {
  font-family: "Bebas Neue", sans-serif !important;
  font-size: var(--t1-size) !important;
  letter-spacing: 0.08em !important;
}

/* ===== TEXTO 2 (SEGUNDO HEADING - sobrescribe al primero) ===== */
.elementor-287 .elementor-element.elementor-element-67e4ef3 .elementor-widget-heading ~ .elementor-widget-heading {
  transform: translate(calc(-50% + var(--text-shift-x)), calc(-50% + var(--title-separation-down))) !important;
}

.elementor-287 .elementor-element.elementor-element-67e4ef3 .elementor-widget-heading ~ .elementor-widget-heading .elementor-heading-title {
  font-family: "Hatten", sans-serif !important;
  font-size: var(--t2-size) !important;
  letter-spacing: 0.02em !important;
  transform: scaleY(1.40) !important;
  transform-origin: center !important;
}

/* ===== PC (1025px+) ===== */
@media (min-width: 1025px) {
  .elementor-287 .elementor-element.elementor-element-67e4ef3 {
    --side-gap: 40px;
    --radius: 28px;
    width: calc(100% - (var(--side-gap) * 2)) !important;
    max-width: none !important;
    margin-top: 30px !important;
    margin-bottom: 30px !important;

    --text-left: 6%;
    --text-shift-x: 130px;

    --title-separation-up: calc(clamp(34px, calc(var(--t2-size) * 0.34), 78px) + 9px);
    --title-separation-down: calc(clamp(16px, calc(var(--t2-size) * 0.16), 40px) + 9px);
  }
}

/* ===== TABLET (768px - 1024px) ===== */
@media (max-width: 1024px) {
  .elementor-287 .elementor-element.elementor-element-67e4ef3 {
    --side-gap: 10px;
    --radius: 22px;
    margin-top: 20px !important;
    margin-bottom: 20px !important;
    --title-separation-up: 28px;
    --title-separation-down: 14px;
    --t1-size: clamp(24px, 3.4vw, 40px);
    --t2-size: clamp(40px, 6.2vw, 86px);

    --text-left: 16px;
    --text-maxw: 88%;
    --text-shift-x: 80px;
  }

  .elementor-287 .elementor-element.elementor-element-67e4ef3 .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}

/* ===== MÓVIL (767px-) ===== */
@media (max-width: 767px) {
  .elementor-287 .elementor-element.elementor-element-67e4ef3 {
    --side-gap: 8px;
    --radius: 16px;
    margin-top: 16px !important;
    margin-bottom: 16px !important;
    --title-separation-up: 18px;
    --title-separation-down: 10px;
    --t1-size: clamp(16px, 4.2vw, 24px);
    --t2-size: clamp(26px, 7.4vw, 50px);

    --text-left: 10px;
    --text-maxw: 85%;
    --text-shift-x: 45px;
  }

  .elementor-287 .elementor-element.elementor-element-67e4ef3 .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1164115 *//* =========================================================
   Banner Hero Completo
   Pegar en: Contenedor → Avanzado → CSS Personalizado
   Estructura requerida: 1 imagen + 2 headings
   ========================================================= */

/* ===== CONTENEDOR PRINCIPAL ===== */
.elementor-287 .elementor-element.elementor-element-1164115 {
  position: relative !important;
  --side-gap: 8px;
  --radius: 28px;
  --text-right: 6%;
  --text-shift-x: -130px;
  --text-maxw: 90%;
  --title-separation-up: 44px;
  --title-separation-down: 22px;
  --t1-size: clamp(34px, 3.6vw, 60px);
  --t2-size: clamp(64px, 6.6vw, 140px);
  width: calc(100% - (var(--side-gap) * 2)) !important;
  margin: 30px auto !important;
  overflow: hidden !important;
  padding: 0 !important;
  border-radius: var(--radius) !important;
  isolation: isolate !important;
}

.elementor-287 .elementor-element.elementor-element-1164115::before {
  content: none !important;
  display: none !important;
}

.elementor-287 .elementor-element.elementor-element-1164115.e-con-boxed > .e-con-inner {
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

.elementor-287 .elementor-element.elementor-element-1164115 .elementor-element,
.elementor-287 .elementor-element.elementor-element-1164115 .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

/* ===== IMAGEN ===== */
.elementor-287 .elementor-element.elementor-element-1164115 .elementor-widget-image img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 1534 / 553 !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: var(--radius) !important;
  vertical-align: middle !important;
}

/* ===== TODOS LOS HEADINGS - POSICIÓN BASE ===== */
.elementor-287 .elementor-element.elementor-element-1164115 .elementor-widget-heading {
  position: absolute !important;
  top: 50% !important;
  right: var(--text-right) !important;
  left: auto !important;
  z-index: 5 !important;
  pointer-events: none !important;
  width: max-content !important;
  max-width: var(--text-maxw) !important;
  text-align: center !important;
  white-space: nowrap !important;
}

.elementor-287 .elementor-element.elementor-element-1164115 .elementor-widget-heading .elementor-heading-title {
  color: #ffffff !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  text-shadow: 0 2px 10px rgba(0,0,0,.35) !important;
  display: inline-block !important;
}

/* ===== TEXTO 1 (PRIMER HEADING) ===== */
.elementor-287 .elementor-element.elementor-element-1164115 .elementor-widget-heading {
  transform: translate(calc(50% + var(--text-shift-x)), calc(-50% - var(--title-separation-up))) !important;
}

.elementor-287 .elementor-element.elementor-element-1164115 .elementor-widget-heading .elementor-heading-title {
  font-family: "Bebas Neue", sans-serif !important;
  font-size: var(--t1-size) !important;
  letter-spacing: 0.08em !important;
}

/* ===== TEXTO 2 (SEGUNDO HEADING - sobrescribe al primero) ===== */
.elementor-287 .elementor-element.elementor-element-1164115 .elementor-widget-heading ~ .elementor-widget-heading {
  transform: translate(calc(50% + var(--text-shift-x)), calc(-50% + var(--title-separation-down))) !important;
}

.elementor-287 .elementor-element.elementor-element-1164115 .elementor-widget-heading ~ .elementor-widget-heading .elementor-heading-title {
  font-family: "Hatten", sans-serif !important;
  font-size: var(--t2-size) !important;
  letter-spacing: 0.02em !important;
  transform: scaleY(1.40) !important;
  transform-origin: center !important;
}

/* ===== PC (1025px+) ===== */
@media (min-width: 1025px) {
  .elementor-287 .elementor-element.elementor-element-1164115 {
    --side-gap: 40px;
    --radius: 28px;
    width: calc(100% - (var(--side-gap) * 2)) !important;
    max-width: none !important;
    margin-top: 30px !important;
    margin-bottom: 30px !important;
    --text-right: 6%;
    --text-shift-x: -130px;
    --title-separation-up: calc(clamp(34px, calc(var(--t2-size) * 0.34), 78px) + 9px);
    --title-separation-down: calc(clamp(16px, calc(var(--t2-size) * 0.16), 40px) + 9px);
  }
}

/* ===== TABLET (768px - 1024px) ===== */
@media (max-width: 1024px) {
  .elementor-287 .elementor-element.elementor-element-1164115 {
    --side-gap: 10px;
    --radius: 22px;
    margin-top: 20px !important;
    margin-bottom: 20px !important;
    --title-separation-up: 28px;
    --title-separation-down: 14px;
    --t1-size: clamp(24px, 3.4vw, 40px);
    --t2-size: clamp(40px, 6.2vw, 86px);
    --text-right: 16px;
    --text-maxw: 88%;
    --text-shift-x: -80px;
  }
  
  .elementor-287 .elementor-element.elementor-element-1164115 .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}

/* ===== MÓVIL (767px-) ===== */
@media (max-width: 767px) {
  .elementor-287 .elementor-element.elementor-element-1164115 {
    --side-gap: 8px;
    --radius: 16px;
    margin-top: 16px !important;
    margin-bottom: 16px !important;
    --title-separation-up: 18px;
    --title-separation-down: 10px;
    --t1-size: clamp(16px, 4.2vw, 24px);
    --t2-size: clamp(26px, 7.4vw, 50px);
    --text-right: 10px;
    --text-maxw: 85%;
    --text-shift-x: -45px;
  }
  
  .elementor-287 .elementor-element.elementor-element-1164115 .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-adf4de2 *//* =========================================================
   Banner Hero Completo
   Pegar en: Contenedor → Avanzado → CSS Personalizado
   Estructura requerida: 1 imagen + 2 headings

   CAMBIO ÚNICO:
   - Textos anclados a la IZQUIERDA (antes a la derecha)
   ========================================================= */

/* ===== CONTENEDOR PRINCIPAL ===== */
.elementor-287 .elementor-element.elementor-element-adf4de2 {
  position: relative !important;
  --side-gap: 8px;
  --radius: 28px;

  /* antes: --text-right */
  --text-left: 6%;

  /* antes era negativo para empujar a la izquierda desde right.
     ahora lo invertimos a positivo para empujar a la derecha desde left. */
  --text-shift-x: 130px;

  --text-maxw: 90%;
  --title-separation-up: 44px;
  --title-separation-down: 22px;
  --t1-size: clamp(34px, 3.6vw, 60px);
  --t2-size: clamp(64px, 6.6vw, 140px);
  width: calc(100% - (var(--side-gap) * 2)) !important;
  margin: 30px auto !important;
  overflow: hidden !important;
  padding: 0 !important;
  border-radius: var(--radius) !important;
  isolation: isolate !important;
}

.elementor-287 .elementor-element.elementor-element-adf4de2::before {
  content: none !important;
  display: none !important;
}

.elementor-287 .elementor-element.elementor-element-adf4de2.e-con-boxed > .e-con-inner {
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

.elementor-287 .elementor-element.elementor-element-adf4de2 .elementor-element,
.elementor-287 .elementor-element.elementor-element-adf4de2 .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

/* ===== IMAGEN ===== */
.elementor-287 .elementor-element.elementor-element-adf4de2 .elementor-widget-image img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 1534 / 553 !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: var(--radius) !important;
  vertical-align: middle !important;
}

/* ===== TODOS LOS HEADINGS - POSICIÓN BASE (AHORA IZQUIERDA) ===== */
.elementor-287 .elementor-element.elementor-element-adf4de2 .elementor-widget-heading {
  position: absolute !important;
  top: 50% !important;

  left: var(--text-left) !important;
  right: auto !important;

  z-index: 5 !important;
  pointer-events: none !important;
  width: max-content !important;
  max-width: var(--text-maxw) !important;
  text-align: center !important;
  white-space: nowrap !important;
}

.elementor-287 .elementor-element.elementor-element-adf4de2 .elementor-widget-heading .elementor-heading-title {
  color: #ffffff !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  text-shadow: 0 2px 10px rgba(0,0,0,.35) !important;
  display: inline-block !important;
}

/* ===== TEXTO 1 (PRIMER HEADING) =====
   Nota: al estar anclado a left, usamos -50% en X
*/
.elementor-287 .elementor-element.elementor-element-adf4de2 .elementor-widget-heading {
  transform: translate(calc(-50% + var(--text-shift-x)), calc(-50% - var(--title-separation-up))) !important;
}

.elementor-287 .elementor-element.elementor-element-adf4de2 .elementor-widget-heading .elementor-heading-title {
  font-family: "Bebas Neue", sans-serif !important;
  font-size: var(--t1-size) !important;
  letter-spacing: 0.08em !important;
}

/* ===== TEXTO 2 (SEGUNDO HEADING - sobrescribe al primero) ===== */
.elementor-287 .elementor-element.elementor-element-adf4de2 .elementor-widget-heading ~ .elementor-widget-heading {
  transform: translate(calc(-50% + var(--text-shift-x)), calc(-50% + var(--title-separation-down))) !important;
}

.elementor-287 .elementor-element.elementor-element-adf4de2 .elementor-widget-heading ~ .elementor-widget-heading .elementor-heading-title {
  font-family: "Hatten", sans-serif !important;
  font-size: var(--t2-size) !important;
  letter-spacing: 0.02em !important;
  transform: scaleY(1.40) !important;
  transform-origin: center !important;
}

/* ===== PC (1025px+) ===== */
@media (min-width: 1025px) {
  .elementor-287 .elementor-element.elementor-element-adf4de2 {
    --side-gap: 40px;
    --radius: 28px;
    width: calc(100% - (var(--side-gap) * 2)) !important;
    max-width: none !important;
    margin-top: 30px !important;
    margin-bottom: 30px !important;

    --text-left: 6%;
    --text-shift-x: 130px;

    --title-separation-up: calc(clamp(34px, calc(var(--t2-size) * 0.34), 78px) + 9px);
    --title-separation-down: calc(clamp(16px, calc(var(--t2-size) * 0.16), 40px) + 9px);
  }
}

/* ===== TABLET (768px - 1024px) ===== */
@media (max-width: 1024px) {
  .elementor-287 .elementor-element.elementor-element-adf4de2 {
    --side-gap: 10px;
    --radius: 22px;
    margin-top: 20px !important;
    margin-bottom: 20px !important;
    --title-separation-up: 28px;
    --title-separation-down: 14px;
    --t1-size: clamp(24px, 3.4vw, 40px);
    --t2-size: clamp(40px, 6.2vw, 86px);

    --text-left: 16px;
    --text-maxw: 88%;
    --text-shift-x: 80px;
  }

  .elementor-287 .elementor-element.elementor-element-adf4de2 .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}

/* ===== MÓVIL (767px-) ===== */
@media (max-width: 767px) {
  .elementor-287 .elementor-element.elementor-element-adf4de2 {
    --side-gap: 8px;
    --radius: 16px;
    margin-top: 16px !important;
    margin-bottom: 16px !important;
    --title-separation-up: 18px;
    --title-separation-down: 10px;
    --t1-size: clamp(16px, 4.2vw, 24px);
    --t2-size: clamp(26px, 7.4vw, 50px);

    --text-left: 10px;
    --text-maxw: 85%;
    --text-shift-x: 45px;
  }

  .elementor-287 .elementor-element.elementor-element-adf4de2 .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b9a8cbe *//* =========================================================
   Banner Hero Completo
   Pegar en: Contenedor → Avanzado → CSS Personalizado
   Estructura requerida: 1 imagen + 2 headings
   ========================================================= */

/* ===== CONTENEDOR PRINCIPAL ===== */
.elementor-287 .elementor-element.elementor-element-b9a8cbe {
  position: relative !important;
  --side-gap: 8px;
  --radius: 28px;
  --text-right: 6%;
  --text-shift-x: -130px;
  --text-maxw: 90%;
  --title-separation-up: 44px;
  --title-separation-down: 22px;
  --t1-size: clamp(34px, 3.6vw, 60px);
  --t2-size: clamp(64px, 6.6vw, 140px);
  width: calc(100% - (var(--side-gap) * 2)) !important;
  margin: 30px auto !important;
  overflow: hidden !important;
  padding: 0 !important;
  border-radius: var(--radius) !important;
  isolation: isolate !important;
}

.elementor-287 .elementor-element.elementor-element-b9a8cbe::before {
  content: none !important;
  display: none !important;
}

.elementor-287 .elementor-element.elementor-element-b9a8cbe.e-con-boxed > .e-con-inner {
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

.elementor-287 .elementor-element.elementor-element-b9a8cbe .elementor-element,
.elementor-287 .elementor-element.elementor-element-b9a8cbe .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

/* ===== IMAGEN ===== */
.elementor-287 .elementor-element.elementor-element-b9a8cbe .elementor-widget-image img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 1534 / 553 !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: var(--radius) !important;
  vertical-align: middle !important;
}

/* ===== TODOS LOS HEADINGS - POSICIÓN BASE ===== */
.elementor-287 .elementor-element.elementor-element-b9a8cbe .elementor-widget-heading {
  position: absolute !important;
  top: 50% !important;
  right: var(--text-right) !important;
  left: auto !important;
  z-index: 5 !important;
  pointer-events: none !important;
  width: max-content !important;
  max-width: var(--text-maxw) !important;
  text-align: center !important;
  white-space: nowrap !important;
}

.elementor-287 .elementor-element.elementor-element-b9a8cbe .elementor-widget-heading .elementor-heading-title {
  color: #ffffff !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  text-shadow: 0 2px 10px rgba(0,0,0,.35) !important;
  display: inline-block !important;
}

/* ===== TEXTO 1 (PRIMER HEADING) ===== */
.elementor-287 .elementor-element.elementor-element-b9a8cbe .elementor-widget-heading {
  transform: translate(calc(50% + var(--text-shift-x)), calc(-50% - var(--title-separation-up))) !important;
}

.elementor-287 .elementor-element.elementor-element-b9a8cbe .elementor-widget-heading .elementor-heading-title {
  font-family: "Bebas Neue", sans-serif !important;
  font-size: var(--t1-size) !important;
  letter-spacing: 0.08em !important;
}

/* ===== TEXTO 2 (SEGUNDO HEADING - sobrescribe al primero) ===== */
.elementor-287 .elementor-element.elementor-element-b9a8cbe .elementor-widget-heading ~ .elementor-widget-heading {
  transform: translate(calc(50% + var(--text-shift-x)), calc(-50% + var(--title-separation-down))) !important;
}

.elementor-287 .elementor-element.elementor-element-b9a8cbe .elementor-widget-heading ~ .elementor-widget-heading .elementor-heading-title {
  font-family: "Hatten", sans-serif !important;
  font-size: var(--t2-size) !important;
  letter-spacing: 0.02em !important;
  transform: scaleY(1.40) !important;
  transform-origin: center !important;
}

/* ===== PC (1025px+) ===== */
@media (min-width: 1025px) {
  .elementor-287 .elementor-element.elementor-element-b9a8cbe {
    --side-gap: 40px;
    --radius: 28px;
    width: calc(100% - (var(--side-gap) * 2)) !important;
    max-width: none !important;
    margin-top: 30px !important;
    margin-bottom: 30px !important;
    --text-right: 6%;
    --text-shift-x: -130px;
    --title-separation-up: calc(clamp(34px, calc(var(--t2-size) * 0.34), 78px) + 9px);
    --title-separation-down: calc(clamp(16px, calc(var(--t2-size) * 0.16), 40px) + 9px);
  }
}

/* ===== TABLET (768px - 1024px) ===== */
@media (max-width: 1024px) {
  .elementor-287 .elementor-element.elementor-element-b9a8cbe {
    --side-gap: 10px;
    --radius: 22px;
    margin-top: 20px !important;
    margin-bottom: 20px !important;
    --title-separation-up: 28px;
    --title-separation-down: 14px;
    --t1-size: clamp(24px, 3.4vw, 40px);
    --t2-size: clamp(40px, 6.2vw, 86px);
    --text-right: 16px;
    --text-maxw: 88%;
    --text-shift-x: -80px;
  }
  
  .elementor-287 .elementor-element.elementor-element-b9a8cbe .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}

/* ===== MÓVIL (767px-) ===== */
@media (max-width: 767px) {
  .elementor-287 .elementor-element.elementor-element-b9a8cbe {
    --side-gap: 8px;
    --radius: 16px;
    margin-top: 16px !important;
    margin-bottom: 16px !important;
    --title-separation-up: 18px;
    --title-separation-down: 10px;
    --t1-size: clamp(16px, 4.2vw, 24px);
    --t2-size: clamp(26px, 7.4vw, 50px);
    --text-right: 10px;
    --text-maxw: 85%;
    --text-shift-x: -45px;
  }
  
  .elementor-287 .elementor-element.elementor-element-b9a8cbe .elementor-widget-image img {
    border-radius: var(--radius) !important;
  }
}/* End custom CSS */