.prototype-type-hero {
  background: var(--bg);
  color: var(--white);
}

.prototype-type-copy {
  padding-top: clamp(60px, 6vw, 100px);
  padding-bottom: 76px;
  text-align: center;
}

.prototype-type-copy .eyebrow {
  color: #b59be8;
  letter-spacing: .2em;
  margin-bottom: 34px;
}

.prototype-type-copy .eyebrow > span:nth-child(2) {
  padding-inline: 12px;
}

.prototype-type-copy h1 {
  font-size: clamp(3.4rem, 8.2vw, 8.5rem);
  line-height: .98;
  letter-spacing: -.055em;
  overflow-wrap: anywhere;
}

.prototype-type-lead {
  margin-top: 30px;
  font-family: var(--serif);
  font-size: clamp(1.125rem, 1.75vw, 1.65rem);
  line-height: 1.5;
  color: #d0cedd;
}

.prototype-type-copy .button {
  margin-top: 29px;
  border-radius: 999px;
  min-width: 166px;
}

.prototype-type-note {
  padding-bottom: 18px;
  font-size: .6875rem;
  letter-spacing: .1em;
  color: var(--muted);
}

.prototype-match-band {
  border-top: 1px solid #4e3a72;
  background: #101124;
}

.prototype-match-inner {
  display: grid;
  grid-template-columns: minmax(230px, .95fr) minmax(280px, 1.45fr) minmax(180px, .7fr);
  align-items: center;
  min-height: 126px;
  gap: 28px;
  padding-block: 26px;
}

.prototype-match-label {
  display: flex;
  align-items: center;
  gap: 16px;
  font-size: .625rem;
  font-weight: 700;
  letter-spacing: .12em;
}

.prototype-match-pill {
  flex-shrink: 0;
  padding: 7px 11px;
  background: var(--accent);
  color: var(--bg);
  border-radius: 999px;
  font-size: .5625rem;
  letter-spacing: .06em;
}

.prototype-match-label > span:last-child {
  border-left: 1px solid #4e3a72;
  padding-left: 16px;
}

.prototype-match-teams {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(18px, 3vw, 48px);
  min-width: 0;
  border-inline: 1px solid #4e3a72;
  padding-inline: 24px;
}

.prototype-match-team {
  min-width: 0;
  text-align: center;
}

.prototype-match-team strong {
  display: block;
  font-family: var(--serif);
  font-size: 2.125rem;
  font-weight: 400;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.prototype-match-team > span {
  display: block;
  margin-top: 5px;
  font-size: .8125rem;
  color: #d0cedd;
  overflow-wrap: anywhere;
}

.prototype-match-versus {
  color: #b59be8;
  font-size: .75rem;
  letter-spacing: .12em;
}

.prototype-match-details {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-self: end;
  font-size: .8125rem;
}

.prototype-match-details .text-link {
  min-height: 44px;
  padding-block: 10px 5px;
}

@media (max-width: 1000px) {
  .prototype-match-inner { grid-template-columns: 1fr 1.25fr 1fr; gap: 20px; }
  .prototype-match-label { flex-direction: column; align-items: flex-start; gap: 9px; }
  .prototype-match-label > span:last-child { border: 0; padding: 0; }
  .prototype-match-teams { gap: 20px; padding-inline: 20px; }
}

@media (max-width: 600px) {
  .prototype-type-copy { padding-top: 60px; padding-bottom: 54px; }
  .prototype-type-copy .eyebrow { font-size: .6875rem; letter-spacing: .12em; margin-bottom: 28px; }
  .prototype-type-copy .eyebrow > span:nth-child(2) { padding-inline: 5px; }
  .prototype-type-copy h1 { font-size: clamp(2.7rem, 11.6vw, 4.35rem); line-height: 1.02; }
  .prototype-type-lead { font-size: 1.125rem; margin-top: 25px; }
  .prototype-type-copy .button { margin-top: 26px; }
  .prototype-type-note { font-size: .625rem; line-height: 1.6; letter-spacing: .065em; padding-bottom: 16px; }
  .prototype-match-inner { grid-template-columns: 1fr; gap: 22px; padding-block: 24px; }
  .prototype-match-label { flex-direction: row; align-items: center; justify-content: center; gap: 15px; }
  .prototype-match-label > span:last-child { border-left: 1px solid #4e3a72; padding-left: 15px; }
  .prototype-match-teams { border: 0; padding: 0; gap: 32px; }
  .prototype-match-team { flex: 1; }
  .prototype-match-details { width: 100%; flex-direction: row; justify-content: space-between; align-items: center; gap: 16px; border-top: 1px solid #343044; padding-top: 12px; }
}
