@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600&family=JetBrains+Mono:wght@400;500&family=Inter:wght@300;400;500;600;700&display=swap";:root{--bg: #0a0c10;--bg-subtle: #12141a;--nav-bg: rgba(10, 12, 16, .8);--text: #e8eaf0;--text-muted: #8a90a0;--accent: #e8eaf0;--accent-soft: rgba(232, 234, 240, .06);--border: #1e222a;--mono: "JetBrains Mono", monospace;--sans: "Inter", sans-serif;--display: "Outfit", sans-serif;transition:background-color .3s ease,color .3s ease}[data-theme=light]{--bg: #f7f8fa;--bg-subtle: #eef0f4;--nav-bg: rgba(247, 248, 250, .8);--text: #10141c;--text-muted: #6b7280;--accent: #10141c;--accent-soft: rgba(16, 20, 28, .04);--border: #dfe2e8}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;background-color:var(--bg)}body{font-family:var(--sans);background-color:var(--bg);color:var(--text);line-height:1.5;-webkit-font-smoothing:antialiased}#root{width:100%;min-height:100vh}html{scroll-padding-top:80px}.page-container{min-height:100vh;background:var(--bg);color:var(--text);font-family:var(--sans)}.main-content{max-width:1000px;margin:0 auto;padding:0 20px}.nav{position:fixed;top:0;left:0;right:0;padding:24px 0;background:var(--nav-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:100;border-bottom:1px solid transparent;transition:all .3s ease}.nav.scrolled{border-bottom:1px solid var(--border);padding:14px 0}.nav.menu-open{background:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none}.nav-inner{max-width:1000px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center}.nav-logo{font-family:var(--display);font-size:14px;font-weight:600;letter-spacing:2px;color:var(--text);background:none;border:none;cursor:pointer;padding:8px 0;z-index:101;position:relative}.nav-links{display:flex;gap:30px;align-items:center}.theme-toggle{background:transparent;border:1px solid var(--border);color:var(--text);padding:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:4px;margin-left:10px;transition:all .2s}.theme-toggle:hover{background:var(--bg-subtle);border-color:var(--accent)}.theme-toggle svg{width:16px;height:16px}.nav-link{font-family:var(--display);font-size:12px;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);background:none;border:none;cursor:pointer;transition:color .2s;padding:8px 0;position:relative}.nav-link:hover,.nav-link.active{color:var(--text)}.nav-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--accent);transition:width .3s}.nav-link.active:after{width:100%}.hero-section{min-height:100vh;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden;padding-top:100px}.hero-content.hero-split{position:relative;z-index:10;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.hero-left{display:flex;flex-direction:column;gap:20px}.hero-role-label{font-family:var(--sans);font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:2px}.hero-name{font-family:var(--display);font-size:clamp(3rem,6vw,4.5rem);font-weight:300;line-height:1.1;letter-spacing:-2px;color:var(--text)}.hero-right{display:flex;flex-direction:column;gap:0}.hero-description{font-size:clamp(1rem,1.5vw,1.1rem);color:var(--text-muted);line-height:1.8;margin-bottom:20px}.hero-goal{font-size:clamp(.9rem,1.3vw,1rem);color:var(--text-muted);line-height:1.8;margin-bottom:32px;padding-left:16px;border-left:2px solid var(--accent);opacity:.85}.hero-right .cta-group{margin-top:0}@media(max-width:900px){.hero-content.hero-split{grid-template-columns:1fr;gap:40px}.hero-name{font-size:clamp(2.5rem,10vw,3.5rem)}}.section{padding:120px 0}.section-header{margin-bottom:60px}.section-label{font-family:var(--sans);font-size:.75rem;color:var(--accent);text-transform:uppercase;letter-spacing:2px;display:block;margin-bottom:12px;font-weight:600}.section-title{font-size:28px;font-weight:500;letter-spacing:-.01em}.section-title em{font-style:italic;color:var(--accent)}.section-intro{color:var(--text-muted);margin-top:20px;max-width:800px;font-size:1.1rem;line-height:1.6}.showcase-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--border);border:1px solid var(--border)}.showcase-item{background:var(--bg);padding:60px;transition:all .3s ease;cursor:pointer}.showcase-item:hover{background:var(--bg-subtle)}.showcase-item h3{font-size:22px;font-weight:500;margin-bottom:24px}.showcase-item .meta{font-family:var(--sans);font-size:.7rem;color:var(--accent);text-transform:uppercase;letter-spacing:2px;font-weight:600}.showcase-preview{width:100%;aspect-ratio:16/9;background:var(--bg-subtle);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:32px;margin-bottom:20px;color:#333;overflow:hidden;position:relative}.showcase-preview img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.4,0,.2,1),opacity .8s ease-in-out;position:absolute;top:0;left:0;opacity:0}.showcase-preview img.active{opacity:1}.showcase-item:hover .showcase-preview img.active{transform:scale(1.05)}.iframe-placeholder{display:flex;flex-direction:column;align-items:center;gap:12px}.placeholder-icon{font-size:40px;margin-bottom:5px}.iframe-placeholder span{font-family:var(--display);font-size:11px;color:var(--accent);text-transform:uppercase;letter-spacing:1px;font-weight:600}.focus-overlay{position:fixed;top:0;left:0;width:100dvw;height:100dvh;z-index:2000;background:var(--bg);padding:32px;display:flex;flex-direction:column;animation:slideUp .4s cubic-bezier(.23,1,.32,1);overflow:hidden;box-sizing:border-box}.focus-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;flex-shrink:0}.focus-title{font-size:clamp(18px,4vw,24px);font-weight:500;margin-top:4px}.focus-close{background:var(--bg-subtle);border:1px solid var(--border);color:var(--text);padding:8px 16px;font-family:var(--display);font-size:10px;cursor:pointer;border-radius:4px;transition:all .2s}.focus-content{flex:1;display:grid;grid-template-columns:1fr 340px;gap:32px;min-height:0;width:100%}.focus-iframe-wrapper{background:#000;border:1px solid var(--border);border-radius:12px;overflow:hidden;height:100%;width:100%;position:relative}.focus-iframe-wrapper iframe,.focus-iframe-wrapper img{position:absolute;inset:0;width:100%;height:100%;border:none;object-fit:contain}.focus-sidebar{display:flex;flex-direction:column;gap:24px;overflow-y:auto;padding-right:12px;height:100%}.focus-description{color:var(--text-muted);font-size:14px;line-height:1.7;margin-top:8px}@media(max-width:1024px){.focus-content{grid-template-columns:1fr;grid-template-rows:1fr 200px}}@media(max-width:768px){.focus-overlay{padding:16px}.focus-content{grid-template-rows:40vh auto;overflow-y:auto}.focus-iframe-wrapper{position:sticky;top:0;height:40vh}.focus-sidebar{height:auto;overflow-y:visible}}.focus-tag-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.focus-tag{font-family:var(--mono);font-size:10px;border:1px solid var(--border);padding:4px 10px;color:var(--text-muted);border-radius:4px}.focus-action-btn{margin-top:auto;background:var(--accent);color:#fff;text-decoration:none;text-align:center;padding:16px;font-family:var(--display);font-size:11px;text-transform:uppercase;letter-spacing:1px;border-radius:4px}.exp-row{display:grid;grid-template-columns:220px 1fr;gap:40px;padding:48px 0;border-bottom:1px solid var(--border)}.exp-meta{font-family:var(--sans);font-size:.75rem;color:var(--accent);padding-left:15px;border-left:2px solid var(--accent);height:max-content;align-self:flex-start;margin-top:5px;letter-spacing:1px;text-transform:uppercase;font-weight:600}.exp-role{font-size:20px;font-weight:500;margin-bottom:6px}.exp-company{color:var(--accent);font-family:var(--sans);font-size:11px;margin-bottom:20px;text-transform:uppercase;letter-spacing:1px;font-weight:600}.exp-desc{color:var(--text-muted);max-width:650px;line-height:1.7}.skills-container{margin-top:40px}.skills-row{display:grid;grid-template-columns:280px 1fr;padding:32px 0;border-bottom:1px solid var(--border);align-items:center}.skills-category-title{font-family:var(--sans);font-size:.7rem;color:var(--accent);text-transform:uppercase;letter-spacing:2px;font-weight:600;border-left:2px solid var(--accent);padding-left:15px;line-height:1.4;max-width:200px}.skills-list{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.skill-item{font-size:16px;color:var(--text)}.skill-separator{color:var(--text-muted);margin-left:12px;font-size:14px;opacity:.6}@media(max-width:800px){.skills-row{grid-template-columns:1fr;gap:16px;padding:24px 0}}.contact-footer{display:flex;flex-direction:column;gap:60px}.email-link{font-size:clamp(1.2rem,3.5vw,2rem);color:var(--text);text-decoration:none;border-bottom:2px solid var(--accent);align-self:flex-start;padding-bottom:12px;transition:opacity .2s}.email-link:hover{opacity:.7}.social-links{display:flex;gap:24px;align-items:center}.social-links a{color:var(--text-muted);transition:all .2s ease;display:flex;align-items:center;justify-content:center;padding:8px;border:1px solid var(--border);border-radius:4px}.social-links a:hover{color:var(--text);border-color:var(--accent);background:var(--bg-subtle);transform:translateY(-2px)}.social-links svg{width:20px;height:20px}.cta-group{display:flex;gap:20px}.btn{padding:16px 32px;font-family:var(--display);font-size:11px;text-transform:uppercase;letter-spacing:2px;border:none;cursor:pointer;border-radius:4px;transition:all .2s}.btn-primary{background:var(--accent);color:#fff}.btn-secondary{background:transparent;color:var(--text);border:1px solid var(--border)}.btn:hover{transform:translateY(-2px)}.btn-secondary:hover{background:var(--bg-subtle)}[data-theme=dark] .btn-primary{background:transparent;color:var(--text);border:1px solid var(--border)}[data-theme=dark] .btn-primary:hover{background:var(--bg-subtle)}.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:10px;z-index:101;margin-right:-10px}.hamburger span{display:block;width:25px;height:2px;background-color:var(--text);transition:all .3s ease}@media(max-width:900px){.hamburger{display:flex}}.hamburger span.active:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger span.active:nth-child(2){opacity:0}.hamburger span.active:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.cert-numbered{margin-top:40px}.cert-numbered-item{display:flex;align-items:center;padding:28px 0;border-bottom:1px solid var(--border);cursor:pointer;text-decoration:none;color:inherit;transition:all .3s ease}.cert-numbered-index{font-family:var(--mono);font-size:32px;font-weight:500;color:var(--border);width:80px;flex-shrink:0;transition:color .3s ease}.cert-numbered-item:hover .cert-numbered-index{color:var(--accent)}.cert-numbered-content{flex:1;transition:transform .3s ease}.cert-numbered-item:hover .cert-numbered-content{transform:translate(8px)}.cert-numbered-name{font-size:18px;font-weight:500;margin-bottom:4px;color:var(--text)}.cert-numbered-meta{display:flex;gap:20px;align-items:center}.cert-numbered-code{font-family:var(--mono);font-size:11px;color:var(--accent)}.cert-numbered-date{font-family:var(--display);font-size:11px;color:var(--text-muted)}.cert-numbered-action{font-family:var(--sans);font-size:.7rem;color:var(--accent);text-transform:uppercase;letter-spacing:1px;font-weight:600;opacity:0;transform:translate(-20px);transition:all .3s ease}.cert-numbered-item:hover .cert-numbered-action{opacity:1;transform:translate(0)}@media(max-width:768px){.cert-numbered-item{flex-wrap:wrap;gap:16px;padding:24px 0}.cert-numbered-index{font-size:24px;width:50px}.cert-numbered-content{flex:1 1 calc(100% - 70px)}.cert-numbered-item:hover .cert-numbered-content{transform:none}.cert-numbered-action{opacity:1;transform:none;width:100%;padding-left:50px}}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:900px){.showcase-grid,.focus-content{grid-template-columns:1fr}.focus-iframe-wrapper{height:400px}.exp-row{grid-template-columns:1fr;gap:16px}.nav-links{position:fixed;inset:0;background:var(--bg);flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:120px 20px;gap:32px;z-index:100;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-20px);transition:opacity .3s ease,visibility .3s ease,transform .3s ease}.nav-links.mobile-open{display:flex;opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.nav-link{font-size:24px;padding:10px 0;width:100%;text-align:left;border-bottom:1px solid var(--border);opacity:0;transform:translate(-20px);transition:opacity .3s ease,transform .3s ease,color .2s}.nav-links.mobile-open .nav-link{opacity:1;transform:translate(0)}.nav-links.mobile-open .nav-link:nth-child(1){transition-delay:.05s}.nav-links.mobile-open .nav-link:nth-child(2){transition-delay:.1s}.nav-links.mobile-open .nav-link:nth-child(3){transition-delay:.15s}.nav-links.mobile-open .nav-link:nth-child(4){transition-delay:.2s}.nav-links.mobile-open .nav-link:nth-child(5){transition-delay:.25s}.nav-link:after{display:none}.theme-toggle{margin-left:0;margin-top:20px;padding:12px;opacity:0;transform:translate(-20px);transition:opacity .3s ease,transform .3s ease,background .2s,border-color .2s}.nav-links.mobile-open .theme-toggle{opacity:1;transform:translate(0);transition-delay:.3s}.focus-overlay{padding:24px}.hero-section{text-align:left}}@media(max-width:768px){.cta-group{flex-direction:column}.cta-group .btn{text-align:center}}
