/* Sticky Header Slide Effect */
:root {
  --sticky-header-transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), background-color 0.3s ease, box-shadow 0.3s ease;
}

/* We target common header selectors */
header.sticky-templated-header,
.site-header.sticky-templated-header,
#masthead.sticky-templated-header,
.elementor-location-header.sticky-templated-header {
  position: fixed !important;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
  transform: translateY(-100%);
  transition: var(--sticky-header-transition);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
}

/* Slide down when visible */
header.sticky-templated-header.slide-down,
.site-header.sticky-templated-header.slide-down,
#masthead.sticky-templated-header.slide-down,
.elementor-location-header.sticky-templated-header.slide-down {
  transform: translateY(0);
}

/* Handle WordPress Admin Bar offset */
body.admin-bar header.sticky-templated-header,
body.admin-bar .site-header.sticky-templated-header,
body.admin-bar #masthead.sticky-templated-header,
body.admin-bar .elementor-location-header.sticky-templated-header {
  top: var(--wp-admin--admin-bar--height, 32px);
}

@media screen and (max-width: 782px) {
  body.admin-bar header.sticky-templated-header,
  body.admin-bar .site-header.sticky-templated-header,
  body.admin-bar #masthead.sticky-templated-header,
  body.admin-bar .elementor-location-header.sticky-templated-header {
    top: 46px;
  }
}
