/* ── Depoimentos — Carrossel ────────────────────────────────────────── */

/* 1. Wrapper: centraliza e limita largura */
body:not(.path-admin) .h2-secao--depoimentos .view-hm2-lp-depoimentos {
  max-width: 52rem;
  margin-inline: auto;
  padding-top: 1rem;
}

/* 2. Carousel: padding lateral cria a área das setas (fora do card),
      padding-bottom reserva espaço para os indicadores */
body:not(.path-admin) .h2-secao--depoimentos .carousel.slide {
  padding-inline: 5rem;
  padding-bottom: 2.75rem;
}

/* 3. Zera margens negativas do .row do Bootstrap que deslocam o card */
body:not(.path-admin) .h2-secao--depoimentos .carousel-item .row {
  margin-inline: 0 !important;
}

/* 4. Card: display grid — texto full width, foto+autor+cargo centrados */
body:not(.path-admin) .h2-secao--depoimentos .carousel-item .col-md-12 {
  display: grid !important;
  grid-template-columns: 1fr auto auto 1fr !important;
  grid-template-areas: 'texto texto texto texto' '. foto autor .' '. foto cargo .' !important;
  column-gap: .85rem !important;
  row-gap: 0 !important;
  justify-items: start !important;
  text-align: center !important;
  padding: clamp(1.25rem, 3vw, 2rem) !important;
  background: #ffffff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 1rem !important;
  box-shadow: 0 2px 16px rgba(0,0,0,.08) !important;
  align-content: start !important;
  width: 100% !important;
  min-height: 11rem;
}

/* Estrelas: ocultas */
body:not(.path-admin) .h2-secao--depoimentos .views-field-field-depoimento-nota {
  display: none !important;
}

/* 5. Aspas + texto do depoimento */
body:not(.path-admin) .h2-secao--depoimentos .views-field-field-depoimento-texto {
  grid-area: texto !important;
  justify-self: center !important;
  text-align: center !important;
  max-width: 38rem !important;
  margin-bottom: 1.5rem !important;
}

body:not(.path-admin) .h2-secao--depoimentos .views-field-field-depoimento-texto::before {
  content: '\201C' !important;
  display: block !important;
  color: var(--hm2-pal-brand, #315C4C) !important;
  font-family: Georgia, serif !important;
  font-size: 4.5rem !important;
  line-height: .6 !important;
  opacity: .65 !important;
  margin-bottom: 1rem !important;
}

body:not(.path-admin) .h2-secao--depoimentos .views-field-field-depoimento-texto .field-content {
  color: var(--hm2-pal-text, #1F2933) !important;
  font-family: system-ui, -apple-system, 'Segoe UI', sans-serif !important;
  font-size: clamp(1.1rem, 2.5vw, 1.35rem) !important;
  font-weight: 500 !important;
  line-height: 1.55 !important;
  font-style: normal !important;
}

/* 6. Foto circular */
body:not(.path-admin) .h2-secao--depoimentos .views-field-field-depoimento-foto {
  grid-area: foto !important;
  align-self: center !important;
  justify-self: center !important;
  margin-bottom: 0 !important;
}

body:not(.path-admin) .h2-secao--depoimentos .views-field-field-depoimento-foto img {
  width: 3.5rem !important;
  height: 3.5rem !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  box-shadow: 0 0 0 2px var(--hm2-pal-brand, #315C4C) !important;
  display: block !important;
  margin: 0 auto !important;
}

/* 7. Nome do autor */
body:not(.path-admin) .h2-secao--depoimentos .views-field-field-depoimento-autor {
  grid-area: autor !important;
  align-self: end !important;
  justify-self: start !important;
  text-align: left !important;
}

body:not(.path-admin) .h2-secao--depoimentos .views-field-field-depoimento-autor .field-content {
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: var(--hm2-pal-text, #1F2933) !important;
  line-height: 1.3 !important;
  font-style: normal !important;
}

/* Traço separador — exibido apenas quando não há foto */
body:not(.path-admin) .h2-secao--depoimentos .views-field-field-depoimento-autor::before {
  content: '' !important;
  display: block !important;
  width: 2rem !important;
  height: 2px !important;
  background: var(--hm2-pal-brand, #315C4C) !important;
  opacity: .4 !important;
  margin: .5rem auto .75rem !important;
}

body:not(.path-admin) .h2-secao--depoimentos .carousel-item .col-md-12:has(.views-field-field-depoimento-foto img) .views-field-field-depoimento-autor::before {
  display: none !important;
}

/* 8. Cargo */
body:not(.path-admin) .h2-secao--depoimentos .views-field-field-depoimento-cargo {
  grid-area: cargo !important;
  align-self: start !important;
  justify-self: start !important;
  text-align: left !important;
  margin-top: .2rem !important;
}

body:not(.path-admin) .h2-secao--depoimentos .views-field-field-depoimento-cargo .field-content {
  font-size: .65rem !important;
  text-transform: uppercase !important;
  letter-spacing: .09em !important;
  color: #6b7280 !important;
  font-weight: 500 !important;
  font-style: normal !important;
}

/* 9. Setas: círculo brand, posicionadas no padding-inline do .carousel.slide */
body:not(.path-admin) .h2-secao--depoimentos .carousel-control-prev,
body:not(.path-admin) .h2-secao--depoimentos .carousel-control-next {
  width: 2.5rem !important;
  height: 2.5rem !important;
  top: 50% !important;
  bottom: auto !important;
  transform: translateY(-50%) !important;
  background: var(--hm2-pal-brand, #315C4C) !important;
  border-radius: 50% !important;
  opacity: 1 !important;
  transition: background .2s ease !important;
}

body:not(.path-admin) .h2-secao--depoimentos .carousel-control-prev { left: .5rem !important; }
body:not(.path-admin) .h2-secao--depoimentos .carousel-control-next { right: .5rem !important; }

body:not(.path-admin) .h2-secao--depoimentos .carousel-control-prev:hover,
body:not(.path-admin) .h2-secao--depoimentos .carousel-control-next:hover {
  background: var(--hm2-pal-brand-dark, #234438) !important;
}

body:not(.path-admin) .h2-secao--depoimentos .carousel-control-prev-icon,
body:not(.path-admin) .h2-secao--depoimentos .carousel-control-next-icon {
  width: 1rem !important;
  height: 1rem !important;
}

/* 10. Indicadores (bolinhas) */
body:not(.path-admin) .h2-secao--depoimentos .carousel-indicators {
  bottom: .5rem !important;
  margin-bottom: 0 !important;
}

body:not(.path-admin) .h2-secao--depoimentos .carousel-indicators button {
  width: .6rem !important;
  height: .6rem !important;
  margin-inline: .3rem !important;
  background-color: #d1d5db !important;
  border: none !important;
  border-radius: 50% !important;
  opacity: 1 !important;
  transition: background-color .2s ease !important;
}

body:not(.path-admin) .h2-secao--depoimentos .carousel-indicators button.active {
  background-color: var(--hm2-pal-brand, #315C4C) !important;
}

/* 11. Mobile */
@media (max-width: 767.98px) {
  body:not(.path-admin) .h2-secao--depoimentos .carousel.slide {
    padding-inline: 0 !important;
    padding-bottom: 3.5rem !important;
  }

  body:not(.path-admin) .h2-secao--depoimentos .carousel-item .col-md-12 {
    border-radius: 0 !important;
    border-inline: none !important;
  }

  body:not(.path-admin) .h2-secao--depoimentos .carousel-control-prev,
  body:not(.path-admin) .h2-secao--depoimentos .carousel-control-next {
    top: auto !important;
    bottom: .25rem !important;
    transform: none !important;
  }

  body:not(.path-admin) .h2-secao--depoimentos .carousel-control-prev { left: 1rem !important; }
  body:not(.path-admin) .h2-secao--depoimentos .carousel-control-next { right: 1rem !important; }
}
