
:root{
  --bg:#0a0e13; --panel:#111820; --panel2:#0d131b; --line:#202c3a; --line2:#2a3a4c;
  --txt:#d8e0ea; --sub:#8b9aad; --dim:#5c6b7d;
  --primary:#2dd4a7; --blue:#4d9fff; --warn:#ff8a3d;
  --mono:'JetBrains Mono','Consolas','Courier New',monospace;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--txt);font-family:'Segoe UI','Microsoft YaHei',system-ui,sans-serif;line-height:1.75;font-size:15px}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
/* ---------- header ---------- */
.site-header{position:sticky;top:0;z-index:100;background:rgba(10,14,19,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.nav-bar{display:flex;justify-content:space-between;align-items:center;padding:14px 24px}
.brand{display:flex;align-items:center;gap:12px}
.brand-mark{width:42px;height:42px;border:2px solid var(--primary);color:var(--primary);font-family:var(--mono);font-weight:700;display:flex;align-items:center;justify-content:center;clip-path:polygon(0 0,100% 0,100% 78%,78% 100%,0 100%)}
.brand-text{font-size:19px;font-weight:700;letter-spacing:2px;display:flex;flex-direction:column;line-height:1.2}
.brand-text em{font-style:normal;font-family:var(--mono);font-size:9px;color:var(--dim);letter-spacing:1px}
nav ul{display:flex;list-style:none;gap:6px}
nav a{display:block;padding:8px 14px;font-size:14px;color:var(--sub);border:1px solid transparent;transition:.2s}
nav a:hover{color:var(--primary);border-color:var(--line2)}
nav a.active{color:var(--primary);border-color:var(--primary);background:rgba(45,212,167,.06)}
/* ---------- hero ---------- */
.hero{position:relative;background:
  linear-gradient(rgba(24,34,46,.55),rgba(10,14,19,.94)),
  url('../img/aerial.jpg') center/cover no-repeat;
  padding:120px 0 150px;clip-path:polygon(0 0,100% 0,100% 92%,0 100%)}
.hero::after{content:'';position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(45,212,167,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(45,212,167,.05) 1px,transparent 1px);background-size:44px 44px}
.hero .wrap{position:relative;z-index:2}
.kicker{font-family:var(--mono);color:var(--primary);font-size:12px;letter-spacing:3px;margin-bottom:18px;display:flex;align-items:center;gap:10px}
.kicker::before{content:'';width:34px;height:2px;background:var(--primary)}
.hero h1{font-size:56px;line-height:1.15;font-weight:900;letter-spacing:2px;max-width:820px}
.hero h1 em{font-style:normal;color:var(--primary)}
.hero .lead{margin:22px 0 34px;max-width:700px;color:var(--sub);font-size:17px}
.hero .lead b{color:var(--txt)}
.btn{display:inline-block;padding:13px 32px;font-size:14px;letter-spacing:1px;border:1px solid var(--primary);color:var(--primary);background:transparent;transition:.25s;position:relative}
.btn:hover{background:var(--primary);color:#06130e}
.btn-solid{background:var(--primary);color:#06130e;border-color:var(--primary)}
.btn-line{border-color:var(--blue);color:var(--blue)}
.btn-line:hover{background:var(--blue);color:#061018}
/* ---------- sections ---------- */
section{padding:84px 0}
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:40px;border-bottom:1px solid var(--line);padding-bottom:18px}
.sec-head h2{font-size:30px;font-weight:800;letter-spacing:1px}
.sec-head h2 span{color:var(--primary)}
.sec-head .no{font-family:var(--mono);color:var(--dim);font-size:13px;letter-spacing:2px}
.section-sub{color:var(--sub);font-size:14px;max-width:720px}
/* stats */
.stats{background:var(--panel2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:0}
.stats .grid{display:grid;grid-template-columns:repeat(4,1fr)}
.stat{padding:34px 24px;border-right:1px solid var(--line);text-align:center}
.stat:last-child{border-right:none}
.stat .num{font-family:var(--mono);font-size:40px;font-weight:700;color:var(--primary)}
.stat .lbl{font-size:13px;color:var(--sub);margin-top:6px;letter-spacing:1px}
/* cards */
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.card{background:var(--panel);border:1px solid var(--line);padding:26px;position:relative;transition:.25s;overflow:hidden}
.card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--primary);opacity:0;transition:.25s}
.card:hover{transform:translateY(-4px);border-color:var(--line2)}
.card:hover::before{opacity:1}
.card .no{font-family:var(--mono);color:var(--dim);font-size:12px;letter-spacing:2px}
.card h3{font-size:18px;margin:10px 0 8px;color:var(--txt)}
.card p{font-size:13.5px;color:var(--sub)}
.card .tag{display:inline-block;margin-top:12px;font-family:var(--mono);font-size:11px;color:var(--primary);border:1px solid var(--line2);padding:3px 10px}
/* products */
.prod-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.prod-card{background:var(--panel);border:1px solid var(--line);overflow:hidden;transition:.25s;position:relative}
.prod-card:hover{transform:translateY(-5px);border-color:var(--primary)}
.prod-card .ph{position:relative;aspect-ratio:4/3;overflow:hidden}
.prod-card .ph img{width:100%;height:100%;object-fit:cover;transition:.4s}
.prod-card:hover .ph img{transform:scale(1.05)}
.prod-card .idx{position:absolute;top:12px;left:12px;background:rgba(10,14,19,.85);border:1px solid var(--line2);font-family:var(--mono);font-size:11px;color:var(--primary);padding:3px 8px}
.prod-card .info{padding:16px 18px 18px}
.prod-card .info h3{font-size:17px}
.prod-card .info .spec{font-family:var(--mono);font-size:12px;color:var(--warn);margin-top:4px}
.prod-card .info p{font-size:13px;color:var(--sub);margin-top:8px}
/* news list */
.news-list{display:flex;flex-direction:column;gap:0}
.news-item{display:flex;align-items:center;gap:22px;padding:18px 20px;border:1px solid var(--line);border-bottom:none;transition:.2s;background:var(--panel)}
.news-item:last-child{border-bottom:1px solid var(--line)}
.news-item:hover{background:var(--panel2);border-color:var(--line2)}
.news-item .date{font-family:var(--mono);color:var(--dim);font-size:12px;white-space:nowrap;width:110px}
.news-item .cat{font-family:var(--mono);font-size:11px;color:var(--blue);border:1px solid var(--line2);padding:2px 8px;white-space:nowrap}
.news-item h3{font-size:16px;flex:1;font-weight:600}
.news-item:hover h3{color:var(--primary)}
/* about page */
.about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:start}
.info-table{width:100%;border-collapse:collapse;font-size:14px}
.info-table td{border:1px solid var(--line);padding:12px 16px}
.info-table td:first-child{width:150px;color:var(--sub);font-family:var(--mono);font-size:12px;letter-spacing:1px;background:var(--panel2)}
.info-table td:last-child{color:var(--txt)}
.about-img{border:1px solid var(--line);overflow:hidden;margin-bottom:20px}
.about-img img{width:100%;object-fit:cover}
/* product detail */
.detail-grid{display:grid;grid-template-columns:480px 1fr;gap:40px;align-items:start}
.detail-img{border:1px solid var(--line);overflow:hidden;position:sticky;top:90px}
.detail-img img{width:100%;aspect-ratio:4/3;object-fit:cover}
.spec-table{width:100%;border-collapse:collapse;font-size:14px;margin:16px 0 26px}
.spec-table td{border:1px solid var(--line);padding:11px 16px}
.spec-table td:first-child{width:170px;color:var(--sub);font-family:var(--mono);font-size:12px;background:var(--panel2)}
.pager{display:flex;justify-content:space-between;gap:14px;margin-top:34px;padding-top:20px;border-top:1px solid var(--line);font-size:14px}
.pager a{color:var(--primary);font-family:var(--mono);font-size:13px}
/* article (news detail) */
.article{background:var(--panel);border:1px solid var(--line);padding:44px 52px}
.article h1{font-size:28px;margin-bottom:14px}
.article .meta{font-family:var(--mono);color:var(--dim);font-size:12px;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:24px;letter-spacing:1px}
.article p{margin-bottom:18px;color:var(--sub);font-size:15px;line-height:2}
.article p:first-of-type{color:var(--txt)}
/* page hero */
.page-hero{background:linear-gradient(135deg,#101a26 0%,#0a0e13 70%);border-bottom:1px solid var(--line);padding:70px 0;clip-path:polygon(0 0,100% 0,100% 88%,0 100%)}
.page-hero h1{font-size:38px;font-weight:800;letter-spacing:2px}
/* contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.contact-card{background:var(--panel);border:1px solid var(--line);padding:30px}
.contact-card h3{font-size:17px;margin-bottom:16px;color:var(--primary);font-family:var(--mono);letter-spacing:1px}
.contact-card p{margin-bottom:10px;font-size:14px;color:var(--sub)}
.contact-card p b{color:var(--txt)}
/* footer */
.site-footer{background:#070a0e;border-top:1px solid var(--line);padding:52px 0 0;margin-top:40px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1.2fr 1fr;gap:40px;padding-bottom:40px}
.footer-grid h4{font-size:15px;margin-bottom:14px;color:var(--primary);letter-spacing:1px}
.footer-grid p{font-size:13px;color:var(--sub);margin-bottom:8px}
.footer-grid a:hover{color:var(--primary)}
.footer-bottom{border-top:1px solid var(--line);padding:20px 24px;text-align:center;font-size:12.5px;color:var(--dim)}
.footer-bottom .support{margin-top:6px;color:#47566a;font-size:12px}
/* cta */
.cta{background:linear-gradient(120deg,#0f1a24,#0d221b);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.cta h2{font-size:26px;font-weight:800}
.cta p{color:var(--sub);margin-top:6px;font-size:14px}
/* pager */
.pager-nav{display:flex;justify-content:center;gap:10px;margin-top:36px;flex-wrap:wrap}
.pager-nav a{border:1px solid var(--line2);padding:8px 18px;font-family:var(--mono);font-size:13px;color:var(--sub);transition:.2s}
.pager-nav a:hover,.pager-nav a.cur{background:var(--primary);color:#06130e;border-color:var(--primary)}
/* responsive */
@media(max-width:980px){
  .grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}
  .prod-grid{grid-template-columns:repeat(2,1fr)}
  .detail-grid{grid-template-columns:1fr}
  .detail-img{position:static}
  .about-grid{grid-template-columns:1fr}
  .contact-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr;gap:24px}
  .hero h1{font-size:38px}
  .nav-bar{flex-direction:column;gap:10px}
  nav ul{flex-wrap:wrap;justify-content:center}
}
@media(max-width:600px){
  .grid-4,.grid-3,.prod-grid{grid-template-columns:1fr}
  .stats .grid{grid-template-columns:1fr 1fr}
  .hero{padding:80px 0 110px}
  .hero h1{font-size:30px}
  .article{padding:26px 22px}
  .news-item{flex-wrap:wrap;gap:8px}
  .news-item .date{width:auto}
}
