html, body, h1, h2, h3, h4, h5, h6, p, ul, li, dl, dt, dd, ol { margin: 0; padding: 0; box-sizing: border-box; font-weight: normal; }
html { font-size: 16px; }
body { font-family: -apple-system, BlinkMacSystemFont, Roboto, Oxygen, 'Segoe UI', Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif; }
* { outline: none; -webkit-tap-highlight-color: transparent; }
*, ::before, ::after { box-sizing: border-box; border-width: 0; border-style: solid; }
ul, ol { list-style-type: none; }
a { color: inherit; text-decoration: none; }
button { cursor: pointer; }
input, button, textarea, select, button { margin: 0; padding: 0; border-width: 0px; border-color: transparent; color: inherit; font: inherit; outline: none; background-color: transparent; -webkit-appearance: none; appearance: none; border-style: solid; border-radius: 0; }
textarea { overflow: auto; }
input::-ms-clear { display: none; }
select::-ms-expand { display: none; }
::placeholder { color: inherit; opacity: 0.5; }
img, svg, canvas { vertical-align: middle; }
table { border-collapse: collapse; border-spacing: 0; }
th, td { text-align: left; }
code, pre, tt { font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; }
.db { display: block; }
.dib { display: inline-block; }
.pr { position: relative; }
.ps { position: sticky; }
.pf { position: fixed; }
.pa { position: absolute; }
.ct { display: flex; align-items: center; justify-content: center; }
.tl { text-align: left; }
.tc { text-align: center; }
.tr { text-align: right; }
.vh { visibility: hidden; }
.full { width: 100%; height: 100%; left: 0; top: 0; }
.oh { overflow: hidden; }
.ov { overflow: visible; }
.osx { overflow-x: auto; overflow-y: hidden; }
.osy { overflow-x: hidden; overflow-y: auto; }
.pen { pointer-events: none; }
.pea { pointer-events: auto; }
.pre { white-space: pre-wrap; }
.f-1 { flex: 1; }
.f-2 { flex: 2; }
.f-3 { flex: 3; }
.fr { display: flex; flex-direction: row; }
.fc { display: flex; flex-direction: column; }
.ifr { display: inline-flex; flex-direction: row; }
.wrap { flex-wrap: wrap; }
.as { align-items: flex-start; }
.ac { align-items: center; }
.ae { align-items: flex-end; }
.jc { justify-content: center; }
.je { justify-content: flex-end; }
.row { display: grid; grid-auto-flow: row; }
.col { display: grid; grid-auto-flow: column; }
.cols-1 { grid-template-columns: repeat(1, 1fr); }
.cols-2 { grid-template-columns: repeat(2, 1fr); }
.cols-3 { grid-template-columns: repeat(3, 1fr); }
.cols-4 { grid-template-columns: repeat(4, 1fr); }
.cols-5 { grid-template-columns: repeat(5, 1fr); }
.gap-30 { grid-gap: 30px; gap: 30px; }
.gap-40 { grid-gap: 40px; gap: 40px; }
.w-full { width: 100%; }
.h-full { height: 100%; }
.w-50\% { width: 50%; }
.w-10 { width: 10px; }
.h-10 { height: 10px; }
.w-25 { width: 25px; }
.w-40 { width: 40px; }
.h-40 { height: 40px; }
.w-50 { width: 50px; }
.h-50 { height: 50px; }
.h-70 { height: 70px; }
.my-5 { margin-top: 5px; margin-bottom: 5px; }
.my-20 { margin-top: 20px; margin-bottom: 20px; }
.my-30 { margin-top: 30px; margin-bottom: 30px; }
.mt-5 { margin-top: 5px; }
.mr-5 { margin-right: 5px; }
.ml-5 { margin-left: 5px; }
.mt-10 { margin-top: 10px; }
.mr-10 { margin-right: 10px; }
.ml-10 { margin-left: 10px; }
.mt-15 { margin-top: 15px; }
.mr-15 { margin-right: 15px; }
.mb-15 { margin-bottom: 15px; }
.ml-15 { margin-left: 15px; }
.mt-20 { margin-top: 20px; }
.mr-20 { margin-right: 20px; }
.ml-20 { margin-left: 20px; }
.mt-25 { margin-top: 25px; }
.ml-25 { margin-left: 25px; }
.mt-30 { margin-top: 30px; }
.ml-30 { margin-left: 30px; }
.mt-40 { margin-top: 40px; }
.mb-40 { margin-bottom: 40px; }
.ml-40 { margin-left: 40px; }
.p-1 { padding: 1px; }
.p-2 { padding: 2px; }
.p-5 { padding: 5px; }
.p-10 { padding: 10px; }
.p-20 { padding: 20px; }
.p-30 { padding: 30px; }
.p-40 { padding: 40px; }
.py-8 { padding-top: 8px; padding-bottom: 8px; }
.py-10 { padding-top: 10px; padding-bottom: 10px; }
.px-15 { padding-left: 15px; padding-right: 15px; }
.py-15 { padding-top: 15px; padding-bottom: 15px; }
.px-20 { padding-left: 20px; padding-right: 20px; }
.py-20 { padding-top: 20px; padding-bottom: 20px; }
.px-25 { padding-left: 25px; padding-right: 25px; }
.px-30 { padding-left: 30px; padding-right: 30px; }
.py-30 { padding-top: 30px; padding-bottom: 30px; }
.px-40 { padding-left: 40px; padding-right: 40px; }
.py-40 { padding-top: 40px; padding-bottom: 40px; }
.pl-0 { padding-left: 0px; }
.pb-5 { padding-bottom: 5px; }
.pl-5 { padding-left: 5px; }
.pl-10 { padding-left: 10px; }
.pt-20 { padding-top: 20px; }
.pb-30 { padding-bottom: 30px; }
.pl-30 { padding-left: 30px; }
.pt-40 { padding-top: 40px; }
.pr-40 { padding-right: 40px; }
.pb-40 { padding-bottom: 40px; }
.r-0 { right: 0px; }
.l-0 { left: 0px; }
.t-0 { top: 0px; }
.b-10 { bottom: 10px; }
.t-15 { top: 15px; }
.r-35 { right: 35px; }
.t-70 { top: 70px; }
.fs-12 { font-size: 12px; }
.fs-14 { font-size: 14px; }
.fs-16 { font-size: 16px; }
.fs-18 { font-size: 18px; }
.fs-19 { font-size: 19px; }
.fs-20 { font-size: 20px; }
.fs-22 { font-size: 22px; }
.fs-24 { font-size: 24px; }
.fs-26 { font-size: 26px; }
.fs-30 { font-size: 30px; }
.fs-32 { font-size: 32px; }
.fs-36 { font-size: 36px; }
.fs-40 { font-size: 40px; }
.a { cursor: pointer; }
.b { font-weight: bold; }
.u { text-decoration: underline; }
.i { font-style: italic; }
.s { text-decoration: line-through; }
.lh-1 { line-height: 1em; }
.lh-1\.6 { line-height: 1.6em; }
.lh-1\.7 { line-height: 1.7em; }
.lh-1\.8 { line-height: 1.8em; }
.lh-2 { line-height: 2em; }
.bg-left { background-position: left; }
.bg-norept { background-repeat: no-repeat; }
.bd { border-width: 1px; }
.by { border-top-width: 1px; border-bottom-width: 1px; }
.br { border-right-width: 1px; }
.bb { border-bottom-width: 1px; }
.bd-2 { border-width: 2px; }
.br-2 { border-right-width: 2px; }
.bb-2 { border-bottom-width: 2px; }
.radius-5 { border-radius: 5px; }
.radius-10 { border-radius: 10px; }
.radius-20 { border-radius: 20px; }
.radius-full { border-radius: 50%; }
.o-0 { opacity: 0; }
.o-40 { opacity: 0.4; }
.o-95 { opacity: 0.95; }
.o-100 { opacity: 1; }
.z-2 { z-index: 2; }
.z-3 { z-index: 3; }
.z-5 { z-index: 5; }
.z-9 { z-index: 9; }
.z-10 { z-index: 10; }
.trans { transition: all 200ms; }
.trans-bg { transition-property: background-color; transition-duration: 200ms; }
.trans-o { transition-property: opacity; transition-duration: 200ms; }
.fit-cover { object-fit: cover; }
.fit-contain { object-fit: contain; }
@media screen and (max-width: 992px) {
  .md\:db { display: block; }
  .md\:dn { display: none; }
  .md\:tl { text-align: left; }
  .md\:osy { overflow-x: hidden; overflow-y: auto; }
  .md\:fc { display: flex; flex-direction: column; }
  .md\:col-reverse { flex-flow: column-reverse; }
  .md\:as { align-items: flex-start; }
  .md\:js { justify-content: flex-start; }
  .md\:cols-1 { grid-template-columns: repeat(1, 1fr); }
  .md\:cols-2 { grid-template-columns: repeat(2, 1fr); }
  .md\:cols-4 { grid-template-columns: repeat(4, 1fr); }
  .md\:w-full { width: 100%; }
  .md\:ml-0 { margin-left: 0px; }
  .md\:mt-10 { margin-top: 10px; }
  .md\:mt-15 { margin-top: 15px; }
  .md\:mt-30 { margin-top: 30px; }
  .md\:mt-40 { margin-top: 40px; }
  .md\:px-20 { padding-left: 20px; padding-right: 20px; }
  .md\:py-20 { padding-top: 20px; padding-bottom: 20px; }
  .md\:px-30 { padding-left: 30px; padding-right: 30px; }
  .md\:pt-40 { padding-top: 40px; }
  .md\:fs-14 { font-size: 14px; }
  .md\:fs-16 { font-size: 16px; }
  .md\:fs-20 { font-size: 20px; }
  .md\:fs-26 { font-size: 26px; }
  .md\:radius-10 { border-radius: 10px; }
}
@media screen and (max-width: 768px) {
  .sm\:dn { display: none; }
  /* .sm\:fr { display: flex; flex-direction: row; } */
  .sm\:fr { flex-direction: row; }
  .sm\:fc { display: flex; flex-direction: column; }
  .sm\:as { align-items: flex-start; }
  .sm\:ac { align-items: center; }
  .sm\:js { justify-content: flex-start; }
  .sm\:f-1 { flex: 1; }
  .sm\:f-3 { flex: 3; }
  .sm\:cols-1 { grid-template-columns: repeat(1, 1fr); }
  .sm\:cols-3 { grid-template-columns: repeat(3, 1fr); }
  .sm\:mr-0 { margin-right: 0px; }
  .sm\:ml-0 { margin-left: 0px; }
  .sm\:mt-10 { margin-top: 10px; }
  .sm\:p-20 { padding: 20px; }
  .sm\:px-10 { padding-left: 10px; padding-right: 10px; }
  .sm\:px-15 { padding-left: 15px; padding-right: 15px; }
  .sm\:py-30 { padding-top: 30px; padding-bottom: 30px; }
  .sm\:r-10 { right: 10px; }
  .sm\:fs-12 { font-size: 12px; }
  .sm\:fs-16 { font-size: 16px; }
  .sm\:fs-20 { font-size: 20px; }
  .sm\:fs-24 { font-size: 24px; }
  .sm\:fs-30 { font-size: 30px; }
}
@media screen and (max-width: 576px) {
  .xs\:fc { display: flex; flex-direction: column; }
  .xs\:cols-1 { grid-template-columns: repeat(1, 1fr); }
  .xs\:ml-0 { margin-left: 0px; }
  .xs\:mt-15 { margin-top: 15px; }
}