.nl-portfolio {
  --nl-portfolio-bg: #0b0d10;
  --nl-portfolio-panel: #111419;
  --nl-portfolio-line: rgba(255, 255, 255, .09);
  --nl-portfolio-gold: #e8ad35;
  --bs-body-color: #f2f3f4;
  --bs-body-color-rgb: 242, 243, 244;
  background: var(--nl-portfolio-bg);
  color: #f2f3f4;
  font-size: 1rem;
  line-height: 1.7;
}

/* O reset global define a cor em cada tag; restabelece a herança neste escopo. */
.nl-portfolio :where(*) {
  color: inherit;
}

.nl-portfolio p,
.nl-portfolio li {
  color: #c3cad3 !important;
  text-wrap: pretty;
}

.nl-portfolio h1,
.nl-portfolio h2,
.nl-portfolio h3,
.nl-portfolio h4,
.nl-portfolio h5,
.nl-portfolio h6 {
  color: #f2f3f4 !important;
}

.nl-portfolio .text-secondary,
.nl-portfolio .text-muted {
  color: #c3cad3 !important;
}

.nl-portfolio .small {
  font-size: .9rem;
  line-height: 1.65;
}

.nl-portfolio-hero,
.nl-portfolio-cta {
  background: #111419;
}

.nl-portfolio-hero h1 span,
.nl-portfolio-eyebrow {
  color: var(--nl-portfolio-gold) !important;
}

.nl-portfolio-eyebrow {
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.nl-portfolio-card,
.nl-case-study,
.nl-case-facts,
.nl-measurement {
  background: var(--nl-portfolio-panel);
  border: 1px solid var(--nl-portfolio-line);
  border-radius: .35rem;
  color: inherit;
}

.nl-portfolio .card {
  --bs-card-color: #f2f3f4;
  color: #f2f3f4;
}

.nl-portfolio-card .card-text,
.nl-case-study p,
.nl-case-study li {
  color: #c3cad3 !important;
  line-height: 1.7;
}

.nl-case-study h2,
.nl-case-study h3,
.nl-portfolio-card h3,
.nl-portfolio-cta h2 {
  color: #f2f3f4;
}

.nl-case-facts {
  border-color: rgba(232, 173, 53, .32);
}

.nl-case-facts .text-uppercase {
  color: var(--nl-portfolio-gold);
  letter-spacing: .1em;
}

.nl-measurement {
  background: #0d1014;
}

.nl-portfolio .btn-warning {
  --bs-btn-bg: var(--nl-portfolio-gold);
  --bs-btn-border-color: var(--nl-portfolio-gold);
  --bs-btn-hover-bg: #f0bd4e;
  --bs-btn-hover-border-color: #f0bd4e;
  --bs-btn-color: #18130a;
  --bs-btn-hover-color: #18130a;
}

@media (max-width: 575.98px) {
  .nl-portfolio-hero h1 {
    font-size: clamp(2.15rem, 10vw, 3.25rem);
    line-height: 1.12;
  }

  .nl-case-study,
  .nl-case-facts,
  .nl-measurement {
    overflow-wrap: anywhere;
  }
}
