@font-face{font-family:Unbounded;font-style:normal;font-weight:400;font-display:swap;src:url(../media/d0d9446e69c4847e-s.10blc4._e8owh.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:Unbounded;font-style:normal;font-weight:400;font-display:swap;src:url(../media/4e1c87b7aa9e2f2f-s.12gpghvmuotht.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Unbounded;font-style:normal;font-weight:400;font-display:swap;src:url(../media/3fd967fc5374d70a-s.17n1p.kggnicm.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:Unbounded;font-style:normal;font-weight:400;font-display:swap;src:url(../media/dd14639a62c56cb2-s.06a7f.f9wwf6c.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:Unbounded;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b59689b1142d37ce-s.p.0f8~qglggluhl.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:Unbounded;font-style:normal;font-weight:700;font-display:swap;src:url(../media/d0d9446e69c4847e-s.10blc4._e8owh.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:Unbounded;font-style:normal;font-weight:700;font-display:swap;src:url(../media/4e1c87b7aa9e2f2f-s.12gpghvmuotht.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Unbounded;font-style:normal;font-weight:700;font-display:swap;src:url(../media/3fd967fc5374d70a-s.17n1p.kggnicm.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:Unbounded;font-style:normal;font-weight:700;font-display:swap;src:url(../media/dd14639a62c56cb2-s.06a7f.f9wwf6c.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:Unbounded;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b59689b1142d37ce-s.p.0f8~qglggluhl.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:Unbounded;font-style:normal;font-weight:800;font-display:swap;src:url(../media/d0d9446e69c4847e-s.10blc4._e8owh.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:Unbounded;font-style:normal;font-weight:800;font-display:swap;src:url(../media/4e1c87b7aa9e2f2f-s.12gpghvmuotht.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Unbounded;font-style:normal;font-weight:800;font-display:swap;src:url(../media/3fd967fc5374d70a-s.17n1p.kggnicm.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:Unbounded;font-style:normal;font-weight:800;font-display:swap;src:url(../media/dd14639a62c56cb2-s.06a7f.f9wwf6c.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:Unbounded;font-style:normal;font-weight:800;font-display:swap;src:url(../media/b59689b1142d37ce-s.p.0f8~qglggluhl.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:Unbounded;font-style:normal;font-weight:900;font-display:swap;src:url(../media/d0d9446e69c4847e-s.10blc4._e8owh.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:Unbounded;font-style:normal;font-weight:900;font-display:swap;src:url(../media/4e1c87b7aa9e2f2f-s.12gpghvmuotht.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Unbounded;font-style:normal;font-weight:900;font-display:swap;src:url(../media/3fd967fc5374d70a-s.17n1p.kggnicm.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:Unbounded;font-style:normal;font-weight:900;font-display:swap;src:url(../media/dd14639a62c56cb2-s.06a7f.f9wwf6c.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:Unbounded;font-style:normal;font-weight:900;font-display:swap;src:url(../media/b59689b1142d37ce-s.p.0f8~qglggluhl.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:Unbounded Fallback;src:local(Arial);ascent-override:73.93%;descent-override:18.2%;line-gap-override:0.0%;size-adjust:134.59%}.unbounded_5d77b79-module__EjgNNa__className{font-family:Unbounded,Unbounded Fallback;font-style:normal}.unbounded_5d77b79-module__EjgNNa__variable{--font-unbounded:"Unbounded", "Unbounded Fallback"}
@font-face{font-family:Outfit;font-style:normal;font-weight:300;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.0kjod.kaq1k69.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:Outfit;font-style:normal;font-weight:300;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.0gx2haw2tmll8.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:Outfit;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.0kjod.kaq1k69.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:Outfit;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.0gx2haw2tmll8.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:Outfit;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.0kjod.kaq1k69.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:Outfit;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.0gx2haw2tmll8.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:Outfit;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.0kjod.kaq1k69.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:Outfit;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.0gx2haw2tmll8.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:Outfit Fallback;src:local(Arial);ascent-override:100.18%;descent-override:26.05%;line-gap-override:0.0%;size-adjust:99.82%}.outfit_f9473f07-module__y6-DPa__className{font-family:Outfit,Outfit Fallback;font-style:normal}.outfit_f9473f07-module__y6-DPa__variable{--font-outfit:"Outfit", "Outfit Fallback"}
*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#000;--surface:#0a0a0a;--card:#111;--border:#ffffff14;--cyan:#00e878;--purple:#00bfff;--text:#f0f0ff;--muted:#889;--font-head:var(--font-unbounded,"Unbounded", sans-serif);--font-mono:var(--font-outfit,"Outfit", sans-serif)}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-head);cursor:none;overflow-x:hidden}#cursor{background:var(--cyan);pointer-events:none;z-index:9999;border-radius:50%;width:12px;height:12px;transition:transform .1s,width .2s,height .2s,background .2s;position:fixed;transform:translate(-50%,-50%)}#cursor-ring{pointer-events:none;z-index:9998;border:1px solid #00e87866;border-radius:50%;width:36px;height:36px;transition:transform .15s ease-out,width .2s,height .2s;position:fixed;transform:translate(-50%,-50%)}@media (pointer:coarse){body{cursor:auto}#cursor,#cursor-ring{display:none}}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--purple);border-radius:2px}nav{z-index:1100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);background:#000000d9;justify-content:space-between;align-items:center;padding:1.2rem 6vw;display:flex;position:fixed;top:0;left:0;right:0}.nav-logo{align-items:center;height:45px;display:flex}.nav-links{gap:2rem;list-style:none;display:flex}.nav-links a{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.85rem;font-family:var(--font-mono);text-decoration:none;transition:color .2s}.nav-links a:hover{color:var(--cyan)}.nav-hamburger{cursor:pointer;z-index:1200;background:0 0;border:none;flex-direction:column;justify-content:space-between;width:24px;height:18px;padding:0;display:none}.nav-hamburger span{background-color:var(--text);transform-origin:0;border-radius:10px;width:100%;height:2px;transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.nav-hamburger.open span:first-child{transform:rotate(45deg)translate(2px,-2px)}.nav-hamburger.open span:nth-child(2){opacity:0;transform:scale(0)}.nav-hamburger.open span:last-child{transform:rotate(-45deg)translate(2px,2px)}.mobile-menu{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:1050;background:#000000f2;justify-content:center;align-items:center;width:100%;height:100vh;transition:transform .6s cubic-bezier(.85,0,.15,1);display:flex;position:fixed;top:0;left:0;transform:translateY(-100%)}.mobile-menu.open{transform:translateY(0)}.mobile-links{text-align:center;flex-direction:column;gap:2rem;list-style:none;display:flex}.mobile-links a{color:var(--text);font-size:2.2rem;font-weight:800;text-decoration:none;transition:color .3s}.mobile-links a:hover{color:var(--cyan)}@media (max-width:768px){.nav-links{display:none}.nav-hamburger{display:flex}}body:before{content:"";pointer-events:none;z-index:1;opacity:.4;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.03'/%3E%3C/svg%3E");position:fixed;inset:0}.grid-bg{z-index:0;pointer-events:none;background-image:linear-gradient(#00e87808 1px,#0000 1px),linear-gradient(90deg,#00e87808 1px,#0000 1px);background-size:60px 60px;position:fixed;inset:0}section{z-index:2;position:relative}#hero{flex-direction:column;justify-content:center;min-height:100vh;padding:80px 6vw 0;display:flex}.hero-tag{font-family:var(--font-mono);color:var(--cyan);letter-spacing:.2em;text-transform:uppercase;align-items:center;gap:10px;margin-bottom:1.5rem;font-size:.8rem;display:flex}.hero-tag:before{content:"";background:var(--cyan);width:40px;height:1px}h1.hero-title{letter-spacing:-.03em;margin-bottom:1rem;font-size:clamp(3.5rem,10vw,8rem);font-weight:800;line-height:.95}.hero-title .name-gradient{background:linear-gradient(135deg, var(--cyan) 0%, var(--purple) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero-subtitle{font-family:var(--font-mono);color:var(--muted);margin-bottom:2.5rem;font-size:clamp(1rem,2.5vw,1.4rem)}.typed-text{color:var(--cyan)}.cursor-blink{background:var(--cyan);vertical-align:middle;width:2px;height:1.1em;margin-left:2px;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.hero-ctas{flex-wrap:wrap;gap:1rem;display:flex}.btn-primary{border:1px solid var(--cyan);color:var(--cyan);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;padding:.8rem 2rem;font-size:.85rem;text-decoration:none;transition:color .3s;display:inline-block;position:relative;overflow:hidden}.btn-primary:before{content:"";background:var(--cyan);z-index:-1;transition:transform .3s;position:absolute;inset:0;transform:translate(-101%)}.btn-primary:hover{color:var(--bg)}.btn-primary:hover:before{transform:translate(0)}.btn-secondary{border:1px solid var(--purple);color:var(--purple);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;z-index:1;background:0 0;padding:.8rem 2rem;font-size:.85rem;text-decoration:none;transition:color .3s,border-color .3s;display:inline-block;position:relative;overflow:hidden}.btn-secondary:before{content:"";background:var(--purple);z-index:-1;transition:transform .3s;position:absolute;inset:0;transform:translate(-101%)}.btn-secondary:hover{color:#fff;border-color:var(--purple)}.btn-secondary:hover:before{transform:translate(0)}.btn-white{color:#fff;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;z-index:1;background:0 0;border:1px solid #fff;padding:.8rem 2rem;font-size:.85rem;text-decoration:none;transition:color .3s,border-color .3s;display:inline-block;position:relative;overflow:hidden}.btn-white:before{content:"";z-index:-1;background:#fff;transition:transform .3s;position:absolute;inset:0;transform:translate(-101%)}.btn-white:hover{color:#000;border-color:#fff}.btn-white:hover:before{transform:translate(0)}.hero-scroll{font-family:var(--font-mono);color:var(--muted);letter-spacing:.15em;text-transform:uppercase;align-items:center;gap:10px;font-size:.75rem;display:flex;position:absolute;bottom:2rem;left:6vw}.scroll-line{background:linear-gradient(to bottom, var(--muted), transparent);width:1px;height:50px;animation:2s ease-in-out infinite scrollDown}@keyframes scrollDown{0%{transform-origin:top;transform:scaleY(0)}50%{transform-origin:top;transform:scaleY(1)}51%{transform-origin:bottom;transform:scaleY(1)}to{transform-origin:bottom;transform:scaleY(0)}}.section-pad{padding:7rem 6vw}.section-label{font-family:var(--font-mono);color:var(--cyan);letter-spacing:.25em;text-transform:uppercase;margin-bottom:.5rem;font-size:.75rem}.section-title{letter-spacing:-.02em;margin-bottom:3rem;font-size:clamp(2rem,5vw,3.5rem);font-weight:800;line-height:1}.accent{color:var(--cyan)}.accent-p{color:var(--purple)}.about-grid{grid-template-columns:1fr 1.5fr;align-items:center;gap:4rem;display:grid}.about-image-wrap{position:relative}.about-avatar{aspect-ratio:1;background:var(--card);border:1px solid var(--border);justify-content:center;align-items:center;width:100%;max-width:340px;font-size:5rem;display:flex;position:relative;overflow:hidden}.about-avatar:after{content:"";background:linear-gradient(135deg,#00e87814,#00bfff14);position:absolute;inset:0}.about-avatar-corner{border-color:var(--cyan);z-index:3;border-style:solid;width:40px;height:40px;transition:all .5s cubic-bezier(.175,.885,.32,1.275);position:absolute}.about-avatar-corner.tl{border-width:2px 0 0 2px;top:-2px;left:-2px}.about-avatar-corner.br{border-width:0 2px 2px 0;bottom:-2px;right:-2px}.about-avatar:hover .about-avatar-corner{border-image:linear-gradient(135deg, var(--cyan), var(--purple)) 1;width:calc(100% + 4px);height:calc(100% + 4px)}.about-text p{color:var(--muted);margin-bottom:1.5rem;font-size:1.05rem;line-height:1.8}.about-text p span{color:var(--text)}.about-stats{grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem;display:grid}.stat-box{border:1px solid var(--border);background:var(--card);padding:1.2rem}.stat-num{color:var(--cyan);font-size:2rem;font-weight:800;line-height:1}.stat-label{font-family:var(--font-mono);color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-top:.4rem;font-size:.7rem}.skill-cat-card,.cert-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;min-width:200px;min-height:100px;padding:1rem;transition:all .3s cubic-bezier(.23,1,.32,1);display:flex}.skill-cat-card{flex-direction:column}.cert-card{flex-direction:row;align-items:center;gap:1.5rem}.skill-cat-card:hover,.cert-card:hover{border-color:var(--cyan-soft);transform:translateY(-5px);box-shadow:0 10px 30px #00000080}.skill-cat-header{font-family:var(--font-unbounded);letter-spacing:.05em;text-transform:uppercase;color:var(--text-dim);margin-bottom:1.5rem;font-size:.9rem}#skills{background:var(--surface)}.skills-container{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;display:grid}.skill-cat-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);background:#111111b3;padding:1.8rem;transition:all .3s;position:relative;overflow:hidden}.skill-cat-card:hover{border-color:#00e8784d;transform:translateY(-3px)}.skill-cat-card:before{content:"";background:linear-gradient(90deg, var(--cyan), transparent);height:1px;position:absolute;top:0;left:0;right:0}.skill-cat-header{font-family:var(--font-mono);color:var(--cyan);letter-spacing:.15em;text-transform:uppercase;opacity:.8;margin-bottom:1.5rem;font-size:.75rem}.skill-icons-grid{flex-wrap:wrap;justify-content:flex-start;gap:1.2rem;display:flex}.skill-icon-wrap{cursor:help;width:32px;height:32px;transition:transform .2s;position:relative}.skill-icon-wrap[data-tooltip]:after{content:attr(data-tooltip);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border);color:var(--purple);font-family:var(--font-mono);letter-spacing:.05em;white-space:nowrap;pointer-events:none;opacity:0;z-index:100;background:#0a0a0ae6;padding:.4rem .8rem;font-size:.65rem;font-weight:700;transition:all .25s cubic-bezier(.23,1,.32,1);position:absolute;bottom:140%;left:50%;transform:translate(-50%)translateY(5px);box-shadow:0 10px 30px #00000080}.skill-icon-wrap:hover[data-tooltip]:after{opacity:1;transform:translate(-50%)translateY(0)}.skill-icon-wrap:hover{transform:scale(1.2)translateY(-2px)}.skill-icon-img{object-fit:contain;filter:grayscale()brightness(.9)contrast(1.1);width:100%;height:100%;transition:filter .3s}.skill-icon-wrap:hover .skill-icon-img{filter:grayscale(0)brightness()contrast()}.projects-grid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:1.5rem;display:grid}.project-card{background:var(--card);border:1px solid var(--border);flex-direction:column;transition:transform .3s,border-color .3s;display:flex;position:relative;overflow:hidden}.project-card:hover{border-color:#00bfff66;transform:translateY(-4px)}.project-thumb{background:var(--surface);flex-shrink:0;justify-content:center;align-items:center;height:180px;font-size:3rem;display:flex;position:relative;overflow:hidden}.project-thumb:after{content:"";background:linear-gradient(to bottom, transparent 50%, var(--card));position:absolute;inset:0}.project-thumb-gradient{opacity:.15;position:absolute;inset:0}.project-body{flex-direction:column;flex-grow:1;padding:1.5rem;display:flex}.project-tags{flex-wrap:wrap;gap:.5rem;margin-bottom:.8rem;display:flex}.project-tag{font-family:var(--font-mono);color:var(--purple);letter-spacing:.08em;text-transform:uppercase;background:#00bfff1a;border:1px solid #00bfff33;padding:.2rem .6rem;font-size:.65rem}.project-title{color:var(--text);margin-bottom:.6rem;font-size:1.2rem;font-weight:700}.project-desc{color:var(--muted);font-size:.9rem;line-height:1.6;font-family:var(--font-mono);flex-grow:1;margin-bottom:1.2rem}.project-links{gap:1rem;margin-top:auto;display:flex}.project-link{font-family:var(--font-mono);color:var(--cyan);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:6px;font-size:.75rem;text-decoration:none;transition:color .2s;display:flex}.project-link:hover{color:var(--text)}.project-link-arrow{font-size:.65rem}#certifications{background:var(--surface)}.certs-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.2rem;display:grid}.cert-card{align-items:flex-start}.cert-icon{background:#00e87814;border:1px solid #00e87833;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.3rem;display:flex}.cert-name{color:var(--text);margin-bottom:.3rem;font-size:.95rem;font-weight:700}.cert-issuer{font-family:var(--font-mono);color:var(--cyan);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem}.cert-date{font-family:var(--font-mono);color:var(--muted);margin-top:.3rem;font-size:.7rem}.contact-wrap{grid-template-columns:1fr 1fr;align-items:start;gap:4rem;display:grid}.contact-tagline{margin-bottom:1.5rem;font-size:clamp(1.5rem,4vw,2.5rem);font-weight:800;line-height:1.1}.contact-desc{color:var(--muted);line-height:1.8;font-family:var(--font-mono);margin-bottom:2rem;font-size:.9rem}.contact-socials{flex-direction:column;gap:.8rem;display:flex}.social-link{color:var(--muted);font-family:var(--font-mono);border:1px solid var(--border);align-items:center;gap:1rem;padding:.8rem;font-size:.85rem;text-decoration:none;transition:all .2s;display:flex}.social-link:hover{border-color:var(--cyan);color:var(--cyan);background:#00e8780a}.social-icon{text-align:center;width:20px;font-size:1rem;font-weight:800}.contact-form{flex-direction:column;gap:1rem;display:flex}.form-group{flex-direction:column;gap:.4rem;display:flex}.form-label{font-family:var(--font-mono);color:var(--muted);letter-spacing:.15em;text-transform:uppercase;font-size:.7rem}.form-input,.form-textarea{background:var(--card);border:1px solid var(--border);color:var(--text);font-family:var(--font-mono);resize:none;outline:none;padding:.8rem 1rem;font-size:.9rem;transition:border-color .2s}.form-input:focus,.form-textarea:focus{border-color:var(--cyan)}.form-textarea{height:120px}.form-input.error,.form-textarea.error{border-color:#ff4d4d}.error-msg{font-family:var(--font-mono);color:#ff4d4d;letter-spacing:.05em;margin-top:.2rem;font-size:.7rem}.success-msg{font-family:var(--font-mono);color:var(--cyan);font-size:.85rem;animation:.5s forwards fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}footer{border-top:1px solid var(--border);z-index:2;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:2rem 6vw;display:flex;position:relative}.footer-copy{font-family:var(--font-mono);color:var(--muted);letter-spacing:.05em;font-size:.75rem}.footer-logo{background:linear-gradient(90deg, var(--cyan), var(--purple));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1rem;font-weight:800}#experience{background:var(--bg);position:relative;overflow:hidden}.experience-list{flex-direction:column;gap:4rem;margin-top:4rem;display:flex;position:relative}.experience-line{background:linear-gradient(to bottom, var(--cyan), var(--purple), transparent);opacity:.15;pointer-events:none;width:1px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.experience-item{grid-template-columns:1fr 80px 1fr;align-items:center;width:100%;display:grid}.experience-item:nth-child(2n){direction:rtl}.experience-item:nth-child(2n) .experience-article{text-align:left;direction:ltr}.experience-item:nth-child(2n) .experience-year{text-align:left}.experience-year-wrap{padding:0 2rem}.experience-year{font-family:var(--font-mono);color:var(--cyan);letter-spacing:.15em;text-align:right;font-size:.8rem;font-weight:800}.experience-dot-wrap{z-index:2;justify-content:center;align-items:center;display:flex;position:relative}.experience-dot{background:var(--bg);border:2px solid var(--cyan);width:12px;height:12px;box-shadow:0 0 15px var(--cyan);border-radius:50%}.experience-works{flex-direction:column;gap:1.5rem;padding:0 2rem;display:flex}.experience-article{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);background:#111111b3;padding:2rem;transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden;box-shadow:0 4px 24px -1px #0003}.experience-article:before{content:"";background:linear-gradient(90deg, var(--cyan), var(--purple));width:0%;height:2px;transition:width .4s;position:absolute;top:0;left:0}.experience-article:hover{background:#161616e6;border-color:#00e87880;transform:translateY(-5px);box-shadow:0 20px 40px -20px #00e87826}.experience-article:hover:before{width:100%}.experience-header{align-items:center;gap:1.2rem;margin-bottom:1.2rem;display:flex}.experience-icon{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.experience-company{font-family:var(--font-mono);color:var(--cyan);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.2rem;font-size:.95rem;font-weight:700;display:block}.experience-role{color:var(--text);margin-bottom:.4rem;font-size:1.3rem;font-weight:800;line-height:1.1}.experience-desc{color:var(--muted);opacity:.8;font-size:.95rem;line-height:1.8}@media (max-width:992px){.experience-line{bottom:0;left:16px;transform:none}.experience-list{gap:3.5rem}.experience-item{grid-template-columns:32px 1fr;align-items:flex-start;gap:0;direction:ltr!important}.experience-item:nth-child(2n) .experience-article,.experience-item:nth-child(2n) .experience-year{text-align:left}.experience-year-wrap{text-align:left;grid-column:2;min-width:auto;margin-bottom:.8rem;padding:0}.experience-year{text-align:left;letter-spacing:.1em;font-size:.75rem}.experience-dot-wrap{justify-content:flex-start;width:32px;height:12px;position:relative;left:-1px}.experience-dot{border-width:1.5px;width:10px;height:10px}.experience-works{grid-column:2;width:100%;padding:0}.experience-article{padding:1.5rem}.experience-role{font-size:1.1rem}.experience-icon{border-radius:8px;width:36px;height:36px}}.fade-up{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(30px)}.fade-up.visible{opacity:1;transform:translateY(0)}@media (max-width:768px){.about-grid,.contact-wrap{grid-template-columns:1fr}.nav-links{display:none}.about-stats{grid-template-columns:repeat(2,1fr)}}
