/* ---------- Header Sticky Styles ---------- */

.header-2 {

  opacity: 0;

  transform: translateY(-80px);

  transition: opacity .25s ease, transform .3s ease;

  z-index: 60000;

}

.header-2.is-visible{
  opacity: 1 !important;
  transform: translateY(0);
  z-index: 60000;
}

.elementor-sticky--effects.header-2.is-visible {

  opacity: 1 !important;

  transform: translateY(0);

  z-index: 60000;

}

header.elementor-location-header,

.elementor-location-header,

header.header-main,

header.site-header,

#masthead{

  position: relative;

  z-index: 60000 !important;

}



html.elementor-editor-active .fx-section,

body.elementor-editor-active .fx-section {

  position: relative !important;

  top: auto !important;

  min-height: auto !important;

}

/* ---------- Carousel Pagination Styles ---------- */

.apt-pagi {

  position: relative;

  width: 100%;

  height: 28px;

}



.apt-pagi-track {

  position: absolute;

  left: var(--apt-pagi-pad);

  right: var(--apt-pagi-pad);

  top: 50%;

  height: var(--apt-pagi-h);

  background: var(--apt-pagi-track);

  border-radius: 2px;

  transform: translateY(-50%);

}



.apt-pagi-fill {

  position: absolute;

  left: var(--apt-pagi-pad);

  top: 50%;

  height: var(--apt-pagi-h);

  width: 0;

  background: var(--apt-pagi-color);

  border-radius: 2px;

  transform: translateY(-50%);

  transition: width .25s ease;

}



.apt-pagi[data-rtl="1"] .apt-pagi-fill {

  right: var(--apt-pagi-pad);

  left: auto;

}



.apt-pagi-range {

  position: absolute;

  left: 0;

  right: 0;

  top: 50%;

  height: 14px;

  transform: translateY(-50%) !important;

  appearance: none;

  background: transparent;

  cursor: pointer;

}



.apt-pagi-range::-webkit-slider-runnable-track {

  background: transparent;

  height: 100%;

}



.apt-pagi-range::-moz-range-track {

  background: transparent;

  height: 100%;

}



.apt-pagi-range::-webkit-slider-thumb {

  -webkit-appearance: none;

  width: var(--apt-thumb-w);

  height: var(--apt-thumb-h);

  border-radius: 2px;

  border: 0;

  background: var(--apt-pagi-color);

  box-shadow: 0 1px 0 rgba(0, 0, 0, .12);

}



.apt-pagi-range::-moz-range-thumb {

  width: var(--apt-thumb-w);

  height: var(--apt-thumb-h);

  border: 0;

  border-radius: 2px;

  background: var(--apt-pagi-color);

}



input.apt-pagi-range:focus {

  outline: none;

}
/* === RiveraBox grid animations (Right -> Left) === */
@keyframes fadeInRight { 
  from { opacity:0; transform:translateX(50px); } 
  to   { opacity:1; transform:translateX(0); } 
}

#riveraBox .my-grid-animate .elementor-widget-image-box{
  opacity: 0;
  will-change: transform, opacity;
}

@media (min-width: 768px){
  #riveraBox .my-grid-animate.is-inview .elementor-widget-image-box{
    animation: fadeInRight .8s ease forwards;
    animation-delay: var(--delay, 0s);
  }
}

@media (max-width: 767px){
  #riveraBox .my-grid-animate .elementor-widget-image-box.is-inview-item{
    animation: fadeInRight .7s ease forwards;
  }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  #riveraBox .my-grid-animate .elementor-widget-image-box{
    animation:none!important; transform:none!important; transition:opacity .2s linear;
  }
  #riveraBox .my-grid-animate.is-inview .elementor-widget-image-box,
  #riveraBox .my-grid-animate .elementor-widget-image-box.is-inview-item{
    opacity:1;
  }
}

body.elementor-editor-active #riveraBox .my-grid-animate .elementor-widget-image-box,
body.elementor-editor-active #riveraBox .my-grid-animate.is-inview .elementor-widget-image-box,
body.elementor-editor-active #riveraBox .my-grid-animate .elementor-widget-image-box.is-inview-item,
body.elementor-edit-mode     #riveraBox .my-grid-animate .elementor-widget-image-box,
body.elementor-edit-mode     #riveraBox .my-grid-animate.is-inview .elementor-widget-image-box,
body.elementor-edit-mode     #riveraBox .my-grid-animate .elementor-widget-image-box.is-inview-item{
  opacity: 1 !important;
  transform: none !important;
  animation: none !important;
}
