 :root {
     --primary: #6366f1;
     /* Indigo */
     --primary-dark: #18181b;
     --secondary: #fbbf24;
     /* Amarelo */
     --accent: #e11d48;
     /* Rosa Neon */
     --bg-primary: linear-gradient(135deg, #020617 0%, #18181b 100%);
     --bg-card: linear-gradient(135deg, rgba(30, 41, 59, 0.4), rgba(12, 74, 110, 0.2));
     --text-primary: #e2e8f0;
     --text-secondary: #94a3b8;
     --border-color: rgba(129, 140, 153, 0.2);
     --glow: 0 0 25px rgba(99, 102, 241, 0.5);
     --secondary_two: #06b6d4;
     --accent_two: #8b5cf6;
     --purple: #a855f7;
 }

 body {
     background: #020617;
     color: var(--text-primary);
     font-family: 'Inter', sans-serif;
     line-height: 1.6;
 }

 h1 {
  word-wrap: break-word; /* Para navegadores mais antigos */
  overflow-wrap: break-word; /* Padrão mais moderno */
  word-break: break-word; /* Alternativa que também pode ajudar */
  line-height: 1.2; /* Um valor sem unidade é recomendado para escalabilidade */
  overflow: visible; /* Garante que o texto não seja cortado se exceder a caixa */
  font-size: 3rem; /* Exemplo de tamanho para desktop */
}

/* Media Query para dispositivos móveis (ex: telas com até 600px de largura) */
@media (max-width: 600px) {
  h1 {
    font-size: 2rem; /* Tamanho menor para mobile */
  }
}

 .font-mono {
     font-family: 'JetBrains Mono', monospace;
 }

 .glass-card {
     background: var(--bg-card);
     border: 1px solid var(--border-color);
     backdrop-filter: blur(10px);
     -webkit-backdrop-filter: blur(10px);
     transition: all 0.3s ease;
 }

 .glass-card:hover {
     transform: translateY(-8px);
     border-color: var(--primary);
     box-shadow: 0 15px 30px rgba(0, 0, 0, 0.2);
 }

 .btn {
     display: inline-flex;
     align-items: center;
     gap: 0.5rem;
     padding: 1rem 2rem;
     border-radius: 50px;
     font-weight: 600;
     text-decoration: none;
     transition: all 0.3s ease;
     font-size: 1rem;
     position: relative;
     overflow: hidden;
 }

 .btn-primary {
     background: linear-gradient(135deg, var(--primary), var(--accent_two));
     color: white;
     box-shadow: 0 8px 30px rgba(99, 102, 241, 0.4);
 }

 .btn-primary:hover {
     transform: translateY(-3px);
     background: var(--purple);
     box-shadow: 0 12px 35px rgba(188, 85, 247, 0.5);
 }

 .btn-secondary {
     background: transparent;
     color: var(--text-primary);
     border: 1px solid var(--primary);
 }

 .btn-secondary:hover {
     background: rgba(99, 102, 241, 0.1);
     border-color: var(--purple);
 }

 .section-animate {
     opacity: 0;
     transform: translateY(30px);
     transition: opacity 0.8s ease-out, transform 0.8s ease-out;
 }

 .section-animate.visible {
     opacity: 1;
     transform: translateY(0);
 }

 #scrollTopBtn {
     display: none;
     /* Começa escondido */
     position: fixed;
     bottom: 20px;
     right: 30px;
     z-index: 99;
     border: none;
     outline: none;
     background-color: #6366f1;
     /* Cor primária site */
     color: white;
     cursor: pointer;
     padding: 12px;
     border-radius: 50%;
     width: 48px;
     height: 48px;
     box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
     transition: opacity 0.3s, transform 0.3s;
     opacity: 0;
     transform: translateY(20px);
 }

 #scrollTopBtn.show {
     display: flex;
     align-items: center;
     justify-content: center;
     opacity: 1;
     transform: translateY(0);
 }

 #scrollTopBtn:hover {
     background: var(--purple);
     /* Cor mais escura para hover */
 }

 /* ===== BARRA DE ROLAGEM CUSTOMIZADA ===== */

/* Funciona em navegadores baseados em WebKit (Chrome, Edge, Safari) */
::-webkit-scrollbar {
  width: 12px; /* Largura da barra de rolagem */
}

::-webkit-scrollbar-track {
  background: #0f172a; /* Cor de fundo da trilha (um tom de slate-900) */
}

::-webkit-scrollbar-thumb {
  /* O gradiente da sua identidade visual */
  background: linear-gradient(45deg, #910ac7, #b164ff); 
  border-radius: 10px; /* Bordas arredondadas */
  border: 2px solid #0f172a; /* Cria uma pequena borda em volta do polegar */
}

::-webkit-scrollbar-thumb:hover {
  /* Um gradiente um pouco mais vibrante quando o mouse passa por cima */
  background: linear-gradient(45deg, #6366f1, #a855f7);
}

/* Funciona no Firefox */
html {
  scrollbar-width: thin;
  scrollbar-color: #7e089b #0f172a; /* Cor do polegar e da trilha */
}

/* ===== BARRA DE PROGRESSO DE LEITURA ===== */
#progress-bar {
  position: fixed; /* Fica fixa no topo da tela */
  top: 0;
  left: 0;
  height: 4px; /* Altura da barra */
  background: linear-gradient(to right, #9423f0, #812bd6); /* Gradiente da ID Visual */
  width: 0%; /* Começa com largura 0 */
  z-index: 100; /* Garante que ela fique acima de outros elementos */
  transition: width 0.1s linear; /* Animação suave ao rolar */
}