:root{color-scheme:light;--navy-950:#123b73;--navy-900:#1b5296;--navy-800:#2768b4;--brand-background:repeating-linear-gradient(135deg, transparent 0 44px, rgba(15, 55, 119, 0.14) 44px 46px),linear-gradient(135deg, #2466ad, #194986);--blue-600:#2368d9;--blue-700:#1958bd;--blue-100:#e8f0ff;--slate-950:#172033;--slate-700:#46546a;--slate-500:#718096;--slate-300:#ccd5e1;--slate-200:#dde4ed;--slate-100:#edf2f7;--slate-50:#f7f9fc;--white:#ffffff;--success:#16805b;--danger:#c2413b;--shadow:0 4px 0 rgba(27, 82, 150, 0.05),0 20px 48px rgba(24, 56, 102, 0.18)}*{box-sizing:border-box}html{min-width:320px;background:var(--slate-100);font-size:17px}body{min-height:100vh;margin:0;color:var(--slate-950);background-color:var(--slate-100);background-image:linear-gradient(rgba(11,31,58,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(11,31,58,.035) 1px,transparent 1px);background-size:36px 36px;font-family:"Segoe UI","Microsoft YaHei UI","PingFang SC",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}.page-shell{width:min(100% - 40px,1120px);margin:0 auto}.page-shell>main{padding-top:24px}.site-header{position:sticky;top:0;z-index:100;border-bottom:1px solid rgba(27,82,150,.1);background-color:var(--slate-100);background-image:linear-gradient(rgba(11,31,58,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(11,31,58,.035) 1px,transparent 1px);background-size:36px 36px;box-shadow:0 4px 16px rgba(27,82,150,.06)}.header-content{display:flex;min-height:68px;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:10px 0}.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px;flex-wrap:wrap}.language-switch{display:inline-flex;gap:3px;padding:4px;border:1px solid var(--slate-300);border-radius:10px;background:rgba(255,255,255,.85)}.language-button{min-height:34px;padding:4px 12px;border:0;border-radius:6px;color:var(--slate-700);background:0 0;cursor:pointer;font:inherit;font-size:.8125rem;font-weight:650;line-height:1.7;transition:background 180ms ease,box-shadow 180ms ease}.language-button[lang=km],html[lang=km] body{font-family:"Leelawadee UI","Khmer UI","Noto Sans Khmer","Segoe UI",sans-serif}.language-button:hover{background:var(--slate-100)}.language-button[aria-pressed=true]{color:var(--white);background:var(--brand-background);box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 2px 0 rgba(15,55,119,.3)}.language-button:focus-visible{outline:3px solid rgba(35,104,217,.4);outline-offset:2px}.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none}.brand-mark{display:grid;width:42px;height:42px;place-items:center;border-radius:10px;color:var(--white);background:var(--brand-background);box-shadow:inset 0 1px 0 rgba(255,255,255,.34),0 3px 0 #17447f,0 10px 18px rgba(27,82,150,.24);font-size:1.25rem;font-weight:800;line-height:1;transition:transform 220ms ease,box-shadow 220ms ease}.brand-copy{display:grid;gap:1px}.brand-copy strong{color:var(--navy-900);font-size:1rem;font-weight:750;letter-spacing:.02em}.brand-copy span{color:var(--slate-500);font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.network-label{display:inline-flex;min-height:36px;align-items:center;gap:9px;padding:0 14px;border:1px solid var(--slate-300);border-radius:999px;color:var(--slate-700);background:rgba(255,255,255,.74);font-size:.875rem;font-weight:650;white-space:nowrap}.network-indicator{width:8px;height:8px;border-radius:50%;background:var(--success);box-shadow:0 0 0 4px rgba(22,128,91,.1)}.download-card{display:grid;min-height:292px;overflow:hidden;grid-template-columns:minmax(350px,0.32fr) minmax(0,0.68fr);border:1px solid rgba(11,31,58,.1);border-radius:18px;background:var(--white);box-shadow:var(--shadow);animation:panel-reveal 520ms cubic-bezier(.2,.65,.3,1)}.product-panel{position:relative;display:flex;overflow:hidden;flex-direction:column;justify-content:space-between;padding:22px 28px 20px;color:var(--white);background:var(--brand-background)}.product-panel::after,.product-panel::before{position:absolute;content:"";pointer-events:none}.product-panel::before{top:-76px;right:-84px;width:250px;height:250px;border:52px solid rgba(15,55,119,.24);border-radius:50%;animation:panel-float 14s ease-in-out infinite alternate}.product-panel::after{right:-84px;bottom:86px;width:230px;height:1px;background:rgba(255,255,255,.16);box-shadow:0 22px 0 rgba(255,255,255,.1),0 44px 0 rgba(255,255,255,.06);transform:rotate(-36deg)}.authorized-note,.product-content{position:relative;z-index:1}.product-content>.section-label{margin-bottom:12px}.section-label{margin:0 0 18px;color:#c4dcff;font-size:.75rem;font-weight:750;letter-spacing:.14em;text-transform:uppercase}h1,h2,p{text-wrap:pretty}h1{display:flex;align-items:baseline;gap:4px 12px;flex-wrap:wrap;margin:0;font-size:1.55rem;font-weight:500;letter-spacing:-.035em;line-height:1.35}h1 .product-name{font-size:2.65rem;font-weight:760;line-height:1.1;text-shadow:0 3px 0 rgba(10,47,104,.2),0 12px 22px rgba(9,45,97,.16)}html[lang=en] h1{font-size:1.4rem}html[lang=km] h1{font-size:1.35rem;letter-spacing:normal;line-height:1.5}html[lang=km] h2,html[lang=km] h3{letter-spacing:normal;line-height:1.65}.product-summary{margin:10px 0 0;color:#c7d4e8;font-size:.9375rem;line-height:1.6}.product-specs{display:grid;margin:14px 0 0;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18)}.product-specs div{min-width:0;padding:8px 8px 8px 0}.product-specs div+div{padding-left:10px;border-left:1px solid rgba(255,255,255,.14)}html[lang=km] .product-specs{grid-template-columns:minmax(0,0.9fr) minmax(0,1.25fr) minmax(0,1fr)}html[lang=km] .product-specs div{padding-right:4px}html[lang=km] .product-specs div+div{padding-left:6px}.product-specs dt{margin-bottom:4px;color:#c0d4ef;font-size:.75rem}.product-specs dd{overflow:hidden;margin:0;color:var(--white);font-size:.875rem;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.authorized-note{display:flex;align-items:center;gap:10px;margin-top:14px;color:#d4e1f3;font-size:.8125rem;line-height:1.5}.authorized-note svg{width:20px;height:20px;flex:0 0 auto;fill:none;stroke:#8fbaff;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.download-panel{display:flex;flex-direction:column;justify-content:center;padding:20px 28px}.download-heading{display:grid;align-items:center;gap:8px 14px;grid-template-columns:max-content minmax(0,1fr)}.download-heading h2{margin:0;color:var(--slate-950);font-size:1.6rem;font-weight:750;letter-spacing:-.035em;line-height:1.3}.download-list{display:grid;gap:10px;margin-top:14px}.package-card{--product-accent:var(--blue-600);--product-soft:var(--blue-100);display:grid;min-width:0;gap:3px 12px;padding:10px 12px;grid-template-areas:"main file button" "main status button";grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) max-content;border:1px solid var(--slate-200);border-radius:12px;background:var(--white);box-shadow:inset 0 1px 0 var(--white),0 3px 0 rgba(27,82,150,.04),0 8px 20px rgba(24,56,102,.08);transition:transform 220ms ease,box-shadow 220ms ease,border-color 220ms ease}.package-card--hr{--product-accent:#0d8577;--product-soft:#e6f5f2}.package-main{display:flex;min-width:0;align-items:center;gap:10px;grid-area:main}.product-icon{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;border-radius:9px;color:var(--product-accent);background:var(--product-soft);font-size:.75rem;font-weight:800;letter-spacing:.04em}.package-title{min-width:0}.package-title span,.package-title strong{display:block}.package-title strong{color:var(--slate-950);font-size:1.0625rem;font-weight:750}.package-title span{margin-top:2px;color:var(--slate-500);font-size:.8125rem;line-height:1.65}.package-file{display:flex;min-width:0;align-items:center;gap:7px;grid-area:file;color:var(--slate-500);flex-wrap:wrap;font-size:.8125rem;line-height:1.65}.package-file strong{overflow:hidden;color:var(--slate-700);font-weight:650;text-overflow:ellipsis;white-space:nowrap}.package-file strong::after{margin-left:7px;color:var(--slate-300);content:"·"}.package-file span{white-space:nowrap}.file-status{display:flex;min-width:0;align-items:center;gap:8px;grid-area:status;color:var(--slate-500);font-size:.8125rem;line-height:1.65}.status-dot{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:var(--slate-500)}.file-status[data-state=ready]{color:var(--success)}.file-status[data-state=ready] .status-dot{background:var(--success);box-shadow:0 0 0 4px rgba(22,128,91,.1)}.file-status[data-state=unavailable]{color:var(--danger)}.file-status[data-state=unavailable] .status-dot{background:var(--danger)}.download-button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;align-self:center;gap:7px;padding:0 14px;grid-area:button;border-radius:9px;color:var(--white);background:var(--product-accent);box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 3px 0 rgba(8,34,74,.16),0 10px 20px rgba(35,104,217,.2);font-size:.875rem;font-weight:700;text-decoration:none;text-align:center;white-space:nowrap;transition:background 160ms ease,box-shadow 160ms ease,transform 160ms ease}.download-button:hover{filter:brightness(.92);box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 4px 0 rgba(8,34,74,.16),0 15px 26px rgba(35,104,217,.25);transform:translateY(-3px)}.download-button:active{box-shadow:0 1px 0 rgba(8,34,74,.18),0 5px 12px rgba(35,104,217,.16);transform:translateY(1px)}.download-button:focus-visible{outline:3px solid rgba(35,104,217,.28);outline-offset:4px}.download-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.download-button.is-downloading{pointer-events:none}.download-button.is-unavailable{cursor:not-allowed;box-shadow:none;filter:grayscale(.2);opacity:.58}.download-button.is-unavailable:hover{box-shadow:none;transform:none}.download-tip{margin:0;color:var(--slate-500);font-size:.8125rem;line-height:1.65}.business-section{margin-top:56px;animation:panel-reveal 520ms 80ms cubic-bezier(.2,.65,.3,1) backwards}.section-heading .section-label{margin-bottom:12px;color:var(--blue-600)}.contact-section h2,.section-heading h2{margin:0;font-size:clamp(1.75rem, 3vw, 2.125rem);font-weight:750;letter-spacing:-.025em;line-height:1.35}.section-description{margin:14px 0 0;color:var(--slate-700);font-size:.9375rem;line-height:1.85}.business-grid{display:grid;gap:16px;margin-top:28px;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2,minmax(216px,auto))}.service-card{--service-accent:#3888db;--service-background:linear-gradient(145deg, #eaf1ff, #f6f9ff);position:relative;min-width:0;overflow:hidden;padding:24px;border:1px solid rgba(255,255,255,.8);border-radius:18px;background:var(--service-background);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 3px 0 rgba(27,82,150,.035),0 10px 22px rgba(24,56,102,.055);transition:transform 240ms ease,box-shadow 240ms ease,border-color 240ms ease}.service-card--hr{--service-accent:#339fc5;--service-background:linear-gradient(145deg, #dff5ff, #f0fbff)}.service-card--mes{--service-accent:#8564db;--service-background:linear-gradient(145deg, #eae7ff, #faf4ff)}.service-card--server{--service-accent:#20a99d;--service-background:linear-gradient(145deg, #ddf5f0, #f0fbf8)}.service-card--cctv{--service-accent:#ea995c;--service-background:linear-gradient(145deg, #ffeddf, #fff8f0)}.service-card--dev{--service-accent:#c16ad7;--service-background:linear-gradient(145deg, #f9eaff, #fdf7ff)}.service-card--featured{min-height:440px;padding-bottom:230px;grid-row:span 2}.service-card--featured::after{position:absolute;right:-55px;bottom:-65px;width:260px;height:260px;border:1px solid rgba(255,255,255,.8);border-radius:50%;box-shadow:0 0 0 24px rgba(255,255,255,.17),0 0 0 48px rgba(255,255,255,.12);content:"";pointer-events:none}.service-card h3{position:relative;z-index:2;min-height:54px;margin:0 0 14px;padding-right:60px;color:var(--slate-950);font-size:1.0625rem;font-weight:750;line-height:1.5;text-wrap:balance}.service-card--featured h3{padding-right:0}html[lang=zh-CN] .service-card--featured h3{word-break:keep-all}.service-card p{position:relative;z-index:2;margin:0;color:var(--slate-700);font-size:.875rem;line-height:1.85}.service-illustration{position:absolute;z-index:1;top:12px;right:10px;width:72px;height:72px;object-fit:contain;pointer-events:none;transition:filter 240ms ease}.service-card--featured .service-illustration{top:auto;right:0;bottom:0;width:230px;height:230px;animation:service-icon-float 7s ease-in-out infinite alternate}.service-card--mes .service-illustration{animation-delay:-2.5s}.contact-section{display:grid;align-items:center;gap:40px;margin-top:40px;padding:44px;grid-template-columns:minmax(0,1fr) auto;border-radius:18px;color:var(--white);background:var(--brand-background);box-shadow:0 4px 0 rgba(27,82,150,.07),0 16px 36px rgba(24,56,102,.16);animation:panel-reveal 520ms 160ms cubic-bezier(.2,.65,.3,1) backwards}.contact-content{min-width:0}.contact-section .section-label{margin-bottom:12px}.contact-intro{margin:14px 0 0;color:#c7d4e8;font-size:.9375rem;line-height:1.85}.contact-details{display:grid;gap:16px;margin-top:26px;font-style:normal}.contact-details>div{display:grid;align-items:baseline;gap:6px 14px;grid-template-columns:124px minmax(0,1fr)}.contact-label{color:#c7d9f1;font-size:.8125rem;line-height:1.7}.contact-details a{width:fit-content;color:var(--white);font-size:.9375rem;font-weight:650;line-height:1.7;text-decoration:none;text-underline-offset:4px;overflow-wrap:anywhere}.contact-details a:hover{color:#b8d3ff;text-decoration:underline}.contact-details a:focus-visible{outline:3px solid #8fbaff;outline-offset:5px;border-radius:2px}.external-arrow{margin-left:3px;color:#8fbaff}.contact-qr-list{display:grid;align-items:start;gap:22px;grid-template-columns:repeat(2,minmax(0,180px))}.contact-qr{min-width:0;margin:0;text-align:center}.qr-image-frame{display:grid;width:100%;padding:12px;aspect-ratio:1;place-items:center;border-radius:10px;background:var(--white);box-shadow:0 4px 0 rgba(8,34,74,.16),0 12px 24px rgba(8,34,74,.18);transition:transform 220ms ease,box-shadow 220ms ease}.qr-image-frame img{display:block;width:100%;height:auto}.contact-qr figcaption{display:grid;gap:6px;margin-top:14px}.contact-qr figcaption strong{font-size:.9375rem;font-weight:650}.contact-qr figcaption span{color:#c7d9f1;font-size:.75rem;line-height:1.6}.site-footer{display:flex;min-height:78px;align-items:center;justify-content:space-between;gap:24px;color:var(--slate-500);font-size:.75rem}@keyframes panel-reveal{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes panel-float{from{transform:translate3d(0,0,0) rotate(0)}to{transform:translate3d(-14px,12px,0) rotate(12deg)}}@keyframes service-icon-float{from{transform:translateY(0) rotate(-1deg)}to{transform:translateY(-7px) rotate(1deg)}}@media (hover:hover) and (pointer:fine){.brand:hover .brand-mark{transform:perspective(400px) translateY(-2px) rotateY(-8deg)}.package-card:focus-within,.package-card:hover{border-color:#b9cfee;box-shadow:inset 0 1px 0 var(--white),0 4px 0 rgba(27,82,150,.05),0 16px 28px rgba(24,56,102,.14);transform:perspective(1000px) translateY(-4px) rotateX(1deg)}.service-card:hover{border-color:#b9cfee;box-shadow:inset 0 1px 0 var(--white),0 4px 0 rgba(27,82,150,.05),0 18px 30px rgba(24,56,102,.13);transform:perspective(1000px) translateY(-6px) rotateX(1deg)}.service-card:hover .service-illustration{filter:drop-shadow(0 10px 10px rgba(63, 94, 150, .12))}.contact-qr:hover .qr-image-frame{box-shadow:0 5px 0 rgba(8,34,74,.16),0 18px 28px rgba(8,34,74,.23);transform:translateY(-4px)}}@media (max-width:960px){.page-shell{width:min(100% - 28px,680px)}.download-card{grid-template-columns:1fr}.product-panel{padding:20px 24px}.product-content{display:grid;align-items:start;gap:6px 24px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.product-content>.section-label{margin-bottom:2px;grid-column:1}.product-content h1,.product-summary{grid-column:1}.product-summary{margin-top:4px}.product-specs{margin:0;grid-column:2;grid-row:1/4}.download-panel{padding:20px 24px}.business-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none}.service-card--featured{min-height:0;padding-bottom:24px;grid-row:auto}.service-card--featured::after{display:none}.service-card--featured h3{padding-right:60px}.service-card--featured .service-illustration{top:12px;right:10px;bottom:auto;width:72px;height:72px;animation:none}.contact-section{gap:32px;padding:36px;grid-template-columns:minmax(0,1fr)}.contact-qr-list{justify-content:start}}@media (max-width:560px){.page-shell{width:min(100% - 20px,480px)}.header-content{min-height:64px;gap:10px}.header-actions{width:100%;justify-content:space-between;gap:10px}.language-button{padding-right:9px;padding-left:9px}.brand-copy span{display:none}.network-label{min-height:32px;padding:0 11px;font-size:.8125rem}.download-card{border-radius:14px}.download-panel,.product-panel{padding-right:18px;padding-left:18px}.product-content{display:block}.product-content>.section-label{margin-bottom:8px}.product-summary{margin-top:8px}.product-specs{margin-top:12px}.product-specs div{padding-right:7px}.product-specs div+div{padding-left:9px}.product-specs dd{font-size:.8125rem}.download-panel{padding-top:18px;padding-bottom:18px}.download-heading{gap:6px;grid-template-columns:minmax(0,1fr)}.package-card{gap:5px 10px;grid-template-areas:"main button" "file file" "status status";grid-template-columns:minmax(0,1fr) max-content}.download-button{padding-right:10px;padding-left:10px}.business-section{margin-top:36px}.business-grid{gap:12px;margin-top:22px;grid-template-columns:minmax(0,1fr)}.service-card{padding:24px}.contact-section{margin-top:28px;padding:28px 24px;border-radius:14px}.contact-details>div{gap:4px;grid-template-columns:minmax(0,1fr)}.contact-qr-list{gap:16px;grid-template-columns:repeat(2,minmax(0,180px))}.site-footer{min-height:72px;flex-direction:column;justify-content:center;gap:5px}}@media (max-width:400px){.package-card{grid-template-areas:"main main" "file file" "status button"}.contact-qr-list{justify-content:center;gap:26px;grid-template-columns:minmax(0,200px)}}@media (prefers-reduced-motion:reduce){*,::after,::before{scroll-behavior:auto!important;animation:none!important;transition-duration:0s!important}}