.silicon-lab {
  position: relative;
  min-width: 0;
  margin: 0 -20px 0 -15px;
  align-self: center;
  padding-top: 15px;
  background: radial-gradient(ellipse at 50% 45%, #65432822, transparent 67%);
}
.silicon-heading {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding-inline: 20px;
  color: #85877b;
  font-size: 9px;
  position: relative;
  z-index: 1;
}
.silicon-heading > span:last-child {
  color: #ca966e;
}
.silicon-stage {
  height: 420px;
  position: relative;
  width: 100%;
}
.silicon-stage canvas {
  display: block;
  max-width: 100%;
  opacity: 0;
  transition: opacity 1s;
}
.silicon-ready .silicon-stage canvas {
  opacity: 1;
}
.note-symbol {
  position: absolute;
  left: calc(50% - 70px);
  top: 140px;
  opacity: 0.7;
}
.silicon-ready .note-symbol {
  display: none;
}
.silicon-policies {
  display: flex;
  justify-content: center;
  gap: 4px;
  position: relative;
  z-index: 1;
}
.silicon-policies button {
  padding: 9px 12px;
  border: 1px solid #494536;
  background: #1b1b17;
  color: #a8a897;
  font-size: 11px;
  min-height: 40px;
  transition:
    color 0.2s,
    border-color 0.2s;
}
.silicon-policies button span {
  font: 9px var(--mono);
  color: #787b69;
  margin-right: 8px;
}
.silicon-policies button[aria-pressed="true"] {
  border-color: #cb936e;
  color: #f5c29b;
  background: #38291f;
}
.silicon-policies button[aria-pressed="true"] span {
  color: #c2926b;
}
.silicon-caption {
  text-align: center;
  font-size: 10px;
  color: #888b7d;
  margin-top: 15px;
}
.silicon-policies[hidden] {
  display: none;
}
@media (min-width: 1500px) {
  .silicon-stage {
    height: 480px;
  }
}
@media (max-width: 1100px) {
  .silicon-stage {
    height: 380px;
  }
  .silicon-policies button {
    padding: 9px 8px;
    font-size: 10px;
  }
  .silicon-policies button span {
    margin-right: 5px;
  }
}
@media (max-width: 800px) {
  .silicon-lab {
    margin: 45px auto 25px;
    width: 100%;
    max-width: 560px;
  }
  .silicon-stage {
    height: 390px;
  }
}
@media (max-width: 480px) {
  .silicon-lab {
    margin-top: 40px;
  }
  .silicon-stage {
    height: 310px;
  }
  .silicon-heading {
    padding: 0;
    font-size: 8px;
  }
  .silicon-caption {
    font-size: 9px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .silicon-stage canvas {
    transition: none;
  }
}
