.header[data-v-de81c61a]{z-index:100;-webkit-backdrop-filter:blur(20px);background:#0f172ae0;border-bottom:1px solid #0000;transition:border-color .25s,box-shadow .25s;position:sticky;top:0}.header.scrolled[data-v-de81c61a]{border-bottom-color:var(--c-border);box-shadow:var(--shadow-sm)}.header-inner[data-v-de81c61a]{justify-content:space-between;align-items:center;max-width:1280px;height:64px;margin:0 auto;padding:0 40px;display:flex}.logo[data-v-de81c61a]{color:var(--c-text);flex-shrink:0;align-items:center;gap:10px;font-size:18px;font-weight:700;display:flex}.logo-img[data-v-de81c61a]{object-fit:contain;border-radius:8px;width:36px;height:36px}.nav[data-v-de81c61a]{gap:36px;display:flex}.nav-link[data-v-de81c61a]{color:var(--c-text2);font-size:14px;font-weight:500;transition:color .2s}.nav-link[data-v-de81c61a]:hover,.nav-link.router-link-active[data-v-de81c61a]{color:var(--c-primary)}.menu-toggle[data-v-de81c61a]{background:0 0;border:none;flex-direction:column;gap:5px;padding:4px;display:none}.menu-toggle span[data-v-de81c61a]{background:var(--c-text);border-radius:1px;width:22px;height:2px}.mobile-menu[data-v-de81c61a]{z-index:200;background:#0009;position:fixed;inset:0}.mobile-menu-panel[data-v-de81c61a]{background:var(--c-bg-card);width:280px;height:100%;box-shadow:var(--shadow-lg);flex-direction:column;gap:4px;padding:80px 24px 24px;display:flex;position:absolute;top:0;right:0}.mobile-menu-panel a[data-v-de81c61a]{color:var(--c-text);border-radius:8px;padding:14px 16px;font-size:16px;font-weight:500;transition:all .2s}.mobile-menu-panel a[data-v-de81c61a]:hover{color:var(--c-primary);background:#3b82f61a}@media (width<=768px){.header-inner[data-v-de81c61a]{padding:0 20px}.nav[data-v-de81c61a]{display:none}.menu-toggle[data-v-de81c61a]{display:flex}}.footer[data-v-29019c69]{background:var(--c-surface);border-top:1px solid var(--c-border);padding:64px 40px 32px}.footer-inner[data-v-29019c69]{max-width:1200px;margin:0 auto}.footer-grid[data-v-29019c69]{grid-template-columns:1.5fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px;display:grid}.footer-logo[data-v-29019c69]{color:var(--c-text);align-items:center;gap:10px;margin-bottom:14px;font-size:20px;font-weight:700;display:flex}.footer-logo-img[data-v-29019c69]{border-radius:8px;width:34px;height:34px}.footer-desc[data-v-29019c69]{color:var(--c-text2);margin-bottom:16px;font-size:13px;line-height:1.8}.footer-tel[data-v-29019c69]{color:var(--c-primary);align-items:center;gap:6px;font-size:18px;font-weight:700;transition:color .2s;display:flex}.footer-tel-icon[data-v-29019c69]{flex-shrink:0}.footer-tel[data-v-29019c69]:hover{color:var(--c-accent)}.footer-col h4[data-v-29019c69]{color:var(--c-text);margin:0 0 18px;font-size:14px;font-weight:600}.footer-col a[data-v-29019c69]{color:var(--c-text2);margin-bottom:10px;font-size:13px;transition:color .2s;display:block}.footer-col a[data-v-29019c69]:hover{color:var(--c-primary)}.footer-col p[data-v-29019c69]{color:var(--c-text2);margin:0 0 4px;font-size:13px;line-height:1.7}.footer-contact-name[data-v-29019c69]{color:var(--c-text3)!important;margin-top:8px!important}.footer-bottom[data-v-29019c69]{border-top:1px solid var(--c-border);color:var(--c-text3);justify-content:space-between;align-items:center;padding-top:24px;font-size:13px;display:flex}.footer-bottom p[data-v-29019c69]{margin:0}@media (width<=768px){.footer[data-v-29019c69]{padding:48px 20px 24px}.footer-grid[data-v-29019c69]{grid-template-columns:1fr 1fr;gap:32px}.footer-brand[data-v-29019c69]{grid-column:1/-1}.footer-bottom[data-v-29019c69]{text-align:center;flex-direction:column;gap:8px}}.page-enter-active,.page-leave-active{transition:opacity .2s}.page-enter-from,.page-leave-to{opacity:0}:root{--c-primary:#3b82f6;--c-primary-hover:#2563eb;--c-primary-light:#3b82f624;--c-accent:#60a5fa;--c-accent2:#818cf8;--c-text:#f1f5f9;--c-text2:#cbd5e1;--c-text3:#94a3b8;--c-bg:#0f172a;--c-bg-card:#1e293b;--c-bg-card-hover:#273348;--c-surface:#162133;--c-border:#ffffff14;--c-border-light:#ffffff0d;--radius:12px;--radius-sm:8px;--shadow-sm:0 2px 8px #00000040;--shadow-md:0 4px 16px #0000004d;--shadow-lg:0 12px 40px #00000059;--shadow-glow:0 0 30px #3b82f61f;--shadow-glow-lg:0 0 60px #3b82f62e;--z-base:1;--z-dropdown:10;--z-sticky:20;--z-overlay:30;--z-modal:50}*,:before,:after{box-sizing:border-box}body{color:var(--c-text);background:var(--c-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:"Source Sans 3",-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Noto Sans,Microsoft YaHei,sans-serif;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:Lexend,-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,sans-serif}a{color:inherit;text-decoration:none}img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-webkit-touch-callout:none;max-width:100%;height:auto}button{cursor:pointer;font-family:inherit}:focus-visible{outline:2px solid var(--c-primary);outline-offset:2px;border-radius:4px}a,button,[role=button],.card,[clickable]{cursor:pointer}.container{max-width:1280px;margin:0 auto;padding:0 40px}@media (width<=768px){.container{padding:0 20px}}.page-hero{text-align:left;background:linear-gradient(170deg,#0b1322 0%,#111d34 40%,#162544 70%,#0f1a2e 100%);padding:64px 40px 52px}.hero-inner{max-width:1200px;margin:0 auto}.hero-title{color:var(--c-text);letter-spacing:-.02em;margin-bottom:10px;font-size:34px;font-weight:800}.hero-subtitle{color:var(--c-text2);font-size:15px}@media (width<=768px){.page-hero{padding:40px 20px 32px}.hero-title{font-size:26px}.hero-subtitle{font-size:14px}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.anim-up{animation:.55s ease-out both fadeInUp}.anim-up-1{animation-delay:.1s}.anim-up-2{animation-delay:.2s}.anim-up-3{animation-delay:.3s}.anim-up-4{animation-delay:.4s}.anim-fade{animation:.6s ease-out both fadeIn}.anim-scale{animation:.45s ease-out both scaleIn}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.badge-dot{animation:none!important}}
