@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz@0,14..32;1,14..32&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

:root {
  /* Cores */
  --preto: #000000;
  --preto-moderno: #0f0f0f;
  --branco: #fffff1;
  --laranja-principal: #ff8906;
  --laranja-secundario: #ff8c00;
  --laranja-terciario: #ffb84d;
  --laranja-claro: #ffe0b3;
  --cinza: #6c6c75;
  --verde: #25d366;
  --rosa: #ff6b9e;

  /* Extras */
  --borda-suave: rgba(255, 255, 255, 0.1);
  --transparente-preto: rgba(0, 0, 0, 0.6);
  --borda-rosa: #570c26;
  --borda-verde: #0c4321;

  /* Tipografia */
  --font-heading: 'Poppins', sans-serif;
  --font-body: 'Inter', sans-serif;

  /* Tamanho tipografia */
  --font-xs: 1.2rem;
  --font-sm: 1.6rem;
  --font-md: 2rem;
  --font-lg: 2.4rem;
  --font-xl: 2.8rem;
  --font-xxl: 3.2rem;
  --medium-large: 4.4rem;
  --font-xxxl: 6rem;
  --font-xxxxl: 8rem;
  --font-giant: 10rem;

  /* Espaçamento (margin, padding, gap) */
  --space-1: 0.4rem;
  --space-2: 0.8rem;
  --space-3: 1.2rem;
  --space-4: 1.6rem;
  --space-5: 2rem;
  --space-6: 2.4rem;
  --space-7: 3.2rem;
  --space-8: 4.8rem;
  --space-9: 6rem;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* navegação pelo tab */
:focus-visible {
  outline: 2px solid var(--laranja-principal);
  outline-offset: 4px;
  border-radius: 8px;
}

html {
  scroll-behavior: smooth;
  font-size: 62.5%;
  /* Tamanho base da fonte */
}

body {
  min-height: 100vh;
  width: 100%;
  font-family: var(--font-body);
  color: var(--branco);
  font-size: 1.6rem;
}

.container {
  max-width: 1024px;
  margin: 0 auto;
}

/* Container do particles.js */
#particles-js {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: var(--preto);
  z-index: -1;
  /* fundo abaixo de todo o conteúdo */
}

#btnTopo {
  display: none;
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  background-color: var(--laranja-principal);
  color: var(--preto);
  font-size: var(--font-lg);
  border-radius: 50%;
  text-decoration: none;
  z-index: 999;
  box-shadow: 0 0 10px var(--laranja-principal);
  animation: pulse 2s infinite;
  transition: transform 0.3s ease;
  padding: 0.8rem 1rem;

}

#btnTopo:hover {
  transform: scale(1.1);
}

@keyframes pulse {
  0% {
    box-shadow: 0 0 10px var(--laranja-principal);
  }

  50% {
    box-shadow: 0 0 20px var(--laranja-terciario);
  }

  100% {
    box-shadow: 0 0 10px var(--laranja-secundario);
  }
}

@media (min-width: 768px) {
  #btnTopo {
    right: 5rem;
    padding: var(--space-3) var(--space-4);
    bottom: 2rem;
  }
}