/* ==================================================
   FONT
================================================== */

@import url('https://fonts.googleapis.com/css2?family=Geist:wght@100..900&display=swap');

/* ==================================================
   RESET GLOBAL
================================================== */

* {
  box-sizing: border-box;
}

html,
body {
  margin: 0;
  padding: 0;
}

body {
  padding-top: 44px;

  font-family:
    "Geist",
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Arial,
    sans-serif;

  font-size: 17px;
  line-height: 1.47059;
  font-weight: 400;
  letter-spacing: -0.022em;

  color: #1d1d1f;

  background:
    linear-gradient(
      180deg,
      #fbfbfd 0%,
      #f5f5f7 100%
    );

  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  overflow-x: hidden;
}

/* ==================================================
   CONTAINER GLOBAL
================================================== */

.af-container {
  width: min(980px, calc(100% - 48px));
  margin: 0 auto;
}

/* ==================================================
   TIPOGRAFIA GLOBAL
================================================== */

h1,
h2,
h3,
h4,
h5,
h6,
.tool-title,
.company-name {
  font-family:
    "Geist",
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Arial,
    sans-serif;

  letter-spacing: -0.045em;
  color: #1d1d1f;
}

input,
button,
textarea,
select {
  font-family:
    "Geist",
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Arial,
    sans-serif;
}

/* ==================================================
   HERO - ANIMAÇÕES SUAVES
================================================== */

.af-hero .af-container {
  animation: afHeroFadeIn 0.75s ease-out both;
}

.af-hero::before {
  animation: afGlowPulse 5.5s ease-in-out infinite;
}

.af-search {
  animation: afFloatSoft 4.8s ease-in-out infinite;
}

.af-trust {
  animation: afHeroFadeIn 0.95s ease-out both;
  animation-delay: 0.15s;
}

.af-card,
.af-feature-card,
.af-home-card {
  animation: afCardFadeUp 0.75s ease-out both;
}

/* ==================================================
   KEYFRAMES
================================================== */

@keyframes afHeroFadeIn {
  from {
    opacity: 0;
    transform: translateY(14px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes afGlowPulse {
  0%, 100% {
    opacity: 0.75;
    transform: scale(1);
  }

  50% {
    opacity: 1;
    transform: scale(1.04);
  }
}

@keyframes afFloatSoft {
  0%, 100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-3px);
  }
}

@keyframes afCardFadeUp {
  from {
    opacity: 0;
    transform: translateY(18px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* ==================================================
   RESPONSIVO GLOBAL
================================================== */

@media (max-width: 900px) {
  .af-container {
    width: min(100% - 32px, 1180px);
  }
}

/* ==================================================
   ACESSIBILIDADE - REDUZIR MOVIMENTO
================================================== */

@media (prefers-reduced-motion: reduce) {
  .af-hero .af-container,
  .af-hero::before,
  .af-search,
  .af-trust,
  .af-card,
  .af-feature-card,
  .af-home-card {
    animation: none !important;
  }
}