.navbar{border-bottom:1px solid #0000;left:0;padding:24px 40px;position:fixed;right:0;top:0;transition:background .4s,padding .4s,border-bottom .4s;z-index:100}.navbar.scrolled{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0a0a0aeb;border-bottom:1px solid var(--border);padding:16px 40px}.nav-inner{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1100px}.nav-logo{cursor:pointer;font-family:var(--font-display);font-size:22px;font-weight:800;letter-spacing:-.02em}.nav-logo .dot{color:var(--accent)}.nav-links{align-items:center;display:flex;gap:8px;list-style:none}.nav-links li button{background:none;border:none;border-radius:6px;color:var(--muted);font-family:var(--font-body);font-size:13px;font-weight:400;letter-spacing:.02em;padding:8px 14px;transition:color .2s,background .2s}.nav-links li button:hover{background:var(--surface);color:var(--text)}.nav-cta{background:var(--accent);border-radius:6px;color:#000;font-family:var(--font-body);font-size:12px;font-weight:500;letter-spacing:.04em;padding:9px 18px;text-decoration:none;transition:background .2s,transform .2s}.nav-cta:hover{background:var(--accent2);transform:translateY(-1px)}.hamburger{background:none;border:none;display:none;flex-direction:column;gap:5px;padding:4px}.hamburger span{background:var(--text);display:block;height:1.5px;transform-origin:center;transition:transform .3s,opacity .3s;width:22px}.hamburger span.open:first-child{transform:translateY(6.5px) rotate(45deg)}.hamburger span.open:last-child{transform:translateY(-6.5px) rotate(-45deg)}@media (max-width:768px){.navbar{padding:20px 24px}.navbar.scrolled{padding:14px 24px}.hamburger{display:flex}.nav-links{background:var(--bg);bottom:0;flex-direction:column;gap:16px;justify-content:center;left:0;opacity:0;pointer-events:none;position:fixed;right:0;top:0;transform:translateY(-10px);transition:opacity .3s,transform .3s}.nav-links.open{opacity:1;pointer-events:all;transform:translateY(0)}.nav-links li button{color:var(--text);font-family:var(--font-display);font-size:24px;font-weight:700}}.hero{align-items:center;display:flex;justify-content:center;min-height:100vh;overflow:hidden;position:relative}.hero-bg{inset:0;pointer-events:none;position:absolute}.hero-blob{border-radius:50%;filter:blur(80px);opacity:.12;position:absolute}.blob1{animation:float 8s ease-in-out infinite;background:var(--accent);height:600px;right:-100px;top:-200px;width:600px}.blob2{animation:float 10s ease-in-out infinite reverse;background:var(--accent2);bottom:-150px;height:400px;left:-100px;width:400px}@keyframes float{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-30px) scale(1.05)}}.grid-lines{background-image:linear-gradient(#ffffff05 1px,#0000 0),linear-gradient(90deg,#ffffff05 1px,#0000 0);background-size:60px 60px;inset:0;position:absolute}.hero-content{animation:heroIn 1s var(--ease) both;max-width:780px;padding:40px;position:relative;z-index:1}@keyframes heroIn{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.hero-badge{align-items:center;background:#c8f25a14;border:1px solid #c8f25a40;border-radius:100px;color:var(--accent);display:inline-flex;font-size:11px;font-weight:500;gap:8px;letter-spacing:.12em;margin-bottom:32px;padding:7px 16px;text-transform:uppercase}.hero-badge:before{animation:pulse 2s infinite;background:var(--accent);border-radius:50%;content:"";height:6px;width:6px}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}.hero-title{color:var(--text);font-family:var(--font-display);font-size:clamp(3rem,8vw,6.5rem);font-weight:800;letter-spacing:-.03em;line-height:.95;margin-bottom:20px}.char{animation:charIn .5s var(--ease) forwards;display:inline-block;opacity:0;transform:translateY(20px)}.char.space{width:.3em}@keyframes charIn{to{opacity:1;transform:translateY(0)}}.hero-role{color:var(--accent);font-family:var(--font-display);font-size:clamp(1rem,2.5vw,1.4rem);font-weight:600;letter-spacing:.04em;margin-bottom:20px}.hero-desc{color:#f0f0f08c;font-size:1.05rem;line-height:1.7;margin-bottom:40px;max-width:520px}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:56px}.btn-primary{align-items:center;background:var(--accent);border:none;border-radius:8px;color:#000;display:flex;font-family:var(--font-body);font-size:14px;font-weight:500;gap:8px;padding:14px 28px;transition:transform .2s var(--ease),background .2s}.btn-primary:hover{background:#d4f76a;transform:translateY(-2px)}.btn-primary span{transition:transform .2s}.btn-primary:hover span{transform:translateX(4px)}.btn-ghost{background:#0000;border:1px solid var(--border);border-radius:8px;color:var(--text);font-family:var(--font-body);font-size:14px;font-weight:400;padding:14px 28px;transition:border-color .2s,background .2s}.btn-ghost:hover{background:var(--surface);border-color:#fff3}.hero-stats{align-items:center;display:flex;gap:32px}.stat{display:flex;flex-direction:column;gap:2px}.stat-num{color:var(--text);font-family:var(--font-display);font-size:2rem;font-weight:800;line-height:1}.stat-label{color:var(--muted);font-size:11px;letter-spacing:.06em;text-transform:uppercase}.stat-divider{background:var(--border);height:40px;width:1px}.hero-scroll{align-items:center;bottom:40px;color:var(--muted);display:flex;flex-direction:column;font-size:10px;gap:10px;left:50%;letter-spacing:.15em;position:absolute;text-transform:uppercase;transform:translateX(-50%)}.scroll-line{animation:scrollAnim 2s ease-in-out infinite;background:linear-gradient(to bottom,var(--muted),#0000);height:40px;width:1px}@keyframes scrollAnim{0%,to{opacity:.4;transform:scaleY(1);transform-origin:top}50%{opacity:1}}.about-grid{grid-gap:80px;align-items:start;display:grid;gap:80px;grid-template-columns:1fr 1.3fr}.about-right{padding-top:48px}.about-text{color:#f0f0f099;font-size:1rem;line-height:1.8;margin-bottom:20px}.about-chips{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0}.chip{background:var(--surface);border:1px solid var(--border);border-radius:100px;color:var(--muted);font-size:11px;font-weight:500;letter-spacing:.04em;padding:6px 14px;transition:border-color .2s,color .2s}.chip:hover{border-color:var(--accent);color:var(--accent)}.about-edu{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:12px;display:flex;gap:16px;margin-top:32px;padding:20px 24px}.edu-icon{font-size:24px}.edu-degree{color:var(--text);font-size:14px;font-weight:500;margin-bottom:4px}.edu-school{color:var(--muted);font-size:12px}@media (max-width:768px){.about-grid{gap:40px;grid-template-columns:1fr}.about-right{padding-top:0}}.exp-layout{grid-gap:40px;display:grid;gap:40px;grid-template-columns:240px 1fr}.exp-tabs{border-left:1px solid var(--border)}.exp-tab,.exp-tabs{display:flex;flex-direction:column}.exp-tab{align-items:flex-start;background:none;border:none;border-left:2px solid #0000;gap:4px;margin-left:-1px;padding:16px 20px;text-align:left;transition:border-color .2s,background .2s}.exp-tab.active{background:#c8f25a0a;border-left-color:var(--accent)}.tab-company{color:var(--muted);font-size:13px;font-weight:500;transition:color .2s}.exp-tab.active .tab-company,.exp-tab:hover .tab-company{color:var(--accent)}.tab-period{color:var(--muted);font-size:11px;opacity:.6}.exp-content{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:36px}.exp-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:8px}.exp-role{color:var(--text);font-family:var(--font-display);font-size:1.3rem;font-weight:700;margin-bottom:4px}.exp-company{color:var(--accent);font-size:13px;font-weight:500}.exp-badge{background:#c8f25a1a;border:1px solid #c8f25a33;border-radius:100px;color:var(--accent);font-size:10px;font-weight:600;letter-spacing:.08em;padding:5px 12px;text-transform:uppercase}.exp-period{color:var(--muted);font-size:12px;margin-bottom:24px}.exp-list{display:flex;flex-direction:column;gap:14px;list-style:none}.exp-list li{color:#f0f0f0a6;display:flex;font-size:14px;gap:12px;line-height:1.7}.exp-dot{color:var(--accent);flex-shrink:0;font-size:12px;margin-top:4px}@media (max-width:768px){.exp-layout{grid-template-columns:1fr}.exp-tabs{border-bottom:1px solid var(--border);border-left:none;flex-direction:row;overflow-x:auto}.exp-tab{border-bottom:2px solid #0000;border-left:none;margin-bottom:-1px;margin-left:0;white-space:nowrap}.exp-tab.active{border-bottom-color:var(--accent);border-left-color:#0000}}.projects-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.project-card{background:var(--surface);border:1px solid var(--border);border-radius:20px;overflow:hidden;padding:36px;position:relative;transition:border-color .3s,transform .3s var(--ease)}.project-card:before{background:radial-gradient(600px circle at 50% 50%,#c8f25a0a,#0000 40%);background:radial-gradient(600px circle at var(--mx,50%) var(--my,50%),#c8f25a0a,#0000 40%);content:"";inset:0;opacity:0;position:absolute;transition:opacity .4s}.project-card:hover:before{opacity:1}.project-card:hover{border-color:#ffffff1f;transform:translateY(-4px)}.project-card.featured{background:linear-gradient(135deg,#c8f25a08,var(--surface));border-color:#c8f25a26}.featured-tag{color:var(--accent);font-size:10px;font-weight:600;letter-spacing:.12em;margin-bottom:20px;text-transform:uppercase}.project-emoji{font-size:2.5rem;margin-bottom:20px}.project-title{color:var(--text);font-family:var(--font-display);font-size:1.25rem;font-weight:700;line-height:1.2;margin-bottom:14px}.project-desc{color:#f0f0f08c;font-size:13.5px;line-height:1.75;margin-bottom:24px}.project-highlights{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:20px}.highlight{background:#5af2c812;border:1px solid #5af2c826;border-radius:6px;color:var(--accent2);font-size:10px;font-weight:600;letter-spacing:.06em;padding:4px 10px;text-transform:uppercase}.project-stack{display:flex;flex-wrap:wrap;gap:6px}.stack-tag{color:var(--muted);font-family:monospace;font-size:11px}.stack-tag:before{content:"· "}@media (max-width:768px){.projects-grid{grid-template-columns:1fr}}.skills-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(2,1fr);margin-bottom:60px}.skill-category{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:28px;transition:border-color .3s}.skill-category:hover{border-color:#ffffff1a}.cat-header{align-items:center;display:flex;gap:10px;margin-bottom:24px}.cat-icon{font-size:18px}.cat-label{color:var(--text);font-family:var(--font-display);font-size:14px;font-weight:700;letter-spacing:.02em}.skill-bars{display:flex;flex-direction:column;gap:16px}.skill-meta{display:flex;justify-content:space-between;margin-bottom:6px}.skill-name{color:#f0f0f0a6;font-size:12px}.skill-pct{color:var(--accent);font-family:monospace;font-size:11px;font-weight:600}.bar-track{background:#ffffff0f;border-radius:2px;height:3px;overflow:hidden}.bar-fill{background:linear-gradient(90deg,var(--accent),var(--accent2));border-radius:2px;height:100%;transition:width 1.2s cubic-bezier(.16,1,.3,1)}.cert-list{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.cert-card{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:12px;display:flex;gap:14px;padding:18px 20px;transition:border-color .2s,transform .2s}.cert-card:hover{border-color:#c8f25a33;transform:translateY(-2px)}.cert-icon{flex-shrink:0;font-size:22px}.cert-title{color:var(--text);font-size:13px;font-weight:500;line-height:1.3;margin-bottom:4px}.cert-meta{color:var(--muted);font-size:11px}@media (max-width:900px){.cert-list{grid-template-columns:1fr}}@media (max-width:768px){.cert-list,.skills-grid{grid-template-columns:1fr}}.contact-layout{grid-gap:60px;align-items:start;display:grid;gap:60px;grid-template-columns:1fr 1.4fr}.contact-text{color:#f0f0f08c;font-size:1rem;line-height:1.8;margin-bottom:36px}.contact-links{display:flex;flex-direction:column;gap:12px}.contact-link{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:12px;display:flex;gap:14px;padding:14px 18px;text-decoration:none;transition:border-color .2s,transform .2s}.contact-link:hover{border-color:#c8f25a40;transform:translateX(4px)}.link-icon{font-size:18px}.link-label{color:var(--muted);font-size:10px;letter-spacing:.1em;margin-bottom:2px;text-transform:uppercase}.link-value{color:var(--text);font-size:13px;font-weight:400}.contact-form{background:var(--surface);border:1px solid var(--border);border-radius:20px;display:flex;flex-direction:column;gap:20px;padding:36px}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:var(--muted);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.form-group input,.form-group textarea{background:var(--bg);border:1px solid var(--border);border-radius:10px;color:var(--text);font-family:var(--font-body);font-size:14px;outline:none;padding:13px 16px;resize:none;transition:border-color .2s,box-shadow .2s}.form-group input::placeholder,.form-group textarea::placeholder{color:#fff3}.form-group input:focus,.form-group textarea:focus{border-color:#c8f25a66;box-shadow:0 0 0 3px #c8f25a0f}.submit-btn{align-self:flex-start;background:var(--accent);border:none;border-radius:10px;color:#000;font-family:var(--font-body);font-size:14px;font-weight:600;padding:14px 28px;transition:background .2s,transform .2s}.submit-btn:hover:not(:disabled){background:#d4f76a;transform:translateY(-2px)}.submit-btn:disabled{opacity:.5}.form-feedback{border-radius:8px;font-size:13px;padding:12px 16px}.form-feedback.success{background:#c8f25a14;border:1px solid #c8f25a33;color:var(--accent)}.form-feedback.error{background:#f25a5a14;border:1px solid #f25a5a33;color:#f25a5a}@media (max-width:768px){.contact-layout{gap:40px}.contact-layout,.form-row{grid-template-columns:1fr}}.footer{border-top:1px solid var(--border);padding:40px}.footer-inner{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin:0 auto;max-width:1100px}.footer-logo{font-family:var(--font-display);font-size:20px;font-weight:800}.footer-logo span{color:var(--accent)}.footer-copy{color:var(--muted);font-size:12px}.footer-links{display:flex;gap:24px}.footer-links a{color:var(--muted);font-size:12px;letter-spacing:.04em;text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--accent)}@media (max-width:600px){.footer-inner{align-items:flex-start;flex-direction:column}}.section{margin:0 auto;max-width:1100px;padding:100px 40px}.section-label{color:var(--accent);font-family:var(--font-body);font-size:11px;font-weight:500;letter-spacing:.2em;margin-bottom:16px;text-transform:uppercase}.section-title{color:var(--text);font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);font-weight:700;line-height:1.1;margin-bottom:60px}.fade-in{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.fade-in.visible{opacity:1;transform:translateY(0)}@media (max-width:768px){.section{padding:70px 24px}}*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0a0a0a;--surface:#111;--surface2:#161616;--border:#ffffff12;--accent:#c8f25a;--accent2:#5af2c8;--text:#f0f0f0;--muted:#666;--font-display:"Syne",sans-serif;--font-body:"DM Sans",sans-serif;--ease:cubic-bezier(0.16,1,0.3,1)}html{scroll-behavior:smooth}body{background:#0a0a0a;background:var(--bg);color:#f0f0f0;color:var(--text);cursor:none;font-family:DM Sans,sans-serif;font-family:var(--font-body);font-weight:300;line-height:1.6;overflow-x:hidden}::selection{background:#c8f25a;background:var(--accent);color:#000}::-webkit-scrollbar{width:3px}::-webkit-scrollbar-track{background:#0a0a0a;background:var(--bg)}::-webkit-scrollbar-thumb{background:#c8f25a;background:var(--accent);border-radius:2px}.cursor{background:#c8f25a;background:var(--accent);border-radius:50%;height:10px;transition:transform .1s cubic-bezier(.16,1,.3,1),width .3s cubic-bezier(.16,1,.3,1),height .3s cubic-bezier(.16,1,.3,1),background .3s;transition:transform .1s var(--ease),width .3s var(--ease),height .3s var(--ease),background .3s;width:10px;z-index:9999}.cursor,.cursor-ring{pointer-events:none;position:fixed;transform:translate(-50%,-50%)}.cursor-ring{border:1.5px solid #c8f25a66;border-radius:50%;height:36px;transition:transform .18s cubic-bezier(.16,1,.3,1),width .3s cubic-bezier(.16,1,.3,1),height .3s cubic-bezier(.16,1,.3,1),opacity .3s;transition:transform .18s var(--ease),width .3s var(--ease),height .3s var(--ease),opacity .3s;width:36px;z-index:9998}.cursor.hover{background:#5af2c8;background:var(--accent2);height:16px;width:16px}.cursor-ring.hover{height:56px;opacity:.3;width:56px}a,button{cursor:none}
/*# sourceMappingURL=main.e8318805.css.map*/