@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Space+Mono:ital,wght@0,400;0,700;1,400;1,700&display=swap";:root{--bg-primary: #ffffff;--bg-secondary: #f6f6f4;--bg-tertiary: #efefec;--bg-card: #fafaf8;--text-primary: #101014;--text-secondary: rgba(16,16,20,.66);--text-tertiary: rgba(16,16,20,.42);--accent: #101014;--accent-dim: rgba(16,16,20,.38);--accent-glow: rgba(16,16,20,.08);--border-light: rgba(16,16,20,.1);--border-strong: rgba(16,16,20,.18);--border-accent: rgba(16,16,20,.28);--success: #101014;--error: #ff4444;--warning: #ffaa00;--font-mono: "Space Mono", monospace;--font-sans: "Space Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--nav-height: 64px;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--space-9: 6rem;--section-pad: clamp(5rem, 10vw, 8rem);--section-gap: clamp(3rem, 6vw, 5rem);--header-gap: clamp(2.5rem, 5vw, 4rem);--container-max: 1280px;--gutter: clamp(4rem, 6vw, 5rem);--text-2xs: .58rem;--text-xs: .66rem;--text-sm: clamp(.82rem, .78rem + .2vw, .9rem);--text-base: clamp(.95rem, .9rem + .25vw, 1.05rem);--text-lg: clamp(1.1rem, 1rem + .5vw, 1.3rem);--text-h3: clamp(1.25rem, 1.05rem + 1vw, 1.75rem);--text-h2: clamp(1.9rem, 1.4rem + 2.6vw, 3.5rem);--text-h1: clamp(2.5rem, 1.8rem + 3.6vw, 4.75rem);--text-display: clamp(3rem, 2rem + 8vw, 7.5rem);--measure: 65ch;--measure-short: 58ch;--ease-out: cubic-bezier(.16, 1, .3, 1);--dur-fast: .25s;--dur-base: .45s;--shadow-card: 0 12px 32px rgba(16,16,20,.08), 0 2px 6px rgba(16,16,20,.04);--shadow-panel: 0 24px 64px rgba(16,16,20,.18), 0 4px 12px rgba(16,16,20,.08)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;max-width:100vw;overflow-x:hidden;background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}img,svg,video{max-width:100%}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:#0003;border-radius:2px}::-webkit-scrollbar-thumb:hover{background:#0006}::selection{background:var(--text-primary);color:#fff}h1,h2,h3,h4,h5,h6{font-weight:800;letter-spacing:-.04em;line-height:1;text-transform:uppercase;color:var(--text-primary);text-wrap:balance}h1{font-size:var(--text-display)}h2{font-size:var(--text-h2)}h3{font-size:var(--text-h3);letter-spacing:-.03em;line-height:1.1}p{line-height:1.65;color:var(--text-secondary);font-weight:300;font-size:var(--text-base)}a{color:inherit}.mono{font-family:var(--font-mono);letter-spacing:-.01em}.label{font-family:var(--font-mono);text-transform:uppercase;font-size:var(--text-xs);letter-spacing:.15em;color:var(--text-tertiary)}.measure{max-width:var(--measure)}.measure-short{max-width:var(--measure-short)}.container{width:100%;max-width:calc(var(--container-max) + 2 * var(--gutter));margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}.section{min-height:100vh;padding-top:var(--section-pad);padding-bottom:var(--section-pad);display:flex;flex-direction:column;justify-content:center}.App,main,.landing-page{width:100%;overflow-x:hidden;background:var(--bg-primary)}@media(max-width:1024px){:root{--gutter: 2rem}}@media(max-width:640px){:root{--gutter: 1.25rem;--section-pad: 4rem;--header-gap: 2.25rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.project-card,.project-card:hover,.project-thumb-img,.project-card:hover .project-thumb-img,.project-detail-btn svg,.floating-ai-toggle:hover,.floating-ai-btn:hover,.story-photo{transform:none!important}}.story-stat{background:var(--bg-card)!important;border-color:var(--border-light)!important}.story-stat:hover{background:#e8e8ea!important}.story-stat-value{color:var(--accent)!important}.story-stat-label{color:var(--text-tertiary)!important}.photo-frame{border-color:var(--border-light)!important}.photo-badge{background:#fff!important;border-color:var(--border-light)!important;color:var(--text-secondary)!important}.story-section-title{color:var(--text-tertiary)!important;border-color:var(--border-light)!important}.story-section{border-color:var(--border-light)!important}.story-bio{color:var(--text-secondary)!important}.story-bio strong{color:#000!important}.award-item{background:var(--bg-card)!important;border-left:2px solid #000!important}.award-title{color:#000!important}.award-event{color:var(--text-tertiary)!important}.contact-link-main{color:#000!important;border-bottom:2px solid #000!important}.contact-secondary-link{color:var(--text-tertiary)!important}.contact-secondary-link:hover,.philosophy-block-name{color:#000!important}.philosophy-block-desc{color:var(--text-secondary)!important}.story-availability{color:var(--text-tertiary)!important}.domain-card{background:var(--bg-card)!important;border:1px solid var(--border-light)!important}.domain-card:before{background:#000!important}.domain-card:hover{border-color:#000!important}.domain-header{border-color:var(--border-light)!important}.domain-title{color:#000!important}.domain-subtitle{color:var(--text-tertiary)!important}.domain-num{color:#000!important;opacity:.1!important}.skill-icon{background:#e8e8ea!important;color:#000!important}.skill-name{color:var(--text-secondary)!important}.skill-bar-wrap{background:#0000000d!important}.skill-bar-fill{background:#000!important;box-shadow:0 0 10px #0003!important}.project-link{border:1px solid rgba(0,0,0,.3)!important;color:#000!important}.project-link:hover{background:#000!important;color:#fff!important}.hero-section{width:100%;min-height:100vh;position:relative;overflow:hidden;background:#fff}.floating-ai-btn{position:fixed;bottom:2rem;right:2rem;width:56px;height:56px;background:#fff;border:1px solid rgba(0,0,0,.2);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:9000;transition:all .3s ease}.floating-ai-btn:hover{transform:scale(1.1);border-color:#000;background:#fff}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.cursor-blink{animation:blink 1s step-end infinite}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.grid-bg{background-size:40px 40px;background-image:linear-gradient(to right,rgba(0,0,0,.02) 1px,transparent 1px),linear-gradient(to bottom,rgba(0,0,0,.02) 1px,transparent 1px);position:fixed;top:0;left:0;right:0;bottom:0;z-index:-1;pointer-events:none}:root{--font-thai: "IBM Plex Sans Thai", "Noto Sans Thai", "Leelawadee UI", sans-serif}html[lang=th] body,html[lang=th] .section-header-title,html[lang=th] h1,html[lang=th] h2,html[lang=th] h3,html[lang=th] p,html[lang=th] button,html[lang=th] a,html[lang=th] li{font-family:var(--font-thai)}html[lang=th] .mono,html[lang=th] [class*=mono]{font-family:"IBM Plex Sans Thai",var(--font-mono);letter-spacing:.08em}html[lang=th] p,html[lang=th] .pd-body,html[lang=th] .pd-lead,html[lang=th] .project-desc,html[lang=th] .hero-blurb,html[lang=th] .section-header-desc,html[lang=th] .group-desc{line-height:1.85;word-break:break-word;overflow-wrap:anywhere;letter-spacing:0}html[lang=th] h1,html[lang=th] .pd-title,html[lang=th] .project-title,html[lang=th] .section-header-title{line-height:1.35;letter-spacing:-.01em;word-break:break-word}html[lang=th] .pd-h3,html[lang=th] h3{line-height:1.45}html[lang=th] .section-header-title,html[lang=th] .pd-title,html[lang=th] .pd-h3,html[lang=th] .group-label,html[lang=th] .project-title,html[lang=th] .tech-badge,html[lang=th] .category-badge,html[lang=th] .filter-btn{text-transform:none}
