@import url("https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Space+Grotesk:wght@400;500;600;700&display=swap");:root{--accent:#a7f36b;--accent-warm:#ffb86b;--accent-soft:rgba(167,243,107,0.12);--text-primary:#f4f0e8;--text-muted:#9ba8a4;--bg-dark:#101614;--bg-panel:#18211e;--bg-panel-soft:#131b18;--border-light:rgba(167,243,107,0.28);--border-muted:rgba(216,231,220,0.15);--font-display:"Space Grotesk","Trebuchet MS",sans-serif;--font-terminal:"DM Mono","Consolas",monospace}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(circle at 12% 0,rgba(167,243,107,.12),transparent 28rem),radial-gradient(circle at 88% 22%,rgba(255,184,107,.08),transparent 24rem),linear-gradient(135deg,rgba(255,255,255,.025) 1px,transparent 1px),var(--bg-dark);background-size:auto,auto,34px 34px,auto;color:var(--text-primary);font-family:var(--font-display);overflow-x:hidden}a{color:inherit;text-decoration:none}a,button{font:inherit}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 4vw;background:rgba(16,22,20,.88);border-bottom:1px solid var(--border-muted);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.logo{color:var(--accent);font-family:var(--font-terminal);font-size:.9rem;letter-spacing:.08em;text-transform:uppercase}.nav-bar{display:flex;flex-wrap:wrap;gap:.65rem}.menu-toggle{display:none;width:2.9rem;height:2.9rem;padding:0;align-items:center;justify-content:center;flex-direction:column;gap:.32rem;border:1px solid var(--border-light);border-radius:.45rem;background:transparent;color:var(--text-primary);cursor:pointer}.menu-toggle span{width:1.15rem;height:2px;background:currentColor;transition:transform .2s ease,opacity .2s ease}.menu-toggle.active span:first-child{transform:translateY(6px) rotate(45deg)}.menu-toggle.active span:nth-child(2){opacity:0}.menu-toggle.active span:last-child{transform:translateY(-6px) rotate(-45deg)}.button,.nav-bar button{border:1px solid var(--border-light);background:transparent;color:var(--text-primary);padding:.7rem 1rem;border-radius:.3rem;font-family:var(--font-terminal);cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.button:hover,.nav-bar button:hover{background:var(--accent-soft);border-color:rgba(126,231,135,.45);color:#f0fff4}.button-primary{background:var(--accent);border-color:var(--accent);color:#152014;font-weight:700}.button-primary:hover{background:#c8ff9c;color:#152014}.secondary{border-color:var(--border-muted)}.hero{padding:4rem 3vw 2.5rem}.hero,.section{max-width:1100px;margin:0 auto}.section{padding:0 3vw 3.5rem}.section-heading{display:flex;align-items:center;gap:.85rem;margin-bottom:.75rem;color:var(--text-muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}.section-heading h2{margin:0;color:var(--text-primary);font-family:var(--font-display);font-size:1.1rem}.section-description{margin:0 0 .85rem;color:var(--text-muted);line-height:1.7}.terminal-shell{border:1px solid var(--border-muted);border-radius:.55rem;background:linear-gradient(145deg,rgba(24,33,30,.98),rgba(15,22,19,.98));box-shadow:0 22px 60px rgba(0,0,0,.28);overflow:hidden}.terminal-heading{display:flex;align-items:center;gap:.8rem;padding:.85rem 1rem;border-bottom:1px solid var(--border-muted);background:rgba(255,255,255,.035);font-family:var(--font-terminal);color:var(--text-muted);font-size:.78rem;letter-spacing:.04em}.terminal-dots{display:flex;gap:.4rem}.terminal-dots span{width:.7rem;height:.7rem;border-radius:999px;background:#334155;border:1px solid rgba(255,255,255,.08)}.terminal-dots span:first-child{background:#f87171}.terminal-dots span:nth-child(2){background:#fbbf24}.terminal-dots span:nth-child(3){background:#4ade80}.terminal-body{padding:1rem}.terminal-actions{display:flex;flex-wrap:wrap;gap:.7rem}.prompt-line{display:flex;flex-wrap:wrap;gap:.35rem;align-items:baseline;margin-bottom:.65rem;color:var(--text-muted);font-size:.92rem}.prompt-path,.prompt-symbol,.prompt-user{color:var(--accent)}.command-output{margin:0 0 1.15rem;padding:0 0 0 1.1rem;border-left:2px solid rgba(126,231,135,.16)}.command-output h1,.command-output h3,.command-output p{margin:0}.command-output h1{font-size:clamp(1.9rem,4vw,3rem);font-family:var(--font-display);line-height:1.1;margin-bottom:.55rem}.command-output h3{font-size:1.15rem;margin-bottom:.55rem}.command-output p{color:var(--text-primary);line-height:1.75}.hero-output{margin-bottom:1rem}.lead-line{color:var(--text-muted);font-size:1rem}.kv-grid{display:grid;grid-gap:.75rem;gap:.75rem;margin:0 0 1.15rem}.kv-row{display:grid;grid-template-columns:minmax(110px,160px) 1fr;grid-gap:.9rem;gap:.9rem;padding:.85rem 1rem;border:1px solid var(--border-muted);border-radius:.35rem;background:rgba(255,255,255,.035)}.kv-key{color:var(--accent);text-transform:lowercase}.kv-value{color:var(--text-primary);line-height:1.65}.link-accent:hover{color:var(--accent)}.stack-list p+p{margin-top:.75rem}.plain-list{display:grid;grid-gap:.7rem;gap:.7rem;margin-bottom:1rem}.plain-list-row{display:flex;gap:.7rem;align-items:flex-start;padding:.8rem 1rem;border-radius:.65rem;background:rgba(255,255,255,.02);border:1px solid var(--border-muted);line-height:1.65}.list-arrow{color:var(--accent)}.skills-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1rem;gap:1rem}.skill-card{padding:1rem;border:1px solid var(--border-muted);border-radius:.35rem;background:rgba(255,255,255,.035)}.skill-card-title{margin:0 0 .85rem;color:var(--accent);font-size:.95rem}.tag-list{display:flex;flex-wrap:wrap;gap:.55rem}.tag-chip{padding:.45rem .7rem;border-radius:999px;border:1px solid var(--border-muted);background:rgba(167,243,107,.08);color:var(--text-primary);font-size:.85rem}.certification-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.7rem;gap:.7rem}.certification-item{display:grid;grid-template-columns:2rem minmax(0,1fr) auto;grid-gap:.75rem;gap:.75rem;align-items:start;min-width:0;padding:.9rem;border:1px solid var(--border-muted);border-radius:.35rem;background:rgba(255,255,255,.035)}.certification-index,.certification-item time{color:var(--accent);font-family:var(--font-terminal);font-size:.75rem}.certification-item h3,.certification-item p{margin:0}.certification-item h3{color:var(--text-primary);font-size:.92rem;line-height:1.35}.certification-item p{margin-top:.35rem;color:var(--text-muted);font-size:.8rem;line-height:1.45}.certification-item time{white-space:nowrap}.project-layout{display:grid;grid-template-columns:280px 1fr;grid-gap:1rem;gap:1rem}.project-list{display:grid;grid-gap:.6rem;gap:.6rem;align-content:start}.project-list-item{display:flex;gap:.8rem;align-items:center;width:100%;padding:.85rem 1rem;border-radius:.65rem;border:1px solid var(--border-muted);background:rgba(255,255,255,.02);color:var(--text-primary);text-align:left;cursor:pointer}.project-list-item.active,.project-list-item:hover{border-color:var(--border-light);background:var(--accent-soft)}.project-index{color:var(--accent)}.project-viewer{min-width:0}@media (max-width:900px){.certification-grid,.project-layout,.skills-grid{grid-template-columns:1fr}}@media (max-width:700px){.site-header{display:grid;grid-template-columns:1fr auto;align-items:center}.hero,.section{padding-left:1rem;padding-right:1rem}.kv-row{grid-template-columns:1fr;gap:.35rem}.nav-bar{grid-column:1/-1;width:100%;overflow-x:auto;padding-bottom:.2rem;flex-wrap:nowrap}.nav-bar button{flex:0 0 auto;padding:.65rem .75rem;font-size:.78rem}.terminal-body{padding:.9rem}.command-output h1{font-size:2rem}}@media (max-width:480px){.logo{font-size:.88rem}}