/* Card Fundo — usado na seção Destaques */
.nm-card--fundo {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: var(--nm-space-4);
  width: 270px;
  height: 400px;
  padding: var(--nm-space-5) var(--nm-space-4);
  background: var(--nm-color-white);
  border: 1px solid var(--nm-color-border);
  border-radius: var(--nm-radius-md);
  flex-shrink: 0;
}

.nm-card__tag-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

.nm-card__tag {
  display: inline-flex;
  align-items: center;
  padding: var(--nm-space-1) var(--nm-space-2);
  border: 1px solid transparent;
  border-radius: var(--nm-space-2);
  color: var(--nm-color-deep-blue);
  font-family: var(--nm-font-family);
  font-weight: var(--nm-font-weight-medium);
  font-size: var(--nm-font-size-sm);
  text-transform: uppercase;
  white-space: nowrap;
  /* Borda em degradê: azul nas laterais, passando por branco no centro */
  background:
    linear-gradient(var(--nm-color-white), var(--nm-color-white)) padding-box,
    linear-gradient(to right, var(--nm-color-blue), #ffffff, var(--nm-color-blue)) border-box;
}

.nm-card__status {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
}

.nm-card__name {
  color: var(--nm-color-deep-blue);
  font-family: var(--nm-font-family);
  font-weight: var(--nm-font-weight-semibold);
  font-size: var(--nm-font-size-md);
  line-height: var(--nm-line-height-md);
  margin: 0;
}

.nm-card__risk-tags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0 var(--nm-space-1);
  color: #91A1B9;
  font-family: var(--nm-font-family);
  font-weight: var(--nm-font-weight-medium);
  font-size: 12px;
  line-height: 12px;
}

.nm-card__description {
  flex: 1 0 0;
  min-height: 0;
  color: var(--nm-color-chumbo);
  font-family: var(--nm-font-family);
  font-size: var(--nm-font-size-base);
  line-height: var(--nm-line-height-base);
  margin: 0;
  overflow: hidden;
}

/* Card do Post — usado na seção Blog */
.nm-card--post {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--nm-space-4);
  width: 370px;
  flex-shrink: 0;
}

/* Com align-items:flex-start, o link da imagem (único filho sem width
   próprio) vira item flex com largura baseada em conteúdo — o width:100%
   do .nm-card__image acaba resolvendo contra esse valor indefinido e o
   card fica com a imagem baixíssima/estourada dependendo das dimensões
   originais da foto. Precisa do width:100% explícito aqui no link. */
.nm-card--post > a {
  display: block;
  width: 100%;
}

.nm-card__image {
  width: 100%;
  height: 209px;
  border-radius: var(--nm-radius-sm);
  object-fit: cover;
  display: block;
}

@media (max-width: 768px) {
  .nm-card--post {
    width: 328px;
  }

  .nm-card__image {
    height: 185px;
  }
}

.nm-card__info {
  display: flex;
  flex-direction: column;
  gap: var(--nm-space-2);
  width: 100%;
}

.nm-card__eyebrow {
  color: var(--nm-color-blue);
  font-family: var(--nm-font-family);
  font-size: var(--nm-font-size-base);
  text-transform: uppercase;
  line-height: var(--nm-line-height-base);
}

.nm-card__title {
  color: var(--nm-color-deep-blue);
  font-family: var(--nm-font-family);
  font-size: var(--nm-font-size-md);
  line-height: var(--nm-line-height-md);
  margin: 0;
}

.nm-card__date {
  color: var(--nm-color-chumbo);
  font-family: var(--nm-font-family);
  font-size: var(--nm-font-size-base);
  line-height: var(--nm-line-height-base);
  margin: 0;
}
