* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: "Segoe UI", sans-serif;
}
.ass-consulting {
  font-family: "Segoe UI", sans-serif;
  background: #f5f7fb;
  color: #062D66;
}

/* HERO */
.ass-hero {
  background: linear-gradient(135deg, #062D66, #041a3a);
  color: #fff;
  padding: 110px 20px;
  position: relative;
  overflow: hidden;
}

.ass-hero::after {
  content: "";
  position: absolute;
  width: 400px;
  height: 400px;
  background: #E69600;
  filter: blur(120px);
  top: -100px;
  right: -120px;
  opacity: 0.4;
}

.ass-hero-content {
  max-width: 900px;
  margin: auto;
  position: relative;
  z-index: 2;
}

.ass-badge {
  background: rgba(230,150,0,0.15);
  color: #E69600;
  padding: 8px 14px;
  border-radius: 50px;
  font-size: 12px;
  letter-spacing: 2px;
}

.ass-hero h1 {
  font-size: 48px;
  margin: 20px 0;
}

.ass-hero h1 span {
  color: #E69600;
}

.ass-hero p {
  max-width: 600px;
  opacity: 0.9;
}

.ass-hero-actions {
  margin-top: 30px;
  display: flex;
  gap: 15px;
}

.btn-primary {
  background: #E69600;
  color: #062D66;
  padding: 12px 22px;
  border-radius: 30px;
  text-decoration: none;
  font-weight: bold;
}

.btn-outline {
  border: 2px solid #E69600;
  color: #fff;
  padding: 12px 22px;
  border-radius: 30px;
  text-decoration: none;
}

.ass-stats {
  display: flex;
  gap: 40px;
  margin-top: 50px;
}

.ass-stats div strong {
  display: block;
  font-size: 26px;
  color: #E69600;
}

/* SERVIÇOS */
.ass-services {
  padding: 90px 20px;
}

.ass-title {
  text-align: center;
  font-size: 34px;
  margin-bottom: 50px;
}

.ass-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 25px;
  max-width: 1100px;
  margin: auto;
}

/* CARD */
.ass-card {
  background: #fff;
  padding: 30px;
  border-radius: 22px;
  position: relative;
  transition: 0.3s;
  box-shadow: 0 15px 30px rgba(0,0,0,0.05);
  overflow: hidden;
}

.ass-card:hover {
  transform: translateY(-8px);
}

.ass-icon {
  width: 55px;
  height: 55px;
  background: #062D66;
  color: #E69600;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  font-size: 22px;
  margin-bottom: 20px;
}

.ass-card h3 {
  margin-bottom: 10px;
}

.ass-card p {
  font-size: 14px;
  color: #555;
}

.ass-hover-bar {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 4px;
  width: 0%;
  background: #E69600;
  transition: 0.3s;
}

.ass-card:hover .ass-hover-bar {
  width: 100%;
}

/* CARD DESTACADO */
.highlight {
  background: linear-gradient(135deg, #062D66, #0a3a7a);
  color: #fff;
}

.highlight p {
  color: #ddd;
}

.ass-glow {
  position: absolute;
  width: 200px;
  height: 200px;
  background: #E69600;
  filter: blur(80px);
  top: -80px;
  right: -80px;
  opacity: 0.3;
}

/* CALL TO ACTION */
.ass-call {
  background: #062D66;
  color: #fff;
  padding: 60px 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 1100px;
  margin: 60px auto;
  border-radius: 20px;
}

.ass-btn-call {
  background: #E69600;
  color: #062D66;
  padding: 12px 20px;
  border-radius: 30px;
  text-decoration: none;
  font-weight: bold;
}

@media (max-width: 1024px) {

  .ass-hero h1 {
    font-size: 38px;
  }

  .ass-stats {
    gap: 25px;
    flex-wrap: wrap;
  }

  .ass-call {
    flex-direction: column;
    text-align: center;
    gap: 20px;
  }

}

@media (max-width: 768px) {

  .ass-hero {
    padding: 80px 20px;
    text-align: center;
  }

  .ass-hero h1 {
    font-size: 30px;
  }

  .ass-hero-actions {
    flex-direction: column;
    align-items: center;
  }

  .ass-stats {
    justify-content: center;
    gap: 20px;
  }

  .ass-grid {
    grid-template-columns: 1fr;
  }

  .ass-title {
    font-size: 26px;
  }

  .ass-call {
    padding: 40px 20px;
  }

}

@media (max-width: 480px) {

  .ass-hero h1 {
    font-size: 24px;
  }

  .ass-hero p {
    font-size: 14px;
  }

  .ass-stats {
    flex-direction: column;
    text-align: center;
  }

  .ass-card {
    padding: 22px;
  }

  .btn-primary,
  .btn-outline,
  .ass-btn-call {
    width: 100%;
    text-align: center;
  }

  .ass-hero-actions {
    width: 100%;
  }

}