*{box-sizing:border-box;margin:0;padding:0}:root{--red:#d10a10;--ink:#1c1c1e;--muted:#6b7075;--line:#e6e8eb;--bg:#fff}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;font-family:Microsoft YaHei,PingFang SC,Helvetica Neue,Arial,sans-serif}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}.site{flex-direction:column;min-height:100vh;display:flex}.muted{color:var(--muted);font-size:14px}.site-header{border-bottom:1px solid var(--line);z-index:50;background:#fff;position:sticky;top:0}.header-inner{align-items:flex-start;gap:40px;max-width:1400px;margin:0 auto;padding:18px 32px 14px;display:flex}.header-left{flex-direction:column;align-items:flex-start;gap:14px;display:flex}.brand{align-items:center;gap:12px;min-width:300px;display:flex}.logo-mark{background:var(--red);color:#fff;letter-spacing:1px;clip-path:polygon(0 0,100% 0,100% 76%,86% 100%,0 100%);justify-content:center;align-items:center;width:58px;height:46px;font-size:17px;font-weight:800;display:flex}.logo-text{flex-direction:column;line-height:1.25;display:flex}.logo-text strong{letter-spacing:1px;font-size:26px;font-weight:800}.logo-text small{color:var(--muted);letter-spacing:2.4px;font-size:10px}.main-nav{align-items:center;gap:44px;margin-left:auto;padding-top:12px;font-size:19px;font-weight:700;display:flex}.main-nav a{white-space:nowrap;padding-bottom:4px;position:relative}.main-nav a:after{content:"";background:var(--red);width:0;height:3px;transition:width .22s,left .22s;position:absolute;bottom:-2px;left:50%}.main-nav a:hover{color:var(--red)}.main-nav a:hover:after{width:100%;left:0}.lang-box{position:relative}.lang-select{color:#333;white-space:nowrap;background:#f1f2f4;border:1px solid #e3e5e8;border-radius:999px;align-items:center;gap:10px;padding:8px 18px;font-size:14px;display:flex}.lang-select:hover{background:#e9ebee}.lang-menu{border:1px solid var(--line);z-index:60;background:#fff;border-radius:10px;min-width:140px;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 10px 30px #0000001a}.lang-menu li{cursor:pointer;border-radius:6px;padding:9px 12px;font-size:14px}.lang-menu li:hover{background:#f4f5f7}.lang-menu li.on{color:var(--red);font-weight:700}.red-line{background:var(--red);height:4px}.page{flex:1;width:100%;max-width:1400px;margin:0 auto;padding:30px 32px 60px}.carousel{aspect-ratio:1400/520;background:#e9edf1;position:relative;overflow:hidden}.carousel.empty{color:var(--muted);justify-content:center;align-items:center;display:flex}.track{height:100%;transition:transform .6s cubic-bezier(.4,0,.2,1);display:flex}.slide{min-width:100%;height:100%;position:relative}.slide img{object-fit:cover;width:100%;height:100%;display:block}.slide-caption{color:#fff;background:linear-gradient(#0000,#0000008c);padding:60px 44px 28px;position:absolute;bottom:0;left:0;right:0}.slide-caption h3{letter-spacing:1px;font-size:34px;font-weight:800}.slide-caption p{opacity:.9;margin-top:8px;font-size:16px}.car-btn{color:#fff;background:#14161a6b;border:none;width:52px;height:76px;font-size:40px;line-height:1;transition:background .2s;position:absolute;top:50%;transform:translateY(-50%)}.car-btn:hover{background:#14161aad}.car-btn.prev{left:0}.car-btn.next{right:0}.dots{justify-content:center;gap:8px;display:flex;position:absolute;bottom:14px;left:0;right:0}.dots button{background:#ffffff8c;border:none;border-radius:999px;width:9px;height:9px;padding:0;transition:all .2s}.dots button.on{background:#fff;width:24px}.section{padding-top:62px}.section-title{letter-spacing:1px;margin-bottom:28px;font-size:40px;font-weight:800}.biz-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.biz-card{border:1px solid var(--line);background:#fff;border-radius:4px;flex-direction:column;gap:12px;padding:30px 28px 26px;transition:box-shadow .25s,transform .25s,border-color .25s;display:flex}.biz-card:hover{border-color:#d8dade;transform:translateY(-4px);box-shadow:0 16px 40px #00000017}.biz-icon{font-size:34px}.biz-icon-img{object-fit:contain;border-radius:4px;width:44px;height:44px}.biz-card h3{font-size:21px;font-weight:800}.biz-card p{color:var(--muted);flex:1;font-size:14.5px;line-height:1.8}.biz-card .more{color:var(--red);font-size:14px;font-weight:700}.about-lead{color:var(--red);letter-spacing:3px;margin-bottom:14px;font-size:13px;font-weight:700}.about-text{color:#3c4045;text-align:justify;max-width:1080px;font-size:16px;line-height:2.05}.stats{grid-template-columns:repeat(4,1fr);gap:18px;margin-top:34px;display:grid}.stat{border-left:3px solid var(--red);background:#f6f7f9;padding:26px 22px}.stat strong{color:var(--red);font-size:40px;font-weight:800;display:block}.stat span{color:var(--muted);font-size:14px}.tech-grid{grid-template-columns:repeat(4,1fr);gap:22px;display:grid}.tech-card{border-top:3px solid var(--ink);padding-top:18px}.tech-card .num{color:var(--red);letter-spacing:2px;font-size:13px;font-weight:800}.tech-card h3{margin:10px 0;font-size:19px;font-weight:800}.tech-card p{color:var(--muted);font-size:14px;line-height:1.85}.news-list{border-top:1px solid var(--line)}.news-item{border-bottom:1px solid var(--line);gap:34px;padding:22px 6px;transition:background .2s;display:flex}.news-item:hover{background:#fafbfc}.news-item:hover h3{color:var(--red)}.news-item time{color:var(--red);min-width:108px;padding-top:3px;font-size:15px;font-weight:800}.news-item h3{font-size:18.5px;font-weight:700}.news-item p{color:var(--muted);margin-top:7px;font-size:14px;line-height:1.75}.pager{justify-content:center;align-items:center;gap:16px;padding-top:24px;display:flex}.pager button{border:1px solid var(--line);background:#fff;border-radius:3px;padding:8px 18px;font-size:14px}.pager button:disabled{opacity:.4;cursor:not-allowed}.pager button:not(:disabled):hover{border-color:var(--red);color:var(--red)}.pager span{color:var(--muted);font-size:14px}.job-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.job-card{border:1px solid var(--line);flex-direction:column;gap:10px;padding:24px 24px 22px;transition:box-shadow .25s;display:flex}.job-card:hover{box-shadow:0 14px 34px #00000014}.job-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.job-card h3{font-size:19px;font-weight:800}.job-card .tag{color:var(--red);white-space:nowrap;background:#fdecec;border-radius:3px;padding:4px 10px;font-size:12px}.job-card p{color:var(--muted);font-size:14px}.job-apply{color:var(--red);font-size:14px;font-weight:700}.contact-box{grid-template-columns:repeat(2,minmax(0,560px));gap:18px 40px;display:grid}.contact-row{background:#f6f7f9;align-items:flex-start;gap:14px;padding:18px 20px;display:flex}.contact-row span{font-size:20px}.contact-row p{font-size:15.5px;line-height:1.7}.load-error{color:var(--red);margin-top:30px}.site-footer{color:#9aa0a6;text-align:center;background:#17181a;flex-direction:column;gap:8px;padding:30px 20px;font-size:13.5px;display:flex}@media (width<=1180px){.header-inner{flex-wrap:wrap;gap:18px}.brand{min-width:auto}.main-nav{gap:26px;width:100%;margin-left:0;padding-top:4px;font-size:17px;overflow-x:auto}.biz-grid,.job-grid,.tech-grid,.stats{grid-template-columns:repeat(2,1fr)}.section-title{font-size:32px}}@media (width<=720px){.page{padding:18px 16px 40px}.biz-grid,.job-grid,.tech-grid,.stats,.contact-box{grid-template-columns:1fr}.slide-caption h3{font-size:24px}.news-item{flex-direction:column;gap:6px}.logo-text small{display:none}}.login-wrap{background:#f2f3f5;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{background:#fff;border:1px solid #e6e8eb;border-radius:8px;flex-direction:column;gap:16px;width:380px;padding:36px 32px 28px;display:flex;box-shadow:0 18px 50px #00000012}.login-card h1{font-size:22px;font-weight:800}.login-card .sub{color:#8a9096;margin-top:-8px;font-size:13px}.login-card .back{text-align:center;color:#8a9096;font-size:13px}.login-card .back:hover{color:#d10a10}.err{color:#d10a10;font-size:13px}.f{flex-direction:column;flex:1;gap:6px;margin-bottom:14px;display:flex}.f>span{color:#5c6166;font-size:13px;font-weight:600}.f input,.f textarea{color:#1c1c1e;resize:vertical;background:#fff;border:1px solid #dcdfe3;border-radius:5px;padding:9px 11px;font-family:inherit;font-size:14px}.f input:focus,.f textarea:focus{border-color:#d10a10;outline:none}.f small{color:#999;font-size:12px}.f-row{align-items:flex-start;gap:14px;display:flex}.f-row .f{margin-bottom:0}.img-preview{border:1px solid #e6e8eb;border-radius:5px;max-width:180px;margin-top:18px}.img-line{align-items:center;gap:8px;display:flex}.img-line input{flex:1;min-width:0}.file-btn{white-space:nowrap;cursor:pointer;margin-top:0;position:relative;overflow:hidden}.file-btn input[type=file]{opacity:0;cursor:pointer;position:absolute;inset:0}.file-btn.busy{opacity:.6;cursor:wait}.err-txt{color:#d10a10;font-size:12.5px}.hint{color:#8a9096;margin:-6px 0 12px;font-size:13px}.warn-bar{color:#8c6d1f;background:#fff7e6;border:1px solid #ffd591;border-radius:6px;margin-bottom:18px;padding:11px 14px;font-size:14px}.warn-bar code{background:#ffecc2;border-radius:3px;padding:1px 6px}.warn-bar button{color:#d10a10;background:0 0;border:none;margin-left:6px;font-size:14px;font-weight:700;text-decoration:underline}.modal-mask{z-index:90;background:#0f101273;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:8px;flex-direction:column;gap:14px;width:400px;padding:28px 28px 24px;display:flex;box-shadow:0 24px 60px #00000040}.modal h3{font-size:18px;font-weight:800}.modal .err{color:#d10a10;margin-top:-6px;font-size:13px}.modal-ops{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.btn{color:#1c1c1e;background:#fff;border:1px solid #dcdfe3;border-radius:5px;padding:9px 18px;font-size:14px;font-weight:600;transition:all .18s}.btn:hover{border-color:#b9bdc3}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.primary{color:#fff;background:#d10a10;border-color:#d10a10}.btn.primary:hover:not(:disabled){background:#b4090e}.btn.ghost{background:#fff}.btn.ghost:hover{color:#d10a10;border-color:#d10a10}.btn.wide{width:100%;padding:11px}.btn.add{color:#5c6166;border-style:dashed;width:100%;padding:11px}.btn.add:hover{color:#d10a10;border-color:#d10a10}.admin{background:#f2f3f5;flex-direction:column;min-height:100vh;display:flex}.admin-top{color:#fff;z-index:40;background:#17181a;justify-content:space-between;align-items:center;height:58px;padding:0 20px;display:flex;position:sticky;top:0}.brand-mini{align-items:center;gap:12px;font-size:15px;font-weight:700;display:flex}.logo-mark.mini{color:#fff;clip-path:polygon(0 0,100% 0,100% 76%,86% 100%,0 100%);background:#d10a10;justify-content:center;align-items:center;width:40px;height:32px;font-size:13px;font-weight:800;display:flex}.top-ops{align-items:center;gap:10px;display:flex}.admin-body{flex:1;align-items:stretch;display:flex}.side{background:#fff;border-right:1px solid #e6e8eb;flex-direction:column;gap:4px;width:190px;min-height:calc(100vh - 58px);padding:16px 10px;display:flex}.side button{text-align:left;color:#3c4045;background:0 0;border:none;border-radius:6px;padding:11px 14px;font-size:14.5px;position:relative}.side button:hover{background:#f4f5f7}.side button.on{color:#d10a10;background:#fdecec;font-weight:700}.side .dot{background:#d10a10;border-radius:50%;width:7px;height:7px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.panel{flex:1;max-width:980px;padding:26px 30px 60px}.panel-head{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.panel-head h2{font-size:22px;font-weight:800}.list-editor{margin-bottom:26px}.list-head{align-items:center;gap:12px;margin-bottom:12px;display:flex}.list-head strong{font-size:15px}.list-head .count{color:#999;background:#eceef1;border-radius:999px;padding:2px 9px;font-size:12.5px}.item-card{background:#fff;border:1px solid #e6e8eb;border-radius:7px;margin-bottom:14px;padding:16px 18px}.item-bar{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.item-bar em{color:#999;font-size:13px;font-style:normal;font-weight:700}.item-ops{gap:8px;display:flex}.item-ops button{background:#fff;border:1px solid #dcdfe3;border-radius:4px;padding:5px 12px;font-size:13px}.item-ops button:hover:not(:disabled){border-color:#1c1c1e}.item-ops button:disabled{opacity:.4;cursor:not-allowed}.item-ops .danger{color:#d10a10}.item-ops .danger:hover{background:#fdecec;border-color:#d10a10}.str-row{gap:10px;margin-bottom:10px;display:flex}.str-row input{border:1px solid #dcdfe3;border-radius:5px;flex:1;padding:9px 11px;font-size:14px}.str-row button{color:#d10a10;background:#fff;border:1px solid #dcdfe3;border-radius:5px;padding:0 16px;font-size:13px}.str-row button:hover{border-color:#d10a10}.toast{color:#fff;z-index:100;border-radius:6px;max-width:420px;padding:13px 22px;font-size:14px;animation:.22s pop;position:fixed;bottom:30px;right:30px;box-shadow:0 14px 34px #0000002e}.toast.ok{background:#1f9d55}.toast.err{background:#d10a10}@keyframes pop{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (width<=860px){.admin-body{flex-direction:column}.side{border-bottom:1px solid #e6e8eb;border-right:none;flex-direction:row;width:100%;min-height:auto;overflow-x:auto}.panel{padding:20px 16px 50px}.top-ops .btn{padding:7px 12px;font-size:13px}}
