.d-flex{
  display: flex;
}
.d-block{
  display: block;
}
.d-none{
  display: none;
}
.d-grid{
  display: grid;
}
.justify-between{
  justify-content: space-between;
}
.justify-center{
  justify-content: center;
}
.justify-end{
  justify-content: end;
}
.justify-start{
  justify-content: start;
}
.items-center{
  align-items: center;
}
.items-end{
  align-items: end;
}
.items-start{
  align-items: start;
}
.flex-wrap{
  flex-wrap: wrap;
}
.flex-row{
  flex-direction: row;
}
.flex-row-reverse{
  flex-direction: row-reverse;
}
.flex-col{
  flex-direction: column;
}
.flex-col-reverse{
  flex-direction: column-reverse;
}
.self-start{
  align-self: flex-start;
}
.self-end{
  align-self: flex-end;
}
.w-100{
  width: 100%;
}
.h-100{
  height: 100%;
}
.gap-0{
  gap: 0;
}
.gap-1{
  gap: 10px;
}
.gap-2{
  gap: 20px;
}
.gap-3{
  gap: 30px;
}
.gap-4{
  gap: 40px;
}
.gap-5{
  gap: 50px;
}
.gap-6{
  gap: 60px;
}
.gap-7{
  gap: 70px;
}
.gap-8{
  gap: 80px;
}
.gap-9{
  gap: 90px;
}
.gap-10{
  gap: 100px;
}
.row-gap-1{
  row-gap: 10px;
}
.row-gap-2{
  row-gap: 20px;
}
.row-gap-3{
  row-gap: 30px;
}
.row-gap-4{
  row-gap: 40px;
}
.row-gap-5{
  row-gap: 50px;
}
.column-gap-1{
  column-gap: 10px;
}
.column-gap-2{
  column-gap: 20px;
}
.column-gap-3{
  column-gap: 30px;
}
.column-gap-4{
  column-gap: 40px;
}
.column-gap-5{
  column-gap: 50px;
}
.mb-0{
  margin-bottom: 0;
}
.mb-1{
  margin-bottom: 10px;
}
.mb-2{
  margin-bottom: 20px;
}
.mb-3{
  margin-bottom: 30px;
}
.mb-4{
  margin-bottom: 40px;
}
.mb-5{
  margin-bottom: 50px;
}
.mb-6{
  margin-bottom: 60px;
}
.mt-1{
  margin-top: 10px;
}
.mt-2{
  margin-top: 20px;
}
.mt-3{
  margin-top: 30px;
}
.mt-4{
  margin-top: 40px;
}
.mt-5{
  margin-top: 50px;
}
.mt-6{
  margin-top: 60px;
}
.pt-0{
  padding-top: 0;
}
.pt-1{
  padding-top: 10px;
}
.pt-2{
  padding-top: 20px;
}
.pt-3{
  padding-top: 30px;
}
.pt-4{
  padding-top: 40px;
}
.pt-5{
  padding-top: 50px;
}
.p-0{
  padding: 0;
}
.pointer{
  cursor: pointer;
}
.relative{
  position: relative;
}
.mt-auto{
  margin-top: auto;
}
.fw-500{
  font-weight: 500;
}
.col-1{
  grid-template-columns: repeat(1, 1fr);
}
.col-2{
  grid-template-columns: repeat(2, 1fr);
}
.col-3{
  grid-template-columns: repeat(3, 1fr);
}
.col-4{
  grid-template-columns: repeat(4, 1fr);
}
.col-5{
  grid-template-columns: repeat(5, 1fr);
}
.text-center{
  text-align: center;
}
.text-left{
  text-align: left;
}
.text-right{
  text-align: right;
}
.z-1{
  z-index: 10;
}
.z-2{
  z-index: 20;
}
.z-3{
  z-index: 30;
}
.z-4{
  z-index: 40;
}
.z-5{
  z-index: 50;
}
.hidden{
  overflow: hidden;
}

@media (max-width: 1600px) {
  .xxxl\:d-flex {
    display: flex;
  }
  .xxxl\:d-block {
    display: block;
  }
  .xxxl\:d-none {
    display: none;
  }
  .xxxl\:gap-1 {
    gap: 10px;
  }
  .xxxl\:gap-2 {
    gap: 20px;
  }
  .xxxl\:gap-3 {
    gap: 30px;
  }
  .xxxl\:gap-4 {
    gap: 40px;
  }
  .xxxl\:gap-5 {
    gap: 50px;
  }
  .xxxl\:gap-6 {
    gap: 60px;
  }
  .xxxl\:gap-7 {
    gap: 70px;
  }
  .xxxl\:gap-8 {
    gap: 80px;
  }
  .xxxl\:gap-9 {
    gap: 90px;
  }
  .xxxl\:gap-10 {
    gap: 100px;
  }
  .xxxl\:flex-col{
    flex-direction: column;
  }
  .xxxl\:flex-col-reverse{
    flex-direction: column-reverse;
  }
  .xxxl\:w-100{
    width: 100%;
  }
  .xxxl\:p-0{
    padding: 0;
  }
  .xxxl\:gap-1{
    gap: 10px;
  }
  .xxxl\:gap-2{
    gap: 20px;
  }
  .xxxl\:gap-3{
    gap: 30px;
  }
  .xxxl\:gap-4{
    gap: 40px;
  }
  .xxxl\:gap-5{
    gap: 50px;
  }
}
@media (max-width: 1400px) {
  .xxl\:d-flex {
    display: flex;
  }
  .xxl\:d-block {
    display: block;
  }
  .xxl\:d-none {
    display: none;
  }
  .xxl\:gap-1 {
    gap: 10px;
  }
  .xxl\:gap-2 {
    gap: 20px;
  }
  .xxl\:gap-3 {
    gap: 30px;
  }
  .xxl\:gap-4 {
    gap: 40px;
  }
  .xxl\:gap-5 {
    gap: 50px;
  }
  .xxl\:gap-6 {
    gap: 60px;
  }
  .xxl\:gap-7 {
    gap: 70px;
  }
  .xxl\:gap-8 {
    gap: 80px;
  }
  .xxl\:gap-9 {
    gap: 90px;
  }
  .xxl\:gap-10 {
    gap: 100px;
  }
  .xxl\:flex-col{
    flex-direction: column;
  }
  .xxl\:flex-col-reverse{
    flex-direction: column-reverse;
  }
  .xxl\:w-100{
    width: 100%;
  }
  .xxl\:p-0{
    padding: 0;
  }
  .xxl\:gap-1{
    gap: 10px;
  }
  .xxl\:gap-2{
    gap: 20px;
  }
  .xxl\:gap-3{
    gap: 30px;
  }
  .xxl\:gap-4{
    gap: 40px;
  }
  .xxl\:gap-5{
    gap: 50px;
  }
}
@media (max-width: 1200px) {
  .xl\:d-flex {
    display: flex;
  }
  .xl\:d-block {
    display: block;
  }
  .xl\:d-none {
    display: none;
  }
  .xl\:gap-1 {
    gap: 10px;
  }
  .xl\:gap-2 {
    gap: 20px;
  }
  .xl\:gap-3 {
    gap: 30px;
  }
  .xl\:gap-4 {
    gap: 40px;
  }
  .xl\:gap-5 {
    gap: 50px;
  }
  .xl\:gap-6 {
    gap: 60px;
  }
  .xl\:gap-7 {
    gap: 70px;
  }
  .xl\:gap-8 {
    gap: 80px;
  }
  .xl\:gap-9 {
    gap: 90px;
  }
  .xl\:gap-10 {
    gap: 100px;
  }
  .xl\:flex-col{
    flex-direction: column;
  }
  .xl\:flex-col-reverse{
    flex-direction: column-reverse;
  }
  .xl\:justify-center{
    justify-content: center;
  }
  .xl\:justify-start{
    justify-content: start;
  }
  .xl\:w-100{
    width: 100%;
  }
  .xl\:p-0{
    padding: 0;
  }
  .xl\:flex-row{
    flex-direction: row;
  }
}
@media (max-width: 992px) {
  .lg\:d-flex {
    display: flex;
  }
  .lg\:d-block {
    display: block;
  }
  .lg\:d-none {
    display: none;
  }
  .lg\:gap-1 {
    gap: 10px;
  }
  .lg\:gap-2 {
    gap: 20px;
  }
  .lg\:gap-3 {
    gap: 30px;
  }
  .lg\:gap-4 {
    gap: 40px;
  }
  .lg\:gap-5 {
    gap: 50px;
  }
  .lg\:gap-6 {
    gap: 60px;
  }
  .lg\:gap-7 {
    gap: 70px;
  }
  .lg\:gap-8 {
    gap: 80px;
  }
  .lg\:gap-9 {
    gap: 90px;
  }
  .lg\:gap-10 {
    gap: 100px;
  }
  .lg\:flex-col{
    flex-direction: column;
  }
  .lg\:flex-col-reverse{
    flex-direction: column-reverse;
  }
  .lg\:w-100{
    width: 100%;
  }
  .lg\:p-0{
    padding: 0;
  }
  .lg\:m-0{
    margin: 0;
  }
  .lg\:mb-2{
    margin-bottom: 20px;
  }
  .lg\:mb-5{
    margin-bottom: 50px;
  }
  .lg\:col-1{
    grid-template-columns: repeat(1, 1fr);
  }
  .lg\:col-2{
    grid-template-columns: repeat(2, 1fr);
  }
  .lg\:col-3{
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 768px) {
  .md\:d-flex {
    display: flex;
  }
  .md\:d-block {
    display: block;
  }
  .md\:d-none {
    display: none;
  }
  .md\:gap-1 {
    gap: 10px;
  }
  .md\:gap-2 {
    gap: 20px;
  }
  .md\:gap-3 {
    gap: 30px;
  }
  .md\:gap-4 {
    gap: 40px;
  }
  .md\:gap-5 {
    gap: 50px;
  }
  .md\:gap-6 {
    gap: 60px;
  }
  .md\:gap-7 {
    gap: 70px;
  }
  .md\:gap-8 {
    gap: 80px;
  }
  .md\:gap-9 {
    gap: 90px;
  }
  .md\:gap-10 {
    gap: 100px;
  }
  .md\:flex-col{
    flex-direction: column;
  }
  .md\:flex-col-reverse{
    flex-direction: column-reverse;
  }
  .md\:flex-row-reverse{
    flex-direction: row-reverse;
  }
  .md\:items-start{
    align-items: start;
  }
  .md\:w-100{
    width: 100%;
  }
  .md\:p-0{
    padding: 0;
  }
  .md\:col-1{
    grid-template-columns: repeat(1, 1fr);
  }
  .md\:col-2{
    grid-template-columns: repeat(2, 1fr);
  }
  .md\:text-center{
    text-align: center;
  }
}
@media (max-width: 576px) {
  .sm\:d-flex {
    display: flex;
  }
  .sm\:d-block {
    display: block;
  }
  .sm\:d-none {
    display: none;
  }
  .sm\:gap-1 {
    gap: 10px;
  }
  .sm\:gap-2 {
    gap: 20px;
  }
  .sm\:gap-3 {
    gap: 30px;
  }
  .sm\:gap-4 {
    gap: 40px;
  }
  .sm\:gap-5 {
    gap: 50px;
  }
  .sm\:gap-6 {
    gap: 60px;
  }
  .sm\:gap-7 {
    gap: 70px;
  }
  .sm\:gap-8 {
    gap: 80px;
  }
  .sm\:gap-9 {
    gap: 90px;
  }
  .sm\:gap-10 {
    gap: 100px;
  }
  .sm\:flex-col{
    flex-direction: column;
  }
  .sm\:flex-col-reverse{
    flex-direction: column-reverse;
  }
  .sm\:items-start{
    align-items: start;
  }
  .sm\:items-center{
    align-items: center;
  }
  .sm\:w-100{
    width: 100%;
  }
  .sm\:p-0{
    padding: 0;
  }
  .sm\:mt-6{
    margin-top: 60px;
  }
  .sm\:mb-2{
    margin-bottom: 20px;
  }
  .sm\:mb-3{
    margin-bottom: 30px;
  }
  .sm\:mt-1{
    margin-top: 10px;
  }
  .sm\:mt-2{
    margin-top: 20px;
  }
  .sm\:mt-3{
    margin-top: 30px;
  }
  .sm\:col-1{
    grid-template-columns: repeat(1, 1fr);
  }
  .sm\:col-2{
    grid-template-columns: repeat(2, 1fr);
  }
  .sm\:text-left{
    text-align: left;
  }
  .sm\:text-center{
    text-align: center;
  }
  .sm\:text-right{
    text-align: right;
  }
}