/* GoFerma page-transitions styles */

/* Top progress bar */
#gf-topbar {
  position: fixed;
  top: 0; left: 0;
  width: 100%;
  height: 3px;
  z-index: 2147483647;
  pointer-events: none;
  opacity: 0;
  transition: opacity .2s ease;
  background: transparent;
}
#gf-topbar.active { opacity: 1; }
#gf-topbar.done   { opacity: 0; transition: opacity .35s ease .1s; }
#gf-topbar > span {
  display: block;
  height: 100%;
  width: 0%;
  background: linear-gradient(90deg, #006a34 0%, #6dfe9c 60%, #006a34 100%);
  box-shadow: 0 0 10px rgba(109,254,156,.6), 0 0 4px rgba(0,106,52,.6);
  transition: width .18s linear;
  border-radius: 0 2px 2px 0;
}

/* Page enter / leave — контент плавно затухает и всплывает */
html.gf-leaving body {
  opacity: .5;
  transform: translateY(2px);
  transition: opacity .18s ease, transform .18s ease;
  pointer-events: none;
}
html.gf-entered body {
  animation: gfEnter .36s cubic-bezier(.22,1,.36,1) both;
}
@keyframes gfEnter {
  from { opacity: 0; transform: translateY(6px); }
  to   { opacity: 1; transform: translateY(0); }
}

@media (prefers-reduced-motion: reduce) {
  html.gf-leaving body, html.gf-entered body { animation: none !important; transform: none !important; opacity: 1 !important; transition: none !important; }
  #gf-topbar { display: none; }
}

