/****************
 * Fonts
 ****************/
/****************
 * Colors
 ****************/
/****************
 * Grid Settings
 ****************/
/**************
 * Buttons
 **************/
/****************
 * Blocks
 ****************/
.block-progress-buckets {
  position: relative;
  padding: 3.75rem 0 2.5rem;
}

@media (min-width: 768px) {
  .block-progress-buckets {
    padding: 3.75rem 0 2.5rem;
  }
}

.block-progress-buckets figure {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.block-progress-buckets figure::after {
  content: '';
  background-color: rgba(23, 57, 99, 0.85);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  mix-blend-mode: multiply;
}

.block-progress-buckets figure img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  object-fit: cover;
  height: 100%;
  width: 100%;
}

.block-progress-buckets__intro {
  margin-bottom: 2.5rem;
}

@media (min-width: 768px) {
  .block-progress-buckets__intro {
    margin-bottom: 5rem;
  }
}

.block-progress-buckets__intro h1,
.block-progress-buckets__intro h2,
.block-progress-buckets__intro h3,
.block-progress-buckets__intro h4,
.block-progress-buckets__intro h5,
.block-progress-buckets__intro h6,
.block-progress-buckets__intro p,
.block-progress-buckets__intro li,
.block-progress-buckets__intro span {
  color: #fff;
}

.block-progress-buckets__progress-bar {
  margin-bottom: 3.75rem;
}

@media (min-width: 768px) {
  .block-progress-buckets__progress-bar {
    margin-bottom: 8.5rem;
  }
}

.block-progress-buckets__bar {
  border-radius: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 3rem;
  padding: 0 1.25rem;
}

@media (min-width: 768px) {
  .block-progress-buckets__bar {
    height: 6.375rem;
  }
}

.block-progress-buckets__bar span {
  font-size: 1.5rem !important;
  font-weight: 100;
}

@media (min-width: 768px) {
  .block-progress-buckets__bar span {
    font-size: 3.25rem !important;
  }
}

.block-progress-buckets__buckets {
  display: flex;
  margin-bottom: 1.5rem;
}

@media (min-width: 768px) {
  .block-progress-buckets__buckets {
    margin-bottom: 3.5rem;
  }
}

.block-progress-buckets__buckets .row {
  display: flex;
  justify-content: space-between;
}

.block-progress-buckets__bucket {
  align-items: center;
  margin-bottom: 2.5rem;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}

@media (min-width: 768px) {
  .block-progress-buckets__bucket {
    display: flex;
    flex: 0 0 30%;
  }
}

.block-progress-buckets__bucket:nth-child(4n+1)::before {
  clip-path: polygon(0 0, calc(100% - 2.5rem) 0, calc(100% - 2.5rem) 2.5rem, 100% 2.5rem, 100% 100%, 0 100%);
}

@media (min-width: 768px) {
  .block-progress-buckets__bucket:nth-child(4n+1)::before {
    clip-path: polygon(0 0, calc(100% - 3.75rem) 0, calc(100% - 3.75rem) 3.75rem, 100% 3.75rem, 100% 100%, 0 100%);
  }
}

.block-progress-buckets__bucket:nth-child(4n+1) .accent-square-1 {
  content: '';
  background-color: #28b780;
  position: absolute;
  top: auto;
  right: auto;
  bottom: calc(100% - 25px);
  left: calc(100% - 40px);
  height: 2.5rem;
  width: 2.5rem;
}

@media (min-width: 768px) {
  .block-progress-buckets__bucket:nth-child(4n+1) .accent-square-1 {
    content: '';
    background-color: #28b780;
    position: absolute;
    top: auto;
    right: auto;
    bottom: calc(100% - 40px);
    left: calc(100% - 55px);
    height: 5rem;
    width: 5rem;
  }
}

@media (min-width: 768px) {
  .block-progress-buckets__bucket:nth-child(4n+1) .accent-square-2 {
    content: '';
    background-color: #c9db03;
    position: absolute;
    top: 2.5rem;
    right: auto;
    bottom: auto;
    left: calc(100% + 25px);
    height: 2.5rem;
    width: 2.5rem;
    clip-path: polygon(1.25rem 0, 100% 0, 100% 100%, 0 100%, 0 1.25rem, 1.25rem 1.25rem);
  }
}

.block-progress-buckets__bucket:nth-child(4n+2)::before {
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 2.5rem), calc(100% - 2.5rem) calc(100% - 2.5rem), calc(100% - 2.5rem) 100%, 0 100%);
}

@media (min-width: 768px) {
  .block-progress-buckets__bucket:nth-child(4n+2)::before {
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 3.75rem), calc(100% - 3.75rem) calc(100% - 3.75rem), calc(100% - 3.75rem) 100%, 0 100%);
  }
}

.block-progress-buckets__bucket:nth-child(4n+2) .accent-square-1 {
  content: '';
  background-color: #00aeef;
  position: absolute;
  top: calc(100% - 25px);
  right: auto;
  bottom: auto;
  left: calc(100% - 40px);
  height: 2.5rem;
  width: 2.5rem;
}

@media (min-width: 768px) {
  .block-progress-buckets__bucket:nth-child(4n+2) .accent-square-1 {
    content: '';
    background-color: #00aeef;
    position: absolute;
    top: calc(100% - 40px);
    right: auto;
    bottom: auto;
    left: calc(100% - 55px);
    height: 5rem;
    width: 5rem;
  }
}

.block-progress-buckets__bucket:nth-child(4n+3) .accent-square-1 {
  content: '';
  background-color: #c9db03;
  position: absolute;
  top: 100%;
  right: auto;
  bottom: auto;
  left: calc(100% - 15px);
  height: 3.75rem;
  width: 3.75rem;
}

.block-progress-buckets__bucket:nth-child(4n+4)::before {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 3.75rem 100%, 3.75rem calc(100% - 3.75rem), 0 calc(100% - 3.75rem));
}

.block-progress-buckets__bucket::before {
  content: '';
  background-color: #fff;
  position: absolute;
  top: 0;
  right: 0.9375rem;
  bottom: 0;
  left: 0.9375rem;
  z-index: 0;
}

.block-progress-buckets__bucket p {
  font-size: 1.375rem !important;
  padding: 2rem 1.875rem;
  text-align: center;
  position: relative;
  z-index: 1;
  width: 100%;
}

@media (min-width: 768px) {
  .block-progress-buckets__bucket p {
    padding: 3.5rem 1.875rem;
  }
}

.block-progress-buckets__bucket p span {
  font-size: 1.75rem !important;
  line-height: 3rem;
  display: block;
  font-weight: 100;
  margin: auto;
  text-transform: uppercase;
  width: 80%;
}

@media (min-width: 768px) {
  .block-progress-buckets__bucket p span {
    font-size: 2.5rem !important;
  }
}
