/* =========================================================
   布局  layout.css
   ========================================================= */
body{display:flex;flex-direction:column;min-height:100vh}
.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 var(--gutter)}
.container-narrow{max-width:900px}

/* ---------- 动态背景层 ---------- */
.tech-bg{position:fixed;inset:0;z-index:-2;overflow:hidden;background:radial-gradient(1200px 600px at 80% -10%,rgba(124,77,255,.12),transparent 60%),radial-gradient(900px 500px at 0% 100%,rgba(0,212,255,.10),transparent 55%),var(--page-bg)}
.tech-bg canvas{position:absolute;inset:0;width:100%;height:100%}
.bg-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(0,212,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(0,212,255,.05) 1px,transparent 1px);background-size:42px 42px;mask-image:radial-gradient(1200px 700px at 50% 0,#000 30%,transparent 75%)}
.bg-aurora{position:absolute;left:50%;top:-20%;width:900px;height:900px;transform:translateX(-50%);background:radial-gradient(circle,rgba(0,212,255,.10),transparent 60%);filter:blur(60px);animation:auroraFloat 14s ease-in-out infinite}

/* ---------- 头部 ---------- */
.site-header{position:sticky;top:0;z-index:100;backdrop-filter:blur(var(--nav-blur));-webkit-backdrop-filter:blur(var(--nav-blur));background:var(--nav-bg);border-bottom:1px solid var(--line);transition:box-shadow .3s}
.site-header.scrolled{box-shadow:0 6px 30px rgba(0,0,0,.5)}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:72px}
.logo{display:flex;align-items:center;gap:12px}
.logo-mark{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,var(--primary),var(--accent));color:#041018;font-weight:800;letter-spacing:1px;font-family:"Consolas",monospace;box-shadow:var(--glow-primary)}
.logo-text{font-size:19px;font-weight:700;color:var(--text-1);display:flex;flex-direction:column;line-height:1.15}
.logo-text em{font-style:normal;font-size:9px;letter-spacing:3px;color:var(--primary);font-family:"Consolas",monospace}

/* 导航 */
.main-nav .nav-list{display:flex;align-items:center;gap:4px}
.nav-list li a{display:block;padding:9px 18px;border-radius:var(--r-full);font-size:15px;color:var(--text-2);transition:color .25s,background .25s,box-shadow .25s}
.nav-list li a:hover{color:var(--primary)}
.nav-list li.active a{color:#03101a;background:linear-gradient(135deg,var(--primary),var(--accent));font-weight:600;box-shadow:var(--glow-primary)}
.nav-toggle{display:none;flex-direction:column;gap:5px;padding:8px}
.nav-toggle span{width:24px;height:2px;background:var(--text-1);border-radius:2px;transition:transform .3s,opacity .3s}
.nav-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle.open span:nth-child(2){opacity:0}
.nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ---------- 主区（弹性撑开，footer 贴底） ---------- */
.site-main{flex:1 0 auto;min-height:60vh}

/* ---------- 通用区块 ---------- */
.section{padding:74px 0;position:relative}
.section-head{margin-bottom:44px;text-align:center}
.section-title{font-size:30px;color:var(--text-1);letter-spacing:1px}
.section-title .accent{color:var(--primary);font-family:"Consolas",monospace;font-size:15px;letter-spacing:3px;vertical-align:middle;margin-left:8px}
.section-sub{color:var(--text-3);margin-top:10px;font-size:14px;letter-spacing:1px}

/* 区块毛玻璃（后台 blocks 可调） */
.hero{backdrop-filter:blur(var(--block-hero-blur,12px));-webkit-backdrop-filter:blur(var(--block-hero-blur,12px));background:var(--block-hero-bg,rgba(7,12,28,.6))}
.section-cards{backdrop-filter:blur(var(--block-cards-blur,10px));-webkit-backdrop-filter:blur(var(--block-cards-blur,10px));background:var(--block-cards-bg,rgba(10,16,34,.5))}
.section-intro{backdrop-filter:blur(var(--block-intro-blur,9px));-webkit-backdrop-filter:blur(var(--block-intro-blur,9px));background:var(--block-intro-bg,rgba(12,20,42,.48))}
.cta-band{backdrop-filter:blur(var(--block-cta-blur,10px));-webkit-backdrop-filter:blur(var(--block-cta-blur,10px));background:var(--block-cta-bg,rgba(8,14,30,.52))}
.page-hero{backdrop-filter:blur(var(--block-pagehero-blur,10px));-webkit-backdrop-filter:blur(var(--block-pagehero-blur,10px));background:var(--block-pagehero-bg,rgba(9,15,32,.55))}

/* ---------- 页脚 ---------- */
.site-footer{flex-shrink:0;border-top:1px solid var(--line);background:rgba(5,9,20,.85);padding:34px 0;position:relative;margin-top:60px}
.footer-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px}
.footer-links{display:flex;flex-wrap:wrap;gap:8px 20px;color:var(--text-2)}
.footer-links a{transition:color .2s}
.footer-links a:hover{color:var(--primary)}
.footer-contact{color:var(--primary)}
.copy-info{color:var(--text-3);font-size:13px}
