html, body {
  width: 100%;
  height: 100%;
  margin: 0;
}

body {
  background: #ffffff;
  color: #111;
  font-family: "MS Sans Serif", Tahoma, Verdana, Arial, sans-serif;
  -webkit-font-smoothing: none;
  font-smooth: never;
}

.center {
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
  padding: 18px;
  box-sizing: border-box;
}

.card {
  width: min(740px, 100%);
  display: grid;
  justify-items: center;
}

.hero {
  width: 100%;
  height: auto;
  display: block;
}

.bar {
  width: 100%;
  display: flex;
  align-items: stretch;

  background: linear-gradient(
    #ffffff 0%,
    #f4f7fd 35%,
    #e8eef8 62%,
    #d8e2f2 100%
  );

  border: 1px solid #8e99aa;

  box-shadow:
    inset 1px 1px 0 #ffffff,
    inset -1px -1px 0 #c5cfdd;
}

.slot {
  height: 30px;
  display: flex;
  align-items: center;
  white-space: nowrap;
  user-select: none;

  font-size: 18px;
  line-height: 1;
  padding: 0 12px;

  background: transparent;

  border-left: 1px solid #b9c3d1;

  text-shadow: 0 1px 0 rgba(255,255,255,0.95);
}

.slot:first-child {
  border-left: 0;
}

.label {
  margin-right: auto;
}

.link {
  color: #111;
  text-decoration: none;
  position: relative;
}

.link::before {
  content: "";
  position: absolute;
  inset: 0;

  background: linear-gradient(
    rgba(255,255,255,0.55) 0%,
    rgba(255,255,255,0.20) 55%,
    rgba(120,140,170,0.08) 100%
  );

  box-shadow:
    inset 1px 1px 0 rgba(255,255,255,0.85),
    inset -1px -1px 0 rgba(120,130,150,0.25);

  pointer-events: none;
}

.link:hover::before {
  background: linear-gradient(
    rgba(255,255,255,0.60) 0%,
    rgba(235,242,252,0.35) 55%,
    rgba(120,140,170,0.12) 100%
  );
}

.link:active::before {
  background: linear-gradient(
    rgba(120,140,170,0.16) 0%,
    rgba(255,255,255,0.40) 100%
  );

  box-shadow:
    inset 2px 2px 0 rgba(0,0,0,0.10),
    inset -1px -1px 0 rgba(255,255,255,0.70);
}

.sponsor {
  margin-top: 4px;
  font-size: 12px;
  color: #b9b9b9;
  text-align: center;
}

.sponsor-link {
  color: inherit;
  text-decoration: underline;
}

@media (max-width: 520px) {
  .center {
    padding: 14px;
  }

  .slot {
    font-size: 15px;
    height: 28px;
    padding: 0 10px;
  }
}