[data-theme=dark]{--bg-primary:#0c0b0a;--bg-secondary:#0f0e0d;--bg-surface:#141312;--bg-card:#181716;--bg-elevated:#1e1d1b;--text-primary:#f4f4f5;--text-secondary:#a1a1aa;--text-tertiary:#52525b;--accent:#c9a96e;--accent-hover:#d4b87a;--accent-dim:#a88b4f;--accent-subtle:#c9a96e14;--border-color:#1c1c22;--border-light:#27272a;--overlay:#000000b3;--noise-opacity:.025}[data-theme=light]{--bg-primary:#faf9f7;--bg-secondary:#f5f2ed;--bg-surface:#f0ece6;--bg-card:#ebe7e1;--bg-elevated:#e5e0d9;--text-primary:#1a1a1a;--text-secondary:#6b6b6b;--text-tertiary:#9a9a9a;--accent:#c9a96e;--accent-hover:#d4b87a;--accent-dim:#a88b4f;--accent-subtle:#c9a96e1f;--border-color:#e5e1db;--border-light:#ddd8d0;--overlay:#0000004d;--noise-opacity:.012}:root{--font-display:"Noto Serif SC", "Songti SC", Georgia, serif;--font-sans:"DM Sans", "PingFang SC", -apple-system, BlinkMacSystemFont, sans-serif;--font-name:"Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:2rem;--font-size-4xl:2.5rem;--font-size-5xl:3.5rem;--font-size-6xl:5rem;--section-padding:140px 0;--container-max:1400px;--container-padding:0 48px;--transition-fast:.2s cubic-bezier(.22, 1, .36, 1);--transition-base:.4s cubic-bezier(.22, 1, .36, 1);--transition-slow:.7s cubic-bezier(.22, 1, .36, 1);--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:28px}@media (width<=1024px){:root{--container-padding:0 24px;--section-padding:100px 0;--font-size-5xl:2.8rem;--font-size-6xl:3.2rem;--font-size-4xl:2rem}}@media (width<=640px){:root{--container-padding:0 16px;--section-padding:80px 0;--font-size-5xl:2.2rem;--font-size-6xl:2.4rem;--font-size-4xl:1.75rem}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);font-size:var(--font-size-base);color:var(--text-primary);background-color:var(--bg-primary);line-height:1.7;overflow-x:hidden}body:before{content:"";z-index:9998;pointer-events:none;opacity:var(--noise-opacity);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.5' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:256px 256px;position:fixed;inset:0}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}ul,ol{list-style:none}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}.container{max-width:var(--container-max);padding:var(--container-padding);margin:0 auto}.section{padding:var(--section-padding);position:relative}.section-label{font-family:var(--font-sans);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.18em;color:var(--accent);margin-bottom:16px;font-weight:600}.section-title{font-family:var(--font-display);font-size:var(--font-size-4xl);letter-spacing:-.01em;color:var(--text-primary);margin-bottom:20px;font-weight:700;line-height:1.25}.section-subtitle{font-size:var(--font-size-lg);color:var(--text-secondary);max-width:600px;margin-bottom:60px;font-weight:400;line-height:1.7}.text-accent{color:var(--accent)}.divider{background:linear-gradient(90deg, transparent 0%, var(--border-color) 15%, var(--border-color) 85%, transparent 100%);width:100%;height:1px;margin:0}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--bg-elevated);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}::selection{background:var(--accent);color:var(--bg-primary)}.filter-tag{font-size:var(--font-size-sm);color:var(--text-secondary);background:var(--bg-card);border:1px solid var(--border-color);cursor:pointer;transition:var(--transition-fast);border-radius:100px;padding:6px 18px;font-weight:500}.filter-tag:hover{color:var(--text-primary);border-color:var(--accent-dim)}.filter-tag.active{color:var(--bg-primary);background:var(--accent);border-color:var(--accent);font-weight:600}.blog-empty{text-align:center;color:var(--text-tertiary);font-size:var(--font-size-lg);padding:80px 0}.scroll-reveal{opacity:0;filter:blur(4px);transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1),filter .9s cubic-bezier(.22,1,.36,1);transform:translateY(40px)scale(.98)}.scroll-reveal.visible{opacity:1;filter:blur();transform:translateY(0)scale(1)}.stagger-children>.scroll-reveal:first-child{transition-delay:0s}.stagger-children>.scroll-reveal:nth-child(2){transition-delay:80ms}.stagger-children>.scroll-reveal:nth-child(3){transition-delay:.16s}.stagger-children>.scroll-reveal:nth-child(4){transition-delay:.24s}.stagger-children>.scroll-reveal:nth-child(5){transition-delay:.32s}.stagger-children>.scroll-reveal:nth-child(6){transition-delay:.4s}.stagger-children>.scroll-reveal:nth-child(7){transition-delay:.48s}.stagger-children>.scroll-reveal:nth-child(8){transition-delay:.56s}.navbar{z-index:1000;transition:var(--transition-base);padding:16px 0;position:fixed;top:0;left:0;right:0}.navbar:before{content:"";background:var(--bg-primary);-webkit-backdrop-filter:blur(24px)saturate(1.4);border-bottom:1px solid var(--border-color);pointer-events:none;opacity:.85;position:absolute;inset:0}.navbar-inner{z-index:1;justify-content:space-between;align-items:center;display:flex;position:relative}.navbar-logo{align-items:center;display:flex}.logo-mark{background:var(--accent);width:36px;height:36px;color:var(--bg-primary);font-size:var(--font-size-xs);letter-spacing:.05em;border-radius:var(--radius-sm);transition:var(--transition-fast);justify-content:center;align-items:center;font-weight:700;display:flex}.logo-mark:hover{filter:brightness(1.15)}.navbar-links{align-items:center;gap:4px;display:flex}.nav-link{font-size:var(--font-size-sm);color:var(--text-secondary);border-radius:var(--radius-sm);transition:var(--transition-fast);letter-spacing:.02em;padding:8px 16px;font-weight:500;position:relative}.nav-link:before{content:"";border-radius:inherit;background:var(--accent-subtle);opacity:0;transition:var(--transition-fast);position:absolute;inset:0;transform:scale(.85)}.nav-link:hover:before{opacity:1;transform:scale(1)}.nav-link:hover{color:var(--text-primary)}.nav-link.active{color:var(--accent)}.nav-link.active:before{opacity:1;background:var(--accent-subtle);transform:scale(1)}.navbar-actions{align-items:center;gap:8px;display:flex}.theme-toggle{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--text-secondary);transition:var(--transition-fast);justify-content:center;align-items:center;display:flex;position:relative}.theme-toggle:before{content:"";border-radius:inherit;background:var(--accent-subtle);opacity:0;transition:var(--transition-fast);position:absolute;inset:0}.theme-toggle:hover:before{opacity:1}.theme-toggle:hover{color:var(--accent)}.hamburger{cursor:pointer;z-index:1;flex-direction:column;gap:5px;padding:4px;display:none;position:relative}.hamburger span{background:var(--text-primary);width:22px;height:2px;transition:var(--transition-fast);border-radius:2px;display:block}.hamburger.open span:first-child{transform:rotate(45deg)translate(5px,5px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}@media (width<=768px){.navbar-links{background:var(--bg-primary);-webkit-backdrop-filter:blur(24px)saturate(1.4);width:280px;height:100vh;transition:var(--transition-base);border-left:1px solid var(--border-color);flex-direction:column;justify-content:flex-start;gap:4px;padding:100px 32px 40px;position:fixed;top:0;right:-100%}.navbar-links.open{right:0}.nav-link{text-align:left;width:100%;font-size:var(--font-size-base);padding:14px 16px}.hamburger{display:flex}}.footer{background:radial-gradient(ellipse at 50% 0%, #c9a96e0a 0%, transparent 60%), var(--bg-primary);border-top:1px solid #c9a96e14;padding:0 24px;position:relative;overflow:hidden}.footer:before{content:"";pointer-events:none;background-image:linear-gradient(#c9a96e05 1px,#0000 1px),linear-gradient(90deg,#c9a96e05 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0}.footer-inner{z-index:1;position:relative}.footer-accent-bar{background:linear-gradient(90deg,#0000 0%,#c9a96e4d 20%,#c9a96e80 50%,#c9a96e4d 80%,#0000 100%);width:100%;height:1px;margin-bottom:56px}.footer-grid{grid-template-columns:1.6fr 1fr 1fr 1.4fr;gap:40px;padding-bottom:48px;display:grid}.footer-brand{flex-direction:column;gap:16px;display:flex}.footer-logo{font-family:var(--font-sans);color:var(--text-primary);letter-spacing:-.02em;align-items:center;gap:10px;font-size:32px;font-weight:800;text-decoration:none;transition:color .3s;display:inline-flex}.footer-logo:hover{color:var(--accent)}.footer-logo-dot{background:var(--accent);vertical-align:middle;border-radius:50%;width:6px;height:6px;display:inline-block}.footer-tagline{color:var(--text-tertiary);letter-spacing:.02em;max-width:280px;font-size:13px;font-weight:300;line-height:1.9}.footer-tagline em{color:var(--accent);opacity:.7;font-style:normal}.footer-col-title{text-transform:uppercase;letter-spacing:.15em;color:#f4f4f540;margin-bottom:20px;padding-bottom:12px;font-size:11px;font-weight:600;position:relative}.footer-col-title:after{content:"";background:#c9a96e66;width:20px;height:1px;position:absolute;bottom:0;left:0}.footer-col-links{flex-direction:column;gap:12px;display:flex}.footer-link{color:var(--text-secondary);align-items:center;gap:6px;width:fit-content;padding-left:0;font-size:13px;text-decoration:none;transition:all .3s;display:inline-flex;position:relative}.footer-link:before{content:"—";color:#c9a96e00;font-size:11px;transition:all .3s}.footer-link:hover{color:var(--accent);padding-left:4px}.footer-link:hover:before{color:var(--accent);opacity:.6}.footer-contact-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#c9a96e08;border:1px solid #c9a96e14;border-radius:12px;padding:20px 24px;transition:border-color .3s}.footer-contact-card:hover{border-color:#c9a96e33}.footer-contact-header{align-items:center;gap:8px;margin-bottom:14px;display:flex}.footer-contact-header svg{stroke:var(--accent);flex-shrink:0}.footer-contact-header span{text-transform:uppercase;letter-spacing:.15em;color:#f4f4f540;font-size:10px}.footer-email{color:#f4f4f599;word-break:break-all;font-size:13px;text-decoration:none;transition:color .3s;display:block}.footer-email:hover{color:var(--accent)}.footer-social-row{gap:8px;margin-top:20px;display:flex}.footer-social-btn{color:#f4f4f540;cursor:pointer;background:#f4f4f505;border:1px solid #f4f4f50f;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;text-decoration:none;transition:all .25s;display:flex}.footer-social-btn:hover{color:var(--accent);background:#c9a96e0f;border-color:#c9a96e40;transform:translateY(-2px)}.footer-bottom{border-top:1px solid #f4f4f50d;justify-content:space-between;align-items:center;padding:24px 0 40px;display:flex}.footer-copy{color:#f4f4f533;letter-spacing:.05em;font-size:12px}.footer-badge{color:#c9a96e80;letter-spacing:.1em;text-transform:uppercase;border:1px solid #c9a96e1a;border-radius:100px;align-items:center;gap:6px;padding:4px 14px;font-size:10px;display:inline-flex}.footer-badge-dot{background:var(--accent);border-radius:50%;width:4px;height:4px;animation:2s ease-in-out infinite footerBadgePulse}@keyframes footerBadgePulse{0%,to{opacity:.3}50%{opacity:1}}@media (width<=900px){.footer-grid{grid-template-columns:1fr 1fr;gap:40px}.footer-brand{grid-column:1/-1}}@media (width<=500px){.footer{padding:0 16px}.footer-grid{grid-template-columns:1fr;gap:32px}.footer-accent-bar{margin-bottom:40px}.footer-bottom{text-align:center;flex-direction:column;gap:12px}}.page-loader{justify-content:center;align-items:center;min-height:60vh;padding:80px 0;display:flex}.page-loader-spinner{border:2px solid var(--border-color);border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite pl-spin}@keyframes pl-spin{to{transform:rotate(360deg)}}.app{position:relative}main{z-index:1;position:relative}
