@charset "UTF-8";
@font-face {
  font-family: "quicksand";
  src: url("../fonts/quicksand/medium.eot");
  src: url("../fonts/quicksand/medium.eot?#iefix") format("embedded-opentype"), url("../fonts/quicksand/medium.ttf") format("truetype"), url("../fonts/quicksand/medium.svg#roboto") format("svg");
  font-weight: 500;
}
@font-face {
  font-family: "quicksand";
  src: url("../fonts/quicksand/semibold.eot");
  src: url("../fonts/quicksand/semibold.eot?#iefix") format("embedded-opentype"), url("../fonts/quicksand/semibold.ttf") format("truetype"), url("../fonts/quicksand/semibold.svg#roboto") format("svg");
  font-weight: 600;
}
@font-face {
  font-family: "quicksand";
  src: url("../fonts/quicksand/bold.eot");
  src: url("../fonts/quicksand/bold.eot?#iefix") format("embedded-opentype"), url("../fonts/quicksand/bold.ttf") format("truetype"), url("../fonts/quicksand/bold.svg#roboto") format("svg");
  font-weight: 700;
}
:root {
  --primary-color: #5b5fef;
  --secondary-color: #8b5cf6;
  --accent-color: #f59e0b;
  --page-bg: #f7f8fc;
  --card-bg: #ffffff;
  --text-main: #202230;
  --text-muted: #6b7280;
  --border-color: #e5e7eb;
  --shadow-sm: 0 1px 2px rgba(16, 24, 40, 0.06), 0 1px 3px rgba(16, 24, 40, 0.06);
  --shadow-md: 0 4px 12px rgba(16, 24, 40, 0.08);
  --radius-card: 0.875rem;
}

html {
  scroll-behavior: smooth;
}

body {
  background-color: var(--page-bg);
  font-family: "quicksand";
  font-weight: 700;
  font-size: 1rem;
  line-height: normal;
  color: var(--text-main);
  position: relative;
}
body .bg-circle {
  display: none;
}

.m-0 {
  margin: 0rem !important;
}

.m-4 {
  margin: 0.25rem !important;
}

.m-8 {
  margin: 0.625rem !important;
}

.m-12 {
  margin: 0.75rem !important;
}

.m-16 {
  margin: 1rem !important;
}

.m-20 {
  margin: 1.25rem !important;
}

.m-24 {
  margin: 1.625rem !important;
}

.m-28 {
  margin: 1.75rem !important;
}

.m-32 {
  margin: 2rem !important;
}

.m-36 {
  margin: 2.25rem !important;
}

.m-40 {
  margin: 2.5rem !important;
}

.m-48 {
  margin: 3rem !important;
}

.m-auto {
  margin: auto !important;
}

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

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

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

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

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

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

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

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

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

.mx-36 {
  margin-right: 2.25rem !important;
  margin-left: 2.25rem !important;
}

.mx-40 {
  margin-right: 2.5rem !important;
  margin-left: 2.5rem !important;
}

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

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

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

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

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

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

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

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

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

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

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

.my-36 {
  margin-top: 2.25rem !important;
  margin-bottom: 2.25rem !important;
}

.my-40 {
  margin-top: 2.5rem !important;
  margin-bottom: 2.5rem !important;
}

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

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

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

.mt-4 {
  margin-top: 0.25rem !important;
}

.mt-8 {
  margin-top: 0.625rem !important;
}

.mt-12 {
  margin-top: 0.75rem !important;
}

.mt-16 {
  margin-top: 1rem !important;
}

.mt-20 {
  margin-top: 1.25rem !important;
}

.mt-24 {
  margin-top: 1.625rem !important;
}

.mt-28 {
  margin-top: 1.75rem !important;
}

.mt-32 {
  margin-top: 2rem !important;
}

.mt-36 {
  margin-top: 2.25rem !important;
}

.mt-40 {
  margin-top: 2.5rem !important;
}

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

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

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

.me-4 {
  margin-right: 0.25rem !important;
}

.me-8 {
  margin-right: 0.625rem !important;
}

.me-12 {
  margin-right: 0.75rem !important;
}

.me-16 {
  margin-right: 1rem !important;
}

.me-20 {
  margin-right: 1.25rem !important;
}

.me-24 {
  margin-right: 1.625rem !important;
}

.me-28 {
  margin-right: 1.75rem !important;
}

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

.me-36 {
  margin-right: 2.25rem !important;
}

.me-40 {
  margin-right: 2.5rem !important;
}

.me-48 {
  margin-right: 3rem !important;
}

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

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

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

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

.mb-12 {
  margin-bottom: 0.75rem !important;
}

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

.mb-20 {
  margin-bottom: 1.25rem !important;
}

.mb-24 {
  margin-bottom: 1.625rem !important;
}

.mb-28 {
  margin-bottom: 1.75rem !important;
}

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

.mb-36 {
  margin-bottom: 2.25rem !important;
}

.mb-40 {
  margin-bottom: 2.5rem !important;
}

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

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

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

.ms-4 {
  margin-left: 0.25rem !important;
}

.ms-8 {
  margin-left: 0.625rem !important;
}

.ms-12 {
  margin-left: 0.75rem !important;
}

.ms-16 {
  margin-left: 1rem !important;
}

.ms-20 {
  margin-left: 1.25rem !important;
}

.ms-24 {
  margin-left: 1.625rem !important;
}

.ms-28 {
  margin-left: 1.75rem !important;
}

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

.ms-36 {
  margin-left: 2.25rem !important;
}

.ms-40 {
  margin-left: 2.5rem !important;
}

.ms-48 {
  margin-left: 3rem !important;
}

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

.p-0 {
  padding: 0rem !important;
}

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

.p-8 {
  padding: 0.625rem !important;
}

.p-12 {
  padding: 0.75rem !important;
}

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

.p-20 {
  padding: 1.25rem !important;
}

.p-24 {
  padding: 1.625rem !important;
}

.p-28 {
  padding: 1.75rem !important;
}

.p-32 {
  padding: 2rem !important;
}

.p-36 {
  padding: 2.25rem !important;
}

.p-40 {
  padding: 2.5rem !important;
}

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

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

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

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

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

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

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

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

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

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

.px-36 {
  padding-right: 2.25rem !important;
  padding-left: 2.25rem !important;
}

.px-40 {
  padding-right: 2.5rem !important;
  padding-left: 2.5rem !important;
}

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

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

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

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

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

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

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

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

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

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

.py-36 {
  padding-top: 2.25rem !important;
  padding-bottom: 2.25rem !important;
}

.py-40 {
  padding-top: 2.5rem !important;
  padding-bottom: 2.5rem !important;
}

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

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

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

.pt-8 {
  padding-top: 0.625rem !important;
}

.pt-12 {
  padding-top: 0.75rem !important;
}

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

.pt-20 {
  padding-top: 1.25rem !important;
}

.pt-24 {
  padding-top: 1.625rem !important;
}

.pt-28 {
  padding-top: 1.75rem !important;
}

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

.pt-36 {
  padding-top: 2.25rem !important;
}

.pt-40 {
  padding-top: 2.5rem !important;
}

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

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

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

.pe-8 {
  padding-right: 0.625rem !important;
}

.pe-12 {
  padding-right: 0.75rem !important;
}

.pe-16 {
  padding-right: 1rem !important;
}

.pe-20 {
  padding-right: 1.25rem !important;
}

.pe-24 {
  padding-right: 1.625rem !important;
}

.pe-28 {
  padding-right: 1.75rem !important;
}

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

.pe-36 {
  padding-right: 2.25rem !important;
}

.pe-40 {
  padding-right: 2.5rem !important;
}

.pe-48 {
  padding-right: 3rem !important;
}

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

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

.pb-8 {
  padding-bottom: 0.625rem !important;
}

.pb-12 {
  padding-bottom: 0.75rem !important;
}

.pb-16 {
  padding-bottom: 1rem !important;
}

.pb-20 {
  padding-bottom: 1.25rem !important;
}

.pb-24 {
  padding-bottom: 1.625rem !important;
}

.pb-28 {
  padding-bottom: 1.75rem !important;
}

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

.pb-36 {
  padding-bottom: 2.25rem !important;
}

.pb-40 {
  padding-bottom: 2.5rem !important;
}

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

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

.ps-4 {
  padding-left: 0.25rem !important;
}

.ps-8 {
  padding-left: 0.625rem !important;
}

.ps-12 {
  padding-left: 0.75rem !important;
}

.ps-16 {
  padding-left: 1rem !important;
}

.ps-20 {
  padding-left: 1.25rem !important;
}

.ps-24 {
  padding-left: 1.625rem !important;
}

.ps-28 {
  padding-left: 1.75rem !important;
}

.ps-32 {
  padding-left: 2rem !important;
}

.ps-36 {
  padding-left: 2.25rem !important;
}

.ps-40 {
  padding-left: 2.5rem !important;
}

.ps-48 {
  padding-left: 3rem !important;
}

.gap-0 {
  gap: 0rem !important;
}

.gap-4 {
  gap: 0.25rem !important;
}

.gap-8 {
  gap: 0.625rem !important;
}

.gap-12 {
  gap: 0.75rem !important;
}

.gap-16 {
  gap: 1rem !important;
}

.gap-20 {
  gap: 1.25rem !important;
}

.gap-24 {
  gap: 1.625rem !important;
}

.gap-28 {
  gap: 1.75rem !important;
}

.gap-32 {
  gap: 2rem !important;
}

.gap-36 {
  gap: 2.25rem !important;
}

.gap-40 {
  gap: 2.5rem !important;
}

.gap-48 {
  gap: 3rem !important;
}

.column-gap-0 {
  column-gap: 0rem !important;
}

.column-gap-4 {
  column-gap: 0.25rem !important;
}

.column-gap-8 {
  column-gap: 0.625rem !important;
}

.column-gap-12 {
  column-gap: 0.75rem !important;
}

.column-gap-16 {
  column-gap: 1rem !important;
}

.column-gap-20 {
  column-gap: 1.25rem !important;
}

.column-gap-24 {
  column-gap: 1.625rem !important;
}

.column-gap-28 {
  column-gap: 1.75rem !important;
}

.column-gap-32 {
  column-gap: 2rem !important;
}

.column-gap-36 {
  column-gap: 2.25rem !important;
}

.column-gap-40 {
  column-gap: 2.5rem !important;
}

.column-gap-48 {
  column-gap: 3rem !important;
}

.row-gap-0 {
  row-gap: 0rem !important;
}

.row-gap-4 {
  row-gap: 0.25rem !important;
}

.row-gap-8 {
  row-gap: 0.625rem !important;
}

.row-gap-12 {
  row-gap: 0.75rem !important;
}

.row-gap-16 {
  row-gap: 1rem !important;
}

.row-gap-20 {
  row-gap: 1.25rem !important;
}

.row-gap-24 {
  row-gap: 1.625rem !important;
}

.row-gap-28 {
  row-gap: 1.75rem !important;
}

.row-gap-32 {
  row-gap: 2rem !important;
}

.row-gap-36 {
  row-gap: 2.25rem !important;
}

.row-gap-40 {
  row-gap: 2.5rem !important;
}

.row-gap-48 {
  row-gap: 3rem !important;
}

@media (min-width: 575.98px) {
  .m-sm-0 {
    margin: 0rem !important;
  }
  .m-sm-4 {
    margin: 0.25rem !important;
  }
  .m-sm-8 {
    margin: 0.625rem !important;
  }
  .m-sm-12 {
    margin: 0.75rem !important;
  }
  .m-sm-16 {
    margin: 1rem !important;
  }
  .m-sm-20 {
    margin: 1.25rem !important;
  }
  .m-sm-24 {
    margin: 1.625rem !important;
  }
  .m-sm-28 {
    margin: 1.75rem !important;
  }
  .m-sm-32 {
    margin: 2rem !important;
  }
  .m-sm-36 {
    margin: 2.25rem !important;
  }
  .m-sm-40 {
    margin: 2.5rem !important;
  }
  .m-sm-48 {
    margin: 3rem !important;
  }
  .m-sm-auto {
    margin: auto !important;
  }
  .mx-sm-0 {
    margin-right: 0rem !important;
    margin-left: 0rem !important;
  }
  .mx-sm-4 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-sm-8 {
    margin-right: 0.625rem !important;
    margin-left: 0.625rem !important;
  }
  .mx-sm-12 {
    margin-right: 0.75rem !important;
    margin-left: 0.75rem !important;
  }
  .mx-sm-16 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-sm-20 {
    margin-right: 1.25rem !important;
    margin-left: 1.25rem !important;
  }
  .mx-sm-24 {
    margin-right: 1.625rem !important;
    margin-left: 1.625rem !important;
  }
  .mx-sm-28 {
    margin-right: 1.75rem !important;
    margin-left: 1.75rem !important;
  }
  .mx-sm-32 {
    margin-right: 2rem !important;
    margin-left: 2rem !important;
  }
  .mx-sm-36 {
    margin-right: 2.25rem !important;
    margin-left: 2.25rem !important;
  }
  .mx-sm-40 {
    margin-right: 2.5rem !important;
    margin-left: 2.5rem !important;
  }
  .mx-sm-48 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-sm-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-sm-0 {
    margin-top: 0rem !important;
    margin-bottom: 0rem !important;
  }
  .my-sm-4 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-sm-8 {
    margin-top: 0.625rem !important;
    margin-bottom: 0.625rem !important;
  }
  .my-sm-12 {
    margin-top: 0.75rem !important;
    margin-bottom: 0.75rem !important;
  }
  .my-sm-16 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-sm-20 {
    margin-top: 1.25rem !important;
    margin-bottom: 1.25rem !important;
  }
  .my-sm-24 {
    margin-top: 1.625rem !important;
    margin-bottom: 1.625rem !important;
  }
  .my-sm-28 {
    margin-top: 1.75rem !important;
    margin-bottom: 1.75rem !important;
  }
  .my-sm-32 {
    margin-top: 2rem !important;
    margin-bottom: 2rem !important;
  }
  .my-sm-36 {
    margin-top: 2.25rem !important;
    margin-bottom: 2.25rem !important;
  }
  .my-sm-40 {
    margin-top: 2.5rem !important;
    margin-bottom: 2.5rem !important;
  }
  .my-sm-48 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-sm-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-sm-0 {
    margin-top: 0rem !important;
  }
  .mt-sm-4 {
    margin-top: 0.25rem !important;
  }
  .mt-sm-8 {
    margin-top: 0.625rem !important;
  }
  .mt-sm-12 {
    margin-top: 0.75rem !important;
  }
  .mt-sm-16 {
    margin-top: 1rem !important;
  }
  .mt-sm-20 {
    margin-top: 1.25rem !important;
  }
  .mt-sm-24 {
    margin-top: 1.625rem !important;
  }
  .mt-sm-28 {
    margin-top: 1.75rem !important;
  }
  .mt-sm-32 {
    margin-top: 2rem !important;
  }
  .mt-sm-36 {
    margin-top: 2.25rem !important;
  }
  .mt-sm-40 {
    margin-top: 2.5rem !important;
  }
  .mt-sm-48 {
    margin-top: 3rem !important;
  }
  .mt-sm-auto {
    margin-top: auto !important;
  }
  .me-sm-0 {
    margin-right: 0rem !important;
  }
  .me-sm-4 {
    margin-right: 0.25rem !important;
  }
  .me-sm-8 {
    margin-right: 0.625rem !important;
  }
  .me-sm-12 {
    margin-right: 0.75rem !important;
  }
  .me-sm-16 {
    margin-right: 1rem !important;
  }
  .me-sm-20 {
    margin-right: 1.25rem !important;
  }
  .me-sm-24 {
    margin-right: 1.625rem !important;
  }
  .me-sm-28 {
    margin-right: 1.75rem !important;
  }
  .me-sm-32 {
    margin-right: 2rem !important;
  }
  .me-sm-36 {
    margin-right: 2.25rem !important;
  }
  .me-sm-40 {
    margin-right: 2.5rem !important;
  }
  .me-sm-48 {
    margin-right: 3rem !important;
  }
  .me-sm-auto {
    margin-right: auto !important;
  }
  .mb-sm-0 {
    margin-bottom: 0rem !important;
  }
  .mb-sm-4 {
    margin-bottom: 0.25rem !important;
  }
  .mb-sm-8 {
    margin-bottom: 0.625rem !important;
  }
  .mb-sm-12 {
    margin-bottom: 0.75rem !important;
  }
  .mb-sm-16 {
    margin-bottom: 1rem !important;
  }
  .mb-sm-20 {
    margin-bottom: 1.25rem !important;
  }
  .mb-sm-24 {
    margin-bottom: 1.625rem !important;
  }
  .mb-sm-28 {
    margin-bottom: 1.75rem !important;
  }
  .mb-sm-32 {
    margin-bottom: 2rem !important;
  }
  .mb-sm-36 {
    margin-bottom: 2.25rem !important;
  }
  .mb-sm-40 {
    margin-bottom: 2.5rem !important;
  }
  .mb-sm-48 {
    margin-bottom: 3rem !important;
  }
  .mb-sm-auto {
    margin-bottom: auto !important;
  }
  .ms-sm-0 {
    margin-left: 0rem !important;
  }
  .ms-sm-4 {
    margin-left: 0.25rem !important;
  }
  .ms-sm-8 {
    margin-left: 0.625rem !important;
  }
  .ms-sm-12 {
    margin-left: 0.75rem !important;
  }
  .ms-sm-16 {
    margin-left: 1rem !important;
  }
  .ms-sm-20 {
    margin-left: 1.25rem !important;
  }
  .ms-sm-24 {
    margin-left: 1.625rem !important;
  }
  .ms-sm-28 {
    margin-left: 1.75rem !important;
  }
  .ms-sm-32 {
    margin-left: 2rem !important;
  }
  .ms-sm-36 {
    margin-left: 2.25rem !important;
  }
  .ms-sm-40 {
    margin-left: 2.5rem !important;
  }
  .ms-sm-48 {
    margin-left: 3rem !important;
  }
  .ms-sm-auto {
    margin-left: auto !important;
  }
  .p-sm-0 {
    padding: 0rem !important;
  }
  .p-sm-4 {
    padding: 0.25rem !important;
  }
  .p-sm-8 {
    padding: 0.625rem !important;
  }
  .p-sm-12 {
    padding: 0.75rem !important;
  }
  .p-sm-16 {
    padding: 1rem !important;
  }
  .p-sm-20 {
    padding: 1.25rem !important;
  }
  .p-sm-24 {
    padding: 1.625rem !important;
  }
  .p-sm-28 {
    padding: 1.75rem !important;
  }
  .p-sm-32 {
    padding: 2rem !important;
  }
  .p-sm-36 {
    padding: 2.25rem !important;
  }
  .p-sm-40 {
    padding: 2.5rem !important;
  }
  .p-sm-48 {
    padding: 3rem !important;
  }
  .px-sm-0 {
    padding-right: 0rem !important;
    padding-left: 0rem !important;
  }
  .px-sm-4 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-sm-8 {
    padding-right: 0.625rem !important;
    padding-left: 0.625rem !important;
  }
  .px-sm-12 {
    padding-right: 0.75rem !important;
    padding-left: 0.75rem !important;
  }
  .px-sm-16 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-sm-20 {
    padding-right: 1.25rem !important;
    padding-left: 1.25rem !important;
  }
  .px-sm-24 {
    padding-right: 1.625rem !important;
    padding-left: 1.625rem !important;
  }
  .px-sm-28 {
    padding-right: 1.75rem !important;
    padding-left: 1.75rem !important;
  }
  .px-sm-32 {
    padding-right: 2rem !important;
    padding-left: 2rem !important;
  }
  .px-sm-36 {
    padding-right: 2.25rem !important;
    padding-left: 2.25rem !important;
  }
  .px-sm-40 {
    padding-right: 2.5rem !important;
    padding-left: 2.5rem !important;
  }
  .px-sm-48 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-sm-0 {
    padding-top: 0rem !important;
    padding-bottom: 0rem !important;
  }
  .py-sm-4 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-sm-8 {
    padding-top: 0.625rem !important;
    padding-bottom: 0.625rem !important;
  }
  .py-sm-12 {
    padding-top: 0.75rem !important;
    padding-bottom: 0.75rem !important;
  }
  .py-sm-16 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-sm-20 {
    padding-top: 1.25rem !important;
    padding-bottom: 1.25rem !important;
  }
  .py-sm-24 {
    padding-top: 1.625rem !important;
    padding-bottom: 1.625rem !important;
  }
  .py-sm-28 {
    padding-top: 1.75rem !important;
    padding-bottom: 1.75rem !important;
  }
  .py-sm-32 {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
  }
  .py-sm-36 {
    padding-top: 2.25rem !important;
    padding-bottom: 2.25rem !important;
  }
  .py-sm-40 {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
  .py-sm-48 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-sm-0 {
    padding-top: 0rem !important;
  }
  .pt-sm-4 {
    padding-top: 0.25rem !important;
  }
  .pt-sm-8 {
    padding-top: 0.625rem !important;
  }
  .pt-sm-12 {
    padding-top: 0.75rem !important;
  }
  .pt-sm-16 {
    padding-top: 1rem !important;
  }
  .pt-sm-20 {
    padding-top: 1.25rem !important;
  }
  .pt-sm-24 {
    padding-top: 1.625rem !important;
  }
  .pt-sm-28 {
    padding-top: 1.75rem !important;
  }
  .pt-sm-32 {
    padding-top: 2rem !important;
  }
  .pt-sm-36 {
    padding-top: 2.25rem !important;
  }
  .pt-sm-40 {
    padding-top: 2.5rem !important;
  }
  .pt-sm-48 {
    padding-top: 3rem !important;
  }
  .pe-sm-0 {
    padding-right: 0rem !important;
  }
  .pe-sm-4 {
    padding-right: 0.25rem !important;
  }
  .pe-sm-8 {
    padding-right: 0.625rem !important;
  }
  .pe-sm-12 {
    padding-right: 0.75rem !important;
  }
  .pe-sm-16 {
    padding-right: 1rem !important;
  }
  .pe-sm-20 {
    padding-right: 1.25rem !important;
  }
  .pe-sm-24 {
    padding-right: 1.625rem !important;
  }
  .pe-sm-28 {
    padding-right: 1.75rem !important;
  }
  .pe-sm-32 {
    padding-right: 2rem !important;
  }
  .pe-sm-36 {
    padding-right: 2.25rem !important;
  }
  .pe-sm-40 {
    padding-right: 2.5rem !important;
  }
  .pe-sm-48 {
    padding-right: 3rem !important;
  }
  .pb-sm-0 {
    padding-bottom: 0rem !important;
  }
  .pb-sm-4 {
    padding-bottom: 0.25rem !important;
  }
  .pb-sm-8 {
    padding-bottom: 0.625rem !important;
  }
  .pb-sm-12 {
    padding-bottom: 0.75rem !important;
  }
  .pb-sm-16 {
    padding-bottom: 1rem !important;
  }
  .pb-sm-20 {
    padding-bottom: 1.25rem !important;
  }
  .pb-sm-24 {
    padding-bottom: 1.625rem !important;
  }
  .pb-sm-28 {
    padding-bottom: 1.75rem !important;
  }
  .pb-sm-32 {
    padding-bottom: 2rem !important;
  }
  .pb-sm-36 {
    padding-bottom: 2.25rem !important;
  }
  .pb-sm-40 {
    padding-bottom: 2.5rem !important;
  }
  .pb-sm-48 {
    padding-bottom: 3rem !important;
  }
  .ps-sm-0 {
    padding-left: 0rem !important;
  }
  .ps-sm-4 {
    padding-left: 0.25rem !important;
  }
  .ps-sm-8 {
    padding-left: 0.625rem !important;
  }
  .ps-sm-12 {
    padding-left: 0.75rem !important;
  }
  .ps-sm-16 {
    padding-left: 1rem !important;
  }
  .ps-sm-20 {
    padding-left: 1.25rem !important;
  }
  .ps-sm-24 {
    padding-left: 1.625rem !important;
  }
  .ps-sm-28 {
    padding-left: 1.75rem !important;
  }
  .ps-sm-32 {
    padding-left: 2rem !important;
  }
  .ps-sm-36 {
    padding-left: 2.25rem !important;
  }
  .ps-sm-40 {
    padding-left: 2.5rem !important;
  }
  .ps-sm-48 {
    padding-left: 3rem !important;
  }
  .gap-sm-0 {
    gap: 0rem !important;
  }
  .gap-sm-4 {
    gap: 0.25rem !important;
  }
  .gap-sm-8 {
    gap: 0.625rem !important;
  }
  .gap-sm-12 {
    gap: 0.75rem !important;
  }
  .gap-sm-16 {
    gap: 1rem !important;
  }
  .gap-sm-20 {
    gap: 1.25rem !important;
  }
  .gap-sm-24 {
    gap: 1.625rem !important;
  }
  .gap-sm-28 {
    gap: 1.75rem !important;
  }
  .gap-sm-32 {
    gap: 2rem !important;
  }
  .gap-sm-36 {
    gap: 2.25rem !important;
  }
  .gap-sm-40 {
    gap: 2.5rem !important;
  }
  .gap-sm-48 {
    gap: 3rem !important;
  }
  .column-gap-sm-0 {
    column-gap: 0rem !important;
  }
  .column-gap-sm-4 {
    column-gap: 0.25rem !important;
  }
  .column-gap-sm-8 {
    column-gap: 0.625rem !important;
  }
  .column-gap-sm-12 {
    column-gap: 0.75rem !important;
  }
  .column-gap-sm-16 {
    column-gap: 1rem !important;
  }
  .column-gap-sm-20 {
    column-gap: 1.25rem !important;
  }
  .column-gap-sm-24 {
    column-gap: 1.625rem !important;
  }
  .column-gap-sm-28 {
    column-gap: 1.75rem !important;
  }
  .column-gap-sm-32 {
    column-gap: 2rem !important;
  }
  .column-gap-sm-36 {
    column-gap: 2.25rem !important;
  }
  .column-gap-sm-40 {
    column-gap: 2.5rem !important;
  }
  .column-gap-sm-48 {
    column-gap: 3rem !important;
  }
  .row-gap-sm-0 {
    row-gap: 0rem !important;
  }
  .row-gap-sm-4 {
    row-gap: 0.25rem !important;
  }
  .row-gap-sm-8 {
    row-gap: 0.625rem !important;
  }
  .row-gap-sm-12 {
    row-gap: 0.75rem !important;
  }
  .row-gap-sm-16 {
    row-gap: 1rem !important;
  }
  .row-gap-sm-20 {
    row-gap: 1.25rem !important;
  }
  .row-gap-sm-24 {
    row-gap: 1.625rem !important;
  }
  .row-gap-sm-28 {
    row-gap: 1.75rem !important;
  }
  .row-gap-sm-32 {
    row-gap: 2rem !important;
  }
  .row-gap-sm-36 {
    row-gap: 2.25rem !important;
  }
  .row-gap-sm-40 {
    row-gap: 2.5rem !important;
  }
  .row-gap-sm-48 {
    row-gap: 3rem !important;
  }
}
@media (min-width: 767.98px) {
  .m-md-0 {
    margin: 0rem !important;
  }
  .m-md-4 {
    margin: 0.25rem !important;
  }
  .m-md-8 {
    margin: 0.625rem !important;
  }
  .m-md-12 {
    margin: 0.75rem !important;
  }
  .m-md-16 {
    margin: 1rem !important;
  }
  .m-md-20 {
    margin: 1.25rem !important;
  }
  .m-md-24 {
    margin: 1.625rem !important;
  }
  .m-md-28 {
    margin: 1.75rem !important;
  }
  .m-md-32 {
    margin: 2rem !important;
  }
  .m-md-36 {
    margin: 2.25rem !important;
  }
  .m-md-40 {
    margin: 2.5rem !important;
  }
  .m-md-48 {
    margin: 3rem !important;
  }
  .m-md-auto {
    margin: auto !important;
  }
  .mx-md-0 {
    margin-right: 0rem !important;
    margin-left: 0rem !important;
  }
  .mx-md-4 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-md-8 {
    margin-right: 0.625rem !important;
    margin-left: 0.625rem !important;
  }
  .mx-md-12 {
    margin-right: 0.75rem !important;
    margin-left: 0.75rem !important;
  }
  .mx-md-16 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-md-20 {
    margin-right: 1.25rem !important;
    margin-left: 1.25rem !important;
  }
  .mx-md-24 {
    margin-right: 1.625rem !important;
    margin-left: 1.625rem !important;
  }
  .mx-md-28 {
    margin-right: 1.75rem !important;
    margin-left: 1.75rem !important;
  }
  .mx-md-32 {
    margin-right: 2rem !important;
    margin-left: 2rem !important;
  }
  .mx-md-36 {
    margin-right: 2.25rem !important;
    margin-left: 2.25rem !important;
  }
  .mx-md-40 {
    margin-right: 2.5rem !important;
    margin-left: 2.5rem !important;
  }
  .mx-md-48 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-md-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-md-0 {
    margin-top: 0rem !important;
    margin-bottom: 0rem !important;
  }
  .my-md-4 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-md-8 {
    margin-top: 0.625rem !important;
    margin-bottom: 0.625rem !important;
  }
  .my-md-12 {
    margin-top: 0.75rem !important;
    margin-bottom: 0.75rem !important;
  }
  .my-md-16 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-md-20 {
    margin-top: 1.25rem !important;
    margin-bottom: 1.25rem !important;
  }
  .my-md-24 {
    margin-top: 1.625rem !important;
    margin-bottom: 1.625rem !important;
  }
  .my-md-28 {
    margin-top: 1.75rem !important;
    margin-bottom: 1.75rem !important;
  }
  .my-md-32 {
    margin-top: 2rem !important;
    margin-bottom: 2rem !important;
  }
  .my-md-36 {
    margin-top: 2.25rem !important;
    margin-bottom: 2.25rem !important;
  }
  .my-md-40 {
    margin-top: 2.5rem !important;
    margin-bottom: 2.5rem !important;
  }
  .my-md-48 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-md-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-md-0 {
    margin-top: 0rem !important;
  }
  .mt-md-4 {
    margin-top: 0.25rem !important;
  }
  .mt-md-8 {
    margin-top: 0.625rem !important;
  }
  .mt-md-12 {
    margin-top: 0.75rem !important;
  }
  .mt-md-16 {
    margin-top: 1rem !important;
  }
  .mt-md-20 {
    margin-top: 1.25rem !important;
  }
  .mt-md-24 {
    margin-top: 1.625rem !important;
  }
  .mt-md-28 {
    margin-top: 1.75rem !important;
  }
  .mt-md-32 {
    margin-top: 2rem !important;
  }
  .mt-md-36 {
    margin-top: 2.25rem !important;
  }
  .mt-md-40 {
    margin-top: 2.5rem !important;
  }
  .mt-md-48 {
    margin-top: 3rem !important;
  }
  .mt-md-auto {
    margin-top: auto !important;
  }
  .me-md-0 {
    margin-right: 0rem !important;
  }
  .me-md-4 {
    margin-right: 0.25rem !important;
  }
  .me-md-8 {
    margin-right: 0.625rem !important;
  }
  .me-md-12 {
    margin-right: 0.75rem !important;
  }
  .me-md-16 {
    margin-right: 1rem !important;
  }
  .me-md-20 {
    margin-right: 1.25rem !important;
  }
  .me-md-24 {
    margin-right: 1.625rem !important;
  }
  .me-md-28 {
    margin-right: 1.75rem !important;
  }
  .me-md-32 {
    margin-right: 2rem !important;
  }
  .me-md-36 {
    margin-right: 2.25rem !important;
  }
  .me-md-40 {
    margin-right: 2.5rem !important;
  }
  .me-md-48 {
    margin-right: 3rem !important;
  }
  .me-md-auto {
    margin-right: auto !important;
  }
  .mb-md-0 {
    margin-bottom: 0rem !important;
  }
  .mb-md-4 {
    margin-bottom: 0.25rem !important;
  }
  .mb-md-8 {
    margin-bottom: 0.625rem !important;
  }
  .mb-md-12 {
    margin-bottom: 0.75rem !important;
  }
  .mb-md-16 {
    margin-bottom: 1rem !important;
  }
  .mb-md-20 {
    margin-bottom: 1.25rem !important;
  }
  .mb-md-24 {
    margin-bottom: 1.625rem !important;
  }
  .mb-md-28 {
    margin-bottom: 1.75rem !important;
  }
  .mb-md-32 {
    margin-bottom: 2rem !important;
  }
  .mb-md-36 {
    margin-bottom: 2.25rem !important;
  }
  .mb-md-40 {
    margin-bottom: 2.5rem !important;
  }
  .mb-md-48 {
    margin-bottom: 3rem !important;
  }
  .mb-md-auto {
    margin-bottom: auto !important;
  }
  .ms-md-0 {
    margin-left: 0rem !important;
  }
  .ms-md-4 {
    margin-left: 0.25rem !important;
  }
  .ms-md-8 {
    margin-left: 0.625rem !important;
  }
  .ms-md-12 {
    margin-left: 0.75rem !important;
  }
  .ms-md-16 {
    margin-left: 1rem !important;
  }
  .ms-md-20 {
    margin-left: 1.25rem !important;
  }
  .ms-md-24 {
    margin-left: 1.625rem !important;
  }
  .ms-md-28 {
    margin-left: 1.75rem !important;
  }
  .ms-md-32 {
    margin-left: 2rem !important;
  }
  .ms-md-36 {
    margin-left: 2.25rem !important;
  }
  .ms-md-40 {
    margin-left: 2.5rem !important;
  }
  .ms-md-48 {
    margin-left: 3rem !important;
  }
  .ms-md-auto {
    margin-left: auto !important;
  }
  .p-md-0 {
    padding: 0rem !important;
  }
  .p-md-4 {
    padding: 0.25rem !important;
  }
  .p-md-8 {
    padding: 0.625rem !important;
  }
  .p-md-12 {
    padding: 0.75rem !important;
  }
  .p-md-16 {
    padding: 1rem !important;
  }
  .p-md-20 {
    padding: 1.25rem !important;
  }
  .p-md-24 {
    padding: 1.625rem !important;
  }
  .p-md-28 {
    padding: 1.75rem !important;
  }
  .p-md-32 {
    padding: 2rem !important;
  }
  .p-md-36 {
    padding: 2.25rem !important;
  }
  .p-md-40 {
    padding: 2.5rem !important;
  }
  .p-md-48 {
    padding: 3rem !important;
  }
  .px-md-0 {
    padding-right: 0rem !important;
    padding-left: 0rem !important;
  }
  .px-md-4 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-md-8 {
    padding-right: 0.625rem !important;
    padding-left: 0.625rem !important;
  }
  .px-md-12 {
    padding-right: 0.75rem !important;
    padding-left: 0.75rem !important;
  }
  .px-md-16 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-md-20 {
    padding-right: 1.25rem !important;
    padding-left: 1.25rem !important;
  }
  .px-md-24 {
    padding-right: 1.625rem !important;
    padding-left: 1.625rem !important;
  }
  .px-md-28 {
    padding-right: 1.75rem !important;
    padding-left: 1.75rem !important;
  }
  .px-md-32 {
    padding-right: 2rem !important;
    padding-left: 2rem !important;
  }
  .px-md-36 {
    padding-right: 2.25rem !important;
    padding-left: 2.25rem !important;
  }
  .px-md-40 {
    padding-right: 2.5rem !important;
    padding-left: 2.5rem !important;
  }
  .px-md-48 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-md-0 {
    padding-top: 0rem !important;
    padding-bottom: 0rem !important;
  }
  .py-md-4 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-md-8 {
    padding-top: 0.625rem !important;
    padding-bottom: 0.625rem !important;
  }
  .py-md-12 {
    padding-top: 0.75rem !important;
    padding-bottom: 0.75rem !important;
  }
  .py-md-16 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-md-20 {
    padding-top: 1.25rem !important;
    padding-bottom: 1.25rem !important;
  }
  .py-md-24 {
    padding-top: 1.625rem !important;
    padding-bottom: 1.625rem !important;
  }
  .py-md-28 {
    padding-top: 1.75rem !important;
    padding-bottom: 1.75rem !important;
  }
  .py-md-32 {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
  }
  .py-md-36 {
    padding-top: 2.25rem !important;
    padding-bottom: 2.25rem !important;
  }
  .py-md-40 {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
  .py-md-48 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-md-0 {
    padding-top: 0rem !important;
  }
  .pt-md-4 {
    padding-top: 0.25rem !important;
  }
  .pt-md-8 {
    padding-top: 0.625rem !important;
  }
  .pt-md-12 {
    padding-top: 0.75rem !important;
  }
  .pt-md-16 {
    padding-top: 1rem !important;
  }
  .pt-md-20 {
    padding-top: 1.25rem !important;
  }
  .pt-md-24 {
    padding-top: 1.625rem !important;
  }
  .pt-md-28 {
    padding-top: 1.75rem !important;
  }
  .pt-md-32 {
    padding-top: 2rem !important;
  }
  .pt-md-36 {
    padding-top: 2.25rem !important;
  }
  .pt-md-40 {
    padding-top: 2.5rem !important;
  }
  .pt-md-48 {
    padding-top: 3rem !important;
  }
  .pe-md-0 {
    padding-right: 0rem !important;
  }
  .pe-md-4 {
    padding-right: 0.25rem !important;
  }
  .pe-md-8 {
    padding-right: 0.625rem !important;
  }
  .pe-md-12 {
    padding-right: 0.75rem !important;
  }
  .pe-md-16 {
    padding-right: 1rem !important;
  }
  .pe-md-20 {
    padding-right: 1.25rem !important;
  }
  .pe-md-24 {
    padding-right: 1.625rem !important;
  }
  .pe-md-28 {
    padding-right: 1.75rem !important;
  }
  .pe-md-32 {
    padding-right: 2rem !important;
  }
  .pe-md-36 {
    padding-right: 2.25rem !important;
  }
  .pe-md-40 {
    padding-right: 2.5rem !important;
  }
  .pe-md-48 {
    padding-right: 3rem !important;
  }
  .pb-md-0 {
    padding-bottom: 0rem !important;
  }
  .pb-md-4 {
    padding-bottom: 0.25rem !important;
  }
  .pb-md-8 {
    padding-bottom: 0.625rem !important;
  }
  .pb-md-12 {
    padding-bottom: 0.75rem !important;
  }
  .pb-md-16 {
    padding-bottom: 1rem !important;
  }
  .pb-md-20 {
    padding-bottom: 1.25rem !important;
  }
  .pb-md-24 {
    padding-bottom: 1.625rem !important;
  }
  .pb-md-28 {
    padding-bottom: 1.75rem !important;
  }
  .pb-md-32 {
    padding-bottom: 2rem !important;
  }
  .pb-md-36 {
    padding-bottom: 2.25rem !important;
  }
  .pb-md-40 {
    padding-bottom: 2.5rem !important;
  }
  .pb-md-48 {
    padding-bottom: 3rem !important;
  }
  .ps-md-0 {
    padding-left: 0rem !important;
  }
  .ps-md-4 {
    padding-left: 0.25rem !important;
  }
  .ps-md-8 {
    padding-left: 0.625rem !important;
  }
  .ps-md-12 {
    padding-left: 0.75rem !important;
  }
  .ps-md-16 {
    padding-left: 1rem !important;
  }
  .ps-md-20 {
    padding-left: 1.25rem !important;
  }
  .ps-md-24 {
    padding-left: 1.625rem !important;
  }
  .ps-md-28 {
    padding-left: 1.75rem !important;
  }
  .ps-md-32 {
    padding-left: 2rem !important;
  }
  .ps-md-36 {
    padding-left: 2.25rem !important;
  }
  .ps-md-40 {
    padding-left: 2.5rem !important;
  }
  .ps-md-48 {
    padding-left: 3rem !important;
  }
  .gap-md-0 {
    gap: 0rem !important;
  }
  .gap-md-4 {
    gap: 0.25rem !important;
  }
  .gap-md-8 {
    gap: 0.625rem !important;
  }
  .gap-md-12 {
    gap: 0.75rem !important;
  }
  .gap-md-16 {
    gap: 1rem !important;
  }
  .gap-md-20 {
    gap: 1.25rem !important;
  }
  .gap-md-24 {
    gap: 1.625rem !important;
  }
  .gap-md-28 {
    gap: 1.75rem !important;
  }
  .gap-md-32 {
    gap: 2rem !important;
  }
  .gap-md-36 {
    gap: 2.25rem !important;
  }
  .gap-md-40 {
    gap: 2.5rem !important;
  }
  .gap-md-48 {
    gap: 3rem !important;
  }
  .column-gap-md-0 {
    column-gap: 0rem !important;
  }
  .column-gap-md-4 {
    column-gap: 0.25rem !important;
  }
  .column-gap-md-8 {
    column-gap: 0.625rem !important;
  }
  .column-gap-md-12 {
    column-gap: 0.75rem !important;
  }
  .column-gap-md-16 {
    column-gap: 1rem !important;
  }
  .column-gap-md-20 {
    column-gap: 1.25rem !important;
  }
  .column-gap-md-24 {
    column-gap: 1.625rem !important;
  }
  .column-gap-md-28 {
    column-gap: 1.75rem !important;
  }
  .column-gap-md-32 {
    column-gap: 2rem !important;
  }
  .column-gap-md-36 {
    column-gap: 2.25rem !important;
  }
  .column-gap-md-40 {
    column-gap: 2.5rem !important;
  }
  .column-gap-md-48 {
    column-gap: 3rem !important;
  }
  .row-gap-md-0 {
    row-gap: 0rem !important;
  }
  .row-gap-md-4 {
    row-gap: 0.25rem !important;
  }
  .row-gap-md-8 {
    row-gap: 0.625rem !important;
  }
  .row-gap-md-12 {
    row-gap: 0.75rem !important;
  }
  .row-gap-md-16 {
    row-gap: 1rem !important;
  }
  .row-gap-md-20 {
    row-gap: 1.25rem !important;
  }
  .row-gap-md-24 {
    row-gap: 1.625rem !important;
  }
  .row-gap-md-28 {
    row-gap: 1.75rem !important;
  }
  .row-gap-md-32 {
    row-gap: 2rem !important;
  }
  .row-gap-md-36 {
    row-gap: 2.25rem !important;
  }
  .row-gap-md-40 {
    row-gap: 2.5rem !important;
  }
  .row-gap-md-48 {
    row-gap: 3rem !important;
  }
}
@media (min-width: 991.98px) {
  .m-lg-0 {
    margin: 0rem !important;
  }
  .m-lg-4 {
    margin: 0.25rem !important;
  }
  .m-lg-8 {
    margin: 0.625rem !important;
  }
  .m-lg-12 {
    margin: 0.75rem !important;
  }
  .m-lg-16 {
    margin: 1rem !important;
  }
  .m-lg-20 {
    margin: 1.25rem !important;
  }
  .m-lg-24 {
    margin: 1.625rem !important;
  }
  .m-lg-28 {
    margin: 1.75rem !important;
  }
  .m-lg-32 {
    margin: 2rem !important;
  }
  .m-lg-36 {
    margin: 2.25rem !important;
  }
  .m-lg-40 {
    margin: 2.5rem !important;
  }
  .m-lg-48 {
    margin: 3rem !important;
  }
  .m-lg-auto {
    margin: auto !important;
  }
  .mx-lg-0 {
    margin-right: 0rem !important;
    margin-left: 0rem !important;
  }
  .mx-lg-4 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-lg-8 {
    margin-right: 0.625rem !important;
    margin-left: 0.625rem !important;
  }
  .mx-lg-12 {
    margin-right: 0.75rem !important;
    margin-left: 0.75rem !important;
  }
  .mx-lg-16 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-lg-20 {
    margin-right: 1.25rem !important;
    margin-left: 1.25rem !important;
  }
  .mx-lg-24 {
    margin-right: 1.625rem !important;
    margin-left: 1.625rem !important;
  }
  .mx-lg-28 {
    margin-right: 1.75rem !important;
    margin-left: 1.75rem !important;
  }
  .mx-lg-32 {
    margin-right: 2rem !important;
    margin-left: 2rem !important;
  }
  .mx-lg-36 {
    margin-right: 2.25rem !important;
    margin-left: 2.25rem !important;
  }
  .mx-lg-40 {
    margin-right: 2.5rem !important;
    margin-left: 2.5rem !important;
  }
  .mx-lg-48 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-lg-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-lg-0 {
    margin-top: 0rem !important;
    margin-bottom: 0rem !important;
  }
  .my-lg-4 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-lg-8 {
    margin-top: 0.625rem !important;
    margin-bottom: 0.625rem !important;
  }
  .my-lg-12 {
    margin-top: 0.75rem !important;
    margin-bottom: 0.75rem !important;
  }
  .my-lg-16 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-lg-20 {
    margin-top: 1.25rem !important;
    margin-bottom: 1.25rem !important;
  }
  .my-lg-24 {
    margin-top: 1.625rem !important;
    margin-bottom: 1.625rem !important;
  }
  .my-lg-28 {
    margin-top: 1.75rem !important;
    margin-bottom: 1.75rem !important;
  }
  .my-lg-32 {
    margin-top: 2rem !important;
    margin-bottom: 2rem !important;
  }
  .my-lg-36 {
    margin-top: 2.25rem !important;
    margin-bottom: 2.25rem !important;
  }
  .my-lg-40 {
    margin-top: 2.5rem !important;
    margin-bottom: 2.5rem !important;
  }
  .my-lg-48 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-lg-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-lg-0 {
    margin-top: 0rem !important;
  }
  .mt-lg-4 {
    margin-top: 0.25rem !important;
  }
  .mt-lg-8 {
    margin-top: 0.625rem !important;
  }
  .mt-lg-12 {
    margin-top: 0.75rem !important;
  }
  .mt-lg-16 {
    margin-top: 1rem !important;
  }
  .mt-lg-20 {
    margin-top: 1.25rem !important;
  }
  .mt-lg-24 {
    margin-top: 1.625rem !important;
  }
  .mt-lg-28 {
    margin-top: 1.75rem !important;
  }
  .mt-lg-32 {
    margin-top: 2rem !important;
  }
  .mt-lg-36 {
    margin-top: 2.25rem !important;
  }
  .mt-lg-40 {
    margin-top: 2.5rem !important;
  }
  .mt-lg-48 {
    margin-top: 3rem !important;
  }
  .mt-lg-auto {
    margin-top: auto !important;
  }
  .me-lg-0 {
    margin-right: 0rem !important;
  }
  .me-lg-4 {
    margin-right: 0.25rem !important;
  }
  .me-lg-8 {
    margin-right: 0.625rem !important;
  }
  .me-lg-12 {
    margin-right: 0.75rem !important;
  }
  .me-lg-16 {
    margin-right: 1rem !important;
  }
  .me-lg-20 {
    margin-right: 1.25rem !important;
  }
  .me-lg-24 {
    margin-right: 1.625rem !important;
  }
  .me-lg-28 {
    margin-right: 1.75rem !important;
  }
  .me-lg-32 {
    margin-right: 2rem !important;
  }
  .me-lg-36 {
    margin-right: 2.25rem !important;
  }
  .me-lg-40 {
    margin-right: 2.5rem !important;
  }
  .me-lg-48 {
    margin-right: 3rem !important;
  }
  .me-lg-auto {
    margin-right: auto !important;
  }
  .mb-lg-0 {
    margin-bottom: 0rem !important;
  }
  .mb-lg-4 {
    margin-bottom: 0.25rem !important;
  }
  .mb-lg-8 {
    margin-bottom: 0.625rem !important;
  }
  .mb-lg-12 {
    margin-bottom: 0.75rem !important;
  }
  .mb-lg-16 {
    margin-bottom: 1rem !important;
  }
  .mb-lg-20 {
    margin-bottom: 1.25rem !important;
  }
  .mb-lg-24 {
    margin-bottom: 1.625rem !important;
  }
  .mb-lg-28 {
    margin-bottom: 1.75rem !important;
  }
  .mb-lg-32 {
    margin-bottom: 2rem !important;
  }
  .mb-lg-36 {
    margin-bottom: 2.25rem !important;
  }
  .mb-lg-40 {
    margin-bottom: 2.5rem !important;
  }
  .mb-lg-48 {
    margin-bottom: 3rem !important;
  }
  .mb-lg-auto {
    margin-bottom: auto !important;
  }
  .ms-lg-0 {
    margin-left: 0rem !important;
  }
  .ms-lg-4 {
    margin-left: 0.25rem !important;
  }
  .ms-lg-8 {
    margin-left: 0.625rem !important;
  }
  .ms-lg-12 {
    margin-left: 0.75rem !important;
  }
  .ms-lg-16 {
    margin-left: 1rem !important;
  }
  .ms-lg-20 {
    margin-left: 1.25rem !important;
  }
  .ms-lg-24 {
    margin-left: 1.625rem !important;
  }
  .ms-lg-28 {
    margin-left: 1.75rem !important;
  }
  .ms-lg-32 {
    margin-left: 2rem !important;
  }
  .ms-lg-36 {
    margin-left: 2.25rem !important;
  }
  .ms-lg-40 {
    margin-left: 2.5rem !important;
  }
  .ms-lg-48 {
    margin-left: 3rem !important;
  }
  .ms-lg-auto {
    margin-left: auto !important;
  }
  .p-lg-0 {
    padding: 0rem !important;
  }
  .p-lg-4 {
    padding: 0.25rem !important;
  }
  .p-lg-8 {
    padding: 0.625rem !important;
  }
  .p-lg-12 {
    padding: 0.75rem !important;
  }
  .p-lg-16 {
    padding: 1rem !important;
  }
  .p-lg-20 {
    padding: 1.25rem !important;
  }
  .p-lg-24 {
    padding: 1.625rem !important;
  }
  .p-lg-28 {
    padding: 1.75rem !important;
  }
  .p-lg-32 {
    padding: 2rem !important;
  }
  .p-lg-36 {
    padding: 2.25rem !important;
  }
  .p-lg-40 {
    padding: 2.5rem !important;
  }
  .p-lg-48 {
    padding: 3rem !important;
  }
  .px-lg-0 {
    padding-right: 0rem !important;
    padding-left: 0rem !important;
  }
  .px-lg-4 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-lg-8 {
    padding-right: 0.625rem !important;
    padding-left: 0.625rem !important;
  }
  .px-lg-12 {
    padding-right: 0.75rem !important;
    padding-left: 0.75rem !important;
  }
  .px-lg-16 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-lg-20 {
    padding-right: 1.25rem !important;
    padding-left: 1.25rem !important;
  }
  .px-lg-24 {
    padding-right: 1.625rem !important;
    padding-left: 1.625rem !important;
  }
  .px-lg-28 {
    padding-right: 1.75rem !important;
    padding-left: 1.75rem !important;
  }
  .px-lg-32 {
    padding-right: 2rem !important;
    padding-left: 2rem !important;
  }
  .px-lg-36 {
    padding-right: 2.25rem !important;
    padding-left: 2.25rem !important;
  }
  .px-lg-40 {
    padding-right: 2.5rem !important;
    padding-left: 2.5rem !important;
  }
  .px-lg-48 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-lg-0 {
    padding-top: 0rem !important;
    padding-bottom: 0rem !important;
  }
  .py-lg-4 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-lg-8 {
    padding-top: 0.625rem !important;
    padding-bottom: 0.625rem !important;
  }
  .py-lg-12 {
    padding-top: 0.75rem !important;
    padding-bottom: 0.75rem !important;
  }
  .py-lg-16 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-lg-20 {
    padding-top: 1.25rem !important;
    padding-bottom: 1.25rem !important;
  }
  .py-lg-24 {
    padding-top: 1.625rem !important;
    padding-bottom: 1.625rem !important;
  }
  .py-lg-28 {
    padding-top: 1.75rem !important;
    padding-bottom: 1.75rem !important;
  }
  .py-lg-32 {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
  }
  .py-lg-36 {
    padding-top: 2.25rem !important;
    padding-bottom: 2.25rem !important;
  }
  .py-lg-40 {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
  .py-lg-48 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-lg-0 {
    padding-top: 0rem !important;
  }
  .pt-lg-4 {
    padding-top: 0.25rem !important;
  }
  .pt-lg-8 {
    padding-top: 0.625rem !important;
  }
  .pt-lg-12 {
    padding-top: 0.75rem !important;
  }
  .pt-lg-16 {
    padding-top: 1rem !important;
  }
  .pt-lg-20 {
    padding-top: 1.25rem !important;
  }
  .pt-lg-24 {
    padding-top: 1.625rem !important;
  }
  .pt-lg-28 {
    padding-top: 1.75rem !important;
  }
  .pt-lg-32 {
    padding-top: 2rem !important;
  }
  .pt-lg-36 {
    padding-top: 2.25rem !important;
  }
  .pt-lg-40 {
    padding-top: 2.5rem !important;
  }
  .pt-lg-48 {
    padding-top: 3rem !important;
  }
  .pe-lg-0 {
    padding-right: 0rem !important;
  }
  .pe-lg-4 {
    padding-right: 0.25rem !important;
  }
  .pe-lg-8 {
    padding-right: 0.625rem !important;
  }
  .pe-lg-12 {
    padding-right: 0.75rem !important;
  }
  .pe-lg-16 {
    padding-right: 1rem !important;
  }
  .pe-lg-20 {
    padding-right: 1.25rem !important;
  }
  .pe-lg-24 {
    padding-right: 1.625rem !important;
  }
  .pe-lg-28 {
    padding-right: 1.75rem !important;
  }
  .pe-lg-32 {
    padding-right: 2rem !important;
  }
  .pe-lg-36 {
    padding-right: 2.25rem !important;
  }
  .pe-lg-40 {
    padding-right: 2.5rem !important;
  }
  .pe-lg-48 {
    padding-right: 3rem !important;
  }
  .pb-lg-0 {
    padding-bottom: 0rem !important;
  }
  .pb-lg-4 {
    padding-bottom: 0.25rem !important;
  }
  .pb-lg-8 {
    padding-bottom: 0.625rem !important;
  }
  .pb-lg-12 {
    padding-bottom: 0.75rem !important;
  }
  .pb-lg-16 {
    padding-bottom: 1rem !important;
  }
  .pb-lg-20 {
    padding-bottom: 1.25rem !important;
  }
  .pb-lg-24 {
    padding-bottom: 1.625rem !important;
  }
  .pb-lg-28 {
    padding-bottom: 1.75rem !important;
  }
  .pb-lg-32 {
    padding-bottom: 2rem !important;
  }
  .pb-lg-36 {
    padding-bottom: 2.25rem !important;
  }
  .pb-lg-40 {
    padding-bottom: 2.5rem !important;
  }
  .pb-lg-48 {
    padding-bottom: 3rem !important;
  }
  .ps-lg-0 {
    padding-left: 0rem !important;
  }
  .ps-lg-4 {
    padding-left: 0.25rem !important;
  }
  .ps-lg-8 {
    padding-left: 0.625rem !important;
  }
  .ps-lg-12 {
    padding-left: 0.75rem !important;
  }
  .ps-lg-16 {
    padding-left: 1rem !important;
  }
  .ps-lg-20 {
    padding-left: 1.25rem !important;
  }
  .ps-lg-24 {
    padding-left: 1.625rem !important;
  }
  .ps-lg-28 {
    padding-left: 1.75rem !important;
  }
  .ps-lg-32 {
    padding-left: 2rem !important;
  }
  .ps-lg-36 {
    padding-left: 2.25rem !important;
  }
  .ps-lg-40 {
    padding-left: 2.5rem !important;
  }
  .ps-lg-48 {
    padding-left: 3rem !important;
  }
  .gap-lg-0 {
    gap: 0rem !important;
  }
  .gap-lg-4 {
    gap: 0.25rem !important;
  }
  .gap-lg-8 {
    gap: 0.625rem !important;
  }
  .gap-lg-12 {
    gap: 0.75rem !important;
  }
  .gap-lg-16 {
    gap: 1rem !important;
  }
  .gap-lg-20 {
    gap: 1.25rem !important;
  }
  .gap-lg-24 {
    gap: 1.625rem !important;
  }
  .gap-lg-28 {
    gap: 1.75rem !important;
  }
  .gap-lg-32 {
    gap: 2rem !important;
  }
  .gap-lg-36 {
    gap: 2.25rem !important;
  }
  .gap-lg-40 {
    gap: 2.5rem !important;
  }
  .gap-lg-48 {
    gap: 3rem !important;
  }
  .column-gap-lg-0 {
    column-gap: 0rem !important;
  }
  .column-gap-lg-4 {
    column-gap: 0.25rem !important;
  }
  .column-gap-lg-8 {
    column-gap: 0.625rem !important;
  }
  .column-gap-lg-12 {
    column-gap: 0.75rem !important;
  }
  .column-gap-lg-16 {
    column-gap: 1rem !important;
  }
  .column-gap-lg-20 {
    column-gap: 1.25rem !important;
  }
  .column-gap-lg-24 {
    column-gap: 1.625rem !important;
  }
  .column-gap-lg-28 {
    column-gap: 1.75rem !important;
  }
  .column-gap-lg-32 {
    column-gap: 2rem !important;
  }
  .column-gap-lg-36 {
    column-gap: 2.25rem !important;
  }
  .column-gap-lg-40 {
    column-gap: 2.5rem !important;
  }
  .column-gap-lg-48 {
    column-gap: 3rem !important;
  }
  .row-gap-lg-0 {
    row-gap: 0rem !important;
  }
  .row-gap-lg-4 {
    row-gap: 0.25rem !important;
  }
  .row-gap-lg-8 {
    row-gap: 0.625rem !important;
  }
  .row-gap-lg-12 {
    row-gap: 0.75rem !important;
  }
  .row-gap-lg-16 {
    row-gap: 1rem !important;
  }
  .row-gap-lg-20 {
    row-gap: 1.25rem !important;
  }
  .row-gap-lg-24 {
    row-gap: 1.625rem !important;
  }
  .row-gap-lg-28 {
    row-gap: 1.75rem !important;
  }
  .row-gap-lg-32 {
    row-gap: 2rem !important;
  }
  .row-gap-lg-36 {
    row-gap: 2.25rem !important;
  }
  .row-gap-lg-40 {
    row-gap: 2.5rem !important;
  }
  .row-gap-lg-48 {
    row-gap: 3rem !important;
  }
}
.line-clamp-1 {
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  line-clamp: 1;
}

.line-clamp-2 {
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}

.line-clamp-3 {
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
}

.line-clamp-4 {
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-clamp: 4;
}

.line-clamp-5 {
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  line-clamp: 5;
}

.line-clamp-6 {
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 6;
  line-clamp: 6;
}

.grid {
  display: grid;
}

.grid-2 {
  grid-template-columns: repeat(2, 1fr);
}

.grid-3 {
  grid-template-columns: repeat(3, 1fr);
}

.grid-4 {
  grid-template-columns: repeat(4, 1fr);
}

.grid-5 {
  grid-template-columns: repeat(5, 1fr);
}

@media (min-width: 576px) {
  .grid-sm-2 {
    grid-template-columns: repeat(2, 1fr);
  }
  .grid-sm-3 {
    grid-template-columns: repeat(3, 1fr);
  }
  .grid-sm-4 {
    grid-template-columns: repeat(4, 1fr);
  }
  .grid-sm-5 {
    grid-template-columns: repeat(5, 1fr);
  }
}
@media (min-width: 768px) {
  .grid-md-2 {
    grid-template-columns: repeat(2, 1fr);
  }
  .grid-md-3 {
    grid-template-columns: repeat(3, 1fr);
  }
  .grid-md-4 {
    grid-template-columns: repeat(4, 1fr);
  }
  .grid-md-5 {
    grid-template-columns: repeat(5, 1fr);
  }
  .grid-md-6 {
    grid-template-columns: repeat(6, 1fr);
  }
}
@media (min-width: 992px) {
  .grid-lg-2 {
    grid-template-columns: repeat(2, 1fr);
  }
  .grid-lg-3 {
    grid-template-columns: repeat(3, 1fr);
  }
  .grid-lg-4 {
    grid-template-columns: repeat(4, 1fr);
  }
  .grid-lg-5 {
    grid-template-columns: repeat(5, 1fr);
  }
  .grid-lg-6 {
    grid-template-columns: repeat(6, 1fr);
  }
}
@media (min-width: 1200px) {
  .grid-xl-2 {
    grid-template-columns: repeat(2, 1fr);
  }
  .grid-xl-3 {
    grid-template-columns: repeat(3, 1fr);
  }
  .grid-xl-4 {
    grid-template-columns: repeat(4, 1fr);
  }
  .grid-xl-5 {
    grid-template-columns: repeat(5, 1fr);
  }
}
@media (min-width: 1400px) {
  .grid-xxl-2 {
    grid-template-columns: repeat(2, 1fr);
  }
  .grid-xxl-3 {
    grid-template-columns: repeat(3, 1fr);
  }
  .grid-xxl-4 {
    grid-template-columns: repeat(4, 1fr);
  }
  .grid-xxl-5 {
    grid-template-columns: repeat(5, 1fr);
  }
}
::placeholder {
  font-family: "quicksand";
}

a {
  color: inherit;
  text-decoration: none;
}
a:hover {
  color: var(--primary-color);
}

button:focus-visible {
  outline: none;
}

main {
  min-height: 100dvh;
}

p + * {
  margin-top: 1em;
}

.breadcrumb {
  margin-bottom: 0;
}
.breadcrumb .breadcrumb-item {
  font-size: 12.25px;
  font-weight: 700;
  color: var(--text-main);
}
.breadcrumb .breadcrumb-item + .breadcrumb-item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding-left: 0.5rem;
  color: var(--text-main);
}
.breadcrumb .breadcrumb-item + .breadcrumb-item::before {
  content: "";
  display: block;
  width: 0.21875rem;
  height: 0.375rem;
  background: url(../icons/breadcrumb-icon.png) no-repeat center center/contain;
  filter: invert(100%);
  opacity: 0.5;
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  border: 1px solid transparent;
  border-radius: 0.625rem;
  padding: 0.625rem 1.375rem;
  font-family: "quicksand";
  font-weight: 700;
  font-size: 0.9375rem;
  line-height: normal;
  text-align: center;
  white-space: nowrap;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  transition: all 0.15s ease-in-out;
  user-select: none;
  -webkit-user-select: none;
  -moz-user-select: none;
}
.btn.btn-primary {
  background-color: var(--primary-color);
  border-color: var(--primary-color);
  color: #ffffff;
}
.btn.btn-primary:hover {
  background-color: #4548d1;
  border-color: #4548d1;
  color: #ffffff;
}
.btn.btn-primary.btn-yellow {
  background-color: var(--primary-color);
  border-color: var(--primary-color);
  color: #ffffff;
}
.btn.btn-primary.btn-white {
  background-color: #ffffff;
  border-color: var(--border-color);
  color: var(--text-main);
}
.btn.btn-primary.btn-white:hover {
  border-color: var(--primary-color);
  color: var(--primary-color);
}
.btn.btn-outline {
  background-color: #ffffff;
  border-color: var(--border-color);
  color: var(--text-main);
}
.btn.btn-outline:hover {
  border-color: var(--primary-color);
  color: var(--primary-color);
}
.btn.btn-sm {
  padding: 0.375rem 0.875rem;
  font-size: 0.8125rem;
}

.btn-toggle-offcanvas {
  aspect-ratio: 1/1;
  border: 0;
  border-radius: 0.25rem;
  background-color: var(--primary-color);
  color: #ffffff;
}

.color-primary {
  color: var(--primary-color);
}

.section-view-all {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--primary-color);
  white-space: nowrap;
}
.section-view-all:hover {
  text-decoration: underline;
}

.btn-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  border-radius: 1.875rem;
  background-color: rgba(91, 95, 239, 0.08);
  color: var(--primary-color);
  padding: 0.25rem 0.875rem;
  font-size: 0.8125rem;
  font-weight: 600;
}
.btn-chip:hover {
  background-color: var(--primary-color);
  color: #ffffff;
}
.btn-chip .count {
  opacity: 0.7;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 700;
}

.img-cover {
  overflow: hidden;
  line-height: 0;
}
.img-cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.img-contain {
  line-height: 0;
}
.img-contain img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.375rem;
}
.pagination .page-numbers {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 2rem;
  aspect-ratio: 1/1;
  border: 1px solid var(--border-color);
  border-radius: 50%;
  background-color: #ffffff;
  color: var(--text-main);
}
.pagination .page-numbers.prev, .pagination .page-numbers.next {
  background: url(../icons/breadcrumb-icon.png) no-repeat center center/0.375rem, #595959;
  filter: invert(100%);
}
.pagination .page-numbers.prev.disabled, .pagination .page-numbers.next.disabled {
  opacity: 0.4;
  pointer-events: none;
}
.pagination .page-numbers.prev {
  transform: rotate(180deg);
}
.pagination .page-numbers.current {
  border-color: var(--primary-color);
  color: var(--primary-color);
}

.swiper-slide {
  height: auto;
  transition-property: all;
}

.is-form-style {
  border-radius: 1.875rem;
  overflow: hidden;
  border: 1px solid var(--border-color);
  background-color: #ffffff;
}

.is-form-style input.is-search-submit,
.is-search-icon,
.is-form-style button.is-search-submit {
  height: 2.5rem;
}

.is-form-style input.is-search-submit,
.is-search-icon {
  border: 0;
  background: #ffffff;
}
.is-form-style input.is-search-submit:hover,
.is-search-icon:hover {
  background-color: #ffffff;
}

.is-form-style input.is-search-input {
  height: 2.5rem;
  border: 0 !important;
  font-family: "quicksand";
  padding-inline-start: 0.875rem !important;
}

body div.is-ajax-search-details,
body div.is-ajax-search-result {
  border-radius: 0.625rem;
  background-color: #ffffff;
  padding: 0;
  overflow: hidden;
  margin-top: 0.25rem;
}
@media (min-width: 1400px) {
  body div.is-ajax-search-details,
  body div.is-ajax-search-result {
    right: calc((100vw - 1320px) / 2);
    left: auto !important;
  }
}

body .is-ajax-search-post,
.is-ajax-search-post-details {
  padding: 0.75rem;
}

body .is-search-sections .thumbnail img {
  border-radius: 0.625rem;
}

body .is-ajax-search-details a,
body .is-ajax-search-result a {
  color: #000000;
}
body .is-ajax-search-details a:hover,
body .is-ajax-search-result a:hover {
  color: var(--primary-color);
  text-decoration: none;
}

.offcanvas {
  max-width: 75%;
  background-color: #ffffff;
  color: var(--text-main);
}
.offcanvas .offcanvas-body {
  padding-inline: 0;
}
.offcanvas .mobile-menu .menu-item a {
  display: block;
  padding: 0.5rem 1rem;
}
.offcanvas .mobile-menu .current-menu-item,
.offcanvas .mobile-menu .current_page_item,
.offcanvas .mobile-menu .current-menu-ancestor,
.offcanvas .mobile-menu .current-menu-parent {
  background-color: var(--page-bg);
}
.offcanvas .mobile-menu .current-menu-item > a, .offcanvas .mobile-menu .current-menu-item > i,
.offcanvas .mobile-menu .current_page_item > a,
.offcanvas .mobile-menu .current_page_item > i,
.offcanvas .mobile-menu .current-menu-ancestor > a,
.offcanvas .mobile-menu .current-menu-ancestor > i,
.offcanvas .mobile-menu .current-menu-parent > a,
.offcanvas .mobile-menu .current-menu-parent > i {
  color: var(--primary-color);
}
.offcanvas .mobile-menu .menu-item-has-children {
  position: relative;
}
.offcanvas .mobile-menu .menu-item-has-children .sub-menu-icon {
  aspect-ratio: 1/1;
  width: 2rem;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0;
  right: 0;
  transition: all 0.15s;
}
.offcanvas .mobile-menu .sub-menu {
  display: none;
  background-color: var(--page-bg);
  padding: 0;
  list-style: none;
  font-size: 80%;
}
.offcanvas .mobile-menu .sub-menu .menu-item + .menu-item {
  border-top: 1px solid var(--border-color);
}
.offcanvas .mobile-menu .current-menu-parent .sub-menu {
  display: block;
}

header.header {
  background-color: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(0.75rem);
  border-bottom: 1px solid var(--border-color);
  padding-block: 0.6875rem;
}
@media only screen and (max-width: 575.98px) {
  header.header {
    transition: transform 0.25s ease;
  }
  header.header.header-hidden {
    transform: translateY(-100%);
  }
}
header.header .site-logo {
  min-width: 0;
}
header.header .logo {
  width: auto;
  max-width: 13.75rem;
  height: 3rem;
  flex-shrink: 0;
}
header.header .logo-text {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--text-main);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
header.header .user-avt {
  width: 2.375rem;
  height: 2.375rem;
  border-radius: 50%;
  flex-shrink: 0;
}
@media only screen and (max-width: 575.98px) {
  header.header .btn-toggle-offcanvas {
    display: none;
  }
}
header.header .header-menu .menu-item > a {
  color: var(--text-main);
  font-weight: 600;
}
@media (min-width: 992px) {
  header.header .header-menu .menu-item a:hover + i {
    color: var(--primary-color);
  }
  header.header .header-menu .menu-item-has-children {
    position: relative;
  }
  header.header .header-menu .menu-item-has-children .sub-menu {
    width: fit-content;
    min-width: 9.375rem;
    box-shadow: var(--shadow-md);
    border-radius: 0.625rem;
    overflow: hidden;
    background: #ffffff;
    border: 1px solid var(--border-color);
    padding: 0.625rem;
    list-style: none;
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s;
    position: absolute;
    top: 100%;
    left: -1rem;
    z-index: 11;
  }
  header.header .header-menu .menu-item-has-children .sub-menu .menu-item a {
    display: block;
    padding: 0.625rem;
    color: var(--text-main);
  }
  header.header .header-menu .menu-item-has-children:hover .sub-menu {
    visibility: visible;
    opacity: 1;
  }
  header.header .header-menu .current-menu-item > a, header.header .header-menu .current-menu-item > i,
  header.header .header-menu .current_page_item > a,
  header.header .header-menu .current_page_item > i,
  header.header .header-menu .current-menu-ancestor > a,
  header.header .header-menu .current-menu-ancestor > i,
  header.header .header-menu .current-menu-parent > a,
  header.header .header-menu .current-menu-parent > i {
    color: var(--primary-color);
  }
}

footer.footer {
  background-color: #ffffff;
  border-top: 1px solid var(--border-color);
  padding-block: 2.5rem 1.25rem;
  color: var(--text-muted);
}
footer.footer .footer-grid {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 1.75rem;
}
@media only screen and (min-width: 576px) {
  footer.footer .footer-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (min-width: 992px) {
  footer.footer .footer-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 2rem;
  }
}
@media only screen and (min-width: 576px) {
  footer.footer .footer-col-brand {
    grid-column: 1/-1;
  }
}
@media only screen and (min-width: 992px) {
  footer.footer .footer-col-brand {
    grid-column: auto;
  }
}
footer.footer .footer-logo .logo {
  width: auto;
  max-width: 13.75rem;
  height: 3.25rem;
}
footer.footer .footer-logo-text {
  font-weight: 700;
  font-size: 1.0625rem;
  color: var(--text-main);
}
footer.footer .footer-desc {
  font-size: 0.8125rem;
  line-height: 1.6;
  max-width: 17.5rem;
}
footer.footer .footer-col-title {
  font-weight: 700;
  font-size: 0.875rem;
  color: var(--text-main);
  margin-bottom: 0.75rem;
}
footer.footer .footer-links {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  padding: 0;
  margin: 0;
}
footer.footer .footer-links a {
  font-size: 0.8125rem;
  color: var(--text-muted);
}
footer.footer .footer-links a:hover {
  color: var(--primary-color);
}
footer.footer .footer-social-link {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
footer.footer .footer-social-link .footer-social-icon {
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 50%;
  border: 1px solid var(--border-color);
  padding: 0.3125rem;
  flex-shrink: 0;
}
footer.footer .footer-bottom {
  margin-top: 1.75rem;
  padding-top: 1rem;
  border-top: 1px solid var(--border-color);
  text-align: center;
  font-size: 0.75rem;
}
@media only screen and (max-width: 575.98px) {
  footer.footer .footer-col:not(.footer-col-brand) {
    border-top: 1px solid var(--border-color);
    padding-top: 0.75rem;
  }
  footer.footer .footer-col:not(.footer-col-brand) .footer-col-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0;
    cursor: pointer;
    user-select: none;
  }
  footer.footer .footer-col:not(.footer-col-brand) .footer-col-title::after {
    content: "";
    width: 0.4375rem;
    height: 0.4375rem;
    border-right: 2px solid var(--text-muted);
    border-bottom: 2px solid var(--text-muted);
    transform: rotate(45deg);
    transition: transform 0.2s ease-in-out;
  }
  footer.footer .footer-col:not(.footer-col-brand) .footer-links {
    display: none;
    margin-top: 0.75rem;
  }
  footer.footer .footer-col:not(.footer-col-brand).is-open .footer-col-title::after {
    transform: rotate(-135deg);
  }
  footer.footer .footer-col:not(.footer-col-brand).is-open .footer-links {
    display: flex;
  }
}

.container {
  max-width: none;
  width: min(1240px, 100% - 40px);
}

.simple-page-box {
  border: 1px solid var(--border-color);
  border-radius: var(--radius-card);
  background-color: var(--card-bg);
  box-shadow: var(--shadow-sm);
  padding: 2rem 2.25rem;
  max-width: 53.75rem;
  margin-inline: auto;
}
@media only screen and (max-width: 575.98px) {
  .simple-page-box {
    padding: 1.25rem;
  }
}
.simple-page-box h1, .simple-page-box h2, .simple-page-box h3 {
  font-weight: 700;
  color: var(--text-main);
  line-height: 1.3;
  margin-bottom: 0.75rem;
}
.simple-page-box h1 {
  font-size: 1.625rem;
}
@media only screen and (max-width: 575.98px) {
  .simple-page-box h1 {
    font-size: 1.375rem;
  }
}
.simple-page-box h2 {
  font-size: 1.1875rem;
  margin-top: 1.5rem;
}
.simple-page-box p {
  font-size: 0.9375rem;
  line-height: 1.8;
  color: var(--text-main);
  margin-bottom: 0.875rem;
}
.simple-page-box ul, .simple-page-box ol {
  padding-left: 1.25rem;
  margin-bottom: 0.875rem;
}
.simple-page-box ul li, .simple-page-box ol li {
  font-size: 0.9375rem;
  line-height: 1.8;
  margin-bottom: 0.375rem;
}
.simple-page-box > *:last-child {
  margin-bottom: 0;
}

.section-category-chips.py-16,
.section-latest-stories.py-16,
.section-most-read.py-16,
.section-continue-reading.py-16,
.section-recommended-stories.py-16,
.section-banner-img.py-16,
.section-newsletter.py-16 {
  padding-top: 1.25rem !important;
  padding-bottom: 1.25rem !important;
}

.fs-4 {
  font-size: 1.375rem !important;
}
@media only screen and (min-width: 992px) {
  .fs-4 {
    font-size: 1.625rem !important;
  }
}

.section-home-banner {
  position: relative;
  overflow: hidden;
  padding-block: 1.25rem;
}
.section-home-banner .hero-slider {
  border-radius: 1.0625rem;
  overflow: hidden;
}
.section-home-banner .hero-slider.swiper-initialized .swiper-slide:not(.swiper-slide-active) {
  opacity: 0 !important;
}
.section-home-banner .hero-slide {
  position: relative;
  height: 26.25rem;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  contain: paint;
  background-color: var(--text-main);
}
@media only screen and (min-width: 576px) {
  .section-home-banner .hero-slide {
    height: 28.75rem;
  }
}
@media only screen and (min-width: 992px) {
  .section-home-banner .hero-slide {
    height: 32.5rem;
    align-items: center;
  }
}
.section-home-banner .hero-bg {
  position: absolute;
  inset: 0;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  filter: blur(1.375rem) brightness(0.8);
  transform: scale(1.1);
  z-index: 0;
}
.section-home-banner .hero-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(to top, rgba(8, 9, 20, 0.92) 0%, rgba(8, 9, 20, 0.55) 45%, rgba(8, 9, 20, 0.15) 70%, rgba(8, 9, 20, 0) 85%);
}
@media only screen and (min-width: 992px) {
  .section-home-banner .hero-overlay {
    background: linear-gradient(to right, rgba(8, 9, 20, 0.82) 0%, rgba(8, 9, 20, 0.55) 38%, rgba(8, 9, 20, 0.05) 65%, rgba(8, 9, 20, 0) 80%);
  }
}
.section-home-banner .hero-content {
  position: relative;
  z-index: 2;
  width: 100%;
  padding: 1.5rem;
  color: #ffffff;
}
@media only screen and (min-width: 992px) {
  .section-home-banner .hero-content {
    max-width: 45%;
    padding: 3rem;
  }
}
.section-home-banner .hero-figure {
  position: absolute;
  inset: 0;
  z-index: 1;
  overflow: hidden;
  pointer-events: none;
}
@media only screen and (min-width: 576px) {
  .section-home-banner .hero-figure {
    left: auto;
    width: 55%;
  }
}
@media only screen and (min-width: 992px) {
  .section-home-banner .hero-figure {
    width: 52%;
  }
}
.section-home-banner .hero-figure-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 25%;
}
@media only screen and (min-width: 576px) {
  .section-home-banner .hero-figure-img {
    -webkit-mask-image: linear-gradient(to right, transparent 0%, rgba(0, 0, 0, 0.15) 5%, rgba(0, 0, 0, 0.65) 17%, #000 30%, #000 100%);
    mask-image: linear-gradient(to right, transparent 0%, rgba(0, 0, 0, 0.15) 5%, rgba(0, 0, 0, 0.65) 17%, #000 30%, #000 100%);
  }
}
.section-home-banner .banner-label {
  display: inline-block;
  border-radius: 1.25rem;
  background-color: rgba(255, 255, 255, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.3);
  padding: 0.25rem 0.875rem;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #ffffff;
}
.section-home-banner .story-title {
  font-weight: 700;
  font-size: 1.625rem;
  line-height: 1.2;
  color: #ffffff;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.5);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
@media only screen and (min-width: 992px) {
  .section-home-banner .story-title {
    font-size: 2.75rem;
  }
}
.section-home-banner .story-desc {
  color: rgba(255, 255, 255, 0.92);
  font-size: 1rem;
  line-height: 1.6;
  text-shadow: 0 1px 6px rgba(0, 0, 0, 0.4);
  margin-top: 0.875rem !important;
}
.section-home-banner .story-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.875rem;
  font-size: 0.875rem;
  color: rgba(255, 255, 255, 0.85);
  font-weight: 600;
  margin-top: 0.875rem !important;
}
.section-home-banner .story-meta span + span::before {
  content: "·";
  margin-right: 0.875rem;
}
@media only screen and (max-width: 575.98px) {
  .section-home-banner .story-desc,
  .section-home-banner .story-meta {
    display: none;
  }
  .section-home-banner .hero-content {
    padding-bottom: 4rem;
  }
  .section-home-banner .hero-content .btn-outline {
    display: none;
  }
}
.section-home-banner .btn {
  height: 2.875rem;
  padding-inline: 1.5rem;
  font-size: 1rem;
}
.section-home-banner .btn.btn-outline {
  background-color: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.65);
  color: #ffffff;
}
.section-home-banner .btn.btn-outline:hover {
  background-color: rgba(255, 255, 255, 0.24);
  border-color: #ffffff;
  color: #ffffff;
}
.section-home-banner .swiper-pagination {
  position: absolute;
  bottom: 1rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 3;
  width: auto;
}
@media only screen and (min-width: 992px) {
  .section-home-banner .swiper-pagination {
    left: 3rem;
    transform: none;
  }
}
.section-home-banner .swiper-pagination .swiper-pagination-bullet {
  background-color: #ffffff;
  opacity: 0.5;
}
.section-home-banner .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  opacity: 1;
}

.stories-list .story .story-thumb {
  aspect-ratio: 204/300;
  border-radius: 0.625rem;
}

.recommended-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}
@media only screen and (min-width: 576px) {
  .recommended-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}
.recommended-grid .story-thumb {
  aspect-ratio: 2/3;
  border-radius: 0.6875rem;
}

.reading-related-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}
@media only screen and (min-width: 768px) {
  .reading-related-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media only screen and (min-width: 992px) {
  .reading-related-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media only screen and (max-width: 575.98px) {
  .reading-related-grid {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 0.25rem;
    margin: 0 -1.25rem;
    padding-inline: 1.25rem;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .reading-related-grid::-webkit-scrollbar {
    display: none;
  }
  .reading-related-grid .story {
    flex: 0 0 8.75rem;
    scroll-snap-align: start;
  }
}
.reading-related-grid .story-thumb {
  aspect-ratio: 2/3;
  border-radius: 0.6875rem;
}

.related-stories-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.625rem;
}
@media only screen and (min-width: 576px) {
  .related-stories-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media only screen and (min-width: 768px) {
  .related-stories-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media only screen and (min-width: 992px) {
  .related-stories-grid {
    grid-template-columns: repeat(5, 1fr);
  }
}
@media only screen and (min-width: 1200px) {
  .related-stories-grid {
    grid-template-columns: repeat(6, 1fr);
  }
}
@media only screen and (max-width: 575.98px) {
  .related-stories-grid {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 0.25rem;
    margin: 0 -1.25rem;
    padding-inline: 1.25rem;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .related-stories-grid::-webkit-scrollbar {
    display: none;
  }
  .related-stories-grid .story {
    flex: 0 0 8.75rem;
    scroll-snap-align: start;
  }
}
.related-stories-grid .story {
  display: block;
  transition: transform 0.15s ease-in-out;
}
.related-stories-grid .story:hover {
  transform: translateY(-3px);
}
.related-stories-grid .story:hover .story-thumb {
  border-color: var(--primary-color);
  box-shadow: var(--shadow-md);
}
.related-stories-grid .story-thumb {
  aspect-ratio: 2/3;
  border-radius: 0.6875rem;
  border: 1px solid var(--border-color);
  transition: all 0.15s ease-in-out;
}

.story-mini-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.25rem;
  font-size: 0.75rem;
  color: var(--text-muted);
  overflow: hidden;
}
.story-mini-meta span {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}
.story-mini-meta span + span::before {
  content: "·";
  margin-right: 0.25rem;
}

.latest-stories-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.875rem;
}
@media only screen and (min-width: 576px) {
  .latest-stories-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media only screen and (min-width: 768px) {
  .latest-stories-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media only screen and (min-width: 992px) {
  .latest-stories-grid {
    grid-template-columns: repeat(5, 1fr);
  }
}
@media only screen and (min-width: 1200px) {
  .latest-stories-grid {
    grid-template-columns: repeat(6, 1fr);
  }
}
@media only screen and (max-width: 575.98px) {
  .latest-stories-grid {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 0.25rem;
    margin: 0 -1.25rem;
    padding-inline: 1.25rem;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .latest-stories-grid::-webkit-scrollbar {
    display: none;
  }
  .latest-stories-grid .story-card {
    flex: 0 0 8.75rem;
    scroll-snap-align: start;
  }
}

.story-card {
  display: block;
  border-radius: 0.6875rem;
  transition: transform 0.15s ease-in-out;
}
.story-card:hover {
  transform: translateY(-3px);
}
.story-card:hover .story-thumb {
  border-color: var(--primary-color);
  box-shadow: var(--shadow-md);
}
.story-card .story-thumb {
  position: relative;
  aspect-ratio: 2/3;
  border-radius: 0.6875rem;
  border: 1px solid var(--border-color);
  box-shadow: var(--shadow-sm);
  overflow: hidden;
  transition: all 0.15s ease-in-out;
}
.story-card .story-badge {
  position: absolute;
  top: 0.5rem;
  left: 0.5rem;
  border-radius: 0.375rem;
  padding: 0.1875rem 0.5rem;
  font-size: 0.6875rem;
  font-weight: 700;
  color: #ffffff;
}
.story-card .story-badge-new {
  background-color: var(--accent-color);
}
.story-card .story-badge-done {
  background-color: var(--secondary-color);
}
.story-card .story-card-title {
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.35;
  color: var(--text-main);
}
.story-card .story-card-title:hover {
  color: var(--primary-color);
}
.story-card .story-card-chap {
  display: inline-block;
  border-radius: 1.25rem;
  background-color: rgba(91, 95, 239, 0.1);
  padding: 0.125rem 0.625rem;
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--primary-color);
}
.story-card .story-card-cats,
.story-card .story-card-time {
  font-size: 0.8125rem;
  color: var(--text-muted);
}

.section-banner-img .img {
  border-radius: 0.625rem;
}

.newsletter-box {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border-radius: var(--radius-card);
  background: linear-gradient(135deg, rgba(91, 95, 239, 0.08), rgba(139, 92, 246, 0.08));
  border: 1px solid var(--border-color);
  padding: 1.5rem;
}

.newsletter-desc {
  color: var(--text-muted);
  font-size: 0.875rem;
}

.newsletter-form .newsletter-input {
  height: 2.75rem;
  min-width: 15rem;
  border: 1px solid var(--border-color);
  border-radius: 0.625rem;
  padding-inline: 0.875rem;
  font-family: "quicksand";
}
.newsletter-form .newsletter-input:focus-visible {
  outline: none;
  border-color: var(--primary-color);
}

.newsletter-message {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--primary-color);
}
.newsletter-message.is-error {
  color: #e0245e;
}

.continue-reading-grid {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 0.875rem;
}
@media only screen and (min-width: 576px) {
  .continue-reading-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (min-width: 992px) {
  .continue-reading-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}

.continue-card {
  display: flex;
  align-items: center;
  gap: 0.875rem;
  border: 1px solid var(--border-color);
  border-radius: var(--radius-card);
  background-color: var(--card-bg);
  padding: 0.625rem;
  min-height: 6.75rem;
  transition: all 0.15s ease-in-out;
}
.continue-card:hover {
  border-color: var(--primary-color);
  box-shadow: var(--shadow-sm);
}
.continue-card .continue-card-thumb {
  flex-shrink: 0;
  width: 3.75rem;
  aspect-ratio: 2/3;
  border-radius: 0.5rem;
  overflow: hidden;
}
.continue-card .continue-card-content {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.1875rem;
}
.continue-card .continue-card-title {
  font-weight: 700;
  font-size: 0.875rem;
  color: var(--text-main);
  line-height: 1.3;
}
.continue-card .continue-card-chap {
  font-size: 0.75rem;
  color: var(--text-muted);
}
.continue-card .continue-card-cta {
  flex-shrink: 0;
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--primary-color);
  white-space: nowrap;
}

.continue-progress {
  display: block;
  height: 0.375rem;
  border-radius: 0.25rem;
  background-color: var(--border-color);
  overflow: hidden;
  margin-top: 0.375rem;
}
.continue-progress .continue-progress-bar {
  display: block;
  height: 100%;
  background-color: var(--primary-color);
  border-radius: 0.25rem;
}

.continue-progress-label {
  display: inline-block;
  margin-top: 0.125rem;
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--primary-color);
}

.review-summary-row {
  display: grid !important;
  grid-template-columns: 1fr;
  row-gap: 1.5rem;
  align-items: center;
}
@media only screen and (min-width: 992px) {
  .review-summary-row {
    grid-template-columns: 13.75rem minmax(0, 1fr) 11.25rem;
    column-gap: 2rem;
    row-gap: 0;
    position: relative;
  }
  .review-summary-row::before, .review-summary-row::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 1px;
    background-color: var(--border-color);
  }
  .review-summary-row::before {
    left: 14.75rem;
  }
  .review-summary-row::after {
    right: 12.25rem;
  }
}
.review-summary-row .review-summary-data,
.review-summary-row .glsr,
.review-summary-row .glsr-summary-wrap,
.review-summary-row .glsr-summary {
  display: contents;
}
.review-summary-row .glsr-summary-left {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  justify-self: center;
  gap: 0.25rem;
}
.review-summary-row .glsr-summary-rating .glsr-tag-value {
  font-size: 2.75rem !important;
  font-weight: 800;
  color: var(--text-main);
}
.review-summary-row .glsr-summary-stars {
  font-size: 1.125rem;
}
.review-summary-row .glsr-summary-text {
  font-size: 0.8125rem;
  color: var(--text-muted);
}
.review-summary-row .glsr-summary-percentages {
  width: 100%;
  justify-self: stretch;
}
.review-summary-row .glsr-bar {
  display: flex !important;
  align-items: center;
  gap: 0.5rem;
  margin-block: 0.375rem !important;
}
.review-summary-row .glsr-bar .glsr-bar-label {
  flex: 0 0 2.875rem;
  display: block !important;
  font-size: 0.8125rem;
}
.review-summary-row .glsr-bar .glsr-bar-percent {
  flex: 0 0 2.375rem;
  display: block !important;
  font-size: 0.8125rem;
  color: var(--text-muted);
  text-align: right;
}
.review-summary-row .glsr-bar-background {
  display: block !important;
  flex: 1;
  height: 0.625rem !important;
  border-radius: 0.375rem !important;
  background-color: var(--page-bg) !important;
  overflow: hidden;
}
.review-summary-row .glsr-bar-background-percent {
  display: block !important;
  height: 100% !important;
  border-radius: 0.375rem !important;
  background-color: var(--primary-color) !important;
}
.review-summary-row #btnWriteReview {
  justify-self: center;
  align-self: center;
  width: 100%;
  max-width: 11.25rem;
}
@media only screen and (min-width: 992px) {
  .review-summary-row #btnWriteReview {
    width: auto;
  }
}

.category-tiles-list {
  display: flex;
  gap: 0.75rem;
  overflow-x: auto;
  padding-bottom: 0.25rem;
  scroll-snap-type: x proximity;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.category-tiles-list::-webkit-scrollbar {
  display: none;
}
.category-tiles-list .category-tile {
  flex: 0 0 auto;
  width: 8.75rem;
  scroll-snap-align: start;
}
@media only screen and (min-width: 576px) {
  .category-tiles-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(9.375rem, 1fr));
    overflow-x: visible;
    padding-bottom: 0;
  }
  .category-tiles-list .category-tile {
    width: auto;
  }
}

.category-tile {
  display: flex;
  flex-direction: row;
  align-items: center;
  text-align: left;
  gap: 0.75rem;
  min-height: 5rem;
  border: 1px solid var(--border-color);
  border-radius: 0.875rem;
  background-color: var(--card-bg);
  padding: 0.875rem 1rem;
  transition: all 0.15s ease-in-out;
}
.category-tile:hover {
  border-color: var(--primary-color);
  box-shadow: var(--shadow-sm);
}
.category-tile .category-tile-icon {
  flex-shrink: 0;
  width: 3.25rem;
  height: 3.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background-color: rgba(91, 95, 239, 0.08);
  font-size: 1.625rem;
}
.category-tile .category-tile-text {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  min-width: 0;
}
.category-tile .category-tile-name {
  font-weight: 700;
  font-size: 0.9375rem;
  color: var(--text-main);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.category-tile .category-tile-count {
  font-size: 0.8125rem;
  color: var(--text-muted);
}

@media only screen and (min-width: 992px) {
  .section-most-read .col-lg-4 {
    position: relative;
  }
  .section-most-read .col-lg-4::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 1px;
    background-color: var(--border-color);
  }
}

.period-tabs .period-tab {
  border: 1px solid var(--border-color);
  border-radius: 1.25rem;
  background-color: #ffffff;
  color: var(--text-muted);
  padding: 0.25rem 0.875rem;
  font-size: 0.8125rem;
  font-weight: 600;
  cursor: pointer;
}
.period-tabs .period-tab.is-active {
  border-color: var(--primary-color);
  background-color: var(--primary-color);
  color: #ffffff;
}

.most-read-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.most-read-list .most-read-item {
  display: flex;
  align-items: center;
  gap: 0.875rem;
  min-height: 3.875rem;
}
.most-read-list .rank {
  flex-shrink: 0;
  width: 1.75rem;
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--border-color);
  text-align: center;
}
.most-read-list .rank.rank-1, .most-read-list .rank.rank-2, .most-read-list .rank.rank-3 {
  font-size: 1.375rem;
  font-weight: 800;
}
.most-read-list .rank.rank-1 {
  color: #f43f5e;
}
.most-read-list .rank.rank-2 {
  color: var(--accent-color);
}
.most-read-list .rank.rank-3 {
  color: var(--secondary-color);
}
.most-read-list .thumb {
  flex-shrink: 0;
  width: 2.75rem;
  aspect-ratio: 2/3;
  border-radius: 0.375rem;
}
.most-read-list .most-read-info {
  display: flex;
  flex-direction: column;
  gap: 0.1875rem;
  min-width: 0;
}
.most-read-list .name {
  font-weight: 600;
  font-size: 0.9375rem;
  color: var(--text-main);
}
.most-read-list .name:hover {
  color: var(--primary-color);
}
.most-read-list .most-read-views {
  font-size: 0.8125rem;
  color: var(--text-muted);
}
.most-read-list .most-read-empty {
  color: var(--text-muted);
  font-size: 0.875rem;
}

.section-single-story .story-detail-container {
  max-width: none;
  width: min(1240px, 100% - 40px);
}
.section-single-story .story-hero .story-hero-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}
@media only screen and (min-width: 992px) {
  .section-single-story .story-hero .story-hero-grid {
    grid-template-columns: 17.5rem minmax(0, 1fr);
    gap: 3.5rem;
  }
}
.section-single-story .story-hero .story-hero-ad-col {
  grid-column: 1/-1;
}
@media only screen and (min-width: 992px) {
  .section-single-story .story-hero .story-hero-info-col {
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 37.5rem;
  }
}
.section-single-story .story-hero .story-thumb {
  width: 100%;
  border-radius: 0.8125rem;
  box-shadow: var(--shadow-md);
  aspect-ratio: 1/1;
}
@media only screen and (min-width: 992px) {
  .section-single-story .story-hero .story-thumb {
    width: 17.5rem;
  }
}
.section-single-story .story-hero .story-thumb img {
  transform: scale(1.08);
}
.section-single-story .story-hero .story-title {
  font-weight: 700;
  font-size: 1.875rem !important;
  line-height: 1.2;
}
@media only screen and (min-width: 992px) {
  .section-single-story .story-hero .story-title {
    font-size: 2.25rem !important;
  }
}
.section-single-story .story-hero .meta-item,
.section-single-story .story-hero .story-date {
  color: var(--text-muted);
  font-size: 0.875rem;
}
.section-single-story .story-hero .story-terms-group .label {
  color: var(--text-muted);
}
.section-single-story .story-hero .glsr-summary-rating,
.section-single-story .story-hero .glsr-summary-stars,
.section-single-story .story-hero .glsr-tag-value {
  font-size: 0.9375rem !important;
}
.section-single-story .story-hero .story-hero-info-col > .d-flex.gap-24 {
  gap: 1.25rem !important;
  font-size: 0.9375rem;
}
.section-single-story .story-hero .story-hero-info-col > .d-flex.gap-24 svg {
  width: 1.125rem;
  height: 1.125rem;
}
.section-single-story .story-hero .story-info-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
@media only screen and (min-width: 992px) {
  .section-single-story .story-hero .story-info-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 1.5rem;
    row-gap: 0.75rem;
  }
}
.section-single-story .story-hero .info-row {
  display: flex;
  gap: 0.625rem;
  font-size: 0.9375rem;
}
.section-single-story .story-hero .info-label {
  flex-shrink: 0;
  width: 5.875rem;
  color: var(--text-muted);
}
.section-single-story .story-hero .info-value {
  font-weight: 600;
  color: var(--text-main);
}
.section-single-story .story-hero .info-value a {
  color: var(--text-main);
}
.section-single-story .story-hero .info-value a:hover {
  color: var(--primary-color);
}
.section-single-story .story-hero .btn {
  height: 2.875rem;
  padding-inline: 1.75rem;
  flex: 1 1 calc(50% - 0.375rem);
  text-align: center;
}
.section-single-story .story-box {
  border: 1px solid var(--border-color);
  border-radius: var(--radius-card);
  background-color: var(--card-bg);
  box-shadow: var(--shadow-sm);
  padding: 1.25rem 1.5rem;
}
.section-single-story .box-title {
  font-size: 1.125rem;
  font-weight: 700;
}
.section-single-story .box-title .count {
  color: var(--text-muted);
  font-weight: 500;
}
.section-single-story .story-intro-box {
  padding: 1.5rem;
}
.section-single-story .story-short-desc {
  color: var(--text-main);
  font-size: 0.875rem;
  line-height: 1.75;
}
.section-single-story .story-short-desc.read-more {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  line-clamp: 5;
}
.section-single-story .btn-read-more {
  display: block;
  text-align: center;
  margin-top: 0.5rem;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--primary-color);
  cursor: pointer;
}
.section-single-story .btn-read-more:hover {
  text-decoration: underline;
}
.section-single-story .chapters-box-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}
.section-single-story .chapters-count {
  font-size: 0.8125rem;
  color: var(--text-muted);
  margin-top: 0.125rem;
}
.section-single-story .chapters-box-tools {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.625rem;
}
.section-single-story .chapter-search-input {
  height: 2.25rem;
  border: 1px solid var(--border-color);
  border-radius: 0.5rem;
  padding-inline: 0.75rem;
  font-family: "quicksand";
  min-width: 10rem;
}
.section-single-story .chapter-search-input:focus-visible {
  outline: none;
  border-color: var(--primary-color);
}
.section-single-story .story-chapters-list {
  display: flex;
  flex-direction: column;
  border-top: 1px solid var(--border-color);
  max-height: 30rem;
  overflow-y: auto;
}
.section-single-story .story-chapters-list .chapter-row {
  padding: 0.9375rem 0.75rem;
  border-bottom: 1px solid var(--border-color);
  color: var(--text-main);
  font-weight: 600;
  transition: background-color 0.15s ease-in-out, color 0.15s ease-in-out;
}
.section-single-story .story-chapters-list .chapter-row:hover {
  color: var(--primary-color);
  background-color: rgba(91, 95, 239, 0.06);
}
.section-single-story .story-chapters-list .chapter-badge-new {
  display: inline-block;
  margin-left: 0.375rem;
  border-radius: 0.375rem;
  background-color: var(--accent-color);
  color: #ffffff;
  font-size: 0.625rem;
  font-weight: 700;
  padding: 0.0625rem 0.375rem;
  vertical-align: middle;
}
.section-single-story .related-stories {
  max-width: 75rem;
}

@media only screen and (max-width: 575.98px) {
  .reading-page ~ .related-stories {
    display: none;
  }
  body:has(.reading-page) footer.footer {
    display: none;
  }
}
.reading-page {
  --reading-bg: #fffdf7;
  --reading-text: #282828;
  background-color: var(--reading-bg);
  color: var(--reading-text);
  transition: background-color 0.2s ease, color 0.2s ease;
}
.reading-page[data-bg-theme=white] {
  --reading-bg: #ffffff;
  --reading-text: #27272a;
}
.reading-page[data-bg-theme=cream] {
  --reading-bg: #fffdf7;
  --reading-text: #27272a;
}
.reading-page[data-bg-theme=gray] {
  --reading-bg: #eef0f2;
  --reading-text: #27272a;
}
.reading-page[data-bg-theme=dark] {
  --reading-bg: #1c1c1e;
  --reading-text: #e8e8e8;
}

.reading-progress-wrap {
  width: 100%;
}

.reading-progress-info {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--reading-text);
  opacity: 0.75;
  margin-bottom: 0.375rem;
}

.reading-progress {
  height: 0.4375rem;
  border-radius: 0.25rem;
  background-color: var(--border-color);
  overflow: hidden;
}
.reading-progress .reading-progress-bar {
  height: 100%;
  width: 0%;
  background-color: var(--primary-color);
  transition: width 0.1s linear;
}

.reading-container {
  max-width: 47.5rem;
  width: calc(100% - 32px);
  margin-inline: auto;
  padding-top: 1.5rem;
  padding-bottom: 2.5rem;
}
.reading-container .breadcrumb-item {
  color: var(--reading-text) !important;
}

.reading-head {
  text-align: left;
}
.reading-head .chap-name {
  font-weight: 700;
  font-size: 2.125rem !important;
  margin-bottom: 0.25rem;
}
@media only screen and (max-width: 575.98px) {
  .reading-head .chap-name {
    font-size: 1.75rem !important;
  }
}

.reading-toolbar {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 0.75rem;
  width: 100%;
}
.reading-toolbar .toolbar-group {
  display: flex;
  align-items: center;
  gap: 0.625rem;
}
.reading-toolbar .toolbar-btn {
  min-width: 2.625rem;
  height: 2.625rem;
  padding-inline: 0.625rem;
  border: 1px solid var(--border-color);
  border-radius: 0.625rem;
  background-color: #ffffff;
  color: var(--text-main);
  font-weight: 700;
  font-size: 0.9375rem;
  cursor: pointer;
}
.reading-toolbar .toolbar-btn:hover {
  border-color: var(--primary-color);
  color: var(--primary-color);
}
.reading-toolbar .toolbar-select {
  height: 2.625rem;
  border: 1px solid var(--border-color);
  border-radius: 0.625rem;
  background-color: #ffffff;
  color: var(--text-main);
  font-weight: 600;
  font-size: 0.8125rem;
  padding-inline: 0.625rem;
  cursor: pointer;
}
.reading-toolbar .toolbar-select:focus-visible {
  outline: none;
  border-color: var(--primary-color);
}
.reading-toolbar .bg-theme-group {
  gap: 0.625rem;
}
.reading-toolbar .bg-swatch {
  width: 1.625rem;
  height: 1.625rem;
  border-radius: 50%;
  border: 1px solid var(--border-color);
  cursor: pointer;
  padding: 0;
  transition: box-shadow 0.15s ease-in-out, border-color 0.15s ease-in-out;
}
.reading-toolbar .bg-swatch-white {
  background-color: #ffffff;
}
.reading-toolbar .bg-swatch-cream {
  background-color: #fffdf7;
}
.reading-toolbar .bg-swatch-gray {
  background-color: #eef0f2;
}
.reading-toolbar .bg-swatch-dark {
  background-color: #1c1c1e;
}
.reading-toolbar .bg-swatch:hover:not(.is-active) {
  border-color: var(--primary-color);
}
.reading-toolbar .bg-swatch.is-active {
  border-color: var(--primary-color);
  box-shadow: 0 0 0 2px #ffffff, 0 0 0 3px var(--primary-color);
}
@media only screen and (max-width: 575.98px) {
  .reading-toolbar {
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.5rem;
    row-gap: 0.625rem;
  }
  .reading-toolbar .toolbar-group {
    flex-shrink: 0;
    gap: 0.375rem;
  }
  .reading-toolbar .toolbar-btn {
    min-width: 2rem;
    height: 2rem;
    padding-inline: 0.375rem;
    font-size: 0.75rem;
  }
  .reading-toolbar .toolbar-select {
    height: 2rem;
    width: 6.5rem;
    font-size: 0.6875rem;
    padding-inline: 0.375rem;
    padding-right: 1rem;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    flex-shrink: 0;
  }
  .reading-toolbar .bg-theme-group {
    flex-basis: 100%;
    justify-content: center;
    gap: 0.5rem;
  }
  .reading-toolbar .bg-swatch {
    width: 1.125rem;
    height: 1.125rem;
  }
}

.story-chap {
  border: 1px solid var(--border-color);
  border-radius: 0.9375rem;
  background-color: var(--reading-bg);
  box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04);
  padding: 1.25rem 1.5rem;
}
@media only screen and (max-width: 575.98px) {
  .story-chap {
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background-color: transparent;
    margin-inline: -1rem;
    padding-inline: 1rem;
  }
}
.story-chap .chap-content {
  font-size: 1.1875rem;
  line-height: 1.9;
  color: var(--reading-text);
}
@media only screen and (max-width: 575.98px) {
  .story-chap .chap-content {
    font-size: 1.125rem;
    line-height: 1.85;
  }
}
.story-chap .chap-content p {
  margin-bottom: 1.125rem;
}

.reading-chap-pagination {
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 0.625rem;
}
.reading-chap-pagination .prev-chap,
.reading-chap-pagination .next-chap,
.reading-chap-pagination .chap-list-link {
  flex: 1 1 8.75rem;
  min-height: 2.875rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  padding: 0.625rem 0.875rem;
  font-family: inherit;
  font-size: 0.8125rem;
  font-weight: 600;
  text-align: center;
  border: 1px solid transparent;
  border-radius: 0.625rem;
  background-color: rgba(91, 95, 239, 0.08);
  color: var(--primary-color);
  white-space: nowrap;
  cursor: pointer;
  transition: all 0.15s ease-in-out;
}
.reading-chap-pagination .prev-chap:hover,
.reading-chap-pagination .next-chap:hover,
.reading-chap-pagination .chap-list-link:hover {
  background-color: rgba(91, 95, 239, 0.15);
}
.reading-chap-pagination .prev-chap.disabled,
.reading-chap-pagination .next-chap.disabled,
.reading-chap-pagination .chap-list-link.disabled {
  opacity: 0.4;
  pointer-events: none;
}
.reading-chap-pagination .chap-list-link {
  color: var(--reading-text);
}
.reading-chap-pagination .next-chap {
  background-color: var(--primary-color);
  color: #ffffff;
  font-weight: 700;
}
.reading-chap-pagination .next-chap:hover {
  background-color: #4548d1;
  color: #ffffff;
}
.reading-chap-pagination .next-chap.disabled {
  background-color: var(--border-color);
  color: var(--reading-text);
}

#chapterListModal .modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem 1.25rem;
  border-bottom: 1px solid var(--border-color);
}
#chapterListModal .modal-body {
  padding: 1rem 1.25rem 1.25rem;
}
#chapterListModal .chapter-search-input {
  height: 2.5rem;
  border: 1px solid var(--border-color);
  border-radius: 0.5rem;
  padding-inline: 0.75rem;
  font-family: inherit;
  font-size: 0.875rem;
}
#chapterListModal .chapter-search-input:focus-visible {
  outline: none;
  border-color: var(--primary-color);
}
#chapterListModal .chapter-modal-list {
  display: flex;
  flex-direction: column;
  border-top: 1px solid var(--border-color);
  max-height: 22.5rem;
  overflow-y: auto;
}
#chapterListModal .chapter-modal-list .chapter-row {
  padding: 0.8125rem 0.25rem;
  border-bottom: 1px solid var(--border-color);
  color: var(--text-main);
  font-weight: 600;
  font-size: 0.875rem;
  transition: background-color 0.15s ease-in-out, color 0.15s ease-in-out;
}
#chapterListModal .chapter-modal-list .chapter-row:hover {
  color: var(--primary-color);
  background-color: rgba(91, 95, 239, 0.06);
}
#chapterListModal .chapter-modal-list .chapter-row.is-current {
  color: var(--primary-color);
  background-color: rgba(91, 95, 239, 0.08);
  font-weight: 700;
}

.modal-backdrop {
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}

.popup-ad-dialog {
  max-width: 26.25rem;
}

.popup-ad-content {
  position: relative;
  border: 0;
  border-radius: 1.25rem;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.18);
  overflow: hidden;
}

.popup-ad-close {
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  z-index: 2;
  width: 2rem;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(255, 255, 255, 0.9) !important;
  border-radius: 50%;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  opacity: 1;
}

.popup-ad-body {
  padding: 3.25rem 1.5rem 1.5rem;
}

.popup-ad-text {
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--text-main);
  margin-bottom: 1rem;
}
.popup-ad-text p {
  margin-bottom: 0.5rem;
}

.popup-ad-btn {
  display: block;
  width: 100%;
  margin-bottom: 1rem;
  white-space: normal;
  word-break: break-word;
}

.popup-ad-image {
  border-radius: 0.75rem;
  overflow: hidden;
}
.popup-ad-image img {
  display: block;
}

.reading-complete {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
  text-align: center;
}
.reading-complete .reading-complete-label {
  font-size: 0.875rem;
  color: var(--reading-text);
  opacity: 0.7;
}

.archive-heading .archive-title {
  font-size: 1.75rem;
  font-weight: 800;
  color: var(--text-main);
  margin-bottom: 0.5rem;
}
@media only screen and (max-width: 575.98px) {
  .archive-heading .archive-title {
    font-size: 1.375rem;
  }
}
.archive-heading .archive-desc {
  font-size: 0.9375rem;
  color: var(--text-muted);
  margin-bottom: 0.625rem;
  max-width: 45rem;
}
.archive-heading .archive-count {
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--primary-color);
}

.archive-layout {
  display: flex;
  align-items: flex-start;
  gap: 1.75rem;
}
@media only screen and (max-width: 767.98px) {
  .archive-layout {
    flex-direction: column;
    gap: 1rem;
  }
}

.btn-mobile-filter {
  display: none;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  height: 2.75rem;
  border: 1px solid var(--border-color);
  border-radius: 0.625rem;
  background-color: var(--card-bg);
  color: var(--text-main);
  font-family: inherit;
  font-size: 0.875rem;
  font-weight: 700;
}
@media only screen and (max-width: 767.98px) {
  .btn-mobile-filter {
    display: flex;
  }
}

.archive-sidebar {
  flex: 0 0 17rem;
  border: 1px solid var(--border-color);
  border-radius: var(--radius-card);
  background-color: var(--card-bg);
  box-shadow: var(--shadow-sm);
  padding: 1.25rem;
  position: sticky;
  top: 5.5rem;
}
@media only screen and (max-width: 767.98px) {
  .archive-sidebar {
    position: static;
    flex-basis: auto;
    width: 100%;
    display: none;
  }
  .archive-sidebar.is-open {
    display: block;
  }
}

.filter-group {
  padding-bottom: 1.125rem;
  margin-bottom: 1.125rem;
  border-bottom: 1px solid var(--border-color);
}
.filter-group:last-of-type {
  margin-bottom: 1.125rem;
}

.filter-group-title {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.875rem;
  font-weight: 800;
  color: var(--text-main);
  margin-bottom: 0.875rem;
}
.filter-group-title svg {
  flex-shrink: 0;
  color: var(--primary-color);
}

.filter-genre-list {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.filter-genre-list a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  padding: 0.5rem 0.625rem;
  border-radius: 0.5rem;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--text-main);
  transition: background-color 0.15s ease-in-out, color 0.15s ease-in-out;
}
.filter-genre-list a:hover {
  background-color: rgba(91, 95, 239, 0.08);
  color: var(--primary-color);
}
.filter-genre-list a.is-active {
  background-color: rgba(91, 95, 239, 0.1);
  color: var(--primary-color);
}
.filter-genre-list a.is-active .filter-count {
  color: var(--primary-color);
}
.filter-genre-list .filter-count {
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--text-muted);
}

.filter-radio,
.filter-checkbox {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-main);
  cursor: pointer;
  padding-block: 0.375rem;
}
.filter-radio input,
.filter-checkbox input {
  appearance: none;
  -webkit-appearance: none;
  flex-shrink: 0;
  width: 1.125rem;
  height: 1.125rem;
  border: 2px solid var(--border-color);
  background-color: var(--card-bg);
  cursor: pointer;
  position: relative;
  transition: border-color 0.15s ease-in-out;
}
.filter-radio input:hover,
.filter-checkbox input:hover {
  border-color: var(--primary-color);
}
.filter-radio input:checked,
.filter-checkbox input:checked {
  border-color: var(--primary-color);
}

.filter-radio input {
  border-radius: 50%;
}
.filter-radio input:checked::after {
  content: "";
  position: absolute;
  inset: 0.1875rem;
  border-radius: 50%;
  background-color: var(--primary-color);
}

.filter-checkbox input {
  border-radius: 0.3125rem;
}
.filter-checkbox input:checked {
  background-color: var(--primary-color);
}
.filter-checkbox input:checked::after {
  content: "";
  position: absolute;
  left: 0.3125rem;
  top: 0.0625rem;
  width: 0.3125rem;
  height: 0.625rem;
  border: solid #ffffff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.btn-clear-filter {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  height: 2.625rem;
  border: 1px solid var(--primary-color);
  border-radius: 0.625rem;
  color: var(--primary-color);
  font-size: 0.875rem;
  font-weight: 700;
  transition: background-color 0.15s ease-in-out;
}
.btn-clear-filter:hover {
  background-color: rgba(91, 95, 239, 0.08);
  color: var(--primary-color);
}

.archive-main {
  flex: 1 1 0;
  min-width: 0;
}

.archive-toolbar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.75rem;
}

.archive-sort-select select {
  height: 2.5rem;
  border: 1px solid var(--border-color);
  border-radius: 0.625rem;
  background-color: var(--card-bg);
  padding-inline: 0.875rem;
  font-family: inherit;
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--text-main);
  cursor: pointer;
}
.archive-sort-select select:focus-visible {
  outline: none;
  border-color: var(--primary-color);
}

.archive-view-toggle {
  display: flex;
  border: 1px solid var(--border-color);
  border-radius: 0.625rem;
  overflow: hidden;
  flex-shrink: 0;
}
.archive-view-toggle .view-toggle-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  background-color: var(--card-bg);
  color: var(--text-muted);
  border: 0;
}
.archive-view-toggle .view-toggle-btn:first-child {
  border-right: 1px solid var(--border-color);
}
.archive-view-toggle .view-toggle-btn.is-active {
  background-color: var(--primary-color);
  color: #ffffff;
}

.stories-archive-grid .story-thumb {
  position: relative;
  aspect-ratio: 204/300;
  border-radius: 0.625rem;
}

.story-badge {
  position: absolute;
  top: 0.5rem;
  left: 0.5rem;
  z-index: 1;
  padding: 0.1875rem 0.5625rem;
  border-radius: 0.375rem;
  font-size: 0.6875rem;
  font-weight: 800;
  color: #ffffff;
  line-height: 1.6;
}

.story-badge-new {
  background-color: var(--primary-color);
}

.story-badge-hot {
  background-color: var(--accent-color);
}

.story-archive-chapter {
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--primary-color);
}
.story-archive-chapter:hover {
  text-decoration: underline;
}

.story-archive-stats {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  font-size: 0.75rem;
  color: var(--text-muted);
}
.story-archive-stats span {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
}
.story-archive-stats .stat-rating {
  color: var(--accent-color);
  font-weight: 700;
}

.stories-archive-grid.is-list-view {
  display: flex !important;
  flex-direction: column;
  gap: 0.75rem;
}
.stories-archive-grid.is-list-view .story {
  display: flex;
  align-items: center;
  gap: 0.875rem;
  padding: 0.625rem;
  border: 1px solid var(--border-color);
  border-radius: var(--radius-card);
  background-color: var(--card-bg);
  transition: border-color 0.15s ease-in-out;
}
.stories-archive-grid.is-list-view .story:hover {
  border-color: var(--primary-color);
}
.stories-archive-grid.is-list-view .story-thumb {
  flex: 0 0 3.5rem;
  width: 3.5rem;
  aspect-ratio: 204/300;
  align-self: flex-start;
}
.stories-archive-grid.is-list-view a.line-clamp-2 {
  -webkit-line-clamp: 1 !important;
}
.stories-archive-grid.is-list-view .story-mini-meta,
.stories-archive-grid.is-list-view .story-archive-chapter,
.stories-archive-grid.is-list-view .story-archive-stats {
  margin-top: 0.25rem !important;
}

.section-about .container {
  max-width: 77.5rem;
  width: calc(100% - 40px);
}

.about-hero {
  display: flex;
  align-items: center;
  gap: 2rem;
  margin-top: 1.5rem;
  border: 1px solid var(--border-color);
  border-radius: var(--radius-card);
  background-color: var(--card-bg);
  box-shadow: var(--shadow-sm);
  min-height: 17.875rem;
  padding: 1.5rem 2.25rem;
  justify-content: space-between;
}
@media only screen and (max-width: 767.98px) {
  .about-hero {
    flex-direction: column;
    text-align: center;
    padding: 1.5rem;
    gap: 1.25rem;
  }
}

.about-hero-content {
  flex: 0 1 35rem;
  min-width: 0;
  max-width: 48%;
}
@media only screen and (max-width: 767.98px) {
  .about-hero-content {
    max-width: none;
  }
}

.about-badge {
  display: inline-block;
  padding: 0.375rem 0.875rem;
  border-radius: 1.25rem;
  background-color: rgba(91, 95, 239, 0.1);
  color: var(--primary-color);
  font-size: 0.8125rem;
  font-weight: 700;
  margin-bottom: 1rem;
}

.about-hero-title {
  font-size: 1.9375rem;
  font-weight: 800;
  line-height: 1.25;
  color: var(--text-main);
  margin-bottom: 1rem;
}
@media only screen and (max-width: 767.98px) {
  .about-hero-title {
    font-size: 1.5rem;
  }
}

.about-hero-desc {
  font-size: 0.875rem;
  line-height: 1.65;
  color: var(--text-muted);
  margin-bottom: 1.5rem;
  max-width: 32.5rem;
}
@media only screen and (max-width: 767.98px) {
  .about-hero-desc {
    max-width: none;
  }
}

.about-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
}
.about-hero-actions .btn {
  padding-inline: 1.125rem;
  font-size: 0.875rem;
  gap: 0.375rem;
}
@media only screen and (max-width: 767.98px) {
  .about-hero-actions {
    justify-content: center;
  }
}

.about-hero-illustration {
  flex: 0 1 25rem;
  width: 43%;
  overflow: hidden;
}
@media only screen and (max-width: 767.98px) {
  .about-hero-illustration {
    flex-basis: auto;
    max-width: 20rem;
  }
}
.about-hero-illustration img {
  display: block;
  width: 100%;
  height: auto;
  transform: scale(1.12);
  transform-origin: center right;
}

.about-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
  margin-top: 1rem;
}
@media only screen and (min-width: 576px) and (max-width: 991.98px) {
  .about-stats {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 575.98px) {
  .about-stats {
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem;
  }
}

.about-stat-card {
  border: 1px solid rgba(229, 231, 235, 0.7);
  border-radius: var(--radius-card);
  background-color: var(--card-bg);
  box-shadow: 0 1px 4px rgba(16, 24, 40, 0.04);
  display: grid;
  grid-template-columns: 3.5rem minmax(0, 1fr);
  grid-template-rows: 1.5rem auto 1fr;
  column-gap: 1rem;
  align-content: center;
  min-height: 6.25rem;
  padding: 1.125rem 1.25rem;
}
@media only screen and (max-width: 575.98px) {
  .about-stat-card {
    padding: 1.25rem;
  }
}

.about-stat-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 50%;
  grid-column: 1;
  grid-row: 1/4;
  align-self: center;
  margin-bottom: 0;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
.about-stat-icon svg {
  display: none;
}

.about-icon-purple {
  background-image: url("../images/about-icons/stat-books.png");
}

.about-icon-orange {
  background-image: url("../images/about-icons/stat-users.png");
}

.about-icon-blue {
  background-image: url("../images/about-icons/stat-genres.png");
}

.about-icon-green {
  background-image: url("../images/about-icons/stat-calendar.png");
}

.about-stat-title {
  grid-column: 2;
  font-size: 1.1875rem;
  font-weight: 800;
  color: var(--text-main);
  margin-bottom: 0.25rem;
}

.about-stat-label {
  grid-column: 2;
  font-size: 0.875rem;
  font-weight: 800;
  color: var(--text-main);
  margin-bottom: 0.375rem;
}

.about-stat-desc {
  grid-column: 2;
  font-size: 0.6875rem;
  line-height: 1.4;
  color: var(--text-muted);
  margin-bottom: 0;
}

.about-section-title {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 1.5rem;
  padding-block: 0.75rem;
}
.about-section-title h2 {
  position: relative;
  z-index: 1;
  padding-inline: 1.625rem;
  background-color: var(--body-bg);
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--text-main);
  text-align: center;
}
@media only screen and (max-width: 575.98px) {
  .about-section-title h2 {
    font-size: 1.5rem;
  }
}
.about-section-title .about-section-title-icon-row {
  position: absolute;
  inset-inline: 0;
  top: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  width: 100%;
  max-width: none;
  margin-bottom: 0;
}
.about-section-title .line {
  flex: 1 1 0;
  height: 1px;
  background-color: var(--border-color);
}
.about-section-title .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 15.3125rem;
  color: var(--primary-color);
}
.about-section-title .icon svg {
  width: 0.5rem;
  height: 0.5rem;
}

.about-mission-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
  margin-top: 0;
}
@media only screen and (max-width: 767.98px) {
  .about-mission-grid {
    grid-template-columns: 1fr;
  }
}

.about-mission-card {
  border: 1px solid var(--border-color);
  border-radius: var(--radius-card);
  background-color: var(--card-bg);
  box-shadow: var(--shadow-sm);
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  column-gap: 0.875rem;
  align-content: center;
  min-height: 6.625rem;
  padding: 1.125rem 1.25rem;
  text-align: left;
}

.about-mission-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  grid-row: 1/3;
  align-self: center;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  margin-bottom: 0;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
.about-mission-icon svg {
  display: none;
}

.about-mission-card:nth-child(1) .about-mission-icon {
  background-image: url("../images/about-icons/mission-quality.png");
}

.about-mission-card:nth-child(2) .about-mission-icon {
  background-image: url("../images/about-icons/mission-reading.png");
}

.about-mission-card:nth-child(3) .about-mission-icon {
  background-image: url("../images/about-icons/mission-heart.png");
}

.about-mission-title {
  font-size: 0.875rem;
  font-weight: 800;
  color: var(--text-main);
  margin-bottom: 0.5rem;
}

.about-mission-desc {
  font-size: 0.78125rem;
  line-height: 1.55;
  color: var(--text-muted);
  margin-bottom: 0;
}

.about-bottom-grid {
  display: grid;
  grid-template-columns: 58fr 42fr;
  gap: 1rem;
  align-items: stretch;
  margin-top: 1.125rem;
}
@media only screen and (max-width: 767.98px) {
  .about-bottom-grid {
    grid-template-columns: 1fr;
  }
}

.about-offer-card,
.about-cta-card {
  border-radius: var(--radius-card);
  padding: 2rem;
}
.about-offer-card h2,
.about-cta-card h2 {
  font-size: 1.1875rem;
  font-weight: 800;
  color: var(--text-main);
  margin-bottom: 1.125rem;
}

.about-offer-card {
  border: 1px solid var(--border-color);
  background-color: var(--card-bg);
  box-shadow: var(--shadow-sm);
  display: grid;
  grid-template-columns: minmax(0, 1fr) 46%;
  grid-template-rows: auto 1fr;
  column-gap: 1.25rem;
}
.about-offer-card h2 {
  grid-column: 1;
}

.about-checklist {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  grid-column: 1;
  margin-bottom: 0;
}
.about-checklist li {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--text-main);
}

.about-check-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 50%;
  background-color: var(--primary-color);
  color: #ffffff;
}

.about-offer-illustration {
  grid-column: 2;
  grid-row: 1/3;
  min-height: 12.8125rem;
  border-radius: 0.75rem;
  overflow: hidden;
}
.about-offer-illustration img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.08);
  transform-origin: center;
}

.about-cta-card {
  background: linear-gradient(160deg, rgba(91, 95, 239, 0.08), rgba(139, 92, 246, 0.08));
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 2.375rem;
}
.about-cta-card p {
  font-size: 0.84375rem;
  line-height: 1.7;
  color: var(--text-muted);
  margin-bottom: 1.5rem;
}
.about-cta-card .btn {
  align-self: flex-start;
}

@media only screen and (max-width: 767.98px) {
  .about-hero-content,
  .about-hero-illustration {
    width: 100%;
    max-width: none;
  }
  .about-stat-card {
    min-height: 7.25rem;
  }
  .about-offer-card {
    grid-template-columns: 1fr;
  }
  .about-offer-card h2,
  .about-offer-card .about-checklist,
  .about-offer-card .about-offer-illustration {
    grid-column: 1;
  }
  .about-offer-card .about-offer-illustration {
    grid-row: auto;
    margin-top: 1.25rem;
  }
}
@media only screen and (max-width: 575.98px) {
  .section-about .container {
    width: calc(100% - 24px);
  }
  .about-hero {
    padding: 1.375rem 1.125rem;
  }
  .about-hero-actions {
    flex-direction: column;
  }
  .about-hero-actions .btn {
    width: 100%;
  }
  .about-stats {
    grid-template-columns: 1fr;
  }
  .about-section-title h2 {
    padding-inline: 0.875rem;
    font-size: 1.375rem;
  }
  .about-section-title .icon {
    width: 11.875rem;
  }
  .about-cta-card {
    padding: 1.625rem 1.375rem;
  }
}
.section-policy .container {
  max-width: none;
  width: min(1280px, 100% - 40px);
}

.policy-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  margin-top: 1.5rem;
  border: 1px solid var(--border-color);
  border-radius: var(--radius-card);
  background-color: var(--card-bg);
  box-shadow: var(--shadow-sm);
  padding: 2rem;
}
@media only screen and (max-width: 767.98px) {
  .policy-hero {
    flex-direction: column;
    text-align: center;
    padding: 1.5rem;
    gap: 1.25rem;
  }
}

.policy-hero-content {
  flex: 1 1 0;
  min-width: 0;
  max-width: 35rem;
}

.policy-badge {
  display: inline-block;
  padding: 0.375rem 0.875rem;
  border-radius: 1.25rem;
  background-color: rgba(91, 95, 239, 0.1);
  color: var(--primary-color);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  margin-bottom: 1rem;
}

.policy-hero-title {
  font-size: 1.875rem;
  font-weight: 800;
  line-height: 1.25;
  color: var(--text-main);
  margin-bottom: 1rem;
}
@media only screen and (max-width: 767.98px) {
  .policy-hero-title {
    font-size: 1.375rem;
  }
}

.policy-hero-desc {
  font-size: 0.90625rem;
  line-height: 1.8;
  color: var(--text-muted);
  margin-bottom: 0;
}

.policy-hero-illustration {
  flex: 0 0 17.5rem;
}
@media only screen and (max-width: 767.98px) {
  .policy-hero-illustration {
    flex-basis: auto;
    max-width: 13.75rem;
  }
}
.policy-hero-illustration img {
  display: block;
  width: 100%;
  height: auto;
}

.policy-overview-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 1rem;
  margin-top: 1.5rem;
}
@media only screen and (max-width: 991.98px) {
  .policy-overview-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media only screen and (max-width: 575.98px) {
  .policy-overview-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 0.625rem;
  }
}

.policy-overview-card {
  border: 1px solid var(--border-color);
  border-radius: 0.875rem;
  background-color: var(--card-bg);
  box-shadow: 0 1px 4px rgba(16, 24, 40, 0.04);
  padding: 1.125rem;
}

.policy-overview-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0.875rem;
}

.policy-overview-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background-color: rgba(91, 95, 239, 0.1);
  color: var(--primary-color);
  flex-shrink: 0;
}
.policy-overview-icon svg {
  width: 1.25rem;
  height: 1.25rem;
}

.policy-overview-num {
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--text-muted);
}

.policy-overview-title {
  font-size: 0.90625rem;
  font-weight: 800;
  color: var(--text-main);
  margin-bottom: 0.375rem;
}

.policy-overview-desc {
  font-size: 0.78125rem;
  line-height: 1.6;
  color: var(--text-muted);
  margin-bottom: 0;
}

.policy-sections {
  margin-top: 2rem;
  border: 1px solid var(--border-color);
  border-radius: var(--radius-card);
  background-color: var(--card-bg);
  box-shadow: var(--shadow-sm);
  overflow: hidden;
}

.policy-section-row {
  display: grid;
  grid-template-columns: 58fr 42fr;
  gap: 2rem;
  padding: 2rem;
}
.policy-section-row + .policy-section-row {
  border-top: 1px solid var(--border-color);
}
@media only screen and (max-width: 767.98px) {
  .policy-section-row {
    grid-template-columns: 1fr;
    gap: 1.125rem;
    padding: 1.375rem;
  }
}

.policy-section-head {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 0.875rem;
}

.policy-section-num {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  background-color: var(--primary-color);
  color: #ffffff;
  font-size: 0.8125rem;
  font-weight: 700;
}

.policy-section-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 3.25rem;
  height: 3.25rem;
  border-radius: 50%;
  background-color: rgba(91, 95, 239, 0.1);
  color: var(--primary-color);
}
.policy-section-icon svg {
  width: 1.5rem;
  height: 1.5rem;
}

.policy-section-title {
  font-size: 1.1875rem;
  font-weight: 800;
  color: var(--text-main);
  margin-bottom: 0;
}

.policy-section-desc {
  font-size: 0.875rem;
  line-height: 1.8;
  color: var(--text-muted);
  margin-bottom: 0;
}

.policy-section-list {
  margin-top: 0.625rem;
  margin-bottom: 0;
  padding-left: 1.25rem;
}
.policy-section-list li {
  font-size: 0.875rem;
  line-height: 1.8;
  color: var(--text-muted);
}

.policy-callout {
  align-self: start;
  border-radius: 0.875rem;
  border: 1px solid;
  padding: 1.25rem 1.375rem;
}

.policy-callout-title {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.875rem;
  font-weight: 800;
  margin-bottom: 0.75rem;
}

.policy-callout-text {
  font-size: 0.84375rem;
  line-height: 1.8;
  margin-bottom: 0;
}

.policy-callout-list {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  margin-bottom: 0;
}
.policy-callout-list li {
  display: flex;
  align-items: flex-start;
  gap: 0.625rem;
  font-size: 0.84375rem;
  line-height: 1.6;
}

.policy-callout-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.125rem;
  height: 1.125rem;
  border-radius: 50%;
  margin-top: 0.0625rem;
}
.policy-callout-icon svg {
  width: 0.6875rem;
  height: 0.6875rem;
}

.policy-callout-dot {
  display: block;
  flex-shrink: 0;
  width: 0.375rem;
  height: 0.375rem;
  border-radius: 50%;
  margin-top: 0.4375rem;
  background-color: #2563eb;
}

.policy-callout-list-check-outline .policy-callout-icon {
  background-color: transparent;
  border: 1.5px solid #2563eb;
  color: #2563eb;
}

.policy-callout-list-check-filled .policy-callout-icon {
  background-color: #16a34a;
  color: #ffffff;
}

.policy-callout-list-star-filled .policy-callout-icon {
  background-color: #d97706;
  color: #ffffff;
}

.policy-callout-blue {
  background-color: #eff6ff;
  border-color: #bfdbfe;
}
.policy-callout-blue .policy-callout-title {
  color: #1d4ed8;
}
.policy-callout-blue .policy-callout-text,
.policy-callout-blue .policy-callout-list li {
  color: #1e3a8a;
}

.policy-callout-orange {
  background-color: #fef3c7;
  border-color: #fde68a;
}
.policy-callout-orange .policy-callout-title {
  color: #b45309;
}
.policy-callout-orange .policy-callout-text,
.policy-callout-orange .policy-callout-list li {
  color: #92400e;
}

.policy-callout-gray {
  background-color: #f3f4f6;
  border-color: #e5e7eb;
}
.policy-callout-gray .policy-callout-title {
  color: #374151;
}
.policy-callout-gray .policy-callout-text,
.policy-callout-gray .policy-callout-list li {
  color: #4b5563;
}

.policy-callout-green {
  background-color: #f0fdf4;
  border-color: #bbf7d0;
}
.policy-callout-green .policy-callout-title {
  color: #15803d;
}
.policy-callout-green .policy-callout-text,
.policy-callout-green .policy-callout-list li {
  color: #166534;
}

.policy-callout-red {
  background-color: #fef2f2;
  border-color: #fecaca;
}
.policy-callout-red .policy-callout-title {
  color: #b91c1c;
}
.policy-callout-red .policy-callout-text,
.policy-callout-red .policy-callout-list li {
  color: #991b1b;
}

.policy-callout-purple {
  background-color: #f5f3ff;
  border-color: #ddd6fe;
}
.policy-callout-purple .policy-callout-title {
  color: #6d28d9;
}
.policy-callout-purple .policy-callout-text,
.policy-callout-purple .policy-callout-list li {
  color: #5b21b6;
}

.policy-contact {
  display: flex;
  align-items: center;
  gap: 1.75rem;
  margin-top: 1.5rem;
  border: 1px solid var(--border-color);
  border-radius: var(--radius-card);
  background-color: var(--card-bg);
  box-shadow: var(--shadow-sm);
  padding: 1.75rem 2rem;
}
@media only screen and (max-width: 767.98px) {
  .policy-contact {
    flex-direction: column;
    align-items: stretch;
    text-align: center;
    gap: 1rem;
  }
}

.policy-contact-illustration {
  flex: 0 0 7.5rem;
}
@media only screen and (max-width: 767.98px) {
  .policy-contact-illustration {
    flex: 0 0 auto;
    width: 7.5rem;
    margin-inline: auto;
  }
}
.policy-contact-illustration img {
  display: block;
  width: 100%;
  height: auto;
}

.policy-contact-text {
  flex: 1 1 0;
  min-width: 0;
}
.policy-contact-text p {
  font-size: 0.875rem;
  line-height: 1.7;
  color: var(--text-main);
  font-weight: 600;
  margin-bottom: 0.875rem;
}
@media only screen and (max-width: 767.98px) {
  .policy-contact-text .btn {
    width: 100%;
  }
}

.policy-contact-info {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  margin-bottom: 0;
  flex-shrink: 0;
}
.policy-contact-info li {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.84375rem;
  color: var(--text-main);
}
.policy-contact-info li svg {
  color: var(--primary-color);
  flex-shrink: 0;
}
.policy-contact-info li a {
  color: var(--primary-color);
  font-weight: 600;
}
.policy-contact-info li a:hover {
  text-decoration: underline;
}
@media only screen and (max-width: 767.98px) {
  .policy-contact-info {
    align-items: center;
  }
}

@media only screen and (max-width: 767.98px) {
  .policy-section-row {
    grid-template-columns: 1fr;
  }
  .policy-callout {
    align-self: stretch;
  }
}
@media only screen and (max-width: 575.98px) {
  .section-policy .container {
    width: calc(100% - 24px);
  }
  .policy-hero {
    padding: 1.375rem 1.125rem;
  }
  .policy-overview-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
.about-hero {
  overflow: hidden;
  background-image: url("../images/about-hero-bg-v3.png");
  background-repeat: no-repeat;
  background-position: right center;
  background-size: auto 100%;
}

.about-hero-illustration {
  display: none;
}

.about-offer-card {
  overflow: hidden;
  background-image: url("../images/about-offer-bg-v3.png");
  background-repeat: no-repeat;
  background-position: right center;
  background-size: auto 100%;
}

.about-offer-illustration {
  display: none;
}

@media only screen and (max-width: 767.98px) {
  .about-hero,
  .about-offer-card {
    background-image: none;
  }
  .about-hero-illustration,
  .about-offer-illustration {
    display: block;
  }
  .about-hero-illustration img,
  .about-offer-illustration img {
    transform: none;
  }
}
.about-section-title {
  margin-top: 1.625rem;
  padding-block: 0.6875rem;
}
.about-section-title h2 {
  font-size: 1.5rem;
}
.about-section-title h2::before, .about-section-title h2::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 0.375rem;
  height: 0.375rem;
  border-radius: 0.125rem;
  background-color: #7182f2;
}
.about-section-title h2::before {
  left: 0;
  transform: translate(-50%, -50%) rotate(45deg);
  box-shadow: -0.625rem 0.625rem 0 -0.125rem #9aa7f5;
}
.about-section-title h2::after {
  right: 0;
  transform: translate(50%, -50%) rotate(45deg);
  box-shadow: 0.625rem -0.625rem 0 -0.125rem #9aa7f5;
}
.about-section-title .icon {
  width: 20.625rem;
  visibility: hidden;
}

.about-mission-grid {
  gap: 1.125rem;
  margin-top: 0.8125rem;
}

.about-mission-card {
  grid-template-columns: 4.25rem minmax(0, 1fr);
  column-gap: 1.125rem;
  min-height: 8.5rem;
  padding: 1.375rem 1.5rem;
}

.about-mission-icon {
  width: 4.25rem;
  height: 4.25rem;
}

.about-mission-title {
  margin-bottom: 0.4375rem;
}

@media only screen and (max-width: 767.98px) {
  .about-mission-card {
    min-height: 7.75rem;
  }
}
@media only screen and (max-width: 575.98px) {
  .about-section-title .icon {
    width: 16.875rem;
  }
  .about-mission-card {
    grid-template-columns: 3.625rem minmax(0, 1fr);
    min-height: auto;
    padding: 1.25rem;
  }
  .about-mission-icon {
    width: 3.625rem;
    height: 3.625rem;
  }
}
.about-bottom-grid {
  grid-template-columns: 60fr 40fr;
}

.about-offer-card {
  grid-template-columns: 44% 56%;
  padding: 2rem;
  background-image: url("../images/about-offer-bg-v4.png");
  background-position: right center;
  background-size: auto 100%;
}
.about-offer-card h2,
.about-offer-card .about-checklist {
  position: relative;
  z-index: 1;
  min-width: 0;
  max-width: 100%;
}

.about-cta-card {
  padding: 2rem;
}

@media only screen and (max-width: 767.98px) {
  .about-bottom-grid {
    grid-template-columns: 1fr;
  }
  .about-offer-card {
    grid-template-columns: 1fr;
    padding: 1.5rem;
    background-image: none;
  }
}
.about-stats {
  gap: 1rem;
  margin-top: 1rem;
}

.about-stat-card {
  grid-template-columns: 4.25rem minmax(0, 1fr);
  grid-template-rows: 1.75rem auto 1fr;
  column-gap: 1.125rem;
  min-height: 8.25rem;
  padding: 1.25rem 1.375rem;
}

.about-stat-icon {
  width: 4.25rem;
  height: 4.25rem;
}

.about-stat-title {
  font-size: 1.375rem;
  line-height: 1.75rem;
  margin-bottom: 0.125rem;
}

.about-stat-label {
  font-size: 0.875rem;
  line-height: 1.25rem;
  margin-bottom: 0.3125rem;
}

.about-stat-card:nth-child(3) .about-stat-label,
.about-stat-card:nth-child(4) .about-stat-label {
  overflow: hidden;
  font-size: 1rem;
  line-height: 1.75rem;
  margin-bottom: 0.3125rem;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.about-stat-desc {
  font-size: 0.71875rem;
  line-height: 1.45;
}

@media only screen and (max-width: 767.98px) {
  .about-stat-card {
    min-height: 7.75rem;
  }
}
@media only screen and (max-width: 575.98px) {
  .about-stat-card {
    grid-template-columns: 3.75rem minmax(0, 1fr);
    min-height: 7.25rem;
    padding: 1.125rem 1.25rem;
  }
  .about-stat-icon {
    width: 3.75rem;
    height: 3.75rem;
  }
}
.section-policy > .container {
  padding-inline: 0;
}

.policy-sections {
  margin-top: 1.5rem;
}

.policy-section-row {
  grid-template-columns: minmax(0, 62fr) minmax(0, 38fr);
  gap: 1.75rem;
  padding: 1.5rem;
}

.policy-section-head {
  gap: 0.875rem;
  margin-bottom: 0.625rem;
}

.policy-section-title {
  font-size: 1.0625rem;
}

.policy-section-desc,
.policy-section-list li {
  font-size: 0.78125rem;
  line-height: 1.65;
}

.policy-section-list {
  margin-top: 0.4375rem;
}

.policy-callout {
  border-radius: 0.625rem;
  padding: 1rem 1.125rem;
}

.policy-callout-title {
  font-size: 0.78125rem;
  margin-bottom: 0.5625rem;
}

.policy-callout-text,
.policy-callout-list li {
  font-size: 0.75rem;
  line-height: 1.55;
}

.policy-callout-list {
  gap: 0.4375rem;
}

@media only screen and (max-width: 767.98px) {
  .section-policy > .container {
    padding-inline: 0.75rem;
  }
  .policy-section-row {
    grid-template-columns: 1fr;
    padding: 1.375rem;
  }
}
.section-contact .container {
  max-width: none;
  width: min(1280px, 100% - 40px);
}

.contact-layout {
  display: grid;
  grid-template-columns: 42fr 58fr;
  gap: 2rem;
  margin-top: 1.5rem;
  align-items: start;
}
@media only screen and (max-width: 767.98px) {
  .contact-layout {
    grid-template-columns: 1fr;
  }
}

.contact-side-title {
  font-size: 1.875rem;
  font-weight: 800;
  color: var(--text-main);
  margin-bottom: 0.875rem;
}
@media only screen and (max-width: 767.98px) {
  .contact-side-title {
    font-size: 1.5rem;
  }
}

.contact-side-desc {
  font-size: 0.90625rem;
  line-height: 1.8;
  color: var(--text-muted);
  margin-bottom: 1.5rem;
}

.contact-side-illustration {
  max-width: 18.75rem;
  margin-bottom: 1.75rem;
}
.contact-side-illustration img {
  display: block;
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 767.98px) {
  .contact-side-illustration {
    margin-inline: auto;
  }
}

.contact-info-card {
  border: 1px solid var(--border-color);
  border-radius: var(--radius-card);
  background-color: var(--card-bg);
  box-shadow: var(--shadow-sm);
  padding: 1.75rem;
}

.contact-info-title {
  font-size: 1.0625rem;
  font-weight: 800;
  color: var(--primary-color);
  margin-bottom: 1.25rem;
}

.contact-info-list {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  margin-bottom: 0;
}
.contact-info-list li {
  display: flex;
  align-items: flex-start;
  gap: 0.875rem;
}

.contact-info-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2.375rem;
  height: 2.375rem;
  border-radius: 50%;
  background-color: rgba(91, 95, 239, 0.1);
  color: var(--primary-color);
}

.contact-info-label {
  display: block;
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--text-main);
  margin-bottom: 0.125rem;
}

.contact-info-list a,
.contact-info-text {
  font-size: 0.875rem;
  color: var(--text-muted);
}

.contact-info-list a:hover {
  color: var(--primary-color);
}

.contact-form-card {
  border: 1px solid var(--border-color);
  border-radius: var(--radius-card);
  background-color: var(--card-bg);
  box-shadow: var(--shadow-sm);
  padding: 2rem;
}
@media only screen and (max-width: 767.98px) {
  .contact-form-card {
    padding: 1.375rem;
  }
}

.contact-form-head {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  margin-bottom: 0.5rem;
}
.contact-form-head h2 {
  font-size: 1.125rem;
  font-weight: 800;
  color: var(--text-main);
  margin-bottom: 0;
}

.contact-form-head-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2.125rem;
  height: 2.125rem;
  border-radius: 50%;
  background-color: rgba(91, 95, 239, 0.1);
  color: var(--primary-color);
}

.contact-form-desc {
  font-size: 0.84375rem;
  line-height: 1.7;
  color: var(--text-muted);
  margin-bottom: 1.375rem;
}

.contact-form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.125rem;
}
@media only screen and (max-width: 575.98px) {
  .contact-form-row {
    grid-template-columns: 1fr;
  }
}

.contact-form-field {
  margin-bottom: 1.125rem;
}
.contact-form-field label {
  display: block;
  font-size: 0.84375rem;
  font-weight: 700;
  color: var(--text-main);
  margin-bottom: 0.5rem;
}
.contact-form-field input,
.contact-form-field textarea {
  width: 100%;
  border: 1px solid var(--border-color);
  border-radius: 0.625rem;
  padding: 0.6875rem 0.875rem;
  font-size: 0.875rem;
  color: var(--text-main);
  background-color: var(--card-bg);
  font-family: inherit;
}
.contact-form-field input::placeholder,
.contact-form-field textarea::placeholder {
  color: var(--text-muted);
}
.contact-form-field input:focus,
.contact-form-field textarea:focus {
  outline: none;
  border-color: var(--primary-color);
  box-shadow: 0 0 0 3px rgba(91, 95, 239, 0.12);
}
.contact-form-field textarea {
  resize: vertical;
  min-height: 7.5rem;
}

.contact-form-counter {
  text-align: right;
  font-size: 0.75rem;
  color: var(--text-muted);
  margin-top: 0.375rem;
}

.contact-form-notice {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  background-color: rgba(91, 95, 239, 0.06);
  border: 1px solid rgba(91, 95, 239, 0.15);
  border-radius: 0.75rem;
  padding: 1rem 1.125rem;
  margin-bottom: 1.375rem;
}
.contact-form-notice strong {
  display: block;
  font-size: 0.84375rem;
  color: var(--primary-color);
  margin-bottom: 0.125rem;
}
.contact-form-notice span span {
  display: block;
  font-size: 0.8125rem;
  line-height: 1.6;
  color: var(--text-muted);
}

.contact-form-notice-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.875rem;
  height: 1.875rem;
  border-radius: 50%;
  background-color: rgba(91, 95, 239, 0.12);
  color: var(--primary-color);
  margin-top: 0.125rem;
}

.contact-form-submit {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding-inline: 1.5rem;
}
@media only screen and (max-width: 575.98px) {
  .contact-form-submit {
    width: 100%;
    justify-content: center;
  }
}

@media only screen and (max-width: 575.98px) {
  .section-contact .container {
    width: calc(100% - 24px);
  }
}
.section-policy .container {
  width: min(1264px, 100% - 40px);
}

.policy-hero {
  margin-top: 2.125rem;
  padding-inline: 4rem;
}

.policy-hero-illustration {
  flex-basis: 20rem;
}
.policy-hero-illustration img {
  width: 100%;
  height: 13.5rem;
  object-fit: fill;
}

.policy-overview-grid {
  gap: 1.375rem;
  margin-top: 2rem;
}

.policy-sections {
  margin-top: 1.75rem;
}

.policy-section-main {
  display: grid;
  grid-template-columns: 2.25rem 4.25rem minmax(0, 1fr);
  grid-template-rows: auto auto auto;
  column-gap: 2rem;
  row-gap: 0.4375rem;
  align-items: start;
}

.policy-section-head {
  display: contents;
}

.policy-section-num,
.policy-section-icon {
  grid-row: 1/span 3;
}

.policy-section-num {
  grid-column: 1;
}

.policy-section-icon {
  grid-column: 2;
  width: 4.25rem;
  height: 4.25rem;
}

.policy-section-title,
.policy-section-desc,
.policy-section-list {
  grid-column: 3;
}

.policy-section-title {
  grid-row: 1;
  align-self: center;
}

.policy-section-desc {
  grid-row: 2;
}

.policy-section-list {
  grid-row: 3;
  margin-top: 0;
}

@media only screen and (max-width: 767.98px) {
  .policy-hero {
    margin-top: 1.5rem;
    padding-inline: 1.5rem;
  }
  .policy-hero-illustration {
    flex-basis: auto;
  }
  .policy-hero-illustration img {
    height: auto;
    object-fit: contain;
  }
  .policy-overview-grid {
    gap: 1rem;
    margin-top: 1.5rem;
  }
  .policy-section-main {
    grid-template-columns: 2.25rem 3.625rem minmax(0, 1fr);
    column-gap: 1.125rem;
  }
  .policy-section-icon {
    width: 3.625rem;
    height: 3.625rem;
  }
}
@media only screen and (max-width: 575.98px) {
  .section-policy .container {
    width: calc(100% - 24px);
  }
  .policy-section-main {
    grid-template-columns: 2.125rem 3.25rem minmax(0, 1fr);
    column-gap: 0.75rem;
  }
  .policy-section-num {
    width: 2.125rem;
    height: 2.125rem;
  }
  .policy-section-icon {
    width: 3.25rem;
    height: 3.25rem;
  }
}
.policy-contact {
  display: grid;
  grid-template-columns: 10rem 26.0625rem minmax(0, 1fr);
  column-gap: 5rem;
  padding: 1.75rem 6.5rem;
}

.policy-contact-illustration {
  width: 10rem;
  height: 6.25rem;
  overflow: hidden;
}
.policy-contact-illustration img {
  width: 16.25rem;
  max-width: none;
  height: auto;
  transform: translate(-4.0625rem, -0.75rem);
}

@media only screen and (max-width: 991.98px) {
  .policy-contact {
    grid-template-columns: 8.75rem minmax(0, 1fr) auto;
    column-gap: 2rem;
    padding-inline: 2.5rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .policy-contact {
    display: flex;
    padding: 1.5rem;
  }
  .policy-contact-illustration {
    width: 10rem;
    height: 6.25rem;
  }
}
@media only screen and (max-width: 575.98px) {
  .policy-section-num,
  .policy-section-icon {
    grid-row: 1;
  }
  .policy-section-desc,
  .policy-section-list {
    grid-column: 1/-1;
  }
  .policy-section-desc {
    grid-row: 2;
    margin-top: 0.5rem;
  }
  .policy-section-list {
    grid-row: 3;
  }
}
.policy-hero {
  position: relative;
  overflow: hidden;
}

.policy-hero-content {
  position: relative;
  z-index: 2;
}

.policy-hero-illustration {
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  bottom: 0;
  width: auto;
  height: 100%;
  max-width: none;
  flex: none;
}
.policy-hero-illustration img {
  display: block;
  width: auto;
  max-width: none;
  height: 100%;
  object-fit: contain;
  transform: none;
}

.policy-overview-icon,
.policy-section-icon {
  overflow: hidden;
  background-color: transparent;
}
.policy-overview-icon img,
.policy-section-icon img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
}

.policy-overview-icon {
  width: 3rem;
  height: 3rem;
}

.policy-section-main {
  grid-template-columns: 2.25rem 5rem minmax(0, 1fr);
}

.policy-section-icon {
  width: 5rem;
  height: 5rem;
}

@media only screen and (max-width: 767.98px) {
  .policy-hero-illustration {
    position: static;
    width: min(100%, 22.5rem);
    height: auto;
    max-width: 22.5rem;
    margin-inline: auto;
  }
  .policy-hero-illustration img {
    width: 100%;
    height: auto;
    object-fit: contain;
  }
  .policy-section-main {
    grid-template-columns: 2.25rem 4rem minmax(0, 1fr);
  }
  .policy-section-icon {
    width: 4rem;
    height: 4rem;
  }
}
@media only screen and (max-width: 575.98px) {
  .policy-overview-icon {
    width: 2.75rem;
    height: 2.75rem;
  }
  .policy-section-main {
    grid-template-columns: 2.125rem 3.25rem minmax(0, 1fr);
  }
  .policy-section-icon {
    width: 3.25rem;
    height: 3.25rem;
  }
}
.policy-hero-illustration {
  -webkit-mask-image: linear-gradient(to right, transparent 0%, rgba(0, 0, 0, 0.08) 10%, rgba(0, 0, 0, 0.38) 24%, rgba(0, 0, 0, 0.78) 38%, #000 52%, #000 100%);
  mask-image: linear-gradient(to right, transparent 0%, rgba(0, 0, 0, 0.08) 10%, rgba(0, 0, 0, 0.38) 24%, rgba(0, 0, 0, 0.78) 38%, #000 52%, #000 100%);
}

@media only screen and (max-width: 767.98px) {
  .policy-hero-illustration {
    -webkit-mask-image: none;
    mask-image: none;
  }
}
.policy-sections {
  display: flex;
  flex-direction: column;
  gap: 0;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.policy-section-row {
  grid-template-columns: minmax(0, 56fr) minmax(0, 44fr);
  align-items: center;
  padding: 2rem 1.5rem;
  border: 1px solid #e9ecf3;
  border-radius: 0.75rem;
  background-color: #ffffff;
}
.policy-section-row + .policy-section-row {
  margin-top: -1px;
  border-top: 1px solid #e9ecf3;
}

.policy-section-title {
  font-size: 1.0625rem;
  font-weight: 700;
  color: #111827;
}

.policy-section-desc,
.policy-section-list li {
  font-size: 0.75rem;
  line-height: 1.6;
  color: #4b5563;
}

.policy-callout {
  justify-self: end;
  align-self: center;
  width: 100%;
  max-width: 100%;
  padding: 1.25rem 1.375rem;
  border-radius: 0.75rem;
  box-shadow: none;
}

.policy-section-row:nth-child(1) .policy-callout {
  width: 26.875rem;
}

.policy-section-row:nth-child(2) .policy-callout {
  width: 30rem;
}

.policy-section-row:nth-child(3) .policy-callout {
  width: 31.875rem;
}

.policy-section-row:nth-child(4) .policy-callout {
  width: 31.875rem;
}

.policy-section-row:nth-child(5) .policy-callout {
  width: 30.625rem;
}

.policy-section-row:nth-child(6) .policy-callout {
  width: 31.25rem;
}

.policy-callout-title {
  font-size: 0.8125rem;
  font-weight: 700;
  margin-bottom: 0.625rem;
}

.policy-callout-text,
.policy-callout-list li {
  font-size: 0.75rem;
  line-height: 1.55;
  color: #374151;
  font-weight: 400;
}

.policy-callout-blue {
  background-color: #f7f6ff;
  border-color: #ebe9ff;
}
.policy-callout-blue .policy-callout-title {
  color: #6463e8;
}
.policy-callout-blue .policy-callout-text,
.policy-callout-blue .policy-callout-list li {
  color: #374151;
}

.policy-callout-orange {
  background-color: #fff9ed;
  border-color: #ffefcf;
}
.policy-callout-orange .policy-callout-title {
  color: #e99300;
}
.policy-callout-orange .policy-callout-text,
.policy-callout-orange .policy-callout-list li {
  color: #374151;
}

.policy-callout-gray {
  background-color: #f7f8ff;
  border-color: #eceeff;
}
.policy-callout-gray .policy-callout-title {
  color: #5f63df;
}
.policy-callout-gray .policy-callout-text,
.policy-callout-gray .policy-callout-list li {
  color: #374151;
}

.policy-callout-green {
  background-color: #f2fbf7;
  border-color: #def4ea;
}
.policy-callout-green .policy-callout-title {
  color: #299873;
}
.policy-callout-green .policy-callout-text,
.policy-callout-green .policy-callout-list li {
  color: #374151;
}

.policy-callout-red {
  background-color: #fff7f8;
  border-color: #fde7ea;
}
.policy-callout-red .policy-callout-title {
  color: #e24d5f;
}
.policy-callout-red .policy-callout-text,
.policy-callout-red .policy-callout-list li {
  color: #374151;
}

.policy-callout-purple {
  background-color: #f8f7ff;
  border-color: #ebe9ff;
}
.policy-callout-purple .policy-callout-title {
  color: #6663df;
}
.policy-callout-purple .policy-callout-text,
.policy-callout-purple .policy-callout-list li {
  color: #374151;
}

.policy-callout-list-check-outline .policy-callout-icon {
  border-color: #6c68ef;
  color: #6c68ef;
}

.policy-callout-list-star-filled .policy-callout-icon {
  background-color: #f5a300;
  color: #ffffff;
}

.policy-callout-list-check-filled .policy-callout-icon {
  background-color: #49a98c;
  color: #ffffff;
}

.policy-callout-dot {
  background-color: #6867e9;
}

@media only screen and (max-width: 767.98px) {
  .policy-section-row {
    grid-template-columns: 1fr;
    padding: 1.5rem;
  }
  .policy-callout,
  .policy-section-row:nth-child(n) .policy-callout {
    width: 100%;
  }
}
@media only screen and (max-width: 575.98px) {
  .policy-section-row {
    padding: 1.375rem 1.25rem;
    border-radius: 0.625rem;
  }
}
.policy-section-row:nth-child(1) {
  padding-block: 1.8125rem;
}

.policy-section-row:nth-child(2) {
  padding-block: 2.875rem;
}

.policy-section-row:nth-child(3) {
  padding-block: 2rem;
}

.policy-section-row:nth-child(4) {
  padding-block: 1.125rem;
}

.policy-section-row:nth-child(5) {
  padding-block: 2.5625rem;
}

.policy-section-row:nth-child(6) {
  padding-block: 1.6875rem;
}

@media only screen and (max-width: 767.98px) {
  .policy-section-row:nth-child(n) {
    padding-block: 1.5rem;
  }
}
@media only screen and (max-width: 575.98px) {
  .policy-section-row:nth-child(n) {
    padding-block: 1.375rem;
  }
}
.policy-callout-list {
  padding-left: 0;
  list-style: none;
}

.policy-callout-list li {
  padding-left: 0;
}

.policy-contact {
  grid-template-columns: 9rem 25.25rem minmax(0, 1fr);
  column-gap: 4.5rem;
  padding: 1.625rem 5.875rem;
}

.policy-contact-illustration {
  width: 9rem;
  height: 6rem;
}
.policy-contact-illustration img {
  width: 14.625rem;
  transform: translate(-3.625rem, -0.6875rem);
}

.policy-contact-text p {
  font-size: 0.8125rem;
  line-height: 1.55;
  font-weight: 500;
  margin-bottom: 0.75rem;
}
.policy-contact-text .btn {
  height: 2.375rem;
  padding: 0 1.25rem;
  font-size: 0.8125rem;
  line-height: 2.375rem;
  font-weight: 700;
}

.policy-contact-info {
  padding-left: 0;
  list-style: none;
}
.policy-contact-info li {
  font-size: 0.8125rem;
  line-height: 1.4;
}

@media only screen and (max-width: 991.98px) {
  .policy-contact {
    grid-template-columns: 8.25rem minmax(0, 1fr) auto;
    column-gap: 1.875rem;
    padding: 1.5rem 2.25rem;
  }
  .policy-contact-illustration {
    width: 8.25rem;
    height: 5.625rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .policy-contact {
    padding: 1.5rem;
  }
  .policy-contact-illustration {
    width: 9rem;
    height: 6rem;
  }
}
.policy-contact {
  padding-right: 4rem;
}

.policy-contact-info {
  transform: translateX(0.75rem);
}

.policy-contact-text .btn {
  padding-inline: 1.375rem;
}

@media only screen and (max-width: 991.98px) {
  .policy-contact {
    padding-right: 2.25rem;
  }
  .policy-contact-info {
    transform: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .policy-contact-info {
    transform: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .policy-contact {
    padding-right: 1.5rem;
  }
}
.policy-contact {
  background: linear-gradient(90deg, #faf9ff 0%, #f7f7fe 48%, #f8f8fe 100%);
  border-color: #dedff0;
}

.policy-contact-illustration img {
  width: 15.5rem;
  transform: translate(-3.875rem, -0.8125rem);
}

/*# sourceMappingURL=main.css.map */
