/* ============================================================
   HJS — Scroll reveal + micro-animations (site-wide)
   ============================================================ */
@media (prefers-reduced-motion: no-preference) {
  .hjs-reveal {
    opacity: 0;
    transform: translateY(26px);
    transition: opacity .7s cubic-bezier(.2,.8,.2,1), transform .7s cubic-bezier(.2,.8,.2,1);
    will-change: opacity, transform;
  }
  .hjs-reveal.is-in {
    opacity: 1;
    transform: none;
  }
  /* Stagger children within a revealed row */
  .hjs-reveal[data-d="1"] { transition-delay: .08s; }
  .hjs-reveal[data-d="2"] { transition-delay: .16s; }
  .hjs-reveal[data-d="3"] { transition-delay: .24s; }
  .hjs-reveal[data-d="4"] { transition-delay: .32s; }
  .hjs-reveal[data-d="5"] { transition-delay: .40s; }
}

/* Smooth scrolling for the whole document */
html { scroll-behavior: smooth; }

/* Nicer default transitions on interactive content */
.l-content a:not(.hjs-hero__btn):not(.w-btn) {
  transition: color .2s ease;
}
.l-content img {
  transition: transform .5s cubic-bezier(.2,.8,.2,1), box-shadow .4s ease;
}

/* Buttons get a lift on hover */
.w-btn, .vc_btn3, a.us-btn, .wpb_button {
  transition: transform .2s ease, box-shadow .25s ease, background-color .2s ease !important;
}
.w-btn:hover, .vc_btn3:hover, a.us-btn:hover, .wpb_button:hover {
  transform: translateY(-2px);
}

/* Iconboxes / cards subtle hover lift */
.w-iconbox, .l-section .vc_column-inner {
  transition: transform .3s ease;
}

/* Section fade for image-bg sections */
.hjs-cmp { transition: box-shadow .35s ease, transform .35s ease; }
.hjs-cmp:hover { box-shadow: 0 12px 38px rgba(20,40,20,.22); }
