/* Identidade visual do Instituto Integrador */
header {
  background-color: #123a92;
  background-position: center;
  background-size: cover;
}

.instituto-hero-shell,
.instituto-page-shell {
  width: 84%;
  max-width: none;
}

.instituto-hero-shell {
  padding-block: 2.35rem 1.35rem;
}

.instituto-hero-top {
  grid-template-columns: minmax(32.5rem, 1fr) minmax(37rem, 42.5rem);
  column-gap: 4rem;
}

.instituto-hero-panels {
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
}

.instituto-stats-grid > div {
  min-height: 4.1rem;
  padding-inline: 1rem;
}

.instituto-hero-title {
  max-width: 43rem;
  font-size: clamp(2.35rem, 3.2vw, 3.35rem);
  line-height: 0.94;
  letter-spacing: -0.035em;
  text-shadow: 0 2px 24px rgba(5, 20, 60, 0.35);
}

main section {
  box-shadow: 0 10px 30px rgba(24, 54, 115, 0.05);
}

.instituto-search-row {
  grid-template-columns: minmax(38rem, 1fr) auto;
}

.instituto-search-wrap input {
  display: block;
  width: 100%;
  min-width: 0;
  text-overflow: clip;
}

@media (max-width: 1199px) {
  .instituto-hero-top {
    grid-template-columns: minmax(22rem, 1fr) minmax(28rem, 35rem);
    column-gap: 2rem;
  }
}

@media (max-width: 899px) {
  .instituto-hero-shell,
  .instituto-page-shell {
    width: calc(100% - 2rem);
  }

  .instituto-hero-top,
  .instituto-hero-panels,
  .instituto-search-row {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 639px) {
  header {
    background-position: 60% center;
  }

  .instituto-hero-title {
    font-size: clamp(1.5rem, 7.5vw, 2rem);
    line-height: 0.98;
  }

  .instituto-hero-shell {
    padding-block: 1.5rem 1rem;
  }
}
