.ma-0,
.my-0,
.mt-0 {
  margin-top: 0;
}

.ma-q,
.my-q,
.mt-q {
  margin-top: .25rem;
}

.ma-h,
.my-h,
.mt-h {
  margin-top: .5rem;
}

.ma-1,
.my-1,
.mt-1 {
  margin-top: 1rem;
}

.ma-2,
.my-2,
.mt-2 {
  margin-top: 2rem;
}

.ma-3,
.my-3,
.mt-3 {
  margin-top: 3rem;
}

.ma-4,
.my-4,
.mt-4 {
  margin-top: 4rem;
}

.ma-5,
.my-5,
.mt-5 {
  margin-top: 5rem;
}

.ma-6,
.my-6,
.mt-6 {
  margin-top: 6rem;
}

.ma-4,
.my-4,
.mb-4 {
  margin-bottom: 4rem;
}

.ma-0,
.my-0,
.mb-0 {
  margin-bottom: 0;
}

.ma-q,
.my-q,
.mb-q {
  margin-bottom: .25rem;
}

.ma-h,
.my-h,
.mb-h {
  margin-bottom: .5rem;
}

.ma-1,
.my-1,
.mb-1 {
  margin-bottom: 1rem;
}

.ma-2,
.my-2,
.mb-2 {
  margin-bottom: 2rem;
}

.ma-3,
.my-3,
.mb-3 {
  margin-bottom: 3rem;
}

.ma-0,
.mx-0,
.ml-0 {
  margin-left: 0;
}

.ma-q,
.mx-q,
.ml-q {
  margin-left: .25rem;
}

.ma-h,
.mx-h,
.ml-h {
  margin-left: .5rem;
}

.ma-1,
.mx-1,
.ml-1 {
  margin-left: 1rem;
}

.ma-2,
.mx-2,
.ml-2 {
  margin-left: 2rem;
}

.ma-3,
.mx-3,
.ml-3 {
  margin-left: 3rem;
}

.ma-0,
.mx-0,
.mr-0 {
  margin-right: 0;
}

.ma-q,
.mx-q,
.mr-q {
  margin-right: .25rem;
}

.ma-h,
.mx-h,
.mr-h {
  margin-right: .5rem;
}

.ma-1,
.mx-1,
.mr-1 {
  margin-right: 1rem;
}

.ma-2,
.mx-2,
.mr-2 {
  margin-right: 2rem;
}

.ma-3,
.mx-3,
.mr-3 {
  margin-bottom: 3rem;
}

  .pa-0,
.py-0,
.pt-0 {
  padding-top: 0;
}

.pa-q,
.py-q,
.pt-q {
  padding-top: .25rem;
}

.pa-h,
.py-h,
.pt-h {
  padding-top: .5rem;
}

.pa-1,
.py-1,
.pt-1 {
  padding-top: 1rem;
}

.pa-2,
.py-2,
.pt-2 {
  padding-top: 2rem;
}

.pa-3,
.py-3,
.pt-3 {
  padding-top: 3rem;
}

.pa-0,
.py-0,
.pb-0 {
  padding-bottom: 0;
}

.pa-q,
.py-q,
.pb-q {
  padding-bottom: .25rem;
}

.pa-h,
.py-h,
.pb-h {
  padding-bottom: .5rem;
}

.pa-1,
.py-1,
.pb-1 {
  padding-bottom: 1rem;
}

.pa-2,
.py-2,
.pb-2 {
  padding-bottom: 2rem;
}

.pa-3,
.py-3,
.pb-3 {
  padding-bottom: 3rem;
}

.pa-0,
.px-0,
.pl-0 {
  padding-left: 0;
}

.pa-q,
.px-q,
.pl-q {
  padding-left: .25rem;
}

.pa-h,
.px-h,
.pl-h {
  padding-left: .5rem;
}

.pa-1,
.px-1,
.pl-1 {
  padding-left: 1rem;
}

.pa-2,
.px-2,
.pl-2 {
  padding-left: 2rem;
}

.pa-3,
.px-3,
.pl-3 {
  padding-left: 3rem;
}

.pa-0,
.px-0,
.pr-0 {
  padding-right: 0;
}

.pa-q,
.px-q,
.pr-q {
  padding-right: .25rem;
}

.pa-h,
.px-h,
.pr-h {
  padding-right: .5rem;
}

.pa-1,
.px-1,
.pr-1 {
  padding-right: 1rem;
}

.pa-2,
.px-2,
.pr-2 {
  padding-right: 2rem;
}

.pa-3,
.px-3,
.pr-3 {
  padding-right: 3rem;
}

.pa-3,
.px-3,
.pr-3 {
  padding-bottom: 3rem;
}

.g-2{
  gap: 2em;
}

/* font weights */
.fw-100 { font-weight: 100!important; }
.fw-200 { font-weight: 200!important; }
.fw-300 { font-weight: 300!important; }
.fw-400 { font-weight: 400!important; }
.fw-500 { font-weight: 500!important; }
.fw-600 { font-weight: 600!important; }
.fw-700 { font-weight: 700!important; }
.fw-800 { font-weight: 800!important; }
.fw-900 { font-weight: 900!important; }
.fw-light { font-weight: 300!important; }
.fw-heavy { font-weight: 700!important; }

/* height/width */
.w-33 	{ width: 33%!important; }
.w-66 	{ width: 66%!important; }
.w-1	{ width: 0.25rem!important; }
.w-2	{ width: 0.5rem!important; }
.w-3	{ width: 0.75rem!important; }
.w-4	{ width: 1rem!important; }
.w-5	{ width: 1.25rem!important; }
.w-6	{ width: 1.5rem!important; }
.w-7	{ width: 1.75rem!important; }
.w-8	{ width: 2rem!important; }
.w-9	{ width: 2.25rem!important; }
.w-10	{ width: 2.5rem!important; }
.w-12	{ width: 3rem!important; }
.w-16	{ width: 4rem!important; }
.w-24	{ width: 6rem!important; }
.w-32	{ width: 8rem!important; }
.w-100 { width: 100%!important; }
.h-33 	{ height: 33%!important; }
.h-66 	{ height: 66%!important; }
.h-1	{ height: 0.25rem!important; }
.h-2	{ height: 0.5rem!important; }
.h-3	{ height: 0.75rem!important; }
.h-4	{ height: 1rem!important; }
.h-5	{ height: 1.25rem!important; }
.h-6	{ height: 1.5rem!important; }
.h-7	{ height: 1.75rem!important; }
.h-8	{ height: 2rem!important; }
.h-9	{ height: 2.25rem!important; }
.h-10	{ height: 2.5rem!important; }
.h-12	{ height: 3rem!important; }
.h-16	{ height: 4rem!important; }
.h-24	{ height: 6rem!important; }
.h-32	{ height: 8rem!important; }

.mw-50 { max-width: 50%!important; }
.mh-50 { max-height: 50%!important; }
.max { max-width: 100%; width: auto; height: auto; }
.vh5 { height: 5vh; }
.vh10 { height: 10vh; }
.vh15 { height: 15vh; }
.vh20 { height: 20vh; }
.vh25 { height: 25vh; }
.vh30 { height: 30vh; }
.vh35 { height: 35vh; }
.vh40 { height: 40vh; }
.vh45 { height: 45vh; }
.vh50 { height: 50vh; }
.vh55 { height: 55vh; }
.vh60 { height: 60vh; }
.vh65 { height: 65vh; }
.vh70 { height: 70vh; }
.vh75 { height: 75vh; }
.vh80 { height: 80vh; }
.vh85 { height: 85vh; }
.vh90 { height: 90vh; }
.vh95 { height: 95vh; }
.vh100 { height: 100vh; }