@font-face{font-family:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/firacode/v26/uU9NCBsR6Z2vfE9aq3bh0NSDulI.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/firacode/v26/uU9NCBsR6Z2vfE9aq3bh2dSDulI.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/firacode/v26/uU9NCBsR6Z2vfE9aq3bh0dSDulI.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/firacode/v26/uU9NCBsR6Z2vfE9aq3bh3tSDulI.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/firacode/v26/uU9NCBsR6Z2vfE9aq3bhZ_Wmh2uX.woff2) format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/firacode/v26/uU9NCBsR6Z2vfE9aq3bh09SDulI.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/firacode/v26/uU9NCBsR6Z2vfE9aq3bh3dSD.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Code;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/firacode/v26/uU9NCBsR6Z2vfE9aq3bh0NSDulI.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Code;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/firacode/v26/uU9NCBsR6Z2vfE9aq3bh2dSDulI.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Fira Code;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/firacode/v26/uU9NCBsR6Z2vfE9aq3bh0dSDulI.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Code;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/firacode/v26/uU9NCBsR6Z2vfE9aq3bh3tSDulI.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Fira Code;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/firacode/v26/uU9NCBsR6Z2vfE9aq3bhZ_Wmh2uX.woff2) format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Fira Code;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/firacode/v26/uU9NCBsR6Z2vfE9aq3bh09SDulI.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fira Code;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/firacode/v26/uU9NCBsR6Z2vfE9aq3bh3dSD.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Code;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/firacode/v26/uU9NCBsR6Z2vfE9aq3bh0NSDulI.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Code;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/firacode/v26/uU9NCBsR6Z2vfE9aq3bh2dSDulI.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Fira Code;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/firacode/v26/uU9NCBsR6Z2vfE9aq3bh0dSDulI.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Code;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/firacode/v26/uU9NCBsR6Z2vfE9aq3bh3tSDulI.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Fira Code;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/firacode/v26/uU9NCBsR6Z2vfE9aq3bhZ_Wmh2uX.woff2) format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Fira Code;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/firacode/v26/uU9NCBsR6Z2vfE9aq3bh09SDulI.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fira Code;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/firacode/v26/uU9NCBsR6Z2vfE9aq3bh3dSD.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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:300;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:300;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,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(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,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(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v19/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--primary-50: #EEF2FF;--primary-100: #E0E7FF;--primary-200: #C7D2FE;--primary-300: #A5B4FC;--primary-400: #818CF8;--primary-500: #6366F1;--primary-600: #4F46E5;--primary-700: #4338CA;--primary-800: hsl(244, 55%, 41%);--primary-900: #312E81;--secondary-500: #10B981;--secondary-600: #059669;--accent-500: #F97316;--accent-400: #4338CA;--accent-600: #EA580C;--accent-700: #818CF8;--success-500: #22C55E;--warning-500: #F59E0B;--error-500: #EF4444;--gray-50: #F9FAFB;--gray-100: #F3F4F6;--gray-200: #E5E7EB;--gray-300: #D1D5DB;--gray-400: #9CA3AF;--gray-500: #6B7280;--gray-600: #4B5563;--gray-700: #374151;--gray-800: #1F2937;--gray-900: #111827;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "Fira Code", monospace;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .4s ease;--delay: 0s}:root,body{--bg-primary: var(--gray-50);--bg-secondary: white;--bg-tertiary: var(--gray-100);--text-primary: var(--gray-900);--text-secondary: var(--gray-700);--text-tertiary: var(--gray-500);--border-color: var(--gray-200);--shadow-color: rgba(0, 0, 0, .1);--title-primary: var(--gray-900);--title-secondary: var(--gray-800);--section-title-color: var(--primary-700);--subtitle-color: var(--gray-700);--cta-description-color: var(--gray-700);--gradient-primary: linear-gradient(135deg, var(--primary-500), var(--primary-600));--gradient-secondary: linear-gradient(135deg, var(--secondary-500), var(--secondary-600));--gradient-accent: linear-gradient(135deg, var(--accent-500), var(--accent-600));--gradient-bg: linear-gradient(180deg, var(--bg-primary) 0%, var(--gray-100) 50%, var(--bg-primary) 100%);--gradient-hero: linear-gradient(135deg, var(--bg-primary) 0%, var(--gray-100) 50%, var(--gray-200) 100%);--gradient-card: linear-gradient(135deg, var(--bg-secondary), var(--bg-tertiary));--dark-overlay-1: rgba(0, 0, 0, .05);--dark-overlay-2: rgba(0, 0, 0, .1);--dark-overlay-3: rgba(0, 0, 0, .15);--glow-color: rgba(0, 0, 0, .4);--terminal-bg: var(--bg-secondary);--terminal-header-bg: var(--bg-tertiary);--terminal-text: var(--text-primary);--terminal-keyword: #d73a49;--terminal-class: #005cc5;--terminal-property: #6f42c1;--terminal-method: #22863a;--terminal-string: #e36209;--terminal-close: #ff5f56;--terminal-minimize: #ffbd2e;--terminal-maximize: #27ca3f;--particle-pink: #EC4899;--particle-purple: #A855F7;--particle-red: #EF4444;--skill-frontend: linear-gradient(135deg, #67b7f7, #3e8ef7);--skill-backend: linear-gradient(135deg, #f7a593, #f76b6b);--skill-database: linear-gradient(135deg, #c2f76b, #8ef73e);--skill-tools: linear-gradient(135deg, #f7f76b, #f7c34d);--skill-cloud: linear-gradient(135deg, #9b59b6, #8e44ad);--skill-design: linear-gradient(135deg, #2ecc71, #27ae60);--skill-languages: linear-gradient(135deg, #e74c3c, #c0392b);--skill-default: linear-gradient(135deg, #bdc3c7, #2c3e50);--skill-beginner: #ef4444;--skill-intermediate: #f59e0b;--skill-advanced: #10b981;--skill-expert: #8b5cf6;--skill-beginner-gradient: linear-gradient(90deg, #ef4444, #f87171);--skill-intermediate-gradient: linear-gradient(90deg, #f59e0b, #fbbf24);--skill-advanced-gradient: linear-gradient(90deg, #10b981, #34d399);--skill-expert-gradient: linear-gradient(90deg, #8b5cf6, #a78bfa);--btn-cyan: linear-gradient(135deg, #06b6d4, #0891b2);--btn-green: linear-gradient(135deg, #22c55e, #16a34a);--bg-gradient-overlay: rgba(0, 0, 0, .05);--bg-grid-color: rgba(0, 0, 0, .05);--white-overlay-1: rgba(255, 255, 255, .1);--white-overlay-2: rgba(255, 255, 255, .2);--white-overlay-3: rgba(255, 255, 255, .3);--primary-overlay-1: rgba(236, 72, 153, .1);--primary-overlay-2: rgba(236, 72, 153, .2);--primary-overlay-3: rgba(236, 72, 153, .3);--primary-overlay-4: rgba(236, 72, 153, .4);--secondary-overlay-1: rgba(168, 85, 247, .1);--secondary-overlay-2: rgba(168, 85, 247, .2);--shadow-primary: 0 10px 30px rgba(236, 72, 153, .3);--shadow-secondary: 0 10px 30px rgba(168, 85, 247, .3);--shadow-default: 0 10px 30px rgba(0, 0, 0, .3);--shadow-large: 0 20px 60px rgba(236, 72, 153, .2);--shadow-extra-large: 0 30px 80px rgba(236, 72, 153, .3);--drop-shadow-strong: drop-shadow(0 0 10px rgba(0,0,0,.5));--primary-bg: rgba(99, 102, 241, .1);--secondary-bg: rgba(16, 185, 129, .1);--accent-bg: rgba(249, 115, 22, .1);--primary-glow: rgba(99, 102, 241, .3);--secondary-glow: rgba(16, 185, 129, .3);--accent-glow: rgba(249, 115, 22, .3);--gradient-interest-1: linear-gradient(135deg, rgba(102, 126, 234, .3), rgba(118, 75, 162, .3));--gradient-interest-2: linear-gradient(135deg, rgba(240, 147, 251, .3), rgba(245, 87, 108, .3));--gradient-interest-3: linear-gradient(135deg, rgba(79, 172, 254, .3), rgba(0, 242, 254, .3));--gradient-interest-4: linear-gradient(135deg, rgba(168, 237, 234, .3), rgba(254, 214, 227, .3));--gradient-interest-5: linear-gradient(135deg, rgba(255, 154, 158, .3), rgba(254, 207, 239, .3));--gradient-project-1: linear-gradient(135deg, rgba(102, 126, 234, .4), rgba(118, 75, 162, .4));--gradient-project-2: linear-gradient(135deg, rgba(79, 172, 254, .4), rgba(0, 242, 254, .4));--gradient-project-3: linear-gradient(135deg, rgba(240, 147, 251, .4), rgba(245, 87, 108, .4))}body.dark-theme,html.dark-theme{--bg-primary: var(--gray-900);--bg-secondary: var(--gray-800);--bg-tertiary: var(--gray-700);--text-primary: white;--text-secondary: var(--gray-300);--text-tertiary: var(--gray-400);--border-color: var(--gray-700);--shadow-color: rgba(0, 0, 0, .3);--title-primary: white;--title-secondary: var(--gray-100);--section-title-color: var(--primary-400);--subtitle-color: var(--primary-300);--cta-description-color: rgba(255, 255, 255, .9);--gradient-primary: linear-gradient(135deg, var(--primary-500), var(--primary-600));--gradient-secondary: linear-gradient(135deg, var(--secondary-500), var(--secondary-600));--gradient-accent: linear-gradient(135deg, var(--accent-500), var(--accent-600));--gradient-bg: linear-gradient(180deg, var(--bg-primary) 0%, #0a0a0a 50%, var(--bg-primary) 100%);--gradient-hero: linear-gradient(135deg, #0F0F0F 0%, #1a1a2e 50%, #16213e 100%);--gradient-card: linear-gradient(135deg, rgba(26, 26, 46, .8), rgba(22, 33, 62, .8));--dark-overlay-1: rgba(0, 0, 0, .3);--dark-overlay-2: rgba(0, 0, 0, .5);--dark-overlay-3: rgba(0, 0, 0, .7);--glow-color: rgba(255, 255, 255, .4);--terminal-bg: #1e1e1e;--terminal-header-bg: #2d2d30;--terminal-text: #d4d4d4;--terminal-keyword: #ff79c6;--terminal-class: #8be9fd;--terminal-property: #bd93f9;--terminal-method: #50fa7b;--terminal-string: #f1fa8c;--primary-bg: rgba(99, 102, 241, .2);--secondary-bg: rgba(16, 185, 129, .2);--accent-bg: rgba(249, 115, 22, .2);--primary-glow: rgba(99, 102, 241, .4);--secondary-glow: rgba(16, 185, 129, .4);--accent-glow: rgba(249, 115, 22, .4);--gradient-interest-1: linear-gradient(135deg, #667eea, #764ba2);--gradient-interest-2: linear-gradient(135deg, #f093fb, #f5576c);--gradient-interest-3: linear-gradient(135deg, #4facfe, #00f2fe);--gradient-interest-4: linear-gradient(135deg, #a8edea, #fed6e3);--gradient-interest-5: linear-gradient(135deg, #ff9a9e, #fecfef);--terminal-close: #ff5f57;--terminal-minimize: #ffbd2e;--terminal-maximize: #28ca42;--particle-pink: #ff1493;--particle-purple: #9370db;--particle-red: #ff4500;--skill-frontend: linear-gradient(135deg, #667eea, #764ba2);--skill-backend: linear-gradient(135deg, #f093fb, #f5576c);--skill-database: linear-gradient(135deg, #4facfe, #00f2fe);--skill-devtools: linear-gradient(135deg, #a8edea, #fed6e3);--skill-ai: linear-gradient(135deg, #ff9a9e, #fecfef);--skill-cicd: linear-gradient(135deg, #667eea, #764ba2);--skill-beginner: #10b981;--skill-intermediate: #f59e0b;--skill-advanced: #ef4444;--skill-expert: #8b5cf6;--skill-beginner-gradient: linear-gradient(135deg, #10b981, #059669);--skill-intermediate-gradient: linear-gradient(135deg, #f59e0b, #d97706);--skill-advanced-gradient: linear-gradient(135deg, #ef4444, #dc2626);--skill-expert-gradient: linear-gradient(135deg, #8b5cf6, #7c3aed);--btn-cyan: linear-gradient(135deg, #06b6d4, #0891b2);--btn-green: linear-gradient(135deg, #10b981, #059669);--bg-overlay-1: rgba(0, 0, 0, .1);--bg-overlay-2: rgba(0, 0, 0, .2);--bg-overlay-3: rgba(0, 0, 0, .3);--bg-overlay-4: rgba(0, 0, 0, .4);--bg-overlay-5: rgba(0, 0, 0, .5);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--shadow-neon: 0 0 20px rgba(99, 102, 241, .5);--shadow-glow: 0 0 30px rgba(255, 255, 255, .1);--filter-blur-sm: blur(4px);--filter-blur: blur(8px);--filter-blur-lg: blur(16px);--filter-blur-xl: blur(24px);--filter-saturate: saturate(180%);--filter-brightness: brightness(110%);--filter-contrast: contrast(120%);--filter-hue-rotate: hue-rotate(90deg);--gradient-project-1: linear-gradient(135deg, #667eea, #764ba2);--gradient-project-2: linear-gradient(135deg, #4facfe, #00f2fe);--gradient-project-3: linear-gradient(135deg, #f093fb, #f5576c)}body.light-theme,html.light-theme{--bg-primary: var(--gray-50);--bg-secondary: white;--bg-tertiary: var(--gray-100);--text-primary: var(--gray-900);--text-secondary: var(--gray-700);--text-tertiary: var(--gray-500);--border-color: var(--gray-200);--shadow-color: rgba(0, 0, 0, .1);--title-primary: var(--gray-900);--title-secondary: var(--gray-800);--section-title-color: var(--primary-700);--subtitle-color: var(--gray-700);--cta-description-color: var(--gray-700);--gradient-primary: linear-gradient(135deg, var(--primary-500), var(--primary-600));--gradient-secondary: linear-gradient(135deg, var(--secondary-500), var(--secondary-600));--gradient-accent: linear-gradient(135deg, var(--accent-500), var(--accent-600));--gradient-bg: linear-gradient(180deg, var(--bg-primary) 0%, var(--gray-100) 50%, var(--bg-primary) 100%);--gradient-hero: linear-gradient(135deg, var(--bg-primary) 0%, var(--gray-100) 50%, var(--gray-200) 100%);--gradient-card: linear-gradient(135deg, var(--bg-secondary), var(--bg-tertiary));--dark-overlay-1: rgba(0, 0, 0, .05);--dark-overlay-2: rgba(0, 0, 0, .1);--dark-overlay-3: rgba(0, 0, 0, .15);--primary-bg: rgba(99, 102, 241, .1);--secondary-bg: rgba(16, 185, 129, .1);--accent-bg: rgba(249, 115, 22, .1);--primary-glow: rgba(99, 102, 241, .3);--secondary-glow: rgba(16, 185, 129, .3);--accent-glow: rgba(249, 115, 22, .3);--gradient-interest-1: linear-gradient(135deg, rgba(102, 126, 234, .3), rgba(118, 75, 162, .3));--gradient-interest-2: linear-gradient(135deg, rgba(240, 147, 251, .3), rgba(245, 87, 108, .3));--gradient-interest-3: linear-gradient(135deg, rgba(79, 172, 254, .3), rgba(0, 242, 254, .3));--gradient-interest-4: linear-gradient(135deg, rgba(168, 237, 234, .3), rgba(254, 214, 227, .3));--gradient-interest-5: linear-gradient(135deg, rgba(255, 154, 158, .3), rgba(254, 207, 239, .3));--gradient-project-1: linear-gradient(135deg, rgba(102, 126, 234, .4), rgba(118, 75, 162, .4));--gradient-project-2: linear-gradient(135deg, rgba(79, 172, 254, .4), rgba(0, 242, 254, .4));--gradient-project-3: linear-gradient(135deg, rgba(240, 147, 251, .4), rgba(245, 87, 108, .4));--glow-color: rgba(0, 0, 0, .4);--terminal-bg: var(--bg-secondary);--terminal-header-bg: var(--bg-tertiary);--terminal-text: var(--text-primary);--terminal-keyword: #d73a49;--terminal-class: #005cc5;--terminal-property: #6f42c1;--terminal-method: #22863a;--terminal-string: #e36209}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-sans);font-size:16px;line-height:1.5;color:var(--text-primary);background-color:var(--bg-primary);transition:background-color var(--transition-normal),color var(--transition-normal)}h1,h2,h3,h4,h5,h6{line-height:1.2;margin-bottom:var(--space-4);font-weight:600;color:var(--title-primary)}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}p{margin-bottom:var(--space-4)}a{color:var(--primary-600);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--primary-500)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--space-4)}.section{padding:var(--space-16) 0}.section-title{margin-bottom:var(--space-10);position:relative;display:inline-block;color:var(--section-title-color)}.section-title:after{content:"";position:absolute;left:0;bottom:-8px;width:60px;height:4px;background-color:var(--primary-500)}.code-font{font-family:var(--font-mono);text-shadow:none;box-shadow:none}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-3) var(--space-6);border-radius:4px;font-weight:500;transition:all var(--transition-fast);cursor:pointer;border:none;outline:none}.btn-primary{background-color:var(--primary-600);color:#fff}.btn-primary:hover{background-color:var(--primary-700);transform:translateY(-2px)}.btn-secondary{background-color:transparent;color:var(--primary-600);border:1px solid var(--primary-600)}.btn-secondary:hover{background-color:var(--primary-50);transform:translateY(-2px)}.fade-in{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.fade-in.active{opacity:1;transform:translateY(0)}.fade-in:not(.active){animation:fallback-fade-in .6s ease 2s forwards}@keyframes fallback-fade-in{to{opacity:1;transform:translateY(0)}}.project-title-visible{opacity:1!important;transform:translateY(0)!important;animation:none!important;transition:none!important;color:var(--text-primary)}.stagger-delay-1{transition-delay:.1s}.stagger-delay-2{transition-delay:.2s}.stagger-delay-3{transition-delay:.3s}@media (max-width: 768px){h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.25rem}.section{padding:var(--space-10) 0}}@media (max-width: 576px){body{font-size:14px}h1{font-size:1.75rem}h2{font-size:1.5rem}h3{font-size:1.2rem}.container{padding:0 var(--space-3)}.section{padding:var(--space-8) 0}}@media (max-width: 480px){:root{--space-1: .2rem;--space-2: .4rem;--space-3: .6rem;--space-4: .8rem;--space-5: 1rem;--space-6: 1.2rem;--space-8: 1.5rem;--space-10: 2rem;--space-12: 2.5rem;--space-16: 3rem;--space-20: 4rem}body{font-size:14px;line-height:1.4}h1{font-size:1.5rem;line-height:1.3}h2{font-size:1.3rem;line-height:1.3}h3{font-size:1.1rem;line-height:1.3}.container{padding:0 var(--space-2)}.section{padding:var(--space-6) 0}.btn{padding:var(--space-2) var(--space-4);font-size:.9rem}}@media (max-width: 320px){body{font-size:13px}h1{font-size:1.4rem}h2{font-size:1.2rem}h3{font-size:1rem}.container{padding:0 var(--space-1)}.btn{padding:var(--space-2) var(--space-3);font-size:.85rem}}#particles-js{position:absolute;width:100%;height:100%;top:0;left:0;z-index:-1;pointer-events:none}.terminal{background-color:var(--gray-900);color:var(--gray-100);border-radius:8px;padding:var(--space-4);font-family:var(--font-mono);position:relative;overflow:hidden}.terminal:before{content:"";position:absolute;top:0;left:0;right:0;height:28px;background-color:var(--gray-700);border-top-left-radius:8px;border-top-right-radius:8px}.terminal:after{content:"\25cf  \25cf  \25cf";position:absolute;top:7px;left:10px;font-size:12px;color:var(--gray-500)}.terminal-content{margin-top:28px;padding:var(--space-2)}.console-message{font-family:var(--font-mono);padding:var(--space-3);background-color:var(--gray-800);border-left:3px solid var(--primary-500);color:var(--gray-100);margin:var(--space-4) 0}.console-message .method{color:var(--secondary-500)}.console-message .string{color:var(--accent-500)}.code-comment{color:var(--gray-500);font-family:var(--font-mono);font-size:.9em;display:block;margin-bottom:var(--space-2)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.skill-bar{height:8px;background-color:var(--gray-200);border-radius:4px;margin-bottom:var(--space-4);overflow:hidden}.skill-progress{height:100%;background-color:var(--primary-600);width:0;transition:width 1.5s ease}.project-card{background-color:var(--bg-secondary);border-radius:8px;overflow:hidden;box-shadow:0 4px 6px var(--shadow-color);transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.project-card:hover{transform:translateY(-5px);box-shadow:0 10px 15px var(--shadow-color)}.form-group{margin-bottom:var(--space-4)}.form-control{width:100%;padding:var(--space-3);font-family:var(--font-sans);font-size:1rem;border:1px solid var(--border-color);border-radius:4px;background-color:var(--bg-secondary);color:var(--text-primary);transition:border-color var(--transition-fast)}.form-control:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #6366f133}.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--space-6)}@media (max-width: 768px){.grid{gap:var(--space-4)}}
