:root{
  --site-width:1280px;
  --blue:#2f70b7;
  --text:#202020;
  --muted:#666;
  --line:#d8d8d8;
  --footer:#f1f1f1;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:Arial,"Microsoft YaHei",sans-serif;color:var(--text);background:#fff}
html,body{min-width:1280px}
img{display:block;max-width:100%;height:auto}
a{text-decoration:none;color:inherit}
.site-shell{width:1280px;margin:0 auto}

.site-header{background:#f4f4f4;border-bottom:1px solid #e7e7e7}
.site-header,.visual-block,.site-footer{min-width:1280px}
.header-inner{height:130px;display:flex;align-items:center;justify-content:space-between;gap:36px}
.brand{flex:0 0 auto}
.brand img{width:160px;height:auto}
.main-nav{display:flex;align-items:center;justify-content:flex-end;gap:30px;font-size:18px;font-weight:700;white-space:nowrap}
.nav-link{position:relative;padding:10px 2px;color:#1f1f1f}
.nav-link:not(:last-child)::after{content:"|";position:absolute;right:-18px;top:50%;transform:translateY(-50%);color:#858585;font-weight:400}
.nav-link.is-active{color:var(--blue)}

.visual-block{width:100%;overflow:hidden;background:#fff}
.visual-block img{width:100%;height:auto}
.visual-contact img{object-fit:cover;object-position:center}

.content-band{background:#fff;padding:56px 0}
.section-title{font-size:36px;line-height:1.15;font-weight:800;margin:0 auto 34px;border-bottom:1px solid var(--line);padding-bottom:18px}

.about-copy{padding-top:8px}
.about-copy h2{font-size:34px;line-height:1.2;margin:0 0 16px;color:var(--blue)}
.about-copy h3{font-size:31px;line-height:1.35;margin:0 0 28px;color:#111;font-weight:800}
.about-copy p{font-size:22px;line-height:1.9;color:#555;margin:0 0 22px;text-align:left}
.about-factory img{width:100%;height:auto}

.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:54px;margin-top:8px}
.product-card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 8px 24px rgba(0,0,0,.14);text-align:center}
.product-card img{width:100%;aspect-ratio:1.52 / 1;object-fit:cover}
.product-card h3{font-size:26px;line-height:1.25;margin:18px 10px 12px;color:#111}
.product-card h3::after{content:"";display:block;width:72%;height:1px;background:#999;margin:12px auto 0}
.product-card .spec{min-height:38px;font-size:22px;line-height:1.35;padding:0 10px 20px;color:#333}

.news-list{min-height:420px}
.news-card{border-bottom:1px solid #e6e6e6;padding:20px 0 22px}
.news-card h3{font-size:26px;line-height:1.35;margin:0 0 10px;color:#111}
.news-card p,.news-meta{font-size:18px;line-height:1.65;color:#666;margin:0}
.news-content{font-size:18px;line-height:1.75;color:#555;margin-top:10px}
.empty-state{padding:54px 0;color:#999;font-size:20px}

.job-table-wrap{margin-top:8px}
.job-table{width:100%;border-collapse:collapse;font-size:24px;table-layout:fixed}
.job-table th,.job-table td{border:1px solid #e1e1e1;padding:22px 18px;text-align:center;line-height:1.45}
.job-table th:nth-child(1),.job-table td:nth-child(1){width:28%;font-weight:800}
.job-table th:nth-child(2),.job-table td:nth-child(2){width:18%;font-weight:800}
.job-table thead th{background:#828282;color:#fff;font-size:25px}
.job-table tbody tr:nth-child(even){background:#ededed}
.site-footer{background:var(--footer);padding:20px 0}
.footer-inner{display:grid;grid-template-columns:1.35fr 1.1fr 1fr .95fr 1.75fr;gap:20px;align-items:center;font-size:16px;line-height:1.45}
.footer-brand{font-size:18px;font-weight:700}
.footer-en{font-size:12px;color:#555}
.footer-item{white-space:nowrap}
