.matriz {
  background: #fbf6f0;
  padding-bottom: 4rem;
  color: #6F6C6C;
}

.matriz .titulo1 {
  font-size: 40px;
  font-weight: 700;
  color: #263c63;
  margin-bottom: 1rem;
}

.matriz .section-info {
  padding-top: 0;
}

.matriz .component-box-icon-cinza,
.matriz .card {
  background: #e9e9ea;
  border-radius: 1rem;
  padding: 1.5rem;
  box-shadow: 0 6px 18px rgba(0,0,0,0.06);
  min-height: 260px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.matriz .card.h-100 {
  min-height: 100%;
}

.matriz .component-box-content .fw-bold,
.matriz .matriz-card h2,
.matriz .card .fw-bold {
  color: #d40075;
  font-size: 30px;
  line-height: 1.5;
  margin-bottom: 1rem;
  @media (min-width: 768px) {
    max-width: 90%;
  }
}
.matriz .matriz-card {
  padding: 18px 24px;
  justify-content: end;
  min-height: 350px;
}
.matriz .matriz-card .component-box-content {
  height: auto;
}
.matriz .matriz-card .card-body {
  padding: 0;
}
.matriz .matriz-card .component-box-content p {
  font-family: Open Sans;
  font-weight: 400;
  font-style: Regular;
  font-size: 18px;
  leading-trim: NONE;
  line-height: 149%;
  letter-spacing: 0%;
  vertical-align: middle;
  color: #000000CC;
  height: auto;
  margin-bottom: 0;
}

.matriz p {
  color: #6F6C6C;
  line-height: 1.5;
  margin-bottom: 1.2rem;
}

.matriz .btn-matriz {
  display: inline-block;
  background: #0072BC;
  color: #fff;
  padding: 8px 18px; /* menor */
  border-radius: 999px;
  text-decoration: none;
  font-size: 14px; /* menor */
  font-weight: 600; /* mais leve */
  border: none;
  box-shadow: none; /* removi sombra para ficar mais discreto */
  transition: all 0.3s ease;
  align-self: flex-start; /* ALINHA À ESQUERDA */
}

.matriz .btn-matriz:hover {
  background: #0086df;
  color: #fff;
}

.matriz .card-blue {
  background: #263c63;
  color: #ffffff;
}

.matriz .card-blue .fw-bold {
  color: #ffffff;
}

.matriz .box-direita {
  border-radius: 1rem;
  background-size: cover;
  background-position: center;
  min-height: 250px;
}

.matriz .pt-4 { padding-top: 1.5rem; }
.matriz .pt-5 { padding-top: 3rem; }

/* ----------------------------------- */
/* ------- RESPONSIVO (MOBILE) ------- */
/* ----------------------------------- */

@media (max-width: 991.98px) {
  .matriz .titulo1 { font-size: 32px; }
  .matriz .component-box-icon-cinza,
  .matriz .card {
    min-height: 220px;
    padding: 1.25rem;
  }
}

@media (max-width: 768px) {
  .banner-topo-template-parts {
    padding: 20px;
  }
}

@media (max-width: 575.98px) {
  .matriz .titulo1 { font-size: 28px; }
  .matriz .component-box-icon-cinza,
  .matriz .card {
    min-height: auto;
    padding: 1rem;
    border-radius: .75rem;
  }
  .matriz .card .fw-bold { font-size: 18px; }
}
