:root {
  /**Color**/
  --black: #000;
  --white: #fff;
  --gray-1: #f7f8fa;
  --gray-2: #f2f3f5;
  --gray-3: #ebedf0;
  --gray-4: #dcdee0;
  --gray-5: #c8c9cc;
  --gray-6: #969799;
  --gray-7: #646566;
  --gray-8: #323233;
  --red: #ee0a24;
  --blue: #1989fa;
  --orange: #ff976a;
  --orange-dark: #ed6a0c;
  --orange-light: #fffbe8;
  --green: #07c160;

  /**Gradient Colors**/
  --gradient-red: linear-gradient(to right, #ff6034, #ee0a24);
  --gradient-orange: linear-gradient(to right, #ffd01e, #ff8917);

  /**Component Colors**/
  --primary-color: var(--blue);
  --success-color: var(--green);
  --danger-color: var(--red);
  --warning-color: var(--orange);
  --text-color: var(--gray-8);
  --active-color: var(--gray-2);
  --active-opacity: 0.7;
  --disabled-opacity: 0.5;
  --background-color: var(--gray-1);
  --background-color-light: #fafafa;
  --text-link-color: #576b95;

  /**Font**/
  --font-size-xs: 10px;
  --font-size-sm: 12px;
  --font-size-md: 14px;
  --font-size-lg: 16px;
  --font-size-xl: 24px;
  --font-weight-bold: 500;
  --line-height-xs: 14px;
  --line-height-sm: 18px;
  --line-height-md: 20px;
  --line-height-lg: 22px;
  --base-font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue',
    Helvetica, Segoe UI, Arial, Roboto, 'PingFang SC', 'miui', 'Hiragino Sans GB',
    'Microsoft Yahei', sans-serif;

  /**Animation**/
  --animation-duration-base: 0.3s;
  --animation-duration-fast: 0.2s;
  --animation-timing-function-enter: ease-out;
  --animation-timing-function-leave: ease-in;

  /**Border**/
  --border-color: var(--gray-3);
  --border-width-base: 1px;
  --border-radius-sm: 2px;
  --border-radius-md: 4px;
  --border-radius-lg: 8px;
  --border-radius-max: 999px;

  /**Theme Color**/
  --color-primary: var(--primary-color);
  --color-dark: var(--gray-8);
  --color-secondary: var(--gray-6);
  --color-muted: var(--gray-5);
  --color-light: var(--gray-3);
  --color-danger: var(--danger-color);
  --color-warning: var(--warning-color);
  --color-success: var(--success-color);
  --color-body: var(--text-color);

  /**Theme Btn Color**/
  --btn-primary: var(--primary-color);
  --btn-dark: var(--gray-8);
  --btn-secondary: var(--gray-6);
  --btn-light: var(--gray-3);
  --btn-danger: var(--danger-color);
  --btn-success: var(--success-color);

  /**Theme Bg Color**/
  --bg-primary: var(--primary-color);
  --bg-dark: var(--gray-8);
  --bg-secondary: var(--gray-6);
  --bg-light: var(--gray-1);
  --bg-danger: var(--danger-color);
  --bg-warning: var(--warning-color);
  --bg-white: #fff;
  --bg-body: var(--gray-1);

  /**Theme Border Color**/
  --border-primary: var(--primary-color);
  --border-dark: var(--gray-8);
  --border-secondary: var(--gray-6);
  --border-light: var(--gray-4);
  --border-danger: var(--danger-color);
  --border-warning: var(--warning-color);
  --border-white: #fff;

  --outline-primary: rgba(25, 137, 250, 0.2);
  --outline-danger: rgba(238, 10, 37, 0.2);


  /**Theme shadow Color**/
  --shadow-1: rgba(0, 0, 0, 0.1);
  --shadow-2: rgba(0, 0, 0, 0.2);
  --shadow: 0 12px 28px 0 var(--shadow-2), 0 2px 4px 0 var(--shadow-1);

  --swiper-pagination-color: #fff;
  --swiper-pagination-bullet-inactive-color: rgba(255, 255, 255, 0.8);
  --swiper-navigation-mini-size: 30px;
  --swiper-navigation-size: 50px;
}

/* -------------------------------------------------------------------------- */
/*	CSS Reset
/* -------------------------------------------------------------------------- */

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

html,
body {
  border: none;
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
address,
big,
cite,
code,
em,
font,
img,
small,
strike,
sub,
sup,
li,
ol,
ul,
fieldset,
form,
label,
legend,
button,
table,
caption,
tr,
th,
td {
  border: none;
  font-size: inherit;
  line-height: inherit;
  text-align: inherit;
  margin: 0;
  padding: 0;
}

/* General ------------------------------------- */

body {
  font-family: var(--base-font-family);
  font-size: var(--font-size-sm);
  color: var(--color-body);
  background-color: var(--bg-body);
  padding: 0;
  margin: 0;
}

body {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
}

/* Links ------------------------------------- */

a {
  color: var(--color-body);
  text-decoration: none;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

a:link,
a:visited {
  text-decoration: none;
}

a:hover {
  color: var(--color-primary);
}

a:focus {
  outline: 0;
}

a:not([href]):not([class]),
a:not([href]):not([class]):hover {
  color: inherit;
  text-decoration: none;
}

h1>a,
h2>a,
h3>a,
h4>a,
h5>a,
h6>a,
.h1>a,
.h2>a,
.h3>a,
.h4>a,
.h5>a,
.h6>a {
  color: var(--color-dark);
}

h1>a:hover,
h2>a:hover,
h3>a:hover,
h4>a:hover,
h5>a:hover,
h6>a:hover,
.h1>a:hover,
.h2>a:hover,
.h3>a:hover,
.h4>a:hover,
.h5>a:hover,
.h6>a:hover {
  color: var(--color-primary);
}

/* code -------------------------- */

code {
  font-size: 80%;
  color: inherit;
  padding: 4px 10px;
  word-break: break-word;
}

pre {
  margin-bottom: 24px;
  display: block;
  overflow: auto;
  word-wrap: normal;
  overflow-wrap: normal;
}

/* Table -------------------------- */

table {
  max-width: 100%;
  background-color: transparent;
}

th,
td {
  background: transparent;
  padding: 6px 12px;
  border: 0.0625rem solid var(--border-light);
  text-align: initial;
}

th {
  background: rgba(var(--bg-light), 0.05);
}

table caption {
  padding: 0 0 8px 0;
  width: auto;
}

i {
  font-style: normal;
}

/* Media ------------------------------------- */

iframe {
  border: none;
}

video,
iframe {
  max-width: 100%;
}

img,
embed,
object {
  max-width: 100%;
}

img {
  height: auto;
}

video {
  background-size: cover;
  display: table-cell;
  vertical-align: middle;
}

/* Form ------------------------------------- */

form {
  margin: 0;
  padding: 0;
  outline: none;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

textarea {
  overflow: auto;
  -webkit-appearance: none;
  -moz-appearance: none;
}

[type="url"],
[type="email"],
[type="tel"] {
  direction: ltr;
}

[type="text"],
[type="password"],
[type="email"],
[type="url"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  outline: 0;
}

[type="date"],
[type="month"],
[type="time"],
[type="datetime"],
[type="datetime-local"],
[type="week"],
[type="number"],
[type="search"],
[type="tel"],
[type="color"] {
  -webkit-appearance: none;
  -moz-appearance: none;
}

[type="number"] {
  -moz-appearance: textfield;
}

[type="number"]::-webkit-outer-spin-button,
[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
}

[type="checkbox"],
[type="radio"] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

/* Lists ------------------------------------- */

menu,
ul,
ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

dt,
dd {
  line-height: 1.5;
}

dt {
  font-weight: 500;
}

dt+dd {
  margin-top: 0.5rem;
}

dd+dt {
  margin-top: 1.5rem;
}

/* -------------------------------------------------------------------------- */
/*	Element Base
/* ---------------------------------------------*---------------------------- */

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: bolder;
  margin: 0;
}

/*--------------------------------------------------------------
/*	Font Size style
--------------------------------------------------------------*/

h1,
.h1 {
  font-size: 1.75rem;
  line-height: 1.4;
}

h2,
.h2 {
  font-size: 1.5rem;
  line-height: 1.4;
}

h3,
.h3 {
  font-size: 1.25rem;
  line-height: 1.5;
}

h4,
.h4 {
  font-size: 1.125rem;
  line-height: 1.5;
}

h5,
.h5 {
  font-size: 1.0625rem;
  line-height: 1.5;
}

h6,
.h6 {
  font-size: 1rem;
  line-height: 1.5;
}

@media (min-width: 768px) and (max-width: 991.98px) {

  h1,
  .h1 {
    font-size: 1.75rem;
  }

  h2,
  .h2 {
    font-size: 1.5rem;
  }

  h3,
  .h3 {
    font-size: 1.25rem;
  }

  h4,
  .h4 {
    font-size: 1.125rem;
  }

  h5,
  .h5 {
    font-size: 1rem;
  }
}

@media (max-width: 767.98px) {

  h1,
  .h1 {
    font-size: 1.5rem;
  }

  h2,
  .h2 {
    font-size: 1.25rem;
  }

  h3,
  .h3 {
    font-size: 1.125rem;
  }

  h4,
  .h4 {
    font-size: 1rem;
  }

  h5,
  .h5 {
    font-size: 1rem;
  }
}

.h4 .small,
.h4 small,
.h5 .small,
.h5 small,
.h6 .small,
.h6 small,
h4 .small,
h4 small,
h5 .small,
h5 small,
h6 .small,
h6 small {
  font-size: 85%;
}

/* Inputs ------------------------------------ */

input,
textarea {
  border-color: var(--border-light);
  color: var(--text-dark);
}

code,
input[type="url"],
input[type="email"],
input[type="tel"] {
  /*rtl:ignore*/
  direction: ltr;
}

input[type="text"],
input[type="password"],
input[type="email"],
input[type="url"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  outline: 0;
}

input[type="date"],
input[type="month"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="week"],
input[type="number"],
input[type="search"],
input[type="tel"],
input[type="color"],
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
}

input[type="number"] {
  -moz-appearance: textfield;
}

input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
}

textarea {
  line-height: 1.5;
  width: 100%;
}

input::-webkit-input-placeholder {
  line-height: normal;
}

input:-ms-input-placeholder {
  line-height: normal;
}

input::-moz-placeholder {
  line-height: revert;
  /* Reset to the value from the user-agent stylesheet. */
}

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
  display: none;
}

button,
button:focus,
button:hover,
.button:focus,
.button:hover {
  -webkit-appearance: none;
  outline: none !important;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
}

input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-transition: all 0.15s linear;
  transition: all 0.15s linear;
}

button:focus,
button:hover,
.button:focus,
.button:hover,
input[type="button"]:focus,
input[type="button"]:hover,
input[type="reset"]:focus,
input[type="reset"]:hover,
input[type="submit"]:focus,
input[type="submit"]:hover {
  text-decoration: none;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
  outline: 0;
}

select {
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-transition: opacity 0.15s linear;
  transition: opacity 0.15s linear;
}

textarea {
  height: auto;
  resize: none;
}

/* Lists ------------------------------------- */

menu,
ul,
ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

dt,
dd {
  line-height: 1.5;
}

dt {
  font-weight: 500;
}

dt+dd {
  margin-top: 0.5rem;
}

dd+dt {
  margin-top: 1.5rem;
}

/* Quotes ------------------------------------ */

blockquote {
  padding: 16px 20px;
  margin: 24px 0;
  background-color: var(--bg-light);
  border-radius: var(--border-radius-md);
}

blockquote::before,
blockquote::after {
  content: "";
}

cite {
  color: inherit;
  font-size: 85%;
  font-style: normal;
  font-weight: 500;
  line-height: 1.25;
}

blockquote cite {
  display: block;
  margin: 32px 0 0 0;
}

blockquote p,
blockquote>p:last-child {
  margin-bottom: 32px;
}

blockquote p:last-child {
  margin: 0;
}

blockquote em,
blockquote i,
blockquote cite {
  font-style: normal;
}

/* Media ------------------------------------- */

figure {
  margin: 0;
}

img,
embed,
iframe,
object,
video {
  max-width: 100%;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

.wp-block-video video {
  height: auto;
}

/*--------------------------------------------------------------
/*	Size style
--------------------------------------------------------------*/

.w-8 {
  width: 0.5rem !important;
  height: 0.5rem !important;
}

.w-12 {
  width: 0.75rem !important;
  height: 0.75rem !important;
}

.w-16 {
  width: 1rem !important;
  height: 1rem !important;
}

.w-20 {
  width: 1.25rem !important;
  height: 1.25rem !important;
  font-size: 0.6em;
}

.w-24 {
  width: 1.5rem !important;
  height: 1.5rem !important;
  font-size: 0.7em;
}

.w-28 {
  width: 1.75rem !important;
  height: 1.75rem !important;
  font-size: 0.8em;
}

.w-32 {
  width: 2rem !important;
  height: 2rem !important;
  font-size: 0.85em;
}

.w-36 {
  width: 2.25rem !important;
  height: 2.25rem !important;
  font-size: 0.875em;
}

.w-40 {
  width: 2.5rem !important;
  height: 2.5rem !important;
}

.w-48 {
  width: 3rem !important;
  height: 3rem !important;
}

.w-56 {
  width: 3.5rem !important;
  height: 3.5rem !important;
}

.w-64 {
  width: 4rem !important;
  height: 4rem !important;
}

.w-72 {
  width: 4.5rem !important;
  height: 4.5rem !important;
}

.w-80 {
  width: 5rem;
  height: 5rem;
}

.w-96 {
  width: 6rem;
  height: 6rem;
}

.w-128 {
  width: 8rem;
  height: 8rem;
}

.w-168 {
  width: 10.5rem;
  height: 10.5rem;
}

.w-192 {
  width: 12rem;
}

.w-xs {
  width: 5.625rem;
}

.w-auto {
  width: auto;
}

.h-auto {
  height: auto;
}

.hv {
  height: 100vh;
}

.h-v {
  min-height: 100vh;
}

.h-v-30 {
  min-height: 30vh;
}

.h-v-33 {
  min-height: 33vh;
}

.h-v-50 {
  min-height: 50vh;
}

.h-v-66 {
  min-height: 66vh;
}

.h-v-75 {
  min-height: 75vh;
}

@media (max-width: 1199.9808px) {
  .w-auto-lg {
    width: auto !important;
  }

  .w-100-lg {
    width: 100% !important;
  }
}

@media (max-width: 991.9808px) {
  .w-auto-md {
    width: auto !important;
  }

  .w-100-md {
    width: 100% !important;
  }
}

@media (max-width: 767.9808px) {
  .w-auto-sm {
    width: auto !important;
  }

  .w-100-sm {
    width: 100% !important;
  }
}

@media (max-width: 575.9808px) {
  .w-auto-xs {
    width: auto !important;
  }

  .w-100-xs {
    width: 100% !important;
  }
}

@media (min-width: 768px) {
  .h-v-25 {
    min-height: 25vh;
  }
}

.overflow-y {
  overflow-x: hidden;
  overflow-y: auto;
}

/*--------------------------------------------------------------
/*	 Text Size style
--------------------------------------------------------------*/

.text-xs {
  font-size: var(--font-size-xs);
}

.text-sm {
  font-size: var(--font-size-sm);
}

.text-md {
  font-size: var(--font-size-md);
}

.text-lg {
  font-size: var(--font-size-lg);
}

.text-xl {
  font-size: var(--font-size-xl);
}

.text-xxl {
  font-size: 1.75rem;
}

.text-40 {
  font-size: 2.5rem;
}

.text-50 {
  font-size: 3.125rem;
}

.text-64 {
  font-size: 4rem;
}

@media (max-width: 767.98px) {
  .text-xs {
    font-size: 0.75rem;
  }

  .text-sm {
    font-size: 0.875rem;
  }

  .text-md {
    font-size: 1rem;
  }

  .text-lg {
    font-size: 1.125rem;
  }

  .text-xl {
    font-size: 1.25rem;
  }

  .text-xxl {
    font-size: 1.5rem;
  }
}

/* Icon style ----------------------------- */

.iconfont {
  display: inline-block;
  vertical-align: middle;
  line-height: normal;
}

.iconfont.text-md {
  position: relative;
  top: -0.0625rem;
}

.iconfont.text-lg,
.iconfont.text-sm {
  position: relative;
  top: -0.03125rem;
}