*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--bg:#0a0a0a;--card:rgba(255,255,255,.035);--card-h:rgba(255,255,255,.06);--b:rgba(255,255,255,.08);--bh:rgba(255,255,255,.18);--t:rgba(255,255,255,.6);--tb:rgba(255,255,255,.95);--td:rgba(255,255,255,.35);--green:#34d399;--green-bg:rgba(52,211,153,.12);--amber:#fbbf24;--amber-bg:rgba(251,191,36,.12);--f:"Inter",-apple-system,BlinkMacSystemFont,system-ui,sans-serif;--m:"SF Mono","Fira Code","JetBrains Mono",monospace}html{font-size:16px;scroll-behavior:smooth}body{background:var(--bg);color:var(--t);font-family:var(--f);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}#root{min-height:100vh;display:flex;flex-direction:column}::selection{background:#ffffff2e;color:var(--tb)}.page{width:100%;margin:0 auto;padding:0 clamp(24px,5vw,96px)}nav{height:72px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid transparent}.logo{font-size:14px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--tb)}.nav-links{display:flex;gap:28px}.nav-links a{font-size:14px;color:var(--td);text-decoration:none;transition:color .2s;font-weight:500}.nav-links a:hover{color:var(--tb)}.hero{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:clamp(40px,5vh,64px) 0 clamp(32px,4vh,48px);gap:clamp(14px,1.5vh,20px)}.hero h1{font-size:clamp(2.2rem,5vw,4.2rem);font-weight:700;letter-spacing:-.045em;line-height:1.05;color:var(--tb);max-width:960px}.hero p{font-size:clamp(1.05rem,1.5vw,1.25rem);color:var(--t);max-width:600px;line-height:1.6;font-weight:400}.hero-metrics{display:flex;gap:clamp(40px,5vw,72px);margin-top:clamp(16px,2vh,28px)}.mv{font-size:clamp(30px,3.5vw,48px);font-weight:700;color:var(--tb);letter-spacing:-.03em;line-height:1}.ml{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--td);margin-top:8px}.sec{padding:clamp(40px,5vh,72px) 0}.sec-border{border-top:1px solid var(--b)}.sh{font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--td);margin-bottom:32px;display:flex;align-items:center;gap:12px}.sh:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,var(--b),transparent)}.pgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.card{background:var(--card);border:1px solid var(--b);border-radius:20px;padding:clamp(28px,2.4vw,40px);text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:background .3s,border-color .3s,transform .25s;min-height:240px}a.card:hover{background:var(--card-h);border-color:var(--bh);transform:translateY(-3px)}.ct{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.ci{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:28px}.badge{font-size:12px;font-weight:500;padding:4px 12px;border-radius:100px;display:flex;align-items:center;gap:6px}.bl{background:var(--green-bg);color:var(--green)}.bb{background:var(--amber-bg);color:var(--amber)}.bd{width:6px;height:6px;border-radius:50%;background:currentColor}.cn{font-size:clamp(19px,1.4vw,22px);font-weight:600;color:var(--tb);letter-spacing:-.015em;margin-bottom:8px}.cd{font-size:clamp(14px,1.1vw,16px);color:var(--t);line-height:1.55;flex:1;margin-bottom:18px}.cs{display:flex;gap:6px;flex-wrap:wrap}.tech{font-size:12px;font-family:var(--m);color:var(--td);background:#ffffff0a;border:1px solid var(--b);padding:4px 10px;border-radius:6px}.cta{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:500;color:var(--td);margin-top:20px;transition:color .2s}a.card:hover .cta{color:var(--tb)}.cta svg{width:16px;height:16px;transition:transform .25s}a.card:hover .cta svg{transform:translate(4px)}.about-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(48px,6vw,96px);align-items:start}.about-text h2{font-size:clamp(1.6rem,2.8vw,2.4rem);font-weight:700;color:var(--tb);letter-spacing:-.035em;line-height:1.15;margin-bottom:24px;max-width:600px}.about-text p{font-size:clamp(15px,1.2vw,17px);color:var(--t);line-height:1.75;margin-bottom:16px;max-width:580px}.slinks{display:flex;gap:10px;margin-top:32px;flex-wrap:wrap}.sl{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:var(--t);text-decoration:none;padding:10px 18px;border:1px solid var(--b);border-radius:10px;transition:border-color .2s,color .2s,background .2s}.sl:hover{border-color:var(--bh);color:var(--tb);background:#ffffff05}.sl svg{width:16px;height:16px}.stack{display:flex;flex-direction:column;gap:24px}.scl{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--td);margin-bottom:12px}.sci{display:flex;gap:8px;flex-wrap:wrap}.st{font-size:13px;font-family:var(--m);color:var(--t);background:#ffffff0a;padding:6px 14px;border-radius:8px;border:1px solid var(--b)}footer{padding:48px clamp(24px,5vw,96px) 40px;border-top:1px solid var(--b);margin-top:auto}.fr{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.ft{font-size:14px;color:var(--td)}.ft span{color:var(--t)}.fl{display:flex;gap:28px}.fl a{font-size:14px;color:var(--td);text-decoration:none;transition:color .2s}.fl a:hover{color:var(--t)}.fb{display:flex;justify-content:space-between;align-items:center;margin-top:28px;padding-top:24px;border-top:1px solid var(--b);flex-wrap:wrap;gap:12px}.fc{font-size:12px;color:var(--td)}.fade{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease}.fade.show{opacity:1;transform:translateY(0)}@media(max-width:1024px){.about-grid{grid-template-columns:1fr;gap:48px}}@media(max-width:768px){nav{height:64px}.nav-links{gap:20px}.hero{padding:56px 0 40px;text-align:left;align-items:flex-start}.hero-metrics{margin-top:24px;gap:32px}.mv{font-size:30px}.about-text h2{font-size:1.7rem}.sec{padding:48px 0}.card{padding:24px;min-height:auto}.ci{width:48px;height:48px;font-size:24px}.fr,.fb{flex-direction:column;align-items:flex-start}}@media(max-width:480px){.hero h1{font-size:2rem}.hero p{font-size:1rem}.card{padding:22px;border-radius:16px}.nav-links{gap:14px}.nav-links a{font-size:13px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
