*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--font-sans:"Inter", "Kantumruy Pro", "Noto Sans Khmer", system-ui, sans-serif;--font-display:"Koulen", "Kantumruy Pro", sans-serif;--primary:#0a4a76;--secondary:#08395d;--accent:#ed9f15;--accent-hover:#c98200;--bg-main:#f7f7f5;--bg-sec:#f0f2f4;--text-main:#2d3138;--text-muted:#5c626a;--border:#d9d9d9;--navy:var(--secondary);--gold:var(--accent);--gold-light:var(--accent-hover);--off-white:var(--bg-main);--warm-card:var(--bg-sec);--text-dark:var(--text-main);--text-mid:var(--text-muted)}html{scroll-behavior:smooth}body{font-family:var(--font-sans);color:var(--text-dark);background:var(--off-white);overflow-x:hidden}html[lang=km]{font-size:108%}html[lang=km] body{font-family:Kantumruy Pro,Noto Sans Khmer,sans-serif;line-height:1.8}html[lang=km] *,html[lang=km] :before,html[lang=km] :after{letter-spacing:normal!important}html[lang=km] p,html[lang=km] li,html[lang=km] label,html[lang=km] button,html[lang=km] input,html[lang=km] select,html[lang=km] textarea,html[lang=km] span,html[lang=km] a,html[lang=km] .nav-link,html[lang=km] .nav-cta-btn{font-family:Kantumruy Pro,Noto Sans Khmer,sans-serif}html[lang=km] p{font-size:1.08em!important;line-height:1.85!important}html[lang=km] h1,html[lang=km] h2,html[lang=km] h3,html[lang=km] h4{line-height:1.45;font-family:Koulen,Kantumruy Pro,sans-serif!important}.font-display{font-family:var(--font-display)}.font-sans{font-family:var(--font-sans)}@media (max-width:768px){html[lang=km] p{font-size:1.12em!important;line-height:1.9!important}html[lang=km] span,html[lang=km] label,html[lang=km] button,html[lang=km] input,html[lang=km] select{font-size:1.05em}}a{color:inherit}img{max-width:100%;height:auto}@media (max-width:768px){nav{padding:0 20px!important}section{padding:64px 20px!important}}.hero-section{background:var(--navy);grid-template-columns:1fr;align-items:center;gap:48px;min-height:100vh;padding:120px 24px 64px;display:grid}.services-grid{grid-template-columns:1fr;gap:24px;display:grid}.how-it-works-grid{grid-template-columns:1fr;gap:32px;display:grid}.form-grid{grid-template-columns:1fr;gap:16px;display:grid}.product-detail-grid{grid-template-columns:1fr;align-items:start;gap:32px;display:grid}@media (min-width:576px){.form-grid{grid-template-columns:1fr 1fr}}@media (min-width:768px){.hero-section{grid-template-columns:1fr 1fr;gap:60px;padding:80px 48px}.services-grid{grid-template-columns:1fr 1fr;gap:32px}.how-it-works-grid{grid-template-columns:repeat(2,1fr)}.product-detail-grid{grid-template-columns:1fr 1fr;gap:64px}}@media (min-width:992px){.how-it-works-grid{grid-template-columns:repeat(4,1fr)}}@keyframes marquee{0%{transform:translate(0%)}to{transform:translate(-50%)}}.marquee-container{width:100%;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000);mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000)}.marquee-track{gap:48px;width:max-content;animation:35s linear infinite marquee;display:flex}.marquee-track:hover{animation-play-state:paused}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-shimmer{background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6 37%,#e5e7eb 63%) 0 0/200% 100%;animation:1.5s ease-in-out infinite skeleton-shimmer}.skeleton-shimmer-dark{background:linear-gradient(90deg,#ffffff0d 25%,#ffffff1f 37%,#ffffff0d 63%) 0 0/200% 100%;animation:1.5s ease-in-out infinite skeleton-shimmer}.card-hover-effect{transition:transform .28s cubic-bezier(.4,0,.2,1),box-shadow .28s cubic-bezier(.4,0,.2,1),border-color .28s cubic-bezier(.4,0,.2,1)}.card-hover-effect:hover{transform:translateY(-4px);box-shadow:0 16px 32px #08395d1f;border-color:#ed9f1566!important}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-animate-in{animation:.25s cubic-bezier(.16,1,.3,1) forwards modalFadeIn}input[type=range].custom-slider{-webkit-appearance:none;background:#ffffff26;border-radius:3px;outline:none;width:100%;height:6px}input[type=range].custom-slider::-webkit-slider-thumb{appearance:none;background:var(--gold);cursor:pointer;border-radius:50%;width:22px;height:22px;transition:transform .15s,background-color .15s;box-shadow:0 0 10px #ed9f1580}input[type=range].custom-slider::-webkit-slider-thumb:hover{background:var(--accent-hover);transform:scale(1.15)}
