:root, [data-bs-theme=light] {
  --bs-body-font-family: 'Open Sans', sans-serif;
}

[data-bs-theme=dark] {
  --bs-focus-ring-opacity: 1;
}

.aspect-ratio-1x1 {
  aspect-ratio: 1/1;
}

.mx-0 {
  margin-right: 0 !important;
  margin-left: 0 !important;
}

.mx-1 {
  margin-right: .25rem !important;
  margin-left: .25rem !important;
}

.mx-auto {
  margin-right: auto !important;
  margin-left: auto !important;
}

.my-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.my-1 {
  margin-top: .25rem !important;
  margin-bottom: .25rem !important;
}

.my-2 {
  margin-top: .5rem !important;
  margin-bottom: .5rem !important;
}

.my-3 {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important;
}

.mt-0 {
  margin-top: 0 !important;
}

.mt-5 {
  margin-top: 3rem !important;
}

.mt-6 {
  margin-top: 4.5rem !important;
}

.mt-7 {
  margin-top: 6rem !important;
}

.me-0 {
  margin-right: 0 !important;
}

.me-2 {
  margin-right: .5rem !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.mb-2 {
  margin-bottom: .5rem !important;
}

.mb-3 {
  margin-bottom: 1rem !important;
}

.mb-4 {
  margin-bottom: 1.5rem !important;
}

.mb-5 {
  margin-bottom: 3rem !important;
}

.mb-8 {
  margin-bottom: 7.5rem !important;
}

.ms-0 {
  margin-left: 0 !important;
}

.ms-2 {
  margin-left: .5rem !important;
}

.ms-auto {
  margin-left: auto !important;
}

.p-3 {
  padding: 1rem !important;
}

.p-4 {
  padding: 1.5rem !important;
}

.px-0 {
  padding-right: 0 !important;
  padding-left: 0 !important;
}

.px-3 {
  padding-right: 1rem !important;
  padding-left: 1rem !important;
}

.px-4 {
  padding-right: 1.5rem !important;
  padding-left: 1.5rem !important;
}

.py-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.py-2 {
  padding-top: .5rem !important;
  padding-bottom: .5rem !important;
}

.py-4 {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}

.py-5 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

.pt-2 {
  padding-top: .5rem !important;
}

.pt-3 {
  padding-top: 1rem !important;
}

.pt-4 {
  padding-top: 1.5rem !important;
}

.pt-5 {
  padding-top: 3rem !important;
}

.pt-7 {
  padding-top: 6rem !important;
}

.pe-0 {
  padding-right: 0 !important;
}

.pe-2 {
  padding-right: .5rem !important;
}

.pe-4 {
  padding-right: 1.5rem !important;
}

.pb-0 {
  padding-bottom: 0 !important;
}

.pb-2 {
  padding-bottom: .5rem !important;
}

.pb-4 {
  padding-bottom: 1.5rem !important;
}

.pb-5 {
  padding-bottom: 3rem !important;
}

.ps-0 {
  padding-left: 0 !important;
}

@media (min-width: 576px) {
  .mb-sm-5 {
    margin-bottom: 3rem !important;
  }
}

@media (min-width: 576px) {
  .pt-sm-7 {
    padding-top: 6rem !important;
  }
}

@media (min-width: 576px) {
  .pb-sm-2 {
    padding-bottom: 0.5rem !important;
  }
}

@media (min-width: 768px) {
  .p-md-5 {
    padding: 3rem !important;
  }
}

@media (min-width: 768px) {
  .py-md-0 {
    padding-top: 0rem !important;
    padding-bottom: 0rem !important;
  }
}

@media (min-width: 768px) {
  .pb-md-4 {
    padding-bottom: 1.5rem !important;
  }
}

@media (min-width: 768px) {
  .pb-md-5 {
    padding-bottom: 3rem !important;
  }
}

@media (min-width: 992px) {
  .mt-lg-10 {
    margin-top: 10.5rem !important;
  }
}

@media (min-width: 992px) {
  .py-lg-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
}

@media (min-width: 992px) {
  .pt-lg-7 {
    padding-top: 6rem !important;
  }
}

@media (min-width: 992px) {
  .pb-lg-1 {
    padding-bottom: 0.25rem !important;
  }
}

@media (min-width: 1200px) {
  .p-xl-4 {
    padding: 1.5rem !important;
  }
}

@media (min-width: 1200px) {
  .py-xl-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
}

@media (min-width: 1200px) {
  .pt-xl-5 {
    padding-top: 3rem !important;
  }
}

