@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_b6b23cfb-module__itZ1Rq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_b6b23cfb-module__itZ1Rq__variable{--font-body:"Inter", "Inter Fallback"}
@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../media/bdc7e24a509eb931-s.0ynx40_3oa9rk.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0da9c7f357bd9d4d-s.1975l3y3401x_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../media/8e6fa89aa22d24ec-s.p.2o7m9ogm38dql.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(../media/0a7740363b4d4863-s.3ji57o093q1kd.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(../media/5f9d24ebef5d5292-s.19xuq3td7fwu_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e2334d715941921e-s.p.3o_v2fun1jzxk.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b53057dbf91a7acf-s.11ypmpdlzqdb_.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(../media/798ea22d9983e047-s.3go-kn2r40gie.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(../media/47fe1b7cd6e6ed85-s.p.3bh2vc0w-r-ll.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:800;font-display:swap;src:url(../media/99ce71e74c11bc20-s.1jc1xb-qv_87z.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:800;font-display:swap;src:url(../media/8cf1ea7b03cdeb83-s.3dbq0oou7i_24.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:800;font-display:swap;src:url(../media/829ba4228c966254-s.p.2mm3nq9i83l-m.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins Fallback;src:local(Arial);ascent-override:93.62%;descent-override:31.21%;line-gap-override:8.92%;size-adjust:112.16%}.poppins_9a3831da-module__IhKKta__className{font-family:Poppins,Poppins Fallback;font-style:normal}.poppins_9a3831da-module__IhKKta__variable{--font-heading:"Poppins", "Poppins Fallback"}
:root{--font-heading:"Poppins", "Segoe UI", system-ui, -apple-system, sans-serif;--font-body:"Inter", "Segoe UI", system-ui, -apple-system, sans-serif;--primary:#6366f1;--primary-2:#8b5cf6;--accent:#06b6d4;--gradient:linear-gradient(120deg, #6366f1, #8b5cf6 50%, #06b6d4);--gradient-soft:linear-gradient(120deg, #6366f129, #8b5cf629 50%, #06b6d429);--bg:#f6f7fc;--bg-soft:#fff;--surface:#fff;--surface-2:#f1f2fa;--border:#0f172a17;--border-strong:#0f172a29;--text:#0f172a;--text-soft:#334155;--muted:#5b677f;--shadow:0 6px 24px #0f172a12;--shadow-lg:0 18px 50px #0f172a21;--glow:0 10px 40px #6366f159;--header-bg:#f6f7fcd1;--nav-overlay:#f6f7fcfa;--code-bg:#0f172a0d;--input-bg:#fff;--success:#10b981;--danger:#ef4444;--warning:#f59e0b;--radius:18px;--radius-sm:12px;--container:1160px;--header-h:72px}.dark{--bg:#05060f;--bg-soft:#0a0c1c;--surface:#0f1226;--surface-2:#141833;--border:#ffffff17;--border-strong:#fff3;--text:#eef1f9;--text-soft:#c3cadb;--muted:#8d97b0;--shadow:0 6px 24px #00000059;--shadow-lg:0 18px 50px #00000080;--glow:0 10px 40px #6366f173;--header-bg:#05060fcc;--nav-overlay:#05060ff7;--code-bg:#ffffff0f;--input-bg:#0f1226}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:clip}body{font-family:var(--font-body);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:16px;line-height:1.7;transition:background-color .35s,color .35s;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--text);font-weight:700;line-height:1.25}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}ul,ol{list-style:none}::selection{background:#6366f14d}:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:4px}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:linear-gradient(180deg, var(--primary), var(--primary-2));border-radius:8px}.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 24px}.section{padding:96px 0;position:relative}.section-alt{background:var(--bg-soft)}.section-head{text-align:center;max-width:640px;margin:0 auto 56px}.section-eyebrow{font-family:var(--font-heading);letter-spacing:2px;text-transform:uppercase;color:var(--primary);background:var(--gradient-soft);border:1px solid var(--border);border-radius:999px;align-items:center;gap:8px;margin-bottom:18px;padding:7px 16px;font-size:13px;font-weight:600;display:inline-flex}.section-title{letter-spacing:-.5px;margin-bottom:14px;font-size:clamp(28px,4.5vw,42px)}.section-title .grad{background:var(--gradient);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text}.section-sub{color:var(--muted);font-size:16.5px}.grad-text{background:var(--gradient);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text}.btn{font-family:var(--font-heading);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:14px 28px;font-size:15px;font-weight:600;transition:transform .25s,box-shadow .25s,background .25s,border-color .25s,color .25s;display:inline-flex}.btn svg{font-size:15px}.btn-primary{background:var(--gradient);color:#fff;box-shadow:var(--glow);background-size:150% 150%;animation:6s infinite gradient-move}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 16px 44px #6366f180}.btn-outline{border:1.5px solid var(--border-strong);color:var(--text);background:0 0}.btn-outline:hover{border-color:var(--primary);color:var(--primary);background:var(--gradient-soft);transform:translateY(-3px)}.btn-light{color:#4f46e5;background:#fff;box-shadow:0 8px 28px #6366f159}.btn-light:hover{transform:translateY(-3px);box-shadow:0 14px 36px #6366f173}.badge{background:var(--gradient-soft);border:1px solid var(--border);color:var(--text-soft);border-radius:999px;align-items:center;gap:8px;padding:8px 18px;font-size:13.5px;font-weight:600;display:inline-flex}.badge .dot{background:var(--success);border-radius:50%;width:8px;height:8px;animation:2s infinite pulse-dot;box-shadow:0 0 #10b98199}.header{z-index:100;height:var(--header-h);border-bottom:1px solid #0000;align-items:center;transition:background .3s,box-shadow .3s,border-color .3s;display:flex;position:fixed;top:0;left:0;right:0}.header.scrolled{background:var(--header-bg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom-color:var(--border);box-shadow:0 4px 24px #0000000f}.header-inner{justify-content:space-between;align-items:center;gap:16px;width:100%;display:flex}.logo{font-family:var(--font-heading);color:var(--text);z-index:110;align-items:center;gap:10px;font-size:22px;font-weight:700;display:inline-flex}.logo-mark{background:var(--gradient);color:#fff;width:40px;height:40px;box-shadow:var(--glow);border-radius:12px;justify-content:center;align-items:center;font-size:18px;display:inline-flex}.logo .dot{color:var(--primary)}.logo-img{object-fit:cover;border:2px solid var(--primary);width:40px;height:40px;box-shadow:var(--glow);border-radius:50%}.nav{align-items:center;gap:6px;display:flex}.nav-link{font-family:var(--font-heading);color:var(--text-soft);border-radius:999px;padding:9px 16px;font-size:15px;font-weight:500;transition:color .25s,background .25s;position:relative}.nav-link:hover,.nav-link.active{color:var(--primary);background:var(--gradient-soft)}.header-actions{z-index:110;align-items:center;gap:10px;display:flex}.theme-toggle{border:1.5px solid var(--border-strong);width:42px;height:42px;color:var(--text-soft);background:var(--surface);border-radius:50%;justify-content:center;align-items:center;font-size:17px;transition:transform .3s,color .3s,border-color .3s,background .3s;display:inline-flex}.theme-toggle:hover{color:var(--primary);border-color:var(--primary);transform:rotate(25deg)scale(1.06)}.theme-toggle .icon-sun,.dark .theme-toggle .icon-moon{display:none}.dark .theme-toggle .icon-sun{display:inline-block}.btn-sm{padding:11px 22px;font-size:14px}.hamburger{border:1.5px solid var(--border-strong);width:42px;height:42px;color:var(--text);background:var(--surface);z-index:110;border-radius:12px;justify-content:center;align-items:center;font-size:18px;transition:color .3s,border-color .3s;display:none}.hamburger:hover{color:var(--primary);border-color:var(--primary)}.mobile-nav{z-index:105;background:var(--nav-overlay);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);opacity:0;visibility:hidden;flex-direction:column;justify-content:center;align-items:center;gap:10px;transition:opacity .3s,visibility .3s;display:flex;position:fixed;inset:0}.mobile-nav.open{opacity:1;visibility:visible}.mobile-nav .nav-link{opacity:0;padding:12px 28px;font-size:22px;transition:opacity .35s,transform .35s,color .25s;transform:translateY(16px)}.mobile-nav.open .nav-link{opacity:1;transform:translateY(0)}.mobile-nav .nav-link:first-child{transition-delay:50ms}.mobile-nav .nav-link:nth-child(2){transition-delay:.1s}.mobile-nav .nav-link:nth-child(3){transition-delay:.15s}.mobile-nav .nav-link:nth-child(4){transition-delay:.2s}.mobile-nav .nav-link:nth-child(5){transition-delay:.25s}.hero{padding:calc(var(--header-h) + 64px) 0 80px;position:relative;overflow:hidden}.hero-bg{z-index:-1;pointer-events:none;position:absolute;inset:0}.blob{filter:blur(90px);opacity:.5;border-radius:50%;animation:14s ease-in-out infinite float;position:absolute}.blob-1{background:#6366f159;width:480px;height:480px;top:-120px;right:-80px}.blob-2{background:#06b6d447;width:380px;height:380px;animation-delay:-5s;bottom:-100px;left:-100px}.blob-3{opacity:.35;background:#8b5cf64d;width:260px;height:260px;animation-delay:-9s;top:40%;left:45%}.hero-grid{background-image:radial-gradient(var(--border-strong) 1px, transparent 1px);opacity:.5;background-size:34px 34px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 60% at 50% 40%,#000 30%,#0000 75%);mask-image:radial-gradient(80% 60% at 50% 40%,#000 30%,#0000 75%)}.hero-inner{grid-template-columns:1.15fr .85fr;align-items:center;gap:48px;display:grid}.hero-text .badge{margin-bottom:26px}.hero-title{letter-spacing:-1.5px;margin-bottom:8px;font-size:clamp(34px,6vw,60px);font-weight:700;line-height:1.12}.hero-role{color:var(--text-soft);min-height:1.6em;margin-top:12px;font-size:clamp(19px,3vw,26px);font-weight:600;display:block}.type-cursor{background:var(--primary);vertical-align:text-bottom;border-radius:2px;width:3px;height:1em;margin-left:4px;animation:1s step-end infinite blink;display:inline-block}.hero-desc{color:var(--muted);max-width:540px;margin:22px 0 32px;font-size:17px}.hero-cta{flex-wrap:wrap;gap:14px;margin-bottom:34px;display:flex}.hero-socials{align-items:center;gap:12px;display:flex}.social-btn{border:1.5px solid var(--border-strong);width:44px;height:44px;color:var(--text-soft);background:var(--surface);border-radius:50%;justify-content:center;align-items:center;font-size:17px;transition:transform .3s,color .3s,border-color .3s,box-shadow .3s,background .3s;display:inline-flex}.social-btn img{object-fit:contain;width:20px;height:20px}.dark .social-btn img[src$=fiverr\.svg]{filter:brightness(0)invert()}.social-btn:hover{color:#fff;background:var(--gradient);box-shadow:var(--glow);border-color:#0000;transform:translateY(-4px)}.hero-visual{justify-content:center;display:flex;position:relative}.portrait-wrap{aspect-ratio:1;width:min(340px,78vw);position:relative}.portrait-ring{background:conic-gradient(#6366f1,#8b5cf6,#06b6d4,#6366f1);border-radius:50%;padding:6px;animation:8s linear infinite spin-slow;position:absolute;inset:0}.portrait-ring:after{content:"";background:var(--bg);border-radius:50%;position:absolute;inset:12px}.portrait{border:6px solid var(--surface);box-shadow:var(--shadow-lg);border-radius:50%;position:absolute;inset:18px;overflow:hidden}.portrait img{object-fit:cover;width:100%;height:100%;transition:transform .6s;transform:scale(1.04)}.portrait-wrap:hover .portrait img{transform:scale(1.12)}.float-chip{background:var(--surface);border:1px solid var(--border);font-family:var(--font-heading);color:var(--text-soft);box-shadow:var(--shadow-lg);white-space:nowrap;border-radius:14px;align-items:center;gap:9px;padding:10px 16px;font-size:13.5px;font-weight:600;animation:6s ease-in-out infinite float;display:inline-flex;position:absolute}.float-chip svg{color:var(--primary);font-size:17px}.chip-code{top:6%;left:-6%}.chip-rocket{animation-delay:-2s;bottom:12%;right:-4%}.chip-star{animation-delay:-3.5s;top:40%;right:-12%}.scroll-hint{color:var(--muted);letter-spacing:2px;text-transform:uppercase;flex-direction:column;align-items:center;gap:6px;font-size:12px;display:flex;position:absolute;bottom:-54px;left:50%;transform:translate(-50%)}.mouse{border:2px solid var(--muted);border-radius:14px;width:26px;height:42px;position:relative}.mouse:after{content:"";background:var(--primary);border-radius:4px;width:4px;height:8px;margin-left:-2px;animation:1.8s ease-in-out infinite wheel;position:absolute;top:7px;left:50%}.stats{padding:56px 0}.stats-grid{grid-template-columns:repeat(5,1fr);gap:16px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:center;box-shadow:var(--shadow);padding:30px 22px;transition:transform .35s,border-color .35s,box-shadow .35s;position:relative;overflow:hidden}.stat-card:before{content:"";background:var(--gradient);transform-origin:0;height:3px;transition:transform .4s;position:absolute;inset:0 0 auto;transform:scaleX(0)}.stat-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-lg);transform:translateY(-6px)}.stat-card:hover:before{transform:scaleX(1)}.stat-icon{background:var(--gradient-soft);width:52px;height:52px;color:var(--primary);border-radius:14px;justify-content:center;align-items:center;margin:0 auto 14px;font-size:21px;display:flex}.stat-value{font-family:var(--font-heading);background:var(--gradient);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text;font-size:36px;font-weight:700;line-height:1.1}.stat-label{color:var(--muted);margin-top:6px;font-size:14px;font-weight:500}.about-grid{grid-template-columns:.9fr 1.1fr;align-items:center;gap:64px;display:grid}.about-visual{position:relative}.about-photo-frame{background:var(--gradient-soft);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:28px;padding:12px;position:relative}.about-photo-frame .img-box{aspect-ratio:4/4.4;border-radius:20px;position:relative;overflow:hidden}.about-photo-frame img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.about-photo-frame:hover img{transform:scale(1.05)}.exp-badge{background:var(--gradient);color:#fff;text-align:center;box-shadow:var(--glow);border-radius:18px;padding:18px 22px;animation:5s ease-in-out infinite float;position:absolute;bottom:-22px;right:-18px}.exp-badge strong{font-family:var(--font-heading);font-size:28px;line-height:1;display:block}.exp-badge span{opacity:.92;font-size:12.5px}.about-title{margin-bottom:18px;font-size:clamp(26px,4vw,36px)}.about-text{color:var(--muted);margin-bottom:20px}.about-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 20px;margin:24px 0 32px;display:grid}.about-list li{color:var(--text-soft);align-items:center;gap:10px;font-size:15px;font-weight:500;display:flex}.about-list svg{color:var(--success);flex-shrink:0}.works-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:18px;display:grid}.work-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;transition:transform .4s,box-shadow .4s,border-color .4s;display:flex;position:relative;overflow:hidden}.work-card:hover{box-shadow:var(--shadow-lg);border-color:var(--border-strong);transform:translateY(-8px)}.work-thumb{aspect-ratio:1;background:var(--surface-2);position:relative;overflow:hidden}.work-thumb img{transition:transform .6s}.work-card:hover .work-thumb img{transform:scale(1.08)}.work-thumb .work-overlay{opacity:0;background:linear-gradient(#0f172a00 40%,#0f172abf);justify-content:center;align-items:flex-end;padding:20px;transition:opacity .4s;display:flex;position:absolute;inset:0}.work-card:hover .work-overlay{opacity:1}.work-visit{transition:transform .4s;transform:translateY(14px)}.work-card:hover .work-visit{transform:translateY(0)}.work-body{justify-content:space-between;align-items:center;gap:10px;padding:16px 16px 20px;display:flex}.work-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:15px;font-weight:600;line-height:1.4;display:block;overflow:hidden}.work-arrow{background:var(--gradient-soft);width:36px;height:36px;color:var(--primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;transition:transform .3s,background .3s,color .3s;display:inline-flex}.work-card:hover .work-arrow{background:var(--gradient);color:#fff;transform:rotate(-45deg)}.works-note{text-align:center;color:var(--muted);margin-top:36px;font-size:15px}.services-grid{grid-template-columns:repeat(4,1fr);gap:24px;display:grid}.service-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:32px 26px;transition:transform .4s,border-color .4s,box-shadow .4s;position:relative;overflow:hidden}.service-card:after{content:"";background:var(--gradient);opacity:0;border-radius:50%;width:140px;height:140px;transition:opacity .45s,transform .45s;position:absolute;top:-60px;right:-60px;transform:scale(.4)}.service-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-lg);transform:translateY(-8px)}.service-card:hover:after{opacity:.12;transform:scale(1)}.service-icon{background:var(--gradient);color:#fff;width:60px;height:60px;box-shadow:var(--glow);border-radius:16px;justify-content:center;align-items:center;margin-bottom:20px;font-size:24px;transition:transform .4s;display:flex}.service-card:hover .service-icon{transform:rotate(-8deg)scale(1.08)}.service-title{margin-bottom:10px;font-size:19px}.service-text{color:var(--muted);font-size:14.5px}.skills-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:18px;display:grid}.skill-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);text-align:center;box-shadow:var(--shadow);padding:24px 18px;transition:transform .35s,border-color .35s,box-shadow .35s}.skill-card:hover{border-color:var(--primary);box-shadow:var(--glow);transform:translateY(-6px)}.skill-icon{width:44px;height:44px;color:var(--primary);justify-content:center;align-items:center;margin:0 auto 12px;font-size:32px;display:flex}.skill-icon img{object-fit:contain;width:40px;height:40px}.dark .skill-icon img[src$=express\.svg],.dark .skill-icon img[src$=nextjs-icon\.svg]{filter:invert()}.skill-name{font-family:var(--font-heading);color:var(--text-soft);white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:600;display:block;overflow:hidden}.cta-box{color:#fff;text-align:center;background:linear-gradient(135deg,#4f46e5,#7c3aed 55%,#0891b2);border-radius:28px;padding:64px 48px;position:relative;overflow:hidden;box-shadow:0 24px 60px #4f46e566}.cta-box:before,.cta-box:after{content:"";background:#ffffff1f;border-radius:50%;animation:10s ease-in-out infinite float;position:absolute}.cta-box:before{width:300px;height:300px;top:-120px;left:-80px}.cta-box:after{width:220px;height:220px;animation-delay:-4s;bottom:-90px;right:-60px}.cta-box>*{z-index:1;position:relative}.cta-title{color:#fff;margin-bottom:14px;font-size:clamp(26px,4.5vw,40px)}.cta-text{color:#ffffffd9;max-width:560px;margin:0 auto 32px;font-size:16.5px}.cta-actions{flex-wrap:wrap;justify-content:center;gap:14px;display:flex}.footer{background:var(--bg-soft);border-top:1px solid var(--border);margin-top:40px;padding:64px 0 0}.footer-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.2fr);gap:40px;padding-bottom:48px;display:grid}.footer-desc{color:var(--muted);max-width:300px;margin:18px 0 22px;font-size:14.5px}.footer-title{margin-bottom:20px;padding-bottom:10px;font-size:16px;position:relative}.footer-title:after{content:"";background:var(--gradient);border-radius:3px;width:36px;height:3px;position:absolute;bottom:0;left:0}.footer-links{flex-direction:column;gap:12px;display:flex}.footer-links a{color:var(--muted);align-items:center;gap:8px;font-size:14.5px;transition:color .25s,transform .25s;display:inline-flex}.footer-links a:hover{color:var(--primary);transform:translate(4px)}.footer-links svg{color:var(--primary);font-size:12px}.footer-contact{flex-direction:column;gap:14px;display:flex}.footer-contact a{color:var(--muted);word-break:break-word;overflow-wrap:anywhere;align-items:center;gap:12px;font-size:14.5px;transition:color .25s;display:inline-flex}.footer-contact a:hover{color:var(--primary)}.footer-contact svg{color:var(--primary);flex-shrink:0;font-size:16px}.footer-socials{gap:10px;margin-top:20px;display:flex}.footer-socials .social-btn{width:40px;height:40px;font-size:15px}.footer-bottom{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:22px 0;display:flex}.footer-bottom p{color:var(--muted);font-size:14px}.footer-bottom .legal{gap:22px;display:flex}.footer-bottom .legal a{color:var(--muted);font-size:14px;transition:color .25s}.footer-bottom .legal a:hover{color:var(--primary)}.heart{color:#ef4444;animation:1.6s infinite heart-beat;display:inline-block}.page-hero{padding:calc(var(--header-h) + 70px) 0 44px;text-align:center;position:relative;overflow:hidden}.page-hero h1{margin-bottom:12px;font-size:clamp(30px,5vw,46px)}.page-hero p{color:var(--muted);max-width:620px;margin:0 auto;font-size:16.5px}.breadcrumb{color:var(--muted);font-size:13.5px;font-family:var(--font-heading);align-items:center;gap:10px;margin-bottom:20px;display:inline-flex}.breadcrumb a:hover{color:var(--primary)}.breadcrumb .sep{color:var(--border-strong)}.about-page-grid{grid-template-columns:.85fr 1.15fr;align-items:start;gap:56px;display:grid}.info-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:28px}.info-list{flex-direction:column;gap:18px;margin-top:20px;display:flex}.info-item{align-items:flex-start;gap:16px;display:flex}.info-item .info-icon{background:var(--gradient-soft);width:44px;height:44px;color:var(--primary);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:17px;display:flex}.info-item label{color:var(--muted);text-transform:uppercase;letter-spacing:1px;font-size:12.5px;font-weight:600;display:block}.info-item span,.info-item a{font-family:var(--font-heading);color:var(--text);word-break:break-word;font-size:15.5px;font-weight:600}.info-item a:hover{color:var(--primary)}.skills-bars{flex-direction:column;gap:22px;margin-top:26px;display:flex}.skill-bar-head{font-family:var(--font-heading);justify-content:space-between;margin-bottom:8px;font-size:14.5px;font-weight:600;display:flex}.skill-bar-head .pct{color:var(--primary)}.skill-bar{background:var(--surface-2);border-radius:8px;height:10px;overflow:hidden}.skill-bar-fill{background:var(--gradient);border-radius:8px;width:0;height:100%;transition:width 1.4s cubic-bezier(.22,1,.36,1)}.skill-bar-fill.is-visible{width:var(--level)}.journey-list{flex-direction:column;gap:24px;margin-top:30px;padding-left:28px;display:flex;position:relative}.journey-list:before{content:"";background:var(--gradient);border-radius:2px;width:2px;position:absolute;top:8px;bottom:8px;left:8px}.journey-item{position:relative}.journey-item:before{content:"";background:var(--surface);border:3px solid var(--primary);width:16px;height:16px;box-shadow:0 0 0 4px var(--gradient-soft);border-radius:50%;position:absolute;top:7px;left:-28px}.journey-year{font-family:var(--font-heading);color:var(--primary);letter-spacing:1px;text-transform:uppercase;font-size:13px;font-weight:700}.journey-title{margin:4px 0 6px;font-size:18px}.journey-text{color:var(--muted);font-size:14.5px}.contact-grid{grid-template-columns:1fr 1.15fr;align-items:start;gap:32px;display:grid}.contact-cards{flex-direction:column;gap:18px;display:flex}.contact-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);align-items:flex-start;gap:18px;padding:24px;transition:transform .3s,border-color .3s;display:flex}.contact-card:hover{border-color:var(--primary);transform:translateY(-4px)}.contact-card .contact-icon{background:var(--gradient);color:#fff;width:52px;height:52px;box-shadow:var(--glow);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;display:flex}.contact-card h3{margin-bottom:4px;font-size:17px}.contact-card p,.contact-card a{color:var(--muted);word-break:break-word;font-size:14.5px}.contact-card a:hover{color:var(--primary)}.form-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:34px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.form-group{flex-direction:column;gap:8px;margin-bottom:18px;display:flex}.form-group.full{grid-column:1/-1}.form-group label{font-family:var(--font-heading);color:var(--text-soft);font-size:14px;font-weight:600}.form-group input,.form-group textarea{width:100%;font-family:var(--font-body);color:var(--text);background:var(--input-bg);border:1.5px solid var(--border-strong);border-radius:var(--radius-sm);appearance:none;padding:13px 16px;font-size:15px;transition:border-color .25s,box-shadow .25s}.form-group textarea{resize:vertical;min-height:140px}.form-group input:focus,.form-group textarea:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 4px #6366f126}.form-note{color:var(--muted);align-items:center;gap:7px;margin-top:8px;font-size:13px;display:flex}.form-note svg{color:var(--primary)}.legal-wrap{max-width:820px;margin:0 auto}.legal-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:48px}.legal-card .updated{color:var(--muted);background:var(--gradient-soft);border:1px solid var(--border);border-radius:999px;align-items:center;gap:8px;margin-bottom:28px;padding:8px 16px;font-size:13.5px;display:inline-flex}.legal-card .updated svg{color:var(--primary)}.legal-card h2{align-items:center;gap:12px;margin:34px 0 12px;font-size:22px;display:flex}.legal-card h2:first-of-type{margin-top:0}.legal-card h2 svg{color:var(--primary);font-size:18px}.legal-card p,.legal-card li{color:var(--muted);font-size:15.5px}.legal-card p{margin-bottom:12px}.legal-card ul{flex-direction:column;gap:10px;margin:0 0 16px;list-style:none;display:flex}.legal-card ul li{padding-left:26px;position:relative}.legal-card ul li:before{content:"";color:var(--primary);font-family:"Font Awesome 6 Free";font-size:14px;font-weight:900;position:absolute;top:2px;left:0}.legal-card a{color:var(--primary);text-underline-offset:3px;font-weight:600;text-decoration:underline}.legal-card a:hover{opacity:.8}.legal-card .highlight{background:var(--gradient-soft);border:1px solid var(--border);border-radius:var(--radius-sm);margin:20px 0;padding:18px 22px}.notfound{text-align:center;min-height:70vh;padding:calc(var(--header-h) + 40px) 0 80px;flex-direction:column;justify-content:center;align-items:center;display:flex}.notfound-code{font-family:var(--font-heading);background:var(--gradient);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text;font-size:clamp(90px,16vw,160px);font-weight:800;line-height:1;animation:5s ease-in-out infinite float}.notfound h1{margin-bottom:12px;font-size:clamp(24px,4vw,34px)}.notfound p{color:var(--muted);max-width:440px;margin-bottom:30px}.back-top{z-index:90;background:var(--gradient);color:#fff;width:48px;height:48px;box-shadow:var(--glow);opacity:0;visibility:hidden;border-radius:50%;justify-content:center;align-items:center;font-size:17px;transition:opacity .3s,transform .3s,visibility .3s;display:flex;position:fixed;bottom:24px;right:24px;transform:translateY(16px)}.back-top.show{opacity:1;visibility:visible;transform:translateY(0)}.back-top:hover{transform:translateY(-4px)}.reveal{opacity:0;transition:opacity .7s,transform .7s cubic-bezier(.22,1,.36,1);transition-delay:var(--delay,0s);will-change:opacity, transform;transform:translateY(36px)}.reveal.is-visible{opacity:1;transform:translateY(0)}.reveal-left{transform:translate(-44px)}.reveal-right{transform:translate(44px)}.reveal-zoom{transform:scale(.92)}@keyframes gradient-move{0%,to{background-position:0%}50%{background-position:100%}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-16px)}}@keyframes spin-slow{to{transform:rotate(360deg)}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes pulse-dot{0%{box-shadow:0 0 #10b98199}70%{box-shadow:0 0 0 9px #10b98100}to{box-shadow:0 0 #10b98100}}@keyframes wheel{0%{opacity:1;transform:translateY(0)}70%{opacity:0;transform:translateY(12px)}to{opacity:0;transform:translateY(0)}}@keyframes heart-beat{0%,to{transform:scale(1)}25%{transform:scale(1.25)}40%{transform:scale(1)}}@media (max-width:1024px){.stats-grid{grid-template-columns:repeat(3,1fr)}.hero-inner{text-align:center;grid-template-columns:1fr;gap:72px}.hero-text .badge,.hero-desc{margin-left:auto;margin-right:auto}.hero-cta,.hero-socials{justify-content:center}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-grid,.about-page-grid{grid-template-columns:1fr;gap:48px}.about-visual{max-width:420px;margin:0 auto}.contact-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chip-code{left:0}.chip-star,.chip-rocket{right:0}}@media (max-width:768px){.section{padding:72px 0}.nav,.header-actions .btn{display:none}.hamburger{display:inline-flex}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid{grid-template-columns:1fr}.legal-card{padding:30px 24px}.cta-box{padding:48px 26px}.footer-bottom{text-align:center;justify-content:center}.exp-badge{right:0}}@media (max-width:480px){.services-grid,.about-list{grid-template-columns:1fr}.skills-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:12px}.skill-card{padding:18px 10px}.skill-name{white-space:nowrap;text-overflow:ellipsis;font-size:13px;display:block;overflow:hidden}.skill-icon{width:36px;height:36px}.skill-icon img{width:32px;height:32px}.works-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.work-body{padding:12px 12px 16px}.work-name{white-space:nowrap;text-overflow:ellipsis;-webkit-line-clamp:unset;-webkit-box-orient:unset;font-size:13.5px;display:block}.work-arrow{width:32px;height:32px;font-size:13px}.hero{padding-top:calc(var(--header-h) + 40px)}.float-chip{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html{scroll-behavior:auto}.reveal{opacity:1;transform:none}.skill-bar-fill{width:var(--level)}}
