.alliance-home {
  --ink: #122f43;
  --teal: #006773;
  --body: #354d5d;
  --line: #d6e0e5;
  --home-gold: #e9c782;
}
.alliance-home h1,
.alliance-home h2,
.alliance-home .program-card h3 {
  font-family: Georgia, 'Times New Roman', serif;
  font-weight: 400;
}
.alliance-home .topline { background: #0a2031; }
.alliance-home .head-inner { padding-block: 15px; }
.alliance-home #navigation { border-top: 1px solid var(--line); }
.alliance-home .button { border-radius: 2px; }
.alliance-home .hero {
  max-width: none;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(25px, 6vw, 100px);
  padding: clamp(40px, 6vw, 90px) max(5vw, calc((100vw - 1230px)/2));
  background: #122f43;
  color: white;
}
.alliance-home .hero h1 { font-size: clamp(46px, 5.2vw, 78px); }
.alliance-home .hero h1 em { display: block; color: var(--home-gold); }
.alliance-home .hero .eyebrow,
.alliance-home .hero .text-link { color: var(--home-gold); }
.alliance-home .hero .lead,
.alliance-home .hero-note { color: #e3edf1; }
.alliance-home .hero .button { background: white; color: var(--ink); border-color: white; }
.alliance-home .hero .button:hover { background: var(--home-gold); }
.alliance-home .hero figure img { display: block; aspect-ratio: 6/5; border-radius: 0; }
.alliance-home .hero figcaption {
  position: static;
  color: var(--ink);
  border-left-color: var(--home-gold);
  box-shadow: none;
}
.alliance-home .feature-strip { background: #eaf0f2; text-align: center; }
.alliance-home .home-directory {
  padding: 34px 5vw;
  background: #f6f3ed;
  border-bottom: 1px solid var(--line);
}
.home-directory h2,
.home-directory-links { max-width: 1230px; margin-inline: auto; }
.home-directory h2 { font-size: 28px; }
.home-directory-links {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.home-directory-links a {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: center;
  background: white;
  border: 1px solid var(--line);
  padding: 14px;
  font-weight: 700;
  text-decoration: none;
}
.home-directory-links a:hover { text-decoration: underline; }
.alliance-home .program-rows {
  display: grid;
  gap: clamp(24px, 4vw, 56px);
  margin-block: clamp(28px, 5vw, 60px);
}
.alliance-home .program-card {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: center;
  border-radius: 0;
  background: #f6f3ed;
}
.alliance-home .program-card:nth-child(even) img {
  grid-area: 1 / 2;
}
.alliance-home .program-card img {
  display: block;
  align-self: stretch;
  height: 100%;
  aspect-ratio: 3 / 2;
}
.alliance-home .program-card > div {
  padding: clamp(24px, 4.5vw, 68px);
}
.alliance-home .program-card h3 {
  font-size: clamp(28px, 3.6vw, 48px);
  line-height: 1.1;
}
.alliance-home .program-card p {
  max-width: 38ch;
  font-size: 16px;
}
.alliance-home .program-card a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
}
.alliance-home .split-band { background: #eaf0f2; }
.alliance-home .steps { padding-bottom: 52px; }
.alliance-home footer { background: #0a2031; }
@media (max-width: 900px) {
  .home-directory-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .alliance-home .hero { grid-template-columns: minmax(0, 1fr); }
  .alliance-home .hero figure img { aspect-ratio: 16/9; }
}
@media (max-width: 700px) {
  .alliance-home .program-card { grid-template-columns: minmax(0, 1fr); }
  .alliance-home .program-card:nth-child(even) img { grid-area: auto; }
  .alliance-home .program-card img { height: auto; }
}
@media (max-width: 480px) {
  .home-directory-links { grid-template-columns: minmax(0, 1fr); }
  .alliance-home .feature-strip { gap: 12px; }
}
