.brand {
  display: flex;
  align-items: center;
  align-self: stretch;
  position: relative;
  padding-right: 21px;
}

.brand::after {
  content: "";
  width: 2px;
  height: 28px;
  background: linear-gradient(var(--cyan), var(--blue));
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}

.brand img.brand-lockup {
  display: block;
  width: 136px;
  height: auto;
  max-height: 57px;
  object-fit: contain;
  background: transparent;
  padding: 0;
  filter: grayscale(1) brightness(0) invert(1);
  opacity: .96;
}

.brand-mark,
.brand > span {
  display: none;
}

.footer-brand img.brand-lockup {
  width: 124px;
}

.solution-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  background: transparent;
}

.solution-grid article,
.solution-grid .featured {
  padding: 0;
  min-height: 0;
  background: #09213d;
  border: 1px solid rgba(255,255,255,.13);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.solution-media {
  aspect-ratio: 16 / 8;
  background-image: linear-gradient(to top, rgba(6,23,45,.3), transparent 55%), url("assets/solucoes-industriais.png");
  background-repeat: no-repeat;
  background-size: 200% auto;
  border-bottom: 1px solid rgba(255,255,255,.13);
}

.media-mechanical { background-position: left top; }
.media-electrical { background-position: right top; }
.media-instrumentation { background-position: left bottom; }
.media-piping { background-position: right bottom; }

.solution-body {
  padding: 34px 36px 36px;
  display: flex;
  flex: 1;
  flex-direction: column;
}

.solution-kicker {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: var(--cyan);
}

.solution-kicker span {
  font-size: .69rem;
  letter-spacing: .21em;
  font-weight: 700;
}

.solution-kicker b {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(0,167,207,.5);
  font: 700 1.25rem Barlow Condensed, sans-serif;
}

.solution-grid h3 {
  font-size: 2.25rem;
  margin-top: 23px;
}

.solution-grid p {
  margin: 0;
  max-width: 540px;
}

.solution-grid ul {
  margin-top: 28px;
}

.solution-grid li {
  position: relative;
  padding-left: 19px;
}

.solution-grid li::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--orange);
  position: absolute;
  left: 0;
  top: 1.25rem;
}

.case {
  padding: 0;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  overflow: hidden;
  min-height: 520px;
}

.case-copy {
  padding: 62px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.case-copy > p {
  color: #c5d0dc;
  max-width: 560px;
}

.case h3 {
  font-size: 3.2rem;
}

.case > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.case-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 26px;
}

.case-badges b {
  border: 1px solid rgba(255,255,255,.2);
  padding: 9px 12px;
  font-size: .7rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #e6edf5;
}

.contact-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.direct-contact {
  display: flex;
  gap: 28px;
  flex-wrap: wrap;
  margin-top: 24px;
  color: #d8e2ec;
  font-size: .86rem;
}

.direct-contact a:hover {
  color: var(--cyan);
}

.trust-copy {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 1.25fr .75fr;
  gap: 7vw;
  align-items: end;
}

.trust-copy > p {
  margin: 0 0 5px;
}

.client-band {
  gap: 1px;
  background: var(--line);
  border: 1px solid var(--line);
}

.client-logo {
  min-width: 0;
  min-height: 132px;
  padding: 28px 24px;
  display: grid;
  place-items: center;
  background: #fff;
}

.client-logo img {
  display: block;
  width: auto;
  height: auto;
  max-width: 150px;
  max-height: 52px;
  object-fit: contain;
  filter: brightness(0);
  opacity: .72;
}

@media (max-width: 900px) {
  .case { grid-template-columns: 1fr; }
  .case > img { max-height: 520px; }
  .case-copy { padding: 45px; }
  .trust-copy { display: block; }
  .trust-copy > p { margin-top: 30px; }
}

@media (max-width: 600px) {
  .brand { padding-right: 16px; }
  .brand::after { height: 23px; }
  .brand img.brand-lockup { width: 116px; max-height: 46px; }
  .solution-grid { grid-template-columns: 1fr; gap: 16px; }
  .solution-body { padding: 28px 24px 30px; }
  .solution-grid h3 { font-size: 2rem; }
  .case { padding: 0; }
  .case-copy { padding: 34px 24px; }
  .case h3 { font-size: 2.5rem; }
  .case > img { max-height: 380px; }
  .client-logo { min-height: 108px; padding: 22px 16px; }
  .client-logo img { max-width: 120px; max-height: 44px; }
}
