.speaker {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 12px;
}
.speaker-chip {
  display: flex;
  background-color: rgba(255,255,255,0.15);
  border-radius: 40px;
  align-items: center;
  font-size: 0.85em;
  line-height: 1.25em;
  min-height: 48px;
  position: relative;
}
.speaker a {
  text-decoration: none;
  display: flex;
  border: 0;
  color: #fff;
  font-weight: normal;
}
.speaker img {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  align-self: start;
}
.speaker .company-logo {
  position: relative;
  border-radius: 50%;
  overflow: hidden;
  display: block;
  background-color: #fff;
  flex-shrink: 0;
  flex-grow: 0;
  height: 48px;
}
.speaker img + .company-logo {
  left: -7px;
  margin-right: -7px;
}
.company-logo img {
  border-radius: 0;
  width: 48px;
  height: 48px;
  display: block;
  object-fit: contain;
}
.speaker-chip-content {
  padding: 5px 21px 7px 28px;
  min-width: 140px;
}
img + .speaker-chip-content,
.speaker .company-logo + .speaker-chip-content {
  padding-left: 17px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.speaker .company-logo + .speaker-chip-content {
  padding-left: 10px;
}
.speaker-chip-company {
  font-size: 0.95em;
  margin-top: 1px;
  font-style: italic;
  font-weight: 500;
}


@media only screen and (min-width: 782px) {
  .speaker.microchip .speaker-chip-content {
    display: none;
  }
  .speaker.microchip .speaker-chip:hover > a > img,
  .speaker.microchip .speaker-chip:hover > a .company-logo{
    z-index: 101;
  }
  .speaker.microchip .speaker-chip:hover .speaker-chip-content {
    display: block;
    position: absolute;
    background-color: #3b9fd7;
    border-radius: 42px;
    z-index: 100;
    top: 0;
    min-width: 210px;
    left: 0;
    padding-left: 57px;
    height: 48px;
  }
  .speaker.microchip .speaker-chip:hover img + .company-logo + .speaker-chip-content{
    padding-left: 98px;
    min-width: 250px;
  }
}