.elementor-8389 .elementor-element.elementor-element-5b676f3f{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS *//* CKES redesign draft — page-scoped */
:root{
  --cl-green-800: #154726;
  --cl-banana-400: #ffd550;
  --cl-banana-300: #fce8bd;
  --cl-cilantro-300: #d8e0a5;
  --cl-cilantro-400: #266b47;
  --cl-green-300: #f3edd1;
  --cl-lime-400: #97c74b;
  --cl-aqua-400: #99dbcc;
  --cl-debug: hsla(0,0%,100%,.3);

  --grid-column-gap: 0px;
  --grid-side-margin: 6rem;
  --grid-columns: 48;
  --scrollbar-width: 14px;
  --grid-max-width: 1480px;
  --grid-width-input: calc(100vw - var(--scrollbar-width) - var(--grid-side-margin)*2);
  --grid-width: min( var(--grid-width-input) , var(--grid-max-width) );

  --jsvh100min: 100vh;
  --roughMin: calc(100vh - 30vw);
  --safe100min: max( var(--roughMin) , var(--jsvh100min) );
  --vh100min: 100vh;

  --ease-in-out-sine: cubic-bezier(.445, .05, .55, .95);
  --ease-out-quart: cubic-bezier(.165, .84, .44, 1);
  --ease-out-back: cubic-bezier(.175, .885, .32, 1.275);

  --color-bg-canvas: #faf3e6;
  --color-text-primary: #154726;
  --color-text-secondary: #24301f;
  --color-text-muted: #8b9a86;
  --color-green-deep: #15472680;
  --color-orange-light: #f7a146;
  --color-green-dark: #2f4e37;

  --font-display: "Kanit", "IBM Plex Sans Thai", ui-sans-serif, system-ui, sans-serif;
  --font-body: "IBM Plex Sans Thai", "Kanit", ui-sans-serif, system-ui, sans-serif;

  --text-display: clamp(40px, 6.6vw, 82px);
  --text-heading-lg: clamp(36px, 6vw, 72px);
  --text-heading: clamp(29px, 4.4vw, 52px);
  --text-heading-sm: clamp(24px, 3.2vw, 38px);
  --text-subheading: clamp(18px, 1.9vw, 22px);
  --text-body: 16px;
  --text-small: 13px;
  --text-caption: 12px;

  --page-max-width: 1140px;
  --card-padding: 58px;
  --element-gap: 6px;

  --radius-card: 10.785px;
  --radius-card-lg: 14.38px;
  --radius-tag: 50px;

  --duration-base: 300ms;
  --ease-custom-1: ease;
  --ease-custom-2: linear;

  --icon-size: 17px;
  --header-h: 50px;
}
*, *::before, *::after{ box-sizing: border-box; }
body:has(.ckx){
  margin: 0;
  background: var(--color-bg-canvas);
  color: var(--color-text-primary);
  font-family: var(--font-body);
  font-size: var(--text-body);
  line-height: 1.72;
  font-weight: 400;
  overflow-x: clip;
}
.elementor img, .elementor video, .elementor svg{ display: block; max-width: 100%; }
.elementor a, .elementor .card-go, .elementor .faq-q{ text-decoration-skip-ink: none; }
.elementor h1, .elementor h2, .elementor h3, .elementor h4{ margin: 0; font-family: var(--font-display); color: var(--color-text-primary); text-wrap: balance; }
.elementor p{ margin: 0; max-width: 46ch; }
.elementor .display{ font-size: var(--text-display);    line-height: 1.12; letter-spacing: -.02em; font-weight: 900; }
.elementor .heading-lg{ font-size: var(--text-heading-lg); line-height: 1.18; letter-spacing: -.01em; font-weight: 800; }
.elementor .heading{ font-size: var(--text-heading);    line-height: 1.18; letter-spacing: -.015em; font-weight: 700; }
.elementor .heading-sm{ font-size: var(--text-heading-sm); line-height: 1.24; letter-spacing: -.01em; font-weight: 700; }
.elementor .subheading{ font-family: var(--font-display); font-size: var(--text-subheading); line-height: 1.5; font-weight: 500; }
.elementor .small{ font-family: var(--font-display); font-size: var(--text-small); line-height: 1.3; font-weight: 500; }
.elementor .caption{ font-size: var(--text-caption); line-height: 1.6; font-weight: 400; color: var(--color-text-muted); }
.elementor .lede{ font-weight: 400; color: var(--color-text-secondary); font-size: 17px; line-height: 1.75; }
.elementor a.link{
  display: inline-block;
  color: var(--color-text-primary); font-weight: 600; font-size: var(--text-body);
  text-decoration: underline; text-decoration-color: transparent;
  text-underline-offset: 6px; text-decoration-thickness: 1.5px;
  transition: transform 420ms var(--ease-out-back),
              text-decoration-color var(--duration-base) var(--ease-custom-1);
}
.elementor a.link:hover, .elementor a.link:focus-visible{
  color: var(--color-text-primary);
  text-decoration-color: currentColor;
  transform: translateY(-4px);
}
.elementor :where(a, .elementor button, .elementor [tabindex]):focus-visible{ outline: 2px solid var(--color-green-dark); outline-offset: 4px; border-radius: 2px; }
.elementor .on-dark :where(a, .elementor button):focus-visible{ outline-color: var(--cl-banana-400); }
.elementor .grid{
  width: var(--grid-width);
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(var(--grid-columns), minmax(0, 1fr));
  column-gap: var(--grid-column-gap);
}
.elementor .c-full{ grid-column: 1 / -1; }
.elementor .c-1-24{ grid-column: 1 / span 24; }
.elementor .c-1-26{ grid-column: 1 / span 26; }
.elementor .c-1-30{ grid-column: 1 / span 30; }
.elementor .c-1-34{ grid-column: 1 / span 34; }
.elementor .c-1-40{ grid-column: 1 / span 40; }
.elementor .c-5-40{ grid-column: 5 / span 40; }
.elementor .c-7-36{ grid-column: 7 / span 36; }
.elementor .c-27-22{ grid-column: 27 / span 22; }
.elementor .c-29-20{ grid-column: 29 / span 20; }
.elementor .c-33-16{ grid-column: 33 / span 16; }
.elementor .c-25-24{ grid-column: 25 / span 24; }
.elementor .measure{ width: 100%; max-width: var(--page-max-width); margin-inline: auto; }
.elementor .nw{ white-space: nowrap; }
.elementor .hero .display{ font-size: clamp(30px, 4.4vw, 66px); }
@media (max-width: 520px) {.elementor .hero .display{ font-size: clamp(26px, 8vw, 40px); }}
.elementor section{ position: relative; padding-block: clamp(72px, 10vw, 150px); }
.elementor .section--tight{ padding-block: clamp(46px, 6vw, 92px); }
.elementor #spec{ padding-bottom: clamp(30px, 4vw, 56px); }
.elementor #product{ padding-top: clamp(30px, 4vw, 56px); }
.elementor .grid-debug{
  position: fixed; inset: 0; z-index: 90; pointer-events: none; opacity: 0;
  transition: opacity var(--duration-base) var(--ease-custom-1);
}
.elementor .grid-debug[data-on="true"]{ opacity: 1; }
.elementor .grid-debug .grid{ height: 100%; }
.elementor .grid-debug i{ display: block; height: 100%; background: var(--cl-debug); outline: 1px solid rgba(21,71,38,.12); }
.elementor .site-header{
  position: fixed; inset: 0 0 auto 0; z-index: 60;
  height: var(--header-h); background: var(--cl-green-800); color: var(--color-bg-canvas);
  display: flex; align-items: center; overflow: hidden;
  transition: height var(--duration-base) var(--ease-custom-1);
}
.elementor .site-header[data-shrunk="true"]{ height: 0; }
.elementor .site-header .grid{ align-items: center; }
.elementor .header-inner{ grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.elementor .wordmark{ font-family: var(--font-display); font-weight: 900; font-size: 19px; letter-spacing: -.03em; line-height: 1; color: var(--color-bg-canvas); text-decoration: none; }
.elementor .wordmark i{ color: var(--cl-lime-400); font-style: normal; }
.elementor .nav{ display: flex; align-items: center; gap: var(--element-gap); }
.elementor .btn-ghost{
  background: #00000000; color: var(--color-bg-canvas); border: 0; border-radius: 0;
  padding: 0 12px; min-height: 44px; display: inline-flex; align-items: center;
  font-family: var(--font-display); font-weight: 500; font-size: 13px; line-height: 1.3;
  cursor: pointer; text-decoration: none;
  transition: all var(--duration-base) var(--ease-custom-1);
}
.elementor .btn-ghost:hover{ color: var(--cl-banana-400); }
.elementor .btn-ghost--dark{ color: var(--color-text-primary); }
.elementor .btn-ghost--dark:hover{ color: var(--color-orange-light); }
.elementor .btn-ghost--rule{ border-bottom: 1.5px solid currentColor; }
.elementor .tag{
  display: inline-flex; align-items: center; gap: 8px; border-radius: var(--radius-tag);
  border: 1px solid var(--color-green-deep); padding: 7px 16px; background: #00000000;
  font-family: var(--font-display); font-size: 13px; font-weight: 500; line-height: 1.4;
  color: var(--color-text-primary); text-decoration: none;
  transition: all var(--duration-base) var(--ease-custom-1);
}
.elementor a.tag:hover, .elementor button.tag:hover{ background: var(--cl-green-300); }
.elementor .tag--solid{ background: var(--cl-cilantro-300); border-color: transparent; }
.elementor .media{
  position: relative; overflow: hidden; border-radius: var(--radius-card);
  display: grid; place-items: center;
  background:
    radial-gradient(120% 90% at 18% 12%, var(--cl-cilantro-300) 0%, transparent 58%),
    radial-gradient(100% 100% at 86% 88%, var(--cl-banana-300) 0%, transparent 54%),
    var(--cl-green-300);
}
.elementor .media img{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.elementor .media--hero{ aspect-ratio: .83 / 1; box-shadow: inset 0 0 0 1px var(--color-green-deep); }
.elementor .media--hero img{ filter: saturate(1.04); }
.elementor .media--cont{ aspect-ratio: 1.11 / 1; }
.elementor .media--fill{ position: absolute; inset: 0; border-radius: 0; }
.elementor .hero{
  min-height: var(--safe100min);
  padding-top: calc(var(--header-h) + clamp(46px, 7vw, 92px));
  padding-bottom: clamp(46px, 7vw, 92px);
  display: flex; align-items: center;
  overflow: clip;
}
.elementor .hero .grid{ position: relative; z-index: 1; row-gap: 46px; align-items: end; }
.elementor .hero-copy{ display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
.elementor .hero-actions{ display: flex; align-items: center; gap: 26px; flex-wrap: wrap; }
.elementor .price-line{ display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 16px; margin: -6px 0 0; }
.elementor .price-line b{
  font-family: var(--font-display); font-weight: 700; font-size: 19px;
  line-height: 1.3; letter-spacing: -.01em; color: var(--color-text-primary);
  font-variant-numeric: tabular-nums;
}
.elementor .price-line span{ font-size: 14px; line-height: 1.6; color: var(--color-text-secondary); }
.elementor .price-line i{ font-style: normal; color: var(--color-text-muted); }
.elementor .hero-actions .btn-ghost--rule{
  display: inline-block;
  padding: 11px 0;
  min-height: 0;
  border-bottom: 0;
  font-family: var(--font-body);
  font-size: var(--text-body);
  font-weight: 600;
  line-height: 1.4;
  color: var(--color-text-primary);
  text-decoration: underline;
  text-decoration-color: transparent;
  text-underline-offset: 6px;
  text-decoration-thickness: 1.5px;
  transition: transform 420ms var(--ease-out-back),
              text-decoration-color var(--duration-base) var(--ease-custom-1);
}
.elementor .hero-actions .btn-ghost--rule:hover, .elementor .hero-actions .btn-ghost--rule:focus-visible{
  color: var(--color-text-primary);
  text-decoration-color: currentColor;
  transform: translateY(-4px);
}
.elementor .hero-actions a.link{ padding: 11px 0; }
.elementor .cta .btn-ghost--rule{
  transition: transform 420ms var(--ease-out-back),
              color var(--duration-base) var(--ease-custom-1);
}
.elementor .cta .btn-ghost--rule:hover, .elementor .cta .btn-ghost--rule:focus-visible{ transform: translateY(-4px); }
.elementor .bar-strip{ background: var(--cl-green-800); color: var(--color-bg-canvas); padding-block: 16px; overflow: hidden; }
.elementor .bar{ display: flex; width: max-content; animation: marquee 28s var(--ease-custom-2) infinite; }
.elementor .bar-track{
  display: flex; align-items: center; gap: 46px; padding-right: 46px; white-space: nowrap;
  font-family: var(--font-display); font-weight: 600; font-size: clamp(17px,1.9vw,22px); line-height: 1.5;
}
.elementor .bar-dot{ width: 9px; height: 9px; border-radius: var(--radius-tag); background: var(--cl-lime-400); flex: none; }
@keyframes marquee { to { transform: translateX(-50%); } }
.elementor .pin-wrap{ height: 260vh; position: relative; }
.elementor .pin{
  position: sticky; top: 0; height: var(--vh100min);
  display: grid; place-items: center; overflow: clip;
}
.elementor .scale{
  width: 100%; height: 100%;
  transform: scale(var(--p, .62));
  border-radius: calc(var(--radius-card-lg) * (1 - var(--s, 0)));
  overflow: hidden;
  will-change: transform;
}
.elementor .pin-caption{
  position: absolute; bottom: 46px; left: 0; right: 0;
  display: flex; justify-content: center; padding-inline: 24px;
  opacity: var(--s, 0); transition: opacity var(--duration-base) var(--ease-custom-1);
}
.elementor .stats{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; border-top: 1px solid var(--color-green-deep); padding-top: 46px; margin-top: 46px; }
.elementor .stat{ display: flex; flex-direction: column; gap: var(--element-gap); }
.elementor .stat-figure{ font-family: var(--font-display); font-weight: 900; font-size: var(--text-heading); line-height: 1.1; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.elementor .stat-label{ font-size: 14px; font-weight: 400; line-height: 1.6; color: var(--color-text-secondary); max-width: 24ch; }
.elementor .card-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.elementor .card{
  background: var(--color-bg-canvas); border: 1px solid var(--color-green-deep);
  border-radius: var(--radius-card); padding: var(--card-padding);
  display: flex; flex-direction: column; gap: 18px;
  transition: all var(--duration-base) var(--ease-custom-1);
}
.elementor .card:hover{ background: var(--cl-green-300); }
.elementor .card p{ font-size: 15px; font-weight: 400; color: var(--color-text-secondary); }
.elementor .steps{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-top: 58px; }
.elementor .step{ display: flex; flex-direction: column; gap: 10px; padding-top: 18px; border-top: 1px solid var(--color-green-deep); }
.elementor .step p{ font-size: 15px; font-weight: 400; color: var(--color-text-secondary); }
.elementor .step-index{ font-family: var(--font-display); font-size: 13px; font-weight: 500; color: var(--color-text-muted); }
.elementor .stack{ display: flex; flex-direction: column; align-items: flex-start; gap: 18px; }
.elementor .tag-row{ display: flex; flex-wrap: wrap; gap: var(--element-gap); }
.elementor .gallery{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 46px; }
.elementor .shot{ margin: 0; }
.elementor .shot figcaption{ margin-top: 10px; font-size: 13px; line-height: 1.6; color: var(--color-text-muted); }
@media (max-width: 767px){.elementor .gallery{ grid-template-columns: 1fr; }}
.elementor .sun-ring{ width: min(100%, 416px); }
.elementor .sun-ring .ring{ transform-origin: 50% 50%; animation: slowSpin 26s var(--ease-custom-2) infinite; }
.elementor .sun-ring .pulse{ transform-origin: 50% 50%; animation: pulse 3.4s var(--ease-in-out-sine) infinite; }
@keyframes slowSpin { to { transform: rotate(360deg); } }
@keyframes pulse { 0%,100% { transform: scale(1); opacity: .9 } 50% { transform: scale(1.04); opacity: 1 } }
.elementor .faq{ margin-top: 46px; }
.elementor .faq-item{ border-top: 1px solid var(--color-green-deep); }
.elementor .faq-item:last-child{ border-bottom: 1px solid var(--color-green-deep); }
.elementor .faq-q{
  width: 100%; background: none; border: 0; cursor: pointer; text-align: left;
  padding: 24px 0; min-height: 44px; display: flex; align-items: center; justify-content: space-between; gap: 24px;
  font-family: var(--font-display); font-size: var(--text-subheading); font-weight: 500; color: var(--color-text-primary);
  line-height: 1.5;
  transition: all var(--duration-base) var(--ease-custom-1);
}
.elementor .faq-q:hover{ color: var(--color-green-dark); }
.elementor .faq-q .chev{ transition: transform var(--duration-base) var(--ease-custom-1); flex: none; }
.elementor .faq-q[aria-expanded="true"] .chev{ transform: rotate(180deg); }
.elementor .faq-a{ display: grid; grid-template-rows: 0fr; transition: grid-template-rows var(--duration-base) var(--ease-custom-1); }
.elementor .faq-a div{ overflow: hidden; }
.elementor .faq-a p{ padding-bottom: 24px; font-weight: 400; color: var(--color-text-secondary); max-width: 58ch; }
.elementor .faq-item[data-open="true"] .faq-a{ grid-template-rows: 1fr; }
.elementor .cta{ background: var(--cl-green-800); color: var(--color-bg-canvas); border-radius: var(--radius-card-lg); padding: clamp(34px, 5vw, 92px); }
.elementor .cta h2{ color: var(--color-bg-canvas); }
.elementor .cta p{ color: rgba(250,243,230,.8); font-weight: 400; }
.elementor .site-footer{ background: var(--cl-green-800); color: var(--color-bg-canvas); padding-block: 58px 34px; }
.elementor .site-footer h2, .elementor .site-footer h3{ color: var(--color-bg-canvas); }
.elementor .footer-col{ display: flex; flex-direction: column; gap: 12px; }
.elementor .footer-cols{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }
@media (max-width: 767px){.elementor .footer-cols{ grid-template-columns: 1fr; }}
.elementor .footer-col address{ font-style: normal; color: rgba(250,243,230,.8); font-size: 15px; line-height: 1.75; }
.elementor .footer-col a{ color: var(--color-bg-canvas); font-weight: 500; font-size: var(--text-body); text-decoration: underline; text-underline-offset: 6px; transition: all var(--duration-base) var(--ease-custom-1); }
.elementor .footer-col a:hover{ color: var(--cl-banana-400); }
.elementor .socials{ display: flex; gap: var(--element-gap); margin-top: 24px; }
.elementor .socials a{ width: 44px; height: 44px; display: inline-grid; place-items: center; border-radius: var(--radius-tag); border: 1px solid rgba(250,243,230,.3); color: var(--color-bg-canvas); transition: all var(--duration-base) var(--ease-custom-1); }
.elementor .socials a:hover{ background: rgba(250,243,230,.14); }
.elementor .footer-bottom{ margin-top: 46px; padding-top: 18px; border-top: 1px solid rgba(250,243,230,.25); display: flex; justify-content: space-between; gap: 18px; flex-wrap: wrap; }
.elementor .footer-bottom .caption{ color: rgba(250,243,230,.66); }
.elementor .site-footer{ --fp: 1; }
body[data-footer-mode="unveil"] .site-footer{
  --fp: 0;
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 1;
}
body[data-footer-mode="unveil"] .page{
  margin-bottom: var(--footer-h, 0px);
  border-bottom-left-radius: var(--radius-card-lg);
  border-bottom-right-radius: var(--radius-card-lg);
  box-shadow: 0 24px 46px rgba(21,71,38,.16);
}
.elementor .page{ position: relative; z-index: 10; background: var(--color-bg-canvas); }
.elementor .footer-inner{
  transform: translateY(calc((1 - var(--fp)) * 58px)) scale(calc(.985 + var(--fp) * .015));
  opacity: calc(.2 + var(--fp) * .8);
  will-change: transform;
}
.elementor .footer-line{ display: block; overflow: hidden; padding-block: .06em; }
.elementor .footer-line span{ display: block; }
html.ck-js .site-footer[data-revealed="false"] .footer-line span{ clip-path: inset(0 0 100% 0); transform: translateY(.24em); }
.elementor .site-footer[data-revealed="true"]  .footer-line span{ animation: clipUp 760ms var(--ease-out-quart) both; }
.elementor .site-footer[data-revealed="true"]  .footer-line:nth-child(2) span{ animation-delay: 90ms; }
html.ck-js .site-footer[data-revealed="false"] .footer-stagger *{ opacity: 0; transform: translateY(16px); }
.elementor .site-footer[data-revealed="true"]  .footer-stagger *{
  animation: slideUp 420ms var(--ease-out-quart) both;
  animation-delay: calc(240ms + var(--i, 0) * 60ms);
}
.elementor .footer-bottom{ position: relative; }
.elementor .footer-bottom::before{
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 1px;
  background: rgba(250,243,230,.6);
  transform: scaleX(var(--fp)); transform-origin: left;
}
.elementor .icon{ width: var(--icon-size); height: var(--icon-size); flex: none; }
.elementor .icon--lg{ width: 34px; height: 34px; }
.elementor svg[stroke]{ fill: none; }
.ck-js .reveal{ opacity: 0; transform: translateY(24px); }
.elementor .reveal.is-visible{ animation: slideUp var(--duration-base) var(--ease-custom-1) both; }
.ck-js .reveal-scale{ opacity: 0; transform: scale(.92); }
.elementor .reveal-scale.is-visible{ animation: scaleIn var(--duration-base) var(--ease-custom-1) both; }
@keyframes slideUp { from { opacity: 0; transform: translateY(24px) } to { opacity: 1; transform: none } }
@keyframes scaleIn { from { opacity: 0; transform: scale(.92) } to { opacity: 1; transform: none } }
.elementor .transition-wipe{
  position: fixed; inset: 0; z-index: 100; background: var(--cl-green-800);
  transform-origin: top; pointer-events: none;
  animation: wipeOut 760ms var(--ease-out-quart) both;
}
@keyframes wipeOut { from { transform: scaleY(1) } to { transform: scaleY(0) } }
.elementor .skip{ position: absolute; left: -9999px; top: 8px; z-index: 200; background: var(--cl-green-800); }
.elementor .skip:focus{ left: 8px; }
@media (max-width: 1023px) {:root{ --grid-side-margin: 3rem; --card-padding: 40px; }}
@media (max-width: 767px) {:root{ --grid-side-margin: 1.5rem; }
.elementor .c-1-24, .elementor .c-1-26, .elementor .c-1-30, .elementor .c-1-34, .elementor .c-1-40, .elementor .c-5-40, .elementor .c-7-36, .elementor .c-27-22, .elementor .c-29-20, .elementor .c-33-16, .elementor .c-25-24{ grid-column: 1 / -1; }
.elementor .card-grid, .elementor .steps, .elementor .stats{ grid-template-columns: 1fr; }
.elementor .card{ padding: 28px; }
.elementor section{ padding-bottom: 4.8rem; }
.elementor .pin-wrap{ height: auto; }
.elementor .pin{ position: static; height: auto; padding-block: 24px; }
.elementor .scale{ transform: none !important; border-radius: var(--radius-card); aspect-ratio: 1.4/1; }
.elementor .pin-caption{ position: static; opacity: 1 !important; margin-top: 12px; padding: 0; }
.elementor .hide-sm{ display: none; }}
@media (prefers-reduced-motion: reduce) {*, *::before, *::after{
    animation-duration: .001ms !important; animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
  }
.elementor .reveal, .elementor .reveal-scale{ opacity: 1; transform: none; }
.elementor a.link:hover, .elementor .btn-ghost--rule:hover{ transform: none !important; }
.elementor .clip-line span{ clip-path: none; transform: none; }
.elementor .scale{ transform: scale(1) !important; }
.elementor .footer-inner{ transform: none; opacity: 1; }
.elementor .footer-line span{ clip-path: none !important; transform: none !important; }
html.ck-js .site-footer[data-revealed="false"] .footer-stagger *{ opacity: 1; transform: none; }}
.elementor .vh{ position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.elementor .img-label{
  position: absolute; top: clamp(14px, 4%, 24px); left: 50%; transform: translateX(-50%);
  z-index: 2; display: flex; flex-direction: column; align-items: center; gap: 7px;
  width: max-content; max-width: calc(100% - 28px);
}
.elementor .img-label span{
  font-family: var(--font-display); line-height: 1.35;
  border-radius: var(--radius-tag); white-space: nowrap;
  box-shadow: 0 3px 14px rgba(21,71,38,.2);
}
.elementor .lb-top{
  background: var(--cl-green-800); color: var(--color-bg-canvas);
  font-weight: 600; font-size: clamp(12px, 1vw, 14px); padding: 7px 18px;
}
.elementor .lb-size{
  background: var(--color-bg-canvas); color: var(--cl-green-800);
  font-weight: 700; font-size: clamp(17px, 1.6vw, 22px); padding: 5px 22px;
  letter-spacing: -.01em;
}
.elementor .lb-sub{
  background: var(--cl-cilantro-400); color: var(--color-bg-canvas);
  font-weight: 600; font-size: clamp(11px, .95vw, 13px); padding: 5px 15px;
}
.elementor .jump{ display: flex; flex-wrap: wrap; gap: var(--element-gap); margin-top: 8px; }
.elementor .brand-block{ aspect-ratio: 880 / 680; }
.elementor .kv{ margin: 6px 0 0; display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px 26px; }
.elementor .kv div{ border-top: 1px solid var(--color-green-deep); padding-top: 10px; }
.elementor .kv dt{ font-size: var(--text-small); color: var(--color-text-muted); margin-bottom: 2px; }
.elementor .kv dd{ margin: 0; font-family: var(--font-display); font-weight: 700; font-size: 19px; line-height: 1.3; font-variant-numeric: tabular-nums; }
.elementor .fit{ font-size: 15px; color: var(--color-text-secondary); }
.elementor .fit span{ font-family: var(--font-display); font-weight: 600; color: var(--color-text-primary); }
.elementor .model + .model{ border-top: 1px solid var(--color-green-deep); }
.elementor .model .grid{ row-gap: 42px; align-items: start; }
.elementor .tables{ display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.35fr); gap: 46px; margin-top: 12px; }
.elementor .table-toggle-shared{ grid-column: 1 / -1; justify-self: center; margin-top: 4px; }
.elementor .tcol{ min-width: 0; }
.elementor .tlabel{
  font-family: var(--font-display); font-weight: 700; font-size: 17px; line-height: 1.4;
  margin: 0 0 14px; display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap;
}
.elementor .tlabel .cnt{ font-size: var(--text-small); font-weight: 500; color: var(--color-text-muted); }
.elementor .tscroll{ overflow-x: auto; }
.elementor .ptab{ width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.elementor .ptab th, .elementor .ptab td{ text-align: left; padding: 9px 12px 9px 0; font-size: 14px; line-height: 1.5; white-space: nowrap; }
.elementor .ptab thead th{
  font-family: var(--font-display); font-weight: 600; font-size: var(--text-small);
  color: var(--color-text-muted); border-bottom: 1px solid var(--color-green-deep); padding-bottom: 8px;
}
.elementor .ptab tbody tr{ border-bottom: 1px solid rgba(21,71,38,.14); }
.elementor .ptab tbody tr:last-child{ border-bottom: 0; }
.elementor .ptab tbody tr.grp{ border-top: 1px solid var(--color-green-deep); }
.elementor .ptab .num{ text-align: right; padding-right: 0; padding-left: 14px; }
.elementor .ptab td.save{ color: var(--cl-cilantro-400); font-weight: 600; }
.elementor .tcol .caption{ margin-top: 12px; max-width: 44ch; }
.elementor .spec-compare{ margin-top: 38px; }
.elementor .spec-more-btn{
  all: unset; cursor: pointer; display: inline-flex; align-items: center; gap: 8px; margin-top: 16px;
  font-family: var(--font-display); font-weight: 600; font-size: 13px; color: var(--color-bg-canvas);
  background: var(--cl-green-800); padding: 10px 18px; border-radius: var(--radius-tag); min-height: 40px;
  transition: background var(--duration-base) var(--ease-custom-1);
}
.elementor .spec-more-btn:hover{ background: var(--cl-cilantro-400); }
.elementor .spec-more-btn svg{ width: 13px; height: 13px; transition: transform var(--duration-base) var(--ease-custom-1); }
.elementor .spec-more-btn[aria-expanded="true"] svg{ transform: rotate(180deg); }
.elementor .table-more{ display: none; }
.elementor .table-more.is-open{ display: block; }
.elementor .mat{ display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 12px; }
.elementor .acc{ display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 0 46px; margin-top: 6px; }
.elementor .acc a{
  display: flex; align-items: baseline; justify-content: space-between; gap: 18px;
  padding: 18px 0; border-bottom: 1px solid rgba(21,71,38,.16);
  color: var(--color-text-primary); text-decoration: none;
  transition: transform 420ms var(--ease-out-back);
}
.elementor .acc a:hover, .elementor .acc a:focus-visible{ transform: translateX(6px); }
.elementor .acc b{ font-family: var(--font-display); font-weight: 600; font-size: 17px; }
.elementor .acc span{ font-size: 14px; color: var(--color-text-muted); text-align: right; max-width: 30ch; }
@media (max-width: 1023px) {.elementor .tables{ grid-template-columns: 1fr; gap: 38px; }}
@media (max-width: 767px) {.elementor .kv{ grid-template-columns: 1fr 1fr; gap: 14px 18px; }
.elementor .mat{ grid-template-columns: 1fr; }
.elementor .acc{ grid-template-columns: 1fr; }
.elementor .ptab th, .elementor .ptab td{ font-size: 13px; padding-right: 0; }
.elementor .tcol:first-child .tscroll, .elementor .tcol .tscroll{ overflow-x: auto; }}
.elementor .nav-links{ display: flex; align-items: center; gap: 2px; margin-left: auto; }
.elementor .nav-links a{
  color: var(--color-bg-canvas); text-decoration: none;
  font-family: var(--font-display); font-weight: 500; font-size: 12.5px; line-height: 1.3;
  padding: 0 10px; min-height: 44px; display: inline-flex; align-items: center;
  white-space: nowrap; border-radius: 3px;
  transition: color var(--duration-base) var(--ease-custom-1);
}
.elementor .nav-links a:hover{ color: var(--cl-banana-400); }
.elementor .burger, .elementor .menu-fab{
  all: unset; cursor: pointer; display: grid; place-items: center;
  color: var(--color-bg-canvas);
}
.elementor .burger{ width: 44px; height: 44px; margin-left: auto; border-radius: 4px; }
.elementor .burger svg, .elementor .menu-fab svg{ width: 19px; height: 19px; }
.elementor .burger .x, .elementor .menu-fab .x{ display: none; }
.elementor .burger[aria-expanded="true"] .m, .elementor .menu-fab[aria-expanded="true"] .m{ display: none; }
.elementor .burger[aria-expanded="true"] .x, .elementor .menu-fab[aria-expanded="true"] .x{ display: block; }
@media (min-width: 1024px) {.elementor .burger{ display: none; }}
@media (max-width: 1023px) {.elementor .nav-links{ display: none; }}
.elementor .menu-fab{
  position: fixed; top: 14px; right: clamp(16px, 3vw, 30px); z-index: 70;
  width: 46px; height: 46px; border-radius: var(--radius-tag);
  background: var(--cl-green-800);
  box-shadow: 0 6px 20px rgba(21,71,38,.22);
  opacity: 0; transform: scale(.72); pointer-events: none;
  transition: opacity var(--duration-base) var(--ease-custom-1),
              transform 420ms var(--ease-out-back);
}
.elementor .site-header[data-shrunk="true"] ~ .menu-fab{ opacity: 1; transform: none; pointer-events: auto; }
.elementor .menu-fab:focus-visible{ outline: 2px solid var(--cl-banana-400); outline-offset: 3px; }
.elementor .nav-panel{
  position: fixed; inset: 0; z-index: 80;
  background: var(--cl-green-800); color: var(--color-bg-canvas);
  display: flex; flex-direction: column; justify-content: center;
  padding-block: clamp(76px, 13vh, 116px) clamp(26px, 5vh, 46px);
  overflow-y: auto;
  opacity: 0; visibility: hidden;
  transition: opacity 320ms var(--ease-out-quart), visibility 320ms var(--ease-out-quart);
}
.elementor .nav-panel[data-open="true"]{ opacity: 1; visibility: visible; }
.elementor .nav-close{
  all: unset; position: absolute; top: 14px; right: clamp(16px, 3vw, 30px);
  width: 46px; height: 46px; display: grid; place-items: center; cursor: pointer;
  color: var(--color-bg-canvas); border-radius: var(--radius-tag);
  border: 1px solid rgba(250,243,230,.28);
}
.elementor .nav-close svg{ width: 19px; height: 19px; }
.elementor .nav-close:focus-visible{ outline: 2px solid var(--cl-banana-400); outline-offset: 3px; }
.elementor .nav-panel-list{ display: flex; flex-direction: column; gap: 2px; }
.elementor .nav-panel a{
  color: var(--color-bg-canvas); text-decoration: none;
  font-family: var(--font-display); font-weight: 700;
  font-size: clamp(27px, 7.4vw, 40px); line-height: 1.32;
  letter-spacing: -.01em; padding-block: 6px; min-height: 44px;
  opacity: 0; transform: translateY(16px);
  transition: opacity 460ms var(--ease-out-quart),
              transform 460ms var(--ease-out-quart),
              color var(--duration-base) var(--ease-custom-1);
}
.elementor .nav-panel[data-open="true"] a{ opacity: 1; transform: none; transition-delay: calc(var(--i, 0) * 52ms); }
.elementor .nav-panel a:hover, .elementor .nav-panel a:focus-visible{ color: var(--cl-lime-400); }
.elementor .nav-foot{
  margin-top: clamp(30px, 6vh, 54px); padding-top: 22px;
  border-top: 1px solid rgba(250,243,230,.22);
  display: flex; flex-direction: column; gap: 4px;
  opacity: 0; transform: translateY(16px);
  transition: opacity 460ms var(--ease-out-quart), transform 460ms var(--ease-out-quart);
}
.elementor .nav-panel[data-open="true"] .nav-foot{ opacity: 1; transform: none; transition-delay: 420ms; }
.elementor .nav-foot a{
  font-size: 19px !important; font-weight: 600; padding: 0; min-height: 0;
  opacity: 1 !important; transform: none !important;
}
.elementor .nav-foot span{ font-size: 14px; color: rgba(250,243,230,.72); }
@media (prefers-reduced-motion: reduce) {.elementor .nav-panel a, .elementor .nav-foot{ opacity: 1; transform: none; transition-delay: 0ms !important; }}
.elementor .nav-scrim{
  position: fixed; inset: 0; z-index: 75; background: rgba(13,36,22,.44);
  opacity: 0; visibility: hidden; cursor: pointer;
  transition: opacity var(--duration-base) var(--ease-custom-1), visibility var(--duration-base);
}
.elementor .nav-scrim[data-open="true"]{ opacity: 1; visibility: visible; }
@media (max-width: 1023px) {.elementor .nav-scrim{ display: none; }}
body[data-nav-open="true"] .site-header[data-shrunk="true"] ~ .menu-fab{
  opacity: 0; transform: scale(.72); pointer-events: none;
}
@media (min-width: 1024px) {.elementor .nav-panel{
    inset: 0 0 0 auto; width: min(430px, 40vw);
    justify-content: flex-start; padding-block: 104px 46px;
    opacity: 1; transform: translateX(101%);
    box-shadow: -20px 0 60px rgba(21,71,38,.2);
    transition: transform 500ms var(--ease-out-quart), visibility 500ms var(--ease-out-quart);
  }
.elementor .nav-panel[data-open="true"]{ transform: none; }
.elementor .nav-panel .grid{ width: auto; margin: 0; display: block; padding-inline: clamp(38px, 3.4vw, 54px); }
.elementor .nav-panel a{ font-size: 27px; }
.elementor .nav-close{ top: 26px; right: clamp(38px, 3.4vw, 54px); }}

/* ── Elementor neutraliser: containers behave like the plain divs of the draft ── */
.ckx.e-con.e-con.e-con,.ckx .e-con.e-con.e-con{--display:block;--flex-direction:row;--flex-wrap:nowrap;--align-items:normal;--justify-content:normal;--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--gap:0px;--row-gap:0px;--column-gap:0px;--width:auto;--min-height:0px;--container-widget-width:auto;--position:relative;min-width:0}
.ckx .elementor-widget{margin:0!important}
.ckx .elementor-widget-container{margin:0;padding:0}
.ckx .elementor-heading-title{font:inherit!important;color:inherit!important;line-height:inherit!important;letter-spacing:inherit!important;text-transform:inherit!important;margin:0}
.ckx .elementor-widget-text-editor{color:inherit;font:inherit}
.ckx .elementor-widget-image img{display:block}
.ckx .elementor-widget-text-editor>.elementor-widget-container>*:last-child{margin-bottom:0}
.elementor-editor-active .reveal,.elementor-editor-active .reveal-scale{opacity:1!important;transform:none!important}
body.admin-bar .site-header{top:32px}
/* image widgets inside a media frame fill the frame like the draft's bare <img> */
.ckx .media .elementor-widget-image,.ckx .media .elementor-widget-image .elementor-widget-container{position:absolute!important;inset:0}
.ckx .media .elementor-widget-image img{width:100%;height:100%;object-fit:cover}
/* theme button colours must not leak into the design's buttons */
.ckx button:not(.elementor-button){background-color:transparent;color:inherit;border-radius:0}

.ckx .cks-1{min-height:auto !important;padding-bottom:clamp(30px,4vw,56px) !important}
.ckx .cks-2{text-decoration:none !important;color:inherit !important}
.ckx .cks-3{text-decoration:none !important;color:inherit !important}
.ckx .cks-4{text-decoration:none !important;color:inherit !important}
.ckx .cks-5{margin-top:38px !important}
.ckx .cks-6{margin-top:32px !important}
.ckx .cks-7{display:flex !important;gap:26px !important;flex-wrap:wrap !important;align-items:center !important}
.ckx .cks-8{display:flex !important;flex-direction:column !important;gap:18px !important;align-items:flex-start !important}
/* v1.3.1 — มือถือ: navbar ติดด้านบนตลอด ไม่ซ่อนตอนเลื่อน + ซ่อนปุ่มเมนูลอย */
@media (max-width:1023px){
.site-header[data-shrunk]{height:auto!important;min-height:50px!important;padding:revert!important;opacity:1!important;visibility:visible!important;transform:none!important}
.menu-fab{display:none!important}
.site-header .burger{min-width:48px;min-height:48px}}/* End custom CSS */