@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap');

:root {
  --color-primary-50: #f0f7ff;
  --color-primary-100: #e0efff;
  --color-primary-200: #bae0ff;
  --color-primary-300: #7cc8ff;
  --color-primary-400: #36acff;
  --color-primary-500: #4392C2;
  --color-primary-600: #3a7ba8;
  --color-primary-700: #2f648a;
  --color-primary-800: #2a5472;
  --color-primary-900: #26475f;
  --color-primary-950: #0c1a24;

  --color-secondary-50: #fafafa;
  --color-secondary-100: #f4f4f5;
  --color-secondary-200: #e4e4e7;
  --color-secondary-300: #d4d4d8;
  --color-secondary-400: #a1a1aa;
  --color-secondary-500: #71717a;
  --color-secondary-600: #52525b;
  --color-secondary-700: #3f3f46;
  --color-secondary-800: #29292e;
  --color-secondary-900: #18181b;
  --color-secondary-950: #09090b;

  --color-success-50: #f0fdf4;
  --color-success-100: #dcfce7;
  --color-success-200: #bbf7d0;
  --color-success-500: #22c55e;
  --color-success-600: #16a34a;
  --color-success-700: #15803d;
}

html {
  scroll-behavior: smooth;
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
}

body {
  font-family: 'Plus Jakarta Sans', sans-serif;
  color: var(--color-secondary-900);
  background-color: #ffffff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Micro-animações nativas e fluidas */
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes fadeUp {
  from { 
    opacity: 0; 
    transform: translateY(16px); 
  }
  to { 
    opacity: 1; 
    transform: translateY(0); 
  }
}

@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes pulseSlow {
  0%, 100% { transform: scale(1); opacity: 0.35; }
  50% { transform: scale(1.08); opacity: 0.55; }
}

@keyframes floatHero {
  0%, 100% { transform: translateY(0px); }
  50% { transform: translateY(-8px); }
}

.animate-fade-in {
  animation: fadeIn 0.4s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.animate-fade-up {
  animation: fadeUp 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.animate-slide-down {
  animation: slideDown 0.25s ease-out forwards;
}

.animate-pulse-slow {
  animation: pulseSlow 6s ease-in-out infinite;
}

.animate-float {
  animation: floatHero 4s ease-in-out infinite;
}

.animation-delay-100 {
  animation-delay: 100ms;
}

.animation-delay-200 {
  animation-delay: 200ms;
}

/* Efeito de brilho sutil nos botões de CTA */
.btn-shine {
  position: relative;
  overflow: hidden;
}

.btn-shine::after {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: linear-gradient(
    60deg,
    transparent 20%,
    rgba(255, 255, 255, 0.25) 25%,
    transparent 30%
  );
  transform: rotate(30deg) translate(-100%, -100%);
  transition: transform 0.75s ease-in-out;
}

.btn-shine:hover::after {
  transform: rotate(30deg) translate(100%, 100%);
}

/* Esconder barra de rolagem */
.no-scrollbar::-webkit-scrollbar {
  display: none;
}
.no-scrollbar {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
