/* =========================================================
   聯準科技官網｜全站共用：頁首、頁尾、按鈕（方向 B 科技資安・聯準綠）
   - 類別一律以 nx- 開頭，避免與各頁既有樣式（detail.css、工具頁）衝突
   - 頁首固定於頂端：手機 64px／1024px 以上 80px（各內頁既有留白依此高度設計）
   ========================================================= */
:root{
  --nx-bg:#0A120B;--nx-surface:#101A11;--nx-surface-2:#13200F;
  --nx-line:#24331F;--nx-line-2:#3A4A33;--nx-grid:#152117;
  --nx-text:#E8EEE4;--nx-text-strong:#F7FAF3;--nx-text-2:#CAD5C3;--nx-muted:#9DAD95;
  --nx-brand:#9BCB3B;--nx-brand-btn:#8DC132;--nx-brand-light:#C2E27A;--nx-brand-pale:#CFE8A0;
  --nx-brand-deep:#4A6D05;--nx-on-brand:#0C1A06;--nx-warn:#F2B544;
  --nx-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;
  --nx-sans:"Noto Sans TC",system-ui,-apple-system,"PingFang TC","Microsoft JhengHei",sans-serif;
  --nx-hh:64px;
}
@media (min-width:1024px){:root{--nx-hh:80px}}
html{scroll-padding-top:var(--nx-hh)}

.nx-container{max-width:1240px;margin:0 auto;padding:0 24px}
.nx-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.nx-skip{position:absolute;left:16px;top:-48px;background:var(--nx-brand-btn);color:var(--nx-on-brand);padding:8px 14px;border-radius:8px;z-index:100;font-weight:700;text-decoration:none;font-family:var(--nx-sans)}
.nx-skip:focus{top:12px}

/* ---------- 按鈕 ---------- */
.nx-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 20px;border-radius:8px;font-family:var(--nx-sans);font-size:15px;font-weight:700;line-height:1.2;text-decoration:none;transition:background .2s,border-color .2s,color .2s;white-space:nowrap}
.nx-btn-primary{background:var(--nx-brand-btn);color:var(--nx-on-brand)}
.nx-btn-primary:hover{background:var(--nx-brand-light);color:var(--nx-on-brand)}

/* ---------- 頁首 ---------- */
.nx-header{position:fixed;top:0;left:0;right:0;z-index:50;height:var(--nx-hh);background:rgba(10,18,11,.94);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--nx-line);font-family:var(--nx-sans);line-height:1.5;color:var(--nx-text)}
.nx-header *,.nx-footer *{box-sizing:border-box}
.nx-header-in{display:flex;align-items:center;justify-content:space-between;gap:16px;height:100%}
.nx-brand{display:flex;align-items:center;gap:14px;text-decoration:none;flex:none}
.nx-brand img{display:block;height:44px;width:auto;max-width:none}
@media (min-width:1024px){.nx-brand img{height:50px}}
.nx-brand-text{display:flex;flex-direction:column;line-height:1.25;border-left:1px solid var(--nx-line-2);padding-left:14px}
.nx-brand-text strong{font-size:16px;font-weight:700;color:var(--nx-text-strong)}
.nx-brand-text span{font-family:var(--nx-mono);font-size:11px;color:var(--nx-muted);letter-spacing:1px}
.nx-nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:4px 20px}
.nx-nav a{display:block;padding:10px 0;color:var(--nx-text-2);text-decoration:none;font-size:15px;white-space:nowrap}
.nx-nav a:hover,.nx-has-sub>button:hover{color:var(--nx-brand)}
.nx-nav a[aria-current="page"],.nx-has-sub.is-current>button{color:var(--nx-brand)}
.nx-has-sub{position:relative}
.nx-has-sub>button{background:none;border:0;color:var(--nx-text-2);font:inherit;font-size:15px;padding:10px 0;cursor:pointer;display:flex;align-items:center;gap:4px;white-space:nowrap}
.nx-has-sub>button svg{transition:transform .2s}
.nx-has-sub.open>button svg{transform:rotate(180deg)}
.nx-nav .nx-submenu{position:absolute;top:100%;right:-16px;min-width:270px;background:var(--nx-surface);border:1px solid var(--nx-line);border-radius:10px;padding:8px;display:none;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 16px 40px rgba(0,0,0,.45);z-index:60}
.nx-nav .nx-has-sub.open .nx-submenu{display:flex}
@media (hover:hover) and (min-width:1180px){.nx-nav .nx-has-sub:hover .nx-submenu{display:flex}}
.nx-submenu a{padding:9px 12px;border-radius:6px;font-size:14px}
.nx-submenu a:hover{background:var(--nx-surface-2)}
.nx-submenu a[target="_blank"]::after{content:" ↗";color:var(--nx-muted);font-size:12px}
.nx-header-cta{flex:none}
.nx-nav-toggle{display:none;background:none;border:1px solid var(--nx-line-2);border-radius:8px;width:44px;height:44px;color:var(--nx-text);cursor:pointer;align-items:center;justify-content:center;flex:none;margin-left:auto}

@media (max-width:1179px){
  .nx-nav-toggle{display:inline-flex}
  .nx-header-cta{display:none}
  .nx-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--nx-bg);border-bottom:1px solid var(--nx-line);padding:8px 24px 20px;max-height:calc(100vh - var(--nx-hh));overflow:auto;box-shadow:0 20px 40px rgba(0,0,0,.45)}
  .nx-nav.open{display:block}
  .nx-nav ul{flex-direction:column;align-items:stretch;gap:0}
  .nx-nav li{border-bottom:1px solid var(--nx-line)}
  .nx-nav a,.nx-has-sub>button{padding:14px 0;width:100%;justify-content:space-between}
  .nx-nav .nx-submenu{position:static;display:none;box-shadow:none;border:0;background:transparent;padding:0 0 8px 12px;min-width:0}
  .nx-nav .nx-has-sub.open .nx-submenu{display:flex}
  .nx-nav .nx-submenu li{border-bottom:0}
  .nx-submenu a{padding:10px 12px}
}
@media (max-width:480px){.nx-brand-text{display:none}}

/* ---------- 頁尾 ---------- */
.nx-footer{background:var(--nx-bg);border-top:1px solid var(--nx-line);font-family:var(--nx-sans);font-size:14px;line-height:1.7;color:var(--nx-muted)}
.nx-footer a{color:var(--nx-text-2);text-decoration:none}
.nx-footer a:hover{color:var(--nx-brand)}
.nx-footer ul{list-style:none;margin:0;padding:0}
.nx-footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1.3fr 1.5fr;gap:32px 40px;padding-top:56px;padding-bottom:40px}
.nx-footer-brand img{display:block;height:48px;width:auto;margin-bottom:16px}
.nx-footer-tag{margin:0 0 10px;color:var(--nx-brand-light);font-family:var(--nx-mono);font-size:12.5px;line-height:1.6}
.nx-footer-brand p{margin:0;max-width:34ch}
.nx-footer-h{margin:0 0 14px;font-family:var(--nx-mono);font-size:12.5px;font-weight:600;letter-spacing:1px;color:var(--nx-brand)}
.nx-footer-list li+li{margin-top:8px}
.nx-footer-list a[target="_blank"]::after{content:" ↗";color:var(--nx-muted);font-size:12px}
.nx-footer-contact{margin:0;display:grid;grid-template-columns:auto 1fr;gap:8px 14px}
.nx-footer-contact dt{font-family:var(--nx-mono);font-size:12px;color:var(--nx-muted);padding-top:2px}
.nx-footer-contact dd{margin:0;color:var(--nx-text-2)}
.nx-footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 24px;padding-top:18px;padding-bottom:28px;border-top:1px solid var(--nx-line);font-size:13px}
.nx-footer-bottom ul{display:flex;flex-wrap:wrap;gap:6px 20px}
.nx-footer-bottom a{color:var(--nx-muted)}
@media (max-width:1023px){.nx-footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.nx-footer-grid{grid-template-columns:1fr;padding-top:40px}}

:focus-visible{outline:2px solid var(--nx-brand-light);outline-offset:3px}
@media (prefers-reduced-motion:reduce){.nx-header *,.nx-footer *{transition:none!important}}
@media print{.nx-header,.nx-footer,.nx-skip{display:none!important}}

/* 手機選單底部的「預約諮詢」按鈕（桌機版改用頁首右側按鈕） */
.nx-nav .nx-nav-cta{display:none}
@media (max-width:1179px){
  .nx-nav .nx-nav-cta{display:block;border-bottom:0;padding-top:16px}
  .nx-nav .nx-nav-cta a{display:flex;width:100%;padding:12px 20px;color:var(--nx-on-brand)}
  .nx-nav .nx-nav-cta a:hover{color:var(--nx-on-brand)}
}

/* 頁尾版權列：統一編號 */
.nx-taxid{display:inline-block;margin-left:16px;font-family:var(--nx-mono);font-size:12.5px}
@media (max-width:560px){.nx-taxid{display:block;margin-left:0;margin-top:2px}}
