body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(90deg,#fff,#f9f9f9);box-shadow:0 2px 8px #00000017;height:72px;left:0;position:fixed;top:0;transition:all .3s ease;width:100%;z-index:1000}.header-container{align-items:center;display:flex;height:100%;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 2rem}.logo{text-decoration:none}.logo-text{color:#000;font-size:1.5rem;font-weight:600;letter-spacing:-.5px;transition:color .3s ease}.header-right{gap:1rem}.header-right,.nav-links,.nav-menu{align-items:center;display:flex}.nav-links{gap:2rem}.nav-links a{color:#000;font-size:1rem;padding:.5rem 0;position:relative;text-decoration:none;transition:all .3s ease}.nav-links a:after{background-color:#ff9100;bottom:0;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);transition:all .3s ease;width:0}.nav-links a:hover:after{width:100%}.theme-toggle{align-items:center;background:none;border:2px solid #0000001a;border-radius:50%;cursor:pointer;display:flex;font-size:1.25rem;height:40px;justify-content:center;padding:.5rem;transition:all .3s ease;width:40px}.theme-toggle:hover{background-color:#0000000d;border-color:#0003;transform:rotate(1turn)}.theme-toggle-icon{justify-content:center;line-height:1}.back-btn,.theme-toggle-icon{align-items:center;display:flex}.back-btn{background:#ff91001a;border:2px solid #ff91004d;border-radius:8px;color:#ff9100;cursor:pointer;font-size:1rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;transition:all .3s ease}.back-btn:hover{background:#ff9100;border-color:#ff9100;color:#fff;transform:translateX(-3px)}.back-icon{height:20px;transition:transform .3s ease;width:20px}.back-btn:hover .back-icon{transform:translateX(-3px)}.mobile-menu-btn{display:none}.menu-icon,.menu-icon:after,.menu-icon:before{background-color:#000}.menu-icon{display:block;height:2px;position:relative;transition:all .3s ease;width:24px}.menu-icon:after,.menu-icon:before{content:"";height:2px;position:absolute;transition:all .3s ease;width:24px}.menu-icon:before{top:-8px}.menu-icon:after{bottom:-8px}@media (max-width:768px){.mobile-menu-btn{background:none;border:none;cursor:pointer;display:block;padding:.5rem;z-index:1001}.mobile-menu-btn.active .menu-icon{background-color:initial}.mobile-menu-btn.active .menu-icon:before{top:0;transform:rotate(45deg)}.mobile-menu-btn.active .menu-icon:after{bottom:0;transform:rotate(-45deg)}.nav-menu{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffffa;display:flex;flex-direction:column;height:100vh;justify-content:center;left:0;opacity:0;position:fixed;top:0;transition:all .3s ease;visibility:hidden;width:100%}.nav-menu.active{opacity:1;visibility:visible}.nav-links{align-items:center;flex-direction:column;gap:2rem}.nav-links a{font-size:1.5rem}.theme-toggle{box-shadow:0 2px 8px #0000001a}.dark-mode .theme-toggle{box-shadow:0 2px 8px #0000004d}}.dark-mode .header{background:#000000d9;box-shadow:0 2px 8px #ffffff1a}.dark-mode .nav-menu{background:#000000f2}.dark-mode .logo-text,.dark-mode .nav-links a{color:#fff}.dark-mode .menu-icon,.dark-mode .menu-icon:after,.dark-mode .menu-icon:before{background-color:#fff}.dark-mode .mobile-menu-btn.active .menu-icon{background-color:initial}.dark-mode .nav-links a:after{background-color:#fff}.dark-mode .theme-toggle{border-color:#ffffff1a}.dark-mode .theme-toggle:hover{background-color:#ffffff0d;border-color:#fff3}.dark-mode .back-btn{background:#ff910026;border-color:#ff910066;color:orange}.dark-mode .back-btn:hover{background:#ff9100;border-color:#ff9100;color:#fff}:root{--neutral-50:#fafafa;--neutral-100:#f5f5f5;--neutral-200:#e5e5e5;--neutral-300:#d4d4d4;--neutral-400:#a3a3a3;--neutral-500:#737373;--neutral-600:#525252;--neutral-700:#404040;--neutral-800:#262626;--neutral-900:#171717;--primary-50:#f0f9ff;--primary-100:#e0f2fe;--primary-200:#bae6fd;--primary-300:#7dd3fc;--primary-400:#38bdf8;--primary-500:#0ea5e9;--primary-600:#0284c7;--primary-700:#0369a1;--primary-800:#075985;--primary-900:#0c4a6e;--accent-rose:#ff2d55;--accent-mauve:#af52de;--accent-lavender:#5856d6;--accent-azure:#007aff;--accent-mint:#00c7be;--accent-teal:#30b0c7;--accent-forest:#34c759;--accent-amber:#ff9500;--accent-sunset:#ff3b30;--success-light:#dcfce7;--success-base:#22c55e;--success-dark:#15803d;--warning-light:#fef3c7;--warning-base:#f59e0b;--warning-dark:#b45309;--error-light:#fee2e2;--error-base:#ef4444;--error-dark:#b91c1c;--info-light:#dbeafe;--info-base:#3b82f6;--info-dark:#1d4ed8;--surface-primary:var(--rgb-frost);--surface-secondary:var(--rgb-mist);--surface-tertiary:var(--rgb-cloud);--surface-inverse:var(--neutral-900);--text-primary:var(--neutral-900);--text-secondary:var(--neutral-500);--text-tertiary:var(--neutral-400);--text-inverse:var(--neutral-50);--border-light:var(--neutral-200);--border-medium:var(--neutral-300);--border-heavy:var(--neutral-400);--backdrop-blur:#ffffffd9;--glass-effect:#fff3;--shadow-color:#0000001a;--overlay-light:#0003;--overlay-medium:#00000080;--overlay-heavy:#000000b3;--rgb-slate-50:#f8fafc;--rgb-slate-100:#f1f5f9;--rgb-slate-200:#e2e8f0;--rgb-slate-300:#cbd5e1;--rgb-slate-400:#94a3b8;--rgb-slate-500:#64748b;--rgb-slate-600:#475569;--rgb-slate-700:#334155;--rgb-slate-800:#1e293b;--rgb-slate-900:#0f172a;--rgb-violet:#8b5cf6;--rgb-indigo:#6366f1;--rgb-blue:#3b82f6;--rgb-cyan:#22d3ee;--rgb-emerald:#10b981;--rgb-lime:#84cc16;--rgb-amber:#f59e0b;--rgb-orange:#f97316;--rgb-red:#ef4444;--rgb-pink:#ec4899;--gradient-purple:linear-gradient(135deg,#c084fc,#8b5cf6);--gradient-blue:linear-gradient(135deg,var(--rgb-cyan),var(--rgb-blue));--gradient-cyan:linear-gradient(135deg,var(--rgb-cyan),#06b6d4);--gradient-emerald:linear-gradient(135deg,#10b981,#059669);--gradient-orange:linear-gradient(135deg,var(--rgb-orange),var(--rgb-amber));--gradient-pink:linear-gradient(135deg,var(--rgb-pink),#db2777);--rgb-white-alpha-10:#ffffff1a;--rgb-white-alpha-20:#fff3;--rgb-white-alpha-50:#ffffff80;--rgb-black-alpha-10:#0000001a;--rgb-black-alpha-20:#0003;--rgb-black-alpha-50:#00000080;--rgb-frost:#f2f5fa;--rgb-mist:#eceff4;--rgb-cloud:#e5e9f0;--rgb-smoke:#d1d5db;--rgb-steel:#6b7280;--rgb-storm:#374151;--rgb-night:#111827;--rgb-spotify:#1ed760;--rgb-discord:#7289da;--rgb-twitter:#1da1f2;--rgb-linkedin:#0077b5;--rgb-github:#24292e}@media (prefers-color-scheme:dark){:root{--surface-primary:var(--neutral-900);--surface-secondary:var(--neutral-800);--surface-tertiary:var(--neutral-700);--surface-inverse:var(--neutral-50);--text-primary:var(--neutral-50);--text-secondary:var(--neutral-300);--text-tertiary:var(--neutral-500);--text-inverse:var(--neutral-900);--border-light:var(--neutral-700);--border-medium:var(--neutral-600);--border-heavy:var(--neutral-500);--backdrop-blur:#000000d9;--glass-effect:#0003;--shadow-color:#0000004d}}@media (max-width:640px){:root{--text-secondary:var(--neutral-800);--border-light:var(--neutral-300)}}:root{--transition-fast:200ms cubic-bezier(0.4,0,0.2,1);--transition-normal:300ms cubic-bezier(0.4,0,0.2,1);--transition-slow:400ms cubic-bezier(0.4,0,0.2,1);--scale-hover:1.05;--scale-active:0.95}.nav-links a{animation:fadeInUp .5s ease-out forwards;opacity:0}.nav-links a:first-child{animation-delay:.1s}.nav-links a:nth-child(2){animation-delay:.2s}.nav-links a:nth-child(3){animation-delay:.3s}.nav-links a:nth-child(4){animation-delay:.4s}.about{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(180deg,#fffffff2 0,#0000);display:flex;min-height:100vh;padding:1rem 2rem;transition:background-color .5s ease;transition:all .3s ease}.about-container{align-items:center;display:flex;gap:4rem;justify-content:space-between;margin:0 auto;max-width:1200px;padding:72px 0;position:relative;width:100%}.about-content{animation:fadeInUp .8s ease forwards;flex:1 1;max-width:600px;opacity:0;transform:translateY(20px)}.about-content h1{animation:fadeInUp .6s ease .2s forwards;color:#000;font-size:3rem;font-weight:600;letter-spacing:-.5px;margin-bottom:1rem}.about-content h1,.about-content p{opacity:0;transition:color .3s ease}.about-content p{animation:fadeInUp .6s ease .4s forwards;color:#333;font-size:1.125rem;line-height:1.6;margin:0}.highlight-name{-webkit-text-fill-color:#0000;background:linear-gradient(45deg,#d11313,#fcce03);-webkit-background-clip:text;background-clip:text;display:inline-block;font-weight:600;position:relative}.highlight-name:after{animation:expandWidth .6s ease .8s forwards;background:linear-gradient(45deg,#d11313,#fcce03);bottom:-2px;content:"";height:2px;left:0;position:absolute;width:0}.about-visual{align-items:center;animation:fadeInScale 1s ease .4s forwards;display:flex;flex:1 1;justify-content:center;max-width:500px;opacity:0;transform:scale(.95)}.image-container{border-radius:24px;box-shadow:0 20px 40px #0000001a;line-height:0;overflow:hidden;position:relative;transition:all .3s ease;width:100%}.image-container:after{border:1px solid #0000001a;border-radius:24px;bottom:0;content:"";left:0;position:absolute;right:0;top:0;transition:border-color .3s ease}.image-container img{display:block;height:auto;transition:transform .5s ease;width:100%}.image-container:hover img{transform:scale(1.03)}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes expandWidth{0%{width:0}to{width:100%}}.scroll-visible{opacity:1;transform:translateY(0);transition:all .8s ease}.scroll-hidden{opacity:0;transform:translateY(20px)}.dark-mode .about{background:#000000f2}.dark-mode .about-content h1{color:#fff}.dark-mode .about-content p{color:#e0e0e0}.dark-mode .highlight-name{-webkit-text-fill-color:#0000;background:linear-gradient(45deg,#d11313,#fcce03);-webkit-background-clip:text;background-clip:text}.dark-mode .image-container{box-shadow:0 20px 40px #0000004d}.dark-mode .image-container:after{border-color:#ffffff1a}@media (max-width:1024px){.about-content h1{font-size:2.5rem}}@media (max-width:768px){.about{padding:0 1rem}.about-container{flex-direction:column;gap:1.5rem;padding:90px 0 20px;text-align:center}.about-content{max-width:100%}.about-content h1{margin-bottom:.75rem}.about-visual{max-width:400px;width:100%}.image-container,.image-container:after{border-radius:16px}.highlight-name:after{left:50%;transform:translateX(-50%)}}@media (max-width:480px){.about{display:flex;min-height:90vh}.about-container{gap:1rem;padding:85px 0 15px}.about-content h1{font-size:2rem;margin-bottom:.5rem}.about-content p{font-size:1rem}.about-visual{max-width:320px}}.view-all-projects-section{align-items:center;background:#fffffff2;display:flex;justify-content:center;min-height:50vh;overflow:hidden;padding:4rem 2rem;position:relative;transition:all .3s ease}.view-all-projects-section:before{background:#ff910008;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.view-all-projects-container{margin:0 auto;max-width:1200px;position:relative;z-index:1}.view-all-projects-content{animation:fadeInUp .8s ease forwards;opacity:0;text-align:center;transform:translateY(20px)}.view-all-projects-title{color:#000;font-size:3rem;font-weight:600;letter-spacing:-.5px;margin-bottom:1rem;transition:color .3s ease}.view-all-projects-description{color:#333;font-size:1.125rem;line-height:1.6;margin-bottom:2rem;margin-left:auto;margin-right:auto;max-width:600px;transition:color .3s ease}.view-all-projects-btn{align-items:center;background:#0000;border:2px solid #ff9100;border-radius:8px;color:#ff9100;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;gap:.75rem;overflow:hidden;padding:1rem 2rem;position:relative;transition:all .3s ease}.view-all-projects-btn:before{background:#ff9100;content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .3s ease;width:100%;z-index:-1}.view-all-projects-btn:hover:before{left:0}.view-all-projects-btn:hover{box-shadow:0 4px 12px #ff91004d;color:#fff;transform:translateY(-2px)}.view-all-projects-btn:active{transform:translateY(0)}.arrow-icon{height:20px;transition:transform .3s ease;width:20px}.view-all-projects-btn:hover .arrow-icon{transform:translateX(5px)}.dark-mode .view-all-projects-section{background:#000}.dark-mode .view-all-projects-section:before{background:#ff910000}.dark-mode .view-all-projects-title{color:#fff}.dark-mode .view-all-projects-description{color:#e0e0e0}.dark-mode .view-all-projects-btn{border-color:#ff9100;color:#ff9100}.dark-mode .view-all-projects-btn:hover{background:#ff9100;color:#000}@media (max-width:1024px){.view-all-projects-title{font-size:2.5rem}}@media (max-width:768px){.view-all-projects-section{min-height:40vh;padding:3rem 1rem}.view-all-projects-title{font-size:2.5rem;margin-bottom:.75rem}.view-all-projects-description{font-size:1rem;margin-bottom:1.5rem}.view-all-projects-btn{font-size:1rem;padding:.875rem 1.75rem}}@media (max-width:480px){.view-all-projects-section{min-height:35vh;padding:2.5rem 1rem}.view-all-projects-title{font-size:2rem;margin-bottom:.5rem}.view-all-projects-description{font-size:1rem;margin-bottom:1.25rem}.view-all-projects-btn{font-size:1rem;gap:.5rem;padding:.75rem 1.5rem}.arrow-icon{height:18px;width:18px}}.skills{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(180deg,#ffffffe6 0,#0000);min-height:100vh;padding:2rem;transition:background-color .5s ease;transition:all .3s ease}.skills h2{animation:fadeInUp .6s ease forwards;color:#000;font-size:3rem;font-weight:600;letter-spacing:-.5px;margin-bottom:2rem;opacity:0;text-align:center;transform:translateY(20px)}.skills-content{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(2,1fr);margin:0 auto;max-width:1200px;padding:1rem 0}.skill-category{animation:fadeInUp .6s ease forwards;background:#fffc;border:1px solid #0000001a;border-radius:16px;box-shadow:0 8px 32px #0000001a;opacity:0;padding:1.5rem;transform:translateY(20px)}.skill-category h3{color:#000;font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;padding-bottom:.5rem;position:relative}.skill-category h3:after{bottom:0;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:60px}.skill-list{max-height:300px;overflow:hidden;transition:max-height .3s ease}.skill-list.expanded{max-height:2000px}.skill-item{animation:fadeInRight .5s ease forwards;margin-bottom:1.25rem;opacity:0;transform:translateX(-20px)}.skill-name{align-items:center;color:#333;display:flex;font-size:1rem;justify-content:space-between;margin-bottom:.5rem}.proficiency{color:#666;font-size:.875rem;margin-left:.5rem}.progress-bar-container{background:#0000001a;border-radius:4px;height:8px;overflow:hidden}.progress-bar{border-radius:4px;height:100%;transform-origin:left}.progress-bar.languages{background:linear-gradient(90deg,#ff6b6b,#ff8e53)}.progress-bar.data-science{background:linear-gradient(90deg,#4e54c8,#8f94fb)}.progress-bar.frameworks{background:linear-gradient(90deg,#11998e,#38ef7d)}.progress-bar.design{background:linear-gradient(90deg,#fc466b,#3f5efb)}.progress-bar.security{background:linear-gradient(90deg,#833ab4,#fd1d1d)}.progress-bar.development{background:linear-gradient(90deg,#0072ff,#00c6ff)}.dark-mode .progress-bar.data-science,.dark-mode .progress-bar.design,.dark-mode .progress-bar.development,.dark-mode .progress-bar.frameworks,.dark-mode .progress-bar.languages,.dark-mode .progress-bar.security{background:inherit}.dark-mode .progress-bar.data-science{background:linear-gradient(90deg,#4e54c8,#8f94fb)}.dark-mode .progress-bar.design{background:linear-gradient(90deg,#fc466b,#3f5efb)}.dark-mode .progress-bar.security{background:linear-gradient(90deg,#833ab4,#fd1d1d)}.dark-mode .progress-bar.development{background:linear-gradient(90deg,#0072ff,#00c6ff)}.view-more-btn{background:#0000;border:2px solid #ff9100;border-radius:8px;color:#ff9100;cursor:pointer;font-weight:600;margin-top:1rem;padding:.75rem;transition:all .3s ease;width:100%}.view-more-btn:hover{background:#ff9100;color:#fff}.dark-mode .skills{background:#000000f2}.dark-mode .skill-category{background:#ffffff0d;border-color:#ffffff1a}.dark-mode .view-more-btn{border-color:#ff9100;color:#ff9100}.dark-mode .view-more-btn:hover{background:#ff9100;color:#000}.dark-mode .progress-bar.programming{background:linear-gradient(90deg,#ff6b6b,#ff8e53)}.dark-mode .progress-bar.frameworks,.dark-mode .progress-bar.tools{background:linear-gradient(90deg,#11998e,#38ef7d)}.dark-mode .progress-bar.languages{background:linear-gradient(90deg,#ff6b6b,#ff8e53)}.dark-mode .skill-category h3,.dark-mode .skills h2{color:#fff}.dark-mode .proficiency,.dark-mode .skill-category p,.dark-mode .skill-name{color:#e0e0e0}@media (max-width:1024px){.skills-content{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.skills{padding:2rem 1rem 1rem}.skills h2{font-size:2.5rem;margin-bottom:1.5rem}.skills-content{grid-template-columns:1fr}.skill-list{max-height:200px}}@media (max-width:480px){.skills{padding-top:3.5rem}.skills h2{font-size:2rem}.skill-category{padding:1rem}}.contact-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(180deg,#fffffff2 0,#0000);min-height:100vh;padding:2rem;transition:all .5s ease}.contact-container{animation:fadeInUp .8s ease forwards;margin:0 auto;max-width:1200px;opacity:0;padding:2rem 0;transform:translateY(30px)}.contact-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr;padding:1rem 0}.contact-info-container{animation:fadeInUp .8s ease .2s forwards;background:#fffc;border:1px solid #0000001a;border-radius:16px;box-shadow:0 8px 32px #0000001a;opacity:0;padding:1.5rem;transform:translateY(30px);transition:all .4s ease}.social-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));perspective:1000px}.social-link{align-items:center;animation:fadeInRotate .6s ease forwards;animation-delay:calc(var(--index)*.1s);background:#ffffffe6;border:1px solid #0000001a;border-radius:12px;color:#333;display:flex;opacity:0;overflow:hidden;padding:1rem;position:relative;text-decoration:none;transform:translateY(20px) rotateX(-10deg);transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.social-link:before{background:linear-gradient(45deg,#0000000d,#ffffff1a);content:"";inset:0;opacity:0;position:absolute;transition:opacity .3s ease}.social-link:hover{box-shadow:0 15px 30px #00000026;transform:translateY(-5px) scale(1.02)}.social-link:hover:before{opacity:1}.social-link span:first-child{align-items:center;display:flex;justify-content:center;margin-right:1rem;transition:transform .3s ease}.social-link:hover span:first-child{transform:scale(1.1) rotate(-5deg)}.social-link span:last-child{font-weight:500;transition:transform .3s ease}.social-link:hover span:last-child{transform:translateX(3px)}.social-link[href*=mailto] svg{color:#ea4335}.social-link[href*=tel] svg{color:#34c759}.social-link[href*=linkedin] svg{color:#0077b5}.social-link[href*=github] svg{color:#333}.social-link[href*=twitter] svg{color:#1da1f2}.social-link[href*=instagram] svg{color:#e4405f}.dark-mode .contact-section{background:#000000f2;color:#fff}.dark-mode .contact-info-container{background:#ffffff0d;border-color:#ffffff1a;box-shadow:0 8px 32px #0003}.dark-mode .social-link{background:#ffffff0d;border-color:#ffffff1a;color:#fff}.dark-mode .social-link:hover{background:#ffffff14;box-shadow:0 15px 30px #0000004d}.dark-mode .social-link:before{background:linear-gradient(45deg,#ffffff0d,#0000)}.dark-mode .social-link span:last-child,.dark-mode .social-link[href*=github] svg{color:#fff}@keyframes fadeInRotate{0%{opacity:0;transform:translateY(20px) rotateX(-10deg)}to{opacity:1;transform:translateY(0) rotateX(0)}}@media (max-width:1024px){.social-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.contact-section{padding:1rem}.social-grid{grid-template-columns:1fr}.contact-info-container{padding:1rem}}@media (max-width:480px){.contact-section{padding:1rem .5rem}.social-link{padding:.75rem}.social-link span:last-child{font-size:.9rem}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.projects{background:linear-gradient(90deg,#fff,#f9f9f9);min-height:100vh;overflow:hidden;padding:6rem 2rem 4rem;position:relative}.projects:before{bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.projects h2{-webkit-text-fill-color:#0000;animation:fadeInUp .8s ease forwards;background:linear-gradient(135deg,#ff9100,#ff6b00);-webkit-background-clip:text;background-clip:text;font-size:3.5rem;font-weight:700;letter-spacing:-1px;margin-bottom:3rem;position:relative;text-align:center}.projects h2:after{background:linear-gradient(90deg,#ff9100,#ff6b00);border-radius:2px;bottom:-10px;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.projects-content{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(3,1fr);margin:0 auto;max-width:1200px;padding:1rem}.project-card{animation:fadeInUp .8s ease forwards;animation-delay:.2s;animation-delay:calc(var(--animation-delay, 0s) + .2s);background:linear-gradient(90deg,#fff,#f9f9f9);border:1px solid #0000000f;border-radius:12px;box-shadow:0 2px 8px #00000017;display:flex;flex-direction:column;gap:1rem;min-height:180px;overflow:hidden;padding:1.25rem;position:relative;transition:all .3s ease}.project-card:before{background:#ff9100;content:"";height:0;left:0;position:absolute;top:0;transition:height .3s ease;width:3px}.project-card:hover{border-color:#ff910040;box-shadow:0 8px 24px #0000001f;transform:translateY(-6px)}.project-card:hover:before{height:100%}.project-info{cursor:pointer;flex:1 1}.project-info h3{align-items:center;color:#000;display:flex;font-size:1.05rem;font-weight:600;gap:.5rem;line-height:1.3;margin-bottom:.5rem;position:relative;transition:color .3s ease;z-index:1}.project-info h3:before{color:#ff9100;content:"▸";font-size:1.25rem;opacity:0;transform:translateX(-8px);transition:all .3s ease}.project-card:hover .project-info h3{color:#ff9100}.project-card:hover .project-info h3:before{opacity:1;transform:translateX(0)}.project-description{color:#555;font-size:.85rem;line-height:1.5;margin-bottom:.75rem;position:relative;transition:color .3s ease;z-index:1}.project-card:hover .project-description{color:#333}.project-period{align-items:center;background:#ff91000d;border-radius:6px;display:flex;gap:.5rem;margin:.5rem 0;padding:.4rem .6rem;position:relative;z-index:1}.period-label{color:#ff9100;font-size:.75rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.period-text{color:#555;font-size:.8rem}.technologies{display:flex;flex-direction:column;gap:.4rem;margin:.5rem 0;position:relative;z-index:1}.tech-label{color:#ff9100;font-size:.75rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.tech-stack{background:#ff91000d;border-left:2px solid #ff9100;border-radius:6px;color:#555;font-size:.8rem;line-height:1.4;padding:.4rem .5rem;transition:all .3s ease}.project-card:hover .tech-stack{background:#ff91001a;transform:translateX(4px)}.card-get-code-btn{background:linear-gradient(135deg,#ff9100,#ff6b00);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:700;margin-top:auto;padding:.75rem 1.5rem;transition:all .3s ease;width:100%;z-index:2}.card-get-code-btn:hover{box-shadow:0 6px 20px #ff910066;transform:translateY(-2px)}.project-links{display:flex;gap:1rem;transition:all .3s ease}.project-links button{border-radius:8px;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.view-demo{background:#ff9100;border:none;color:#fff}.view-demo:hover{background:#e07e00;box-shadow:0 4px 12px #ff910059;transform:translateY(-2px)}.view-code{background:#0000;border:2px solid #ff910080;color:#ff9100;transition:all .3s ease;width:95%}.view-code:hover{background:#ff9100;border-color:#ff9100;box-shadow:0 4px 12px #ff910059;color:#fff;transform:translateY(-2px)}.contact-popup-overlay{align-items:center;animation:fadeIn .3s ease;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#0009;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.contact-popup{animation:slideUp .3s ease;background:linear-gradient(90deg,#fff,#f9f9f9);border:1px solid #0000000f;border-radius:16px;box-shadow:0 8px 32px #00000026;max-width:450px;padding:2rem;position:relative;width:90%}.close-popup{align-items:center;background:#0000000d;border:2px solid #0000001a;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;position:absolute;right:1rem;top:1rem;transition:all .3s ease;width:40px}.close-popup:hover{background:#0000000d;border-color:#0003;color:#000;transform:rotate(90deg)}.contact-popup h3{color:#000;font-size:1.5rem;font-weight:600;letter-spacing:-.5px;margin-bottom:1.75rem;text-align:center}.contact-options{display:flex;flex-direction:column;gap:1rem}.contact-option{align-items:center;background:#ffffffe6;border:1px solid #0000001a;border-radius:12px;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:1rem;overflow:hidden;padding:1rem 1.5rem;position:relative;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.contact-option:before{background:linear-gradient(45deg,#0000000d,#ffffff1a);content:"";inset:0;opacity:0;position:absolute;transition:opacity .3s ease}.contact-option:hover:before{opacity:1}.contact-icon{height:20px;transition:transform .3s ease;width:20px}.contact-option:hover .contact-icon{transform:scale(1.1) rotate(-5deg)}.contact-option span{transition:transform .3s ease}.contact-option:hover span{transform:translateX(3px)}.contact-option:hover{box-shadow:0 8px 20px #0000001f;transform:translateY(-3px) scale(1.02)}.contact-option.linkedin{border-color:#0077b54d}.contact-option.linkedin .contact-icon{color:#0077b5}.contact-option.linkedin:hover{background:#0077b50d;border-color:#0077b5}.contact-option.instagram{border-color:#e4405f4d}.contact-option.instagram .contact-icon{color:#e4405f}.contact-option.instagram:hover{background:#e4405f0d;border-color:#e4405f}.contact-option.gmail{border-color:#ea43354d}.contact-option.gmail .contact-icon{color:#ea4335}.contact-option.gmail:hover{background:#ea43350d;border-color:#ea4335}.project-modal-overlay{align-items:center;animation:fadeIn .3s ease;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#000000bf;display:flex;height:100vh;justify-content:center;left:0;padding:1rem;position:fixed;top:0;width:100vw;z-index:9999}.project-modal{animation:slideUp .3s ease;background:linear-gradient(90deg,#fff,#f9f9f9);border:1px solid #0000000f;border-radius:16px;box-shadow:0 8px 32px #0000002e;max-height:85vh;max-width:600px;overflow-y:auto;padding:2rem;position:relative;width:100%;z-index:10000}.close-modal{align-items:center;background:#0000000d;border:2px solid #0000001a;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;position:absolute;right:1rem;top:1rem;transition:all .3s ease;width:40px;z-index:1}.close-modal:hover{background:#ff910014;border-color:#ff91004d;color:#ff9100;transform:rotate(1turn)}.project-modal h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#ff9100,#ff6b00);-webkit-background-clip:text;background-clip:text;font-size:1.6rem;font-weight:700;letter-spacing:-.5px;line-height:1.3;margin-bottom:1.25rem;padding-right:2.5rem}.modal-content{display:flex;flex-direction:column;gap:1.25rem}.modal-description{background:#ff91000a;border-left:3px solid #ff9100;border-radius:10px;color:#444;font-size:1rem;line-height:1.7;padding:1rem}.modal-section{display:flex;flex-direction:column;gap:.65rem}.modal-section h4{color:#ff9100;font-size:.85rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.modal-section p{color:#555;font-size:.95rem;line-height:1.6}.modal-tech-tags{display:flex;flex-wrap:wrap;gap:.65rem}.tech-tag{background:#ff910014;border:1px solid #ff910040;border-radius:20px;color:#ff6b00;font-size:.85rem;font-weight:600;padding:.4rem .85rem;transition:all .3s ease}.tech-tag:hover{background:#ff9100;box-shadow:0 4px 10px #ff91004d;color:#fff;transform:translateY(-2px)}.modal-actions{display:flex;gap:1rem;margin-top:.75rem}.modal-btn{border:none;border-radius:10px;cursor:pointer;flex:1 1;font-size:.95rem;font-weight:700;padding:.875rem 1.75rem;transition:all .3s ease}.modal-btn.get-code{background:linear-gradient(135deg,#ff9100,#ff6b00);color:#fff}.modal-btn.get-code:hover{box-shadow:0 6px 20px #ff910066;transform:translateY(-2px)}.dark-mode .projects{background:#000000d9}.dark-mode .projects h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#ff9100,orange);-webkit-background-clip:text;background-clip:text}.dark-mode .project-card{background:#1a1a1a;border-color:#ffffff14;box-shadow:0 2px 8px #0006}.dark-mode .project-card:hover{border-color:#ff91004d;box-shadow:0 8px 24px #ff910026}.dark-mode .project-info h3{color:#fff}.dark-mode .project-description{color:#ccc}.dark-mode .project-card:hover .project-description{color:#fff}.dark-mode .period-text{color:#ccc}.dark-mode .tech-label{color:orange}.dark-mode .tech-stack{background:#ff910014;color:#e0e0e0}.dark-mode .contact-popup{background:#1a1a1a;border:1px solid #ffffff1a;box-shadow:0 8px 32px #0009}.dark-mode .contact-popup h3{color:#fff}.dark-mode .close-popup{background:#ffffff0d;border-color:#ffffff1a;color:#ccc}.dark-mode .close-popup:hover{background:#ffffff14;border-color:#fff3;color:#fff}.dark-mode .contact-option{background:#ffffff0d;border-color:#ffffff1a;color:#fff}.dark-mode .contact-option:hover{background:#ffffff14;box-shadow:0 8px 20px #0000004d}.dark-mode .contact-option:before{background:linear-gradient(45deg,#ffffff0d,#0000)}.dark-mode .contact-option.linkedin:hover{background:#0077b51a;border-color:#0077b5}.dark-mode .contact-option.instagram:hover{background:#e4405f1a;border-color:#e4405f}.dark-mode .contact-option.gmail:hover{background:#ea43351a;border-color:#ea4335}.dark-mode .project-modal{background:#1a1a1a;border:1px solid #ffffff1a;box-shadow:0 8px 32px #0009}.dark-mode .project-modal h2{color:#fff}.dark-mode .close-modal{background:#ffffff0d;border-color:#ffffff1a;color:#ccc}.dark-mode .close-modal:hover{background:#ff910026;border-color:#ff91004d;color:#ff9100}.dark-mode .modal-description{background:#ff910012;color:#e0e0e0}.dark-mode .modal-section h4{color:orange}.dark-mode .modal-section p{color:#ccc}.dark-mode .tech-tag{background:#ff91001f;border-color:#ff910059;color:orange}.dark-mode .tech-tag:hover{background:linear-gradient(135deg,#ff9100,#ff6b00);color:#fff}@media (max-width:1200px){.projects-content{gap:1.5rem;grid-template-columns:repeat(2,1fr)}.project-card{min-height:170px}.project-info h3{font-size:1rem}}@media (max-width:768px){.projects{min-height:0;padding:5rem 1rem 2rem}.projects h2{font-size:2rem;margin-bottom:1.5rem}.projects-content{gap:1rem;grid-template-columns:repeat(2,1fr);padding:.5rem}.project-card{animation:fadeInUp .4s ease forwards;animation-delay:var(--animation-delay);min-height:160px;padding:1rem}.project-card:hover{box-shadow:0 2px 8px #00000017;transform:none}.project-info h3{font-size:.95rem;margin-bottom:.4rem}.project-description{font-size:.8rem;margin-bottom:.5rem}.period-label,.tech-label{font-size:.7rem}.period-text,.tech-stack{font-size:.75rem}.project-period{margin:.4rem 0;padding:.35rem .5rem}.tech-stack{padding:.35rem .45rem}.project-modal-overlay{padding:.75rem 0}.project-modal{border-radius:14px;max-height:90vh;max-width:100%;padding:1.5rem;width:100%}.project-modal h2{font-size:1.3rem;margin-bottom:1rem;padding-right:2rem}.close-modal{font-size:1.25rem;height:36px;right:.875rem;top:.875rem;width:36px}.modal-content{gap:1rem}.modal-description{font-size:.9rem;line-height:1.6;padding:.75rem}.modal-section h4{font-size:.8rem}.modal-section p{font-size:.875rem}.tech-tag{font-size:.8rem;padding:.35rem .75rem}.modal-btn{font-size:.9rem;padding:.75rem 1.5rem}}@media (max-width:480px){.projects{padding:5rem .75rem 1.5rem}.projects h2{font-size:1.75rem;margin-bottom:1rem}.projects-content{gap:1rem;grid-template-columns:1fr;padding:.5rem}.project-card{animation:fadeInUp .3s ease forwards;animation-delay:var(--animation-delay);min-height:150px;padding:.875rem}.project-info h3{font-size:.9rem;margin-bottom:.35rem}.project-description{font-size:.75rem;line-height:1.4;margin-bottom:.4rem}.period-label,.tech-label{font-size:.65rem}.period-text,.tech-stack{font-size:.7rem}.project-period{gap:.4rem;margin:.35rem 0;padding:.3rem .4rem}.technologies{gap:.35rem;margin:.35rem 0}.tech-stack{padding:.3rem .4rem}.contact-popup{padding:1.5rem;width:95%}.contact-popup h3{font-size:1.2rem}.contact-option{font-size:1rem;padding:.875rem 1.25rem}.contact-option .icon{font-size:1.25rem}.project-modal-overlay{padding:.5rem 0}.project-modal{border-radius:12px;max-height:92vh;padding:1.25rem;width:100%}.project-modal h2{font-size:1.1rem;margin-bottom:.875rem;padding-right:1.75rem}.close-modal,.close-popup{font-size:1.25rem;height:34px;width:34px}.modal-content{gap:.875rem}.modal-description{font-size:.85rem;line-height:1.5;padding:.65rem}.modal-section{gap:.5rem}.modal-section h4{font-size:.75rem}.modal-section p{font-size:.8rem;line-height:1.5}.modal-tech-tags{gap:.5rem}.tech-tag{border-radius:14px;font-size:.75rem;padding:.3rem .65rem}.modal-actions{flex-direction:column;gap:.75rem;margin-top:.5rem}.modal-btn{border-radius:8px;font-size:.85rem;padding:.7rem 1.25rem}}@media (max-width:320px){.projects{padding:5rem .5rem 1rem}.projects h2{font-size:1.5rem}.project-card{min-height:140px;padding:.75rem}.project-info h3{font-size:.85rem}.project-description{font-size:.7rem}.period-label,.tech-label{font-size:.6rem}.period-text,.tech-stack{font-size:.65rem}.project-modal-overlay{padding:0}.project-modal{border-radius:0;height:100vh;max-height:100vh;padding:1rem;width:100%}.project-modal h2{font-size:1rem}.close-modal{font-size:1.1rem;height:28px;width:28px}.modal-description{font-size:.8rem;padding:.5rem}.modal-section h4{font-size:.7rem}.modal-section p{font-size:.75rem}.tech-tag{font-size:.7rem;padding:.28rem .55rem}.modal-btn{font-size:.8rem;padding:.6rem 1rem}}
/*# sourceMappingURL=main.24b22db7.css.map*/