.detail-grid,.life-grid,.apply-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.school-section{padding-top:1rem}.detail-grid article,.life-grid article,.apply-grid article{border-radius:22px;padding:1.6rem;box-shadow:0 12px 24px #073b7010}.detail-grid article{background:#fff;border:1px solid #d8e9f3}.detail-grid h3,.life-grid h3,.apply-grid h3{font-size:1.25rem;margin:1rem 0 .4rem}.detail-grid p,.apply-grid p{margin:0}.detail-number,.apply-number{display:inline-grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:50%;background:var(--ink);color:#fff;font-weight:900}.life-section{background:#f3fbf8;max-width:none;padding-left:max(1.25rem,calc((100% - 1000px)/2));padding-right:max(1.25rem,calc((100% - 1000px)/2))}.life-grid{grid-template-columns:repeat(3,1fr)}.life-grid article{background:#fff;display:flex;flex-direction:column}.life-grid h3{color:#176653}.life-grid ul{margin:1rem 0 0;padding-left:1.25rem}.life-grid li{margin:.55rem 0}.life-guide{border:2px solid #b8dfd0}.guide-download{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;margin-top:auto;padding:.75rem 1rem;border-radius:999px;background:#176653;color:#fff;text-decoration:none;font-weight:900;text-align:center}.guide-download:hover{background:#0f5142}.guide-download:focus-visible{outline:3px solid #f6bd45;outline-offset:3px}.apply-section{max-width:none;background:#fff1d8;padding-left:max(1.25rem,calc((100% - 1000px)/2));padding-right:max(1.25rem,calc((100% - 1000px)/2))}.apply-section h2{color:#754b00}.apply-section .eyebrow{color:#af7100}.apply-grid article{background:#fff9eb}.apply-number{background:#b67700}@media(max-width:760px){.detail-grid,.life-grid,.apply-grid{grid-template-columns:1fr}.apply-section{padding-top:4.2rem;padding-bottom:4.2rem}}

/* Keep the supplied 1920 × 550 banner fully visible at every width. */
.hero {
  min-height: 0;
  overflow: hidden;
  background: var(--ink);
}

@media (max-width: 900px) {
  .life-grid {
    grid-template-columns: 1fr;
  }
}

.hero > img {
  position: static;
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1920 / 550;
  object-fit: contain;
  object-position: center;
  background: #b7ddf2;
}

.hero::after {
  content: none;
}

.hero-panel {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.25rem;
  max-width: none;
  padding: 1rem clamp(1.25rem, 7vw, 7rem) 3.8rem;
  color: #fff;
  background: var(--ink);
  text-align: center;
}

.hero-copy {
  margin: 0;
}

.hero-panel .button {
  flex: 0 0 auto;
  margin: 0;
}

.hero h1.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  font-size: 1px;
}

@media (max-width: 760px) {
  .hero {
    min-height: 0;
  }

  .hero > img {
    object-position: center;
  }

  .hero-panel {
    flex-direction: column;
    gap: .6rem;
    padding: 1.1rem 1.25rem 1.35rem;
  }

  .hero-copy {
    font-size: 1rem;
  }
}
