:root{--color-brand-700:#3e357f;--color-brand-600:#473e91;--color-brand-500:#4a409a;--color-accent-500:#25b4e9;--color-text-primary:#171829;--color-text-secondary:#697184;--color-surface:#fff;--color-surface-soft:#fafbfe;--color-surface-sky:#e7faff;--color-border:#e6e7ed;--color-focus:#25b4e9;--font-sans:var(--font-dm-sans), "DM Sans", Inter, Arial, sans-serif;--font-size-body:1rem;--line-height-body:1.5;--line-height-body-th:1.7;--line-height-heading-th:1.32;--line-height-heading-th-compact:1.28;--letter-spacing-heading-th:-.018em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius-sm:.75rem;--radius-md:1rem;--radius-full:999px;--content-max:1240px;--page-gutter:clamp(1.25rem, 6.95vw, 6.25rem);--touch-target:2.75rem;--shadow-menu:0 16px 40px #1718291f}html[lang=th]{--font-sans:var(--font-ibm-plex-sans-thai), "IBM Plex Sans Thai", Tahoma, Arial, sans-serif}
*,:before,:after{box-sizing:border-box}html{overscroll-behavior-x:none;scroll-behavior:smooth;width:100%;max-width:100%;overflow-x:clip}body{background:var(--color-surface);width:100%;max-width:100%;color:var(--color-text-primary);font-family:var(--font-sans);font-size:var(--font-size-body);line-height:var(--line-height-body);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;overflow-x:clip}html[lang=th] body{line-height:var(--line-height-body-th)}html[lang=th] body :where(h1,h2){line-height:var(--line-height-heading-th);letter-spacing:var(--letter-spacing-heading-th);text-wrap:balance;word-break:normal;overflow-wrap:normal}html[lang=th] body :where(h3){letter-spacing:-.01em;text-wrap:pretty;line-height:1.4}html[lang=th] body :where(p,li){line-height:var(--line-height-body-th)}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}img,svg{display:block}:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}body:has([data-blog-hero]) [data-site-header]:not([data-scrolled]){background:0 0;border-bottom-color:#0000}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}@media (max-width:767px){html[lang=th] body :where(h1,h2){line-height:var(--line-height-heading-th-compact);letter-spacing:-.01em}}
