/* Diseño original (widget "hero") portado sin Elementor */
#cjHeroSlider,
#cjHeroSlider * {
  box-sizing: border-box;
}




#cjHeroSlider {

  --cj-gold: #c2a25e;
  --cj-gold-dark: #a4863f;

  --cj-font-primary:
    var(--e-global-typography-primary-font-family, inherit);

  --cj-font-text:
    var(--e-global-typography-text-font-family, inherit);

  --cj-font-accent:
    var(--e-global-typography-accent-font-family, inherit);

  position: relative;

  width: 100%;

  height: clamp(520px, 72vh, 760px);
  min-height: 520px;

  overflow: hidden;

  background: #101010;

  isolation: isolate;

  font-family: var(--cj-font-text);
}




#cjHeroSlider .cj-hero-slider__track {

  position: relative;

  width: 100%;
  height: 100%;

  overflow: hidden;
}




#cjHeroSlider .cj-hero-slide {

  position: absolute;

  inset: 0;

  width: 100%;
  height: 100%;

  opacity: 0;
  visibility: hidden;

  pointer-events: none;

  transition:
    opacity .6s ease,
    visibility .6s ease;

  z-index: 1;
}


#cjHeroSlider .cj-hero-slide.is-active {

  opacity: 1;
  visibility: visible;

  pointer-events: auto;

  z-index: 2;
}




#cjHeroSlider .cj-hero-slide__picture {

  position: absolute;

  inset: 0;

  display: block;

  width: 100%;
  height: 100%;

  overflow: hidden;
}


#cjHeroSlider .cj-hero-slide__image {

  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;
  object-position: center center;

  user-select: none;

  -webkit-user-drag: none;

  backface-visibility: hidden;
  transform: translateZ(0);
}




@media (min-width: 1025px) {

  #cjHeroSlider .cj-hero-slide--promo .cj-hero-slide__image {

    object-fit: cover;

    object-position: center 25% !important;
  }

}



@media (min-width: 1025px) {

  #cjHeroSlider .cj-hero-slide--promo::after {

    content: "";

    position: absolute;

    inset: 0;

    z-index: 3;

    pointer-events: none;

    background:
      linear-gradient(
        to bottom,
        rgba(0, 0, 0, .30) 0%,
        rgba(0, 0, 0, .17) 14%,
        rgba(0, 0, 0, .05) 28%,
        rgba(0, 0, 0, 0) 42%
      );
  }

}



#cjHeroSlider .cj-hero-slide__shade {

  position: absolute;

  inset: 0;

  z-index: 2;

  background:
    rgba(0, 0, 0, .24);

  pointer-events: none;
}



#cjHeroSlider .cj-hero-slide__content-wrap {

  position: absolute;

  inset: 0;

  z-index: 3;

  display: flex;

  align-items: center;
  justify-content: center;

  padding: 76px 24px 60px;

  text-align: center;
}


#cjHeroSlider .cj-hero-slide__content-card {

  width: min(480px, 100%) !important;

  margin: 0 auto !important;

  padding:
    22px 28px 25px !important;

  background:
    rgba(0, 0, 0, .38) !important;

  border:
    1px solid
    rgba(255, 255, 255, .13) !important;

  border-radius:
    0 !important;

  box-shadow:
    0 12px 28px
    rgba(0, 0, 0, .20) !important;

  backdrop-filter:
    blur(2px);

  -webkit-backdrop-filter:
    blur(2px);
}




#cjHeroSlider .cj-hero-slide__label {

  display: block !important;

  margin:
    0 0 8px !important;

  font-family:
    var(--cj-font-accent) !important;

  font-size:
    8.5px !important;

  line-height:
    1.2 !important;

  font-weight:
    700 !important;

  letter-spacing:
    .13em !important;

  text-transform:
    uppercase !important;

  color:
    rgba(255, 255, 255, .80) !important;
}



#cjHeroSlider .cj-hero-slide__title {

  margin:
    0 auto !important;

  max-width:
    430px !important;

  font-family:
    var(--cj-font-primary) !important;

  font-size:
    clamp(21px, 2.35vw, 32px) !important;

  line-height:
    1.08 !important;

  font-weight:
    700 !important;

  letter-spacing:
    -.025em !important;

  color:
    #ffffff !important;
}




#cjHeroSlider .cj-hero-slide__text {

  margin:
    12px auto 0 !important;

  max-width:
    390px !important;

  font-family:
    var(--cj-font-text) !important;

  font-size:
    clamp(12px, .9vw, 14px) !important;

  line-height:
    1.46 !important;

  font-weight:
    400 !important;

  color:
    rgba(255, 255, 255, .86) !important;
}


#cjHeroSlider .cj-hero-slide__button {

  display:
    inline-flex !important;

  align-items:
    center !important;

  justify-content:
    center !important;

  min-height:
    36px !important;

  margin-top:
    16px !important;

  padding:
    10px 18px !important;

  background:
    var(--cj-gold) !important;

  border:
    1px solid
    var(--cj-gold) !important;

  border-radius:
    0 !important;

  font-family:
    var(--cj-font-accent) !important;

  font-size:
    11px !important;

  line-height:
    1 !important;

  font-weight:
    700 !important;

  letter-spacing:
    .12em !important;

  text-transform:
    uppercase !important;

  text-decoration:
    none !important;

  color:
    #ffffff !important;

  transition:
    background-color .22s ease,
    border-color .22s ease,
    transform .22s ease !important;
}


@media (hover: hover) and (pointer: fine) {

  #cjHeroSlider .cj-hero-slide__button:hover {

    background:
      var(--cj-gold-dark) !important;

    border-color:
      var(--cj-gold-dark) !important;

    transform:
      translateY(-1px);
  }

}



#cjHeroSlider .cj-hero-slider__arrow {

  position: absolute;

  z-index: 20;

  top: 50%;

  transform:
    translateY(-50%);

  display: flex;

  align-items: center;
  justify-content: center;

  width: 40px;
  height: 40px;

  padding: 0;

  border:
    1px solid
    rgba(255, 255, 255, .28);

  border-radius: 50%;

  background:
    rgba(0, 0, 0, .23);

  color:
    #ffffff;

  font-family:
    Arial, sans-serif;

  font-size:
    16px;

  line-height:
    1;

  cursor:
    pointer;

  appearance:
    none;

  -webkit-appearance:
    none;

  backdrop-filter:
    blur(5px);

  -webkit-backdrop-filter:
    blur(5px);

  transition:
    background .2s ease,
    border-color .2s ease,
    opacity .2s ease;
}


#cjHeroSlider .cj-hero-slider__arrow--prev {

  left: 24px;
}


#cjHeroSlider .cj-hero-slider__arrow--next {

  right: 24px;
}


@media (hover: hover) and (pointer: fine) {

  #cjHeroSlider .cj-hero-slider__arrow:hover {

    background:
      rgba(0, 0, 0, .48);

    border-color:
      rgba(255, 255, 255, .55);
  }

}



#cjHeroSlider .cj-hero-slider__dots {

  position: absolute;

  z-index: 20;

  left: 50%;
  bottom: 22px;

  transform:
    translateX(-50%);

  display: flex;

  align-items: center;

  gap: 7px;
}


#cjHeroSlider .cj-hero-slider__dot {

  appearance:
    none;

  -webkit-appearance:
    none;

  width: 7px;
  height: 7px;

  min-width: 0;

  padding: 0;

  margin: 0;

  border: 0;

  border-radius: 50%;

  background:
    rgba(255, 255, 255, .52);

  cursor:
    pointer;

  transition:
    width .25s ease,
    border-radius .25s ease,
    background-color .25s ease;
}


#cjHeroSlider .cj-hero-slider__dot.is-active {

  width: 22px;

  border-radius: 0;

  background:
    #ffffff;
}



@media (min-width: 768px) and (max-width: 1024px) {

  #cjHeroSlider {

    height:
      clamp(520px, 70vh, 680px);

    min-height:
      520px;
  }


  #cjHeroSlider
  .cj-hero-slide--promo
  .cj-hero-slide__image {

    object-position:
      center center !important;
  }

}



@media (max-width: 767px) {

  #cjHeroSlider {

    height:
      clamp(530px, 76svh, 630px);

    min-height:
      clamp(530px, 76svh, 630px);
  }


  #cjHeroSlider
  .cj-hero-slide--promo
  .cj-hero-slide__image {

    object-position:
      center center !important;
  }


  #cjHeroSlider
  .cj-hero-slide__content-wrap {

    padding:
      72px 18px 68px !important;
  }


  #cjHeroSlider
  .cj-hero-slide__content-card {

    width:
      min(265px, 100%) !important;

    padding:
      18px 15px 20px !important;

    border-radius:
      0 !important;

    background:
      rgba(0, 0, 0, .42) !important;

    box-shadow:
      0 10px 22px
      rgba(0, 0, 0, .18) !important;
  }


  #cjHeroSlider
  .cj-hero-slide__label {

    margin-bottom:
      7px !important;

    font-size:
      7.8px !important;

    letter-spacing:
      .10em !important;
  }


  #cjHeroSlider
  .cj-hero-slide__title {

    max-width:
      235px !important;

    font-size:
      clamp(17px, 4.9vw, 22px) !important;

    line-height:
      1.1 !important;
  }


  #cjHeroSlider
  .cj-hero-slide__text {

    max-width:
      225px !important;

    margin-top:
      10px !important;

    font-size:
      10.8px !important;

    line-height:
      1.4 !important;
  }


  #cjHeroSlider
  .cj-hero-slide__button {

    min-height:
      33px !important;

    margin-top:
      14px !important;

    padding:
      9px 15px !important;

    font-size:
      8.5px !important;
  }


  #cjHeroSlider
  .cj-hero-slider__arrow {

    width: 34px;
    height: 34px;

    font-size: 13px;

    background:
      rgba(0, 0, 0, .18);
  }


  #cjHeroSlider
  .cj-hero-slider__arrow--prev {

    left: 10px;
  }


  #cjHeroSlider
  .cj-hero-slider__arrow--next {

    right: 10px;
  }


  #cjHeroSlider
  .cj-hero-slider__dots {

    bottom: 17px;
  }

}




@media (max-width: 390px) {

  #cjHeroSlider {

    height: 545px;
    min-height: 545px;
  }


  #cjHeroSlider
  .cj-hero-slide__content-card {

    width:
      min(252px, 100%) !important;
  }


  #cjHeroSlider
  .cj-hero-slide__title {

    font-size:
      18px !important;
  }


  #cjHeroSlider
  .cj-hero-slide__text {

    font-size:
      10.5px !important;
  }

}




@media (prefers-reduced-motion: reduce) {

  #cjHeroSlider
  .cj-hero-slide {

    transition:
      none;
  }

}
