:root{--bg:#070b16;--panel:#0f1729;--line:#ffffff17;--text:#eef3ff;--muted:#9aa8c2;--mint:#63ead7;--blue:#7aa8ff;--amber:#ffbd7c;--red:#ff5a6a;--mx:50%;--my:20%}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{background:var(--bg);color:var(--text);margin:0;font:400 1rem/1.6 Figtree,system-ui,sans-serif}h1,h2,h3,.brand{margin:0;font-family:Bricolage Grotesque,Figtree,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}:focus-visible{outline:2px solid var(--mint);outline-offset:3px;border-radius:6px}@view-transition{navigation:auto}.shell{width:min(1180px,100% - 40px);margin-inline:auto}.fx{z-index:-1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.fx:before{content:"";background:radial-gradient(38% 34% at 18% 18%,#7aa8ff33,#0000 70%),radial-gradient(34% 34% at 82% 12%,#63ead726,#0000 70%),radial-gradient(38% 38% at 60% 88%,#ffbd7c14,#0000 70%);position:absolute;inset:-20%}.fx:after{content:"";-webkit-mask-image:radial-gradient(480px circle at var(--mx) var(--my), #000, transparent 70%);-webkit-mask-image:radial-gradient(480px circle at var(--mx) var(--my), #000, transparent 70%);mask-image:radial-gradient(480px circle at var(--mx) var(--my), #000, transparent 70%);background-image:radial-gradient(#ffffff14 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0}#bar{z-index:80;transform-origin:0;background:linear-gradient(90deg, var(--mint), var(--blue), var(--amber));height:3px;position:fixed;top:0;left:0;right:0;transform:scaleX(0)}.hdr{z-index:70;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#070b16d1;position:sticky;top:0}.hdr-in{justify-content:space-between;align-items:center;gap:18px;min-height:72px;display:flex}.brand{letter-spacing:-.03em;font-size:1.3rem;font-weight:800}.brand span{color:var(--mint)}.nav{gap:28px;display:flex}.nav a{color:var(--muted);font-size:.92rem;font-weight:600;transition:color .2s;position:relative}.nav a:hover,.nav a[aria-current=page]{color:#fff}.nav a:after{content:"";background:var(--mint);height:2px;transition:transform .25s;position:absolute;bottom:-6px;left:0;right:0;transform:scaleX(0)}.nav a:hover:after,.nav a[aria-current=page]:after{transform:scaleX(1)}.hdr-r{align-items:center;gap:8px;display:flex}.ico{border:1px solid var(--line);border-radius:10px;place-items:center;width:40px;height:40px;transition:transform .2s,border-color .2s,color .2s;display:grid}.ico:hover{border-color:var(--mint);color:var(--mint);transform:translateY(-3px)}.ico svg,.fl svg{fill:currentColor;width:18px;height:18px}.btn{border:1px solid var(--line);border-radius:11px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 18px;font-size:.9rem;font-weight:700;transition:transform .2s,border-color .2s,color .2s;display:inline-flex}.btn:hover{transform:translateY(-3px)}.btn-p{background:var(--mint);color:#04211c;border-color:#0000;box-shadow:0 10px 30px -10px #63ead7b3}.btn-o:hover{border-color:var(--mint);color:var(--mint)}.menu{border:1px solid var(--line);background:var(--panel);color:#fff;cursor:pointer;border-radius:10px;width:42px;height:42px;font-size:1.3rem;display:none}.mnav{flex-direction:column;gap:16px;padding:6px 20px 22px;display:none}.mnav.open{display:flex}.mnav a{color:var(--muted);font-weight:600}.mnav .row{flex-wrap:wrap;gap:8px;display:flex}.hero{padding-block:85px 43px}.tag{color:#a8f5ea;background:#63ead712;border:1px solid #63ead740;border-radius:7px;padding:4px 10px;font-size:.72rem;font-weight:700;display:inline-block}h1{letter-spacing:-.05em;max-width:940px;margin:22px 0 21px;font-size:clamp(3rem,6.6vw,6rem);font-weight:800;line-height:1}.gradient{background:linear-gradient(90deg, var(--mint), var(--blue), var(--amber));color:#0000;-webkit-background-clip:text;background-clip:text}.lead{max-width:710px;color:var(--muted);margin:0;font-size:1.12rem;line-height:1.8}.hero-stats{flex-wrap:wrap;gap:12px;margin-top:29px;display:flex}.hero-stat{border:1px solid var(--line);color:var(--muted);background:#0f1729a6;border-radius:9px;padding:9px 13px;font-size:.85rem}.hero-stat strong{color:var(--text)}.filter-wrap{z-index:40;border-block:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#090f1cf0;position:sticky;top:72px}.filters{flex-wrap:wrap;align-items:center;gap:9px;padding-block:15px;display:flex}.filter{border:1px solid var(--line);min-height:39px;color:var(--muted);cursor:pointer;background:#ffffff08;border-radius:9px;padding:8px 14px;font-size:.84rem;font-weight:700;transition:transform .2s,background .2s,border-color .2s,color .2s}.filter:hover{color:var(--text);border-color:#63ead766;transform:translateY(-2px)}.filter[aria-pressed=true]{border-color:var(--mint);background:var(--mint);color:#04211c}.filter-count{opacity:.7;margin-left:5px}.results-count{color:var(--muted);white-space:nowrap;margin-left:auto;font-size:.83rem}.sec{padding-block:75px 100px}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.card{border:1px solid var(--line);background:var(--panel);border-radius:20px;flex-direction:column;min-width:0;transition:transform .2s cubic-bezier(.2,.8,.2,1),border-color .2s,opacity .2s;display:flex;position:relative;overflow:hidden}.card:hover{border-color:#63ead76e;transform:translateY(-5px)}.card:after{content:"";z-index:0;pointer-events:none;opacity:0;background:radial-gradient(350px circle at var(--cx,50%) var(--cy,50%), #63ead71c, transparent 65%);transition:opacity .2s;position:absolute;inset:0}.card:hover:after{opacity:1}.card.feature{grid-column:span 2;grid-template-columns:1fr 1fr;display:grid}.card[hidden],.card.feature[hidden]{display:none!important}.cover{aspect-ratio:16/10;border-bottom:1px solid var(--line);background:radial-gradient(circle at 20% 20%,#63ead730,#0000 40%),radial-gradient(circle at 80% 80%,#7aa8ff3b,#0000 45%),linear-gradient(140deg,#12253a,#0b1425);place-items:center;min-height:210px;display:grid;position:relative;overflow:hidden}.feature .cover{aspect-ratio:auto;border-right:1px solid var(--line);border-bottom:0;min-height:100%}.cover:before{content:"";opacity:.18;background-image:linear-gradient(#ffffff1a 1px,#0000 1px),linear-gradient(90deg,#ffffff1a 1px,#0000 1px);background-size:32px 32px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(135deg,#000,#0000);mask-image:linear-gradient(135deg,#000,#0000)}.cover img{z-index:2;object-fit:cover;width:100%;height:100%;transition:transform .5s;position:absolute;inset:0}.card:hover .cover img{transform:scale(1.045)}.cover-placeholder{z-index:1;color:#d8f9f5;text-align:center;flex-direction:column;align-items:center;gap:11px;padding:25px;display:flex;position:relative}.cover-symbol{background:#63ead71a;border:1px solid #63ead761;border-radius:18px;place-items:center;width:70px;height:70px;font-family:Bricolage Grotesque,sans-serif;font-size:1.45rem;font-weight:800;display:grid;box-shadow:0 0 35px #63ead71c}.cover-placeholder span:last-child{letter-spacing:.08em;font-size:.79rem;font-weight:700}.cover-badge{z-index:3;color:#dbe6f6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#070b16c4;border:1px solid #ffffff30;border-radius:8px;padding:5px 9px;font-size:.73rem;font-weight:700;position:absolute;bottom:13px;right:13px}.body{z-index:1;flex-direction:column;flex:1;padding:23px;display:flex;position:relative}.feature .body{padding:32px}.card-meta{justify-content:space-between;align-items:center;gap:8px;display:flex}.category-label{color:var(--mint);font-size:.74rem;font-weight:700}.status{color:var(--mint);white-space:nowrap;font-size:.74rem;font-weight:700}.status.live{background:#63ead71a;border:1px solid #63ead759;border-radius:999px;align-items:center;gap:6px;padding:4px 8px;display:inline-flex}.status.live:before{content:"";background:var(--mint);border-radius:50%;flex:none;width:6px;height:6px;animation:3s ease-out infinite live-pulse;box-shadow:0 0 #63ead773}@keyframes live-pulse{0%,70%,to{box-shadow:0 0 #63ead700}35%{box-shadow:0 0 0 5px #63ead738}}.status.wip{color:var(--amber)}.body h2{letter-spacing:-.03em;margin:12px 0 9px;font-size:1.43rem;font-weight:800;line-height:1.2}.feature .body h2{font-size:2rem}.body p{color:var(--muted);margin:0;font-size:.92rem;line-height:1.7}.tech{flex-wrap:wrap;gap:7px;margin-top:18px;display:flex}.tech-item{border:1px solid var(--line);color:#dbe4f0;background:#ffffff0a;border-radius:7px;align-items:center;gap:6px;min-height:28px;padding:4px 8px;font-size:.73rem;font-weight:600;display:inline-flex}.tech-item img{object-fit:contain;width:16px;height:16px}.tech-initial{width:16px;height:16px;color:var(--mint);background:#63ead726;border-radius:4px;place-items:center;font-size:.57rem;font-weight:800;display:grid}.actions{flex-wrap:wrap;gap:9px;margin-top:auto;padding-top:21px;display:flex}.actions a{border:1px solid var(--line);min-height:35px;color:var(--text);border-radius:8px;align-items:center;padding:6px 10px;font-size:.78rem;font-weight:700;transition:border-color .2s,color .2s;display:inline-flex}.actions a:hover{border-color:var(--mint);color:var(--mint)}.actions a.primary{color:var(--mint);border-color:#63ead766}.empty{color:var(--muted);text-align:center;padding:60px 20px;display:none}.ftr{border-top:1px solid var(--line);background:#0a1120;padding:72px 0 24px}.ft{flex-wrap:wrap;justify-content:space-between;gap:34px;display:flex}.ft h2{letter-spacing:-.045em;margin:14px 0 10px;font-size:clamp(2rem,4vw,3.3rem);font-weight:800}.ft p{max-width:460px;color:var(--muted);margin:0}.fl{flex-wrap:wrap;align-content:start;gap:10px;max-width:420px;display:flex}.fb{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:14px;margin-top:56px;padding-top:20px;font-size:.8rem;display:flex}@media (width<=1050px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.nav,.hdr .hide-m{display:none}.menu{display:block}}@media (width<=700px){.shell{width:calc(100% - 32px)}.hero{padding-block:59px 43px}.project-grid{grid-template-columns:1fr}.card.feature{grid-column:auto;display:flex}.feature .cover{aspect-ratio:16/10;border-right:0;border-bottom:1px solid var(--line);min-height:210px}.feature .body{padding:23px}.feature .body h2{font-size:1.43rem}.filter-wrap{top:72px}.filters{gap:7px}.filter{min-height:35px;padding:6px 9px;font-size:.75rem}.results-count{width:100%;margin:3px 0 0}.sec{padding-block:40px 75px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.status.live:before{animation:none!important}}
