:root{
  --c1:#e2641a;--c1d:#c2520f;--c2:#24508f;--c2d:#1b3d6e;--c3:#fac334;
  --bg:#f2f5fa;--ink:#333333;--sub:#6b6b6b;--line:#e5eaf2;--card:#ffffff;
}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:"Source Han Sans SC","Microsoft YaHei UI","Microsoft YaHei","PingFang SC",sans-serif;
  background:var(--bg);color:var(--ink);font-size:14px;line-height:1.7;-webkit-text-size-adjust:100%}
img{display:block;max-width:100%;border:0}
a{color:var(--ink);text-decoration:none}
a:hover{color:var(--c1)}
ul,ol{list-style:none}
.wrap{max-width:1180px;margin:0 auto;padding:0 16px}

/* 顶部 */
.top{background:#5b6270;color:#dfe4ee;font-size:12px;height:34px;line-height:34px}
.top .wrap{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.top .l,.top .r{display:flex;gap:16px;align-items:center}
.top a{color:#dfe4ee}
.top a:hover{color:#fff}
.top .city{color:#fff;font-weight:600}

/* 头部 */
.hd{background:var(--card);border-bottom:1px solid var(--line)}
.hd .wrap{display:flex;align-items:center;gap:22px;padding:14px 16px;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:10px;min-width:250px}
.logo img{width:52px;height:52px;flex:none}
.logo>span{display:flex;flex-direction:column;justify-content:center;gap:3px}
.logo .t{font-size:25px;font-weight:700;color:var(--c2);letter-spacing:1px;line-height:1.15;display:block}
.logo .s{font-size:12px;color:var(--sub);letter-spacing:.4px;line-height:1.1;display:block}
.search{flex:1;min-width:320px;display:flex;border:2px solid var(--c1);border-radius:3px;overflow:hidden;background:#fff}
.search input{flex:1;border:0;outline:0;padding:0 12px;height:40px;font-size:14px}
.search select{border:0;border-left:1px solid var(--line);height:40px;padding:0 8px;font-size:13px;color:var(--sub);background:#fff;outline:0}
.search button{border:0;background:var(--c1);color:#fff;width:96px;font-size:15px;cursor:pointer;letter-spacing:2px}
.hdbtns{display:flex;gap:10px}
.btn{display:inline-block;padding:9px 18px;border-radius:3px;font-size:14px;text-align:center}
.btn-o{background:var(--c1);color:#fff}
.btn-o:hover{background:var(--c1d);color:#fff}
.btn-g{background:#fff;color:var(--c2);border:1px solid var(--c2)}
.btn-g:hover{background:var(--c2);color:#fff}

/* 导航 */
.nav{background:var(--c2);position:sticky;top:0;z-index:30}
.nav .wrap{display:flex;align-items:center;justify-content:space-between}
.nav ul{display:flex;flex-wrap:wrap}
.nav li a{display:block;padding:0 22px;height:44px;line-height:44px;color:#fff;font-size:15px}
.nav li a:hover{background:var(--c2d);color:#fff}
.nav li.on a{background:var(--c1);color:#fff}
.nav .hot{color:var(--c3);font-size:13px;padding-right:4px}
.mnav{display:none;height:44px;line-height:44px;color:#fff;padding:0 16px;font-size:15px;cursor:pointer}

/* 通用区块 */
.sec{margin-top:18px;background:var(--card);border:1px solid var(--line);border-radius:4px}
.sec-hd{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 16px;height:46px}
.sec-hd h2{font-size:17px;font-weight:700;color:var(--c2);position:relative;padding-left:12px;line-height:1}
.sec-hd h2::before{content:"";position:absolute;left:0;top:-2px;width:4px;height:16px;background:var(--c1);border-radius:2px}
.sec-hd .tab{display:flex;gap:14px;font-size:13px;color:var(--sub)}
.sec-hd .tab a{color:var(--sub)}
.sec-hd .tab a.on{color:var(--c1);font-weight:600}
.sec-hd .more{font-size:13px;color:var(--sub)}
.sec-bd{padding:16px}

/* 首屏 */
.hero{display:grid;grid-template-columns:236px 1fr 268px;gap:16px;margin-top:16px}
.cats{background:var(--card);border:1px solid var(--line);border-radius:4px}
.cats .t{background:var(--c2);color:#fff;padding:0 14px;height:44px;line-height:44px;font-size:15px;font-weight:600}
.cats ul{padding:8px 0}
.cats li a{display:flex;justify-content:space-between;padding:7px 14px;font-size:13.5px;color:#41474f}
.cats li a:hover{background:#fff6ef;color:var(--c1)}
.cats li .n{color:#a9b0ba;font-size:12px}
.slider{position:relative;border-radius:4px;overflow:hidden;background:#ddd;min-height:344px}
.slide{position:absolute;inset:0;opacity:0;transition:opacity .6s ease}
.slide.on{opacity:1}
.slide img{width:100%;height:100%;object-fit:cover}
.slide .cap{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(180deg,rgba(20,26,36,0),rgba(20,26,36,.86));color:#fff;padding:34px 22px 18px}
.slide .cap b{display:block;font-size:21px;letter-spacing:.5px;margin-bottom:6px}
.slide .cap span{font-size:13px;color:#dfe4ee}
.dots{position:absolute;right:16px;bottom:14px;display:flex;gap:6px;z-index:2}
.dots i{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.5);cursor:pointer}
.dots i.on{background:var(--c3)}
.side{display:flex;flex-direction:column;gap:12px}
.stat{background:var(--c2);color:#fff;border-radius:4px;padding:12px 14px;display:grid;grid-template-columns:1fr 1fr;gap:10px 8px}
.stat div b{display:block;font-size:21px;color:var(--c3);line-height:1.2}
.stat div span{font-size:12px;color:#dcE4f0}
.side .quick{background:var(--card);border:1px solid var(--line);border-radius:4px;padding:12px 14px}
.side .quick h3{font-size:14px;color:var(--c2);margin-bottom:8px}
.side .quick ul li a{display:block;font-size:13px;color:#4a515b;padding:4px 0;border-bottom:1px dashed #eef1f6}
.side .quick ul li a:hover{color:var(--c1)}
.side .ad{background:var(--card);border:1px solid var(--line);border-radius:4px;overflow:hidden}
.side .ad img{width:100%;height:118px;object-fit:cover}
.side .ad p{font-size:13px;padding:8px 12px;color:#4a515b}

/* 首页标题条 */
.leadbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:16px;padding:12px 16px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--c1);border-radius:4px}
.leadbar h1{font-size:17px;font-weight:700;color:var(--c2);letter-spacing:.5px}
.leadbar span{font-size:12.5px;color:var(--sub)}

/* 热门标签 */
.hotbar{margin-top:16px;background:var(--card);border:1px solid var(--line);border-radius:4px;padding:12px 16px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.hotbar b{font-size:13px;color:var(--c1)}
.hotbar a{font-size:13px;color:#4a515b;background:#f6f8fc;border:1px solid #e8edf5;padding:2px 10px;border-radius:12px}
.hotbar a:hover{background:var(--c1);color:#fff;border-color:var(--c1)}

/* 职位列表 */
.two{display:grid;grid-template-columns:1fr 320px;gap:16px;margin-top:16px;align-items:start}
.joblist li{padding:13px 0;border-bottom:1px dashed #e8edf5}
.joblist li:last-child{border:0}
.joblist .r1{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.joblist .r1 a{font-size:15px;font-weight:600;color:#2b2f36}
.joblist .r1 a:hover{color:var(--c1)}
.joblist .sal{color:var(--c1);font-weight:700;font-size:14px;white-space:nowrap}
.joblist .r2{margin-top:5px;font-size:13px;color:var(--sub);display:flex;gap:12px;flex-wrap:wrap}
.joblist .r2 .co{color:#3c4249}
.joblist .r3{margin-top:6px;display:flex;gap:6px;flex-wrap:wrap}
.tg{font-size:12px;color:#7a6a52;background:#fdf6e4;border:1px solid #f6e8bf;padding:1px 8px;border-radius:2px}
.tg.b{color:#3d5a85;background:#eff4fb;border-color:#dbe6f5}

/* 卡片 */
.jobs-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.jcard{border:1px solid var(--line);border-radius:4px;padding:12px 14px;background:#fff;transition:.2s}
.jcard:hover{border-color:#f3c9ae;box-shadow:0 4px 14px rgba(226,100,26,.08)}
.jcard .h{display:flex;justify-content:space-between;gap:10px;align-items:baseline}
.jcard .h a{font-size:15px;font-weight:600;color:#2b2f36}
.jcard .h .sal{color:var(--c1);font-weight:700;white-space:nowrap}
.jcard .m{font-size:13px;color:var(--sub);margin-top:6px}
.jcard .tags{margin-top:8px;display:flex;gap:6px;flex-wrap:wrap}

/* 侧栏排行 */
.rank li{display:flex;gap:10px;align-items:center;padding:9px 0;border-bottom:1px dashed #e8edf5}
.rank .i{width:20px;height:20px;line-height:20px;text-align:center;background:#eef1f6;color:#7c848f;border-radius:2px;font-size:12px;flex:none}
.rank li:nth-child(1) .i{background:var(--c1);color:#fff}
.rank li:nth-child(2) .i{background:#f4a261;color:#fff}
.rank li:nth-child(3) .i{background:#f7c66b;color:#fff}
.rank .n{font-size:13.5px;color:#3c4249;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rank .s{font-size:12px;color:#a9b0ba}
.res li{display:flex;justify-content:space-between;gap:8px;padding:7px 0;border-bottom:1px dashed #e8edf5;font-size:13px}
.res li span:first-child{color:#3c4249}
.res li em{font-style:normal;color:#a9b0ba;font-size:12px}

/* 三列信息块 */
.trio{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin-top:16px}
.trio .box{background:#fff;border:1px solid var(--line);border-radius:4px}
.trio .box .hd{display:flex;justify-content:space-between;align-items:center;padding:0 14px;height:42px;border-bottom:1px solid var(--line);background:#fff}
.trio .box .hd b{font-size:15px;color:var(--c2)}
.trio .box .hd a{font-size:12px;color:#a9b0ba}
.trio .box ul{padding:8px 14px 14px}
.trio .box li{padding:6px 0;font-size:13px;color:#4a515b;border-bottom:1px dashed #f0f3f8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.trio .box li a:hover{color:var(--c1)}

/* 服务 */
.svc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.svc{border:1px solid var(--line);border-radius:4px;overflow:hidden;background:#fff;transition:.2s}
.svc:hover{box-shadow:0 6px 18px rgba(36,80,143,.1);transform:translateY(-2px)}
.svc img{width:100%;height:110px;object-fit:cover}
.svc .b{padding:10px 12px 14px}
.svc .b b{font-size:14px;color:#2b2f36;display:block;margin-bottom:4px}
.svc .b p{font-size:12.5px;color:var(--sub);height:38px;overflow:hidden}
.svc .b .lk{font-size:12.5px;color:var(--c1);margin-top:6px;display:block}

/* 招聘会 / 公告 */
.fair li{display:flex;gap:12px;padding:10px 0;border-bottom:1px dashed #e8edf5;align-items:center}
.fair .d{width:52px;flex:none;text-align:center;background:#eff4fb;border-radius:3px;padding:4px 0}
.fair .d b{display:block;font-size:17px;color:var(--c2);line-height:1.1}
.fair .d span{font-size:11px;color:#7c848f}
.fair .c{flex:1;min-width:0}
.fair .c a{font-size:13.5px;color:#3c4249;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fair .c em{font-style:normal;font-size:12px;color:#a9b0ba}
.notice li{display:flex;gap:8px;padding:8px 0;border-bottom:1px dashed #e8edf5;font-size:13px}
.notice .lb{font-size:11.5px;color:#4d6f9c;background:#eff4fb;padding:0 6px;border-radius:2px;flex:none;height:20px;line-height:20px;margin-top:2px}
.notice .tx{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.notice .dt{color:#a9b0ba;font-size:12px;flex:none}

/* 行业块 */
.inds{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin-top:16px}
.ind{background:#fff;border:1px solid var(--line);border-radius:4px;overflow:hidden}
.ind .t{height:42px;line-height:42px;padding:0 14px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}
.ind .t b{font-size:15px;color:var(--c2)}
.ind .t a{font-size:12px;color:#a9b0ba}
.ind .top{height:96px;overflow:hidden;position:relative}
.ind .top img{width:100%;height:96px;object-fit:cover}
.ind ul{padding:6px 14px 12px}

/* 资讯 */
.news-main li{display:flex;gap:14px;padding:12px 0;border-bottom:1px dashed #e8edf5}
.news-main li:last-child{border:0}
.news-main .th{width:132px;height:84px;flex:none;overflow:hidden;border-radius:3px}
.news-main .th img{width:100%;height:100%;object-fit:cover}
.news-main .tx a{font-size:14.5px;font-weight:600;color:#2b2f36;display:block}
.news-main .tx a:hover{color:var(--c1)}
.news-main .tx p{font-size:13px;color:var(--sub);margin-top:5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.news-main .tx em{font-style:normal;font-size:12px;color:#a9b0ba}

/* 保障条 */
.guard{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:16px}
.guard div{background:#fff;border:1px solid var(--line);border-radius:4px;padding:14px 16px}
.guard b{display:block;font-size:15px;color:var(--c2);margin-bottom:6px}
.guard p{font-size:13px;color:var(--sub)}

/* 页脚 */
.foot{background:#3b424d;color:#b9c1cd;margin-top:22px;padding:26px 0 0}
.foot .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:24px}
.foot h4{color:#fff;font-size:15px;margin-bottom:10px}
.foot p,.foot li{font-size:13px;line-height:2;color:#b9c1cd}
.foot a{color:#b9c1cd}
.foot a:hover{color:#fff}
.foot .bar{border-top:1px solid #4b525d;margin-top:18px;padding:12px 0;font-size:12px;color:#8d95a2;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}

/* 面包屑与内页头 */
.crumb{font-size:13px;color:var(--sub);padding:14px 0 0}
.crumb a{color:var(--sub)}
.crumb a:hover{color:var(--c1)}
.ph{position:relative;margin-top:14px;border-radius:4px;overflow:hidden;height:180px;background:#22303f}
.ph img{width:100%;height:100%;object-fit:cover;opacity:.62}
.ph .t{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;padding:0 26px;color:#fff}
.ph .t h1{font-size:26px;letter-spacing:1px;text-shadow:0 2px 8px rgba(0,0,0,.35)}
.ph .t p{font-size:13px;color:#e7ecf4;margin-top:8px;max-width:720px}

/* 正文 */
.page{display:grid;grid-template-columns:1fr 320px;gap:16px;margin-top:16px;align-items:start}
.panel{background:#fff;border:1px solid var(--line);border-radius:4px}
.panel .bd{padding:18px 22px}
.panel .hd{padding:0 22px;height:46px;line-height:46px;border-bottom:1px solid var(--line);font-size:16px;font-weight:700;color:var(--c2)}
.art h1{font-size:24px;line-height:1.5;color:#20242a;font-weight:700}
.art .meta{display:flex;gap:14px;font-size:13px;color:#a9b0ba;margin:10px 0 16px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:12px}
.art .lead{background:#f8fafd;border-left:3px solid var(--c2);padding:12px 14px;font-size:14px;color:#3c4249;margin-bottom:18px}
.art figure{margin:16px 0}
.art figure img{border-radius:3px;width:100%}
.art h2{font-size:18px;color:var(--c2);margin:24px 0 10px;padding-left:10px;border-left:4px solid var(--c1)}
.art p{font-size:14.5px;line-height:1.95;color:#3a3f46;margin-bottom:12px;text-align:justify}
.art .tail{margin-top:22px;font-size:13px;color:var(--sub);border-top:1px dashed #e8edf5;padding-top:14px}

/* 表格 */
.tbl{width:100%;border-collapse:collapse;font-size:13.5px;margin:6px 0 14px}
.tbl th,.tbl td{border:1px solid var(--line);padding:9px 12px;text-align:left}
.tbl th{background:#f5f8fc;color:var(--c2);font-weight:600;width:150px}
.tbl thead th{width:auto}
.tbl tr:hover td{background:#fbfcfe}

/* 列表方格 */
.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:8px 0 6px}
.step{border:1px solid var(--line);border-radius:3px;padding:12px 10px;background:#fafbfe}
.step b{display:block;font-size:13.5px;color:var(--c1);margin-bottom:4px}
.step p{font-size:12.5px;color:var(--sub);line-height:1.7}
.ulist li{font-size:13.5px;color:#3a3f46;padding:6px 0 6px 14px;position:relative}
.ulist li::before{content:"";position:absolute;left:0;top:13px;width:5px;height:5px;background:var(--c1);border-radius:1px}
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:10px 0}
.plan{border:1px solid var(--line);border-radius:4px;padding:14px;background:#fff}
.plan .n{font-size:15px;color:var(--c2);font-weight:700}
.plan .p{font-size:20px;color:var(--c1);font-weight:700;margin:6px 0 4px}
.plan .d{font-size:12px;color:#a9b0ba;margin-bottom:8px}
.plan .f{font-size:12.5px;color:#4a515b;line-height:1.8}
.faq{border-top:1px solid var(--line)}
.faq .q{padding:12px 0;border-bottom:1px dashed #e8edf5}
.faq .q b{font-size:14px;color:#2b2f36}
.faq .q p{font-size:13.5px;color:var(--sub);margin-top:5px;margin-bottom:0}

/* 筛选 */
.filter{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line);background:#fbfcfe}
.filter select,.filter input{border:1px solid var(--line);height:34px;padding:0 8px;font-size:13px;color:#3a3f46;background:#fff;border-radius:3px;outline:0}
.filter input{width:200px}
.filter button{height:34px;border:0;background:var(--c2);color:#fff;padding:0 18px;border-radius:3px;cursor:pointer;font-size:13.5px}
.filter .cnt{font-size:12.5px;color:#a9b0ba;margin-left:auto}

/* 404 */
.err{padding:60px 0 70px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:4px;margin-top:16px}
.err .code{font-size:86px;color:var(--c2);font-weight:700;letter-spacing:6px;line-height:1}
.err h1{font-size:20px;color:#2b2f36;margin:14px 0 8px}
.err p{font-size:14px;color:var(--sub);max-width:640px;margin:0 auto 18px}
.err .lk{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.err .hot{margin-top:22px;font-size:13px;color:var(--sub)}
.err .hot a{color:var(--c2);margin:0 6px}

/* 分页 */
.pager{display:flex;gap:6px;justify-content:center;padding:18px 0}
.pager a,.pager span{min-width:32px;height:32px;line-height:32px;text-align:center;border:1px solid var(--line);border-radius:3px;font-size:13px;color:#4a515b;padding:0 8px}
.pager .cur{background:var(--c1);color:#fff;border-color:var(--c1)}

/* 响应式 */
@media (max-width:1080px){
  .hero{grid-template-columns:210px 1fr}
  .hero .side{display:none}
  .two,.page{grid-template-columns:1fr}
  .svc-grid{grid-template-columns:repeat(2,1fr)}
  .trio,.inds{grid-template-columns:1fr 1fr}
  .guard{grid-template-columns:1fr 1fr}
  .jobs-grid{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr 1fr}
  .plans{grid-template-columns:1fr}
}
@media (max-width:760px){
  html,body{overflow-x:hidden}
  .top{height:auto;line-height:1.9;padding:6px 0}
  .top .wrap{justify-content:flex-start}
  .top .l{flex-wrap:wrap;gap:8px 12px;font-size:12px}
  .top .r{display:none}
  .hd .wrap{flex-direction:column;align-items:stretch;padding:10px 12px;gap:10px}
  .logo{min-width:0}
  .logo img{width:40px;height:40px}
  .logo .t{font-size:20px}
  .logo .s{display:none}
  .search{min-width:0;width:100%;order:0}
  .search button{width:76px}
  .hdbtns{display:none}
  .sec-hd{height:auto;padding:10px 12px;flex-wrap:wrap;gap:6px 10px}
  .sec-hd .tab{flex-wrap:wrap;gap:10px}
  .joblist .r1{flex-wrap:wrap;gap:4px}
  .joblist .r2{gap:8px}
  .nav ul{display:none}
  .nav .wrap{display:flex;flex-direction:column;align-items:stretch}
  .mnav{display:block}
  .nav ul.open{display:flex;flex-direction:column;padding-bottom:8px}
  .nav li a{padding:0 14px;height:40px;line-height:40px;font-size:14px}
  .hero{grid-template-columns:1fr}
  .cats ul{display:grid;grid-template-columns:1fr 1fr}
  .slider{min-height:220px}
  .slide .cap b{font-size:16px}
  .trio,.inds,.svc-grid,.guard,.steps,.plans{grid-template-columns:1fr}
  .foot .cols{grid-template-columns:1fr 1fr;gap:16px}
  .sec-bd{padding:12px}
  .panel .bd{padding:14px}
  .art h1{font-size:20px}
  .ph{height:150px}
  .ph .t h1{font-size:20px}
  .news-main .th{width:104px;height:70px}
  .filter input{width:100%}
}
