:root{--color-primary: #6366f1;--color-primary-dark: #4f46e5;--color-secondary: #8b5cf6;--color-accent: #ec4899;--color-success: #10b981;--color-warning: #f59e0b;--color-danger: #ef4444;--color-bg-primary: #0f172a;--color-bg-secondary: #1e293b;--color-bg-tertiary: #334155;--color-bg-card: #1e293b;--color-bg-card-hover: #2d3b52;--color-text-primary: #f1f5f9;--color-text-secondary: #cbd5e1;--color-text-muted: #94a3b8;--color-border: #334155;--color-border-light: #475569;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .3);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .4);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .5);--shadow-glow: 0 0 20px rgba(99, 102, 241, .3);--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background-color:var(--color-bg-primary);color:var(--color-text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{min-height:100vh}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;color:var(--color-text-primary)}h1{font-size:clamp(2.5rem,5vw,4rem);letter-spacing:-.02em}h2{font-size:clamp(2rem,4vw,3rem);letter-spacing:-.01em}h3{font-size:clamp(1.5rem,3vw,2rem)}p{color:var(--color-text-secondary);font-size:1.125rem;line-height:1.7}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-base)}a:hover{color:var(--color-primary-dark)}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 1.5rem}.section{padding:5rem 0}.text-gradient{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-base);text-decoration:none}.btn:hover{color:#f5f5f5;transform:translateY(-2px);border-color:#fff3;background-color:#ffffff14;box-shadow:0 10px 40px #00000040,0 0 40px #6366f126;transition:transform .25s ease,border-color .25s ease,background .25s ease,box-shadow .25s ease}.btn-primary{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));color:#fff;box-shadow:var(--shadow-md)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg),var(--shadow-glow)}.btn-secondary{background-color:var(--color-bg-secondary);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-secondary:hover{background-color:var(--color-bg-tertiary);border-color:var(--color-border-light)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--color-bg-secondary)}::-webkit-scrollbar-thumb{background:var(--color-bg-tertiary);border-radius:var(--radius-md)}::-webkit-scrollbar-thumb:hover{background:var(--color-border-light)}::selection{background-color:var(--color-primary);color:#fff}@media(max-width:768px){.section{padding:3rem 0}p{font-size:1rem}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{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 scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes gradient{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.animate-fade-in{animation:fadeIn .6s ease-out}.animate-fade-in-up{animation:fadeInUp .8s ease-out}.animate-fade-in-down{animation:fadeInDown .8s ease-out}.animate-slide-in-left{animation:slideInLeft .8s ease-out}.animate-slide-in-right{animation:slideInRight .8s ease-out}.animate-scale-in{animation:scaleIn .5s ease-out}.animate-float{animation:float 3s ease-in-out infinite}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-shimmer{animation:shimmer 2s infinite}.animate-rotate{animation:rotate 20s linear infinite}.animate-gradient{animation:gradient 8s ease infinite;background-size:200% 200%}.stagger-1{animation-delay:.1s}.stagger-2{animation-delay:.2s}.stagger-3{animation-delay:.3s}.stagger-4{animation-delay:.4s}.stagger-5{animation-delay:.5s}.stagger-6{animation-delay:.6s}.hover-lift{transition:transform var(--transition-base)}.hover-lift:hover{transform:translateY(-5px)}.hover-glow{transition:box-shadow var(--transition-base)}.hover-glow:hover{box-shadow:var(--shadow-glow)}.hover-scale{transition:transform var(--transition-base)}.hover-scale:hover{transform:scale(1.05)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.social-links[data-v-ab6fea3d]{display:flex;gap:1rem;align-items:center}.social-link[data-v-ab6fea3d]{display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);transition:all var(--transition-base);border-radius:var(--radius-md);padding:.5rem}.social-link[data-v-ab6fea3d]:hover{color:var(--color-primary);background-color:#6366f11a;transform:translateY(-2px)}.social-links-small .social-link[data-v-ab6fea3d]{padding:.375rem}.social-links-small .social-link[data-v-ab6fea3d] svg{width:18px;height:18px}.social-links-medium .social-link[data-v-ab6fea3d]{padding:.5rem}.social-links-medium .social-link[data-v-ab6fea3d] svg{width:24px;height:24px}.social-links-large .social-link[data-v-ab6fea3d]{padding:.75rem}.social-links-large .social-link[data-v-ab6fea3d] svg{width:32px;height:32px}@media(max-width:768px){.social-links[data-v-ab6fea3d]{gap:.75rem}}.hero[data-v-33c498ca]{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:2rem 0}.hero-background[data-v-33c498ca]{position:absolute;inset:0;overflow:hidden;z-index:0}.gradient-orb[data-v-33c498ca]{position:absolute;border-radius:50%;filter:blur(80px);opacity:.3;animation:float 8s ease-in-out infinite}.orb-1[data-v-33c498ca]{width:500px;height:500px;background:radial-gradient(circle,var(--color-primary),transparent);top:-10%;left:-10%;animation-delay:0s}.orb-2[data-v-33c498ca]{width:400px;height:400px;background:radial-gradient(circle,var(--color-secondary),transparent);bottom:-10%;right:-5%;animation-delay:2s}.orb-3[data-v-33c498ca]{width:350px;height:350px;background:radial-gradient(circle,var(--color-accent),transparent);top:50%;left:50%;transform:translate(-50%,-50%);animation-delay:4s}.hero-content[data-v-33c498ca]{position:relative;z-index:1;text-align:center}.hero-text[data-v-33c498ca]{max-width:900px;margin:0 auto}.hero-title[data-v-33c498ca]{margin-bottom:1.5rem;font-weight:800}.hero-subtitle[data-v-33c498ca]{font-size:clamp(1.25rem,2vw,1.5rem);color:var(--color-text-secondary);margin-bottom:1rem;font-weight:500}.hero-description[data-v-33c498ca]{font-size:1.125rem;color:var(--color-text-muted);margin-bottom:2rem;max-width:700px;margin-left:auto;margin-right:auto}.hero-actions[data-v-33c498ca]{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:2.5rem}@media(max-width:768px){.hero[data-v-33c498ca]{min-height:80vh}.gradient-orb[data-v-33c498ca]{filter:blur(60px)}.orb-1[data-v-33c498ca],.orb-2[data-v-33c498ca],.orb-3[data-v-33c498ca]{width:300px;height:300px}}.project-card[data-v-047454bc]{background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem;display:flex;flex-direction:column;gap:1rem;transition:all var(--transition-base);height:100%}.project-card[data-v-047454bc]:hover{border-color:var(--color-primary);background-color:var(--color-bg-card-hover);box-shadow:var(--shadow-lg)}.project-card-header[data-v-047454bc]{display:flex;justify-content:flex-end;align-items:flex-start}.project-meta[data-v-047454bc]{display:flex;gap:.5rem}.project-status[data-v-047454bc]{font-size:.75rem;font-weight:600;padding:.25rem .75rem;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.05em}.status-active[data-v-047454bc]{background-color:#10b9811a;color:var(--color-success)}.status-archived[data-v-047454bc]{background-color:#94a3b81a;color:var(--color-text-muted)}.status-wip[data-v-047454bc]{background-color:#f59e0b1a;color:var(--color-warning)}.status-abandoned[data-v-047454bc]{background-color:#f59e0b1a;color:var(--color-danger)}.project-content[data-v-047454bc]{flex:1;display:flex;flex-direction:column;gap:.75rem}.project-title[data-v-047454bc]{font-size:1.5rem;font-weight:700;color:var(--color-text-primary);margin:0}.project-description[data-v-047454bc]{color:var(--color-text-secondary);font-size:.95rem;line-height:1.6;margin:0}.project-tags[data-v-047454bc]{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:auto}.tag[data-v-047454bc]{font-size:.8rem;padding:.25rem .75rem;background-color:var(--color-bg-tertiary);color:var(--color-text-secondary);border-radius:var(--radius-sm);border:1px solid var(--color-border);font-family:var(--font-mono)}.project-footer[data-v-047454bc]{display:flex;justify-content:flex-start;align-items:center;padding-top:1rem;border-top:1px solid var(--color-border)}.project-link[data-v-047454bc]{display:inline-flex;align-items:center;gap:.5rem;color:var(--color-primary);font-weight:600;font-size:.9rem;transition:all var(--transition-base)}.project-link[data-v-047454bc]:hover{color:var(--color-primary-dark);gap:.75rem}@media(max-width:768px){.project-card[data-v-047454bc]{padding:1.25rem}.project-title[data-v-047454bc]{font-size:1.25rem}}.experience-card[data-v-52439563]{background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.75rem;transition:all var(--transition-base)}.experience-card[data-v-52439563]:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.experience-header[data-v-52439563]{display:flex;gap:1.25rem;margin-bottom:1rem}.experience-logo[data-v-52439563]{flex-shrink:0;width:56px;height:56px;border-radius:var(--radius-md);overflow:hidden;background-color:var(--color-bg-secondary);display:flex;align-items:center;justify-content:center;border:1px solid var(--color-border)}.experience-logo img[data-v-52439563]{width:100%;height:100%;object-fit:cover}.experience-info[data-v-52439563]{flex:1;display:flex;flex-direction:column;gap:.5rem}.experience-title[data-v-52439563]{font-size:1.25rem;font-weight:700;color:var(--color-text-primary);margin:0;line-height:1.3}.experience-company[data-v-52439563]{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.company-name[data-v-52439563]{font-size:1rem;font-weight:600;color:var(--color-text-secondary)}.company-location[data-v-52439563]{display:flex;align-items:center;gap:.25rem;font-size:.875rem;color:var(--color-text-muted)}.company-location svg[data-v-52439563]{flex-shrink:0}.experience-period[data-v-52439563]{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--color-text-muted)}.experience-period svg[data-v-52439563]{flex-shrink:0}.duration[data-v-52439563]{color:var(--color-text-muted)}.employment-type[data-v-52439563]{font-size:.875rem;color:var(--color-text-muted);padding:.25rem .75rem;background-color:var(--color-bg-tertiary);border-radius:var(--radius-sm);display:inline-block;width:fit-content}.experience-link[data-v-52439563]{display:inline;align-items:center;gap:.5rem;font-size:.875rem;color:var(--color-text-muted);padding:.25rem .75rem;background-color:var(--color-bg-tertiary);border-radius:var(--radius-sm);width:fit-content}.experience-description[data-v-52439563]{margin-top:1rem;color:var(--color-text-secondary);font-size:.95rem;line-height:1.6}.experience-description p[data-v-52439563]{margin:0}.experience-highlights[data-v-52439563]{margin-top:1rem}.experience-highlights ul[data-v-52439563]{margin:0;padding-left:1.5rem;color:var(--color-text-secondary);font-size:.95rem;line-height:1.6}.experience-highlights li[data-v-52439563]{margin-bottom:.5rem}.experience-highlights li[data-v-52439563]:last-child{margin-bottom:0}.experience-skills[data-v-52439563]{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border)}.skills-label[data-v-52439563]{font-size:.875rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:.5rem;display:block}.skills-list[data-v-52439563]{display:flex;flex-wrap:wrap;gap:.5rem}.skill-tag[data-v-52439563]{font-size:.8rem;padding:.25rem .75rem;background-color:var(--color-bg-tertiary);color:var(--color-text-secondary);border-radius:var(--radius-sm);border:1px solid var(--color-border);font-family:var(--font-mono)}@media(max-width:768px){.experience-card[data-v-52439563]{padding:1.25rem}.experience-header[data-v-52439563]{gap:1rem}.experience-logo[data-v-52439563]{width:48px;height:48px}.experience-title[data-v-52439563]{font-size:1.125rem}.experience-company[data-v-52439563]{flex-direction:column;align-items:flex-start;gap:.25rem}}.filter-bar[data-v-d7299da8]{display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem 0}.search-container[data-v-d7299da8]{display:flex;justify-content:center}.search-input-wrapper[data-v-d7299da8]{position:relative;width:100%;max-width:500px}.search-icon[data-v-d7299da8]{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}.search-input[data-v-d7299da8]{width:100%;padding:.875rem 3rem;font-size:1rem;color:var(--color-text-primary);background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition-base);font-family:var(--font-sans)}.search-input[data-v-d7299da8]::placeholder{color:var(--color-text-muted)}.search-input[data-v-d7299da8]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a}.clear-search-btn[data-v-d7299da8]{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);padding:.25rem;background:none;border:none;color:var(--color-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-base)}.clear-search-btn[data-v-d7299da8]:hover{color:var(--color-text-primary);background-color:var(--color-bg-tertiary)}.tags-container[data-v-d7299da8]{display:flex;flex-direction:column;gap:1rem;align-items:center}.tags-dropdown-wrapper[data-v-d7299da8]{position:relative;width:100%;max-width:500px}.tags-dropdown-btn[data-v-d7299da8]{width:100%;display:flex;align-items:center;gap:.5rem;padding:.875rem 1rem;font-size:.95rem;font-weight:600;color:var(--color-text-secondary);background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);font-family:var(--font-sans)}.tags-dropdown-btn[data-v-d7299da8]:hover{color:var(--color-text-primary);border-color:var(--color-primary);background-color:var(--color-bg-tertiary)}.tag-count[data-v-d7299da8]{margin-left:auto;padding:.125rem .5rem;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));color:#fff;border-radius:var(--radius-sm);font-size:.75rem;font-weight:700}.chevron[data-v-d7299da8]{transition:transform var(--transition-base)}.chevron.open[data-v-d7299da8]{transform:rotate(180deg)}.tags-dropdown[data-v-d7299da8]{position:absolute;top:calc(100% + .5rem);left:0;right:0;background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:10;max-height:300px;overflow-y:auto}.tags-dropdown-content[data-v-d7299da8]{padding:.5rem}.tag-option[data-v-d7299da8]{width:100%;display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500;color:var(--color-text-secondary);background:none;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-base);font-family:var(--font-mono);text-align:left}.tag-option[data-v-d7299da8]:hover{color:var(--color-text-primary);background-color:var(--color-bg-tertiary)}.tag-option.active[data-v-d7299da8]{color:var(--color-primary);background-color:#6366f11a}.tag-checkbox[data-v-d7299da8]{width:18px;height:18px;border:2px solid var(--color-border);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--transition-base)}.tag-option.active .tag-checkbox[data-v-d7299da8]{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));border-color:transparent}.tag-checkbox svg[data-v-d7299da8]{color:#fff}.selected-tags[data-v-d7299da8]{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center;width:100%;max-width:500px}.selected-tag[data-v-d7299da8]{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.8rem;font-weight:500;color:#fff;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);font-family:var(--font-mono)}.selected-tag[data-v-d7299da8]:hover{opacity:.8;transform:translateY(-1px)}.selected-tag svg[data-v-d7299da8]{width:14px;height:14px}.clear-filters-container[data-v-d7299da8]{display:flex;justify-content:center}.clear-filters-btn[data-v-d7299da8]{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.875rem;font-weight:600;color:var(--color-text-muted);background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);font-family:var(--font-sans)}.clear-filters-btn[data-v-d7299da8]:hover{color:var(--color-text-primary);border-color:var(--color-danger);background-color:var(--color-bg-tertiary)}@media(max-width:768px){.filter-bar[data-v-d7299da8]{gap:1.25rem;padding:1rem 0}.search-input[data-v-d7299da8]{padding:.75rem 2.75rem;font-size:.95rem}.tags-container[data-v-d7299da8]{gap:.75rem}.tags-dropdown-btn[data-v-d7299da8]{padding:.75rem .875rem;font-size:.9rem}.tag-option[data-v-d7299da8]{padding:.625rem .875rem;font-size:.8rem}.selected-tag[data-v-d7299da8]{padding:.3rem .625rem;font-size:.75rem}}.resume-button[data-v-9b4bcd7f]{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:var(--color-text-primary);text-decoration:none;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.resume-button[data-v-9b4bcd7f]:active{transform:translateY(0)}.button-glow[data-v-9b4bcd7f]{position:absolute;inset:0;background:radial-gradient(circle at top left,var(--color-primary),transparent 45%),radial-gradient(circle at bottom right,var(--color-secondary),transparent 45%);opacity:.18;z-index:-1;transition:opacity .3s ease}.resume-button:hover .button-glow[data-v-9b4bcd7f]{opacity:.3}.download-icon[data-v-9b4bcd7f]{width:18px;height:18px;transition:transform .25s ease,opacity .25s ease}.resume-button:hover .download-icon[data-v-9b4bcd7f]{transform:translateY(2px)}@media(max-width:768px){.resume-button[data-v-9b4bcd7f]{width:100%;justify-content:center}}.home-page[data-v-53cc63a8]{min-height:100vh}.projects-section[data-v-53cc63a8]{background:linear-gradient(180deg,var(--color-bg-primary) 0%,var(--color-bg-secondary) 100%)}.section-header[data-v-53cc63a8]{text-align:center;margin-bottom:3rem}.section-title[data-v-53cc63a8]{margin-bottom:1rem;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.section-description[data-v-53cc63a8]{font-size:1.125rem;color:var(--color-text-muted);max-width:600px;margin:0 auto;margin-bottom:1vw}.projects-grid[data-v-53cc63a8]{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem;margin-top:3rem}.project-item[data-v-53cc63a8]{opacity:0;animation:fadeInUp-53cc63a8 .6s ease-out forwards}.project-list-enter-active[data-v-53cc63a8],.project-list-leave-active[data-v-53cc63a8]{transition:all .4s ease}.project-list-enter-from[data-v-53cc63a8]{opacity:0;transform:translateY(30px)}.project-list-leave-to[data-v-53cc63a8]{opacity:0;transform:scale(.9)}.project-list-move[data-v-53cc63a8]{transition:transform .4s ease}.experience-section[data-v-53cc63a8]{background-color:var(--color-bg-primary)}.experience-timeline[data-v-53cc63a8]{display:flex;flex-direction:column;gap:2rem;margin-top:3rem;max-width:900px;margin-left:auto;margin-right:auto}.experience-item[data-v-53cc63a8]{opacity:0;animation:fadeInUp-53cc63a8 .6s ease-out forwards}.empty-state[data-v-53cc63a8]{text-align:center;padding:4rem 2rem;color:var(--color-text-muted)}.empty-state svg[data-v-53cc63a8]{margin-bottom:1.5rem;opacity:.5}.empty-state h3[data-v-53cc63a8]{font-size:1.5rem;color:var(--color-text-secondary);margin-bottom:.5rem}.empty-state p[data-v-53cc63a8]{font-size:1rem}.footer[data-v-53cc63a8]{padding:3rem 0;border-top:1px solid var(--color-border);background-color:var(--color-bg-secondary)}.footer-content[data-v-53cc63a8]{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.5rem}.footer-text[data-v-53cc63a8]{color:var(--color-text-muted);font-size:.95rem;margin:0}.heart[data-v-53cc63a8]{color:var(--color-accent);animation:pulse 1.5s ease-in-out infinite}@media(max-width:1024px){.projects-grid[data-v-53cc63a8]{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}}@media(max-width:768px){.projects-grid[data-v-53cc63a8]{grid-template-columns:1fr;gap:1.25rem}.experience-timeline[data-v-53cc63a8]{gap:1.5rem}.section-header[data-v-53cc63a8]{margin-bottom:2rem}.footer-content[data-v-53cc63a8]{flex-direction:column;text-align:center}}@keyframes fadeInUp-53cc63a8{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
