broad-expression.css
 
* {
  box-sizing: border-box;
}
 
.broadly-expressed-section {
  max-width: 100%;
  padding: 0 20px;
}
 
.prevalence_Content h1 {
  font-family: var(--font-roboto_serif);
  color: #F9F7F0;
  text-align: center;
  font-size: 34px;
  font-weight: 500;
  margin-bottom: 48px;
}
 
.prevalence_Content h1 > sup,
.percentage-content h2 > sup,
.percentage-list ul li > sup {
  font-size: 58%;
  line-height: 0px;
}
 
.prevalence_Content > h2 {
  font-family: var(--font-montserrat_sans);
  text-transform: uppercase;
  line-height: 1.6rem;
  font-size: 20px;
  background-clip: text;
  text-align: center;
  padding: 0 10px;
  background: -webkit-linear-gradient(
      0deg,
      #eddb82,
      #daae59 13%,
      #edde99 25%,
      #e4cb7b 33%,
      #dfc16a 38%,
      #fef8b8 50%,
      #f0d573 63%,
      #efd371 75%,
      #ebce82 88%,
      #d7b34b
    )
    no-repeat;
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
  margin-bottom: 28px;
}
 
.percentage-content {
  display: flex;
  flex-direction: column;
}
 
.percentage-content h2 {
  font-family: var(--font-montserrat_sans);
  font-size: 20px;
  font-weight: 700;
  line-height: 100%;
  text-transform: uppercase;
  background: -webkit-linear-gradient(
    0deg,
    #eddb82,
    #daae59 13%,
    #edde99 25%,
    #e4cb7b 33%,
    #dfc16a 38%,
    #fef8b8 50%,
    #f0d573 63%,
    #efd371 75%,
    #ebce82 88%,
    #d7b34b
  )
  no-repeat;
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
}
 
.percent-flex {
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 0;
}
 
.percentage-list ul {
  padding: 0 22px;
}
 
.percentage-list ul li {
  display: block;
  position: relative;
  color: #FFF;
  font-family: var(--font-montserrat_sans);
  font-size: 16px;
  font-weight: 400;
  line-height: 140%;
  margin-bottom: 5px;
}
 
.percentage-list ul li::before {
  content: "•";
  color: #f9f7f0;
  font-size: 1rem;
  position: absolute;
  left: -15px;
  top: 0px;
}
 
.ib6-positivity p.footnote-block {
  color: #F5F5F5;
  font-family: var(--font-montserrat_sans);
  font-size: 12px;
  line-height: 140%;
  margin: 5px 0 33px;
  padding: 0 17px;
}
 
 
@media screen and (min-width: 768px) {
  .percentage-content {
    flex-direction: row;
    gap: 26px;
  }
 
  .percent-flex {
    border-right: 2px solid #ECE087;
    height: 98px;
  }
 
  .prevalence_Content h1 {
    font-size: 36px;
  }
 
  .ib6-positivity p.footnote-block {
    text-align: center;
    margin: 38px 0 57px;
  }
 
  .percent-flex {
    padding-right: 0;
  }
 
  .percentage-list ul {
    margin: 0;
  }
}
 
@media only screen and (min-width: 992px) {
  .broadly-expressed-section {
    margin: 0 auto;
    max-width: 1100px;
  }
 
  .percent-flex img {
    min-width: 181px;
  }
 
  .percentage-content h2 {
    font-size: 36px;
    margin-bottom: 46px;
  }
}
 
.percent-flex .reveal-image {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  width: 107px;
}
 
@media screen and (min-width: 1024px) {
  .percent-flex .reveal-image {
    width: 181px;
  }
}
 
.img-wrapper {
  position: relative;
  display: inline-block;
}
 
.circle-svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform-origin: center;
  z-index: 0;
}
 
.circle-bg {
  stroke-linecap: round;
}

.circle-progress {
  stroke-dasharray: 307.88; /* 2 * π * 49 */
  stroke-dashoffset: 307.88;
  transform: rotate(-90deg); /* Start at top */
  transform-origin: 50% 50%;
}


.percentage-div.play-animation .circle-progress {
  animation: fillCircle 2s linear forwards;
}

@keyframes fillCircle {
  to {
    stroke-dashoffset: 30.79; /* 10% of 307.88, so 90% filled */
  }
}

.rotating-dot-group {
  transform-origin: 50px 50px;
}

.percentage-div.play-animation .rotating-dot-group {
  animation: rotateDot 2s linear forwards;
}

@keyframes rotateDot {
  to {
    transform: rotate(324deg); /* 90% of 360deg */
  }
}
