*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary-purple: #7c3aed;--color-primary-purple-light: #a78bfa;--color-primary-orange: #f97316;--color-primary-yellow: #f59e0b;--color-pink: #ec4899;--color-teal: #14b8a6;--color-blue: #3b82f6;--color-gray-900: #1f2937;--color-gray-700: #374151;--color-gray-600: #4b5563;--color-gray-500: #6b7280;--color-gray-400: #9ca3af;--color-gray-300: #d1d5db;--color-gray-200: #e5e7eb;--color-gray-100: #f3f4f6;--color-white: #ffffff;--bg-yellow-light: #fef3c7;--bg-yellow-medium: #fde68a;--bg-cream: #fdf4e3;--font-family: "LINE Seed Sans TH", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--spacing-4xl: 5rem;--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px;--radius-xl: 32px;--radius-full: 9999px;--shadow-sm: 0 2px 10px rgba(0, 0, 0, .05);--shadow-md: 0 4px 20px rgba(0, 0, 0, .1);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .1);--transition-fast: .2s ease;--transition-normal: .3s ease}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-family);line-height:1.6;color:var(--color-gray-900);background-color:var(--color-white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{line-height:1.2;font-weight:700}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}button,input,textarea,select{font-family:inherit;font-size:inherit}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--color-primary-purple);outline-offset:2px}::selection{background-color:var(--color-primary-purple-light);color:var(--color-white)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-gray-100)}::-webkit-scrollbar-thumb{background:var(--color-gray-400);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-gray-500)}.container{max-width:1400px;margin:0 auto;padding:0 var(--spacing-xl)}@media(max-width:768px){html{font-size:14px}}
