/* ==========================================================================
   HyperCash — Seção "Sobre a HyperCash" (institucional: texto + foto + CTA)
   Estilo card escuro, 2 colunas. Escopo: .hb-section
   ========================================================================== */
.hb-section {
  --hb-green: #0a7a30;
  --hb-dark: #e8f0e5;
  --hb-card: #ffffff;
  font-family: "Oakes Grotesk", sans-serif;
  background: var(--hb-dark);
  padding: 88px 24px;
}
.hb-title {
  text-align: center;
  font-size: 44px;
  color:#0a0d0a;
  font-weight: 400;
  margin: 0 auto 44px;
}
.hb-card {
  max-width: 1080px;
  margin: 0 auto;
  background: var(--hb-card);
  border: 1px solid rgba(0,0,0,.09);
  border-radius: 22px;
  overflow: hidden;
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  align-items: stretch;
}
.hb-card__text {
  padding: 54px 48px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.hb-card__text p {
  font-size: 17px;
  line-height: 1.6;
  color: #3f463c;
  margin: 0 0 20px;
}
.hb-card__text p strong { color:#0a0d0a; font-weight: 600; }
.hb-card__text p .hb-hl { color: var(--hb-green); font-weight: 600; }
.hb-cta {
  display: inline-flex; align-items: center; justify-content: center;
  align-self: flex-start;
  margin-top: 14px;
  font-size: 17px;
  color: var(--hb-dark);
  background: var(--hb-green);
  padding: 16px 32px;
  border-radius: 999px;
  text-decoration: none;
  transition: transform .15s, filter .15s, box-shadow .15s;
}
.hb-cta:hover { transform: translateY(-2px); filter: brightness(1.05); box-shadow: 0 10px 30px rgba(10,122,48,.35); }
.hb-card__img {
  background-size: cover;
  background-position: center;
  min-height: 420px;
}
/* quando exibe a logo (não foto): logo inteira, centralizada */
.hb-card__img--logo {
  background-size: 60% auto;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #eef3ec;
}

@media (max-width: 860px) {
  .hb-card { grid-template-columns: 1fr; }
  .hb-card__img { min-height: 280px; order: -1; }
  .hb-card__text { padding: 40px 28px; }
  .hb-title { font-size: 32px; }
}
