@import url("https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&family=Jacquard+24&family=Josefin+Sans:ital,wght@0,100..700;1,100..700&family=Josefin+Slab:ital,wght@0,100..700;1,100..700&family=Libre+Caslon+Text:ital,wght@0,400;0,700;1,400&family=Montserrat:ital,wght@0,100..900;1,100..900&family=Pacifico&family=VT323&display=swap");
@font-face {
  font-family: 'Neurial Grotesk Regular';
  src: url('/src/fonts/NeurialGrotesk-Regular.otf') format('otf'); /* Altere o formato se for diferente */
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'NeurialGrotesk';
  src: url('/src/fonts/NeurialGrotesk-Bold.otf') format('opentype');
  font-weight: bold;
  font-style: normal;
}

* {
  font-family: "DM Sans", sans-serif;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-size: 16px;
}
/* html, body {
  margin: 0;
  padding: 0;
  height: 100%;
  display: flex;
  justify-content: center; 
  align-items: center;  
  flex-direction: column; 
} */
main {
  margin-bottom: 650px;
  position: relative;
  top: calc(630px);
  height: calc(100% - 620px);
}

body {
  position: relative;
  background-color: #f8f9f7;
  max-width: 2560px;
  z-index: 0;
  margin: 0 auto;
}

section {
  padding: 0px 3.5rem 0px 3.5rem;
  transform: translateY(50px);
  transition: opacity 1s ease-out, transform 1s ease-out;
}

:root {
 --primary:#640483;
 --secondary: #ff9900;
 --tertiary:#FFFFFF;
}

.fade-in-section.visible {
  opacity: 1;
  transform: translateY(0);
}

.btn-default {
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #530F80;
  color: #050504;
  border-radius: 5px;
  padding: 10px 14px;
  font-weight: bold;
  font-size: 15px;
  box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, 0.1);
  cursor: pointer;
  transition: background-color 0.3s ease;
  width: 150px;
  height: 48px;
}
.btn-default:hover {
  background-color: #a9c0f0;
}
#title {
  font-size: 2rem;
  font-weight: bold;
  text-align: left;
  line-height: 60px;
  color: hsl(90, 14%, 97%);
}

.lazy-image {
  opacity: 0;
  transition: opacity 0.3s ease-in;
}

.lazy-image.loaded {
  opacity: 1;
}

/* CSS */
.divider {
  border: none;            /* Remove borda padrão */
  border-top: 4px solid #ff9900; /* Define espessura e cor */
  width: 90%;              /* Ajusta o comprimento da linha */
  margin: 1rem auto;       /* Centraliza e adiciona espaço */
  opacity: 0.8;            /* Ajusta a transparência, opcional */
}

@media (max-width: 1024px) {
  section {
    padding: 0px 1.5rem 0px 1.5rem;
    transform: translateY(50px);
    transition: opacity 1s ease-out, transform 1s ease-out;
  }
  
}