/* 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;
  }
}



/* Hero branding: preserve the exact uploaded Sistema Indústria logo at native pixel scale. */
.instituto-hero-intro {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.75rem;
}

.instituto-system-logo-window {
  position: relative;
  width: 270px;
  height: 89px;
  overflow: hidden;
  flex: 0 0 auto;
}

.instituto-system-logo-original {
  position: absolute;
  width: 354px;
  height: 250px;
  max-width: none;
  left: -39px;
  top: -81px;
  object-fit: none;
  filter: none;
}

.instituto-plan-badge {
  display: inline-flex !important;
  width: fit-content !important;
  max-width: max-content;
  align-self: flex-start;
  white-space: nowrap;
}

@media (max-width: 639px) {
  .instituto-system-logo-window {
    width: 216px;
    height: 71px;
  }

  .instituto-system-logo-original {
    width: 283.2px;
    height: 200px;
    left: -31.2px;
    top: -64.8px;
  }
}


/* v14 refinements */
.instituto-export-pdf {
  background-color: #f97316 !important;
  border-color: #f97316 !important;
}
.instituto-export-pdf:hover {
  background-color: #d95d0b !important;
}
