/* ========== UTILITIES ========== */
.hide-section {
  display: none !important;
}


/* ========== COMPONENTS ========== */

/* Research box */
.kusc-lp-research-box {
  background: #ffffff;
  border: 1px solid #e7e7e7;
  border-radius: 12px;
  padding: 24px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.03);
}

.kusc-lp-research-box__content {
  margin-top: 0;
}

/* ========== PLUGIN / JETFORMBUILDER ========== */

/* Submit wrap */
.jet-form-builder__submit-wrap {
  display: flex !important;
  justify-content: center !important;
  margin-top: 20px;
}

.jet-form-builder__submit-wrap .jet-form-builder__submit,
.jet-form-builder__submit-wrap button,
.jet-form-builder__submit-wrap input[type="submit"] {
  min-width: 220px !important;
  text-align: center !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

/* Textarea */
.jet-form-builder textarea,
.jet-form-builder textarea.jet-form-builder__field {
  min-height: 180px !important;
  resize: vertical;
}


/* ========== PLUGIN / LEARNPRESS ========== */

.lp-offline-payment-center {
  text-align: center;
}

.lp-offline-payment-center img {
  display: block;
  margin: 20px auto;
  max-width: 260px;
  width: 100%;
  height: auto;
}

.lp-offline-payment-center p {
  text-align: center;
  margin: 12px 0;
}

.cmsmasters_theme_icon_slide_top,
.cmsmasters_theme_icon_slide_top:before {
  background: #CBC2BA !important;
}

/* tab ที่ถูกเลือก */
.cmsmasters_tabs_list .cmsmasters_tabs_list_item.current_tab a {
  background-color: #72242B !important; /* น้ำเงิน */
}

/* Price Tab */
.cmsmasters_course_price {
  background-color: #A7434D !important;
}

/* Date Tab */
.cmsmasters_slider_post_cont_info {
  background-color: #A7434D !important;
}

/* --------------------- */

.tamu-bg-section {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate;
  background-color: #500000 !important;
  background-blend-mode: luminosity;
}

.tamu-bg-section::before {
  display: none !important;
}

.tamu-bg-section::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: #500000;
  opacity: 0.78;
  pointer-events: none;
}

.tamu-bg-section .cmsmasters_row_outer_parent,
.tamu-bg-section .cmsmasters_row_outer,
.tamu-bg-section .cmsmasters_row_inner,
.tamu-bg-section .cmsmasters_row_margin,
.tamu-bg-section .cmsmasters_column,
.tamu-bg-section .cmsmasters_column_inner {
  position: relative;
  z-index: 2;
}

.tamu-bg-section .cmsmasters_heading,
.tamu-bg-section .cmsmasters_heading a,
.tamu-bg-section p,
.tamu-bg-section a {
  color: #ffffff !important;
}

/* =========================================================
   Schule Header Logo SVG Fix - Full Responsive Safe
   Desktop + Tablet + Mobile
   Hamburger Menu Opens Without Breaking Header
   ========================================================= */


/* =========================================================
   Desktop: 1025px up
   ========================================================= */

@media only screen and (min-width: 1025px) {

  .header_mid,
  .header_mid_outer,
  .header_mid_inner {
    overflow: visible !important;
  }

  .header_mid .logo_wrap {
    display: flex !important;
    align-items: center !important;
    height: 100% !important;
    min-height: 0 !important;
  }

  .header_mid .logo {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    height: 100% !important;
    line-height: 1 !important;
    overflow: visible !important;
    padding: 0 !important;
    background-image: none !important;
  }

  .header_mid .logo > img {
    display: block !important;
    width: 150px !important;
    max-width: 150px !important;
    height: auto !important;
    max-height: 48px !important;
    opacity: 1 !important;
    visibility: visible !important;
    position: static !important;
    transform: none !important;
  }

  .header_mid .logo > img.logo_retina {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    max-width: 0 !important;
    max-height: 0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
  }
}


/* =========================================================
   Tablet + Mobile Common: 1024px down
   Keep header fixed height
   Let menu float below header
   ========================================================= */

@media only screen and (max-width: 1024px) {

  #page,
  #main,
  #header,
  .header_mid,
  .header_mid_outer,
  .header_mid_inner {
    overflow: visible !important;
  }

  #header,
  .header_mid,
  .header_mid_outer {
    position: relative !important;
    z-index: 99990 !important;
  }

  .header_mid_inner {
    position: relative !important;
    box-sizing: border-box !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    z-index: 99991 !important;
  }

  /* =========================
     Logo
     ========================= */

  .header_mid .logo_wrap {
    display: block !important;
    position: absolute !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    overflow: visible !important;
    z-index: 100010 !important;
  }

  .header_mid .logo {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
    position: relative !important;
    overflow: visible !important;
    background-image: none !important;
  }

  .header_mid .logo > img {
    display: block !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    position: static !important;
    transform: none !important;
  }

  .header_mid .logo > img.logo_retina {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    max-width: 0 !important;
    max-height: 0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
  }

  /* =========================
     Hamburger
     ========================= */

  .header_mid .resp_mid_nav_wrap {
    display: block !important;
    position: absolute !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    overflow: visible !important;
    z-index: 100020 !important;
  }

  .header_mid .resp_mid_nav_outer {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .header_mid .responsive_nav,
  .header_mid .resp_mid_nav {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
    z-index: 100021 !important;
    cursor: pointer !important;
  }

  /* =========================
     Menu container only
     ไม่แตะ ul / li / a / sub-menu
     ไม่สร้างลูกศร
     ไม่บังคับ expand submenu
     ========================= */

  .header_mid .mid_nav_wrap {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: auto !important;
    max-height: calc(100vh - 80px) !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    clear: both !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    z-index: 100000 !important;
  }
}


/* =========================================================
   Tablet: 768px - 1024px
   Header fixed 64px
   ========================================================= */

@media only screen and (min-width: 768px) and (max-width: 1024px) {

  .header_mid,
  .header_mid_outer,
  .header_mid_inner {
    height: 64px !important;
    min-height: 64px !important;
    max-height: 64px !important;
  }

  .header_mid .logo_wrap {
    left: 20px !important;
    top: 32px !important;
    width: 150px !important;
    height: 40px !important;
    transform: translateY(-50%) !important;
  }

  .header_mid .logo {
    width: 150px !important;
    height: 40px !important;
  }

  .header_mid .logo > img {
    width: 150px !important;
    max-width: 150px !important;
    max-height: 40px !important;
  }

  .header_mid .resp_mid_nav_wrap {
    right: 20px !important;
    top: 32px !important;
    width: 24px !important;
    height: 24px !important;
    transform: translateY(-50%) !important;
  }

  .header_mid .resp_mid_nav_outer,
  .header_mid .responsive_nav,
  .header_mid .resp_mid_nav {
    width: 24px !important;
    height: 24px !important;
  }

  .header_mid .mid_nav_wrap {
    top: 64px !important;
    max-height: calc(100vh - 64px) !important;
  }
}


/* =========================================================
   Mobile: 767px down
   Header fixed 46px
   ========================================================= */

@media only screen and (max-width: 767px) {

  .header_mid,
  .header_mid_outer,
  .header_mid_inner {
    height: 46px !important;
    min-height: 46px !important;
    max-height: 46px !important;
  }

  .header_mid .logo_wrap {
    left: 14px !important;
    top: 23px !important;
    width: 118px !important;
    height: 30px !important;
    transform: translateY(-50%) !important;
  }

  .header_mid .logo {
    width: 118px !important;
    height: 30px !important;
  }

  .header_mid .logo > img {
    width: 118px !important;
    max-width: 118px !important;
    max-height: 30px !important;
  }

  .header_mid .resp_mid_nav_wrap {
    right: 14px !important;
    top: 23px !important;
    width: 24px !important;
    height: 24px !important;
    transform: translateY(-50%) !important;
  }

  .header_mid .resp_mid_nav_outer,
  .header_mid .responsive_nav,
  .header_mid .resp_mid_nav {
    width: 24px !important;
    height: 24px !important;
  }

  .header_mid .mid_nav_wrap {
    top: 46px !important;
    max-height: calc(100vh - 46px) !important;
  }
}
