:root{
  --fsg-primary:#0C83C6;
  --fsg-secondary:#F4C431;
  --fsg-dark:#0f1722;
  --text:#0f172a;
  --muted:#64748b;

  --shadow:0 10px 30px rgba(0,0,0,.06);
  --shadow-hover:0 18px 40px rgba(0,0,0,.14);
  --radius:1.25rem;
}

/* BASE */
body{
  font-family:'Poppins',sans-serif;
  color:var(--text);
  background:
    radial-gradient(900px 500px at 10% -10%, rgba(12,131,198,.10), transparent 60%),
    radial-gradient(800px 500px at 90% 0%, rgba(244,196,49,.08), transparent 55%),
    #fff;
}

p{line-height:1.7;color:var(--muted)}
h1,h2,h3,h4,h5{color:var(--text);letter-spacing:-.02em}

/* NAVBAR */
.navbar{
  background:#fff;
  box-shadow:0 8px 24px rgba(0,0,0,.05);
}
.navbar .nav-link{
  font-weight:500;
  color:var(--text);
}
.navbar .nav-link:hover{
  color:var(--fsg-primary);
}

/* HERO */
.hero{
  background:
    linear-gradient(120deg,
      rgba(12,131,198,.95),
      rgba(26,161,241,.95) 60%,
      rgba(244,196,49,.95)
    );
  color:#fff;
}
.hero h1{
  font-weight:700;
}
.hero p{
  color:rgba(255,255,255,.9);
}

/* BOTÕES */
.btn-fsg{
  background:linear-gradient(135deg,var(--fsg-primary),#1aa1f1);
  color:#fff;
  border:none;
  border-radius:999px;
  padding:.55rem 1.2rem;
  box-shadow:0 10px 26px rgba(12,131,198,.35);
}
.btn-fsg:hover{
  background:#0a6ea3;
  color:#fff;
}

.btn-outline-light{
  border-radius:999px;
}

/* SEÇÕES */
section{
  padding:5rem 0;
}
.section-title{
  font-weight:700;
  margin-bottom:.75rem;
}
.section-title + p,
.section-title + .text-muted{
  max-width:720px;
}

/* CARDS */
.card{
  border:none;
  border-radius:var(--radius);
}
.card-hover{
  transition:.35s ease;
  box-shadow:var(--shadow);
}
.card-hover:hover{
  transform:translateY(-6px);
  box-shadow:var(--shadow-hover);
}

/* BADGES */
.badge{
  font-weight:500;
  border-radius:999px;
  padding:.4rem .7rem;
}

/* FORM */
.form-control{
  border-radius:.9rem;
  padding:.6rem .75rem;
}
.form-control:focus{
  border-color:var(--fsg-primary);
  box-shadow:0 0 0 .15rem rgba(12,131,198,.2);
}

/* FOOTER */
footer{
  background:var(--fsg-dark);
  color:#c9d0da;
}
footer p{
  color:#c9d0da;
}

/* WHATSAPP FLOAT */
.whats-float{
  position:fixed;
  bottom:22px;
  right:22px;
  background:#25D366;
  color:#fff;
  padding:.85rem 1.1rem;
  border-radius:999px;
  text-decoration:none;
  font-weight:500;
  box-shadow:0 12px 30px rgba(0,0,0,.25);
}
.whats-float:hover{
  color:#fff;
  filter:brightness(1.05);
}

/* RESPONSIVO */
@media(max-width:768px){
  .hero{
    padding:4rem 0;
  }
  section{
    padding:4rem 0;
  }
}
