.downloads {
  padding-block: 60px;
  position: relative;
}
@media (min-width: 1200px) {
  .downloads {
    padding-block: 105px;
  }
}
.downloads:before, .downloads:after {
  content: "";
  position: absolute;
  width: 100vw;
  height: 1px;
  background: rgba(0, 0, 0, 0.1019607843);
  left: calc((100vw - 100%) / -2);
}
.downloads:after {
  bottom: 0;
}
.downloads:before {
  top: 0;
}
.downloads h2 {
  margin: 0 0 30px !important;
}
.downloads__list {
  display: grid;
  gap: 10px;
}
@media (min-width: 576px) {
  .downloads__list {
    gap: 30px;
    grid-template-columns: repeat(auto-fit, minmax(390px, 1fr));
  }
}
.downloads__list .file {
  -webkit-box-shadow: 0 0 15px rgba(1, 15, 49, 0.0784313725);
          box-shadow: 0 0 15px rgba(1, 15, 49, 0.0784313725);
  min-height: 110px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.downloads__list .file__icon {
  padding: 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  justify-items: center;
  border-right: solid 1px rgba(0, 0, 0, 0.1019607843);
}
.downloads__list .file__details {
  padding: 20px 60px 20px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
.downloads__list .file__details:after {
  content: "";
  display: inline-block;
  width: 30px;
  height: 30px;
  -webkit-mask-image: url("../../img/download.svg");
          mask-image: url("../../img/download.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #FB2F37;
  margin-left: 10px;
  -webkit-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
}
.downloads__list .file__details:after {
  margin: 0;
  width: 24px;
  height: 24px;
  position: absolute;
  top: calc(50% - 12px);
  right: 20px;
}
.downloads__list .file__name {
  overflow-wrap: break-word;
  font-weight: bold;
}
.downloads__list .file__extension {
  margin-top: auto;
  text-transform: uppercase;
}
