@import"https://fonts.googleapis.com/css2?family=Crimson+Pro:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&family=Source+Sans+3:wght@300;400;500;600&display=swap";html[data-theme=dark] .theme-toggle .sun-icon,html[data-theme=light] .theme-toggle .moon-icon{opacity:0;transform:rotate(-90deg);position:absolute}:root{--color-bg: #0a0a0b;--color-bg-secondary: #141416;--color-bg-tertiary: #1c1c1f;--color-text-primary: #f5f5f5;--color-text-secondary: #a8a8a8;--color-text-tertiary: #6b6b6b;--color-border: #2a2a2d;--color-border-subtle: #1f1f22;--color-accent: #d4a574;--color-accent-dark: #b8956a;--color-accent-light: #e8d4c0;--color-accent-subtle: rgba(212, 165, 116, .08);--color-success: #9db88d;--color-warning: #c9a954;--font-family-display: "Crimson Pro", Georgia, "Times New Roman", serif;--font-family-sans: "Source Sans 3", -apple-system, BlinkMacSystemFont, sans-serif;--font-family-mono: "JetBrains Mono", "Monaco", "Courier New", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.5rem;--font-size-5xl: 3.5rem;--font-size-6xl: 4.5rem;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.25rem;--space-xl: 1.75rem;--space-2xl: 2.5rem;--space-3xl: 3rem;--space-4xl: 4rem;--space-5xl: 5rem;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .4);--shadow-md: 0 4px 8px -2px rgba(0, 0, 0, .3), 0 2px 4px -1px rgba(0, 0, 0, .2);--shadow-lg: 0 12px 24px -4px rgba(0, 0, 0, .3), 0 4px 8px -2px rgba(0, 0, 0, .2);--shadow-xl: 0 24px 48px -8px rgba(0, 0, 0, .4), 0 8px 16px -4px rgba(0, 0, 0, .2);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .4s cubic-bezier(.4, 0, .2, 1);--container-sm: 640px;--container-md: 900px;--container-lg: 1200px}html[data-theme=light]{--color-bg: #fafafa;--color-bg-secondary: #f0f0f1;--color-bg-tertiary: #e5e5e7;--color-text-primary: #1a1a1a;--color-text-secondary: #5a5a5a;--color-text-tertiary: #8a8a8a;--color-border: #d0d0d2;--color-border-subtle: #e0e0e2}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-family-sans);font-size:var(--font-size-base);font-weight:400;line-height:1.7;color:var(--color-text-primary);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-display);font-weight:500;line-height:1.2;margin-bottom:var(--space-lg);color:var(--color-text-primary);letter-spacing:-.01em}h1{font-size:var(--font-size-5xl);font-weight:600}h2{font-size:var(--font-size-4xl);margin-bottom:var(--space-xl)}h3{font-size:var(--font-size-3xl);margin-bottom:var(--space-md)}h4{font-size:var(--font-size-2xl);margin-bottom:var(--space-md)}h5{font-size:var(--font-size-xl);margin-bottom:var(--space-sm)}h6{font-size:var(--font-size-lg)}p{margin-bottom:var(--space-lg);color:var(--color-text-secondary)}a{color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-light)}strong,b{font-weight:600;color:var(--color-text-primary)}code{font-family:var(--font-family-mono);font-size:.9em;background-color:var(--color-bg-tertiary);color:var(--color-accent-light);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);border:1px solid var(--color-border)}.theme-toggle{position:fixed;bottom:var(--space-xl);right:var(--space-xl);width:2.25rem;height:2.25rem;border-radius:50%;background:var(--color-bg-secondary);border:1px solid var(--color-border);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:1000;transition:all var(--transition-base);box-shadow:var(--shadow-md);opacity:.3}.theme-toggle:hover{opacity:.6;background:var(--color-bg-tertiary);transform:scale(1.05)}.header{background:#0a0a0be6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border-subtle);position:sticky;top:0;z-index:100;transition:all var(--transition-base)}.nav-container{max-width:var(--container-lg);margin:0 auto;padding:var(--space-lg) var(--space-xl);display:flex;align-items:center;justify-content:space-between}.nav-brand{flex-shrink:0}.logo{font-family:var(--font-family-display);font-size:var(--font-size-2xl);font-weight:600;color:var(--color-text-primary);transition:all var(--transition-fast);text-decoration:none;display:inline-block;letter-spacing:-.02em}.logo:hover{color:var(--color-accent)}.nav-menu{display:flex;list-style:none;gap:var(--space-xl)}.nav-link{position:relative;color:var(--color-text-secondary);font-weight:500;font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.04em;transition:color var(--transition-fast);background:none;border:none;cursor:pointer;padding:0}.nav-link:after{content:"";position:absolute;bottom:-6px;left:0;width:0;height:1px;background:var(--color-accent);transition:width var(--transition-base)}.nav-link:hover,.nav-link.active{color:var(--color-accent)}.nav-link:hover:after,.nav-link.active:after{width:100%}.hero-section{padding:var(--space-5xl) var(--space-xl);background:linear-gradient(180deg,var(--color-bg-secondary) 0%,var(--color-bg) 100%);border-bottom:1px solid var(--color-border-subtle)}.hero-container{max-width:var(--container-lg);margin:0 auto;display:grid;grid-template-columns:240px 1fr;gap:var(--space-4xl);align-items:center}.hero-image-wrapper{position:relative;width:240px;height:240px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.hero-image{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);transition:transform var(--transition-slow);filter:grayscale(20%)}.hero-image-wrapper:hover .hero-image{transform:scale(1.02);filter:grayscale(0%)}.hero-image-border{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-xl);border:1px solid var(--color-border);pointer-events:none}.hero-text{max-width:680px}.hero-title{font-size:var(--font-size-5xl);margin-bottom:var(--space-md);color:var(--color-text-primary);letter-spacing:-.02em}.hero-years-badge{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--color-accent-subtle);border:1px solid var(--color-accent);border-radius:var(--radius-md);margin-bottom:var(--space-lg)}.hero-years-number{font-family:var(--font-family-display);font-size:var(--font-size-3xl);font-weight:600;color:var(--color-accent);line-height:1}.hero-years-text{font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em}.hero-subtitle{font-size:var(--font-size-xl);color:var(--color-accent);margin-bottom:var(--space-md);font-weight:500;font-family:var(--font-family-display)}.hero-description{font-size:var(--font-size-base);color:var(--color-text-secondary);margin-bottom:var(--space-xl);line-height:1.7}.hero-cta{display:flex;gap:var(--space-md);flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-md) var(--space-xl);border-radius:var(--radius-md);font-weight:500;font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.04em;transition:all var(--transition-fast);text-decoration:none;border:1px solid transparent;cursor:pointer;white-space:nowrap}.btn-primary{background:var(--color-accent);color:var(--color-bg);border-color:var(--color-accent)}.btn-primary:hover{background:var(--color-accent-dark);border-color:var(--color-accent-dark);color:var(--color-bg);transform:translateY(-1px);text-decoration:none}.btn-secondary{background:transparent;color:var(--color-text-primary);border-color:var(--color-border)}.btn-secondary:hover{background:var(--color-bg-secondary);border-color:var(--color-accent);color:var(--color-accent);text-decoration:none}.page-content{max-width:var(--container-lg);margin:0 auto;padding:var(--space-5xl) var(--space-xl)}.section{margin-bottom:var(--space-5xl)}.section-title{font-size:var(--font-size-4xl);margin-bottom:var(--space-2xl);position:relative;padding-bottom:var(--space-lg);border-bottom:1px solid var(--color-border)}.section-title:after{content:"";position:absolute;bottom:-1px;left:0;width:80px;height:2px;background:var(--color-accent)}.about-content{max-width:720px}.about-content p{font-size:var(--font-size-lg);line-height:1.8;margin-bottom:var(--space-xl)}.experience-items{display:flex;flex-direction:column}.experience-item{margin-bottom:var(--space-4xl);display:grid;grid-template-columns:160px 1fr;gap:var(--space-xl)}.experience-date{font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:500;color:var(--color-accent);text-transform:uppercase;letter-spacing:.05em;padding-top:var(--space-xs)}.experience-content{position:relative;padding-left:var(--space-xl)}.experience-content:before{content:"";position:absolute;left:0;top:8px;width:8px;height:8px;border-radius:50%;background:var(--color-bg);border:2px solid var(--color-accent)}.experience-content h3{font-size:var(--font-size-xl);font-weight:500;margin-bottom:var(--space-sm)}.experience-company{color:var(--color-accent);font-weight:500;margin-bottom:var(--space-md);font-size:var(--font-size-base)}.experience-description{color:var(--color-text-secondary);margin-bottom:var(--space-md);line-height:1.7}.experience-tech{color:var(--color-text-tertiary);font-size:var(--font-size-sm);font-family:var(--font-family-mono)}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-xl);margin-bottom:var(--space-3xl)}.skill-category{background:var(--color-bg-secondary);padding:var(--space-xl);border-radius:var(--radius-lg);border:1px solid var(--color-border);border-left:2px solid var(--color-accent);transition:all var(--transition-base)}.skill-category:hover{border-color:var(--color-accent);transform:translate(4px)}.skill-category h3{font-size:var(--font-size-lg);font-weight:500;margin-bottom:var(--space-md);color:var(--color-text-primary);font-family:var(--font-family-sans)}.skill-category ul{list-style:none;padding:0;margin:0}.skill-category li{padding:var(--space-sm) 0;color:var(--color-text-secondary);font-size:var(--font-size-sm);border-bottom:1px solid var(--color-border-subtle)}.skill-category li:last-child{border-bottom:none}.education-items{display:flex;flex-direction:column}.education-item{background:var(--color-bg-secondary);padding:var(--space-xl);border-radius:var(--radius-lg);margin-bottom:var(--space-xl);border:1px solid var(--color-border);border-left:2px solid var(--color-success);transition:all var(--transition-base)}.education-item:hover{border-color:var(--color-success)}.education-date{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-tertiary);margin-bottom:var(--space-sm);text-transform:uppercase;letter-spacing:.04em}.education-item h3{font-size:var(--font-size-lg);font-weight:500;margin-bottom:var(--space-sm)}.education-field{color:var(--color-text-secondary);margin-bottom:var(--space-sm)}.education-thesis{color:var(--color-text-tertiary);font-size:var(--font-size-sm)}.contact-section{max-width:100%}.contact-info{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-xl);margin-bottom:var(--space-3xl);max-width:1000px}.contact-item{background:var(--color-bg-secondary);padding:var(--space-xl);border-radius:var(--radius-lg);text-align:center;border:1px solid var(--color-border);border-top:2px solid var(--color-accent);transition:all var(--transition-base)}.contact-item:hover{border-color:var(--color-accent);transform:translateY(-2px)}.contact-item h4{margin-bottom:var(--space-md);color:var(--color-accent);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.04em;font-family:var(--font-family-sans)}.contact-item p{margin:0;font-size:var(--font-size-base)}.vcard-link{background:none;border:none;padding:0;color:var(--color-accent);text-decoration:underline;font-size:var(--font-size-base);cursor:pointer;transition:color var(--transition-fast);font-family:inherit}.vcard-link:hover{color:var(--color-accent-light);text-decoration:underline}.contact-links{display:flex;gap:var(--space-md);flex-wrap:wrap;margin-top:var(--space-xl)}.contact-links a{padding:var(--space-md) var(--space-lg);background:var(--color-accent);color:var(--color-bg);border-radius:var(--radius-md);font-weight:500;font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.04em;transition:all var(--transition-fast);text-decoration:none}.contact-links a:hover{background:var(--color-accent-dark);transform:translateY(-1px);text-decoration:none}.cv-downloads{display:flex;gap:var(--space-md);flex-wrap:wrap;margin-top:var(--space-xl)}.cv-downloads .btn{margin-right:var(--space-md)}.footer{background:var(--color-bg-secondary);border-top:1px solid var(--color-border-subtle);padding:var(--space-4xl) var(--space-xl);margin-top:var(--space-5xl)}.footer-content{max-width:var(--container-lg);margin:0 auto}.footer-section{margin-bottom:var(--space-xl)}.footer-section h3{margin-bottom:var(--space-md);color:var(--color-accent);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.04em;font-family:var(--font-family-sans)}.footer-section ul{list-style:none}.footer-section li,.footer-section p{margin-bottom:var(--space-sm);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.footer-section a{color:var(--color-text-secondary);transition:color var(--transition-fast)}.footer-section a:hover{color:var(--color-accent);text-decoration:none}.footer-bottom{border-top:1px solid var(--color-border);padding-top:var(--space-xl);margin-top:var(--space-xl);text-align:center;color:var(--color-text-tertiary);font-size:var(--font-size-xs)}@media (max-width: 900px){.hero-container{grid-template-columns:1fr;gap:var(--space-2xl);text-align:center}.hero-image-wrapper,.hero-text{margin:0 auto}.hero-years-badge,.hero-cta{justify-content:center}}@media (max-width: 768px){:root{--font-size-5xl: 2.5rem;--font-size-4xl: 2rem;--font-size-3xl: 1.5rem;--space-4xl: 3rem;--space-5xl: 4rem}.theme-toggle{width:2rem;height:2rem;bottom:var(--space-md);right:var(--space-md)}.nav-menu{gap:var(--space-md);font-size:var(--font-size-xs)}.hero-section{padding:var(--space-3xl) var(--space-md)}.hero-image-wrapper{width:180px;height:180px}.hero-years-number{font-size:var(--font-size-2xl)}.experience-item{grid-template-columns:1fr;gap:var(--space-md)}.experience-date{margin-bottom:var(--space-sm)}.skills-grid,.contact-info{grid-template-columns:1fr}.page-content{padding:var(--space-3xl) var(--space-md)}.section{margin-bottom:var(--space-3xl)}}@media (max-width: 480px){:root{--font-size-5xl: 2rem;--font-size-4xl: 1.75rem;--space-xl: 1.5rem;--space-2xl: 2rem}.nav-container{padding:var(--space-md) var(--space-md)}.hero-title{font-size:var(--font-size-4xl)}.hero-subtitle{font-size:var(--font-size-lg)}.hero-cta{flex-direction:column}.btn{width:100%;justify-content:center}.contact-links,.cv-downloads{flex-direction:column}.contact-links a,.cv-downloads .btn{width:100%}.section-title:after{width:60px}}@media print{.theme-toggle,.nav-container,.footer,.hero-cta{display:none}body{background:#fff;color:#000}a{color:#000;text-decoration:underline}.hero-section{background:#fff;border:none}.hero-image{filter:none}}
