/* ─── O PRODUTO ──────────────────────────────────────────────────────────── */
.produto {
  background: #1A4A3A;
  padding: clamp(90px, 14vh, 160px) 24px;
}
.produto__grid {
  display: grid;
  grid-template-columns: 1fr 380px;
  gap: clamp(48px, 7vw, 100px);
  align-items: center;
}
@media (max-width: 960px) {
  .produto__grid { grid-template-columns: 1fr; }
  .produto__foto-wrap { display: none; }
}
.produto__titulo {
  font-family: 'MyriadPro-Display', sans-serif;
  font-size: var(--h1);
  font-weight: 500;
  line-height: 1.1;
  color: #FEFCF9;
  margin-bottom: 22px;
}
.produto__lead {
  font-family: 'MyriadPro', sans-serif;
  font-size: var(--lead);
  font-weight: 450;
  color: rgba(254,252,249,0.68);
  line-height: 1.72;
  margin-bottom: 52px;
}

/* ── Módulos ── */
.modulos {
  display: flex;
  flex-direction: column;
  gap: 0;
  border-top: 1px solid rgba(255,255,255,0.08);
  margin-bottom: 44px;
}
.modulo {
  display: flex;
  gap: 24px;
  padding: 26px 0;
  border-bottom: 1px solid rgba(255,255,255,0.08);
  align-items: flex-start;
}
.modulo__n {
  font-family: 'MyriadPro-Display', sans-serif;
  font-size: 2.4rem;
  font-style: italic;
  font-weight: 400;
  color: rgba(125,196,160,0.28);
  line-height: 1;
  min-width: 50px;
  padding-top: 4px;
  flex-shrink: 0;
}
.modulo__corpo h4 {
  font-family: 'MyriadPro', sans-serif;
  font-size: 1.05rem;
  font-weight: 500;
  color: #FEFCF9;
  margin-bottom: 8px;
}
.modulo__corpo p {
  font-family: 'MyriadPro', sans-serif;
  font-size: 0.98rem;
  font-weight: 300;
  color: rgba(254,252,249,0.58);
  line-height: 1.68;
}

/* ── Apêndices ── */
.apendices {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.apendice {
  font-family: 'MyriadPro', sans-serif;
  font-size: 0.88rem;
  font-weight: 400;
  color: #8DCFAD;
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(141,207,173,0.22);
  padding: 8px 18px;
  border-radius: 4px;
}

/* ── Foto ── */
.produto__foto-wrap {
  aspect-ratio: 3/4;
  border-radius: 4px;
  overflow: hidden;
}
.produto__foto {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
