*{margin:0;padding:0;box-sizing:border-box}:root{--color-bg:#0a0a0a;--color-surface:#111;--color-border:hsla(0,0%,100%,.1);--color-text:#dadadb;--color-text-muted:#6b6b6b;--color-text-subtle:#9a9a9a;--color-accent:#ffcc1a;--color-accent-hover:#dadadb;--font-display:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-body:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;--max-width:900px;--section-padding:5rem 0;--section-padding-mobile:3rem 0}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-size:16px;line-height:1.65;background-color:var(--color-bg);color:var(--color-text);width:var(--max-width);margin:0 auto;padding:0;-webkit-font-smoothing:antialiased}@media screen and (max-width:768px){body{width:100%;padding:0 1.5rem}}a{text-decoration:none;color:var(--color-text)}li{list-style:none}.section-label{display:inline-block;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);margin-bottom:.75rem}section h2{font-family:var(--font-display);font-size:2rem;font-weight:700;margin-bottom:2.5rem;line-height:1.2;color:var(--color-text)}@media screen and (max-width:768px){section h2{font-size:1.6rem}}section{padding:var(--section-padding);border-bottom:1px solid var(--color-border)}section:last-of-type{border-bottom:none}.cta-btn{background-color:var(--color-accent);color:#1d1e20;padding:.6rem 1.4rem;border-radius:4px;font-family:var(--font-body);font-size:.95rem;font-weight:600;transition:background-color .3s ease;cursor:pointer;display:inline-block}.cta-btn:hover{background-color:var(--color-accent-hover)}.cta-btn-outline{background-color:transparent;color:var(--color-text);padding:.6rem 1.4rem;border-radius:4px;border:1px solid var(--color-border);font-family:var(--font-body);font-size:.95rem;font-weight:500;transition:border-color .3s ease,color .3s ease;cursor:pointer;display:inline-block}.cta-btn-outline:hover{border-color:var(--color-text);color:var(--color-text)}.nav-container{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 0;background-color:var(--color-bg);position:sticky;top:0;z-index:100;border-bottom:1px solid var(--color-border)}.nav-logo{font-family:var(--font-display);font-size:1.15rem;font-weight:800;letter-spacing:-.02em;color:var(--color-text);text-decoration:none;flex-shrink:0}.nav-links{display:flex;align-items:center;gap:2rem}.nav-link{font-family:var(--font-body);font-size:.9rem;color:var(--color-text-muted);text-decoration:none;transition:color .2s ease}.nav-link:hover{color:var(--color-text)}.nav-resume-btn{padding:.4rem 1rem;font-size:.85rem}@media screen and (max-width:600px){.nav-link{display:none}}hr{border:none;background-color:var(--color-border);height:1px;width:100%;margin:0}.footer-container{display:flex;justify-content:space-between;align-items:center;padding:2rem 0;background-color:var(--color-bg)}.footer-container p{font-family:var(--font-mono);font-size:.75rem;color:var(--color-text-muted)}.hero-container{min-height:90vh;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:4rem 0 5rem;border-bottom:1px solid var(--color-border)}.hero-tag{display:inline-block;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);margin-bottom:1.5rem;padding:.25rem .6rem;border:1px solid var(--color-accent);border-radius:3px}.hero-name{font-family:var(--font-display);font-size:clamp(2.8rem,6vw,4.5rem);font-weight:800;line-height:1.05;letter-spacing:-.03em;margin-bottom:1.25rem;color:var(--color-text)}.hero-subtitle{font-family:var(--font-body);font-size:clamp(1.05rem,2vw,1.25rem);font-weight:400;color:var(--color-text);margin-bottom:.75rem;max-width:600px;line-height:1.5}.hero-subtext{font-family:var(--font-body);font-size:.95rem;color:var(--color-text-subtle);margin-bottom:2.5rem;max-width:520px}.hero-cta-group{display:flex;gap:1rem;flex-wrap:wrap}.about-container{padding:var(--section-padding)}.about-container .flex-about{display:flex;justify-content:space-between;align-items:flex-start;gap:4rem}.about-container .about-text{flex:1}.about-container .about-text h2{font-family:var(--font-display);font-size:1.75rem;font-weight:700;margin-bottom:1.5rem;line-height:1.25;color:var(--color-text)}.about-container .about-text p{font-size:1rem;color:var(--color-text-subtle);margin-bottom:1rem;line-height:1.7}.about-links{display:flex;gap:1.5rem;margin-top:1.5rem}.about-link{font-family:var(--font-mono);font-size:.85rem;color:var(--color-accent);text-decoration:none;transition:color .2s ease}.about-link:hover{color:var(--color-text)}.about-container .about-img{flex:0 0 min(320px,40%)}.about-container .about-img .profile-img{width:100%;height:480px;object-fit:cover;object-position:top;border-radius:4px;display:block;filter:grayscale(20%);transition:filter .4s ease}.about-container .about-img .profile-img:hover{filter:grayscale(0)}@media screen and (max-width:768px){.about-container .flex-about{flex-direction:column-reverse;gap:2rem}.about-container .about-img{flex:unset;width:100%}.about-container .about-img .profile-img{height:340px}}.experience-container{padding:var(--section-padding)}.experience-list{display:flex;flex-direction:column;gap:3rem}.experience-item{border-left:2px solid var(--color-border);padding-left:1.5rem;transition:border-color .3s ease}.experience-item:hover{border-left-color:var(--color-accent)}.experience-meta{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;gap:1rem;flex-wrap:wrap}.experience-meta-left h3.experience-title{font-family:var(--font-display);font-size:1.1rem;font-weight:700;color:var(--color-text);margin-bottom:.2rem}.experience-meta-left .experience-employer{font-size:.95rem;color:var(--color-text-subtle);font-weight:400}.experience-meta-right{display:flex;flex-direction:column;align-items:flex-end;gap:.2rem}.experience-tenure{font-size:.78rem}.experience-location,.experience-tenure{font-family:var(--font-mono);color:var(--color-text-muted)}.experience-location{font-size:.75rem}.experience-description{display:flex;flex-direction:column;gap:.5rem}.experience-description li{font-size:.95rem;color:var(--color-text-subtle);line-height:1.65;padding-left:1rem;position:relative}.experience-description li:before{content:"—";position:absolute;left:0;color:var(--color-text-muted);font-size:.8rem}@media screen and (max-width:768px){.experience-meta{flex-direction:column}.experience-meta-right{align-items:flex-start}}.highlights-container{padding:var(--section-padding)}.highlights-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}@media screen and (max-width:900px){.highlights-grid{grid-template-columns:repeat(2,1fr)}}@media screen and (max-width:600px){.highlights-grid{grid-template-columns:1fr}}.highlight-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;padding:1.75rem;display:flex;flex-direction:column;gap:.75rem;transition:border-color .3s ease}.highlight-card:hover{border-color:rgba(255,204,26,.3)}.highlight-label{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent)}.highlight-title{font-family:var(--font-display);font-size:1rem;font-weight:700;color:var(--color-text);line-height:1.3}.highlight-body{font-size:.9rem;color:var(--color-text-subtle);line-height:1.65;flex:1}.highlight-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.5rem}.highlight-tag{font-family:var(--font-mono);font-size:.68rem;padding:.2rem .55rem;border:1px solid var(--color-border);border-radius:3px;color:var(--color-text-muted)}.how-container{padding:var(--section-padding)}.how-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 3rem}@media screen and (max-width:600px){.how-grid{grid-template-columns:1fr}}.how-card{padding:1.5rem 0;border-top:1px solid var(--color-border)}.how-number{font-family:var(--font-mono);font-size:.75rem;color:var(--color-text-muted);display:block;margin-bottom:.75rem}.how-title{font-family:var(--font-display);font-size:1rem;font-weight:700;color:var(--color-text);margin-bottom:.5rem;line-height:1.3}.how-body{font-size:.9rem;color:var(--color-text-subtle);line-height:1.65}.skills-container{padding:var(--section-padding)}.skills-group{margin-bottom:2rem}.skills-group-label{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:.75rem}.skills-chips{display:flex;flex-wrap:wrap;gap:.5rem}.skill-chip{font-family:var(--font-mono);font-size:.82rem;padding:.35rem .85rem;border-radius:3px;border:1px solid var(--color-border);color:var(--color-text);background-color:var(--color-surface);transition:background-color .25s ease,color .25s ease,border-color .25s ease;cursor:default}.skill-chip.tech.cpp:hover{background-color:#007acc;border-color:#007acc;color:#fff}.skill-chip.tech.csharp:hover{background-color:#512bd4;border-color:#512bd4;color:#fff}.skill-chip.tech.python:hover{background-color:#3776ab;border-color:#3776ab;color:#fff}.skill-chip.tech.js:hover{background-color:#f7df1e;border-color:#f7df1e;color:#1d1e20}.skill-chip.tech.react:hover{background-color:#61dafb;border-color:#61dafb;color:#1d1e20}.skill-chip.tech.node:hover{background-color:#3c873a;border-color:#3c873a;color:#fff}.skill-chip.tech.linux:hover{background-color:#fcc624;border-color:#fcc624;color:#1d1e20}.skill-chip.tech.git:hover{background-color:#f05032;border-color:#f05032;color:#fff}.skill-chip.tech.rest:hover{background-color:#444;border-color:#666;color:#fff}.skill-chip.interpersonal:hover{background-color:#1a1a1a;border-color:var(--color-accent);color:var(--color-accent)}.contact-container{padding:var(--section-padding);padding-bottom:6rem}.contact-container h2{font-family:var(--font-display);font-size:2rem;font-weight:700;margin-bottom:1rem}.contact-container p{font-size:.95rem;color:var(--color-text-subtle);margin-bottom:2rem;max-width:520px;line-height:1.7}.contact-links{display:flex;flex-direction:column;gap:.75rem}.contact-link{font-family:var(--font-mono);font-size:.9rem;color:var(--color-text-muted);transition:color .2s ease;width:fit-content}.contact-link:hover{color:var(--color-text)}.contact-link.primary{font-size:1.05rem;color:var(--color-accent)}.contact-link.primary:hover{color:var(--color-text)}