@import"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css";@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/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/v20/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/v20/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/v20/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/v20/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/v20/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/v20/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:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/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:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/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:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/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:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/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:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/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:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/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/v20/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/v20/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/v20/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/v20/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/v20/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/v20/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/v20/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/v20/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/v20/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/v20/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/v20/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/v20/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/v20/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/v20/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{--bg-primary: #0b0f14;--bg-secondary: #0f1720;--bg-tertiary: #122030;--text-primary: #eef2ff;--text-secondary: #b7c3d9;--text-muted: #7c8aa6;--surface-1: rgba(255, 255, 255, .04);--surface-2: rgba(255, 255, 255, .06);--border-subtle: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .16);--card-bg-1: rgba(255, 255, 255, .05);--card-bg-2: rgba(255, 255, 255, .02);--card-bg-soft-1: rgba(255, 255, 255, .03);--card-bg-soft-2: rgba(255, 255, 255, .01);--inset-highlight: rgba(255, 255, 255, .04);--nav-bg: rgba(11, 15, 20, .72);--nav-bg-scrolled: rgba(11, 15, 20, .86);--nav-border: rgba(255, 255, 255, .1);--nav-border-strong: rgba(255, 255, 255, .16);--nav-shadow: 0 12px 38px rgba(0, 0, 0, .35);--nav-shadow-scrolled: 0 18px 52px rgba(0, 0, 0, .45);--nav-pill-bg-1: rgba(255, 255, 255, .06);--nav-pill-bg-2: rgba(255, 255, 255, .02);--nav-pill-inset: rgba(255, 255, 255, .05);--overlay-bg: rgba(0, 0, 0, .72);--nav-glow-1: rgba(96, 165, 250, .1);--nav-glow-2: rgba(94, 234, 212, .08);--nav-sheet-bg-1: rgba(9, 12, 16, .96);--nav-sheet-bg-2: rgba(9, 12, 16, .92);--modal-bg-1: rgba(255, 255, 255, .06);--modal-bg-2: rgba(255, 255, 255, .03);--modal-border: rgba(255, 255, 255, .12);--modal-header-border: rgba(255, 255, 255, .1);--modal-shadow: 0 22px 80px rgba(0, 0, 0, .55);--modal-card-bg-1: rgba(255, 255, 255, .05);--modal-card-bg-2: rgba(255, 255, 255, .02);--modal-card-border: rgba(255, 255, 255, .12);--modal-card-shadow: 0 18px 45px rgba(0, 0, 0, .42);--neon-purple: #60a5fa;--neon-cyan: #5eead4;--neon-blue: #60a5fa;--neon-green: #5eead4;--neon-teal: #5eead4;--neon-pink: #fda4af;--neon-orange: #fdba74;--neon-yellow: #fde68a;--neon-red: #fb7185;--neon-indigo: #60a5fa;--gradient-primary: linear-gradient(135deg, var(--neon-purple), var(--neon-cyan));--gradient-secondary: linear-gradient(135deg, var(--neon-green), var(--neon-cyan));--gradient-accent: linear-gradient(135deg, var(--neon-pink), var(--neon-purple));--gradient-sunset: linear-gradient(135deg, var(--neon-purple), var(--neon-pink));--gradient-ocean: linear-gradient(135deg, var(--neon-cyan), var(--neon-blue));--gradient-forest: linear-gradient(135deg, var(--neon-green), var(--neon-teal));--gradient-fire: linear-gradient(135deg, var(--neon-pink), var(--neon-orange));--gradient-royal: linear-gradient(135deg, var(--neon-indigo), var(--neon-purple));--shadow-sm: 0 1px 2px rgba(0, 0, 0, .35);--shadow-md: 0 10px 30px rgba(0, 0, 0, .35);--shadow-lg: 0 18px 60px rgba(0, 0, 0, .45);--shadow-neon: 0 0 0 1px rgba(96, 165, 250, .1), 0 18px 60px rgba(0, 0, 0, .55);--shadow-neon-blue: 0 0 0 1px rgba(96, 165, 250, .1), 0 18px 60px rgba(0, 0, 0, .55);--shadow-neon-green: 0 0 0 1px rgba(94, 234, 212, .1), 0 18px 60px rgba(0, 0, 0, .55);--shadow-neon-pink: 0 0 0 1px rgba(253, 164, 175, .1), 0 18px 60px rgba(0, 0, 0, .55);--focus-ring: 0 0 0 4px rgba(94, 234, 212, .18);--glow-accent: rgba(94, 234, 212, .35);--glow-accent-soft: rgba(94, 234, 212, .18);--glow-blue: rgba(96, 165, 250, .28);--grid-line-1: rgba(255, 255, 255, .06);--grid-line-2: rgba(255, 255, 255, .04);--bg-glow-1: rgba(96, 165, 250, .12);--bg-glow-2: rgba(94, 234, 212, .08);--page-glow-1: rgba(96, 165, 250, .55);--page-glow-2: rgba(94, 234, 212, .45);--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 1.5rem;--spacing-lg: 2rem;--spacing-xl: 3rem;--spacing-2xl: 4rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--transition-fast: .2s ease;--transition-normal: .3s ease;--transition-slow: .5s ease;--transition-bounce: .6s cubic-bezier(.68, -.55, .265, 1.55);--transition-elastic: .8s cubic-bezier(.175, .885, .32, 1.275)}:root[data-theme=light]{--bg-primary: #f8fafc;--bg-secondary: #f1f5f9;--bg-tertiary: #e2e8f0;--text-primary: #0b1220;--text-secondary: #334155;--text-muted: #64748b;--surface-1: rgba(2, 6, 23, .04);--surface-2: rgba(2, 6, 23, .06);--border-subtle: rgba(2, 6, 23, .12);--border-strong: rgba(2, 6, 23, .18);--card-bg-1: rgba(2, 6, 23, .035);--card-bg-2: rgba(2, 6, 23, .018);--card-bg-soft-1: rgba(2, 6, 23, .028);--card-bg-soft-2: rgba(2, 6, 23, .012);--inset-highlight: rgba(2, 6, 23, .06);--nav-bg: rgba(248, 250, 252, .78);--nav-bg-scrolled: rgba(248, 250, 252, .92);--nav-border: rgba(2, 6, 23, .12);--nav-border-strong: rgba(2, 6, 23, .18);--nav-shadow: 0 10px 30px rgba(2, 6, 23, .1);--nav-shadow-scrolled: 0 16px 44px rgba(2, 6, 23, .14);--nav-pill-bg-1: rgba(2, 6, 23, .04);--nav-pill-bg-2: rgba(2, 6, 23, .02);--nav-pill-inset: rgba(255, 255, 255, .65);--overlay-bg: rgba(15, 23, 42, .56);--nav-glow-1: rgba(37, 99, 235, .1);--nav-glow-2: rgba(14, 116, 144, .08);--nav-sheet-bg-1: rgba(248, 250, 252, .96);--nav-sheet-bg-2: rgba(248, 250, 252, .92);--modal-bg-1: rgba(255, 255, 255, .9);--modal-bg-2: rgba(248, 250, 252, .82);--modal-border: rgba(2, 6, 23, .14);--modal-header-border: rgba(2, 6, 23, .1);--modal-shadow: 0 22px 80px rgba(2, 6, 23, .18);--modal-card-bg-1: rgba(255, 255, 255, .92);--modal-card-bg-2: rgba(248, 250, 252, .84);--modal-card-border: rgba(2, 6, 23, .12);--modal-card-shadow: 0 14px 34px rgba(2, 6, 23, .12);--focus-ring: 0 0 0 4px rgba(14, 116, 144, .18);--glow-accent: rgba(14, 116, 144, .22);--glow-accent-soft: rgba(14, 116, 144, .12);--glow-blue: rgba(37, 99, 235, .18);--shadow-sm: 0 1px 2px rgba(2, 6, 23, .12);--shadow-md: 0 10px 30px rgba(2, 6, 23, .14);--shadow-lg: 0 18px 60px rgba(2, 6, 23, .16);--grid-line-1: rgba(2, 6, 23, .07);--grid-line-2: rgba(2, 6, 23, .05);--bg-glow-1: rgba(37, 99, 235, .1);--bg-glow-2: rgba(14, 116, 144, .08);--page-glow-1: rgba(37, 99, 235, .2);--page-glow-2: rgba(14, 116, 144, .16)}*{margin:0;padding:0;box-sizing:border-box}.page{position:relative;min-height:100vh}.page-main{position:relative;z-index:1}.page-bg{position:fixed;inset:0;z-index:0;pointer-events:none}.page-bg .bg-grid{position:absolute;inset:0;background-image:linear-gradient(to right,var(--grid-line-1) 1px,transparent 1px),linear-gradient(to bottom,var(--grid-line-2) 1px,transparent 1px);background-size:64px 64px;opacity:.07;-webkit-mask-image:radial-gradient(60% 55% at 50% 40%,#000 45%,transparent 100%);mask-image:radial-gradient(60% 55% at 50% 40%,#000 45%,transparent 100%)}.page-bg .bg-glow{position:absolute;width:900px;height:900px;border-radius:50%;filter:blur(60px);opacity:.25}.page-bg .glow-1{top:-380px;left:-340px;background:radial-gradient(circle at 30% 30%,var(--page-glow-1),transparent 60%)}.page-bg .glow-2{right:-420px;bottom:-440px;background:radial-gradient(circle at 40% 40%,var(--page-glow-2),transparent 60%)}html{scroll-behavior:smooth;scroll-padding-top:84px;color-scheme:light dark}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:radial-gradient(1200px 800px at 10% 0%,var(--bg-glow-1),transparent 60%),radial-gradient(900px 600px at 90% 10%,var(--bg-glow-2),transparent 55%),linear-gradient(180deg,var(--bg-primary),var(--bg-primary) 55%,var(--bg-primary));color:var(--text-primary);line-height:1.6;overflow-x:hidden;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::selection{background:#5eead438;color:var(--text-primary)}a{color:inherit;text-decoration-color:#5eead459;text-underline-offset:4px}a:hover{text-decoration-color:#5eead499}button,a,input,textarea{outline:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{box-shadow:var(--focus-ring)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2;margin-bottom:var(--spacing-sm)}h1{font-size:clamp(2.1rem,5vw,3.5rem)}h2{font-size:clamp(1.7rem,3.8vw,2.5rem)}h3{font-size:clamp(1.35rem,3vw,2rem)}h4{font-size:clamp(1.15rem,2.2vw,1.5rem)}p{margin-bottom:var(--spacing-sm);color:var(--text-secondary)}.container{max-width:1160px;margin:0 auto;padding:0 var(--spacing-md)}.section{position:relative;padding:clamp(3.25rem,6vw,5.5rem) 0}.section-inner{position:relative}.section-head{display:grid;place-items:center;gap:.75rem;margin-bottom:clamp(1.75rem,4vw,3rem)}.section-decoration{width:min(520px,100%);height:1px;background:linear-gradient(90deg,transparent,rgba(94,234,212,.3),rgba(96,165,250,.26),transparent)}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.portfolio-container{min-height:100vh;overflow-y:auto;overflow-x:hidden}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--radius-md);font-size:1rem;font-weight:500;text-decoration:none;cursor:pointer;transition:all var(--transition-bounce);position:relative;overflow:hidden}.btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left var(--transition-slow)}.btn:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff1a;transform:translate(-50%,-50%);transition:all var(--transition-elastic)}.btn:hover:before{left:100%}.btn:hover:after{width:300px;height:300px}.btn:active{transform:scale(.95)}.btn.btn-primary{background:var(--gradient-primary);color:var(--text-primary);box-shadow:var(--shadow-neon)}.btn.btn-primary:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 0 40px #60a5fa66}.btn.btn-secondary{background:transparent;color:var(--neon-blue);border:2px solid var(--neon-blue)}.btn.btn-secondary:hover{background:var(--neon-blue);color:var(--text-primary);box-shadow:0 0 30px #3b82f699;transform:translateY(-2px)}.btn.btn-outline{background:transparent;color:var(--text-secondary);border:2px solid var(--text-muted)}.btn.btn-outline:hover{border-color:var(--neon-purple);color:var(--neon-purple);transform:translateY(-2px)}.btn.btn-gradient-sunset{background:var(--gradient-sunset);color:var(--text-primary);box-shadow:var(--shadow-neon-pink)}.btn.btn-gradient-sunset:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 0 40px #ec489999}.btn.btn-gradient-ocean{background:var(--gradient-ocean);color:var(--text-primary);box-shadow:var(--shadow-neon-blue)}.btn.btn-gradient-ocean:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 0 40px #3b82f699}section{padding:var(--spacing-2xl) 0;position:relative}section .section-title{text-align:center;margin-bottom:var(--spacing-2xl);font-size:2.5rem;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;position:relative}section .section-title:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:0;height:3px;background:var(--gradient-primary);animation:expandWidth 1s ease-out .5s forwards}section.section{padding:0}.section.section--about,.section.section--experience{background:linear-gradient(180deg,#ffffff08,#ffffff03);border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06)}.section.section--projects{background:linear-gradient(180deg,#5eead40a,#ffffff03);border-top:1px solid rgba(94,234,212,.1)}.footer{margin-top:0;position:relative;border-top:1px solid var(--border-subtle);background:radial-gradient(900px 240px at 50% 0%,rgba(94,234,212,.08),transparent 60%),linear-gradient(180deg,var(--card-bg-soft-1),transparent 70%);padding:2.25rem 0}.footer p{padding:0;margin:0;text-align:center;color:var(--text-muted);font-size:.95rem;letter-spacing:.01em}.footer:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(94,234,212,.34),rgba(96,165,250,.26),transparent);opacity:.9}.footer .container{display:flex;justify-content:center}.hero-section{min-height:100vh;display:flex;align-items:center;position:relative;overflow:hidden}.hero-section .hero-background{position:absolute;inset:0;z-index:-1}.hero-section .hero-background .blob{position:absolute;border-radius:50%;filter:blur(40px);opacity:.3;animation:float 6s ease-in-out infinite}.hero-section .hero-background .blob.blob-1{width:300px;height:300px;background:var(--neon-purple);top:10%;left:10%;animation-delay:0s;animation:float 8s ease-in-out infinite,colorShift 10s ease-in-out infinite}.hero-section .hero-background .blob.blob-2{width:250px;height:250px;background:var(--neon-blue);top:60%;right:10%;animation-delay:2s;animation:float 6s ease-in-out infinite reverse,colorShift 12s ease-in-out infinite}.hero-section .hero-background .blob.blob-3{width:200px;height:200px;background:var(--neon-green);bottom:10%;left:50%;animation-delay:4s;animation:float 10s ease-in-out infinite,colorShift 8s ease-in-out infinite}.hero-section .hero-background .blob.blob-4{width:150px;height:150px;background:var(--neon-pink);top:30%;right:30%;animation-delay:1s;animation:float 7s ease-in-out infinite,colorShift 15s ease-in-out infinite}.hero-section .hero-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-2xl);align-items:center;max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.hero-section .hero-content .hero-text .hero-title{margin-bottom:var(--spacing-md)}.hero-section .hero-content .hero-text .hero-title .title-line{display:block;font-size:1.5rem;color:var(--text-secondary);margin-bottom:var(--spacing-xs);animation:slideInLeft 1s ease-out .2s both}.hero-section .hero-content .hero-text .hero-title .title-name{display:block;font-size:4rem;font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:var(--spacing-xs);animation:slideInLeft 1s ease-out .4s both;position:relative}.hero-section .hero-content .hero-text .hero-title .title-name:after{content:"";position:absolute;inset:0;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:textGlow 2s ease-in-out infinite alternate}.hero-section .hero-content .hero-text .hero-title .title-role{display:block;font-size:2rem;color:var(--text-primary);margin-bottom:var(--spacing-xs);animation:slideInLeft 1s ease-out .6s both}.hero-section .hero-content .hero-text .hero-title .title-stack{display:block;font-size:1.5rem;color:var(--neon-blue);font-weight:500;animation:slideInLeft 1s ease-out .8s both}.hero-section .hero-content .hero-text .hero-tagline{font-size:1.25rem;color:var(--text-secondary);margin-bottom:var(--spacing-lg);animation:fadeInUp 1s ease-out 1s both}.hero-section .hero-content .hero-text .hero-actions{display:flex;gap:var(--spacing-md);flex-wrap:wrap;animation:fadeInUp 1s ease-out 1.2s both}.hero-section .hero-content .hero-text .hero-actions .btn{animation:bounceIn 1s ease-out 1.4s both}.hero-section .hero-content .hero-text .hero-actions .btn:nth-child(2){animation-delay:1.6s}.about-section{background:var(--bg-secondary);position:relative}.about-section .about-content{display:grid;grid-template-columns:1fr;gap:var(--spacing-xl);align-items:center}.about-section .about-content .about-text p{font-size:1.1rem;line-height:1.8;margin-bottom:var(--spacing-lg);animation:fadeInUp 1s ease-out .3s both}.about-section .about-content .skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-lg)}.about-section .about-content .skills-grid .skill-item{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);transition:all var(--transition-bounce);cursor:pointer}.about-section .about-content .skills-grid .skill-item:hover{transform:translateY(-5px);border-color:var(--neon-purple);box-shadow:0 10px 30px #5eead42e}.about-section .about-content .skills-grid .skill-item i{font-size:2rem;color:var(--neon-purple);margin-bottom:var(--spacing-sm);transition:all var(--transition-normal)}.about-section .about-content .skills-grid .skill-item span{font-weight:500;color:var(--text-primary)}.about-section .about-content .skills-grid .skill-item:nth-child(1) i{color:var(--neon-red)}.about-section .about-content .skills-grid .skill-item:nth-child(2) i{color:var(--neon-blue)}.about-section .about-content .skills-grid .skill-item:nth-child(3) i{color:var(--neon-yellow)}.about-section .about-content .skills-grid .skill-item:nth-child(4) i{color:var(--neon-green)}.about-section .about-content .skills-grid .skill-item:nth-child(5) i{color:var(--neon-purple)}.projects-section .projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--spacing-xl);margin-top:var(--spacing-xl)}.projects-section .projects-grid .project-card{background:var(--bg-secondary);border-radius:var(--radius-xl);padding:var(--spacing-lg);border:1px solid var(--border-subtle);transition:all var(--transition-bounce);position:relative;overflow:hidden}.projects-section .projects-grid .project-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-primary);transform:scaleX(0);transition:transform var(--transition-normal)}.projects-section .projects-grid .project-card:hover:before{transform:scaleX(1)}.projects-section .projects-grid .project-card .project-image{width:60px;height:60px;background:var(--gradient-primary);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-md)}.projects-section .projects-grid .project-card .project-image i{font-size:1.5rem;color:var(--text-primary)}.projects-section .projects-grid .project-card .project-content .project-title{font-size:1.5rem;margin-bottom:var(--spacing-sm);color:var(--text-primary)}.projects-section .projects-grid .project-card .project-content .project-description{color:var(--text-secondary);margin-bottom:var(--spacing-md);line-height:1.6}.projects-section .projects-grid .project-card .project-content .project-tech{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.projects-section .projects-grid .project-card .project-content .project-tech .tech-tag{background:var(--bg-tertiary);color:var(--neon-cyan);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:.8rem;font-weight:500;border:1px solid rgba(94,234,212,.18)}.experience-section{background:var(--bg-secondary)}.experience-section .timeline{position:relative;max-width:800px;margin:0 auto;padding:var(--spacing-xl) 0}.experience-section .timeline:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;background:var(--gradient-primary);transform:translate(-50%)}.experience-section .timeline .timeline-item{position:relative;margin-bottom:var(--spacing-xl)}.experience-section .timeline .timeline-item:nth-child(odd) .timeline-content{margin-left:0;margin-right:50%;padding-right:var(--spacing-lg);text-align:right}.experience-section .timeline .timeline-item:nth-child(odd) .timeline-marker{left:50%;transform:translate(-50%)}.experience-section .timeline .timeline-item:nth-child(2n) .timeline-content{margin-left:50%;margin-right:0;padding-left:var(--spacing-lg);text-align:left}.experience-section .timeline .timeline-item:nth-child(2n) .timeline-marker{left:50%;transform:translate(-50%)}.experience-section .timeline .timeline-item .timeline-marker{position:absolute;top:0;width:20px;height:20px;background:var(--gradient-primary);border-radius:50%;border:4px solid var(--bg-secondary);box-shadow:0 0 20px #60a5fa59;z-index:2}.experience-section .timeline .timeline-item .timeline-content{background:var(--bg-tertiary);padding:var(--spacing-lg);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);transition:all var(--transition-bounce)}.experience-section .timeline .timeline-item .timeline-content:hover{transform:translateY(-5px);border-color:var(--neon-purple);box-shadow:0 10px 30px #60a5fa38}.experience-section .timeline .timeline-item .timeline-content h3{color:var(--text-primary);margin-bottom:var(--spacing-xs)}.experience-section .timeline .timeline-item .timeline-content h4{color:var(--neon-blue);font-size:1rem;margin-bottom:var(--spacing-xs)}.experience-section .timeline .timeline-item .timeline-content .timeline-date{color:var(--neon-purple);font-size:.9rem;font-weight:500;margin-bottom:var(--spacing-sm)}.experience-section .timeline .timeline-item .timeline-content p{color:var(--text-secondary);line-height:1.6}.contact-section .contact-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-2xl);margin-top:var(--spacing-xl)}.contact-section .contact-content .contact-info .contact-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-lg);margin-bottom:var(--spacing-md);border:1px solid var(--border-subtle);transition:all var(--transition-bounce);cursor:pointer}.contact-section .contact-content .contact-info .contact-item:hover{transform:translate(10px);border-color:var(--neon-purple);box-shadow:0 5px 20px #60a5fa33}.contact-section .contact-content .contact-info .contact-item i{font-size:1.5rem;color:var(--neon-purple);width:30px;text-align:center}.contact-section .contact-content .contact-info .contact-item span{color:var(--text-secondary);font-weight:500}.contact-section .contact-content .contact-form .form-group{margin-bottom:var(--spacing-md)}.contact-section .contact-content .contact-form .form-group .form-input{width:100%;padding:var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);font-size:1rem;transition:all var(--transition-normal)}.contact-section .contact-content .contact-form .form-group .form-input::placeholder{color:var(--text-muted)}.contact-section .contact-content .contact-form .form-group .form-input:focus{outline:none;border-color:var(--neon-purple);box-shadow:0 0 20px #5eead42e}.contact-section .contact-content .contact-form .form-group .form-input:focus::placeholder{color:var(--neon-purple)}.contact-section .contact-content .contact-form .form-group textarea.form-input{resize:vertical;min-height:120px}.footer{background:var(--bg-secondary);text-align:center;padding:var(--spacing-lg) 0;border-top:1px solid var(--border-subtle)}.footer p{color:var(--text-muted);margin:0}.back-to-top{position:fixed;left:50%;bottom:16px;transform:translate(-50%) translateY(20px);width:44px;height:44px;border-radius:999px;border:1px solid rgba(94,234,212,.24);background:#0f0f14cc;color:var(--text-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:all .25s ease;z-index:1500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 24px #00000059}.back-to-top.visible{opacity:1;transform:translate(-50%) translateY(0)}.back-to-top:hover{border-color:#5eead48c;box-shadow:0 12px 28px #5eead42e}@keyframes float{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-20px) rotate(2deg)}50%{transform:translateY(-10px) rotate(0)}75%{transform:translateY(-30px) rotate(-2deg)}}@keyframes colorShift{0%,to{filter:hue-rotate(0deg) blur(40px)}25%{filter:hue-rotate(90deg) blur(45px)}50%{filter:hue-rotate(180deg) blur(40px)}75%{filter:hue-rotate(270deg) blur(45px)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3) translateY(50px)}50%{opacity:1;transform:scale(1.05) translateY(-10px)}70%{transform:scale(.9) translateY(0)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes logoGlow{0%{filter:drop-shadow(0 0 5px rgba(96,165,250,.25))}to{filter:drop-shadow(0 0 20px rgba(96,165,250,.55))}}@keyframes textGlow{0%{filter:drop-shadow(0 0 5px rgba(94,234,212,.18))}to{filter:drop-shadow(0 0 15px rgba(94,234,212,.4))}}@keyframes expandWidth{0%{width:0}to{width:100px}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes wave{0%,to{transform:translateY(0)}25%{transform:translateY(-10px)}75%{transform:translateY(10px)}}@media (max-width: 1024px){.hero-content{grid-template-columns:1fr!important;text-align:center}.contact-content{grid-template-columns:1fr!important;gap:var(--spacing-xl)!important}.timeline:before{left:20px!important}.timeline .timeline-item:nth-child(odd) .timeline-content,.timeline .timeline-item:nth-child(2n) .timeline-content{margin-left:50px!important;margin-right:0!important;padding-left:var(--spacing-lg)!important;padding-right:0!important;text-align:left!important}.timeline .timeline-item:nth-child(odd) .timeline-marker,.timeline .timeline-item:nth-child(2n) .timeline-marker{left:20px!important;transform:translate(-50%)!important}}@media (max-width: 768px){.navbar .nav-links{display:none}.hero-title .title-name{font-size:3rem!important}.hero-title .title-role{font-size:1.5rem!important}.hero-title .title-stack{font-size:1.25rem!important}.hero-actions{flex-direction:column;align-items:center}.hero-actions .btn{width:100%;max-width:300px}.skills-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))!important;gap:var(--spacing-sm)!important}.projects-grid{grid-template-columns:1fr!important;gap:var(--spacing-lg)!important}.contact-content .contact-info .contact-item{padding:var(--spacing-sm)!important}.contact-content .contact-info .contact-item i{font-size:1.2rem!important;width:25px!important}.contact-content .contact-info .contact-item span{font-size:.9rem!important}}@media (max-width: 480px){.container{padding:0 var(--spacing-sm)}.hero-title .title-name{font-size:2.5rem!important}.section-title{font-size:2rem!important}.btn{padding:var(--spacing-sm) var(--spacing-md);font-size:.9rem}.skills-grid{grid-template-columns:repeat(2,1fr)!important}.project-card{padding:var(--spacing-md)!important}.project-card .project-image{width:50px!important;height:50px!important}.project-card .project-image i{font-size:1.2rem!important}.timeline .timeline-item .timeline-content{padding:var(--spacing-md)!important}.timeline .timeline-item .timeline-content h3{font-size:1.2rem!important}.timeline .timeline-item .timeline-content h4{font-size:.9rem!important}.contact-content .contact-info .contact-item{flex-direction:column!important;text-align:center!important;gap:var(--spacing-sm)!important}}.animate-in{animation:fadeInUp .6s ease-out forwards}.animate-bounce{animation:bounceIn 1s ease-out forwards}.animate-slide-left{animation:slideInLeft 1s ease-out forwards}.animate-slide-right{animation:slideInRight 1s ease-out forwards}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-shake{animation:shake .5s ease-in-out}.animate-rotate{animation:rotate 2s linear infinite}.animate-wave{animation:wave 2s ease-in-out infinite}.text-gradient{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.text-gradient-sunset{background:var(--gradient-sunset);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.text-gradient-ocean{background:var(--gradient-ocean);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.glass-effect{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.neon-border{border:2px solid transparent;background:linear-gradient(var(--bg-secondary),var(--bg-secondary)) padding-box,var(--gradient-primary) border-box}.hover-lift{transition:transform var(--transition-bounce)}.hover-lift:hover{transform:translateY(-5px)}.hover-scale{transition:transform var(--transition-bounce)}.hover-scale:hover{transform:scale(1.05)}.hover-glow{transition:box-shadow var(--transition-normal)}.hover-glow:hover{box-shadow:0 0 30px #60a5fa59}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}::-webkit-scrollbar-thumb{background:linear-gradient(135deg,var(--neon-purple),var(--neon-cyan));border-radius:4px;transition:all .3s ease}::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,var(--neon-purple),rgba(34,211,238,.9));transform:scale(1.1)}*{scrollbar-width:thin;scrollbar-color:var(--neon-purple) rgba(255,255,255,.05)}
