/* Revisão restrita: arte do hero + duas novas seções.
   reference.css e os três scripts originais são preservados byte a byte.
   Nenhuma regra abaixo altera header, menu, produtos, história, contato ou rodapé. */

/* Usa a caixa de arte já existente, sem alterar grid, altura ou texto do hero. */
#inicio .cm-hero-geometrico__imagem {
  position: absolute;
  width: 116%;
  max-width: none;
  height: auto;
  left: -8%;
  top: 49%;
  transform: translateY(-50%);
  object-fit: contain;
  mix-blend-mode: multiply;
  -webkit-mask-image: radial-gradient(ellipse 50% 50% at center, #000 55%, rgba(0,0,0,.92) 64%, rgba(0,0,0,.58) 76%, rgba(0,0,0,.18) 89%, transparent 100%);
  mask-image: radial-gradient(ellipse 50% 50% at center, #000 55%, rgba(0,0,0,.92) 64%, rgba(0,0,0,.58) 76%, rgba(0,0,0,.18) 89%, transparent 100%);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}

/* Os espaçamentos das seções preexistentes não são compensados/reduzidos. */
.cm-clientes {
  padding: 88px 0 80px;
  background: #fff;
}
.cm-depoimentos {
  padding: 88px 0 94px;
  background: linear-gradient(115deg, #f6fbff 0%, #fcfefe 58%, #f7fbfd 100%);
}
.cm-social-intro {
  display: grid;
  grid-template-columns: 1.2fr .8fr;
  align-items: end;
  gap: 60px;
  margin-bottom: 40px;
}
.cm-social-intro .eyebrow { margin-bottom: 17px; }
.cm-social-intro h2 { max-width: 620px; }
.cm-social-intro > p {
  max-width: 335px;
  justify-self: end;
  margin-bottom: 3px;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.85;
}
.cm-clientes-grade {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 20px;
  list-style: none;
  padding: 0;
  margin: 0;
}
.cm-cliente {
  min-width: 0;
  min-height: 100px;
  padding: 22px 14px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 7px;
  text-align: center;
  border: 1px solid #e6eef4;
  border-radius: 11px;
  background: linear-gradient(130deg, #f9fbfd, #f4f8fb);
}
.cm-cliente > span { color: #59728a; font-size: 11px; line-height: 1.5; font-weight: 600; }
.cm-cliente > small { color: #6a7f91; font-size: 9px; line-height: 1.6; }
.cm-cliente img { max-width: 100%; width: auto; height: auto; max-height: 52px; object-fit: contain; }
.cm-depoimentos-grade { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.cm-depoimento {
  min-width: 0;
  margin: 0;
  padding: 30px 30px 28px;
  border: 1px solid #e4edf3;
  border-radius: 18px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 14px 34px rgba(16,74,139,.045);
  display: flex;
  flex-direction: column;
}
.cm-depoimento-aspas { display: block; height: 30px; color: #00a98d; font-size: 50px; font-weight: 800; line-height: 1; }
.cm-depoimento-status { color: #64798c; font-size: 9px; line-height: 1.6; letter-spacing: .07em; text-transform: uppercase; margin-top: 12px; }
.cm-depoimento blockquote { border: 0; padding: 0; margin: 13px 0 28px; }
.cm-depoimento blockquote p { font-size: 14px; line-height: 1.95; color: #526b80; }
.cm-depoimento figcaption { display: grid; gap: 5px; margin-top: auto; }
.cm-depoimento figcaption strong { color: var(--ink); font-size: 12px; font-weight: 700; line-height: 1.6; }
.cm-depoimento figcaption span { color: #667c8e; font-size: 10px; line-height: 1.7; }
@media (max-width: 980px) {
  .cm-clientes { padding: 70px 0; }
  .cm-depoimentos { padding: 70px 0 76px; }
  .cm-social-intro { gap: 40px; margin-bottom: 34px; }
  .cm-social-intro h2 { font-size: 39px; }
  .cm-social-intro > p { font-size: 13px; }
  .cm-clientes-grade { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
  .cm-depoimentos-grade { gap: 20px; }
  .cm-depoimento { padding: 26px 22px; }
}
@media (max-width: 760px) {
  #inicio .cm-hero-geometrico__imagem { width: 110%; left: -5%; }
  .cm-clientes { padding: 60px 0; }
  .cm-depoimentos { padding: 60px 0 66px; }
  .cm-social-intro { grid-template-columns: 1fr; gap: 20px; margin-bottom: 32px; }
  .cm-social-intro > p { max-width: 470px; justify-self: start; font-size: 14px; }
  .cm-depoimentos-grade { grid-template-columns: 1fr; gap: 22px; }
  .cm-depoimento { padding: 30px; }
  .cm-depoimento blockquote p { font-size: 15px; }
}
@media (max-width: 430px) {
  .cm-clientes, .cm-depoimentos { padding-top: 56px; padding-bottom: 60px; }
  .cm-social-intro h2 { font-size: 34px; line-height: 1.15; }
  .cm-clientes-grade { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
  .cm-depoimento { padding: 28px 25px; }
}
