:root{--bg:#0A0E17;--bg2:#0E1424;--card:#121A2E;--line:rgba(255,255,255,.08);--blue:#3D7BFF;--cyan:#45E0FF;--text:#E8ECF5;--dim:#8A93A8;--grad:linear-gradient(120deg,#3D7BFF,#45E0FF)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}::selection{background:var(--blue);color:#fff}.nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:0 48px;height:72px;backdrop-filter:blur(16px);background:#0a0e1799;border-bottom:1px solid transparent;transition:.3s}.nav.scrolled{border-bottom-color:var(--line);background:#0a0e17d9}.logo{display:flex;align-items:center;gap:12px;font-weight:800;font-size:20px;letter-spacing:2px}.logo .mark{width:34px;height:34px;border-radius:9px;background:var(--grad);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:900;color:#fff;box-shadow:0 0 24px #3d7bff80}.logo small{font-size:11px;font-weight:400;color:var(--dim);letter-spacing:4px}.menu{display:flex;gap:8px}.menu a{padding:9px 20px;border-radius:99px;font-size:15px;color:var(--dim);transition:.25s}.menu a:hover{color:#fff;background:#ffffff0f}.menu a.active{color:#fff;background:var(--grad);box-shadow:0 4px 20px #3d7bff66}.nav .cta{padding:9px 22px;border-radius:99px;border:1px solid var(--line);font-size:14px;transition:.25s}.nav .cta:hover{border-color:var(--blue);color:var(--cyan)}.hero{position:relative;min-height:92vh;display:flex;flex-direction:column;justify-content:center;padding:0 48px}.hero .grid-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(ellipse 80% 60% at 50% 40%,#000 30%,transparent 75%)}.hero .glow{position:absolute;width:900px;height:900px;border-radius:50%;filter:blur(120px);opacity:.25;pointer-events:none}.hero .glow.g1{background:#3d7bff;top:-300px;right:-200px}.hero .glow.g2{background:#45e0ff;bottom:-400px;left:-300px;opacity:.12}.hero .tag{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--cyan);border:1px solid rgba(69,224,255,.3);border-radius:99px;padding:6px 16px;width:max-content;margin-bottom:28px;background:#45e0ff0d}.hero .tag i{width:6px;height:6px;border-radius:50%;background:var(--cyan);animation:pulse 1.6s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.2}}.hero h1{font-size:clamp(52px,8vw,116px);font-weight:900;line-height:1.08;letter-spacing:2px}.hero h1 .stroke{color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.35)}.hero h1 .blue{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.hero .sub{margin-top:26px;font-size:17px;color:var(--dim);max-width:560px;line-height:1.9}.hero .btns{margin-top:44px;display:flex;gap:16px}.btn{padding:15px 38px;border-radius:99px;font-size:16px;font-weight:600;transition:.25s;cursor:pointer;border:none;font-family:inherit}.btn.pri{background:var(--grad);color:#fff;box-shadow:0 8px 32px #3d7bff73}.btn.pri:hover{transform:translateY(-3px);box-shadow:0 14px 44px #3d7bff99}.btn.ghost{background:transparent;color:var(--text);border:1px solid var(--line)}.btn.ghost:hover{border-color:var(--cyan);color:var(--cyan)}.hero .stats{position:absolute;bottom:56px;left:48px;right:48px;display:flex;gap:64px;border-top:1px solid var(--line);padding-top:28px}.hero .stats b{font-size:30px;font-weight:800}.hero .stats b em{font-style:normal;color:var(--cyan);font-size:16px;margin-left:2px}.hero .stats span{display:block;font-size:13px;color:var(--dim);margin-top:6px;letter-spacing:2px}.section{padding:110px 48px}.sec-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:52px}.sec-head h2{font-size:40px;font-weight:800;letter-spacing:1px}.sec-head h2 small{display:block;font-size:13px;color:var(--cyan);letter-spacing:5px;font-weight:500;margin-bottom:12px}.sec-head .more{color:var(--dim);font-size:14px;transition:.25s}.sec-head .more:hover{color:var(--cyan)}.cats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.cat{position:relative;height:340px;border-radius:20px;overflow:hidden;cursor:pointer;border:1px solid var(--line);transition:.35s;display:block}.cat img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.8,.2,1)}.cat:hover img{transform:scale(1.08)}.cat:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(10,14,23,.92))}.cat .info{position:absolute;left:24px;right:24px;bottom:22px;z-index:2}.cat .info h3{font-size:22px;font-weight:800}.cat .info p{font-size:13px;color:var(--dim);margin-top:6px}.cat .num{position:absolute;top:18px;right:20px;z-index:2;font-size:12px;color:#fff;background:#ffffff1f;backdrop-filter:blur(8px);padding:5px 12px;border-radius:99px}.cat:hover{border-color:#3d7bff99;box-shadow:0 20px 60px #3d7bff40;transform:translateY(-6px)}.works{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.work{position:relative;border-radius:18px;overflow:hidden;height:300px;border:1px solid var(--line);transition:.3s;display:block}.work img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}.work:hover img{transform:scale(1.07)}.work:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(10,14,23,.9));opacity:.7;transition:.3s}.work:hover:after{opacity:1}.work .meta{position:absolute;left:20px;bottom:18px;z-index:2;transform:translateY(6px);transition:.3s}.work:hover .meta{transform:translateY(0)}.work .meta h4{font-size:18px;font-weight:700}.work .meta p{font-size:12px;color:var(--dim);margin-top:4px}.work.wide{grid-column:span 2}footer{border-top:1px solid var(--line);padding:56px 48px;display:flex;justify-content:space-between;align-items:center;color:var(--dim);font-size:13px}footer .logo{font-size:16px}.reveal{opacity:0;transform:translateY(36px);transition:.8s cubic-bezier(.2,.8,.2,1)}.reveal.in{opacity:1;transform:none}@media (max-width:900px){.cats{grid-template-columns:repeat(2,1fr)}.works{grid-template-columns:1fr}.work.wide{grid-column:span 1}.hero .stats{gap:28px;flex-wrap:wrap}.nav{padding:0 20px}.section{padding:70px 20px}.hero{padding:0 20px}footer{padding:40px 20px;flex-direction:column;gap:16px}}
