/* 0. base: the theme and plugin rules these pages actually use (Bootstrap reset, theme defaults, Elementor kit) */
ol, ul { box-sizing: border-box; }
:where(figure) { margin: 0px 0px 1em; }
@media (prefers-reduced-motion: no-preference) {
html { scroll-behavior: smooth; }
}
.elementor-kit-4 { --e-global-color-primary: #8A291B; --e-global-color-secondary: #5A1B12; --e-global-color-text: #1F2937; --e-global-color-accent: #8A291B; --e-global-color-89faaa4: #273171; --e-global-color-05c0671: #A34D40; --e-global-color-8b7f305: #25497E; --e-global-color-bad7aea: #132643; --e-global-color-266a79d: #EE8C1C; --e-global-color-61d89d9: #AF8260; --e-global-typography-primary-font-family: "Noto Sans Thai"; --e-global-typography-secondary-font-family: "Noto Sans Thai"; --e-global-typography-secondary-font-weight: 400; --e-global-typography-text-font-family: "Noto Sans Thai"; --e-global-typography-text-font-weight: 400; --e-global-typography-accent-font-family: "Noto Sans Thai"; --e-global-typography-accent-font-weight: 500; background-color: rgb(255, 255, 255); }
.elementor-kit-4 a { font-family: "Noto Sans Thai", sans-serif; }
.elementor-kit-4 h1 { font-family: "Noto Sans Thai", sans-serif; }
.elementor-kit-4 h2 { font-family: "Noto Sans Thai", sans-serif; }
.elementor-kit-4 h3 { font-family: "Noto Sans Thai", sans-serif; }
.elementor-kit-4 h4 { font-family: "Noto Sans Thai", sans-serif; }
.sr-only { border: 0px; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; width: 1px; }
*, ::after, ::before { box-sizing: border-box; }
html { font-family: sans-serif; line-height: 1.15; text-size-adjust: 100%; -webkit-tap-highlight-color: transparent; }
article, aside, dialog, figcaption, figure, footer, header, hgroup, main, nav, section { display: block; }
body { margin: 0px; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; font-size: 1rem; font-weight: 400; line-height: 1.5; color: rgb(33, 37, 41); text-align: left; background-color: rgb(255, 255, 255); }
h1, h2, h3, h4, h5, h6 { margin-top: 0px; margin-bottom: 0.5rem; }
p { margin-top: 0px; margin-bottom: 1rem; }
address { margin-bottom: 1rem; font-style: normal; line-height: inherit; }
dl, ol, ul { margin-top: 0px; margin-bottom: 1rem; }
ol ol, ol ul, ul ol, ul ul { margin-bottom: 0px; }
dt { font-weight: 700; }
dd { margin-bottom: 0.5rem; margin-left: 0px; }
b, strong { font-weight: bolder; }
small { font-size: 80%; }
a { color: rgb(0, 123, 255); text-decoration: none; background-color: transparent; }
a:hover { color: rgb(0, 86, 179); text-decoration: underline; }
figure { margin: 0px 0px 1rem; }
img { vertical-align: middle; border-style: none; }
svg:not(:root) { overflow: hidden; }
table { border-collapse: collapse; }
th { text-align: inherit; }
button { border-radius: 0px; }
button:focus { outline: -webkit-focus-ring-color auto 5px; }
button, input, optgroup, select, textarea { margin: 0px; font-family: inherit; font-size: inherit; line-height: inherit; }
button, input { overflow: visible; }
button, select { text-transform: none; }
[type="reset"], [type="submit"], button, html [type="button"] { appearance: button; }
::-webkit-file-upload-button { font: inherit; appearance: button; }
summary { display: list-item; cursor: pointer; }
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 { margin-bottom: 0.5rem; font-family: inherit; font-weight: 500; line-height: 1.2; color: inherit; }
.h1, h1 { font-size: 2.5rem; }
.h2, h2 { font-size: 2rem; }
.h3, h3 { font-size: 1.75rem; }
.h4, h4 { font-size: 1.5rem; }
.lead { font-size: 1.25rem; font-weight: 300; }
.small, small { font-size: 80%; font-weight: 400; }
.btn { display: inline-block; font-weight: 400; text-align: center; white-space: nowrap; vertical-align: middle; user-select: none; border: 1px solid transparent; padding: 0.375rem 0.75rem; font-size: 1rem; line-height: 1.5; border-radius: 0.25rem; transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }
.btn:focus, .btn:hover { text-decoration: none; }
.btn.focus, .btn:focus { outline: 0px; box-shadow: rgba(0, 123, 255, 0.25) 0px 0px 0px 0.2rem; }
.btn.disabled, .btn:disabled { opacity: 0.65; }
.btn:not(:disabled):not(.disabled) { cursor: pointer; }
.btn:not(:disabled):not(.disabled).active, .btn:not(:disabled):not(.disabled):active { background-image: none; }
.card { position: relative; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; flex-direction: column; min-width: 0px; overflow-wrap: break-word; background-color: rgb(255, 255, 255); background-clip: border-box; border: 1px solid rgba(0, 0, 0, 0.125); border-radius: 0.25rem; }
.badge { display: inline-block; padding: 0.25em 0.4em; font-size: 75%; font-weight: 700; line-height: 1; text-align: center; white-space: nowrap; vertical-align: baseline; border-radius: 0.25rem; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0px; overflow: hidden; clip: rect(0px, 0px, 0px, 0px); white-space: nowrap; clip-path: inset(50%); border: 0px; }
@media print {
*, ::after, ::before { text-shadow: none !important; box-shadow: none !important; }
a:not(.btn) { text-decoration: underline; }
thead { display: table-header-group; }
img, tr { break-inside: avoid; }
h2, h3, p { orphans: 3; widows: 3; }
h2, h3 { break-after: avoid; }
body { min-width: 992px !important; }
.badge { border: 1px solid rgb(0, 0, 0); }
}
.sr-only { border: 0px; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; width: 1px; }
button:focus { outline: -webkit-focus-ring-color auto 0px; }
body { overflow-x: hidden; color: rgb(82, 82, 82); }
.wp-caption, .wp-caption-overlay .wp-caption, figure { border: 0px; margin: 0px; padding: 0px; overflow: hidden; position: relative; max-width: 100%; }
embed, img:not([draggable]), object, video { max-width: 100%; height: auto; }
svg { transition: fill 120ms ease-in-out; fill: currentcolor; }
.entry-header .entry-title a, .post .entry-header .entry-title a, .post-navigation h3, h1, h2, h3, h4, h5, h6 { word-break: break-word; }
body { font-family: Manrope, sans-serif; line-height: 28px; font-size: 16px; color: rgb(88, 86, 107); font-weight: 400; border: 0px; margin: 0px; padding: 0px; -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4, h5, h6 { color: rgb(18, 15, 45); font-family: Manrope, sans-serif; font-weight: 700; }
h1 { font-size: 48px; line-height: 52px; }
h2 { font-size: 36px; line-height: 42px; }
h3 { font-size: 30px; margin-bottom: 20px; }
h4 { font-size: 24px; line-height: 28px; }
a:focus, a:active, input, input:hover, input:focus, input:active, textarea, textarea:hover, textarea:focus, textarea:active { outline: none; }
a:active, a:focus, a:hover, a:visited { text-decoration: none; outline: 0px; }
a { color: rgb(18, 15, 45); transition: 0.4s; }
a:hover { text-decoration: none; color: rgb(241, 77, 93); }
a:focus { outline: 0px; }
.btn, .place-order-action .lp-button, .learnpress-page .lp-button, .learn-press-form-login form button, #learn-press-pmpro-notice.purchase-course a { display: inline-block; text-align: center; white-space: nowrap; vertical-align: middle; font-size: 14px; line-height: 1.5; text-transform: uppercase; padding: 12px 40px; font-weight: 600; border-radius: 5px; transition: 0.4s; }
img, figure { border: 0px; height: auto; max-width: 100%; vertical-align: middle; border-radius: 6px; }
table, iframe { border: 1px solid rgb(251, 251, 251); border-collapse: separate; border-spacing: 0px; width: 100%; }
.table > thead > tr > th, .table > tbody > tr > th, .table > tfoot > tr > th, .table > thead > tr > td, .table > tbody > tr > td, .table > tfoot > tr > td, table > thead > tr > th, table > tbody > tr > th, table > tfoot > tr > th, table > thead > tr > td, table > tbody > tr > td, table > tfoot > tr > td { border-top: 1px solid rgb(231, 231, 231); }
table > thead > tr > th, table > tbody > tr > th, table > tfoot > tr > th, table > thead > tr > td, table > tbody > tr > td, table > tfoot > tr > td { padding: 10px; border: 1px solid rgb(237, 237, 237); text-align: center; }
.table-striped > tbody > tr:nth-child(2n+1), table > tbody > tr:nth-child(2n+1) { border: 1px solid rgb(231, 231, 231); }
dt { font-weight: bold; margin: 6px; }
p { margin: 0px 0px 25px; }
/* 1. header (was snippet #17) */
@media (min-width: 1181px) {
  html body .cfhi header.hd { position: sticky; top: 0px; z-index: 50; background: rgb(255, 255, 255); border-bottom: 1px solid rgb(230, 217, 211); }
  html body .cfhi header.hd .hd-in { align-items: center; min-height: 76px; display: flex !important; flex-wrap: nowrap !important; gap: 24px !important; padding-top: 10px !important; padding-bottom: 10px !important; }
  html body .cfhi header.hd .brand { max-width: 330px; flex: 0 0 auto !important; gap: 12px !important; }
  html body .cfhi header.hd .brand img { height: 48px !important; }
  html body .cfhi header.hd .brand strong { font-weight: 700; max-width: 250px; white-space: normal; font-size: 15px !important; line-height: 1.3 !important; }
  html body .cfhi header.hd .brand small { margin-top: 2px; font-size: 12.5px !important; line-height: 1.35 !important; }
  html body .cfhi header.hd nav.main { display: block !important; margin-left: auto !important; width: auto !important; overflow: visible !important; white-space: nowrap !important; }
  html body .cfhi header.hd nav.main .mtoggle { display: none !important; }
  html body .cfhi header.hd nav.main > ul { align-items: center; list-style: none; display: flex !important; flex-wrap: nowrap !important; gap: 2px !important; margin: 0px !important; padding: 0px !important; position: static !important; background: none !important; box-shadow: none !important; border: 0px !important; }
  html body .cfhi header.hd nav.main > ul > li { position: relative; margin: 0px !important; padding: 0px !important; border: 0px !important; }
  html body .cfhi header.hd nav.main > ul > li > a, html body .cfhi header.hd nav.main > ul > li > .sub-t { align-items: center; gap: 6px; height: 40px; font-style: inherit; font-variant: inherit; font-stretch: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; cursor: pointer; display: inline-flex !important; padding: 0px 14px !important; border: 0px !important; border-radius: 999px !important; background: transparent !important; color: rgb(42, 27, 24) !important; font-size: 15px !important; font-weight: 600 !important; line-height: 1 !important; text-decoration: none !important; width: auto !important; }
  html body .cfhi header.hd nav.main > ul > li > a:hover, html body .cfhi header.hd nav.main > ul > li > .sub-t:hover, html body .cfhi header.hd nav.main > ul > li.open > .sub-t, html body .cfhi header.hd nav.main > ul > li:hover > .sub-t { background: rgb(245, 233, 228) !important; color: rgb(129, 45, 33) !important; }
  html body .cfhi header.hd nav.main > ul > li > a[aria-current], html body .cfhi header.hd nav.main > ul > li.is-cur > .sub-t { color: rgb(129, 45, 33) !important; background: rgb(245, 233, 228) !important; }
  html body .cfhi header.hd nav.main > ul > li.cta { margin-left: 8px !important; }
  html body .cfhi header.hd nav.main > ul > li.cta > a { background: rgb(129, 45, 33) !important; color: rgb(255, 255, 255) !important; padding: 0px 20px !important; }
  html body .cfhi header.hd nav.main > ul > li.cta > a:hover { background: rgb(106, 36, 26) !important; color: rgb(255, 255, 255) !important; }
  html body .cfhi header.hd nav.main .sub-t::after { width: 7px; height: 7px; border-right: 2px solid; border-bottom: 2px solid; transform: translateY(-2px) rotate(45deg); content: "" !important; display: inline-block !important; margin: 0px !important; background: none !important; position: static !important; }
  html body .cfhi header.hd nav.main .sub-t::before { content: none !important; }
  html body .cfhi header.hd nav.main ul.sub { min-width: 260px; width: max-content; max-width: 340px; list-style: none; z-index: 60; display: none !important; position: absolute !important; top: calc(100% + 6px) !important; left: 0px !important; right: auto !important; margin: 0px !important; padding: 8px !important; background: rgb(255, 255, 255) !important; border: 1px solid rgb(230, 217, 211) !important; border-radius: 14px !important; box-shadow: rgba(42, 27, 24, 0.12) 0px 12px 32px !important; white-space: normal !important; }
  html body .cfhi header.hd nav.main ul.sub.sub-r { left: auto !important; right: 0px !important; }
  html body .cfhi header.hd nav.main ul.sub::before { content: ""; position: absolute; left: 0px; right: 0px; top: -8px; height: 8px; }
  html body .cfhi header.hd nav.main li.has-sub:hover > ul.sub, html body .cfhi header.hd nav.main li.has-sub.open > ul.sub, html body .cfhi header.hd nav.main li.has-sub:focus-within > ul.sub { display: block !important; }
  html body .cfhi header.hd nav.main ul.sub li { margin: 0px !important; padding: 0px !important; border: 0px !important; display: block !important; }
  html body .cfhi header.hd nav.main ul.sub a { display: block !important; padding: 10px 12px !important; border-radius: 10px !important; color: rgb(42, 27, 24) !important; font-size: 15px !important; font-weight: 500 !important; line-height: 1.4 !important; text-decoration: none !important; white-space: normal !important; }
  html body .cfhi header.hd nav.main ul.sub a:hover, html body .cfhi header.hd nav.main ul.sub a[aria-current] { background: rgb(248, 244, 241) !important; color: rgb(129, 45, 33) !important; }
  html body .cfhi header.hd nav.main ul.sub li.all { border-top: 1px solid rgb(230, 217, 211) !important; margin-top: 6px !important; padding-top: 6px !important; }
  html body .cfhi header.hd nav.main ul.sub li.all a { font-weight: 700 !important; color: rgb(129, 45, 33) !important; }
}
@media (max-width: 1180px) {
  html body .cfhi header.hd { position: relative; background: rgb(255, 255, 255); border-bottom: 1px solid rgb(230, 217, 211); }
  html body .cfhi header.hd .hd-in { align-items: center; justify-content: space-between; min-height: 64px; display: flex !important; flex-wrap: nowrap !important; gap: 12px !important; padding-top: 8px !important; padding-bottom: 8px !important; }
  html body .cfhi header.hd .brand { min-width: 0px; flex: 1 1 auto !important; gap: 10px !important; }
  html body .cfhi header.hd .brand img { flex: 0 0 auto; height: 40px !important; }
  html body .cfhi header.hd .brand span { min-width: 0px; }
  html body .cfhi header.hd .brand strong { max-width: 240px; font-size: 14px !important; line-height: 1.3 !important; }
  html body .cfhi header.hd .brand small { font-size: 12px !important; line-height: 1.3 !important; }
  html body .cfhi header.hd nav.main { flex: 0 0 auto; position: static !important; margin: 0px !important; width: auto !important; overflow: visible !important; }
  html body .cfhi header.hd nav.main .mtoggle { align-items: center; gap: 8px; height: 44px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; cursor: pointer; display: inline-flex !important; padding: 0px 16px !important; border: 1px solid rgb(129, 45, 33) !important; border-radius: 999px !important; background: rgb(255, 255, 255) !important; color: rgb(129, 45, 33) !important; font-size: 15px !important; font-weight: 600 !important; }
  html body .cfhi header.hd nav.main > ul { left: 0px; right: 0px; top: 100%; z-index: 60; list-style: none; border-bottom: 1px solid rgb(230, 217, 211); box-shadow: rgba(42, 27, 24, 0.12) 0px 16px 32px; max-height: calc(-120px + 100vh); overflow: auto; display: none !important; position: absolute !important; margin: 0px !important; padding: 8px 16px 16px !important; background: rgb(255, 255, 255) !important; }
  html body .cfhi header.hd nav.main.open > ul { display: block !important; }
  html body .cfhi header.hd nav.main > ul > li { border-bottom: 1px solid rgb(240, 230, 225); display: block !important; margin: 0px !important; padding: 0px !important; }
  html body .cfhi header.hd nav.main > ul > li > a, html body .cfhi header.hd nav.main > ul > li > .sub-t { justify-content: space-between; align-items: center; min-height: 48px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; text-align: left; display: flex !important; width: 100% !important; padding: 0px 4px !important; border: 0px !important; background: none !important; color: rgb(42, 27, 24) !important; font-size: 16px !important; font-weight: 600 !important; text-decoration: none !important; border-radius: 0px !important; }
  html body .cfhi header.hd nav.main > ul > li > a[aria-current], html body .cfhi header.hd nav.main > ul > li.is-cur > .sub-t { color: rgb(129, 45, 33) !important; }
  html body .cfhi header.hd nav.main > ul > li.cta { border-bottom: 0px; }
  html body .cfhi header.hd nav.main > ul > li.cta > a { justify-content: center; margin-top: 12px; background: rgb(129, 45, 33) !important; color: rgb(255, 255, 255) !important; border-radius: 999px !important; }
  html body .cfhi header.hd nav.main .sub-t::after { width: 8px; height: 8px; border-right: 2px solid; border-bottom: 2px solid; transform: rotate(45deg); content: "" !important; display: inline-block !important; margin: 0px 6px 4px 0px !important; position: static !important; }
  html body .cfhi header.hd nav.main li.open > .sub-t::after { transform: rotate(-135deg); margin-bottom: -4px !important; }
  html body .cfhi header.hd nav.main ul.sub { list-style: none; display: none !important; position: static !important; margin: 0px 0px 8px !important; padding: 0px 0px 0px 12px !important; background: none !important; border: 0px !important; box-shadow: none !important; width: auto !important; }
  html body .cfhi header.hd nav.main li.has-sub.open > ul.sub { display: block !important; }
  html body .cfhi header.hd nav.main ul.sub a { display: block !important; padding: 10px 4px !important; color: rgb(91, 74, 69) !important; font-size: 15px !important; font-weight: 500 !important; text-decoration: none !important; white-space: normal !important; }
  html body .cfhi header.hd nav.main ul.sub a[aria-current] { color: rgb(129, 45, 33) !important; font-weight: 700 !important; }
}
@media (max-width: 420px) {
  html body .cfhi header.hd .brand small { display: none !important; }
  html body .cfhi header.hd .brand strong { font-size: 13px !important; max-width: 170px; }
}
html body .cfhi main td, html body .cfhi main th { font-size: 16px !important; }
html body .cfhi main ul:not([class]) > li, html body .cfhi main li.fc strong { font-size: 16px !important; }
html body .cfhi main .role, html body .cfhi main p.u, html body .cfhi main .pill { font-size: 14px !important; }
html body .cfhi .sr-only { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0px, 0px, 0px, 0px) !important; white-space: nowrap !important; margin: -1px !important; padding: 0px !important; border: 0px !important; }
html body .cfhi main .badge small, html body .cfhi main li.fc .sub { font-size: 14px !important; }
html body .cfhi .lead { font-weight: 400 !important; }
html body .cfhi main section.part { border-top: 1px solid rgb(230, 217, 211); margin-top: 24px; padding-top: 48px !important; padding-bottom: 0px !important; }
html body .cfhi main section.part .meta { letter-spacing: 0.01em; font-size: 14px !important; font-weight: 700 !important; color: rgb(129, 45, 33) !important; margin: 0px 0px 8px !important; }
html body .cfhi main section.part .lead { color: rgb(42, 27, 24) !important; font-size: 18px !important; }
html body .cfhi [id] { scroll-margin-top: 96px; }
html body .cfhi main a.btn, html body .cfhi main .btn { align-items: center; justify-content: center; text-align: center; display: inline-flex !important; min-height: 48px !important; padding: 10px 22px !important; font-size: 15px !important; font-weight: 600 !important; line-height: 1.3 !important; text-transform: none !important; letter-spacing: 0px !important; border-radius: 999px !important; }
html body .cfhi { --ink: #2A1B18 !important; --navy: #2A1B18 !important; }
html body .cfhi h1, html body .cfhi h2, html body .cfhi h3, html body .cfhi h4 { color: rgb(42, 27, 24); }
