@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/dm-sans-regular.woff2)format("woff2")}@font-face{font-family:DM Sans;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/dm-sans-italic.woff2)format("woff2")}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/dm-sans-500.woff2)format("woff2")}@font-face{font-family:DM Sans;font-style:italic;font-weight:500;font-display:swap;src:url(/fonts/dm-sans-500italic.woff2)format("woff2")}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/dm-sans-600.woff2)format("woff2")}@font-face{font-family:DM Sans;font-style:italic;font-weight:600;font-display:swap;src:url(/fonts/dm-sans-600italic.woff2)format("woff2")}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/dm-sans-700.woff2)format("woff2")}@font-face{font-family:DM Sans;font-style:italic;font-weight:700;font-display:swap;src:url(/fonts/dm-sans-700italic.woff2)format("woff2")}@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/space-mono-regular.woff2)format("woff2")}@font-face{font-family:Space Mono;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/space-mono-italic.woff2)format("woff2")}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/space-mono-700.woff2)format("woff2")}@font-face{font-family:Space Mono;font-style:italic;font-weight:700;font-display:swap;src:url(/fonts/space-mono-700italic.woff2)format("woff2")}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:400;font-display:swap;unicode-range:U+E00-E7F;src:url(/fonts/noto-sans-thai-400.woff2)format("woff2")}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:500;font-display:swap;unicode-range:U+E00-E7F;src:url(/fonts/noto-sans-thai-500.woff2)format("woff2")}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:600;font-display:swap;unicode-range:U+E00-E7F;src:url(/fonts/noto-sans-thai-600.woff2)format("woff2")}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:700;font-display:swap;unicode-range:U+E00-E7F;src:url(/fonts/noto-sans-thai-700.woff2)format("woff2")}:root,[data-theme=light]{color-scheme:light;--primary:#3ce8bd;--primary-dark:#2bc59e;--primary-dim:#3ce8bd1f;--primary-mid:#3ce8bd59;--primary-glow:#3ce8bd40;--on-primary:#063;--bg:#f4f4f8;--bg-fade:200px;--surface:#fff;--surface2:#e9e9ee;--field-fill:#76768014;--media-empty:#e5e8ed;--sidebar-bg:#12131a;--sidebar-text:#a0aec0;--sidebar-border:#1a1c23;--border:#e2e4e9;--text:#1a1d23;--text-muted:#7a7f8e;--text-light:#b0b5c3;--warn:#f59e0b;--danger:#ef4444;--good:#0fa87a;--info:#5b8def;--radius:8px;--radius-sm:8px;--shadow:0 1px 3px #0000000f, 0 4px 16px #0000000a;--radius-lg:16px;--footer-btn-h:45px;--footer-pad-bottom:calc(.75rem + 1.375rem + env(safe-area-inset-bottom,0px));--elevation-1:0 1px 2px #0000000d, 0 6px 20px #00000012;--card-shadow:none;--elevation-2:0 4px 16px #00000014;--elevation-3:0 12px 40px #00000029;--surface-tint-good:color-mix(in srgb, var(--good) 10%, var(--surface));--surface-tint-warn:color-mix(in srgb, var(--warn) 10%, var(--surface));--surface-tint-danger:color-mix(in srgb, var(--danger) 10%, var(--surface));--surface-tint-info:color-mix(in srgb, var(--info) 10%, var(--surface));--shadow-md:var(--elevation-2);--font-body:"DM Sans", "Noto Sans Thai", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:var(--font-body);--font-badge:var(--font-mono);--font-id:var(--font-mono);--topbar-height:30px;--content-padding-x:16px;--content-padding-y:16px;--shadow-bleed:var(--content-padding-x);--section-gap:16px;--page-stack-gap:12px;--card-bg:#ffffffd9;--card-bg-2:#f0f1f3bf;--inverse-surface:#12131a;--inverse-text:#fff;--code-color:#4a5568;--primary-color:var(--primary);--bg-color:var(--bg);--surface-color:var(--surface);--text-primary:var(--text);--text-secondary:var(--text-muted);--border-color:var(--border);--success-color:var(--good);--warning-color:var(--warn);--danger-color:var(--danger)}@media (width>=64rem){:root{--bg-fade:115px}}[data-theme=dark]{color-scheme:dark;--primary-dim:#3ce8bd24;--primary-glow:#3ce8bd4d;--bg:#0f1014;--surface:#171920;--surface2:#1f222b;--field-fill:#76768033;--media-empty:#272b35;--sidebar-bg:#0b0c10;--sidebar-text:#8f99ab;--sidebar-border:#171922;--border:#272b34;--text:#e7e9ee;--text-muted:#959cab;--text-light:#5f6678;--good:#2bd9a4;--info:#7aa5f8;--shadow:0 1px 3px #0006, 0 4px 16px #0000004d;--elevation-1:0 1px 2px #00000059;--card-shadow:var(--elevation-1);--elevation-2:0 4px 16px #00000073;--elevation-3:0 12px 40px #0009;--shadow-md:var(--elevation-2);--card-bg:#171920d9;--card-bg-2:#1f222bbf;--inverse-surface:#e7e9ee;--inverse-text:#12131a;--code-color:#a8b3c4}*,:before,:after{box-sizing:border-box}html{background:var(--surface);scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:80px}body{font-family:var(--font-body);color:var(--text);background:var(--bg);min-height:100vh;margin:0;font-size:1.0625rem;line-height:1.6}:lang(th) body,body:lang(th){line-height:1.75}h1,h2,h3{text-wrap:balance;margin:0;line-height:1.2}:lang(th) h1,:lang(th) h2,:lang(th) h3{line-height:1.4}h2{letter-spacing:-.015em;max-width:24ch;font-size:clamp(1.6rem,3.2vw,2.25rem);font-weight:700}h3{font-size:1.125rem;font-weight:600}p{margin:0}a{color:inherit}:focus-visible{outline:3px solid var(--primary-dark);outline-offset:3px;border-radius:4px}ul,ol,dl,dd{margin:0;padding:0}ul,ol{list-style:none}.wrap{width:min(1160px,100% - 32px);margin-inline:auto}.hero>*,.problem>*,.spatial>*,.pilot>*,.form-wrap>*,.form>*{min-width:0}.site-header{z-index:10;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:16px;height:64px;display:flex}.brand{letter-spacing:.06em;align-items:center;gap:10px;font-weight:700;text-decoration:none;display:inline-flex}.nav{align-items:center;gap:24px;font-size:.9375rem;display:flex}.nav-link,.nav-lang{color:var(--text-muted);text-decoration:none}.nav-link:hover,.nav-lang:hover{color:var(--text)}.nav-lang{font-weight:600}@media (width<=860px){.nav .nav-link:not(.nav-keep){display:none}.header-inner{gap:12px}.nav{gap:16px}}.btn{min-height:48px;font:inherit;cursor:pointer;border:0;border-radius:12px;justify-content:center;align-items:center;padding:0 24px;font-weight:600;text-decoration:none;transition:background-color .15s;display:inline-flex}.btn-sm{border-radius:10px;min-height:38px;padding:0 16px;font-size:.9375rem}.btn-primary{background:var(--primary);color:var(--on-primary)}.btn-primary:hover{background:var(--primary-dark)}.btn-quiet{background:var(--surface);color:var(--text)}.btn-quiet:hover{background:var(--surface2)}.section{padding-block:clamp(56px,9vw,112px)}.section>h2{margin-bottom:clamp(28px,4vw,48px)}.section-lead{color:var(--text-muted);max-width:62ch;margin-top:16px}.hero{grid-template-columns:1.05fr 1fr;align-items:center;gap:clamp(32px,5vw,72px);padding-block:clamp(48px,8vw,104px) clamp(40px,6vw,72px);display:grid}.hero h1{letter-spacing:-.03em;max-width:13ch;font-size:clamp(2.4rem,5.6vw,4.1rem);font-weight:700;line-height:1.05}:lang(th) .hero h1{letter-spacing:0;line-height:1.3}.hero-lead{color:var(--text-muted);max-width:50ch;margin-top:24px;font-size:1.1875rem}.actions{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.hero-note{color:var(--text-muted);margin-top:20px;font-size:.9375rem}@media (width<=900px){.hero{grid-template-columns:minmax(0,1fr)}.demo-notify{right:0}}.demo{margin:0;padding-bottom:72px;position:relative}.demo-panel{background:var(--surface);border-radius:var(--radius-lg);padding:20px}.demo-line{margin-bottom:14px;font-weight:600}.demo-machines{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.machine{background:var(--bg);border:2px solid #0000;border-radius:12px;gap:2px;padding:14px;font-size:.875rem;display:grid}.machine-name{font-size:.9375rem;font-weight:600}.machine-label{color:var(--text-muted);font-size:.8125rem}.machine-temp{font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:700;line-height:1.2}.machine-state{color:var(--good);align-items:center;gap:6px;margin-top:4px;font-weight:600;display:inline-flex}.state-dot{background:currentColor;border-radius:50%;width:8px;height:8px}.swap{display:inline-grid}.swap>*{grid-area:1/1}.machine-trip{animation:.4s ease-out 1.4s both trip-tile}.machine-trip .machine-state{animation:.4s ease-out 1.4s both trip-text}.machine-trip .swap-before{animation:.3s ease-out 1.4s both fade-out}.machine-trip .swap-after{animation:.3s ease-out 1.5s both fade-in}.demo-notify{background:var(--surface);width:min(330px,88%);box-shadow:var(--elevation-3);border-radius:14px;padding:14px 16px;animation:.5s cubic-bezier(.2,.8,.2,1) 2.2s both notify-in;position:absolute;bottom:0;right:-8px}.notify-from{color:var(--text-muted);align-items:center;gap:8px;font-size:.8125rem;display:flex}.notify-from:before{content:"";background:#06c755;border-radius:5px;width:18px;height:18px}.notify-title{margin-top:6px;font-weight:600;line-height:1.4}.notify-body{color:var(--text-muted);margin-top:2px;font-size:.875rem;line-height:1.5}@keyframes trip-tile{0%{background:var(--bg);border-color:#0000}to{border-color:var(--warn);background:var(--surface-tint-warn)}}@keyframes trip-text{0%{color:var(--good)}to{color:#b45309}}@keyframes fade-out{to{opacity:0}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes notify-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.machine-trip,.machine-trip .machine-state,.machine-trip .swap-before,.machine-trip .swap-after,.demo-notify{animation-duration:10ms;animation-delay:0s}}.problem{grid-template-columns:1.2fr 1fr;align-items:start;gap:clamp(32px,5vw,72px);display:grid}.pains li{border-top:1px solid var(--border);gap:2px;padding-block:18px;display:grid}.pains li:last-child{border-bottom:1px solid var(--border)}.pains span{color:var(--text-muted)}@media (width<=800px){.problem{grid-template-columns:minmax(0,1fr)}}.steps{counter-reset:step;grid-template-columns:repeat(3,1fr);gap:32px;display:grid}.steps li{counter-increment:step;align-content:start;gap:8px;display:grid}.steps li:before{content:counter(step);background:var(--primary);width:40px;height:40px;color:var(--on-primary);border-radius:50%;place-items:center;margin-bottom:8px;font-weight:700;display:grid}.steps p{color:var(--text-muted)}@media (width<=800px){.steps{grid-template-columns:minmax(0,1fr)}}.modules{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.modules li{background:var(--surface);border-radius:var(--radius-lg);align-content:start;gap:8px;padding:28px;display:grid}.modules p{color:var(--text-muted);font-size:1rem}.icon{fill:none;width:28px;height:28px;stroke:var(--primary-dark);stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;margin-bottom:8px}@media (width<=960px){.modules{grid-template-columns:1fr 1fr}}@media (width<=600px){.modules{grid-template-columns:minmax(0,1fr)}}.spatial{grid-template-columns:1fr 1.1fr;align-items:center;gap:clamp(32px,5vw,72px);display:grid}.badge{background:var(--surface-tint-info);color:#2f5fc4;border-radius:999px;margin-bottom:16px;padding:4px 12px;font-size:.875rem;font-weight:600;display:inline-block}.spatial-points{grid-template-columns:1fr 1fr;gap:24px 32px;margin-top:32px;display:grid}.spatial-points dt{font-weight:600}.spatial-points dd{color:var(--text-muted);margin-top:4px;font-size:1rem}.plan{background:var(--surface);border-radius:var(--radius-lg);margin:0;padding:24px}.plan svg{width:100%;height:auto;display:block}.plan-floor{fill:var(--bg);stroke:var(--border);stroke-width:1px}.zone{--c:var(--text-light)}.zone-running{--c:var(--good)}.zone-warning{--c:var(--warn)}.zone-down{--c:var(--danger)}.zone-maintenance{--c:var(--info)}.zone-top{fill:color-mix(in srgb, var(--c) 78%, white)}.zone-left{fill:color-mix(in srgb, var(--c) 82%, black)}.zone-right{fill:color-mix(in srgb, var(--c) 92%, black)}.plan-legend{flex-wrap:wrap;gap:8px 20px;margin-top:16px;font-size:.9375rem;display:flex}.plan-legend li{align-items:center;gap:8px;display:inline-flex}.swatch{background:var(--c);border-radius:3px;width:12px;height:12px}@media (width<=900px){.spatial{grid-template-columns:minmax(0,1fr)}}@media (width<=560px){.spatial-points{grid-template-columns:minmax(0,1fr)}}.band{background:var(--sidebar-bg);color:#f4f4f8;padding-block:clamp(56px,9vw,104px)}.band h2{margin-bottom:clamp(28px,4vw,48px)}.band-list{grid-template-columns:repeat(4,1fr);gap:32px;display:grid}.band-list li{border-top:2px solid var(--primary);padding-top:20px}.band-list p{color:var(--sidebar-text);margin-top:6px}@media (width<=900px){.band-list{grid-template-columns:1fr 1fr}}@media (width<=520px){.band-list{grid-template-columns:minmax(0,1fr)}}.trust-list{grid-template-columns:1fr 1fr;gap:0 48px;display:grid}.trust-list>div{border-top:1px solid var(--border);padding-block:20px}.trust-list dt{font-weight:600}.trust-list dd{color:var(--text-muted);margin-top:4px}@media (width<=700px){.trust-list{grid-template-columns:minmax(0,1fr)}}.pilot{background:color-mix(in srgb, var(--primary) 16%, var(--surface));border-radius:24px;grid-template-columns:1.2fr 1fr;gap:clamp(32px,5vw,64px);padding:clamp(28px,5vw,56px);display:grid}.pilot .btn{margin-top:28px}.pilot .section-lead{color:var(--text)}.pilot h3{margin-bottom:12px}.checks li{padding:8px 0 8px 32px;position:relative}.checks li:before{content:"";background:var(--primary) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M6 10.5l2.5 2.5L14 7.5' fill='none' stroke='%23063' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 20px no-repeat;border-radius:50%;width:20px;height:20px;position:absolute;top:.85em;left:0}:lang(th) .checks li:before{top:.95em}@media (width<=800px){.pilot{grid-template-columns:minmax(0,1fr)}}.faq-list{max-width:800px}.faq details{border-top:1px solid var(--border)}.faq details:last-child{border-bottom:1px solid var(--border)}.faq summary{cursor:pointer;justify-content:space-between;gap:16px;padding-block:20px;font-weight:600;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--text-muted);flex:none;font-size:1.5rem;line-height:1;transition:transform .2s}.faq details[open] summary:after{transform:rotate(45deg)}.faq details p{color:var(--text-muted);max-width:65ch;padding-bottom:20px}.form-wrap{grid-template-columns:1fr 1.3fr;align-items:start;gap:clamp(32px,5vw,72px);display:grid}.form-reply{margin-top:16px;font-weight:600}.form{background:var(--surface);border-radius:var(--radius-lg);grid-template-columns:1fr 1fr;gap:16px;padding:clamp(20px,4vw,36px);display:grid}.form label{gap:6px;font-size:.9375rem;font-weight:500;display:grid}.form input:not([type=checkbox]),.form textarea{border:1px solid var(--border);background:var(--surface);width:100%;min-height:46px;font:inherit;color:inherit;border-radius:10px;padding:10px 14px;font-weight:400}.form textarea{resize:vertical}.form input:focus,.form textarea:focus{outline:2px solid var(--primary-dark);outline-offset:0;border-color:#0000}.form .consent{color:var(--text-muted);align-items:flex-start;gap:10px;font-weight:400;display:flex}.form .consent input{width:18px;height:18px;accent-color:var(--primary-dark);margin-top:.3em}.hp{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.message{justify-items:start;gap:16px;max-width:640px;padding-block:clamp(80px,14vw,160px);display:grid}.message p{color:var(--text-muted)}.legal{max-width:760px;padding-block:clamp(48px,8vw,96px)}.legal h1{letter-spacing:-.02em;font-size:clamp(2rem,4.5vw,2.75rem)}.legal-meta{color:var(--text-muted);margin-top:12px;font-size:.9375rem}.legal section{margin-top:40px}.legal h2{max-width:none;margin-bottom:12px;font-size:1.25rem}.legal p+p,.legal ul+p,.legal p+ul{margin-top:12px}.legal ul{padding-left:1.25em;list-style:outside}.legal li+li{margin-top:6px}.span-2{grid-column:1/-1}@media (width<=860px){.form-wrap{grid-template-columns:minmax(0,1fr)}}@media (width<=520px){.form{grid-template-columns:minmax(0,1fr)}}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.pricing{padding-block:clamp(48px,8vw,96px) 0}.pricing h1{letter-spacing:-.025em;max-width:20ch;font-size:clamp(2rem,4.8vw,3.25rem)}:lang(th) .pricing h1{letter-spacing:0}.interval{background:var(--surface2);border:0;border-radius:12px;gap:4px;margin:32px 0 0;padding:4px;display:inline-flex}.interval input{opacity:0;pointer-events:none;position:absolute}.interval label{min-height:40px;color:var(--text-muted);cursor:pointer;border-radius:9px;align-items:center;gap:8px;padding:0 18px;font-weight:600;display:inline-flex}.interval input:checked+label{background:var(--surface);color:var(--text);box-shadow:var(--elevation-1)}.interval input:focus-visible+label{outline:3px solid var(--primary-dark);outline-offset:2px}.save{background:var(--primary-dim);color:#047857;border-radius:999px;padding:2px 8px;font-size:.8125rem}.when-year{display:none}.pricing:has(#iv-year:checked) .when-year{display:revert}.pricing:has(#iv-year:checked) a.when-year{display:inline-flex}.pricing:has(#iv-year:checked) .when-month{display:none}.plans{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:32px;display:grid}.plan{border-radius:var(--radius-lg);background:var(--surface);flex-direction:column;gap:8px;padding:28px 24px;display:flex}.plan-strong{outline:2px solid var(--primary);outline-offset:-2px}.plan h2{font-size:1.375rem}.plan-fit{color:var(--text-muted);min-height:3em;font-size:.9375rem}.plan-price{margin-block:12px 8px}.price{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:2rem;font-weight:700;line-height:1.2}.price span{letter-spacing:0;color:var(--text-muted);font-size:1rem;font-weight:500}.price-note{color:var(--text-muted);font-size:.875rem}.plan .btn{width:100%;margin-block:4px 12px}.plan .btn-quiet{background:var(--surface2)}.plan .btn-quiet:hover{background:color-mix(in srgb, var(--surface2) 80%, var(--text-light))}.plan-points{border-top:1px solid var(--border);gap:8px;padding-top:16px;font-size:.9375rem;display:grid}.plan-points li{padding-left:22px;position:relative}.plan-points li:before{content:"";border-left:2px solid var(--primary-dark);border-bottom:2px solid var(--primary-dark);width:10px;height:6px;position:absolute;top:.55em;left:2px;transform:rotate(-45deg)}.vat{color:var(--text-muted);margin-top:16px;font-size:.875rem}@media (width<=1040px){.plans{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.plans{grid-template-columns:minmax(0,1fr)}.plan-fit{min-height:0}}.table-scroll{border-radius:var(--radius-lg);background:var(--surface);overflow-x:auto}.compare table{border-collapse:collapse;width:100%;min-width:620px;font-size:.9375rem}.compare th,.compare td{text-align:center;border-bottom:1px solid var(--border);padding:14px 16px}.compare thead th{font-size:1rem}.compare tbody th[scope=row]{text-align:left;font-weight:500}.compare tr.group th{text-align:left;color:var(--text-muted);padding-top:24px;font-size:.875rem;font-weight:600}.compare td{font-variant-numeric:tabular-nums;color:var(--text-muted)}.compare .yes{color:var(--primary-dark);font-weight:700}.compare tbody tr:last-child th,.compare tbody tr:last-child td{border-bottom:0}.addon{color:var(--text-muted);margin-top:16px}.all-plans .checks{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;display:grid}@media (width<=640px){.all-plans .checks{grid-template-columns:minmax(0,1fr)}}.closing{text-align:center;justify-items:center;gap:12px;padding-block:clamp(56px,9vw,112px);display:grid}.closing h2{max-width:none;font-size:clamp(2rem,4.5vw,3rem)}.closing p{color:var(--text-muted);margin-bottom:16px}.site-footer{border-top:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-size:.875rem}.footer-inner{flex-wrap:wrap;justify-content:space-between;gap:12px 24px;padding-block:28px;display:flex}.footer-company{gap:2px;font-style:normal;display:grid}.footer-company span:first-child{color:var(--text);font-weight:600}.footer-links{gap:24px;display:flex}
