/* newdevhk · 版式 DNA 對標 reed.co.uk（4px 圓角 / 1px 邊框 / 零陰影 / 粗體大標） */
:root{--navy:#0A2342;--navy-2:#081C36;--ink:#0F151A;--body:#313131;--muted:#5A6672;
--line:#D8DCE0;--line-2:#C8C8C8;--accent:#C8102E;--accent-2:#2B3BEE;--bg:#fff;--bg-2:#F5F6F7;--r:4px;--w:1280px;
--font:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang HK","Microsoft JhengHei","Noto Sans TC",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:var(--font);font-size:16px;line-height:24px;color:var(--body);background:var(--bg)}
a{color:var(--navy);text-decoration:none}a:hover{text-decoration:underline}
h1,h2,h3,h4{margin:0;color:var(--ink);font-weight:700}h1{font-size:32px;line-height:44px}h2{font-size:32px;line-height:38px}
.wrap{max-width:var(--w);margin:0 auto;padding:0 24px}
.ic{width:19px;height:19px;flex:none;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.ic.sm{width:16px;height:16px}.ic.lg{width:24px;height:24px}
.topbar{position:sticky;top:0;z-index:60;background:#fff;border-bottom:1px solid var(--line-2)}
.topbar-in{max-width:var(--w);margin:0 auto;padding:0 24px;height:60px;display:flex;align-items:center;gap:24px}
.brand{display:flex;align-items:baseline;gap:2px;font-weight:700;font-size:21px;color:var(--navy);white-space:nowrap}
.brand span{color:var(--accent)}.brand i{font-style:normal;font-size:11px;font-weight:500;color:var(--muted)}
.nav{display:flex;align-items:center;gap:22px;height:100%}
.nav a{height:100%;display:flex;align-items:center;gap:7px;font-size:15.5px;font-weight:500;color:var(--ink);border-bottom:3px solid transparent;padding-top:3px}
.nav a:hover{text-decoration:none;color:var(--accent)}.nav a[aria-current="page"]{border-bottom-color:var(--accent);font-weight:600}
.topbar-r{margin-left:auto;display:flex;align-items:center;gap:16px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:38px;padding:0 14px;border-radius:var(--r);
border:1px solid var(--navy);background:transparent;color:var(--navy);font:inherit;font-size:15.5px;font-weight:500;cursor:pointer}
.btn:hover{text-decoration:none;background:#F0F3F7}.btn.solid{background:var(--accent);border-color:var(--accent);color:#fff}
.btn.solid:hover{background:#A80D26}.tlink{font-size:15.5px;font-weight:500;color:var(--ink);display:inline-flex;align-items:center;gap:6px}
.crumb{background:var(--bg-2);border-bottom:1px solid var(--line)}
.crumb .wrap{padding:12px 24px;font-size:13.5px;color:var(--muted);display:flex;gap:8px;flex-wrap:wrap}
.crumb a{color:var(--muted)}
section{padding:44px 0}section.alt{background:var(--bg-2)}
.sec-h{text-align:center;margin-bottom:6px}.sec-h h2{font-size:32px}
.sec-h p{margin:10px auto 0;max-width:640px;color:var(--muted);font-size:15.5px}
.sec-bar{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}.sec-bar h2{margin-right:auto}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.chips a{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line-2);border-radius:var(--r);padding:9px 15px;font-size:15px;color:var(--ink);background:#fff}
.chips a:hover{border-color:var(--accent);color:var(--accent);text-decoration:none}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:26px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px}
.pcard{border:1px solid var(--line);border-radius:var(--r);background:#fff;overflow:hidden;display:flex;flex-direction:column}
.pcard .thumb{position:relative;aspect-ratio:16/8.6;overflow:hidden;background:#E9EDF1}
.pcard .thumb img{width:100%;height:100%;object-fit:cover;display:block}
.pcard .thumb .tag{position:absolute;left:12px;bottom:12px;display:inline-flex;align-items:center;gap:6px;background:rgba(10,35,66,.92);color:#fff;font-size:12.5px;font-weight:600;border-radius:2px;padding:4px 9px}
.pcard .bd{padding:18px 20px 20px;display:flex;flex-direction:column;gap:10px;flex:1}
.pcard h3{font-size:19px;line-height:25px}
.pcard h3 a{color:var(--ink)}
.pcard .desc{margin:0;font-size:14.5px;color:var(--muted);line-height:22px}
.pcard ul{margin:2px 0 0;padding:0;list-style:none;font-size:14.5px;line-height:22px;display:flex;flex-direction:column;gap:8px}
.pcard ul a{display:inline-flex;align-items:flex-start;gap:8px;color:var(--navy)}
.pcard ul a .ic{margin-top:2px;color:var(--accent)}
.pcard .foot{margin-top:auto;padding-top:12px;border-top:1px solid var(--line);display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}
.pcard .foot .go{margin-left:auto;color:var(--accent);font-weight:600;display:inline-flex;align-items:center;gap:4px}
/* 表格（職位） */
.tblwrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:#fff;margin-top:22px}
table{width:100%;border-collapse:collapse;font-size:14.5px;min-width:820px}
th,td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
th{background:var(--bg-2);font-size:13px;color:var(--muted);font-weight:700;white-space:nowrap}
tbody tr:hover{background:#FAFBFC}
td.num{font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap}
.pill{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line-2);border-radius:2px;padding:2px 7px;font-size:12.5px;color:var(--ink);white-space:nowrap}
.pill.amber{border-color:#E4B363;color:#8A5B00;background:#FFF8E8}
.pill.navy{background:var(--navy);border-color:var(--navy);color:#fff}
/* 詳情卡 */
.jobcard{border:1px solid var(--line);border-radius:var(--r);background:#fff;margin-top:16px}
.jobcard>summary{cursor:pointer;padding:14px 18px;display:flex;align-items:center;gap:12px;font-weight:600;color:var(--ink);list-style:none}
.jobcard>summary::-webkit-details-marker{display:none}
.jobcard>summary .cv{margin-left:auto;color:var(--accent);font-weight:600;font-size:14px;display:inline-flex;align-items:center;gap:5px}
.jobcard[open]>summary{border-bottom:1px solid var(--line)}
.jobcard .jc{padding:16px 18px 20px}
.kv{display:grid;grid-template-columns:132px 1fr;gap:9px 16px;font-size:14.5px;margin:0}
.kv dt{color:var(--muted);font-size:13.5px}.kv dd{margin:0;color:var(--ink)}
/* 官方原文塊 */
.src-block{border:1px solid var(--line);border-radius:var(--r);background:#fff;margin-top:14px}
.src-block>summary{cursor:pointer;padding:12px 16px;display:flex;align-items:flex-start;gap:10px;font-size:14.5px;font-weight:600;color:var(--navy);list-style:none}
.src-block>summary::-webkit-details-marker{display:none}
.src-block>summary .meta{margin-left:auto;font-size:12.5px;color:var(--muted);font-weight:400;white-space:nowrap}
.src-block .body{padding:4px 20px 20px;border-top:1px solid var(--line);font-size:14.5px;line-height:24px;color:var(--body);white-space:pre-wrap}
.src-block .body h4{margin:14px 0 6px;font-size:15px;color:var(--ink)}
/* 更新列表 */
.updates{border-top:1px solid var(--line);margin-top:18px}
.upd{display:grid;grid-template-columns:104px 116px 1fr 96px;gap:16px;align-items:baseline;padding:14px 4px;border-bottom:1px solid var(--line);font-size:15px}
.upd .d{color:var(--muted);font-variant-numeric:tabular-nums;font-size:14px;display:inline-flex;align-items:center;gap:6px}
.upd .dept{font-weight:600;color:var(--ink);font-size:14px}
.upd .t a{color:var(--ink);font-weight:500}
.upd .src{text-align:right;font-size:13px;color:var(--muted)}
.upd .src a{color:var(--accent);font-weight:600}
/* KPI */
.cols3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.kbox{border:1px solid var(--line);border-radius:var(--r);padding:20px;background:#fff}
.kbox .kh{display:flex;align-items:center;gap:9px;color:var(--navy)}.kbox h3{font-size:17px}
.kbox .big{font-size:34px;font-weight:700;color:var(--navy);line-height:1.15;margin:8px 0 6px;font-variant-numeric:tabular-nums}
.kbox p{margin:0;font-size:14.5px;color:var(--muted);line-height:22px}
/* 文章卡 */
.artgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:24px}
.art{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:#fff;display:flex;flex-direction:column}
.art .thumb{position:relative;aspect-ratio:16/9;overflow:hidden;background:#E9EDF1}
.art .thumb img{width:100%;height:100%;object-fit:cover;display:block}
.art .thumb .k{position:absolute;left:14px;bottom:12px;display:inline-flex;align-items:center;gap:6px;background:rgba(10,35,66,.92);color:#fff;font-size:12px;font-weight:600;border-radius:2px;padding:3px 8px}
.art .bd{padding:16px 18px 18px}
.art .meta{font-size:12.5px;color:var(--muted);margin-bottom:6px;display:flex;align-items:center;gap:7px}
.art h3{font-size:18px;line-height:25px;margin-bottom:8px}.art h3 a{color:var(--ink)}
.art p{margin:0;font-size:14.5px;color:var(--muted);line-height:22px}
/* 頁腳 */
footer{background:#fff;border-top:1px solid var(--line-2);padding:42px 0 26px;margin-top:26px}
.fgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:24px}
.fgrid h4{display:flex;align-items:center;gap:7px;font-size:12px;letter-spacing:.7px;color:var(--muted);margin-bottom:12px}
.fgrid ul{list-style:none;margin:0;padding:0;font-size:14px;line-height:26px}.fgrid a{color:var(--body)}
.legal{margin-top:30px;padding-top:16px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted);line-height:21px}
.legal p{margin:0 0 8px}
.note{background:#FFF8E8;border:1px solid #E4B363;border-radius:var(--r);padding:12px 16px;font-size:14px;color:#6B4700;margin-top:18px}
/* Hero 視頻背景（MP4 循環，手機與 prefers-reduced-motion 降級為海報圖） */
.hero{position:relative;overflow:hidden}
.hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.hero-veil{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(10,35,66,.94) 0%,rgba(10,35,66,.80) 34%,rgba(10,35,66,.30) 62%,rgba(10,35,66,.06) 100%)}
@media (max-width:900px){
 .hero-media{display:none}
 .hero{background-image:url("/assets/brand/hero-poster.jpg")!important;background-size:cover;background-position:center}
 .hero-veil{background:linear-gradient(180deg,rgba(10,35,66,.80) 0%,rgba(10,35,66,.92) 60%,rgba(10,35,66,.96) 100%)}
}
@media (prefers-reduced-motion: reduce){.hero-media{display:none}}
/* Logo */
.blogo{height:34px;width:34px;object-fit:contain;border-radius:4px;display:block}
/* 職位頁：現代卡片式（篩選 + 就地展開，取代表格與錨點） */
.jbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:18px;padding:14px;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.jbar input{flex:1;min-width:220px;height:42px;border:1px solid var(--line-2);border-radius:var(--r);padding:0 12px;font:inherit;font-size:15px}
.jbar select{height:42px;border:1px solid var(--line-2);border-radius:var(--r);padding:0 10px;font:inherit;font-size:14.5px;background:#fff}
.jbar .cnt{margin-left:auto;color:var(--muted);font-size:13.5px}
.jlist{display:flex;flex-direction:column;gap:10px;margin-top:16px}
.jitem{border:1px solid var(--line);border-radius:var(--r);background:#fff;transition:box-shadow .18s ease,transform .18s ease,border-color .18s ease}
.jitem:hover{border-color:#B9C2CC;box-shadow:0 4px 14px rgba(10,35,66,.08);transform:translateY(-1px)}
.jitem[open]{border-color:var(--navy);box-shadow:0 6px 20px rgba(10,35,66,.12)}
.jitem>summary{cursor:pointer;padding:14px 16px;list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.jitem>summary::-webkit-details-marker{display:none}
.jt{font-size:17px;font-weight:600;color:var(--ink);flex:1;min-width:180px}
.jt .jid{font-weight:400;font-size:13px;color:var(--muted);margin-left:8px;font-variant-numeric:tabular-nums}
.jc{display:flex;flex-wrap:wrap;gap:6px}
.jc .chip{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line-2);border-radius:999px;padding:3px 10px;font-size:12.5px;color:var(--body);white-space:nowrap}
.jc .chip.amber{border-color:#E4B363;background:#FFF8E8;color:#8A5B00;font-weight:600}
.jc .chip.navy{background:var(--navy);border-color:var(--navy);color:#fff}
.jitem .jbody{padding:4px 16px 18px;border-top:1px solid var(--line);animation:jfade .22s ease}
@keyframes jfade{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.jitem .jbody h4{margin:16px 0 8px;font-size:14.5px;color:var(--navy)}
.jempty{padding:26px;border:1px dashed var(--line-2);border-radius:var(--r);text-align:center;color:var(--muted);background:#fff}
@media (prefers-reduced-motion: reduce){.jitem,.jitem .jbody{animation:none;transition:none}}
/* WhatsApp 浮窗 */
.wa{position:fixed;right:18px;bottom:18px;z-index:90;display:inline-flex;align-items:center;gap:9px;background:#25D366;color:#fff;
 border-radius:999px;padding:11px 17px;font-size:14.5px;font-weight:600;text-decoration:none;box-shadow:0 6px 22px rgba(0,0,0,.24)}
.wa:hover{background:#1EBE5A;text-decoration:none;color:#fff}
.wa svg{width:21px;height:21px;fill:#fff;flex:none}
@media (max-width:560px){.wa span{display:none}.wa{padding:14px;right:14px;bottom:14px}}
/* 頁腳公司信息 */
.flogo{display:flex;align-items:center;gap:11px;margin-bottom:14px}
.flogo img{height:42px;width:auto;display:block}
.flogo b{font-size:17px;color:var(--navy)}
.fco{margin-top:28px;padding-top:18px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:18px;font-size:13.5px;color:var(--muted);line-height:22px}
.fco b{color:var(--ink);display:block;margin-bottom:4px;font-size:14px}
@media (max-width:900px){.fco{grid-template-columns:1fr}}
@media (max-width:980px){
 .nav{display:none}.grid-2,.grid-3,.artgrid,.cols3{grid-template-columns:1fr}
 .fgrid{grid-template-columns:repeat(2,1fr)}.upd{grid-template-columns:96px 1fr;gap:6px 12px}.upd .src{display:none}
 section{padding:34px 0}.kv{grid-template-columns:1fr;gap:2px 0}.kv dt{margin-top:10px}
}
@media (max-width:560px){h1{font-size:26px;line-height:34px}h2,.sec-h h2{font-size:23px;line-height:30px}.wrap{padding:0 16px}}
