/* =========================================================
   V17 — ajustes finais solicitados por Paulo
   ========================================================= */

/* 1) Hero com nova imagem dos 3 personagens e leitura mais limpa */
.hero {
  overflow: hidden;
}
.hero::before {
  background:
    radial-gradient(circle at 72% 22%, rgba(232,106,60,.12) 0%, transparent 24%),
    radial-gradient(circle at 58% 40%, rgba(72,169,166,.12) 0%, transparent 30%),
    linear-gradient(90deg, rgba(2,11,20,.94) 0%, rgba(2,11,20,.78) 34%, rgba(2,11,20,.54) 58%, rgba(2,11,20,.32) 100%);
}
.hero-media {
  inset: 0;
}
.hero-media picture,
.hero-media img {
  display: block;
  width: 100%;
  height: 100%;
}
.hero-media img {
  object-fit: cover;
  object-position: center center;
  opacity: .42;
  filter: saturate(1) contrast(1.02) brightness(.92);
  transform: scale(1.015);
}
.hero-media::after {
  background: linear-gradient(90deg, rgba(2,11,20,.96) 0%, rgba(2,11,20,.84) 28%, rgba(2,11,20,.62) 52%, rgba(2,11,20,.34) 100%);
}
.hero-copy {
  max-width: min(92vw, 1140px);
}
.hero-lockup.hero-lockup--single {
  display: grid;
  gap: .12em;
  width: min(100%, 760px);
  max-width: 760px;
  line-height: .94;
  text-align: left;
}
.hero-lockup--single .hero-line--single {
  margin: 0;
  padding: 0;
  font-family: var(--font-display);
  font-size: clamp(3.7rem, 6vw, 6.8rem);
  font-weight: 400;
  letter-spacing: -.06em;
  color: var(--white);
  white-space: nowrap;
}
.hero-summary {
  max-width: 540px;
}

/* 2) Problema — cabeçalho alinhado ao mesmo eixo do conteúdo */
.problem-content {
  align-items: stretch;
}
.problem-intro,
.problem-section__header {
  width: 100%;
  max-width: 100%;
  margin: 0;
  text-align: left;
}
.problem-intro .section-number,
.problem-intro .eyebrow {
  text-align: left;
  margin-left: 0;
  margin-right: 0;
}
.problem-section__main {
  width: 100%;
  margin-inline: 0;
}
.problem-heading,
.problem-heading .display-title,
.problem-details {
  justify-self: start;
  text-align: left;
}

/* 3) Para sua marca — um só estilo e alinhado à esquerda */
.section-heading--wide {
  align-items: flex-start;
}
.journeys .section-heading {
  width: min(92vw, 1140px);
  margin: 0 auto clamp(2.6rem, 4vw, 3.6rem);
}
.journeys .section-number,
.journeys .eyebrow {
  text-align: left;
}
.journeys-title.journeys-title--single {
  display: grid;
  gap: .08em;
  width: min(100%, 760px);
  max-width: 760px;
  margin: 0;
  line-height: .96;
  justify-items: start;
  text-align: left;
}
.journeys-title--single .journeys-title__line {
  display: block;
  font-family: var(--font-display);
  font-size: clamp(3.2rem, 5.2vw, 5.9rem);
  font-weight: 400;
  letter-spacing: -.055em;
  color: var(--white);
}

/* Ajustes responsivos */
@media (max-width: 900px) {
  .hero-media img {
    object-position: center top;
    opacity: .34;
  }
  .hero-media::after {
    background: linear-gradient(180deg, rgba(2,11,20,.58) 0%, rgba(2,11,20,.74) 38%, rgba(2,11,20,.95) 100%);
  }
  .hero-lockup.hero-lockup--single {
    width: min(100%, 11ch);
    gap: .14em;
  }
  .hero-lockup--single .hero-line--single {
    font-size: clamp(3.2rem, 11.6vw, 5.2rem);
    white-space: normal;
  }
  .hero-copy {
    align-self: end;
    padding-bottom: 2vh;
  }
  .problem {
    padding: 6.5rem 0 6rem;
  }
  .journeys-title--single .journeys-title__line {
    font-size: clamp(2.8rem, 9vw, 4.6rem);
  }
}

@media (max-width: 560px) {
  .hero {
    padding-top: calc(var(--header-h) + 3.5vh);
  }
  .hero-copy .eyebrow {
    margin-bottom: 2rem;
    transform: none;
  }
  .hero-lockup.hero-lockup--single {
    width: min(100%, 8.8ch);
  }
  .hero-lockup--single .hero-line--single {
    font-size: clamp(2.7rem, 11.2vw, 4.1rem);
    line-height: .92;
  }
  .hero-summary {
    max-width: 100%;
  }
  .journeys .section-heading {
    margin-bottom: 2rem;
  }
  .journeys-title.journeys-title--single {
    width: 100%;
  }
  .journeys-title--single .journeys-title__line {
    font-size: clamp(2.45rem, 10.4vw, 3.55rem);
    line-height: .94;
  }
}
