.text-10 {
  font-size: 10px;
}

.text-11 {
  font-size: 11px;
}

.text-12 {
  font-size: 12px;
}

.text-13 {
  font-size: 13px;
}

.text-14 {
  font-size: 14px;
}

.text-15 {
  font-size: 15px;
}

.text-16 {
  font-size: 16px;
}

.text-17 {
  font-size: 17px;
}

.text-18 {
  font-size: 18px;
}

.text-19 {
  font-size: 19px;
}

.text-20 {
  font-size: 20px;
}

.text-21 {
  font-size: 21px;
}

.text-22 {
  font-size: 22px;
}

.text-23 {
  font-size: 23px;
}

.text-24 {
  font-size: 24px;
}

.text-25 {
  font-size: 25px;
}

.text-26 {
  font-size: 26px;
}

.text-27 {
  font-size: 27px;
}

.text-28 {
  font-size: 28px;
}

.text-29 {
  font-size: 29px;
}

.text-30 {
  font-size: 30px;
}

.text-31 {
  font-size: 31px;
}

.text-32 {
  font-size: 32px;
}

.text-33 {
  font-size: 33px;
}

.text-34 {
  font-size: 34px;
}

.text-35 {
  font-size: 35px;
}

.text-36 {
  font-size: 36px;
}

.text-37 {
  font-size: 37px;
}

.text-38 {
  font-size: 38px;
}

.text-39 {
  font-size: 39px;
}

.text-40 {
  font-size: 40px;
}

.text-41 {
  font-size: 41px;
}

.text-42 {
  font-size: 42px;
}

.text-43 {
  font-size: 43px;
}

.text-44 {
  font-size: 44px;
}

.text-45 {
  font-size: 45px;
}

.text-46 {
  font-size: 46px;
}

.text-47 {
  font-size: 47px;
}

.text-48 {
  font-size: 48px;
}

.text-49 {
  font-size: 49px;
}

.text-50 {
  font-size: 50px;
}

.text-51 {
  font-size: 51px;
}

.text-52 {
  font-size: 52px;
}

.text-53 {
  font-size: 53px;
}

.text-54 {
  font-size: 54px;
}

.text-55 {
  font-size: 55px;
}

.text-56 {
  font-size: 56px;
}

.text-57 {
  font-size: 57px;
}

.text-58 {
  font-size: 58px;
}

.text-59 {
  font-size: 59px;
}

.text-60 {
  font-size: 60px;
}

.text-61 {
  font-size: 61px;
}

.text-62 {
  font-size: 62px;
}

.text-63 {
  font-size: 63px;
}

.text-64 {
  font-size: 64px;
}

.m-8 { margin: 8px; }
.m-12 { margin: 12px; }
.m-16 { margin: 16px; }
.m-20 { margin: 20px; }
.m-24 { margin: 24px; }
.m-28 { margin: 28px; }
.m-32 { margin: 32px; }
.m-36 { margin: 36px; }
.m-40 { margin: 40px; }
.m-44 { margin: 44px; }
.m-48 { margin: 48px; }

.mt-8 { margin-top: 8px; }
.mt-12 { margin-top: 12px; }
.mt-16 { margin-top: 16px; }
.mt-20 { margin-top: 20px; }
.mt-24 { margin-top: 24px; }
.mt-28 { margin-top: 28px; }
.mt-32 { margin-top: 32px; }
.mt-36 { margin-top: 36px; }
.mt-40 { margin-top: 40px; }
.mt-44 { margin-top: 44px; }
.mt-48 { margin-top: 48px; }

.mr-8 { margin-right: 8px; }
.mr-12 { margin-right: 12px; }
.mr-16 { margin-right: 16px; }
.mr-20 { margin-right: 20px; }
.mr-24 { margin-right: 24px; }
.mr-28 { margin-right: 28px; }
.mr-32 { margin-right: 32px; }
.mr-36 { margin-right: 36px; }
.mr-40 { margin-right: 40px; }
.mr-44 { margin-right: 44px; }
.mr-48 { margin-right: 48px; }

.mb-8 { margin-bottom: 8px; }
.mb-12 { margin-bottom: 12px; }
.mb-16 { margin-bottom: 16px; }
.mb-20 { margin-bottom: 20px; }
.mb-24 { margin-bottom: 24px; }
.mb-28 { margin-bottom: 28px; }
.mb-32 { margin-bottom: 32px; }
.mb-36 { margin-bottom: 36px; }
.mb-40 { margin-bottom: 40px; }
.mb-44 { margin-bottom: 44px; }
.mb-48 { margin-bottom: 48px; }

.ml-8 { margin-left: 8px; }
.ml-12 { margin-left: 12px; }
.ml-16 { margin-left: 16px; }
.ml-20 { margin-left: 20px; }
.ml-24 { margin-left: 24px; }
.ml-28 { margin-left: 28px; }
.ml-32 { margin-left: 32px; }
.ml-36 { margin-left: 36px; }
.ml-40 { margin-left: 40px; }
.ml-44 { margin-left: 44px; }
.ml-48 { margin-left: 48px; }

.p-8 { padding: 8px; }
.p-12 { padding: 12px; }
.p-16 { padding: 16px; }
.p-20 { padding: 20px; }
.p-24 { padding: 24px; }
.p-28 { padding: 28px; }
.p-32 { padding: 32px; }
.p-36 { padding: 36px; }
.p-40 { padding: 40px; }
.p-44 { padding: 44px; }
.p-48 { padding: 48px; }

.pt-8 { padding-top: 8px; }
.pt-12 { padding-top: 12px; }
.pt-16 { padding-top: 16px; }
.pt-20 { padding-top: 20px; }
.pt-24 { padding-top: 24px; }
.pt-28 { padding-top: 28px; }
.pt-32 { padding-top: 32px; }
.pt-36 { padding-top: 36px; }
.pt-40 { padding-top: 40px; }
.pt-44 { padding-top: 44px; }
.pt-48 { padding-top: 48px; }

.pr-8 { padding-right: 8px; }
.pr-12 { padding-right: 12px; }
.pr-16 { padding-right: 16px; }
.pr-20 { padding-right: 20px; }
.pr-24 { padding-right: 24px; }
.pr-28 { padding-right: 28px; }
.pr-32 { padding-right: 32px; }
.pr-36 { padding-right: 36px; }
.pr-40 { padding-right: 40px; }
.pr-44 { padding-right: 44px; }
.pr-48 { padding-right: 48px; }

.pb-8 { padding-bottom: 8px; }
.pb-12 { padding-bottom: 12px; }
.pb-16 { padding-bottom: 16px; }
.pb-20 { padding-bottom: 20px; }
.pb-24 { padding-bottom: 24px; }
.pb-28 { padding-bottom: 28px; }
.pb-32 { padding-bottom: 32px; }
.pb-36 { padding-bottom: 36px; }
.pb-40 { padding-bottom: 40px; }
.pb-44 { padding-bottom: 44px; }
.pb-48 { padding-bottom: 48px; }

.pl-8 { padding-left: 8px; }
.pl-12 { padding-left: 12px; }
.pl-16 { padding-left: 16px; }
.pl-20 { padding-left: 20px; }
.pl-24 { padding-left: 24px; }
.pl-28 { padding-left: 28px; }
.pl-32 { padding-left: 32px; }
.pl-36 { padding-left: 36px; }
.pl-40 { padding-left: 40px; }
.pl-44 { padding-left: 44px; }
.pl-48 { padding-left: 48px; }

.color-primary {
  color: #3498db;
}

.color-primary-alt {
  color: #2980b9;
}

.color-secondary {
  color: #2ecc71;
}

.color-secondary-alt {
  color: #27ae60;
}

.color-tertiary {
  color: #e74c3c;
}

.color-tertiary-alt {
  color: #c0392b;
}

.bg-primary {
  background-color: #3498db;
}

.bg-primary-alt {
  background-color: #2980b9;
}

.bg-secondary {
  background-color: #2ecc71;
}

.bg-secondary-alt {
  background-color: #27ae60;
}

.bg-tertiary {
  background-color: #e74c3c;
}

.bg-tertiary-alt {
  background-color: #c0392b;
}

.cta {
  display: inline-block;
  padding: 10px 20px;
  max-width: 300px;
  border: 2px solid transparent;
  border-radius: 4px;
  text-align: center;
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.cta.cta-primary {
  color: white;
  background-color: #3498db;
  border-color: #3498db;
}
.cta.cta-primary:hover {
  background-color: #2980b9;
  border-color: #2980b9;
}
.cta.cta-secondary {
  color: white;
  background-color: #2ecc71;
  border-color: #2ecc71;
}
.cta.cta-secondary:hover {
  background-color: #27ae60;
  border-color: #27ae60;
}
.cta.cta-tertiary {
  color: white;
  background-color: #e74c3c;
  border-color: #e74c3c;
}
.cta.cta-tertiary:hover {
  background-color: #c0392b;
  border-color: #c0392b;
}

.center-vertical {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.center-horizontal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.center-both {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.bold {
  font-weight: bold;
}

.italic {
  font-style: italic;
}

.uppercase {
  text-transform: uppercase;
}

.underlined {
  text-decoration: underline;
}

.not-underlined {
  text-decoration: none;
}

.weight-100 {
  font-weight: 100;
}

.weight-200 {
  font-weight: 200;
}

.weight-300 {
  font-weight: 300;
}

.weight-400 {
  font-weight: 400;
}

.weight-500 {
  font-weight: 500;
}

.weight-600 {
  font-weight: 600;
}

.weight-700 {
  font-weight: 700;
}

.weight-800 {
  font-weight: 800;
}

.weight-900 {
  font-weight: 900;
}


.mobile-only {
  display: none;
}

.desktop-only {
  display: block;
}

@media (max-width: 576px) {
  .mobile-only {
    display: block !important; 
  }

  .desktop-only {
    display: none !important;
  }
}