@layer base {
  html,
  body {
    margin: 0;
    padding: 0;
  }
  body {
    overscroll-behavior: none;
  }
  main > :first-child {
    margin-top: 0 !important;
  }
  main > :last-child {
    margin-bottom: 0 !important;
  }
}
::-webkit-scrollbar {
  display: none;
}

/* Preloader */
#preloader {
  position: fixed;
  inset: 0;
  z-index: 9999;
  background-color: #faf8ff;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.4s ease-out, visibility 0.4s ease-out;
}
#preloader.hidden-loader {
  opacity: 0;
  visibility: hidden;
}
.spinner {
  width: 48px;
  height: 48px;
  border: 4px solid #e2e7ff;
  border-top-color: #00652c;
  border-radius: 50%;
  animation: spin 1s linear infinite;
}
@keyframes spin {
  to { transform: rotate(360deg); }
}
