@charset "UTF-8";
/*
 * - 1rem = 10px
 * - Display/Float/Clear/Flex/Spacing/Sizing/Position/Z/Typo/Color/
 *   Border/Radius/Shadow/Visibility/A11y/Overflow/Table/Image/List/Cursor/Select
 */

/* =========================================================
 * Display / Float / Clear
 * =======================================================*/
.cf-db {
  display: block;
}
.cf-di {
  display: inline;
}
.cf-dib {
  display: inline-block;
}
.cf-df {
  display: -ms-flexbox;
  display: flex;
}
.cf-dn {
  display: none;
}

.cf-fl {
  float: left;
}
.cf-fr {
  float: right;
}
.cf-fn {
  float: none;
}

.cf-cf::after {
  content: "";
  display: block;
  clear: both;
}

/* important */
.cf-db-i {
  display: block !important;
}
.cf-di-i {
  display: inline !important;
}
.cf-dib-i {
  display: inline-block !important;
}
.cf-df-i {
  display: -ms-flexbox !important;
  display: flex !important;
}
.cf-dn-i {
  display: none !important;
}

.cf-fl-i {
  float: left !important;
}
.cf-fr-i {
  float: right !important;
}
.cf-fn-i {
  float: none !important;
}

.cf-cf-i::after {
  content: "";
  display: block;
  clear: both;
}

/* =========================================================
 * Flexbox
 * =======================================================*/
.cf-fx {
  display: -ms-flexbox;
  display: flex;
}
.cf-ifx {
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.cf-row {
  -ms-flex-direction: row;
  flex-direction: row;
}
.cf-col {
  -ms-flex-direction: column;
  flex-direction: column;
}
.cf-wrap {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.cf-nowrap {
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

/* justify-content */
.cf-jc-s {
  -ms-flex-pack: start;
  justify-content: flex-start;
}
.cf-jc-c {
  -ms-flex-pack: center;
  justify-content: center;
}
.cf-jc-e {
  -ms-flex-pack: end;
  justify-content: flex-end;
}
.cf-jc-sb {
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.cf-jc-sa {
  -ms-flex-pack: distribute;
  justify-content: space-around;
}

/* align-items / align-self */
.cf-ai-s {
  -ms-flex-align: start;
  align-items: flex-start;
}
.cf-ai-c {
  -ms-flex-align: center;
  align-items: center;
}
.cf-ai-e {
  -ms-flex-align: end;
  align-items: flex-end;
}

.cf-as-s {
  -ms-flex-item-align: start;
  align-self: flex-start;
}
.cf-as-c {
  -ms-flex-item-align: center;
  align-self: center;
}
.cf-as-e {
  -ms-flex-item-align: end;
  align-self: flex-end;
}

/* flex-basis/grow */
.cf-fx-1 {
  -ms-flex: 1 1 0%;
  flex: 1 1 0%;
  min-width: 0;
}
.cf-fx-auto {
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
}
.cf-fx-none {
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
}

/* important */
.cf-fx-i {
  display: -ms-flexbox !important;
  display: flex !important;
}
.cf-ifx-i {
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
}
.cf-row-i {
  -ms-flex-direction: row !important;
  flex-direction: row !important;
}
.cf-col-i {
  -ms-flex-direction: column !important;
  flex-direction: column !important;
}
.cf-wrap-i {
  -ms-flex-wrap: wrap !important;
  flex-wrap: wrap !important;
}
.cf-nowrap-i {
  -ms-flex-wrap: nowrap !important;
  flex-wrap: nowrap !important;
}

/* justify-content */
.cf-jc-s-i {
  -ms-flex-pack: start !important;
  justify-content: flex-start !important;
}
.cf-jc-c-i {
  -ms-flex-pack: center !important;
  justify-content: center !important;
}
.cf-jc-e-i {
  -ms-flex-pack: end !important;
  justify-content: flex-end !important;
}
.cf-jc-sb-i {
  -ms-flex-pack: justify !important;
  justify-content: space-between !important;
}
.cf-jc-sa-i {
  -ms-flex-pack: distribute !important;
  justify-content: space-around !important;
}

/* align-items / align-self */
.cf-ai-s-i {
  -ms-flex-align: start !important;
  align-items: flex-start !important;
}
.cf-ai-c-i {
  -ms-flex-align: center !important;
  align-items: center !important;
}
.cf-ai-e-i {
  -ms-flex-align: end !important;
  align-items: flex-end !important;
}

.cf-as-s-i {
  -ms-flex-item-align: start !important;
  align-self: flex-start !important;
}
.cf-as-c-i {
  -ms-flex-item-align: center !important;
  align-self: center !important;
}
.cf-as-e-i {
  -ms-flex-item-align: end !important;
  align-self: flex-end !important;
}

/* flex-basis/grow */
.cf-fx-1-i {
  -ms-flex: 1 1 0% !important;
  flex: 1 1 0% !important;
  min-width: 0;
}
.cf-fx-auto-i {
  -ms-flex: 1 1 auto !important;
  flex: 1 1 auto !important;
}
.cf-fx-none-i {
  -ms-flex: 0 0 auto !important;
  flex: 0 0 auto !important;
}

/* =========================================================
 * Spacing scale (px → rem): 0,.4,.8,1.2,1.6,2.0,2.4,3.2,4.0,4.8,6.4
 * Numbers: 0,4,8,12,16,20,24,32,40,48,64
 * Forms: m/mt/mr/mb/ml/mx/my, p/pt/pr/pb/pl/px/py
 * =======================================================*/
/* margin all */
.cf-m0 {
  margin: 0;
}
.cf-m4 {
  margin: 0.4rem;
}
.cf-m8 {
  margin: 0.8rem;
}
.cf-m12 {
  margin: 1.2rem;
}
.cf-m16 {
  margin: 1.6rem;
}
.cf-m20 {
  margin: 2rem;
}
.cf-m24 {
  margin: 2.4rem;
}
.cf-m32 {
  margin: 3.2rem;
}
.cf-m40 {
  margin: 4rem;
}
.cf-m48 {
  margin: 4.8rem;
}
.cf-m64 {
  margin: 6.4rem;
}

/* margin sides */
.cf-mt0 {
  margin-top: 0;
}
.cf-mt4 {
  margin-top: 0.4rem;
}
.cf-mt8 {
  margin-top: 0.8rem;
}
.cf-mt12 {
  margin-top: 1.2rem;
}
.cf-mt16 {
  margin-top: 1.6rem;
}
.cf-mt20 {
  margin-top: 2rem;
}
.cf-mt24 {
  margin-top: 2.4rem;
}
.cf-mt32 {
  margin-top: 3.2rem;
}
.cf-mt40 {
  margin-top: 4rem;
}
.cf-mt48 {
  margin-top: 4.8rem;
}
.cf-mt64 {
  margin-top: 6.4rem;
}

.cf-mr0 {
  margin-right: 0;
}
.cf-mr4 {
  margin-right: 0.4rem;
}
.cf-mr8 {
  margin-right: 0.8rem;
}
.cf-mr12 {
  margin-right: 1.2rem;
}
.cf-mr16 {
  margin-right: 1.6rem;
}
.cf-mr20 {
  margin-right: 2rem;
}
.cf-mr24 {
  margin-right: 2.4rem;
}
.cf-mr32 {
  margin-right: 3.2rem;
}
.cf-mr40 {
  margin-right: 4rem;
}
.cf-mr48 {
  margin-right: 4.8rem;
}
.cf-mr64 {
  margin-right: 6.4rem;
}

.cf-mb0 {
  margin-bottom: 0;
}
.cf-mb4 {
  margin-bottom: 0.4rem;
}
.cf-mb8 {
  margin-bottom: 0.8rem;
}
.cf-mb12 {
  margin-bottom: 1.2rem;
}
.cf-mb16 {
  margin-bottom: 1.6rem;
}
.cf-mb20 {
  margin-bottom: 2rem;
}
.cf-mb24 {
  margin-bottom: 2.4rem;
}
.cf-mb32 {
  margin-bottom: 3.2rem;
}
.cf-mb40 {
  margin-bottom: 4rem;
}
.cf-mb48 {
  margin-bottom: 4.8rem;
}
.cf-mb64 {
  margin-bottom: 6.4rem;
}

.cf-ml0 {
  margin-left: 0;
}
.cf-ml4 {
  margin-left: 0.4rem;
}
.cf-ml8 {
  margin-left: 0.8rem;
}
.cf-ml12 {
  margin-left: 1.2rem;
}
.cf-ml16 {
  margin-left: 1.6rem;
}
.cf-ml20 {
  margin-left: 2rem;
}
.cf-ml24 {
  margin-left: 2.4rem;
}
.cf-ml32 {
  margin-left: 3.2rem;
}
.cf-ml40 {
  margin-left: 4rem;
}
.cf-ml48 {
  margin-left: 4.8rem;
}
.cf-ml64 {
  margin-left: 6.4rem;
}

/* margin axis */
.cf-mx0 {
  margin-left: 0;
  margin-right: 0;
}
.cf-mx4 {
  margin-left: 0.4rem;
  margin-right: 0.4rem;
}
.cf-mx8 {
  margin-left: 0.8rem;
  margin-right: 0.8rem;
}
.cf-mx12 {
  margin-left: 1.2rem;
  margin-right: 1.2rem;
}
.cf-mx16 {
  margin-left: 1.6rem;
  margin-right: 1.6rem;
}
.cf-mx20 {
  margin-left: 2rem;
  margin-right: 2rem;
}
.cf-mx24 {
  margin-left: 2.4rem;
  margin-right: 2.4rem;
}
.cf-mx32 {
  margin-left: 3.2rem;
  margin-right: 3.2rem;
}
.cf-mx40 {
  margin-left: 4rem;
  margin-right: 4rem;
}
.cf-mx48 {
  margin-left: 4.8rem;
  margin-right: 4.8rem;
}
.cf-mx64 {
  margin-left: 6.4rem;
  margin-right: 6.4rem;
}

.cf-my0 {
  margin-top: 0;
  margin-bottom: 0;
}
.cf-my4 {
  margin-top: 0.4rem;
  margin-bottom: 0.4rem;
}
.cf-my8 {
  margin-top: 0.8rem;
  margin-bottom: 0.8rem;
}
.cf-my12 {
  margin-top: 1.2rem;
  margin-bottom: 1.2rem;
}
.cf-my16 {
  margin-top: 1.6rem;
  margin-bottom: 1.6rem;
}
.cf-my20 {
  margin-top: 2rem;
  margin-bottom: 2rem;
}
.cf-my24 {
  margin-top: 2.4rem;
  margin-bottom: 2.4rem;
}
.cf-my32 {
  margin-top: 3.2rem;
  margin-bottom: 3.2rem;
}
.cf-my40 {
  margin-top: 4rem;
  margin-bottom: 4rem;
}
.cf-my48 {
  margin-top: 4.8rem;
  margin-bottom: 4.8rem;
}
.cf-my64 {
  margin-top: 6.4rem;
  margin-bottom: 6.4rem;
}

/* margin auto helpers */
.cf-ml-auto {
  margin-left: auto;
}
.cf-mr-auto {
  margin-right: auto;
}
.cf-mx-auto {
  margin-left: auto;
  margin-right: auto;
}

/* padding all */
.cf-p0 {
  padding: 0;
}
.cf-p4 {
  padding: 0.4rem;
}
.cf-p8 {
  padding: 0.8rem;
}
.cf-p12 {
  padding: 1.2rem;
}
.cf-p16 {
  padding: 1.6rem;
}
.cf-p20 {
  padding: 2rem;
}
.cf-p24 {
  padding: 2.4rem;
}
.cf-p32 {
  padding: 3.2rem;
}
.cf-p40 {
  padding: 4rem;
}
.cf-p48 {
  padding: 4.8rem;
}
.cf-p64 {
  padding: 6.4rem;
}

/* padding sides */
.cf-pt0 {
  padding-top: 0;
}
.cf-pt4 {
  padding-top: 0.4rem;
}
.cf-pt8 {
  padding-top: 0.8rem;
}
.cf-pt12 {
  padding-top: 1.2rem;
}
.cf-pt16 {
  padding-top: 1.6rem;
}
.cf-pt20 {
  padding-top: 2rem;
}
.cf-pt24 {
  padding-top: 2.4rem;
}
.cf-pt32 {
  padding-top: 3.2rem;
}
.cf-pt40 {
  padding-top: 4rem;
}
.cf-pt48 {
  padding-top: 4.8rem;
}
.cf-pt64 {
  padding-top: 6.4rem;
}

.cf-pr0 {
  padding-right: 0;
}
.cf-pr4 {
  padding-right: 0.4rem;
}
.cf-pr8 {
  padding-right: 0.8rem;
}
.cf-pr12 {
  padding-right: 1.2rem;
}
.cf-pr16 {
  padding-right: 1.6rem;
}
.cf-pr20 {
  padding-right: 2rem;
}
.cf-pr24 {
  padding-right: 2.4rem;
}
.cf-pr32 {
  padding-right: 3.2rem;
}
.cf-pr40 {
  padding-right: 4rem;
}
.cf-pr48 {
  padding-right: 4.8rem;
}
.cf-pr64 {
  padding-right: 6.4rem;
}

.cf-pb0 {
  padding-bottom: 0;
}
.cf-pb4 {
  padding-bottom: 0.4rem;
}
.cf-pb8 {
  padding-bottom: 0.8rem;
}
.cf-pb12 {
  padding-bottom: 1.2rem;
}
.cf-pb16 {
  padding-bottom: 1.6rem;
}
.cf-pb20 {
  padding-bottom: 2rem;
}
.cf-pb24 {
  padding-bottom: 2.4rem;
}
.cf-pb32 {
  padding-bottom: 3.2rem;
}
.cf-pb40 {
  padding-bottom: 4rem;
}
.cf-pb48 {
  padding-bottom: 4.8rem;
}
.cf-pb64 {
  padding-bottom: 6.4rem;
}

.cf-pl0 {
  padding-left: 0;
}
.cf-pl4 {
  padding-left: 0.4rem;
}
.cf-pl8 {
  padding-left: 0.8rem;
}
.cf-pl12 {
  padding-left: 1.2rem;
}
.cf-pl16 {
  padding-left: 1.6rem;
}
.cf-pl20 {
  padding-left: 2rem;
}
.cf-pl24 {
  padding-left: 2.4rem;
}
.cf-pl32 {
  padding-left: 3.2rem;
}
.cf-pl40 {
  padding-left: 4rem;
}
.cf-pl48 {
  padding-left: 4.8rem;
}
.cf-pl64 {
  padding-left: 6.4rem;
}

/* padding axis */
.cf-px0 {
  padding-left: 0;
  padding-right: 0;
}
.cf-px4 {
  padding-left: 0.4rem;
  padding-right: 0.4rem;
}
.cf-px8 {
  padding-left: 0.8rem;
  padding-right: 0.8rem;
}
.cf-px12 {
  padding-left: 1.2rem;
  padding-right: 1.2rem;
}
.cf-px16 {
  padding-left: 1.6rem;
  padding-right: 1.6rem;
}
.cf-px20 {
  padding-left: 2rem;
  padding-right: 2rem;
}
.cf-px24 {
  padding-left: 2.4rem;
  padding-right: 2.4rem;
}
.cf-px32 {
  padding-left: 3.2rem;
  padding-right: 3.2rem;
}
.cf-px40 {
  padding-left: 4rem;
  padding-right: 4rem;
}
.cf-px48 {
  padding-left: 4.8rem;
  padding-right: 4.8rem;
}
.cf-px64 {
  padding-left: 6.4rem;
  padding-right: 6.4rem;
}

.cf-py0 {
  padding-top: 0;
  padding-bottom: 0;
}
.cf-py4 {
  padding-top: 0.4rem;
  padding-bottom: 0.4rem;
}
.cf-py8 {
  padding-top: 0.8rem;
  padding-bottom: 0.8rem;
}
.cf-py12 {
  padding-top: 1.2rem;
  padding-bottom: 1.2rem;
}
.cf-py16 {
  padding-top: 1.6rem;
  padding-bottom: 1.6rem;
}
.cf-py20 {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.cf-py24 {
  padding-top: 2.4rem;
  padding-bottom: 2.4rem;
}
.cf-py32 {
  padding-top: 3.2rem;
  padding-bottom: 3.2rem;
}
.cf-py40 {
  padding-top: 4rem;
  padding-bottom: 4rem;
}
.cf-py48 {
  padding-top: 4.8rem;
  padding-bottom: 4.8rem;
}
.cf-py64 {
  padding-top: 6.4rem;
  padding-bottom: 6.4rem;
}

/* important */
/* margin all */
.cf-m0-i {
  margin: 0 !important;
}
.cf-m4-i {
  margin: 0.4rem !important;
}
.cf-m8-i {
  margin: 0.8rem !important;
}
.cf-m12-i {
  margin: 1.2rem !important;
}
.cf-m16-i {
  margin: 1.6rem !important;
}
.cf-m20-i {
  margin: 2rem !important;
}
.cf-m24-i {
  margin: 2.4rem !important;
}
.cf-m32-i {
  margin: 3.2rem !important;
}
.cf-m40-i {
  margin: 4rem !important;
}
.cf-m48-i {
  margin: 4.8rem !important;
}
.cf-m64-i {
  margin: 6.4rem !important;
}

/* margin sides */
.cf-mt0-i {
  margin-top: 0 !important;
}
.cf-mt4-i {
  margin-top: 0.4rem !important;
}
.cf-mt8-i {
  margin-top: 0.8rem !important;
}
.cf-mt12-i {
  margin-top: 1.2rem !important;
}
.cf-mt16-i {
  margin-top: 1.6rem !important;
}
.cf-mt20-i {
  margin-top: 2rem !important;
}
.cf-mt24-i {
  margin-top: 2.4rem !important;
}
.cf-mt32-i {
  margin-top: 3.2rem !important;
}
.cf-mt40-i {
  margin-top: 4rem !important;
}
.cf-mt48-i {
  margin-top: 4.8rem !important;
}
.cf-mt64-i {
  margin-top: 6.4rem !important;
}

.cf-mr0-i {
  margin-right: 0 !important;
}
.cf-mr4-i {
  margin-right: 0.4rem !important;
}
.cf-mr8-i {
  margin-right: 0.8rem !important;
}
.cf-mr12-i {
  margin-right: 1.2rem !important;
}
.cf-mr16-i {
  margin-right: 1.6rem !important;
}
.cf-mr20-i {
  margin-right: 2rem !important;
}
.cf-mr24-i {
  margin-right: 2.4rem !important;
}
.cf-mr32-i {
  margin-right: 3.2rem !important;
}
.cf-mr40-i {
  margin-right: 4rem !important;
}
.cf-mr48-i {
  margin-right: 4.8rem !important;
}
.cf-mr64-i {
  margin-right: 6.4rem !important;
}

.cf-mb0-i {
  margin-bottom: 0 !important;
}
.cf-mb4-i {
  margin-bottom: 0.4rem !important;
}
.cf-mb8-i {
  margin-bottom: 0.8rem !important;
}
.cf-mb12-i {
  margin-bottom: 1.2rem !important;
}
.cf-mb16-i {
  margin-bottom: 1.6rem !important;
}
.cf-mb20-i {
  margin-bottom: 2rem !important;
}
.cf-mb24-i {
  margin-bottom: 2.4rem !important;
}
.cf-mb32-i {
  margin-bottom: 3.2rem !important;
}
.cf-mb40-i {
  margin-bottom: 4rem !important;
}
.cf-mb48-i {
  margin-bottom: 4.8rem !important;
}
.cf-mb64-i {
  margin-bottom: 6.4rem !important;
}

.cf-ml0-i {
  margin-left: 0 !important;
}
.cf-ml4-i {
  margin-left: 0.4rem !important;
}
.cf-ml8-i {
  margin-left: 0.8rem !important;
}
.cf-ml12-i {
  margin-left: 1.2rem !important;
}
.cf-ml16-i {
  margin-left: 1.6rem !important;
}
.cf-ml20-i {
  margin-left: 2rem !important;
}
.cf-ml24-i {
  margin-left: 2.4rem !important;
}
.cf-ml32-i {
  margin-left: 3.2rem !important;
}
.cf-ml40-i {
  margin-left: 4rem !important;
}
.cf-ml48-i {
  margin-left: 4.8rem !important;
}
.cf-ml64-i {
  margin-left: 6.4rem !important;
}

/* margin axis */
.cf-mx0-i {
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.cf-mx4-i {
  margin-left: 0.4rem !important;
  margin-right: 0.4rem !important;
}
.cf-mx8-i {
  margin-left: 0.8rem !important;
  margin-right: 0.8rem !important;
}
.cf-mx12-i {
  margin-left: 1.2rem !important;
  margin-right: 1.2rem !important;
}
.cf-mx16-i {
  margin-left: 1.6rem !important;
  margin-right: 1.6rem !important;
}
.cf-mx20-i {
  margin-left: 2rem !important;
  margin-right: 2rem !important;
}
.cf-mx24-i {
  margin-left: 2.4rem !important;
  margin-right: 2.4rem !important;
}
.cf-mx32-i {
  margin-left: 3.2rem !important;
  margin-right: 3.2rem !important;
}
.cf-mx40-i {
  margin-left: 4rem !important;
  margin-right: 4rem !important;
}
.cf-mx48-i {
  margin-left: 4.8rem !important;
  margin-right: 4.8rem !important;
}
.cf-mx64-i {
  margin-left: 6.4rem !important;
  margin-right: 6.4rem !important;
}

.cf-my0-i {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.cf-my4-i {
  margin-top: 0.4rem !important;
  margin-bottom: 0.4rem !important;
}
.cf-my8-i {
  margin-top: 0.8rem !important;
  margin-bottom: 0.8rem !important;
}
.cf-my12-i {
  margin-top: 1.2rem !important;
  margin-bottom: 1.2rem !important;
}
.cf-my16-i {
  margin-top: 1.6rem !important;
  margin-bottom: 1.6rem !important;
}
.cf-my20-i {
  margin-top: 2rem !important;
  margin-bottom: 2rem !important;
}
.cf-my24-i {
  margin-top: 2.4rem !important;
  margin-bottom: 2.4rem !important;
}
.cf-my32-i {
  margin-top: 3.2rem !important;
  margin-bottom: 3.2rem !important;
}
.cf-my40-i {
  margin-top: 4rem !important;
  margin-bottom: 4rem !important;
}
.cf-my48-i {
  margin-top: 4.8rem !important;
  margin-bottom: 4.8rem !important;
}
.cf-my64-i {
  margin-top: 6.4rem !important;
  margin-bottom: 6.4rem !important;
}

/* margin auto helpers */
.cf-ml-auto-i {
  margin-left: auto !important;
}
.cf-mr-auto-i {
  margin-right: auto !important;
}
.cf-mx-auto-i {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* padding all */
.cf-p0-i {
  padding: 0 !important;
}
.cf-p4-i {
  padding: 0.4rem !important;
}
.cf-p8-i {
  padding: 0.8rem !important;
}
.cf-p12-i {
  padding: 1.2rem !important;
}
.cf-p16-i {
  padding: 1.6rem !important;
}
.cf-p20-i {
  padding: 2rem !important;
}
.cf-p24-i {
  padding: 2.4rem !important;
}
.cf-p32-i {
  padding: 3.2rem !important;
}
.cf-p40-i {
  padding: 4rem !important;
}
.cf-p48-i {
  padding: 4.8rem !important;
}
.cf-p64-i {
  padding: 6.4rem !important;
}

/* padding sides */
.cf-pt0-i {
  padding-top: 0 !important;
}
.cf-pt4-i {
  padding-top: 0.4rem !important;
}
.cf-pt8-i {
  padding-top: 0.8rem !important;
}
.cf-pt12-i {
  padding-top: 1.2rem !important;
}
.cf-pt16-i {
  padding-top: 1.6rem !important;
}
.cf-pt20-i {
  padding-top: 2rem !important;
}
.cf-pt24-i {
  padding-top: 2.4rem !important;
}
.cf-pt32-i {
  padding-top: 3.2rem !important;
}
.cf-pt40-i {
  padding-top: 4rem !important;
}
.cf-pt48-i {
  padding-top: 4.8rem !important;
}
.cf-pt64-i {
  padding-top: 6.4rem !important;
}

.cf-pr0-i {
  padding-right: 0 !important;
}
.cf-pr4-i {
  padding-right: 0.4rem !important;
}
.cf-pr8-i {
  padding-right: 0.8rem !important;
}
.cf-pr12-i {
  padding-right: 1.2rem !important;
}
.cf-pr16-i {
  padding-right: 1.6rem !important;
}
.cf-pr20-i {
  padding-right: 2rem !important;
}
.cf-pr24-i {
  padding-right: 2.4rem !important;
}
.cf-pr32-i {
  padding-right: 3.2rem !important;
}
.cf-pr40-i {
  padding-right: 4rem !important;
}
.cf-pr48-i {
  padding-right: 4.8rem !important;
}
.cf-pr64-i {
  padding-right: 6.4rem !important;
}

.cf-pb0-i {
  padding-bottom: 0 !important;
}
.cf-pb4-i {
  padding-bottom: 0.4rem !important;
}
.cf-pb8-i {
  padding-bottom: 0.8rem !important;
}
.cf-pb12-i {
  padding-bottom: 1.2rem !important;
}
.cf-pb16-i {
  padding-bottom: 1.6rem !important;
}
.cf-pb20-i {
  padding-bottom: 2rem !important;
}
.cf-pb24-i {
  padding-bottom: 2.4rem !important;
}
.cf-pb32-i {
  padding-bottom: 3.2rem !important;
}
.cf-pb40-i {
  padding-bottom: 4rem !important;
}
.cf-pb48-i {
  padding-bottom: 4.8rem !important;
}
.cf-pb64-i {
  padding-bottom: 6.4rem !important;
}

.cf-pl0-i {
  padding-left: 0 !important;
}
.cf-pl4-i {
  padding-left: 0.4rem !important;
}
.cf-pl8-i {
  padding-left: 0.8rem !important;
}
.cf-pl12-i {
  padding-left: 1.2rem !important;
}
.cf-pl16-i {
  padding-left: 1.6rem !important;
}
.cf-pl20-i {
  padding-left: 2rem !important;
}
.cf-pl24-i {
  padding-left: 2.4rem !important;
}
.cf-pl32-i {
  padding-left: 3.2rem !important;
}
.cf-pl40-i {
  padding-left: 4rem !important;
}
.cf-pl48-i {
  padding-left: 4.8rem !important;
}
.cf-pl64-i {
  padding-left: 6.4rem !important;
}

/* padding axis */
.cf-px0-i {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.cf-px4-i {
  padding-left: 0.4rem !important;
  padding-right: 0.4rem !important;
}
.cf-px8-i {
  padding-left: 0.8rem !important;
  padding-right: 0.8rem !important;
}
.cf-px12-i {
  padding-left: 1.2rem !important;
  padding-right: 1.2rem !important;
}
.cf-px16-i {
  padding-left: 1.6rem !important;
  padding-right: 1.6rem !important;
}
.cf-px20-i {
  padding-left: 2rem !important;
  padding-right: 2rem !important;
}
.cf-px24-i {
  padding-left: 2.4rem !important;
  padding-right: 2.4rem !important;
}
.cf-px32-i {
  padding-left: 3.2rem !important;
  padding-right: 3.2rem !important;
}
.cf-px40-i {
  padding-left: 4rem !important;
  padding-right: 4rem !important;
}
.cf-px48-i {
  padding-left: 4.8rem !important;
  padding-right: 4.8rem !important;
}
.cf-px64-i {
  padding-left: 6.4rem !important;
  padding-right: 6.4rem !important;
}

.cf-py0-i {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.cf-py4-i {
  padding-top: 0.4rem !important;
  padding-bottom: 0.4rem !important;
}
.cf-py8-i {
  padding-top: 0.8rem !important;
  padding-bottom: 0.8rem !important;
}
.cf-py12-i {
  padding-top: 1.2rem !important;
  padding-bottom: 1.2rem !important;
}
.cf-py16-i {
  padding-top: 1.6rem !important;
  padding-bottom: 1.6rem !important;
}
.cf-py20-i {
  padding-top: 2rem !important;
  padding-bottom: 2rem !important;
}
.cf-py24-i {
  padding-top: 2.4rem !important;
  padding-bottom: 2.4rem !important;
}
.cf-py32-i {
  padding-top: 3.2rem !important;
  padding-bottom: 3.2rem !important;
}
.cf-py40-i {
  padding-top: 4rem !important;
  padding-bottom: 4rem !important;
}
.cf-py48-i {
  padding-top: 4.8rem !important;
  padding-bottom: 4.8rem !important;
}
.cf-py64-i {
  padding-top: 6.4rem !important;
  padding-bottom: 6.4rem !important;
}

/* =========================================================
 * Sizing
 * =======================================================*/
.cf-w-100 {
  width: 100%;
}
.cf-w-auto {
  width: auto;
}
.cf-h-100 {
  height: 100%;
}
.cf-h-auto {
  height: auto;
}
.cf-min-w-0 {
  min-width: 0;
}
.cf-min-h-0 {
  min-height: 0;
}
.cf-max-w-100 {
  max-width: 100%;
}
.cf-max-h-100 {
  max-height: 100%;
}
.cf-w-25 {
  width: 25%;
}
.cf-w-33 {
  width: 33.333%;
}
.cf-w-50 {
  width: 50%;
}
.cf-w-66 {
  width: 66.666%;
}
.cf-w-75 {
  width: 75%;
}

/* important */
.cf-w-100-i {
  width: 100% !important;
}
.cf-w-auto-i {
  width: auto !important;
}
.cf-h-100-i {
  height: 100% !important;
}
.cf-h-auto-i {
  height: auto !important;
}
.cf-min-w-0-i {
  min-width: 0 !important;
}
.cf-min-h-0-i {
  min-height: 0 !important;
}
.cf-max-w-100-i {
  max-width: 100% !important;
}
.cf-max-h-100-i {
  max-height: 100% !important;
}
.cf-w-25-i {
  width: 25% !important;
}
.cf-w-33-i {
  width: 33.333% !important;
}
.cf-w-50-i {
  width: 50% !important;
}
.cf-w-66-i {
  width: 66.666% !important;
}
.cf-w-75-i {
  width: 75% !important;
}

/* =========================================================
 * Position / Z-index
 * =======================================================*/
.cf-pos {
  position: static;
}
.cf-rel {
  position: relative;
}
.cf-abs {
  position: absolute;
}
.cf-fix {
  position: fixed;
}
.cf-t0 {
  top: 0;
}
.cf-r0 {
  right: 0;
}
.cf-b0 {
  bottom: 0;
}
.cf-l0 {
  left: 0;
}
.cf-z1 {
  z-index: 1;
}
.cf-z10 {
  z-index: 10;
}
.cf-z100 {
  z-index: 100;
}
.cf-z1000 {
  z-index: 1000;
}

/* important */
.cf-pos-i {
  position: static !important;
}
.cf-rel-i {
  position: relative !important;
}
.cf-abs-i {
  position: absolute !important;
}
.cf-fix-i {
  position: fixed !important;
}
.cf-t0-i {
  top: 0 !important;
}
.cf-r0-i {
  right: 0 !important;
}
.cf-b0-i {
  bottom: 0 !important;
}
.cf-l0-i {
  left: 0 !important;
}
.cf-z1-i {
  z-index: 1 !important;
}
.cf-z10-i {
  z-index: 10 !important;
}
.cf-z100-i {
  z-index: 100 !important;
}
.cf-z1000-i {
  z-index: 1000 !important;
}

/* =========================================================
 * Text / Typography
 * =======================================================*/
.cf-tal {
  text-align: left;
}
.cf-tac {
  text-align: center;
}
.cf-tar {
  text-align: right;
}
.cf-taj {
  text-align: justify;
}
.cf-nw {
  white-space: nowrap;
}
.cf-ell {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.cf-fw-400 {
  font-weight: 400;
}
.cf-fw-500 {
  font-weight: 500;
}
.cf-fw-700 {
  font-weight: 700;
}

.cf-fs-12 {
  font-size: 1.2rem;
}
.cf-fs-13 {
  font-size: 1.3rem;
}
.cf-fs-14 {
  font-size: 1.4rem;
}
.cf-fs-15 {
  font-size: 1.5rem;
}
.cf-fs-16 {
  font-size: 1.6rem;
}
.cf-fs-18 {
  font-size: 1.8rem;
}
.cf-fs-20 {
  font-size: 2rem;
}

/* important */
.cf-tal-i {
  text-align: left !important;
}
.cf-tac-i {
  text-align: center !important;
}
.cf-tar-i {
  text-align: right !important;
}
.cf-taj-i {
  text-align: justify !important;
}
.cf-nw-i {
  white-space: nowrap !important;
}
.cf-ell-i {
  overflow: hidden !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
}

.cf-fw-400-i {
  font-weight: 400 !important;
}
.cf-fw-500-i {
  font-weight: 500 !important;
}
.cf-fw-700-i {
  font-weight: 700 !important;
}

.cf-fs-12-i {
  font-size: 1.2rem !important;
}
.cf-fs-13-i {
  font-size: 1.3rem !important;
}
.cf-fs-14-i {
  font-size: 1.4rem !important;
}
.cf-fs-15-i {
  font-size: 1.5rem !important;
}
.cf-fs-16-i {
  font-size: 1.6rem !important;
}
.cf-fs-18-i {
  font-size: 1.8rem !important;
}
.cf-fs-20-i {
  font-size: 2rem !important;
}

/* =========================================================
 * Color / Background (hooks)
 * =======================================================*/
.cf-c-pri {
  color: #1559ff;
}
.cf-c-mut {
  color: #666;
}
.cf-c-dng {
  color: #e54848;
}
.cf-c-suc {
  color: #1a9b59;
}

.cf-bg-pri {
  background: #1559ff;
  color: #fff;
}
.cf-bg-mut {
  background: #f5f7fb;
}
.cf-bg-dng {
  background: #fde9e9;
}
.cf-bg-suc {
  background: #e8f6ef;
}

/* important */
.cf-c-pri-i {
  color: #1559ff !important;
}
.cf-c-mut-i {
  color: #666 !important;
}
.cf-c-dng-i {
  color: #e54848 !important;
}
.cf-c-suc-i {
  color: #1a9b59 !important;
}

.cf-bg-pri-i {
  background: #1559ff !important;
  color: #fff !important;
}
.cf-bg-mut-i {
  background: #f5f7fb !important;
}
.cf-bg-dng-i {
  background: #fde9e9 !important;
}
.cf-bg-suc-i {
  background: #e8f6ef !important;
}

/* =========================================================
 * Border / Radius / Shadow
 * =======================================================*/
.cf-bd {
  border: 1px solid #e6e9f0;
}
.cf-bd-0 {
  border: 0;
}
.cf-bdt {
  border-top: 1px solid #e6e9f0;
}
.cf-bdr {
  border-right: 1px solid #e6e9f0;
}
.cf-bdb {
  border-bottom: 1px solid #e6e9f0;
}
.cf-bdl {
  border-left: 1px solid #e6e9f0;
}

.cf-r0 {
  border-radius: 0;
}
.cf-r4 {
  border-radius: 0.4rem;
}
.cf-r6 {
  border-radius: 0.6rem;
}
.cf-r8 {
  border-radius: 0.8rem;
}

.cf-sd-sm {
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
}
.cf-sd-md {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}

/* important */
.cf-bd-i {
  border: 1px solid #e6e9f0 !important;
}
.cf-bd-0-i {
  border: 0 !important;
}
.cf-bdt-i {
  border-top: 1px solid #e6e9f0 !important;
}
.cf-bdr-i {
  border-right: 1px solid #e6e9f0 !important;
}
.cf-bdb-i {
  border-bottom: 1px solid #e6e9f0 !important;
}
.cf-bdl-i {
  border-left: 1px solid #e6e9f0 !important;
}

.cf-r0-i {
  border-radius: 0 !important;
}
.cf-r4-i {
  border-radius: 0.4rem !important;
}
.cf-r6-i {
  border-radius: 0.6rem !important;
}
.cf-r8-i {
  border-radius: 0.8rem !important;
}

.cf-sd-sm-i {
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06) !important;
}
.cf-sd-md-i {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12) !important;
}

/* =========================================================
 * Visibility / Accessibility
 * =======================================================*/
.cf-vv {
  visibility: visible;
}
.cf-vh {
  visibility: hidden;
}
.cf-sr {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

/* important */
.cf-vv-i {
  visibility: visible !important;
}
.cf-vh-i {
  visibility: hidden !important;
}
.cf-sr-i {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

/* =========================================================
 * Overflow / Table / Image / List
 * =======================================================*/
.cf-ov-vis {
  overflow: visible;
}
.cf-ov-hid {
  overflow: hidden;
}
.cf-ov-auto {
  overflow: auto;
}
.cf-ovx-auto {
  overflow-x: auto;
}
.cf-ovy-auto {
  overflow-y: auto;
}

.cf-tbl-fix {
  table-layout: fixed;
}
.cf-img {
  max-width: 100%;
  height: auto;
}
.cf-ul-0 {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* important */
.cf-ov-vis-i {
  overflow: visible !important;
}
.cf-ov-hid-i {
  overflow: hidden !important;
}
.cf-ov-auto-i {
  overflow: auto !important;
}
.cf-ovx-auto-i {
  overflow-x: auto !important;
}
.cf-ovy-auto-i {
  overflow-y: auto !important;
}

.cf-tbl-fix-i {
  table-layout: fixed !important;
}
.cf-img-i {
  max-width: 100% !important;
  height: auto !important;
}
.cf-ul-0-i {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* =========================================================
 * Cursor / Select
 * =======================================================*/
.cf-cur-ptr {
  cursor: pointer;
}
.cf-cur-def {
  cursor: default;
}
.cf-cur-na {
  cursor: not-allowed;
}
.cf-no-sel {
  -ms-user-select: none;
  user-select: none;
}

/* important */
.cf-cur-ptr-i {
  cursor: pointer !important;
}
.cf-cur-def-i {
  cursor: default !important;
}
.cf-cur-na-i {
  cursor: not-allowed !important;
}
.cf-no-sel-i {
  -ms-user-select: none;
  user-select: none;
}
