/* -----------------------------------------
  1. RESET & BASE STYLES
----------------------------------------- */
* {
  box-sizing: border-box;
}

body {
  background-color: #ffffff;
  font-family: "kurious looped";
}

@media (max-width: 991.98px) {
  body {
    background-color: #f8f8f8;
  }
}

/* -----------------------------------------
  2. CONTAINER & GRID SYSTEM
----------------------------------------- */
.container {
  max-width: 1242px;
}

@media (max-width: 1199.98px) {
  .container {
    max-width: 970px;
  }
}

@media (max-width: 991.98px) {
  .container {
    max-width: 750px;
  }
}

.row {
  margin-left: -10px;
  margin-right: -10px;
}

[class^="col-"] {
  padding-left: 10px;
  padding-right: 10px;
}

/* -----------------------------------------
  3. DISPLAY UTILITIES
----------------------------------------- */
.d-inline {
  display: inline-block;
}

.d-block {
  display: block;
}

@media (min-width: 992px) {
  .d-md-block {
    display: block;
  }

  .d-md-inline-block {
    display: inline-block !important;
  }

  .d-md-none {
    display: block;
  }

  .v-center {
    display: inline-block;
    vertical-align: middle;
    float: none;
  }
}

/* -----------------------------------------
  4. TEXT ALIGN & TYPOGRAPHY UTILITIES
----------------------------------------- */
@media (min-width: 992px) {
  .text-md-center {
    text-align: center;
  }

  .text-md-right {
    text-align: right;
  }

  .text-md-left {
    text-align: left;
  }
}

.fs-14 {
  font-size: 14px !important;
}

.fs-16 {
  font-size: 16px;
}

.fs-18 {
  font-size: 18px;
}

.fs-20 {
  font-size: 20px;
}

.fs-32 {
  font-size: 32px;
}

.fs-38 {
  font-size: 38px;
}

.fw-md {
  font-family: "kurious looped", "noto_sansmedium", "noto_sans_thaimedium", sans-serif;
  font-weight: normal;
  font-style: normal;
}

.fw-sb {
  font-family: "kurious looped", "noto_sanssemibold", "noto_sans_thaisemibold", sans-serif;
  font-weight: normal;
  font-style: normal;
}

.fw-b {
  font-family: "kurious looped", "noto_sansbold", "noto_sans_thaibold", sans-serif;
  font-weight: normal;
  font-style: normal;
}

.lh-2 {
  line-height: 2 !important;
}

.lh-13 {
  line-height: 1.3;
}

.underline {
  text-decoration: underline;
}

/* -----------------------------------------
  5. MARGIN & SPACING UTILITIES
----------------------------------------- */
.ml-10 {
  margin-left: 10px;
}

.ml-30 {
  margin-left: 30px;
}

.mt-10 {
  margin-top: 10px !important;
}

.mb-10 {
  margin-bottom: 10px !important;
}

.mb-20 {
  margin-bottom: 20px !important;
}

.mr-0 {
  margin-right: 0 !important;
}

.mt-col2 {
  margin-top: 100px !important;
}

@media (max-width: 991.98px) {
  .mt-col2 {
    margin-top: 0 !important;
  }
}

/* -----------------------------------------
  6. COLOR UTILITIES
----------------------------------------- */
.color-primary {
  color: #59b785;
}

.color-darkgrey {
  color: #5b5b5b;
}

.color-lightgrey {
  color: #cacaca !important;
}

.color-grey {
  color: #777777 !important;
}

/* -----------------------------------------
  7. TAG LINE STYLES
----------------------------------------- */
.tag-line {
  font-size: 14px;
  line-height: 135%;
}

.tag-line--red {
  font-size: 14px;
  color: #ed1b2e !important;
}

@media (max-width: 991.98px) {
  .tag-line--red {
    font-size: 10px;
  }
}

/* -----------------------------------------
  8. ICON FONT (ICOMOON)
----------------------------------------- */
[class^="icon-"],
[class*=" icon-"] {
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-u_clock-five:before {
  content: "\e912";
}
.icon-Search:before {
  content: "\e908";
}
.icon-check:before {
  content: "\e900";
}
.icon-x:before {
  content: "\e901";
}
.icon-chevron-down:before {
  content: "\e902";
}
.icon-chevron-left:before {
  content: "\e903";
}
.icon-chevron-right:before {
  content: "\e904";
}
.icon-chevron-up:before {
  content: "\e905";
}
.icon-fi_bar-chart-2:before {
  content: "\e906";
}
.icon-fi_menu:before {
  content: "\e907";
}
.icon-u_calender:before {
  content: "\e909";
}
.icon-u_eye:before {
  content: "\e90a";
}
.icon-u_share-alt:before {
  content: "\e90b";
}
.icon-u_user-circle:before {
  content: "\e90c";
}
.icon-u_youtube:before {
  content: "\e90d";
}
.icon-u_blockdit:before {
  content: "\e90e";
}
.icon-u_twitter:before {
  content: "\e90f";
}
.icon-u_line:before {
  content: "\e910";
}
.icon-u_facebook:before {
  content: "\e911";
}

/* -----------------------------------------
  9. RESPONSIVE OVERFLOW EFFECT
----------------------------------------- */
@media (max-width: 991.98px) {
  .row-overflow {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
    -ms-overflow-style: none;
  }

  .row-overflow::-webkit-scrollbar {
    display: none;
  }

  .row-overflow:after {
    content: "";
    position: absolute;
    width: 30%;
    background-image: linear-gradient(
      270deg,
      #ffffff 0%,
      rgba(255, 255, 255, 0) 87.67%
    );
    height: 100%;
    pointer-events: none;
    top: 0;
    right: -5%;
  }
}

/* -----------------------------------------
  10. K-WEALTH THEME STYLES
----------------------------------------- */
body.k-wealth.overflowy-hidden {
  overflow-y: hidden;
}
.k-wealth {
  font-family: "kurious looped", "noto_sansregular", "noto_sans_thairegular", sans-serif;
  font-weight: normal;
  font-style: normal;
  color: #333333;
  font-size: 18px;
}

.k-wealth h1,
.k-wealth p,
.k-wealth h2 {
  margin-bottom: 0;
}

.k-wealth h1 {
  font-size: 38px;
}

@media (max-width: 991.98px) {
  .k-wealth h1 {
    font-size: 28px;
  }
}

.k-wealth h2 {
  font-family: "kurious looped", "noto_sanssemibold", "noto_sans_thaisemibold", sans-serif;
  font-weight: normal;
  font-style: normal;
  font-size: 28px;
}

@media (max-width: 991.98px) {
  .k-wealth h2 {
    font-size: 24px;
  }
}

.k-wealth h3 {
  font-family: "kurious looped", "noto_sanssemibold", "noto_sans_thaisemibold", sans-serif;
  font-weight: normal;
  font-style: normal;
  font-size: 22px;
}

@media (max-width: 991.98px) {
  .k-wealth h3 {
    font-size: 18px;
  }
}

.k-wealth h4 {
  font-family: "kurious looped", "noto_sanssemibold", "noto_sans_thaisemibold", sans-serif;
  font-weight: normal;
  font-style: normal;
  margin-top: 0;
}

.k-wealth img {
  max-width: 100% !important;
}

.k-wealth .btn:focus {
  box-shadow: unset;
}

/* -----------------------------------------
  11. K-WEALTH MODAL THEME STYLES
----------------------------------------- */
.k-wealth .modal-dialog {
  max-width: 1030px;
}

@media (min-width: 1200px) {
  .k-wealth .modal-dialog.modal-lg {
    width: 1150px;
  }
}

#floating-navigation-sticky .btn-badge {
  cursor: pointer;
}

.k-wealth .modal-dialog .modal-content {
  border-radius: 12px;
  height: 100%;
  overflow: hidden;
  box-shadow: 0px 4px 43px rgba(0, 0, 0, 0.1);
  border: none;
}

.k-wealth .stickyNav-modal {
  padding: 0 16px;
}

#floating-navigation-sticky .stickyNav-modal.d-none {
  background-color: rgba(0, 0, 0, 0.9);
  opacity: 0;
  transition: all 0.3s ease-in-out;
}

#floating-navigation-sticky .stickyNav-modal.open {
  opacity: 1;
  transition: all 0.3s ease-in-out;
}

@media (max-width: 991.98px) {
  .k-wealth .modal-dialog .modal-content {
    max-height: 100vh;
  }
}

.k-wealth .modal-dialog .modal-content .floating-modal__close {
  z-index: 100;
  color: #ffffff;
  top: -16px !important;
  right: -16px !important;
  transform: none !important;
}

.k-wealth .modal-dialog .modal-content .kplus-qr-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0;
  gap: unset;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: #fff;
  border-radius: 8px;
  height: 474px;
  overflow: hidden;
}
.k-wealth .modal-dialog .modal-content .kplus-qr-body > div {
  width: 50%;
}
.k-wealth .modal-dialog .modal-content .kplus-qr-text {
  padding: 0 64px;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 0px;
  flex: 1 1 0;
  padding-bottom: 41px;
}
.k-wealth .modal-dialog .modal-content .kplus-qr-text h3 {
  font-size: 26px;
  line-height: 39px;
  margin-bottom: 16px;
  font-style: normal;
  font-weight: 700;
  color: #333;
}
.k-wealth .modal-dialog .modal-content .kplus-qr-text p {
  font-size: 18px;
  line-height: 27px;
  font-weight: 500;
  color: #666666;
  margin-bottom: 32px;
  font-style: normal;
}
.k-wealth .modal-dialog .modal-content .kplus-qr-text p:last-child {
  margin-bottom: 0;
}
.k-wealth .modal-dialog .modal-content .kplus-qr-image {
  background: linear-gradient(96deg, #2eaa99 0.54%, #2a9489 100%);
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
.k-wealth .modal-dialog .modal-content .kplus-qr-image .img-logo {
  position: absolute;
  top: 7%;
}
@media (max-width: 1199px) {
  .k-wealth .modal-dialog .modal-content .kplus-qr-body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
    padding: 0;
  }
  .k-wealth .modal-dialog .modal-content .kplus-qr-body > div {
    width: 100%;
  }
  .k-wealth .modal-dialog .modal-content .kplus-qr-text {
    padding: 0 64px 0;
  }
}