.mx-centered {
  margin: 0 auto;
}

.hidden {
  display: none;
}

.container-max-w {
  max-width: 1200px;
}

.container-max-w-1550 {
  max-width: 1550px;
}

.container-full {
  width: 100%;
}

.text-max {
  max-width: 64ch;
}

.relative {
  position: relative;
}

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

.flex {
  display: flex;
}

.flex-row {
  flex-direction: row;
}

.flex-col {
  flex-direction: column;
}

@media screen and (min-width: 640px) {
  .flex-col-sm {
    flex-direction: column;
  }
  .flex-row-sm {
    flex-direction: row;
  }
}
@media screen and (min-width: 768px) {
  .flex-col-md {
    flex-direction: column;
  }
  .flex-row-md {
    flex-direction: row;
  }
}
@media screen and (min-width: 1024px) {
  .flex-col-lg {
    flex-direction: column;
  }
  .flex-row-lg {
    flex-direction: row;
  }
}
@media screen and (min-width: 1280px) {
  .flex-col-xl {
    flex-direction: column;
  }
  .flex-row-xl {
    flex-direction: row;
  }
}
@media screen and (min-width: 1536px) {
  .flex-col-2xl {
    flex-direction: column;
  }
  .flex-row-2xl {
    flex-direction: row;
  }
}
.justify-center {
  justify-content: center;
}

.justify-between {
  justify-content: space-between;
}

.align-center {
  align-items: center;
}

.flex-col {
  flex-direction: column;
}

.flex-row {
  flex-direction: row;
}

.flex-wrap {
  flex-wrap: wrap;
}

.font-sans {
  font-family: "Raleway", sans-serif;
}

.font-serif {
  font-family: "Cormorant", serif;
}

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

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

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

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

.color-gold {
  color: #e3c798;
}

.color-white {
  color: white;
}

.color-dark-blue {
  color: #0c1828;
}

.text-center {
  text-align: center;
}

.text-uppercase {
  text-transform: uppercase;
}

.list-none {
  list-style-type: none;
}

.list-disc {
  list-style-type: disc;
}

/* -------------- REMS ---------------- */
.m-1 {
  margin: 1rem;
}

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

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

.ml-1 {
  margin-left: 1rem;
}

.mr-1 {
  margin-right: 1rem;
}

.mb-1 {
  margin-bottom: 1rem;
}

.mt-1 {
  margin-top: 1rem;
}

.p-1 {
  padding: 1rem;
}

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

.py-1 {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.pl-1 {
  padding-left: 1rem;
}

.pr-1 {
  padding-right: 1rem;
}

.pb-1 {
  padding-bottom: 1rem;
}

.pt-1 {
  padding-top: 1rem;
}

.gap-1 {
  gap: 1rem;
}

/* -------------- PIXELS ---------------- */
.m-1px {
  margin: 1px;
}

.mx-1px {
  margin-left: 1px;
  margin-right: 1px;
}

.my-1px {
  margin-top: 1px;
  margin-bottom: 1px;
}

.ml-1px {
  margin-left: 1px;
}

.mr-1px {
  margin-right: 1px;
}

.mb-1px {
  margin-bottom: 1px;
}

.mt-1px {
  margin-top: 1px;
}

.p-1px {
  padding: 1px;
}

.px-1px {
  padding-left: 1px;
  padding-right: 1px;
}

.py-1px {
  padding-top: 1px;
  padding-bottom: 1px;
}

.pl-1px {
  padding-left: 1px;
}

.pr-1px {
  padding-right: 1px;
}

.pb-1px {
  padding-bottom: 1px;
}

.pt-1px {
  padding-top: 1px;
}

.gap-1px {
  gap: 1px;
}

/* -------------- REMS ---------------- */
.m-2 {
  margin: 2rem;
}

.mx-2 {
  margin-left: 2rem;
  margin-right: 2rem;
}

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

.ml-2 {
  margin-left: 2rem;
}

.mr-2 {
  margin-right: 2rem;
}

.mb-2 {
  margin-bottom: 2rem;
}

.mt-2 {
  margin-top: 2rem;
}

.p-2 {
  padding: 2rem;
}

.px-2 {
  padding-left: 2rem;
  padding-right: 2rem;
}

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

.pl-2 {
  padding-left: 2rem;
}

.pr-2 {
  padding-right: 2rem;
}

.pb-2 {
  padding-bottom: 2rem;
}

.pt-2 {
  padding-top: 2rem;
}

.gap-2 {
  gap: 2rem;
}

/* -------------- PIXELS ---------------- */
.m-2px {
  margin: 2px;
}

.mx-2px {
  margin-left: 2px;
  margin-right: 2px;
}

.my-2px {
  margin-top: 2px;
  margin-bottom: 2px;
}

.ml-2px {
  margin-left: 2px;
}

.mr-2px {
  margin-right: 2px;
}

.mb-2px {
  margin-bottom: 2px;
}

.mt-2px {
  margin-top: 2px;
}

.p-2px {
  padding: 2px;
}

.px-2px {
  padding-left: 2px;
  padding-right: 2px;
}

.py-2px {
  padding-top: 2px;
  padding-bottom: 2px;
}

.pl-2px {
  padding-left: 2px;
}

.pr-2px {
  padding-right: 2px;
}

.pb-2px {
  padding-bottom: 2px;
}

.pt-2px {
  padding-top: 2px;
}

.gap-2px {
  gap: 2px;
}

/* -------------- REMS ---------------- */
.m-3 {
  margin: 3rem;
}

.mx-3 {
  margin-left: 3rem;
  margin-right: 3rem;
}

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

.ml-3 {
  margin-left: 3rem;
}

.mr-3 {
  margin-right: 3rem;
}

.mb-3 {
  margin-bottom: 3rem;
}

.mt-3 {
  margin-top: 3rem;
}

.p-3 {
  padding: 3rem;
}

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

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

.pl-3 {
  padding-left: 3rem;
}

.pr-3 {
  padding-right: 3rem;
}

.pb-3 {
  padding-bottom: 3rem;
}

.pt-3 {
  padding-top: 3rem;
}

.gap-3 {
  gap: 3rem;
}

/* -------------- PIXELS ---------------- */
.m-3px {
  margin: 3px;
}

.mx-3px {
  margin-left: 3px;
  margin-right: 3px;
}

.my-3px {
  margin-top: 3px;
  margin-bottom: 3px;
}

.ml-3px {
  margin-left: 3px;
}

.mr-3px {
  margin-right: 3px;
}

.mb-3px {
  margin-bottom: 3px;
}

.mt-3px {
  margin-top: 3px;
}

.p-3px {
  padding: 3px;
}

.px-3px {
  padding-left: 3px;
  padding-right: 3px;
}

.py-3px {
  padding-top: 3px;
  padding-bottom: 3px;
}

.pl-3px {
  padding-left: 3px;
}

.pr-3px {
  padding-right: 3px;
}

.pb-3px {
  padding-bottom: 3px;
}

.pt-3px {
  padding-top: 3px;
}

.gap-3px {
  gap: 3px;
}

/* -------------- REMS ---------------- */
.m-4 {
  margin: 4rem;
}

.mx-4 {
  margin-left: 4rem;
  margin-right: 4rem;
}

.my-4 {
  margin-top: 4rem;
  margin-bottom: 4rem;
}

.ml-4 {
  margin-left: 4rem;
}

.mr-4 {
  margin-right: 4rem;
}

.mb-4 {
  margin-bottom: 4rem;
}

.mt-4 {
  margin-top: 4rem;
}

.p-4 {
  padding: 4rem;
}

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

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

.pl-4 {
  padding-left: 4rem;
}

.pr-4 {
  padding-right: 4rem;
}

.pb-4 {
  padding-bottom: 4rem;
}

.pt-4 {
  padding-top: 4rem;
}

.gap-4 {
  gap: 4rem;
}

/* -------------- PIXELS ---------------- */
.m-4px {
  margin: 4px;
}

.mx-4px {
  margin-left: 4px;
  margin-right: 4px;
}

.my-4px {
  margin-top: 4px;
  margin-bottom: 4px;
}

.ml-4px {
  margin-left: 4px;
}

.mr-4px {
  margin-right: 4px;
}

.mb-4px {
  margin-bottom: 4px;
}

.mt-4px {
  margin-top: 4px;
}

.p-4px {
  padding: 4px;
}

.px-4px {
  padding-left: 4px;
  padding-right: 4px;
}

.py-4px {
  padding-top: 4px;
  padding-bottom: 4px;
}

.pl-4px {
  padding-left: 4px;
}

.pr-4px {
  padding-right: 4px;
}

.pb-4px {
  padding-bottom: 4px;
}

.pt-4px {
  padding-top: 4px;
}

.gap-4px {
  gap: 4px;
}

/* -------------- REMS ---------------- */
.m-5 {
  margin: 5rem;
}

.mx-5 {
  margin-left: 5rem;
  margin-right: 5rem;
}

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

.ml-5 {
  margin-left: 5rem;
}

.mr-5 {
  margin-right: 5rem;
}

.mb-5 {
  margin-bottom: 5rem;
}

.mt-5 {
  margin-top: 5rem;
}

.p-5 {
  padding: 5rem;
}

.px-5 {
  padding-left: 5rem;
  padding-right: 5rem;
}

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

.pl-5 {
  padding-left: 5rem;
}

.pr-5 {
  padding-right: 5rem;
}

.pb-5 {
  padding-bottom: 5rem;
}

.pt-5 {
  padding-top: 5rem;
}

.gap-5 {
  gap: 5rem;
}

/* -------------- PIXELS ---------------- */
.m-5px {
  margin: 5px;
}

.mx-5px {
  margin-left: 5px;
  margin-right: 5px;
}

.my-5px {
  margin-top: 5px;
  margin-bottom: 5px;
}

.ml-5px {
  margin-left: 5px;
}

.mr-5px {
  margin-right: 5px;
}

.mb-5px {
  margin-bottom: 5px;
}

.mt-5px {
  margin-top: 5px;
}

.p-5px {
  padding: 5px;
}

.px-5px {
  padding-left: 5px;
  padding-right: 5px;
}

.py-5px {
  padding-top: 5px;
  padding-bottom: 5px;
}

.pl-5px {
  padding-left: 5px;
}

.pr-5px {
  padding-right: 5px;
}

.pb-5px {
  padding-bottom: 5px;
}

.pt-5px {
  padding-top: 5px;
}

.gap-5px {
  gap: 5px;
}

/* -------------- REMS ---------------- */
.m-6 {
  margin: 6rem;
}

.mx-6 {
  margin-left: 6rem;
  margin-right: 6rem;
}

.my-6 {
  margin-top: 6rem;
  margin-bottom: 6rem;
}

.ml-6 {
  margin-left: 6rem;
}

.mr-6 {
  margin-right: 6rem;
}

.mb-6 {
  margin-bottom: 6rem;
}

.mt-6 {
  margin-top: 6rem;
}

.p-6 {
  padding: 6rem;
}

.px-6 {
  padding-left: 6rem;
  padding-right: 6rem;
}

.py-6 {
  padding-top: 6rem;
  padding-bottom: 6rem;
}

.pl-6 {
  padding-left: 6rem;
}

.pr-6 {
  padding-right: 6rem;
}

.pb-6 {
  padding-bottom: 6rem;
}

.pt-6 {
  padding-top: 6rem;
}

.gap-6 {
  gap: 6rem;
}

/* -------------- PIXELS ---------------- */
.m-6px {
  margin: 6px;
}

.mx-6px {
  margin-left: 6px;
  margin-right: 6px;
}

.my-6px {
  margin-top: 6px;
  margin-bottom: 6px;
}

.ml-6px {
  margin-left: 6px;
}

.mr-6px {
  margin-right: 6px;
}

.mb-6px {
  margin-bottom: 6px;
}

.mt-6px {
  margin-top: 6px;
}

.p-6px {
  padding: 6px;
}

.px-6px {
  padding-left: 6px;
  padding-right: 6px;
}

.py-6px {
  padding-top: 6px;
  padding-bottom: 6px;
}

.pl-6px {
  padding-left: 6px;
}

.pr-6px {
  padding-right: 6px;
}

.pb-6px {
  padding-bottom: 6px;
}

.pt-6px {
  padding-top: 6px;
}

.gap-6px {
  gap: 6px;
}

/* -------------- REMS ---------------- */
.m-7 {
  margin: 7rem;
}

.mx-7 {
  margin-left: 7rem;
  margin-right: 7rem;
}

.my-7 {
  margin-top: 7rem;
  margin-bottom: 7rem;
}

.ml-7 {
  margin-left: 7rem;
}

.mr-7 {
  margin-right: 7rem;
}

.mb-7 {
  margin-bottom: 7rem;
}

.mt-7 {
  margin-top: 7rem;
}

.p-7 {
  padding: 7rem;
}

.px-7 {
  padding-left: 7rem;
  padding-right: 7rem;
}

.py-7 {
  padding-top: 7rem;
  padding-bottom: 7rem;
}

.pl-7 {
  padding-left: 7rem;
}

.pr-7 {
  padding-right: 7rem;
}

.pb-7 {
  padding-bottom: 7rem;
}

.pt-7 {
  padding-top: 7rem;
}

.gap-7 {
  gap: 7rem;
}

/* -------------- PIXELS ---------------- */
.m-7px {
  margin: 7px;
}

.mx-7px {
  margin-left: 7px;
  margin-right: 7px;
}

.my-7px {
  margin-top: 7px;
  margin-bottom: 7px;
}

.ml-7px {
  margin-left: 7px;
}

.mr-7px {
  margin-right: 7px;
}

.mb-7px {
  margin-bottom: 7px;
}

.mt-7px {
  margin-top: 7px;
}

.p-7px {
  padding: 7px;
}

.px-7px {
  padding-left: 7px;
  padding-right: 7px;
}

.py-7px {
  padding-top: 7px;
  padding-bottom: 7px;
}

.pl-7px {
  padding-left: 7px;
}

.pr-7px {
  padding-right: 7px;
}

.pb-7px {
  padding-bottom: 7px;
}

.pt-7px {
  padding-top: 7px;
}

.gap-7px {
  gap: 7px;
}

/* -------------- REMS ---------------- */
.m-8 {
  margin: 8rem;
}

.mx-8 {
  margin-left: 8rem;
  margin-right: 8rem;
}

.my-8 {
  margin-top: 8rem;
  margin-bottom: 8rem;
}

.ml-8 {
  margin-left: 8rem;
}

.mr-8 {
  margin-right: 8rem;
}

.mb-8 {
  margin-bottom: 8rem;
}

.mt-8 {
  margin-top: 8rem;
}

.p-8 {
  padding: 8rem;
}

.px-8 {
  padding-left: 8rem;
  padding-right: 8rem;
}

.py-8 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

.pl-8 {
  padding-left: 8rem;
}

.pr-8 {
  padding-right: 8rem;
}

.pb-8 {
  padding-bottom: 8rem;
}

.pt-8 {
  padding-top: 8rem;
}

.gap-8 {
  gap: 8rem;
}

/* -------------- PIXELS ---------------- */
.m-8px {
  margin: 8px;
}

.mx-8px {
  margin-left: 8px;
  margin-right: 8px;
}

.my-8px {
  margin-top: 8px;
  margin-bottom: 8px;
}

.ml-8px {
  margin-left: 8px;
}

.mr-8px {
  margin-right: 8px;
}

.mb-8px {
  margin-bottom: 8px;
}

.mt-8px {
  margin-top: 8px;
}

.p-8px {
  padding: 8px;
}

.px-8px {
  padding-left: 8px;
  padding-right: 8px;
}

.py-8px {
  padding-top: 8px;
  padding-bottom: 8px;
}

.pl-8px {
  padding-left: 8px;
}

.pr-8px {
  padding-right: 8px;
}

.pb-8px {
  padding-bottom: 8px;
}

.pt-8px {
  padding-top: 8px;
}

.gap-8px {
  gap: 8px;
}

/* -------------- REMS ---------------- */
.m-9 {
  margin: 9rem;
}

.mx-9 {
  margin-left: 9rem;
  margin-right: 9rem;
}

.my-9 {
  margin-top: 9rem;
  margin-bottom: 9rem;
}

.ml-9 {
  margin-left: 9rem;
}

.mr-9 {
  margin-right: 9rem;
}

.mb-9 {
  margin-bottom: 9rem;
}

.mt-9 {
  margin-top: 9rem;
}

.p-9 {
  padding: 9rem;
}

.px-9 {
  padding-left: 9rem;
  padding-right: 9rem;
}

.py-9 {
  padding-top: 9rem;
  padding-bottom: 9rem;
}

.pl-9 {
  padding-left: 9rem;
}

.pr-9 {
  padding-right: 9rem;
}

.pb-9 {
  padding-bottom: 9rem;
}

.pt-9 {
  padding-top: 9rem;
}

.gap-9 {
  gap: 9rem;
}

/* -------------- PIXELS ---------------- */
.m-9px {
  margin: 9px;
}

.mx-9px {
  margin-left: 9px;
  margin-right: 9px;
}

.my-9px {
  margin-top: 9px;
  margin-bottom: 9px;
}

.ml-9px {
  margin-left: 9px;
}

.mr-9px {
  margin-right: 9px;
}

.mb-9px {
  margin-bottom: 9px;
}

.mt-9px {
  margin-top: 9px;
}

.p-9px {
  padding: 9px;
}

.px-9px {
  padding-left: 9px;
  padding-right: 9px;
}

.py-9px {
  padding-top: 9px;
  padding-bottom: 9px;
}

.pl-9px {
  padding-left: 9px;
}

.pr-9px {
  padding-right: 9px;
}

.pb-9px {
  padding-bottom: 9px;
}

.pt-9px {
  padding-top: 9px;
}

.gap-9px {
  gap: 9px;
}

/* -------------- REMS ---------------- */
.m-10 {
  margin: 10rem;
}

.mx-10 {
  margin-left: 10rem;
  margin-right: 10rem;
}

.my-10 {
  margin-top: 10rem;
  margin-bottom: 10rem;
}

.ml-10 {
  margin-left: 10rem;
}

.mr-10 {
  margin-right: 10rem;
}

.mb-10 {
  margin-bottom: 10rem;
}

.mt-10 {
  margin-top: 10rem;
}

.p-10 {
  padding: 10rem;
}

.px-10 {
  padding-left: 10rem;
  padding-right: 10rem;
}

.py-10 {
  padding-top: 10rem;
  padding-bottom: 10rem;
}

.pl-10 {
  padding-left: 10rem;
}

.pr-10 {
  padding-right: 10rem;
}

.pb-10 {
  padding-bottom: 10rem;
}

.pt-10 {
  padding-top: 10rem;
}

.gap-10 {
  gap: 10rem;
}

/* -------------- PIXELS ---------------- */
.m-10px {
  margin: 10px;
}

.mx-10px {
  margin-left: 10px;
  margin-right: 10px;
}

.my-10px {
  margin-top: 10px;
  margin-bottom: 10px;
}

.ml-10px {
  margin-left: 10px;
}

.mr-10px {
  margin-right: 10px;
}

.mb-10px {
  margin-bottom: 10px;
}

.mt-10px {
  margin-top: 10px;
}

.p-10px {
  padding: 10px;
}

.px-10px {
  padding-left: 10px;
  padding-right: 10px;
}

.py-10px {
  padding-top: 10px;
  padding-bottom: 10px;
}

.pl-10px {
  padding-left: 10px;
}

.pr-10px {
  padding-right: 10px;
}

.pb-10px {
  padding-bottom: 10px;
}

.pt-10px {
  padding-top: 10px;
}

.gap-10px {
  gap: 10px;
}

/* -------------- REMS ---------------- */
.m-12 {
  margin: 12rem;
}

.mx-12 {
  margin-left: 12rem;
  margin-right: 12rem;
}

.my-12 {
  margin-top: 12rem;
  margin-bottom: 12rem;
}

.ml-12 {
  margin-left: 12rem;
}

.mr-12 {
  margin-right: 12rem;
}

.mb-12 {
  margin-bottom: 12rem;
}

.mt-12 {
  margin-top: 12rem;
}

.p-12 {
  padding: 12rem;
}

.px-12 {
  padding-left: 12rem;
  padding-right: 12rem;
}

.py-12 {
  padding-top: 12rem;
  padding-bottom: 12rem;
}

.pl-12 {
  padding-left: 12rem;
}

.pr-12 {
  padding-right: 12rem;
}

.pb-12 {
  padding-bottom: 12rem;
}

.pt-12 {
  padding-top: 12rem;
}

.gap-12 {
  gap: 12rem;
}

/* -------------- PIXELS ---------------- */
.m-12px {
  margin: 12px;
}

.mx-12px {
  margin-left: 12px;
  margin-right: 12px;
}

.my-12px {
  margin-top: 12px;
  margin-bottom: 12px;
}

.ml-12px {
  margin-left: 12px;
}

.mr-12px {
  margin-right: 12px;
}

.mb-12px {
  margin-bottom: 12px;
}

.mt-12px {
  margin-top: 12px;
}

.p-12px {
  padding: 12px;
}

.px-12px {
  padding-left: 12px;
  padding-right: 12px;
}

.py-12px {
  padding-top: 12px;
  padding-bottom: 12px;
}

.pl-12px {
  padding-left: 12px;
}

.pr-12px {
  padding-right: 12px;
}

.pb-12px {
  padding-bottom: 12px;
}

.pt-12px {
  padding-top: 12px;
}

.gap-12px {
  gap: 12px;
}

/* -------------- REMS ---------------- */
.m-13 {
  margin: 13rem;
}

.mx-13 {
  margin-left: 13rem;
  margin-right: 13rem;
}

.my-13 {
  margin-top: 13rem;
  margin-bottom: 13rem;
}

.ml-13 {
  margin-left: 13rem;
}

.mr-13 {
  margin-right: 13rem;
}

.mb-13 {
  margin-bottom: 13rem;
}

.mt-13 {
  margin-top: 13rem;
}

.p-13 {
  padding: 13rem;
}

.px-13 {
  padding-left: 13rem;
  padding-right: 13rem;
}

.py-13 {
  padding-top: 13rem;
  padding-bottom: 13rem;
}

.pl-13 {
  padding-left: 13rem;
}

.pr-13 {
  padding-right: 13rem;
}

.pb-13 {
  padding-bottom: 13rem;
}

.pt-13 {
  padding-top: 13rem;
}

.gap-13 {
  gap: 13rem;
}

/* -------------- PIXELS ---------------- */
.m-13px {
  margin: 13px;
}

.mx-13px {
  margin-left: 13px;
  margin-right: 13px;
}

.my-13px {
  margin-top: 13px;
  margin-bottom: 13px;
}

.ml-13px {
  margin-left: 13px;
}

.mr-13px {
  margin-right: 13px;
}

.mb-13px {
  margin-bottom: 13px;
}

.mt-13px {
  margin-top: 13px;
}

.p-13px {
  padding: 13px;
}

.px-13px {
  padding-left: 13px;
  padding-right: 13px;
}

.py-13px {
  padding-top: 13px;
  padding-bottom: 13px;
}

.pl-13px {
  padding-left: 13px;
}

.pr-13px {
  padding-right: 13px;
}

.pb-13px {
  padding-bottom: 13px;
}

.pt-13px {
  padding-top: 13px;
}

.gap-13px {
  gap: 13px;
}

/* -------------- REMS ---------------- */
.m-14 {
  margin: 14rem;
}

.mx-14 {
  margin-left: 14rem;
  margin-right: 14rem;
}

.my-14 {
  margin-top: 14rem;
  margin-bottom: 14rem;
}

.ml-14 {
  margin-left: 14rem;
}

.mr-14 {
  margin-right: 14rem;
}

.mb-14 {
  margin-bottom: 14rem;
}

.mt-14 {
  margin-top: 14rem;
}

.p-14 {
  padding: 14rem;
}

.px-14 {
  padding-left: 14rem;
  padding-right: 14rem;
}

.py-14 {
  padding-top: 14rem;
  padding-bottom: 14rem;
}

.pl-14 {
  padding-left: 14rem;
}

.pr-14 {
  padding-right: 14rem;
}

.pb-14 {
  padding-bottom: 14rem;
}

.pt-14 {
  padding-top: 14rem;
}

.gap-14 {
  gap: 14rem;
}

/* -------------- PIXELS ---------------- */
.m-14px {
  margin: 14px;
}

.mx-14px {
  margin-left: 14px;
  margin-right: 14px;
}

.my-14px {
  margin-top: 14px;
  margin-bottom: 14px;
}

.ml-14px {
  margin-left: 14px;
}

.mr-14px {
  margin-right: 14px;
}

.mb-14px {
  margin-bottom: 14px;
}

.mt-14px {
  margin-top: 14px;
}

.p-14px {
  padding: 14px;
}

.px-14px {
  padding-left: 14px;
  padding-right: 14px;
}

.py-14px {
  padding-top: 14px;
  padding-bottom: 14px;
}

.pl-14px {
  padding-left: 14px;
}

.pr-14px {
  padding-right: 14px;
}

.pb-14px {
  padding-bottom: 14px;
}

.pt-14px {
  padding-top: 14px;
}

.gap-14px {
  gap: 14px;
}

/* -------------- REMS ---------------- */
.m-15 {
  margin: 15rem;
}

.mx-15 {
  margin-left: 15rem;
  margin-right: 15rem;
}

.my-15 {
  margin-top: 15rem;
  margin-bottom: 15rem;
}

.ml-15 {
  margin-left: 15rem;
}

.mr-15 {
  margin-right: 15rem;
}

.mb-15 {
  margin-bottom: 15rem;
}

.mt-15 {
  margin-top: 15rem;
}

.p-15 {
  padding: 15rem;
}

.px-15 {
  padding-left: 15rem;
  padding-right: 15rem;
}

.py-15 {
  padding-top: 15rem;
  padding-bottom: 15rem;
}

.pl-15 {
  padding-left: 15rem;
}

.pr-15 {
  padding-right: 15rem;
}

.pb-15 {
  padding-bottom: 15rem;
}

.pt-15 {
  padding-top: 15rem;
}

.gap-15 {
  gap: 15rem;
}

/* -------------- PIXELS ---------------- */
.m-15px {
  margin: 15px;
}

.mx-15px {
  margin-left: 15px;
  margin-right: 15px;
}

.my-15px {
  margin-top: 15px;
  margin-bottom: 15px;
}

.ml-15px {
  margin-left: 15px;
}

.mr-15px {
  margin-right: 15px;
}

.mb-15px {
  margin-bottom: 15px;
}

.mt-15px {
  margin-top: 15px;
}

.p-15px {
  padding: 15px;
}

.px-15px {
  padding-left: 15px;
  padding-right: 15px;
}

.py-15px {
  padding-top: 15px;
  padding-bottom: 15px;
}

.pl-15px {
  padding-left: 15px;
}

.pr-15px {
  padding-right: 15px;
}

.pb-15px {
  padding-bottom: 15px;
}

.pt-15px {
  padding-top: 15px;
}

.gap-15px {
  gap: 15px;
}

/* -------------- REMS ---------------- */
.m-16 {
  margin: 16rem;
}

.mx-16 {
  margin-left: 16rem;
  margin-right: 16rem;
}

.my-16 {
  margin-top: 16rem;
  margin-bottom: 16rem;
}

.ml-16 {
  margin-left: 16rem;
}

.mr-16 {
  margin-right: 16rem;
}

.mb-16 {
  margin-bottom: 16rem;
}

.mt-16 {
  margin-top: 16rem;
}

.p-16 {
  padding: 16rem;
}

.px-16 {
  padding-left: 16rem;
  padding-right: 16rem;
}

.py-16 {
  padding-top: 16rem;
  padding-bottom: 16rem;
}

.pl-16 {
  padding-left: 16rem;
}

.pr-16 {
  padding-right: 16rem;
}

.pb-16 {
  padding-bottom: 16rem;
}

.pt-16 {
  padding-top: 16rem;
}

.gap-16 {
  gap: 16rem;
}

/* -------------- PIXELS ---------------- */
.m-16px {
  margin: 16px;
}

.mx-16px {
  margin-left: 16px;
  margin-right: 16px;
}

.my-16px {
  margin-top: 16px;
  margin-bottom: 16px;
}

.ml-16px {
  margin-left: 16px;
}

.mr-16px {
  margin-right: 16px;
}

.mb-16px {
  margin-bottom: 16px;
}

.mt-16px {
  margin-top: 16px;
}

.p-16px {
  padding: 16px;
}

.px-16px {
  padding-left: 16px;
  padding-right: 16px;
}

.py-16px {
  padding-top: 16px;
  padding-bottom: 16px;
}

.pl-16px {
  padding-left: 16px;
}

.pr-16px {
  padding-right: 16px;
}

.pb-16px {
  padding-bottom: 16px;
}

.pt-16px {
  padding-top: 16px;
}

.gap-16px {
  gap: 16px;
}

/* -------------- REMS ---------------- */
.m-17 {
  margin: 17rem;
}

.mx-17 {
  margin-left: 17rem;
  margin-right: 17rem;
}

.my-17 {
  margin-top: 17rem;
  margin-bottom: 17rem;
}

.ml-17 {
  margin-left: 17rem;
}

.mr-17 {
  margin-right: 17rem;
}

.mb-17 {
  margin-bottom: 17rem;
}

.mt-17 {
  margin-top: 17rem;
}

.p-17 {
  padding: 17rem;
}

.px-17 {
  padding-left: 17rem;
  padding-right: 17rem;
}

.py-17 {
  padding-top: 17rem;
  padding-bottom: 17rem;
}

.pl-17 {
  padding-left: 17rem;
}

.pr-17 {
  padding-right: 17rem;
}

.pb-17 {
  padding-bottom: 17rem;
}

.pt-17 {
  padding-top: 17rem;
}

.gap-17 {
  gap: 17rem;
}

/* -------------- PIXELS ---------------- */
.m-17px {
  margin: 17px;
}

.mx-17px {
  margin-left: 17px;
  margin-right: 17px;
}

.my-17px {
  margin-top: 17px;
  margin-bottom: 17px;
}

.ml-17px {
  margin-left: 17px;
}

.mr-17px {
  margin-right: 17px;
}

.mb-17px {
  margin-bottom: 17px;
}

.mt-17px {
  margin-top: 17px;
}

.p-17px {
  padding: 17px;
}

.px-17px {
  padding-left: 17px;
  padding-right: 17px;
}

.py-17px {
  padding-top: 17px;
  padding-bottom: 17px;
}

.pl-17px {
  padding-left: 17px;
}

.pr-17px {
  padding-right: 17px;
}

.pb-17px {
  padding-bottom: 17px;
}

.pt-17px {
  padding-top: 17px;
}

.gap-17px {
  gap: 17px;
}

/* -------------- REMS ---------------- */
.m-18 {
  margin: 18rem;
}

.mx-18 {
  margin-left: 18rem;
  margin-right: 18rem;
}

.my-18 {
  margin-top: 18rem;
  margin-bottom: 18rem;
}

.ml-18 {
  margin-left: 18rem;
}

.mr-18 {
  margin-right: 18rem;
}

.mb-18 {
  margin-bottom: 18rem;
}

.mt-18 {
  margin-top: 18rem;
}

.p-18 {
  padding: 18rem;
}

.px-18 {
  padding-left: 18rem;
  padding-right: 18rem;
}

.py-18 {
  padding-top: 18rem;
  padding-bottom: 18rem;
}

.pl-18 {
  padding-left: 18rem;
}

.pr-18 {
  padding-right: 18rem;
}

.pb-18 {
  padding-bottom: 18rem;
}

.pt-18 {
  padding-top: 18rem;
}

.gap-18 {
  gap: 18rem;
}

/* -------------- PIXELS ---------------- */
.m-18px {
  margin: 18px;
}

.mx-18px {
  margin-left: 18px;
  margin-right: 18px;
}

.my-18px {
  margin-top: 18px;
  margin-bottom: 18px;
}

.ml-18px {
  margin-left: 18px;
}

.mr-18px {
  margin-right: 18px;
}

.mb-18px {
  margin-bottom: 18px;
}

.mt-18px {
  margin-top: 18px;
}

.p-18px {
  padding: 18px;
}

.px-18px {
  padding-left: 18px;
  padding-right: 18px;
}

.py-18px {
  padding-top: 18px;
  padding-bottom: 18px;
}

.pl-18px {
  padding-left: 18px;
}

.pr-18px {
  padding-right: 18px;
}

.pb-18px {
  padding-bottom: 18px;
}

.pt-18px {
  padding-top: 18px;
}

.gap-18px {
  gap: 18px;
}

/* -------------- REMS ---------------- */
.m-19 {
  margin: 19rem;
}

.mx-19 {
  margin-left: 19rem;
  margin-right: 19rem;
}

.my-19 {
  margin-top: 19rem;
  margin-bottom: 19rem;
}

.ml-19 {
  margin-left: 19rem;
}

.mr-19 {
  margin-right: 19rem;
}

.mb-19 {
  margin-bottom: 19rem;
}

.mt-19 {
  margin-top: 19rem;
}

.p-19 {
  padding: 19rem;
}

.px-19 {
  padding-left: 19rem;
  padding-right: 19rem;
}

.py-19 {
  padding-top: 19rem;
  padding-bottom: 19rem;
}

.pl-19 {
  padding-left: 19rem;
}

.pr-19 {
  padding-right: 19rem;
}

.pb-19 {
  padding-bottom: 19rem;
}

.pt-19 {
  padding-top: 19rem;
}

.gap-19 {
  gap: 19rem;
}

/* -------------- PIXELS ---------------- */
.m-19px {
  margin: 19px;
}

.mx-19px {
  margin-left: 19px;
  margin-right: 19px;
}

.my-19px {
  margin-top: 19px;
  margin-bottom: 19px;
}

.ml-19px {
  margin-left: 19px;
}

.mr-19px {
  margin-right: 19px;
}

.mb-19px {
  margin-bottom: 19px;
}

.mt-19px {
  margin-top: 19px;
}

.p-19px {
  padding: 19px;
}

.px-19px {
  padding-left: 19px;
  padding-right: 19px;
}

.py-19px {
  padding-top: 19px;
  padding-bottom: 19px;
}

.pl-19px {
  padding-left: 19px;
}

.pr-19px {
  padding-right: 19px;
}

.pb-19px {
  padding-bottom: 19px;
}

.pt-19px {
  padding-top: 19px;
}

.gap-19px {
  gap: 19px;
}

/* -------------- REMS ---------------- */
.m-20 {
  margin: 20rem;
}

.mx-20 {
  margin-left: 20rem;
  margin-right: 20rem;
}

.my-20 {
  margin-top: 20rem;
  margin-bottom: 20rem;
}

.ml-20 {
  margin-left: 20rem;
}

.mr-20 {
  margin-right: 20rem;
}

.mb-20 {
  margin-bottom: 20rem;
}

.mt-20 {
  margin-top: 20rem;
}

.p-20 {
  padding: 20rem;
}

.px-20 {
  padding-left: 20rem;
  padding-right: 20rem;
}

.py-20 {
  padding-top: 20rem;
  padding-bottom: 20rem;
}

.pl-20 {
  padding-left: 20rem;
}

.pr-20 {
  padding-right: 20rem;
}

.pb-20 {
  padding-bottom: 20rem;
}

.pt-20 {
  padding-top: 20rem;
}

.gap-20 {
  gap: 20rem;
}

/* -------------- PIXELS ---------------- */
.m-20px {
  margin: 20px;
}

.mx-20px {
  margin-left: 20px;
  margin-right: 20px;
}

.my-20px {
  margin-top: 20px;
  margin-bottom: 20px;
}

.ml-20px {
  margin-left: 20px;
}

.mr-20px {
  margin-right: 20px;
}

.mb-20px {
  margin-bottom: 20px;
}

.mt-20px {
  margin-top: 20px;
}

.p-20px {
  padding: 20px;
}

.px-20px {
  padding-left: 20px;
  padding-right: 20px;
}

.py-20px {
  padding-top: 20px;
  padding-bottom: 20px;
}

.pl-20px {
  padding-left: 20px;
}

.pr-20px {
  padding-right: 20px;
}

.pb-20px {
  padding-bottom: 20px;
}

.pt-20px {
  padding-top: 20px;
}

.gap-20px {
  gap: 20px;
}

/* -------------- REMS ---------------- */
.m-22 {
  margin: 22rem;
}

.mx-22 {
  margin-left: 22rem;
  margin-right: 22rem;
}

.my-22 {
  margin-top: 22rem;
  margin-bottom: 22rem;
}

.ml-22 {
  margin-left: 22rem;
}

.mr-22 {
  margin-right: 22rem;
}

.mb-22 {
  margin-bottom: 22rem;
}

.mt-22 {
  margin-top: 22rem;
}

.p-22 {
  padding: 22rem;
}

.px-22 {
  padding-left: 22rem;
  padding-right: 22rem;
}

.py-22 {
  padding-top: 22rem;
  padding-bottom: 22rem;
}

.pl-22 {
  padding-left: 22rem;
}

.pr-22 {
  padding-right: 22rem;
}

.pb-22 {
  padding-bottom: 22rem;
}

.pt-22 {
  padding-top: 22rem;
}

.gap-22 {
  gap: 22rem;
}

/* -------------- PIXELS ---------------- */
.m-22px {
  margin: 22px;
}

.mx-22px {
  margin-left: 22px;
  margin-right: 22px;
}

.my-22px {
  margin-top: 22px;
  margin-bottom: 22px;
}

.ml-22px {
  margin-left: 22px;
}

.mr-22px {
  margin-right: 22px;
}

.mb-22px {
  margin-bottom: 22px;
}

.mt-22px {
  margin-top: 22px;
}

.p-22px {
  padding: 22px;
}

.px-22px {
  padding-left: 22px;
  padding-right: 22px;
}

.py-22px {
  padding-top: 22px;
  padding-bottom: 22px;
}

.pl-22px {
  padding-left: 22px;
}

.pr-22px {
  padding-right: 22px;
}

.pb-22px {
  padding-bottom: 22px;
}

.pt-22px {
  padding-top: 22px;
}

.gap-22px {
  gap: 22px;
}

/* -------------- REMS ---------------- */
.m-24 {
  margin: 24rem;
}

.mx-24 {
  margin-left: 24rem;
  margin-right: 24rem;
}

.my-24 {
  margin-top: 24rem;
  margin-bottom: 24rem;
}

.ml-24 {
  margin-left: 24rem;
}

.mr-24 {
  margin-right: 24rem;
}

.mb-24 {
  margin-bottom: 24rem;
}

.mt-24 {
  margin-top: 24rem;
}

.p-24 {
  padding: 24rem;
}

.px-24 {
  padding-left: 24rem;
  padding-right: 24rem;
}

.py-24 {
  padding-top: 24rem;
  padding-bottom: 24rem;
}

.pl-24 {
  padding-left: 24rem;
}

.pr-24 {
  padding-right: 24rem;
}

.pb-24 {
  padding-bottom: 24rem;
}

.pt-24 {
  padding-top: 24rem;
}

.gap-24 {
  gap: 24rem;
}

/* -------------- PIXELS ---------------- */
.m-24px {
  margin: 24px;
}

.mx-24px {
  margin-left: 24px;
  margin-right: 24px;
}

.my-24px {
  margin-top: 24px;
  margin-bottom: 24px;
}

.ml-24px {
  margin-left: 24px;
}

.mr-24px {
  margin-right: 24px;
}

.mb-24px {
  margin-bottom: 24px;
}

.mt-24px {
  margin-top: 24px;
}

.p-24px {
  padding: 24px;
}

.px-24px {
  padding-left: 24px;
  padding-right: 24px;
}

.py-24px {
  padding-top: 24px;
  padding-bottom: 24px;
}

.pl-24px {
  padding-left: 24px;
}

.pr-24px {
  padding-right: 24px;
}

.pb-24px {
  padding-bottom: 24px;
}

.pt-24px {
  padding-top: 24px;
}

.gap-24px {
  gap: 24px;
}

/* -------------- REMS ---------------- */
.m-26 {
  margin: 26rem;
}

.mx-26 {
  margin-left: 26rem;
  margin-right: 26rem;
}

.my-26 {
  margin-top: 26rem;
  margin-bottom: 26rem;
}

.ml-26 {
  margin-left: 26rem;
}

.mr-26 {
  margin-right: 26rem;
}

.mb-26 {
  margin-bottom: 26rem;
}

.mt-26 {
  margin-top: 26rem;
}

.p-26 {
  padding: 26rem;
}

.px-26 {
  padding-left: 26rem;
  padding-right: 26rem;
}

.py-26 {
  padding-top: 26rem;
  padding-bottom: 26rem;
}

.pl-26 {
  padding-left: 26rem;
}

.pr-26 {
  padding-right: 26rem;
}

.pb-26 {
  padding-bottom: 26rem;
}

.pt-26 {
  padding-top: 26rem;
}

.gap-26 {
  gap: 26rem;
}

/* -------------- PIXELS ---------------- */
.m-26px {
  margin: 26px;
}

.mx-26px {
  margin-left: 26px;
  margin-right: 26px;
}

.my-26px {
  margin-top: 26px;
  margin-bottom: 26px;
}

.ml-26px {
  margin-left: 26px;
}

.mr-26px {
  margin-right: 26px;
}

.mb-26px {
  margin-bottom: 26px;
}

.mt-26px {
  margin-top: 26px;
}

.p-26px {
  padding: 26px;
}

.px-26px {
  padding-left: 26px;
  padding-right: 26px;
}

.py-26px {
  padding-top: 26px;
  padding-bottom: 26px;
}

.pl-26px {
  padding-left: 26px;
}

.pr-26px {
  padding-right: 26px;
}

.pb-26px {
  padding-bottom: 26px;
}

.pt-26px {
  padding-top: 26px;
}

.gap-26px {
  gap: 26px;
}

/* -------------- REMS ---------------- */
.m-28 {
  margin: 28rem;
}

.mx-28 {
  margin-left: 28rem;
  margin-right: 28rem;
}

.my-28 {
  margin-top: 28rem;
  margin-bottom: 28rem;
}

.ml-28 {
  margin-left: 28rem;
}

.mr-28 {
  margin-right: 28rem;
}

.mb-28 {
  margin-bottom: 28rem;
}

.mt-28 {
  margin-top: 28rem;
}

.p-28 {
  padding: 28rem;
}

.px-28 {
  padding-left: 28rem;
  padding-right: 28rem;
}

.py-28 {
  padding-top: 28rem;
  padding-bottom: 28rem;
}

.pl-28 {
  padding-left: 28rem;
}

.pr-28 {
  padding-right: 28rem;
}

.pb-28 {
  padding-bottom: 28rem;
}

.pt-28 {
  padding-top: 28rem;
}

.gap-28 {
  gap: 28rem;
}

/* -------------- PIXELS ---------------- */
.m-28px {
  margin: 28px;
}

.mx-28px {
  margin-left: 28px;
  margin-right: 28px;
}

.my-28px {
  margin-top: 28px;
  margin-bottom: 28px;
}

.ml-28px {
  margin-left: 28px;
}

.mr-28px {
  margin-right: 28px;
}

.mb-28px {
  margin-bottom: 28px;
}

.mt-28px {
  margin-top: 28px;
}

.p-28px {
  padding: 28px;
}

.px-28px {
  padding-left: 28px;
  padding-right: 28px;
}

.py-28px {
  padding-top: 28px;
  padding-bottom: 28px;
}

.pl-28px {
  padding-left: 28px;
}

.pr-28px {
  padding-right: 28px;
}

.pb-28px {
  padding-bottom: 28px;
}

.pt-28px {
  padding-top: 28px;
}

.gap-28px {
  gap: 28px;
}

/* -------------- REMS ---------------- */
.m-30 {
  margin: 30rem;
}

.mx-30 {
  margin-left: 30rem;
  margin-right: 30rem;
}

.my-30 {
  margin-top: 30rem;
  margin-bottom: 30rem;
}

.ml-30 {
  margin-left: 30rem;
}

.mr-30 {
  margin-right: 30rem;
}

.mb-30 {
  margin-bottom: 30rem;
}

.mt-30 {
  margin-top: 30rem;
}

.p-30 {
  padding: 30rem;
}

.px-30 {
  padding-left: 30rem;
  padding-right: 30rem;
}

.py-30 {
  padding-top: 30rem;
  padding-bottom: 30rem;
}

.pl-30 {
  padding-left: 30rem;
}

.pr-30 {
  padding-right: 30rem;
}

.pb-30 {
  padding-bottom: 30rem;
}

.pt-30 {
  padding-top: 30rem;
}

.gap-30 {
  gap: 30rem;
}

/* -------------- PIXELS ---------------- */
.m-30px {
  margin: 30px;
}

.mx-30px {
  margin-left: 30px;
  margin-right: 30px;
}

.my-30px {
  margin-top: 30px;
  margin-bottom: 30px;
}

.ml-30px {
  margin-left: 30px;
}

.mr-30px {
  margin-right: 30px;
}

.mb-30px {
  margin-bottom: 30px;
}

.mt-30px {
  margin-top: 30px;
}

.p-30px {
  padding: 30px;
}

.px-30px {
  padding-left: 30px;
  padding-right: 30px;
}

.py-30px {
  padding-top: 30px;
  padding-bottom: 30px;
}

.pl-30px {
  padding-left: 30px;
}

.pr-30px {
  padding-right: 30px;
}

.pb-30px {
  padding-bottom: 30px;
}

.pt-30px {
  padding-top: 30px;
}

.gap-30px {
  gap: 30px;
}

/* -------------- REMS ---------------- */
.m-32 {
  margin: 32rem;
}

.mx-32 {
  margin-left: 32rem;
  margin-right: 32rem;
}

.my-32 {
  margin-top: 32rem;
  margin-bottom: 32rem;
}

.ml-32 {
  margin-left: 32rem;
}

.mr-32 {
  margin-right: 32rem;
}

.mb-32 {
  margin-bottom: 32rem;
}

.mt-32 {
  margin-top: 32rem;
}

.p-32 {
  padding: 32rem;
}

.px-32 {
  padding-left: 32rem;
  padding-right: 32rem;
}

.py-32 {
  padding-top: 32rem;
  padding-bottom: 32rem;
}

.pl-32 {
  padding-left: 32rem;
}

.pr-32 {
  padding-right: 32rem;
}

.pb-32 {
  padding-bottom: 32rem;
}

.pt-32 {
  padding-top: 32rem;
}

.gap-32 {
  gap: 32rem;
}

/* -------------- PIXELS ---------------- */
.m-32px {
  margin: 32px;
}

.mx-32px {
  margin-left: 32px;
  margin-right: 32px;
}

.my-32px {
  margin-top: 32px;
  margin-bottom: 32px;
}

.ml-32px {
  margin-left: 32px;
}

.mr-32px {
  margin-right: 32px;
}

.mb-32px {
  margin-bottom: 32px;
}

.mt-32px {
  margin-top: 32px;
}

.p-32px {
  padding: 32px;
}

.px-32px {
  padding-left: 32px;
  padding-right: 32px;
}

.py-32px {
  padding-top: 32px;
  padding-bottom: 32px;
}

.pl-32px {
  padding-left: 32px;
}

.pr-32px {
  padding-right: 32px;
}

.pb-32px {
  padding-bottom: 32px;
}

.pt-32px {
  padding-top: 32px;
}

.gap-32px {
  gap: 32px;
}

/* -------------- REMS ---------------- */
.m-33 {
  margin: 33rem;
}

.mx-33 {
  margin-left: 33rem;
  margin-right: 33rem;
}

.my-33 {
  margin-top: 33rem;
  margin-bottom: 33rem;
}

.ml-33 {
  margin-left: 33rem;
}

.mr-33 {
  margin-right: 33rem;
}

.mb-33 {
  margin-bottom: 33rem;
}

.mt-33 {
  margin-top: 33rem;
}

.p-33 {
  padding: 33rem;
}

.px-33 {
  padding-left: 33rem;
  padding-right: 33rem;
}

.py-33 {
  padding-top: 33rem;
  padding-bottom: 33rem;
}

.pl-33 {
  padding-left: 33rem;
}

.pr-33 {
  padding-right: 33rem;
}

.pb-33 {
  padding-bottom: 33rem;
}

.pt-33 {
  padding-top: 33rem;
}

.gap-33 {
  gap: 33rem;
}

/* -------------- PIXELS ---------------- */
.m-33px {
  margin: 33px;
}

.mx-33px {
  margin-left: 33px;
  margin-right: 33px;
}

.my-33px {
  margin-top: 33px;
  margin-bottom: 33px;
}

.ml-33px {
  margin-left: 33px;
}

.mr-33px {
  margin-right: 33px;
}

.mb-33px {
  margin-bottom: 33px;
}

.mt-33px {
  margin-top: 33px;
}

.p-33px {
  padding: 33px;
}

.px-33px {
  padding-left: 33px;
  padding-right: 33px;
}

.py-33px {
  padding-top: 33px;
  padding-bottom: 33px;
}

.pl-33px {
  padding-left: 33px;
}

.pr-33px {
  padding-right: 33px;
}

.pb-33px {
  padding-bottom: 33px;
}

.pt-33px {
  padding-top: 33px;
}

.gap-33px {
  gap: 33px;
}

/* -------------- REMS ---------------- */
.m-34 {
  margin: 34rem;
}

.mx-34 {
  margin-left: 34rem;
  margin-right: 34rem;
}

.my-34 {
  margin-top: 34rem;
  margin-bottom: 34rem;
}

.ml-34 {
  margin-left: 34rem;
}

.mr-34 {
  margin-right: 34rem;
}

.mb-34 {
  margin-bottom: 34rem;
}

.mt-34 {
  margin-top: 34rem;
}

.p-34 {
  padding: 34rem;
}

.px-34 {
  padding-left: 34rem;
  padding-right: 34rem;
}

.py-34 {
  padding-top: 34rem;
  padding-bottom: 34rem;
}

.pl-34 {
  padding-left: 34rem;
}

.pr-34 {
  padding-right: 34rem;
}

.pb-34 {
  padding-bottom: 34rem;
}

.pt-34 {
  padding-top: 34rem;
}

.gap-34 {
  gap: 34rem;
}

/* -------------- PIXELS ---------------- */
.m-34px {
  margin: 34px;
}

.mx-34px {
  margin-left: 34px;
  margin-right: 34px;
}

.my-34px {
  margin-top: 34px;
  margin-bottom: 34px;
}

.ml-34px {
  margin-left: 34px;
}

.mr-34px {
  margin-right: 34px;
}

.mb-34px {
  margin-bottom: 34px;
}

.mt-34px {
  margin-top: 34px;
}

.p-34px {
  padding: 34px;
}

.px-34px {
  padding-left: 34px;
  padding-right: 34px;
}

.py-34px {
  padding-top: 34px;
  padding-bottom: 34px;
}

.pl-34px {
  padding-left: 34px;
}

.pr-34px {
  padding-right: 34px;
}

.pb-34px {
  padding-bottom: 34px;
}

.pt-34px {
  padding-top: 34px;
}

.gap-34px {
  gap: 34px;
}

/* -------------- REMS ---------------- */
.m-64 {
  margin: 64rem;
}

.mx-64 {
  margin-left: 64rem;
  margin-right: 64rem;
}

.my-64 {
  margin-top: 64rem;
  margin-bottom: 64rem;
}

.ml-64 {
  margin-left: 64rem;
}

.mr-64 {
  margin-right: 64rem;
}

.mb-64 {
  margin-bottom: 64rem;
}

.mt-64 {
  margin-top: 64rem;
}

.p-64 {
  padding: 64rem;
}

.px-64 {
  padding-left: 64rem;
  padding-right: 64rem;
}

.py-64 {
  padding-top: 64rem;
  padding-bottom: 64rem;
}

.pl-64 {
  padding-left: 64rem;
}

.pr-64 {
  padding-right: 64rem;
}

.pb-64 {
  padding-bottom: 64rem;
}

.pt-64 {
  padding-top: 64rem;
}

.gap-64 {
  gap: 64rem;
}

/* -------------- PIXELS ---------------- */
.m-64px {
  margin: 64px;
}

.mx-64px {
  margin-left: 64px;
  margin-right: 64px;
}

.my-64px {
  margin-top: 64px;
  margin-bottom: 64px;
}

.ml-64px {
  margin-left: 64px;
}

.mr-64px {
  margin-right: 64px;
}

.mb-64px {
  margin-bottom: 64px;
}

.mt-64px {
  margin-top: 64px;
}

.p-64px {
  padding: 64px;
}

.px-64px {
  padding-left: 64px;
  padding-right: 64px;
}

.py-64px {
  padding-top: 64px;
  padding-bottom: 64px;
}

.pl-64px {
  padding-left: 64px;
}

.pr-64px {
  padding-right: 64px;
}

.pb-64px {
  padding-bottom: 64px;
}

.pt-64px {
  padding-top: 64px;
}

.gap-64px {
  gap: 64px;
}

.m-auto {
  margin: auto;
}

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

.my-auto {
  margin-top: auto;
  margin-bottom: auto;
}

.ml-auto {
  margin-left: auto;
}

.mr-auto {
  margin-right: auto;
}

.mb-auto {
  margin-bottom: auto;
}

.mt-auto {
  margin-top: auto;
}

.text-1 {
  font-size: 1rem;
}

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

.text-2 {
  font-size: 2rem;
}

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

.text-3 {
  font-size: 3rem;
}

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

.text-4 {
  font-size: 4rem;
}

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

.text-5 {
  font-size: 5rem;
}

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

.text-6 {
  font-size: 6rem;
}

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

.text-7 {
  font-size: 7rem;
}

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

.text-8 {
  font-size: 8rem;
}

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

.text-9 {
  font-size: 9rem;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.text-auto {
  font-size: autorem;
}

.text-autopx {
  font-size: autopx;
}

.w-1 {
  width: 1rem;
}

.h-1 {
  height: 1rem;
}

.max-w-1 {
  max-width: 1rem;
}

.max-h-1 {
  max-height: 1rem;
}

.min-w-1 {
  min-width: 1rem;
}

.min-h-1 {
  min-height: 1rem;
}

.w-2 {
  width: 2rem;
}

.h-2 {
  height: 2rem;
}

.max-w-2 {
  max-width: 2rem;
}

.max-h-2 {
  max-height: 2rem;
}

.min-w-2 {
  min-width: 2rem;
}

.min-h-2 {
  min-height: 2rem;
}

.w-3 {
  width: 3rem;
}

.h-3 {
  height: 3rem;
}

.max-w-3 {
  max-width: 3rem;
}

.max-h-3 {
  max-height: 3rem;
}

.min-w-3 {
  min-width: 3rem;
}

.min-h-3 {
  min-height: 3rem;
}

.w-4 {
  width: 4rem;
}

.h-4 {
  height: 4rem;
}

.max-w-4 {
  max-width: 4rem;
}

.max-h-4 {
  max-height: 4rem;
}

.min-w-4 {
  min-width: 4rem;
}

.min-h-4 {
  min-height: 4rem;
}

.w-5 {
  width: 5rem;
}

.h-5 {
  height: 5rem;
}

.max-w-5 {
  max-width: 5rem;
}

.max-h-5 {
  max-height: 5rem;
}

.min-w-5 {
  min-width: 5rem;
}

.min-h-5 {
  min-height: 5rem;
}

.w-6 {
  width: 6rem;
}

.h-6 {
  height: 6rem;
}

.max-w-6 {
  max-width: 6rem;
}

.max-h-6 {
  max-height: 6rem;
}

.min-w-6 {
  min-width: 6rem;
}

.min-h-6 {
  min-height: 6rem;
}

.w-7 {
  width: 7rem;
}

.h-7 {
  height: 7rem;
}

.max-w-7 {
  max-width: 7rem;
}

.max-h-7 {
  max-height: 7rem;
}

.min-w-7 {
  min-width: 7rem;
}

.min-h-7 {
  min-height: 7rem;
}

.w-8 {
  width: 8rem;
}

.h-8 {
  height: 8rem;
}

.max-w-8 {
  max-width: 8rem;
}

.max-h-8 {
  max-height: 8rem;
}

.min-w-8 {
  min-width: 8rem;
}

.min-h-8 {
  min-height: 8rem;
}

.w-9 {
  width: 9rem;
}

.h-9 {
  height: 9rem;
}

.max-w-9 {
  max-width: 9rem;
}

.max-h-9 {
  max-height: 9rem;
}

.min-w-9 {
  min-width: 9rem;
}

.min-h-9 {
  min-height: 9rem;
}

.w-10 {
  width: 10rem;
}

.h-10 {
  height: 10rem;
}

.max-w-10 {
  max-width: 10rem;
}

.max-h-10 {
  max-height: 10rem;
}

.min-w-10 {
  min-width: 10rem;
}

.min-h-10 {
  min-height: 10rem;
}

.w-12 {
  width: 12rem;
}

.h-12 {
  height: 12rem;
}

.max-w-12 {
  max-width: 12rem;
}

.max-h-12 {
  max-height: 12rem;
}

.min-w-12 {
  min-width: 12rem;
}

.min-h-12 {
  min-height: 12rem;
}

.w-13 {
  width: 13rem;
}

.h-13 {
  height: 13rem;
}

.max-w-13 {
  max-width: 13rem;
}

.max-h-13 {
  max-height: 13rem;
}

.min-w-13 {
  min-width: 13rem;
}

.min-h-13 {
  min-height: 13rem;
}

.w-14 {
  width: 14rem;
}

.h-14 {
  height: 14rem;
}

.max-w-14 {
  max-width: 14rem;
}

.max-h-14 {
  max-height: 14rem;
}

.min-w-14 {
  min-width: 14rem;
}

.min-h-14 {
  min-height: 14rem;
}

.w-15 {
  width: 15rem;
}

.h-15 {
  height: 15rem;
}

.max-w-15 {
  max-width: 15rem;
}

.max-h-15 {
  max-height: 15rem;
}

.min-w-15 {
  min-width: 15rem;
}

.min-h-15 {
  min-height: 15rem;
}

.w-16 {
  width: 16rem;
}

.h-16 {
  height: 16rem;
}

.max-w-16 {
  max-width: 16rem;
}

.max-h-16 {
  max-height: 16rem;
}

.min-w-16 {
  min-width: 16rem;
}

.min-h-16 {
  min-height: 16rem;
}

.w-17 {
  width: 17rem;
}

.h-17 {
  height: 17rem;
}

.max-w-17 {
  max-width: 17rem;
}

.max-h-17 {
  max-height: 17rem;
}

.min-w-17 {
  min-width: 17rem;
}

.min-h-17 {
  min-height: 17rem;
}

.w-18 {
  width: 18rem;
}

.h-18 {
  height: 18rem;
}

.max-w-18 {
  max-width: 18rem;
}

.max-h-18 {
  max-height: 18rem;
}

.min-w-18 {
  min-width: 18rem;
}

.min-h-18 {
  min-height: 18rem;
}

.w-19 {
  width: 19rem;
}

.h-19 {
  height: 19rem;
}

.max-w-19 {
  max-width: 19rem;
}

.max-h-19 {
  max-height: 19rem;
}

.min-w-19 {
  min-width: 19rem;
}

.min-h-19 {
  min-height: 19rem;
}

.w-20 {
  width: 20rem;
}

.h-20 {
  height: 20rem;
}

.max-w-20 {
  max-width: 20rem;
}

.max-h-20 {
  max-height: 20rem;
}

.min-w-20 {
  min-width: 20rem;
}

.min-h-20 {
  min-height: 20rem;
}

.w-22 {
  width: 22rem;
}

.h-22 {
  height: 22rem;
}

.max-w-22 {
  max-width: 22rem;
}

.max-h-22 {
  max-height: 22rem;
}

.min-w-22 {
  min-width: 22rem;
}

.min-h-22 {
  min-height: 22rem;
}

.w-24 {
  width: 24rem;
}

.h-24 {
  height: 24rem;
}

.max-w-24 {
  max-width: 24rem;
}

.max-h-24 {
  max-height: 24rem;
}

.min-w-24 {
  min-width: 24rem;
}

.min-h-24 {
  min-height: 24rem;
}

.w-26 {
  width: 26rem;
}

.h-26 {
  height: 26rem;
}

.max-w-26 {
  max-width: 26rem;
}

.max-h-26 {
  max-height: 26rem;
}

.min-w-26 {
  min-width: 26rem;
}

.min-h-26 {
  min-height: 26rem;
}

.w-28 {
  width: 28rem;
}

.h-28 {
  height: 28rem;
}

.max-w-28 {
  max-width: 28rem;
}

.max-h-28 {
  max-height: 28rem;
}

.min-w-28 {
  min-width: 28rem;
}

.min-h-28 {
  min-height: 28rem;
}

.w-30 {
  width: 30rem;
}

.h-30 {
  height: 30rem;
}

.max-w-30 {
  max-width: 30rem;
}

.max-h-30 {
  max-height: 30rem;
}

.min-w-30 {
  min-width: 30rem;
}

.min-h-30 {
  min-height: 30rem;
}

.w-32 {
  width: 32rem;
}

.h-32 {
  height: 32rem;
}

.max-w-32 {
  max-width: 32rem;
}

.max-h-32 {
  max-height: 32rem;
}

.min-w-32 {
  min-width: 32rem;
}

.min-h-32 {
  min-height: 32rem;
}

.w-33 {
  width: 33rem;
}

.h-33 {
  height: 33rem;
}

.max-w-33 {
  max-width: 33rem;
}

.max-h-33 {
  max-height: 33rem;
}

.min-w-33 {
  min-width: 33rem;
}

.min-h-33 {
  min-height: 33rem;
}

.w-34 {
  width: 34rem;
}

.h-34 {
  height: 34rem;
}

.max-w-34 {
  max-width: 34rem;
}

.max-h-34 {
  max-height: 34rem;
}

.min-w-34 {
  min-width: 34rem;
}

.min-h-34 {
  min-height: 34rem;
}

.w-64 {
  width: 64rem;
}

.h-64 {
  height: 64rem;
}

.max-w-64 {
  max-width: 64rem;
}

.max-h-64 {
  max-height: 64rem;
}

.min-w-64 {
  min-width: 64rem;
}

.min-h-64 {
  min-height: 64rem;
}

.w-auto {
  width: auto;
}

.h-auto {
  height: auto;
}

.w-full {
  width: 100%;
}

.h-full {
  height: 100%;
}

.w-screen {
  width: 100vw;
}

.h-screen {
  height: 100vh;
}

.w-max-content {
  width: -moz-max-content;
  width: max-content;
}

.h-max-content {
  height: -moz-max-content;
  height: max-content;
}

.z-1 {
  z-index: 1;
}

.z-2 {
  z-index: 2;
}

.z-3 {
  z-index: 3;
}

.z-4 {
  z-index: 4;
}

.z-5 {
  z-index: 5;
}

.z-6 {
  z-index: 6;
}

.z-7 {
  z-index: 7;
}

.z-8 {
  z-index: 8;
}

.z-9 {
  z-index: 9;
}

.z-10 {
  z-index: 10;
}

.z-20 {
  z-index: 20;
}

.z-30 {
  z-index: 30;
}

.z-40 {
  z-index: 40;
}

.z-50 {
  z-index: 50;
}

.bg-dark-blue {
  background-color: #0c1828;
}

.bg-light-blue {
  background-color: #233649;
}

.bg-gold {
  background-color: #e3c798;
}

.bg-white {
  background-color: white;
}

.bg-none {
  background-color: transparent;
}

.nav-lang-container {
  position: relative;
}

.nav-lang-link {
  padding: 0.5rem;
  font-family: "Raleway", sans-serif;
  font-size: 1rem;
  border: none;
  background: none;
  cursor: pointer;
  transition: color 150ms ease;
}
.nav-lang-link:hover {
  color: #f3e8d4;
}

.nav-lang-dropdown {
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 120px;
  border-radius: 0.5rem;
  overflow: hidden;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.nav-lang-dropdown a {
  display: block;
  padding: 0.75rem 1rem;
  font-family: "Raleway", sans-serif;
  text-decoration: none;
  transition: all 150ms ease;
}
.nav-lang-dropdown a:hover {
  background-color: #e3c798;
  color: #0c1828;
}

.autocomplete {
  position: relative;
  display: inline-block;
}

.autocomplete-items {
  position: absolute;
  border: 1px solid #d4d4d4;
  border-bottom: none;
  border-top: none;
  z-index: 99;
  /*position the autocomplete items to be the same width as the container:*/
  top: 100%;
  left: 0;
  right: 0;
}

.autocomplete-items div {
  padding: 10px;
  cursor: pointer;
  background-color: #fff;
  border-bottom: 1px solid #d4d4d4;
}

.autocomplete-items div:hover {
  /*when hovering an item:*/
  background-color: #e9e9e9;
}

.autocomplete-active {
  /*when navigating through the items using the arrow keys:*/
  background-color: DodgerBlue !important;
  color: #ffffff;
}

.border-none {
  border: none;
}

.text-underline {
  text-decoration: underline;
}

.navbar {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 4rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  border-bottom: solid 2px #e3c798;
  background: rgba(12, 24, 40, 0.75);
  -webkit-backdrop-filter: blur(15px);
          backdrop-filter: blur(15px);
}

.navbar .header-logo {
  width: 4rem;
  z-index: 50;
}

.navbar .nav-tel-container {
  display: flex;
  align-items: center;
}

@media screen and (max-width: 540px) {
  .navbar .nav-tel-container {
    display: none;
  }
}
.navbar .mobile-nav-tel-container {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.navbar .nav-lang-container {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.navbar .mobile-nav {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  padding: 6rem 4rem;
  background: #0c1828;
  z-index: 20;
}

.navbar .mobile-nav .mobile-nav-elements {
  list-style: none;
  display: flex;
  flex-direction: column;
}

.navbar .mobile-nav .mobile-nav-elements .mobile-nav-links-item {
  margin-bottom: 2rem;
}

.navbar .mobile-nav .mobile-nav-elements .mobile-nav-links-item .mobile-nav-link {
  text-decoration: none;
  color: white;
  font-size: 3rem;
  transition: color 150ms ease;
}

.navbar .mobile-nav .mobile-nav-elements .mobile-nav-links-item .mobile-nav-link:hover {
  color: #e3c798;
}

.navbar .mobile-nav .mobile-nav-social-links {
  display: flex;
  gap: 3rem;
}

.navbar nav .nav-elements {
  list-style-type: none;
  display: none;
}

.navbar nav .nav-elements .nav-links-item .nav-link {
  text-decoration: none;
  font-family: "Raleway", sans-serif;
  color: #e3c798;
  transition: color 150ms ease;
}

.navbar nav .nav-elements .nav-links-item .nav-link.active {
  font-weight: 600;
}

.navbar nav .nav-elements .nav-links-item .nav-link:hover {
  color: #f3e8d4;
}

.navbar nav .nav-elements .nav-links-item:not(:last-child) {
  margin-right: 2rem;
}

@media screen and (min-width: 964px) {
  .navbar nav .nav-elements {
    display: flex;
  }
}
.navbar button.nav-toggle {
  display: flex;
  flex-direction: column;
  gap: 6px;
  background: none;
  border: none;
  cursor: pointer;
  z-index: 50;
}

.navbar button.nav-toggle .nav-toggle-bar {
  height: 2px;
  width: 2rem;
  background: #e3c798;
  border-radius: 2px;
}

@media screen and (min-width: 964px) {
  .navbar button.nav-toggle {
    display: none;
  }
}
.filter-box .properties-filters {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: repeat(auto-fill, 1fr);
}

.filter-box .properties-filters .input-group {
  width: 100%;
  padding-top: 1rem;
  padding-bottom: 1rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
}

.filter-box .properties-filters .input-group > :nth-child(2) {
  width: 100%;
}

.filter-box .properties-filters .input-group label {
  width: -moz-fit-content;
  width: fit-content;
  font-weight: 600;
}

.filter-box .properties-filters .input-group select {
  background: none;
  border: solid 2px #e3c798;
  border-radius: 0.25rem;
  padding-right: 1rem;
  color: white;
}

.filter-box .properties-filters .input-group select option {
  color: #0c1828;
  font-family: "Raleway", sans-serif;
}

.filter-box .properties-filters .input-group input[type=text] {
  color: white;
  background: none;
  border: solid 2px #e3c798;
  border-radius: 0.25rem;
}

.filter-box .properties-filters .input-group input[type=text]::-moz-placeholder {
  color: #ececec;
}

.filter-box .properties-filters .input-group input[type=text]::placeholder {
  color: #ececec;
}

@media screen and (min-width: 864px) {
  .filter-box .properties-filters {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    grid-column-gap: 3rem;
  }
  .filter-box .properties-filters .input-group:not(:last-child) {
    border: none;
  }
}
.swiper-btn {
  background: none;
  border: none;
  font-size: 2rem;
  cursor: pointer;
}

section.listing-details {
  max-width: 100vw;
}

section.listing-details .property-grid {
  display: grid;
  grid-template-columns: 50% 1fr;
  gap: 2rem;
}

@media screen and (max-width: 960px) {
  section.listing-details .property-grid {
    grid-template-columns: 1fr;
    grid-template-rows: 1fr 1fr;
  }
}
.custom-image-carousel {
  margin-bottom: 1.5rem;
  max-width: 100%;
}

.main-image-area {
  position: relative;
  margin-bottom: 10px;
  background-color: none;
  /* Placeholder background for image loading */
}

#carouselMainImage {
  display: block;
  /* Remove extra space below image */
  width: 100%;
  /* Responsive width */
  height: auto;
  /* Maintain aspect ratio */
  max-height: 60vh;
  /* Limit height to prevent overly large images */
  -o-object-fit: contain;
     object-fit: contain;
  /* Show entire image, letterbox if needed */
}

.carousel-nav-button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: rgba(0, 0, 0, 0.5);
  color: white;
  border: none;
  padding: 10px 15px;
  font-size: 20px;
  cursor: pointer;
  z-index: 10;
  border-radius: 4px;
  opacity: 0.7;
  transition: opacity 0.2s;
}

.carousel-nav-button:hover,
.carousel-nav-button:focus {
  opacity: 1;
}

.carousel-nav-button.prev {
  left: 10px;
}

.carousel-nav-button.next {
  right: 10px;
}

.thumbnail-navigation {
  display: flex;
  align-items: center;
  gap: 10px;
  /* Space between scroll buttons and thumbnail list */
}

.thumbnail-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  /* Space between thumbnails */
  overflow-x: hidden;
  /* Hide scrollbar, scrolling handled by JS */
  flex-grow: 1;
  /* Allow list to take available space */
  padding: 5px 0;
  /* Vertical padding for focus outline visibility */
  scroll-behavior: smooth;
  /* Smooth scrolling for JS scrollBy */
}

.thumbnail-item {
  width: 100px;
  height: 75px;
  -o-object-fit: cover;
     object-fit: cover;
  /* Cover the area, cropping if necessary */
  cursor: pointer;
  border: 3px solid transparent;
  /* Border for active state */
  border-radius: 4px;
  opacity: 0.6;
  transition: opacity 0.2s, border-color 0.2s;
  flex-shrink: 0;
  /* Prevent thumbnails from shrinking */
}

.thumbnail-item:hover,
.thumbnail-item:focus {
  opacity: 1;
  border-color: #ccc;
  /* Highlight on hover/focus */
  outline: none;
  /* Remove default focus outline if custom is prominent */
}

.thumbnail-item.active {
  opacity: 1;
  border-color: #c0952d;
  /* Gold-like color for active thumbnail */
}

.thumbnail-scroll-button {
  background-color: rgba(50, 50, 50, 0.7);
  color: white;
  border: none;
  padding: 8px 12px;
  font-size: 18px;
  cursor: pointer;
  border-radius: 4px;
  flex-shrink: 0;
  /* Prevent buttons from shrinking */
  opacity: 0.7;
  transition: opacity 0.2s;
}

.thumbnail-scroll-button:hover,
.thumbnail-scroll-button:focus {
  opacity: 1;
}

.thumbnail-scroll-button.hidden {
  opacity: 0.3;
  pointer-events: none;
  /* Make it non-interactive when "hidden" */
}

/* Responsive adjustments */
@media (max-width: 768px) {
  #carouselMainImage {
    max-height: 50vh;
  }
  .thumbnail-item {
    width: 80px;
    height: 60px;
    border-width: 2px;
  }
  .carousel-nav-button {
    padding: 8px 12px;
    font-size: 18px;
  }
  .thumbnail-scroll-button {
    padding: 6px 10px;
    font-size: 16px;
  }
}
@media (max-width: 480px) {
  #carouselMainImage {
    max-height: 40vh;
  }
  .thumbnail-item {
    width: 60px;
    height: 45px;
  }
  .carousel-nav-button {
    padding: 5px 8px;
    font-size: 16px;
  }
  .thumbnail-scroll-button {
    padding: 5px 8px;
    font-size: 14px;
  }
}
.benefits .benefits-grid {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  grid-column-gap: 5rem;
  grid-row-gap: 5rem;
}

@media screen and (min-width: 640px) {
  .benefits .benefits-grid {
    grid-template-columns: 1fr 1fr;
  }
}
.services {
  display: grid;
}

.services .services-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 3rem;
  justify-content: center;
  align-items: center;
}

.request .request-form label {
  font-weight: 400;
}

.request .request-form input, .request .request-form textarea {
  background: none;
  border: 1px solid #252525;
  border-radius: 0px;
}

.request .request-form input[type=submit] {
  background-color: #1a1a1a;
  width: -moz-max-content;
  width: max-content;
  color: #e3c798;
  cursor: pointer;
  transition: all 150ms ease;
}

.request .request-form input[type=submit]:hover {
  background-color: #1e1e1e;
  box-shadow: 0px 4px 12px rgba(26, 26, 26, 0.6156862745);
}

.properties-list .listings-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
}

.properties-list .listings-grid .more-properties-cta {
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  height: -moz-max-content;
  height: max-content;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

@media screen and (min-width: 880px) {
  .properties-list .listings-grid .more-properties-cta {
    height: 100%;
  }
}
@media screen and (max-width: 880px) {
  .properties-list .listings-grid {
    justify-content: center;
    gap: 2rem;
  }
}
.hero #hero-search-form {
  display: flex;
  flex-direction: column;
  border: solid 2px #e3c798;
}

.hero #hero-search-form .property-search-input {
  font-family: "Raleway", sans-serif;
  font-size: 1rem;
  color: #e3c798;
  font-weight: 600;
  padding: 1rem;
  max-width: 768px;
  border: none;
  border-radius: 0px;
}

.hero #hero-search-form .search-btn {
  font-family: "Raleway", sans-serif;
  font-weight: 600;
  padding: 0 2rem;
  background: #0c1828;
  color: #e3c798;
  border: none;
  cursor: pointer;
  transition: ease-in-out 150ms;
}

.hero #hero-search-form .search-btn:hover, .hero #hero-search-form .search-btn:focus {
  background: #0e1c2e;
}

.hero #hero-search-form .hero-search-filters {
  position: absolute;
  top: 100%;
  width: 100%;
  border: inherit;
}

.hero #hero-search-form .hero-search-filters select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.hero #hero-search-form .hero-search-filters input[type=checkbox] {
  width: 24px;
  height: 24px;
}

@media screen and (max-width: 450px) {
  .hero #hero-search-form {
    flex-direction: column;
  }
  .hero #hero-search-form .search-btn {
    padding-top: 1rem;
    padding-bottom: 1rem;
    border-top: 2px solid #e3c798;
  }
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: "Cormorant", serif;
}

body {
  background: #0c1828;
}

.gallery-lightbox {
  position: fixed;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  justify-content: center;
  align-items: center;
}
.gallery-lightbox img {
  max-width: 1080px;
}

main {
  margin: 0 auto;
}

section.hero {
  background-repeat: no-repeat;
  background-image: url("../static/img/hero/heroBG_JPG.jpg");
  background-position: center;
  background-size: cover;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  min-height: 110vh;
}
section.hero .hero-text {
  font-size: 2.5rem;
  max-width: 24ch;
  text-align: center;
  margin-bottom: 3rem;
  color: #e3c798;
  font-weight: 300;
}
section.hero .hero-achievements {
  display: flex;
  flex-direction: column;
  margin-top: 4rem;
  margin-bottom: 4rem;
}
section.hero .hero-achievements article {
  color: #e3c798;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 1.5rem;
}
section.hero .hero-achievements article h2 {
  font-size: 3rem;
  font-weight: 400;
  font-family: "Raleway", sans-serif;
  margin-bottom: 1rem;
}
section.hero .hero-achievements article p {
  font-family: "Raleway", sans-serif;
  line-height: 1.25rem;
  max-width: 18ch;
  text-align: center;
}
@media screen and (min-width: 764px) {
  section.hero .hero-achievements {
    flex-direction: row;
  }
}
section.featured-property {
  margin-top: 6rem;
  padding-top: 6rem;
  background: #e3c798;
}
section.featured-property .featured-image {
  max-width: 760px;
  cursor: pointer;
}
section.featured-property .flex-row {
  display: flex;
  gap: 2rem;
}
section.featured-property .gallery-select {
  display: flex;
  gap: 0.5rem;
}
section.featured-property .gallery-select img {
  width: 156px;
  cursor: pointer;
  transition: 150ms ease;
}
section.featured-property .gallery-select img:hover {
  filter: brightness(1.25);
}
section.featured-property .featured-info .featured-heading {
  font-family: "Raleway", sans-serif;
  color: #0c1828;
  margin-bottom: 3rem;
}
section.featured-property .featured-info .featured-paragraph {
  line-height: 2rem;
}
section.featured-property .featured-info .featured-cta {
  background: #0c1828;
  color: #e3c798;
  font-size: 1.25rem;
  padding: 1rem 2rem;
  width: -moz-max-content;
  width: max-content;
  border: none;
  cursor: pointer;
  margin-top: 2rem;
  transition: ease-in-out 150ms;
}
section.featured-property .featured-info .featured-cta:hover {
  background: #0e1d30;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.25);
}

.btn-cta {
  background: #e3c798;
  font-family: "Raleway", sans-serif;
  font-size: 1.15rem;
  font-weight: 700;
  color: #0c1828;
  padding: 1rem 2rem;
  border: none;
  cursor: pointer;
}
.btn-cta:hover {
  background-color: #e5cba0;
}/*# sourceMappingURL=main.css.map */