@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.06d3mdzz5bre_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.11.cyxs5p-0z~.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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.16t1db8_9y2o~.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:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.0q3udbd2bu5yp.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.0gw~uztddq1df.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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0.q-h669a_dqa.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:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@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: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;font-style:normal;font-weight:900;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:900;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_50536036-module__ylPyWa__className{font-family:Outfit,Outfit Fallback;font-style:normal}.outfit_50536036-module__ylPyWa__variable{--font-outfit:"Outfit", "Outfit Fallback"}
@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300;font-display:swap;src:url(../media/32687112bd2dd8db-s.0gspg~~t9nou8.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:Space Grotesk;font-style:normal;font-weight:300;font-display:swap;src:url(../media/28868e710e86be81-s.0rx81dn62y51_.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:Space Grotesk;font-style:normal;font-weight:300;font-display:swap;src:url(../media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.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:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(../media/32687112bd2dd8db-s.0gspg~~t9nou8.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:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(../media/28868e710e86be81-s.0rx81dn62y51_.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:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(../media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.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:Space Grotesk Fallback;src:local(Arial);ascent-override:89.71%;descent-override:26.62%;line-gap-override:0.0%;size-adjust:109.69%}.space_grotesk_c30f519e-module__TyOVia__className{font-family:Space Grotesk,Space Grotesk Fallback;font-style:normal}.space_grotesk_c30f519e-module__TyOVia__variable{--font-space-grotesk:"Space Grotesk", "Space Grotesk Fallback"}
:root{--cream-bg:#fdfaf6;--cream-surface:#f7f3ed;--text-main:#2d2a26;--text-muted:#6b6661;--accent:#c4b5a5;--card-bg:#fff;--about-bg:#fff;--education-bg:var(--accent);--cert-bg:var(--cream-bg);--nav-bg:#fdfaf6cc;--nav-border:#0000000d}[data-theme=dark]{--cream-bg:#0a0a0a;--cream-surface:#121212;--text-main:#ccc;--text-muted:#888;--accent:#8e8377;--card-bg:#141414;--about-bg:#000;--education-bg:#0d0d0d;--cert-bg:#0a0a0a;--hover-bg:#ffffff0d;--nav-bg:#121212d9;--nav-border:#ffffff14}[data-theme=dark] .card{border:1px solid #ffffff14;box-shadow:0 10px 30px #00000080}[data-theme=dark] .card:hover{border-color:#666;box-shadow:0 20px 40px #000000b3}[data-theme=dark] .btn{color:#ccc;background:#333;border:1px solid #444}[data-theme=dark] .input-field{color:#ccc;border-color:#ffffff1a}*{box-sizing:border-box;margin:0;padding:0;transition:background-color .4s,color .4s,border-color .4s}body{background-color:var(--cream-bg);color:var(--text-main);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;overflow-x:hidden}html{scroll-behavior:smooth}h1,h2,h3,h4,h5,h6{-webkit-user-select:none;user-select:none;margin:0;font-weight:500}p{margin:0 0 1rem}.reveal{opacity:0;transition:all .8s ease-out;transform:translateY(30px)}.reveal.active{opacity:1;transform:translateY(0)}.animate-fade-in{animation:.6s cubic-bezier(.16,1,.3,1) forwards fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes float-slow{0%{transform:translate(0)scale(1)}50%{transform:translate(2%,3%)scale(1.05)}to{transform:translate(-1%,-2%)scale(.98)}}@keyframes pulse{0%{box-shadow:0 0 #10b98166}70%{box-shadow:0 0 0 10px #10b98100}to{box-shadow:0 0 #10b98100}}@keyframes scroll-v{0%{transform:translateY(0)}to{transform:translateY(-50%)}}.typing-text{border-right:2px solid var(--accent);white-space:nowrap;animation:3s steps(20,end) infinite typing,.75s step-end infinite blink-caret;display:inline-block;overflow:hidden}@keyframes typing{0%{width:0}to{width:100%}}@keyframes blink-caret{0%,to{border-color:#0000}50%{border-color:var(--accent)}}.glitch{display:inline-block;position:relative}.glitch:before,.glitch:after{content:attr(data-text);background:var(--glitch-bg,var(--cream-bg));width:100%;height:100%;position:absolute;top:0;left:0}.glitch:before{text-shadow:-2px 0 #ff00c1;clip:rect(44px, 450px, 56px, 0);animation:5s linear infinite alternate-reverse glitch-anim;left:2px}.glitch:after{text-shadow:-2px 0 #00fff9,2px 2px #ff00c1;animation:1s linear infinite alternate-reverse glitch-anim2;left:-2px}@keyframes glitch-anim{0%{clip:rect(31px, 9999px, 94px, 0);transform:skew(.85deg)}5%{clip:rect(70px, 9999px, 71px, 0);transform:skew(.24deg)}10%{clip:rect(13px, 9999px, 11px, 0);transform:skew(.76deg)}15%{clip:rect(75px, 9999px, 99px, 0);transform:skew(.47deg)}20%{clip:rect(61px, 9999px, 67px, 0);transform:skew(.39deg)}25%{clip:rect(100px, 9999px, 95px, 0);transform:skew(.02deg)}30%{clip:rect(48px, 9999px, 43px, 0);transform:skew(.86deg)}35%{clip:rect(36px, 9999px, 47px, 0);transform:skew(.2deg)}40%{clip:rect(34px, 9999px, 86px, 0);transform:skew(.84deg)}45%{clip:rect(6px, 9999px, 7px, 0);transform:skew(.55deg)}50%{clip:rect(87px, 9999px, 97px, 0);transform:skew(.87deg)}55%{clip:rect(56px, 9999px, 2px, 0);transform:skew(.19deg)}60%{clip:rect(51px, 9999px, 82px, 0);transform:skew(.21deg)}65%{clip:rect(2px, 9999px, 34px, 0);transform:skew(.04deg)}70%{clip:rect(98px, 9999px, 42px, 0);transform:skew(.28deg)}75%{clip:rect(47px, 9999px, 83px, 0);transform:skew(.56deg)}80%{clip:rect(2px, 9999px, 60px, 0);transform:skew(.44deg)}85%{clip:rect(44px, 9999px, 86px, 0);transform:skew(.68deg)}90%{clip:rect(95px, 9999px, 81px, 0);transform:skew(.02deg)}95%{clip:rect(30px, 9999px, 12px, 0);transform:skew(.12deg)}to{clip:rect(42px, 9999px, 65px, 0);transform:skew(.97deg)}}@keyframes glitch-anim2{0%{clip:rect(65px, 9999px, 100px, 0);transform:skew(.87deg)}5%{clip:rect(54px, 9999px, 35px, 0);transform:skew(.5deg)}10%{clip:rect(96px, 9999px, 85px, 0);transform:skew(.25deg)}15%{clip:rect(38px, 9999px, 88px, 0);transform:skew(.3deg)}20%{clip:rect(40px, 9999px, 81px, 0);transform:skew(.1deg)}25%{clip:rect(89px, 9999px, 30px, 0);transform:skew(.96deg)}30%{clip:rect(55px, 9999px, 5px, 0);transform:skew(.96deg)}35%{clip:rect(42px, 9999px, 80px, 0);transform:skew(.48deg)}40%{clip:rect(100px, 9999px, 12px, 0);transform:skew(.84deg)}45%{clip:rect(96px, 9999px, 64px, 0);transform:skew(.2deg)}50%{clip:rect(78px, 9999px, 30px, 0);transform:skew(.72deg)}55%{clip:rect(6px, 9999px, 87px, 0);transform:skew(.14deg)}60%{clip:rect(64px, 9999px, 45px, 0);transform:skew(.04deg)}65%{clip:rect(12px, 9999px, 33px, 0);transform:skew(.39deg)}70%{clip:rect(36px, 9999px, 84px, 0);transform:skew(.08deg)}75%{clip:rect(55px, 9999px, 43px, 0);transform:skew(.98deg)}80%{clip:rect(4px, 9999px, 66px, 0);transform:skew(.66deg)}85%{clip:rect(13px, 9999px, 20px, 0);transform:skew(.41deg)}90%{clip:rect(32px, 9999px, 96px, 0);transform:skew(.86deg)}95%{clip:rect(59px, 9999px, 97px, 0);transform:skew(.96deg)}to{clip:rect(81px, 9999px, 80px, 0);transform:skew(.37deg)}}@keyframes glitch-image{0%{filter:grayscale()contrast(150%);transform:translate(0)}20%{filter:grayscale()contrast(200%)hue-rotate(90deg);transform:translate(-2px,2px)}40%{filter:grayscale()contrast(150%);transform:translate(-2px,-2px)}60%{filter:grayscale()contrast(300%)invert(10%);transform:translate(2px,2px)}80%{filter:grayscale()contrast(150%);transform:translate(2px,-2px)}to{filter:grayscale()contrast(150%);transform:translate(0)}}.section-title{font-family:var(--font-space-grotesk), sans-serif;text-transform:uppercase;letter-spacing:.2em;color:var(--text-main);text-align:center;width:fit-content;margin:0 auto 4rem;font-size:3.5rem;font-weight:700;display:block;position:relative}.section-title .glitch{font-family:var(--font-space-grotesk), sans-serif}.hero-title{letter-spacing:-.07em;line-height:.75;font-size:min(15vw,50rem)!important}@media (max-width:768px){.hero-title{text-align:right!important;letter-spacing:-.04em!important;width:100%!important;padding:0!important;font-size:clamp(2rem,11.5vw,4.5rem)!important;line-height:.9!important}.section-title{margin-bottom:2rem!important;font-size:1.8rem!important}.hero-name-container{text-align:right!important;width:100%!important;margin:0!important;display:block!important}}.hero-name-container{text-align:right;align-self:flex-end;width:100%}.project-btn{align-self:flex-start}@media (max-width:768px){.project-btn{align-self:stretch!important}}.container{width:100%;max-width:none;margin:0 auto;padding:0 8%}.section{flex-direction:column;justify-content:center;min-height:100vh;padding:100px 0;display:flex}.section-title{text-transform:uppercase;letter-spacing:.1em;text-align:center;color:var(--text-main);margin-bottom:4rem;padding-top:3rem;font-size:1.25rem;font-weight:800;position:relative}.section-title:after{content:"";background-color:var(--accent);width:60px;height:2px;margin:1rem auto 0;display:block}.hero{text-align:center;justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.hero h1{letter-spacing:-.02em;margin-bottom:1rem;font-size:4rem}.hero p{color:var(--text-muted);max-width:600px;margin:0 auto 2rem;font-size:1.25rem}.grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;display:grid}.nav-link{color:var(--text-main);z-index:1;border-radius:100px;padding:.5rem 1.25rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:all .4s cubic-bezier(.16,1,.3,1);position:relative}.nav-link:before{content:"";background:var(--hover-bg);z-index:-1;filter:blur(15px);border-radius:50%;width:0;height:0;transition:width .6s,height .6s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.card{background:var(--card-bg);border-radius:20px;transition:transform .4s,box-shadow .4s;overflow:hidden;box-shadow:0 10px 30px #00000008}.card:hover{transform:translateY(-5px);box-shadow:0 20px 40px #00000014}.btn{background:var(--text-main);color:#fff;cursor:pointer;border-radius:100px;padding:.75rem 1.5rem;font-weight:500;text-decoration:none;transition:background .3s,transform .3s;display:inline-block}.btn:hover{transform:translateY(-2px)}.btn:active{transform:scale(.96)}.click-animation:active{transform:scale(.95)!important}.card-image{aspect-ratio:16/9;width:100%;position:relative;overflow:hidden}.card-image img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.165,.84,.44,1)}.card:hover .card-image img{transform:scale(1.05)}.card-content{flex-direction:column;flex:1;padding:2rem;display:flex}.card h3{color:var(--text-main);margin-bottom:.5rem;font-size:1.5rem}.card p{color:var(--text-muted);font-size:1rem;line-height:1.6}.skills-list{flex-wrap:wrap;justify-content:center;gap:1rem;padding:0;list-style:none;display:flex}.skill-tag{background:var(--cream-surface);border:1px solid var(--accent);color:var(--text-main);border-radius:30px;padding:.5rem 1.5rem;font-size:.9rem;transition:all .3s}.skill-tag:hover{background:var(--accent);color:#fff}.contact-form{flex-direction:column;gap:1rem;max-width:600px;margin:0 auto;display:flex}.input-field{border:1px solid var(--accent);background:0 0;border-radius:8px;padding:1rem;font-family:inherit;font-size:1rem;transition:border-color .3s}.input-field:focus{border-color:var(--text-main);outline:none}.nav-link{z-index:1;color:var(--text-main);border-radius:30px;padding:.5rem 1.2rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:color .3s;position:relative;overflow:hidden}.nav-link:before{content:"";background-color:var(--hover-bg);z-index:-1;border-radius:50%;width:0;height:0;transition:width .4s cubic-bezier(.4,0,.2,1),height .4s cubic-bezier(.4,0,.2,1);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.nav-link:hover:before{width:150px;height:150px}:root{--font-size-base:clamp(1rem, .5vw + .8rem, 1.1rem);--font-size-h1:clamp(3rem, 18vw, 15rem);--font-size-h2:clamp(1.25rem, 2.5vw, 1.8rem)}body{font-size:var(--font-size-base)}.section-title{font-size:var(--font-size-h2)!important}@media (max-width:1024px){.grid{grid-template-columns:repeat(2,1fr)!important}}@media (max-width:768px){.hero{gap:4rem;min-height:100vh;justify-content:center!important;height:auto!important;padding:140px 8% 80px!important}.hero-sidebar{display:none!important}.section{height:auto!important;min-height:100vh!important;padding:100px 5%!important;overflow:visible!important}.grid{grid-template-columns:1fr!important;gap:2rem!important}nav{width:95%!important;padding:.8rem 1.5rem!important}.nav-links-container{display:none!important}.mobile-menu-btn{justify-content:center;align-items:center;display:flex!important}.about-content,.contact-container{flex-direction:column!important;gap:3rem!important}.contact-container>div{flex:100%!important;width:100%!important;min-width:0!important}.contact-form{padding:2rem!important}.contact-form>div{flex-direction:column!important;gap:1.5rem!important}.contact-form>div>input{flex:100%!important;width:100%!important}.hero{padding:100px 5% 50px!important}.hero h1{text-align:center!important}.btn{text-align:center;width:100%}}
