:root { --primary: #6f42c1; --bg: #f7f7fb; }
body { background: var(--bg); }
.card { border: none; box-shadow: 0 8px 30px rgba(0,0,0,0.08); }
.logo-eac { width: 140px; height: auto; }

/* Avatar circular com inicial (fallback quando não há foto) */
.avatar {
      width: 50px;
      height: 50px;
      border-radius: 50%;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-weight: 600;
      color: #fff;
      background: var(--primary);
      text-transform: uppercase;
      user-select: none;
}

.avatar-img {
      width: 50px;
      height: 50px;
      border-radius: 50%;
      object-fit: cover;
}

/* ============================= */
/* Hero card (destaque lado dir) */
/* ============================= */
.hero-card {
  background: linear-gradient(135deg, rgba(111,66,193,0.12), rgba(111,66,193,0.04));
  border: 1px solid rgba(111,66,193,0.15);
}

/* *************************************************************************************** */

/* ============================= */
/* Carrossel — overlay e alturas */
/* ============================= */
.carousel-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,.25), rgba(0,0,0,.35));
  z-index: 1;
}


/* Legendas do carrossel: cor branca e contraste consistente */
.carousel-caption,
.carousel-caption h5,
.carousel-caption p,
.carousel-caption a {
  color: #fff !important;
  text-shadow: 0 1px 8px rgba(0,0,0,.45);
}

/* Garantia de camadas: legenda acima do overlay */
.carousel-caption { z-index: 2; }
.carousel-overlay { z-index: 1; }

/* Utilitários que usamos nos slides */
.min-h-260 { min-height: 260px; }
.bg-grad-violet { background: linear-gradient(135deg, #6f42c1 0%, #9f7be4 100%); }
.bg-grad-orange { background: linear-gradient(135deg, #ff7a59 0%, #ffb199 100%); }


.carousel-caption .btn {
  color: #fff;              /* texto do botão */
  border-color: #fff;       /* contorno se for outline */
}
.carousel-caption .btn:hover {
  filter: brightness(1.05); /* leve realce no hover */
}


/* ====== Imagem do carrossel ====== */
.carousel-img {
  object-fit: cover;      /* preenche, cortando bordas se necessário */
  object-position: center;
  display: block;
}


.min-h-260 { min-height: 260px; }


/* *************************************************************************************** */


/* Gradientes dos slides */
.bg-grad-violet {
  background: linear-gradient(135deg, #6f42c1 0%, #9f7be4 100%);
}
.bg-grad-orange {
  background: linear-gradient(135deg, #ff7a59 0%, #ffb199 100%);
}

/* ============================= */
/* Título de seção com bullet    */
/* ============================= */
.section-title {
  display: flex;
  align-items: center;
  gap: .5rem;
  font-weight: 700;
}
.section-title::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--primary);
  display: inline-block;
}

.section-title { list-style: none; }

.font_07rem{ font-size: 0.7rem; }