:root{--color-brand:#2A6FD8;--color-brand-navy:#1E3A7F;--color-brand-light:#5B94E8;--color-brand-dark:#16306B;--color-white:#ffffff;--color-cream-50:#f7f9fc;--color-cream-100:#ffffff;--color-gray-200:#eef2f7;--color-gray-300:#aab4c0;--color-gray-400:#7b8694;--color-slate-500:#5a6675;--color-charcoal-700:#101a2e;--color-charcoal-800:#15233d;--color-slate-900:#0f1f3d;--color-background:var(--color-cream-50);--color-surface:var(--color-cream-100);--color-text:var(--color-slate-900);--color-text-secondary:var(--color-slate-500);--color-primary:var(--color-brand);--color-primary-hover:#1E5FC0;--color-secondary:rgba(42,111,216,.1);--color-border:rgba(42,111,216,.18);--color-btn-primary-text:#fff;--color-card-border:rgba(42,111,216,.14);--color-focus-ring:rgba(42,111,216,.4);--font-family-base:"FKGroteskNeue","Geist","Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"PingFang TC","Microsoft JhengHei",sans-serif;--font-size-xs:12px;--font-size-sm:13px;--font-size-base:16px;--font-size-lg:18px;--font-size-xl:20px;--font-size-2xl:24px;--font-size-3xl:30px;--font-size-4xl:38px;--font-size-hero:clamp(32px,5.5vw,54px);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.18;--line-height-normal:1.7;--letter-spacing-tight:-.01em;--space-1:1px;--space-2:2px;--space-4:4px;--space-6:6px;--space-8:8px;--space-10:10px;--space-12:12px;--space-16:16px;--space-20:20px;--space-24:24px;--space-32:32px;--space-48:48px;--space-64:64px;--space-80:80px;--radius-sm:8px;--radius-base:10px;--radius-md:12px;--radius-lg:16px;--radius-xl:22px;--radius-full:9999px;--shadow-xs:0 1px 2px rgba(0,0,0,.03);--shadow-sm:0 2px 6px rgba(30,58,127,.06);--shadow-md:0 8px 20px -6px rgba(30,58,127,.12);--shadow-lg:0 18px 40px -12px rgba(30,58,127,.2);--shadow-glow:0 12px 36px rgba(42,111,216,.3);--duration-fast:160ms;--duration-normal:280ms;--ease-standard:cubic-bezier(.16,1,.3,1);--container-lg:1024px;--container-xl:1200px;--color-brand-rgb:42,111,216;--color-success-rgb:42,111,216}@media (prefers-color-scheme:dark){:root{--color-background:#0d1626;--color-surface:#15233d;--color-text:#eef2f7;--color-text-secondary:rgba(170,180,192,.75);--color-primary:var(--color-brand-light);--color-primary-hover:#7aa9ee;--color-secondary:rgba(91,148,232,.16);--color-border:rgba(91,148,232,.28);--color-card-border:rgba(91,148,232,.22);--shadow-glow:0 12px 36px rgba(91,148,232,.28)}}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{font-size:var(--font-size-base);font-family:var(--font-family-base);line-height:var(--line-height-normal);color:var(--color-text);background:var(--color-background);-webkit-font-smoothing:antialiased;scroll-behavior:smooth}body{margin:0;overflow-x:hidden}h1,h2,h3,h4,h5,h6{margin:0;font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--color-text);letter-spacing:var(--letter-spacing-tight)}h1{font-size:var(--font-size-hero)}h2{font-size:var(--font-size-4xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}p{margin:0 0 var(--space-16)}a{color:var(--color-primary);text-decoration:none;transition:color var(--duration-fast) var(--ease-standard)}a:hover{color:var(--color-primary-hover)}img{max-width:100%;display:block}.container{width:100%;max-width:var(--container-xl);margin:0 auto;padding:0 var(--space-24)}.section-title{text-align:center;font-size:var(--font-size-4xl);margin-bottom:var(--space-12);font-weight:var(--font-weight-bold)}.section-subtitle{text-align:center;color:var(--color-text-secondary);max-width:680px;margin:0 auto var(--space-48);font-size:var(--font-size-lg);line-height:1.7}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-8);padding:var(--space-12) var(--space-24);border-radius:var(--radius-base);font-size:var(--font-size-base);font-weight:600;line-height:1.5;cursor:pointer;transition:all var(--duration-normal) var(--ease-standard);border:none;text-decoration:none;position:relative}.btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--color-focus-ring)}.btn--primary{background:linear-gradient(135deg,var(--color-brand-navy),var(--color-brand));color:#fff}.btn--primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-glow)}.btn--primary:active{transform:translateY(0)}.btn--outline{background:#fff0;border:1.5px solid var(--color-border);color:var(--color-text)}.btn--outline:hover{background:var(--color-secondary)}.btn--lg{padding:var(--space-16) var(--space-32);font-size:var(--font-size-lg);border-radius:var(--radius-md)}.btn--full-width{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed}.header{position:sticky;top:0;z-index:100;background:rgb(247 249 252 / .88);backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid var(--color-border)}.language-switcher{display:flex;gap:4px;background:var(--color-secondary);padding:4px;border-radius:var(--radius-full)}.lang-btn{border:none;background:#fff0;color:var(--color-text-secondary);cursor:pointer;padding:7px 14px;border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:600;transition:all var(--duration-fast) var(--ease-standard);font-family:inherit}.lang-btn.active{background:linear-gradient(135deg,var(--color-brand-navy),var(--color-brand));color:#fff}.lang-btn:hover:not(.active){background:rgba(var(--color-brand-rgb),.14);color:var(--color-text)}.nav-menu{display:flex;gap:var(--space-24);align-items:center}.nav-menu a{color:var(--color-text);font-weight:600;font-size:var(--font-size-base);position:relative;padding:4px 0}.nav-menu a::after{content:"";position:absolute;left:0;bottom:-3px;width:0;height:2px;background:linear-gradient(90deg,var(--color-brand-navy),var(--color-brand));transition:width var(--duration-normal) var(--ease-standard)}.nav-menu a:hover{color:var(--color-primary)}.nav-menu a:hover::after{width:100%}.hamburger{display:none;flex-direction:column;gap:4px;background:#fff0;border:none;cursor:pointer;padding:8px}.hamburger span{width:24px;height:2px;background:var(--color-text);border-radius:2px}.header-content{display:flex;align-items:center;justify-content:space-between;padding:var(--space-12) 0}.brand{display:flex;align-items:center;gap:var(--space-12)}.brand-logo{height:58px;width:auto}.logo-section{display:flex;flex-direction:column;line-height:1.1}.company-name-zh{font-size:28px;font-weight:800;color:var(--color-primary)}.company-name-en{font-size:20px;color:var(--color-text-secondary);letter-spacing:.06em;text-transform:uppercase}.hero{position:relative;padding:var(--space-80) 0;background:linear-gradient(135deg,var(--color-brand-navy) 0%,#244a9e 45%,var(--color-brand) 100%);color:#fff;overflow:hidden}.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 22%,rgb(91 148 232 / .4),transparent 45%),radial-gradient(circle at 82% 72%,rgb(42 111 216 / .45),transparent 50%);pointer-events:none}.hero-content{position:relative;z-index:1;max-width:820px}.hero h1{color:#fff;font-weight:800;margin-bottom:var(--space-20);text-shadow:0 2px 24px rgb(0 0 0 / .22)}.hero-subtitle{font-size:var(--font-size-lg);color:rgb(255 255 255 / .92);margin-bottom:var(--space-32);line-height:1.75}.hero-cta-row{display:flex;gap:var(--space-16);flex-wrap:wrap}.hero .btn--primary{background:#fff;color:var(--color-brand-navy)}.hero .btn--primary:hover{background:var(--color-cream-50)}.hero .btn--outline{border-color:rgb(255 255 255 / .55);color:#fff}.hero .btn--outline:hover{background:rgb(255 255 255 / .14)}.hero-badges{display:flex;gap:var(--space-12);flex-wrap:wrap;margin-top:var(--space-28)}.hero-badge{display:inline-flex;align-items:center;gap:6px;background:rgb(255 255 255 / .14);border:1px solid rgb(255 255 255 / .22);padding:8px 16px;border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500;color:#fff}.stats-bar{background:var(--color-surface);border-bottom:1px solid var(--color-border)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-24);padding:var(--space-40) 0;text-align:center}.stat-item .stat-num{font-size:var(--font-size-4xl);font-weight:800;background:linear-gradient(135deg,var(--color-brand-navy),var(--color-brand));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:#fff0;line-height:1}.stat-item .stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-top:var(--space-10)}@media (max-width:768px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-16)}}section{padding:var(--space-80) 0}@media (max-width:768px){section{padding:var(--space-56) 0}}.services{background:var(--color-background)}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-24);margin-top:var(--space-32)}.service-card{background:var(--color-surface);border:1px solid var(--color-card-border);border-radius:var(--radius-lg);padding:var(--space-32);transition:transform var(--duration-normal) var(--ease-standard),box-shadow var(--duration-normal) var(--ease-standard),border-color var(--duration-normal) var(--ease-standard);position:relative;overflow:hidden}.service-card::before{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--color-brand-navy),var(--color-brand-light));transform:scaleX(0);transform-origin:left;transition:transform var(--duration-normal) var(--ease-standard)}.service-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:var(--color-primary)}.service-card:hover::before{transform:scaleX(1)}.service-icon{width:54px;height:54px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgb(30 58 127 / .1),rgb(42 111 216 / .12));color:var(--color-brand);border-radius:var(--radius-md);margin-bottom:var(--space-20)}.service-icon svg{width:30px;height:30px}.service-card h3{font-size:var(--font-size-lg);margin-bottom:var(--space-10);font-weight:var(--font-weight-bold)}.service-card p{margin:0;color:var(--color-text-secondary);font-size:var(--font-size-base);line-height:1.65}.technology{background:var(--color-surface)}.tech-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-24);margin-top:var(--space-32)}.tech-feature{text-align:center;padding:var(--space-40) var(--space-24);background:var(--color-background);border:1px solid var(--color-card-border);border-radius:var(--radius-lg);transition:transform var(--duration-normal) var(--ease-standard),box-shadow var(--duration-normal) var(--ease-standard)}.tech-feature:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.tech-feature .service-icon{margin:0 auto var(--space-20)}.tech-feature h3{font-size:var(--font-size-lg);margin-bottom:var(--space-10);font-weight:var(--font-weight-bold)}.tech-feature p{margin:0;color:var(--color-text-secondary);font-size:var(--font-size-base)}.process{background:linear-gradient(135deg,var(--color-brand-navy),var(--color-brand))}.process .section-title,.process .section-subtitle{color:#fff}.process .section-subtitle{color:rgb(255 255 255 / .85)}.process-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-24);margin-top:var(--space-32)}.process-step{position:relative;background:rgb(255 255 255 / .10);border:1px solid rgb(255 255 255 / .22);border-radius:var(--radius-lg);padding:var(--space-32) var(--space-24);transition:transform var(--duration-normal) var(--ease-standard),box-shadow var(--duration-normal) var(--ease-standard),background var(--duration-normal) var(--ease-standard)}.process-step:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);background:rgb(255 255 255 / .16)}.step-num{font-size:var(--font-size-4xl);font-weight:800;background:linear-gradient(135deg,#fff,#cfe0fb);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:#fff0;line-height:1;margin-bottom:var(--space-12)}.process-step h4{font-size:var(--font-size-lg);margin-bottom:var(--space-8);color:#fff}.process-step p{margin:0;color:rgb(255 255 255 / .82);font-size:var(--font-size-base)}.why{background:var(--color-surface)}.why-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-24);margin-top:var(--space-32)}.why-item{display:flex;gap:var(--space-16);align-items:flex-start;padding:var(--space-24);background:var(--color-background);border:1px solid var(--color-card-border);border-radius:var(--radius-md)}.why-check{flex-shrink:0;width:30px;height:30px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-brand-navy),var(--color-brand));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}.why-item h4{font-size:var(--font-size-base);margin-bottom:4px;font-weight:var(--font-weight-bold)}.why-item p{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.partners{background:var(--color-surface)}.partners-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-24);margin-top:var(--space-32)}.partner-card{display:flex;flex-direction:column;align-items:center;gap:var(--space-12);padding:var(--space-32) var(--space-16);background:var(--color-background);border:1px solid var(--color-card-border);border-radius:var(--radius-lg);transition:transform var(--duration-normal) var(--ease-standard),box-shadow var(--duration-normal) var(--ease-standard),border-color var(--duration-normal) var(--ease-standard)}.partner-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-primary)}.partner-logo{height:56px;display:flex;align-items:center;justify-content:center}.partner-logo .logo-img{max-height:56px;max-width:160px;object-fit:contain}.partner-card h3{font-size:var(--font-size-base);color:var(--color-text);font-weight:600}.faq{background:linear-gradient(135deg,var(--color-brand-navy),var(--color-brand))}.faq .section-title,.faq .section-subtitle{color:#fff}.faq .section-subtitle{color:rgb(255 255 255 / .85)}.faq-list{max-width:820px;margin:var(--space-32) auto 0;display:flex;flex-direction:column;gap:var(--space-16)}.faq-item{background:rgb(255 255 255 / .10);border:1px solid rgb(255 255 255 / .22);border-radius:var(--radius-md);padding:0 var(--space-24);transition:box-shadow var(--duration-normal) var(--ease-standard),background var(--duration-normal) var(--ease-standard)}.faq-item[open]{box-shadow:0 8px 24px -6px rgb(0 0 0 / .28);background:rgb(255 255 255 / .16)}.faq-item summary{cursor:pointer;padding:var(--space-20) 0;font-weight:600;font-size:var(--font-size-lg);list-style:none;position:relative;padding-right:var(--space-32);color:#fff}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);font-size:var(--font-size-2xl);color:#fff;font-weight:400}.faq-item[open] summary::after{content:"−"}.faq-item p{padding:0 0 var(--space-20);color:rgb(255 255 255 / .82);font-size:var(--font-size-base);line-height:1.7}.contact{background:var(--color-surface)}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-48);align-items:start}.contact-info h3{font-size:var(--font-size-2xl);margin-bottom:var(--space-24)}.wechat-section{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-16)}.qr-image{width:190px;height:190px;object-fit:cover;border-radius:var(--radius-md);border:1px solid var(--color-card-border)}.wechat-btn{margin-top:var(--space-4)}.addr-link{color:var(--color-primary);text-decoration:underline;text-underline-offset:3px}.addr-link:hover{color:var(--color-primary-hover)}.contact-form-section h3{font-size:var(--font-size-2xl);margin-bottom:var(--space-24)}.contact-form{display:flex;flex-direction:column;gap:var(--space-16)}.form-group{display:flex;flex-direction:column}.form-control{display:block;width:100%;padding:var(--space-14) var(--space-16);font-size:var(--font-size-base);font-family:inherit;color:var(--color-text);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-base);transition:border-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard)}.form-control:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}textarea.form-control{resize:vertical}.form-message{margin-top:var(--space-12);padding:var(--space-12) var(--space-16);border-radius:var(--radius-base);font-size:var(--font-size-sm);display:none}.form-message.show{display:block}.form-message.success{background:rgba(var(--color-success-rgb),.12);color:var(--color-success);border:1px solid rgba(var(--color-success-rgb),.3)}.form-message.error{background:rgb(192 21 47 / .12);color:#c0152f;border:1px solid rgb(192 21 47 / .3)}.contact-email a{font-weight:600}.join-us{background:var(--color-background)}.join-us-intro{text-align:center;max-width:640px;margin:0 auto var(--space-32);color:var(--color-text-secondary);font-size:var(--font-size-lg)}.jobs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-24);max-width:760px;margin:0 auto}.job-card{background:var(--color-surface);border:1px solid var(--color-card-border);border-radius:var(--radius-lg);padding:var(--space-32);transition:transform var(--duration-normal) var(--ease-standard),box-shadow var(--duration-normal) var(--ease-standard)}.job-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.job-card h4{font-size:var(--font-size-xl);margin-bottom:var(--space-10);font-weight:var(--font-weight-bold)}.job-card p{margin:0 0 var(--space-16);color:var(--color-text-secondary);font-size:var(--font-size-base);line-height:1.65}.job-tag{display:inline-block;font-size:var(--font-size-xs);background:rgba(var(--color-brand-rgb),.12);color:var(--color-brand);padding:5px 12px;border-radius:var(--radius-full);margin-right:6px;margin-bottom:6px;font-weight:500}.footer{background:linear-gradient(135deg,var(--color-brand-dark),var(--color-brand-navy));color:#eef2f7;padding:var(--space-56) 0 var(--space-24)}.footer-content{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-24)}.footer-section h3,.footer-section h4{color:#fff;margin-bottom:var(--space-12);font-size:var(--font-size-base)}.footer-section .company-name-en{color:var(--color-brand-light);font-size:20px}.footer-section p{color:rgb(238 242 247 / .78);font-size:var(--font-size-sm);margin-bottom:6px}.footer-section a{color:var(--color-brand-light);display:block;margin-bottom:6px;font-size:var(--font-size-sm)}.footer-section a.addr-link{color:#fff;text-decoration:underline;text-underline-offset:3px}.footer-section a.addr-link:hover{color:var(--color-brand-light)}.social-links{display:flex;gap:var(--space-12);margin-top:4px}.social-link{width:22px;height:22px;display:flex;align-items:center;justify-content:center;background:#fff0;transition:transform var(--duration-fast) var(--ease-standard)}.social-link svg{width:22px;height:22px;display:block}.social-link:hover{transform:scale(1.15)}.footer-bottom{border-top:1px solid rgb(255 255 255 / .12);margin-top:var(--space-32);padding-top:var(--space-16);text-align:center}.footer-bottom p{color:rgb(238 242 247 / .6);font-size:var(--font-size-sm);margin:0}#snow-canvas{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:60}@media (prefers-reduced-motion:reduce){#snow-canvas{display:none}}.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s var(--ease-standard),transform .6s var(--ease-standard)}.reveal.visible{opacity:1;transform:translateY(0)}.hero-anim{opacity:0;transform:translateY(28px);animation:heroIn .8s var(--ease-standard) forwards}.hero-anim.d1{animation-delay:.12s}.hero-anim.d2{animation-delay:.26s}.hero-anim.d3{animation-delay:.4s}.hero-anim.d4{animation-delay:.54s}@keyframes heroIn{to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.hero-anim{animation:none;opacity:1;transform:none}.reveal{opacity:1;transform:none;transition:none}}@media (max-width:768px){.nav-menu{display:none;position:absolute;top:100%;right:var(--space-16);flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-16);box-shadow:var(--shadow-lg);min-width:200px}.nav-menu.open{display:flex}.hamburger{display:flex}.contact-content{grid-template-columns:1fr;gap:var(--space-32)}.footer-content{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.footer-content{grid-template-columns:1fr}}