.award-photo.has-profile-photo {
  background: #173137;
}

.award-photo.has-profile-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.award-photo.name-only span {
  padding: 18px;
  font-size: clamp(1.8rem, 4vw, 3.5rem);
  line-height: 1.05;
  overflow-wrap: anywhere;
  text-align: center;
}

.standing-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
}

.standing-column {
  min-width: 0;
}

.standing-column-heading {
  margin-bottom: 16px;
  border-bottom: 1px solid rgba(255, 255, 255, .22);
}

.standing-column-heading .eyebrow {
  margin: 0 0 5px;
}

.standing-column-heading h3 {
  margin: 0 0 12px;
  color: #fff;
  font-size: clamp(1.35rem, 2vw, 1.85rem);
}

.awards .section-heading h2 {
  font-size: clamp(2.25rem, 3.6vw, 3.4rem);
}

.compact-award-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.compact-award {
  border: 1px solid rgba(229, 173, 56, .72);
  border-radius: 4px;
  padding: 8px;
  background: rgba(255, 255, 255, .045);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .07);
}

.compact-award .award-photo {
  height: 104px;
  margin-bottom: 8px;
  border: 1px solid rgba(255, 255, 255, .48);
  border-radius: 3px;
}

.compact-award h3 {
  margin: 0 0 4px;
  padding: 6px 5px;
  border: 1px solid rgba(255, 255, 255, .25);
  border-left: 3px solid var(--gold);
  background: rgba(0, 0, 0, .18);
  font-size: clamp(1rem, 1.55vw, 1.27rem);
  line-height: 1.04;
}

.compact-award p {
  font-size: .58rem;
  line-height: 1.35;
  letter-spacing: .07em;
}

.award-photo.team-photo-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: repeat(2, minmax(0, 1fr));
  gap: 2px;
  background: #173137;
}

.award-photo.team-photo-grid img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.award-photo.team-photo-grid img:only-child {
  grid-column: 1 / -1;
  grid-row: 1 / -1;
}

/* With exactly two team photos, each occupies one full half of the thumbnail
   instead of leaving the second grid row empty. */
.award-photo.team-photo-grid img:first-child:nth-last-child(2),
.award-photo.team-photo-grid img:last-child:nth-child(2) {
  grid-row: 1 / -1;
}

.award-photo.team-photo-grid.name-only {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
}

.compact-award .team-member-names {
  min-height: 2.5em;
  color: #c6d4d1;
  font-size: .58rem;
  letter-spacing: .01em;
  text-transform: none;
}

@media (max-width: 900px) {
  .compact-award-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 650px) {
  .standing-columns { grid-template-columns: 1fr; gap: 36px; }
  .compact-award-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .compact-award { padding: 8px; }
  .compact-award .award-photo { height: 125px; }
  .compact-award h3 { font-size: 1.08rem; }
}

@media (max-width: 380px) {
  .compact-award-grid { grid-template-columns: 1fr; }
}
