*{margin:0;padding:0;box-sizing:border-box}:root{--color-bg: #0a0a0a;--color-surface: #121212;--color-text: #e5e5e5;--color-text-muted: #a0a0a0;--color-accent: #3b82f6;--color-accent-hover: #2563eb;--border-color: #1f1f1f;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--spacing-xs: .375rem;--spacing-sm: .75rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--max-width: 1200px;--section-padding: 3rem 1.5rem;--transition: .2s cubic-bezier(.4, 0, .2, 1)}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}@media(max-width:768px){:root{--section-padding: 2rem 1.5rem}}.hero[data-astro-cid-bbe6dxrz]{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;padding:var(--section-padding);background:var(--color-bg);overflow:hidden}.hero-container[data-astro-cid-bbe6dxrz]{max-width:var(--max-width);margin:0 auto;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-2xl);align-items:center}.hero-image-wrapper[data-astro-cid-bbe6dxrz]{position:relative;opacity:0;animation:fadeInScale .8s ease-out .3s forwards}.hero-image[data-astro-cid-bbe6dxrz]{width:100%;height:auto;border-radius:8px;object-fit:cover;border:1px solid var(--border-color);box-shadow:0 8px 32px #0006;transition:transform .3s ease,box-shadow .3s ease}.hero-image[data-astro-cid-bbe6dxrz]:hover{transform:scale(1.02);box-shadow:0 12px 48px #3b82f64d}.hero-content[data-astro-cid-bbe6dxrz]{max-width:700px;text-align:left}.hero-name[data-astro-cid-bbe6dxrz]{font-size:clamp(3rem,8vw,5rem);font-weight:700;margin-bottom:var(--spacing-sm);color:var(--color-text);line-height:1.1;opacity:0;animation:slideInLeft .6s ease-out .1s forwards}.hero-tagline[data-astro-cid-bbe6dxrz]{font-size:clamp(1.25rem,3vw,1.75rem);color:var(--color-text-muted);margin-bottom:var(--spacing-md);font-weight:400;opacity:0;animation:slideInLeft .6s ease-out .2s forwards}.hero-description[data-astro-cid-bbe6dxrz]{font-size:clamp(1rem,2vw,1.125rem);color:var(--color-text-muted);margin-bottom:var(--spacing-lg);line-height:1.6;max-width:600px;opacity:0;animation:slideInLeft .6s ease-out .3s forwards}.hero-links[data-astro-cid-bbe6dxrz]{display:flex;gap:var(--spacing-md);justify-content:flex-start;flex-wrap:wrap;opacity:0;animation:slideInLeft .6s ease-out .4s forwards}.btn[data-astro-cid-bbe6dxrz]{padding:.75rem 1.75rem;border-radius:6px;text-decoration:none;font-weight:500;font-size:.95rem;transition:all var(--transition);display:inline-block;border:2px solid transparent}.btn-primary[data-astro-cid-bbe6dxrz]{background:var(--color-accent);color:#fff}.btn-primary[data-astro-cid-bbe6dxrz]:hover{background:var(--color-accent-hover);transform:translateY(-3px) scale(1.05);box-shadow:0 8px 24px #3b82f680}.btn-secondary[data-astro-cid-bbe6dxrz]{background:transparent;color:var(--color-text);border-color:var(--border-color)}.btn-secondary[data-astro-cid-bbe6dxrz]:hover{border-color:var(--color-accent);color:var(--color-accent);transform:translateY(-3px) scale(1.05);box-shadow:0 8px 24px #3b82f633}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@media(max-width:968px){.hero-container[data-astro-cid-bbe6dxrz]{grid-template-columns:1fr;gap:var(--spacing-xl)}.hero-image-wrapper[data-astro-cid-bbe6dxrz]{order:-1}.hero-content[data-astro-cid-bbe6dxrz]{text-align:center}.hero-links[data-astro-cid-bbe6dxrz]{justify-content:center}}@media(max-width:768px){.hero[data-astro-cid-bbe6dxrz]{min-height:90vh}.hero-links[data-astro-cid-bbe6dxrz]{flex-direction:column;align-items:center}.btn[data-astro-cid-bbe6dxrz]{width:100%;max-width:280px;text-align:center}}.about[data-astro-cid-v2cbyr3p]{background:var(--color-surface)}.about-content[data-astro-cid-v2cbyr3p]{max-width:1000px;display:grid;grid-template-columns:1fr 1.5fr;gap:var(--spacing-xl);align-items:center}.about-image-wrapper[data-astro-cid-v2cbyr3p]{position:relative}.about-image[data-astro-cid-v2cbyr3p]{width:100%;height:auto;border-radius:6px;object-fit:cover;border:1px solid var(--border-color)}.about-text-wrapper[data-astro-cid-v2cbyr3p]{display:flex;flex-direction:column;gap:var(--spacing-sm)}.about-text[data-astro-cid-v2cbyr3p]{font-size:1rem;line-height:1.6;color:var(--color-text-muted);margin-bottom:0}@media(max-width:768px){.about-content[data-astro-cid-v2cbyr3p]{grid-template-columns:1fr;gap:var(--spacing-md)}.about-image-wrapper[data-astro-cid-v2cbyr3p]{order:-1}.about-text[data-astro-cid-v2cbyr3p]{font-size:1rem}}.education[data-astro-cid-2gvrk3wr]{background:var(--color-bg)}.education-list[data-astro-cid-2gvrk3wr]{display:flex;flex-direction:column;gap:var(--spacing-md)}.education-item[data-astro-cid-2gvrk3wr]{padding:var(--spacing-md);background:var(--color-surface);border:1px solid var(--border-color);border-radius:6px;transition:all var(--transition)}.education-item[data-astro-cid-2gvrk3wr]:hover{border-color:var(--color-accent);transform:translateY(-4px) scale(1.02);box-shadow:0 8px 24px #3b82f64d}.education-header[data-astro-cid-2gvrk3wr]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-sm);flex-wrap:wrap;gap:var(--spacing-sm)}.education-degree[data-astro-cid-2gvrk3wr]{font-size:1.25rem;font-weight:600;color:var(--color-text)}.education-date[data-astro-cid-2gvrk3wr]{color:var(--color-accent);font-size:.9rem;font-weight:500;white-space:nowrap}.education-school[data-astro-cid-2gvrk3wr]{font-size:1rem;color:var(--color-text-muted);margin-bottom:var(--spacing-xs)}.education-note[data-astro-cid-2gvrk3wr]{font-size:.95rem;color:var(--color-text-muted);font-style:italic}@media(max-width:768px){.education-header[data-astro-cid-2gvrk3wr]{flex-direction:column}.education-degree[data-astro-cid-2gvrk3wr]{font-size:1.25rem}}.experience[data-astro-cid-xpq65ryk]{background:var(--color-surface)}.experience-list[data-astro-cid-xpq65ryk]{display:flex;flex-direction:column;gap:var(--spacing-md)}.experience-item[data-astro-cid-xpq65ryk]{padding:var(--spacing-md);background:var(--color-bg);border:1px solid var(--border-color);border-radius:6px;transition:all var(--transition);position:relative}.experience-item[data-astro-cid-xpq65ryk]:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--color-accent);border-radius:8px 0 0 8px;opacity:0;transition:opacity var(--transition)}.experience-item[data-astro-cid-xpq65ryk]:hover{border-color:var(--color-accent);transform:translate(6px) scale(1.01);box-shadow:0 8px 24px #3b82f633}.experience-item[data-astro-cid-xpq65ryk]:hover:before{opacity:1}.experience-header[data-astro-cid-xpq65ryk]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md);gap:var(--spacing-md);flex-wrap:wrap}.experience-title-group[data-astro-cid-xpq65ryk]{flex:1;min-width:250px}.experience-title[data-astro-cid-xpq65ryk]{font-size:1.25rem;font-weight:600;color:var(--color-text);margin-bottom:var(--spacing-xs)}.experience-company[data-astro-cid-xpq65ryk]{font-size:1rem;color:var(--color-accent);font-weight:500;margin-bottom:var(--spacing-xs)}.experience-department[data-astro-cid-xpq65ryk]{font-size:.95rem;color:var(--color-text-muted);margin-bottom:var(--spacing-xs)}.experience-location[data-astro-cid-xpq65ryk]{font-size:.9rem;color:var(--color-text-muted)}.experience-date[data-astro-cid-xpq65ryk]{color:var(--color-accent);font-size:.9rem;font-weight:500;white-space:nowrap}.experience-items[data-astro-cid-xpq65ryk]{list-style:none;padding-left:0}.experience-items[data-astro-cid-xpq65ryk] li[data-astro-cid-xpq65ryk]{padding-left:1.25rem;position:relative;color:var(--color-text-muted);line-height:1.6;margin-bottom:var(--spacing-xs);font-size:.95rem}.experience-items[data-astro-cid-xpq65ryk] li[data-astro-cid-xpq65ryk]:before{content:"▸";position:absolute;left:0;color:var(--color-accent);font-weight:700}.experience-items[data-astro-cid-xpq65ryk] li[data-astro-cid-xpq65ryk]:last-child{margin-bottom:0}@media(max-width:768px){.experience-header[data-astro-cid-xpq65ryk]{flex-direction:column}.experience-title[data-astro-cid-xpq65ryk]{font-size:1.25rem}.experience-date[data-astro-cid-xpq65ryk]{align-self:flex-start}}.skills[data-astro-cid-vxpbnb6q]{background:var(--color-bg)}.skills-grid[data-astro-cid-vxpbnb6q]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-md)}.skill-category[data-astro-cid-vxpbnb6q]{padding:var(--spacing-md);background:var(--color-surface);border:1px solid var(--border-color);border-radius:6px;transition:all var(--transition)}.skill-category[data-astro-cid-vxpbnb6q]:hover{border-color:var(--color-accent);transform:translateY(-4px) scale(1.02);box-shadow:0 8px 24px #3b82f64d}.skill-category-title[data-astro-cid-vxpbnb6q]{font-size:1.125rem;font-weight:600;color:var(--color-accent);margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-xs);border-bottom:2px solid var(--border-color)}.skill-tags[data-astro-cid-vxpbnb6q]{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.skill-tag[data-astro-cid-vxpbnb6q]{padding:.5rem 1rem;background:var(--color-bg);border:1px solid var(--border-color);border-radius:20px;font-size:.9rem;color:var(--color-text-muted);transition:all var(--transition)}.skill-tag[data-astro-cid-vxpbnb6q]:hover{border-color:var(--color-accent);color:var(--color-accent);transform:translateY(-2px) scale(1.05);background:var(--color-surface)}@media(max-width:768px){.skills-grid[data-astro-cid-vxpbnb6q]{grid-template-columns:1fr}}.projects[data-astro-cid-amng4zvp]{background:var(--color-surface)}.projects-grid[data-astro-cid-amng4zvp]{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-md)}.project-card[data-astro-cid-amng4zvp]{padding:var(--spacing-md);background:var(--color-bg);border:1px solid var(--border-color);border-radius:6px;transition:all var(--transition);display:flex;flex-direction:column;overflow:hidden}.project-image[data-astro-cid-amng4zvp]{width:100%;height:200px;object-fit:cover;border-radius:4px;margin-bottom:var(--spacing-md);background:var(--color-surface)}.project-card[data-astro-cid-amng4zvp]:hover{border-color:var(--color-accent);transform:translateY(-6px) scale(1.02);box-shadow:0 12px 32px #3b82f64d}.project-header[data-astro-cid-amng4zvp]{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.project-title[data-astro-cid-amng4zvp]{font-size:1.125rem;font-weight:600;color:var(--color-text);line-height:1.4;flex:1}.project-status[data-astro-cid-amng4zvp]{padding:.25rem .75rem;background:var(--color-accent);color:#fff;border-radius:12px;font-size:.75rem;font-weight:600;white-space:nowrap;text-transform:uppercase;letter-spacing:.5px}.project-description[data-astro-cid-amng4zvp]{color:var(--color-text-muted);line-height:1.6;flex:1;font-size:.95rem}@media(max-width:768px){.projects-grid[data-astro-cid-amng4zvp]{grid-template-columns:1fr}.project-header[data-astro-cid-amng4zvp]{flex-direction:column}.project-status[data-astro-cid-amng4zvp]{align-self:flex-start}}.contact[data-astro-cid-xmivup5a]{background:var(--color-bg)}.contact-content[data-astro-cid-xmivup5a]{max-width:600px;margin:0 auto;text-align:center}.contact-intro[data-astro-cid-xmivup5a]{font-size:1rem;color:var(--color-text-muted);margin-bottom:var(--spacing-lg);line-height:1.6}.contact-info[data-astro-cid-xmivup5a]{display:flex;flex-direction:column;gap:var(--spacing-sm)}.contact-item[data-astro-cid-xmivup5a]{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm);background:var(--color-surface);border:1px solid var(--border-color);border-radius:6px;color:var(--color-text);text-decoration:none;transition:all var(--transition)}.contact-item[data-astro-cid-xmivup5a]:hover{border-color:var(--color-accent);color:var(--color-accent);transform:translateY(-3px) scale(1.02);box-shadow:0 8px 24px #3b82f64d}.contact-item[data-astro-cid-xmivup5a] svg[data-astro-cid-xmivup5a]{flex-shrink:0}.contact-item[data-astro-cid-xmivup5a] span[data-astro-cid-xmivup5a]{font-size:1rem;font-weight:500}@media(max-width:768px){.contact-item[data-astro-cid-xmivup5a]{flex-direction:column;text-align:center}.contact-item[data-astro-cid-xmivup5a] span[data-astro-cid-xmivup5a]{font-size:1rem}}nav{position:fixed;top:0;left:0;right:0;z-index:1000;background:#0a0a0acc;backdrop-filter:blur(10px);border-bottom:1px solid var(--border-color);padding:.75rem 0}nav .container{max-width:var(--max-width);margin:0 auto;padding:0 1.5rem;display:flex;justify-content:space-between;align-items:center}nav .logo{font-size:1.25rem;font-weight:600;color:var(--color-text);text-decoration:none;transition:color var(--transition)}nav .logo:hover{color:var(--color-accent)}nav ul{display:flex;list-style:none;gap:2rem}nav a{color:var(--color-text-muted);text-decoration:none;font-size:.9rem;font-weight:500;transition:all var(--transition);position:relative}nav a:hover{color:var(--color-text)}nav a:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--color-accent);transition:width var(--transition)}nav a:hover:after{width:100%}nav a:hover{transform:translateY(-1px)}@media(max-width:768px){nav ul{gap:1rem;font-size:.85rem}}section{padding:var(--section-padding);position:relative}.section-container{max-width:var(--max-width);margin:0 auto}.section-title{font-size:2rem;font-weight:700;margin-bottom:var(--spacing-lg);color:var(--color-text);position:relative;display:inline-block}.section-title:after{content:"";position:absolute;bottom:-.5rem;left:0;width:60px;height:3px;background:var(--color-accent)}@media(max-width:768px){.section-title{font-size:1.75rem}}.text-center{text-align:center}.mt-1{margin-top:var(--spacing-sm)}.mt-2{margin-top:var(--spacing-md)}.mt-3{margin-top:var(--spacing-lg)}.mb-1{margin-bottom:var(--spacing-sm)}.mb-2{margin-bottom:var(--spacing-md)}.mb-3{margin-bottom:var(--spacing-lg)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.fade-in{animation:fadeInUp .6s ease-out}section{opacity:0;animation:fadeInUp .8s ease-out forwards}section:nth-child(1){animation-delay:.1s}section:nth-child(2){animation-delay:.2s}section:nth-child(3){animation-delay:.3s}section:nth-child(4){animation-delay:.4s}html{scroll-behavior:smooth}
