.no-scroll,.no-scroll .site-main,.no-scroll .page-scroll-container{overflow:hidden!important}body:not(.preloader-done) .site-wrapper{opacity:0!important;pointer-events:none!important}body.preloader-done .site-wrapper{opacity:1;transition:opacity .8s cubic-bezier(.25,1,.5,1)}.preloader{z-index:9999;background:var(--color-dark);will-change:opacity;pointer-events:all;place-items:center;animation:1.6s cubic-bezier(.25,1,.5,1) forwards preloaderFade;display:grid;position:fixed;inset:0}.preloader-bg{will-change:opacity;background-image:url(/Images/preload-images.png);background-position:50%;background-size:cover;animation:1.6s cubic-bezier(.25,1,.5,1) forwards preloaderBg;position:absolute;inset:0}.preloader-logo{z-index:2;backface-visibility:hidden;will-change:transform, opacity;place-items:center;width:min(340px,68vw);height:auto;animation:1.4s cubic-bezier(.25,1,.5,1) forwards preloaderLogo;display:grid;position:relative;transform:translate(0,0)}.preloader-logo img{object-fit:contain;filter:brightness(0)invert()drop-shadow(0 12px 30px #00000040);width:100%;height:auto}@keyframes preloaderBg{0%{opacity:0}20%{opacity:.18}60%{opacity:.14}to{opacity:0}}@keyframes preloaderLogo{0%{opacity:0;transform:scale(.9)}20%{opacity:1;transform:scale(1)}60%{opacity:.85;transform:scale(1.22)}to{opacity:0;transform:scale(2.4)}}@keyframes preloaderFade{0%{opacity:1;visibility:visible}75%{opacity:1;visibility:visible}to{opacity:0;visibility:hidden}}
.transition-active,.transition-active body,.transition-active .site-main,.transition-active .page-scroll-container{overflow:hidden!important}.page-transition-overlay{z-index:9999;pointer-events:none;width:100vw;height:100vh;position:fixed;inset:0}.page-transition-overlay.status-leaving,.page-transition-overlay.status-loading{pointer-events:all}.transition-panel{will-change:transform;width:100%;height:100%;position:absolute;inset:0}.red-panel{background:var(--color-red);transform:translateY(-100%)}.dark-panel{background:var(--color-dark);flex-direction:column;justify-content:center;align-items:center;display:flex;transform:translateY(-100%)}.status-leaving .red-panel{transition:transform .42s cubic-bezier(.76,0,.24,1);transform:translateY(0)}.status-leaving .dark-panel{transition:transform .42s cubic-bezier(.76,0,.24,1) 40ms;transform:translateY(0)}.status-loading .red-panel,.status-loading .dark-panel{transform:translateY(0)}.status-entering .dark-panel{transition:transform .42s cubic-bezier(.76,0,.24,1);transform:translateY(100%)}.status-entering .red-panel{transition:transform .42s cubic-bezier(.76,0,.24,1) 40ms;transform:translateY(100%)}.transition-spinner-wrapper{opacity:0;will-change:opacity, transform;flex-direction:column;align-items:center;gap:28px;display:flex;transform:scale(.92)}.status-leaving .transition-spinner-wrapper{opacity:1;transition:opacity .3s .18s,transform .3s .18s;transform:scale(1)}.status-loading .transition-spinner-wrapper{opacity:1;transform:scale(1)}.status-entering .transition-spinner-wrapper{opacity:0;transition:opacity .2s,transform .2s;transform:scale(1.04)}.transition-logo{width:min(200px,48vw);height:auto}.transition-logo img{object-fit:contain;filter:brightness(0)invert();width:100%;height:auto;animation:1.6s ease-in-out infinite logoPulse}.transition-spinner{border:3px solid #ffffff14;border-top-color:var(--color-red);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}.transition-progress-bar{background:var(--color-red);transform-origin:0;z-index:10000;opacity:0;will-change:transform, opacity;width:100%;height:3px;position:absolute;top:0;left:0;transform:scaleX(0)}.status-leaving .transition-progress-bar{opacity:1;transition:transform .42s cubic-bezier(.76,0,.24,1);transform:scaleX(.7)}.status-loading .transition-progress-bar{opacity:1;animation:2.5s ease-in-out infinite alternate progressPulse;transform:scaleX(.9)}.status-entering .transition-progress-bar{opacity:1;transition:transform .2s;transform:scaleX(1)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes logoPulse{0%,to{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.02)}}@keyframes progressPulse{0%{transform:scaleX(.88)}to{transform:scaleX(.95)}}
:root{--font-sans:"Bai Jamjuree", "SF Pro Display", "Segoe UI", system-ui, sans-serif;--color-ink:#505152;--color-muted:#5f6866;--color-soft:#f4f7f5;--color-surface:#fff;--color-line:#1113151f;--color-red:#ee1d2b;--color-green:#147a5f;--color-mint:#dff4e9;--color-cyan:#38a9c7;--color-amber:#e8b44b;--color-dark:#0f1413;--color-dark-2:#18211f;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-xl:24px;--shadow-soft:0 24px 80px #1113151f;--shadow-tight:0 14px 40px #1113151a;--transition-fast:.2s ease;--transition-base:.3s ease;--header-height:92px;--section-pad:112px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background:var(--color-soft)}body{min-height:100vh;color:var(--color-ink);background:linear-gradient(112deg, #38a9c714, transparent 34%), linear-gradient(180deg, #fbfcfb 0%, var(--color-soft) 42%, var(--color-surface) 100%);font-family:var(--font-sans);text-rendering:geometricprecision;overflow:hidden}button,input,textarea{font:inherit}button{border:0}a{color:inherit;text-decoration:none}::selection{background:#d9203f2e}.site-main{scroll-behavior:smooth;scroll-snap-type:y mandatory;scroll-snap-stop:always;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;width:100%;height:100vh;overflow:hidden auto}.site-main::-webkit-scrollbar{width:4px}.site-main::-webkit-scrollbar-track{background:0 0}.site-main::-webkit-scrollbar-thumb{background:#11131526;border-radius:999px}.site-main::-webkit-scrollbar-thumb:hover{background:#11131540}@supports (scrollbar-width:thin){.site-main{scrollbar-width:thin;scrollbar-color:#11131526 transparent}}.page-scroll-container{scroll-behavior:smooth;-webkit-overflow-scrolling:touch;background:var(--color-soft);width:100%;height:100vh;position:relative;overflow-y:auto}.page-scroll-container.has-no-hero{padding-top:var(--header-height)}.page-scroll-container::-webkit-scrollbar{width:4px}.page-scroll-container::-webkit-scrollbar-track{background:0 0}.page-scroll-container::-webkit-scrollbar-thumb{background:#11131526;border-radius:999px}@supports (scrollbar-width:thin){.page-scroll-container{scrollbar-width:thin;scrollbar-color:#11131526 transparent}}.section-slide{scroll-snap-align:start;align-items:center;width:100%;height:100vh;min-height:100vh;padding:0;display:flex;position:relative;overflow:hidden}.section-content{z-index:2;width:min(1180px,100% - 40px);padding:calc(var(--header-height) + 28px) 0 58px;margin:0 auto;position:relative}.section-soft{background:var(--color-surface)}.section-dark{color:#f9fbfa;background:linear-gradient(112deg, #d9203f29, transparent 34%), linear-gradient(248deg, #147a5f2e, transparent 38%), linear-gradient(135deg, var(--color-dark), var(--color-dark-2))}.eyebrow{color:var(--color-green);text-transform:uppercase;letter-spacing:0;align-items:center;gap:10px;margin-bottom:18px;font-size:.82rem;font-weight:700;display:inline-flex}.eyebrow:before{content:"";background:currentColor;width:30px;height:2px}.section-dark .eyebrow{color:#8be1bd}.heading-primary{max-width:740px;color:var(--color-surface);letter-spacing:0;font-size:4.2rem;font-weight:700;line-height:1.04}.heading-secondary{max-width:720px;color:var(--color-ink);letter-spacing:0;font-size:2.72rem;font-weight:700;line-height:1.08}.heading-secondary span,.text-accent{color:var(--color-red)}.section-dark .heading-secondary,.section-dark .text-regular{color:var(--color-surface)}.text-regular{color:var(--color-muted);font-size:1rem;line-height:1.68}.section-kicker{max-width:680px;margin-top:16px}.text-center{text-align:center;margin-inline:auto}.section-heading-row{justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:22px;display:flex}.section-heading-row .section-kicker{max-width:430px;margin-top:0}.btn-primary,.btn-secondary,.btn-ghost{border-radius:var(--radius-sm);cursor:pointer;min-height:46px;transition:transform var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast), border-color var(--transition-fast);justify-content:center;align-items:center;gap:10px;padding:0 22px;font-weight:700;line-height:1;display:inline-flex;position:relative}.btn-primary{color:var(--color-surface);background:var(--color-red);box-shadow:0 16px 34px #d9203f42}.btn-primary:hover,.btn-secondary:hover,.btn-ghost:hover{transform:translateY(-2px)}.btn-primary:hover{box-shadow:0 22px 46px #d9203f57}.btn-secondary{color:var(--color-surface);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffff14;border:1px solid #ffffff57}.btn-ghost{color:var(--color-ink);border:1px solid var(--color-line);background:#ffffffc2}.button-icon{background:#ffffff2e;border-radius:50%;place-items:center;width:22px;height:22px;display:grid}.btn-ghost .button-icon{color:var(--color-surface);background:var(--color-ink)}.slide-cue{z-index:8;color:#111315a8;text-transform:uppercase;transition:transform var(--transition-fast), opacity var(--transition-fast);justify-items:center;gap:10px;font-size:.82rem;font-weight:700;display:inline-grid;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.slide-cue:hover{opacity:.72;transform:translate(-50%)translateY(3px)}.slide-cue i{border:2px solid;border-radius:999px;width:24px;height:42px;display:block;position:relative}.slide-cue i:after{content:"";background:currentColor;border-radius:999px;width:4px;height:9px;animation:1.6s ease-in-out infinite cueWheel;position:absolute;top:8px;left:50%;transform:translate(-50%)}.section-dark .slide-cue,.hero-slide .slide-cue,.about-slide .slide-cue,.contact-slide .slide-cue{color:#ffffffd6}@keyframes cueWheel{0%{opacity:0;transform:translate(-50%)}40%{opacity:1}to{opacity:0;transform:translate(-50%,13px)}}.scroll-progress{z-index:200;transform-origin:0;width:100%;height:2px;transition:opacity var(--transition-fast);background:0 0;position:fixed;top:0;left:0}.scroll-progress-bar{background:var(--color-red);transform-origin:0;height:100%;transition:transform .1s linear}.reveal,.animate-fade-in-up{animation:.86s cubic-bezier(.22,1,.36,1) both fadeInUp}@supports (animation-timeline:view()){.reveal,.animate-fade-in-up{opacity:0;animation-name:fadeInUp;animation-timing-function:cubic-bezier(.22,1,.36,1);animation-fill-mode:both;animation-timeline:view();animation-range:entry cover 35%;transform:translateY(32px)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes floatY{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (max-width:980px){:root{--section-pad:92px}.section-slide{height:100vh;min-height:100vh}.heading-primary{font-size:3.35rem}.heading-secondary{font-size:2.42rem}.section-heading-row{display:block}.section-heading-row .section-kicker{margin-top:20px}}@media (max-width:680px){:root{--header-height:68px;--section-pad:72px}.section-content{width:min(100% - 28px,1180px);padding:calc(var(--header-height) + 24px) 0 68px}.heading-primary{font-size:2.45rem;line-height:1.06}.heading-secondary{font-size:1.86rem}.text-regular{font-size:1rem}.btn-primary,.btn-secondary,.btn-ghost{width:100%}.slide-cue{display:none}.hero-slide .slide-cue{display:inline-grid}.site-main{scroll-snap-type:y proximity;-webkit-overflow-scrolling:touch;overflow-y:auto}.section-slide{scroll-snap-align:none;height:auto;min-height:auto;padding:40px 0;overflow:visible}.section-slide:nth-child(-n+1){scroll-snap-align:start;height:100vh;min-height:100vh;padding:0;overflow:hidden}.section-slide:nth-child(-n+1) .section-content{padding:calc(var(--header-height) + 24px) 0 48px}.section-slide:nth-child(n+3) .vision-container,.section-slide:nth-child(n+3) .projects-container,.section-slide:nth-child(n+3) .partners-container{align-content:start;gap:28px;min-height:auto}.contact-slide{padding:0!important}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.section-slide{opacity:.86;will-change:opacity;transition:opacity .82s}.section-slide.is-active{opacity:1}.section-slide.is-active .section-content{animation:.78s cubic-bezier(.23,.9,.28,1) both sectionContentRise}@keyframes sectionContentRise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@media (max-width:680px){.section-slide,.section-slide.is-active{opacity:1;transition:none}.section-slide.is-active .section-content{animation:none}}
