/* Desplazamiento nativo y libre: sin encastre, sin reanclado y sin animaciones
   que compitan con la rueda, el trackpad o el gesto táctil. */
html,
body {
  scroll-behavior: auto !important;
  scroll-snap-type: none !important;
  scroll-snap-stop: normal !important;
  overscroll-behavior-y: auto !important;
  overflow-anchor: none !important;
}

html {
  scroll-padding-top: 96px;
}

body {
  overflow-x: hidden;
  overflow-y: auto !important;
  touch-action: pan-y pinch-zoom !important;
}

main,
section,
[id] {
  scroll-snap-align: none !important;
  scroll-snap-stop: normal !important;
  overflow-anchor: none !important;
}

/* Los bloques quedan visibles desde el primer render. Esto evita repintados
   largos al recorrer una página extensa y mantiene el homenaje fluido. */
[data-reveal] {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
}

/* El control aparece en cuanto existe desplazamiento vertical. */
.back-to-top.is-visible {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
