:root {
  --ve-site-header-offset: 0px;
  --ve-landing-header-height: 0px;
  --ve-landing-safe-gap: 1.25rem;
}

/* estado inicial antes do JS rodar */
.landing-header {
  width: 100%;
  z-index: 1030;
  background-color: var(--bs-body-bg, #fff);
  transition: box-shadow .2s ease-in-out;
}

/* depois que o JS ativa fixo */
.landing-header.is-fixed {
  position: fixed;
  left: 0;
  right: 0;
  top: var(--ve-site-header-offset, 0px);
}

/* shadow/elevation when the user scrolls */
.landing-header.header-scrolled {
  box-shadow: 0 .25rem .75rem rgba(0, 0, 0, 0.08);
}

html.ve-has-landing {
  scroll-behavior: smooth;
}

/* empurra o conteudo inicial abaixo do menu flutuante */
html.ve-has-landing #hero {
  margin-top: calc(var(--ve-landing-header-height, 0px) + var(--ve-landing-safe-gap));
}

html.ve-has-landing section[id] {
  scroll-margin-top: calc(
    var(--ve-site-header-offset, 0px) + var(--ve-landing-header-height, 0px) + var(--ve-landing-safe-gap)
  );
}

@media (prefers-reduced-motion: reduce) {
  html.ve-has-landing {
    scroll-behavior: auto;
  }

  .landing-header {
    transition: none;
  }
}

