/* Reusable classes are assigned in Elementor > Advanced > CSS classes. */
.wbxl-reveal { --wbxl-reveal-distance: 18; --wbxl-reveal-delay: 0; }
.wbxl-delay-1 { --wbxl-reveal-delay: 60; }
.wbxl-delay-2 { --wbxl-reveal-delay: 120; }
.wbxl-page [id], .wbxl-page[id] { scroll-margin-top: 120px; }
.wbxl-card:focus-within { outline: 2px solid var(--theme-palette-color-2); outline-offset: 5px; }
.wbxl-project-image a:focus-visible { outline: 3px solid var(--theme-palette-color-2); outline-offset: 5px; }
.wbxl-page .elementor-button:focus-visible { transform: translateY(-2px); }
.wbxl-page .elementor-button:active { transform: translateY(0); }
@media (prefers-reduced-motion: no-preference) {
  html:focus-within { scroll-behavior: smooth; }
}
@media (max-width: 767px) {
  .wbxl-reveal { --wbxl-reveal-distance: 10; --wbxl-reveal-delay: 0; }
  .wbxl-page [id], .wbxl-page[id] { scroll-margin-top: 96px; }
}
@media (hover: none), (pointer: coarse) {
  .wbxl-card:hover, .wbxl-project-image:hover { transform: none !important; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  .wbxl-reveal, .wbxl-card, .wbxl-project-image,
  .wbxl-page .elementor-button, .wbxl-page a,
  #header [data-device] *, #offcanvas * {
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}
