*{margin:0;padding:0;box-sizing:border-box}:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6;font-weight:400;--bg-main: #161B22;--bg-secondary: #21262D;--bg-card: #30363D;--background: var(--bg-main);--background-secondary: var(--bg-secondary);--text-primary: #F0F6FC;--text-secondary: #C9D1D9;--text-muted: #8B949E;--accent: #39D353;--accent-hover: #56D364;--primary-color: var(--accent);--primary-hover: var(--accent-hover);--border-color: #30363d;--border-hover: #484f58;--card-border: rgba(255, 255, 255, .1);--surface-highlight: rgba(255, 255, 255, .08);--accent-glow: rgba(57, 211, 83, .25);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--background);color:var(--text-primary)}h1,h2,h3,h4,h5,h6{line-height:1.2;font-weight:700;color:var(--text-primary)}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}p{color:var(--text-secondary);margin-bottom:1rem}a{color:var(--accent);text-decoration:none;transition:color .2s ease}a:hover{color:var(--accent-hover)}button{border-radius:6px;border:1px solid var(--border-color);padding:.75rem 1.5rem;font-size:1rem;font-weight:500;font-family:inherit;background-color:var(--background);color:var(--text-primary);cursor:pointer;transition:all .2s ease}button:hover{border-color:var(--border-hover);background-color:var(--background-secondary)}button:focus,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.section{padding:4rem 0}.text-center{text-align:center}.app{min-height:100vh;display:flex;flex-direction:column}.main{flex:1;max-width:none;width:100%}.header{background-color:var(--header-bg, var(--background));border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:100}.nav{display:grid;grid-template-columns:auto 1fr;align-items:center;padding:1rem 2rem;gap:1rem}.nav-brand{font-size:1.25rem;font-weight:700;color:var(--text-primary);text-decoration:none}.nav-brand:hover{color:var(--text-primary)}.nav-links{display:flex;list-style:none;margin:0;padding:0;gap:.5rem;justify-self:center}.nav-link{text-decoration:none;color:var(--text-secondary);font-weight:500;padding:.5rem 1rem;border-radius:9999px;transition:background-color .2s ease,color .2s ease}.nav-link:hover{color:var(--text-primary)}.nav-link-active{background:#39d3531f;color:var(--text-primary)}.hero{width:100vw;margin-left:calc(50% - 50vw);background:radial-gradient(ellipse 100% 70% at 50% 30%,#252d38,#1e242d 45%,#161b22);padding:6rem 0}.hero-container{max-width:700px;margin:0 auto;padding:0 2rem;text-align:center}.hero-content{max-width:none}.hero-title{font-size:3rem;margin-bottom:.5rem;color:var(--text-primary);line-height:1.2}.hero-subtitle{font-size:1.25rem;color:var(--accent);margin-bottom:1.25rem;font-weight:500}.hero-description{font-size:1.1rem;color:var(--text-secondary);margin-bottom:2rem;line-height:1.6}.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;margin-bottom:1.5rem}.hero-actions .btn-primary{background:transparent;color:var(--text-primary);border-color:#ffffff40}.hero-actions .btn-primary:hover{background:var(--surface-highlight);border-color:#ffffff59;color:var(--text-primary);box-shadow:none}.hero-actions .btn-secondary{background:transparent;border-color:#fff3;color:var(--text-secondary)}.hero-actions .btn-secondary:hover{background:var(--surface-highlight);border-color:#ffffff4d;color:var(--text-primary);box-shadow:none}.hero-social{display:flex;gap:1.25rem;flex-wrap:nowrap;justify-content:center;align-items:center}.hero-social-link{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:50%;background-color:var(--bg-card);color:var(--text-primary);border:1px solid var(--card-border);transition:background-color .2s ease,border-color .2s ease,color .2s ease}.hero-social-link:hover{background-color:var(--surface-highlight);border-color:#ffffff26;color:var(--text-primary)}.hero-social-icon{width:1.25rem;height:1.25rem}.hero-image-wrap{display:flex;justify-content:center;align-items:center}.hero-image-placeholder{width:280px;height:280px;min-width:280px;min-height:280px;border-radius:50%;background-color:var(--bg-secondary);border:1px solid var(--card-border);overflow:hidden}.hero-image-wrap img{width:100%;height:100%;object-fit:cover}@media(max-width:600px){.hero-container{padding:0 1.5rem}}.btn{display:inline-block;padding:.875rem 2rem;border-radius:8px;font-weight:600;text-decoration:none;transition:all .2s ease;border:1px solid transparent;cursor:pointer;font-family:inherit;font-size:1rem}.btn-primary{background:var(--accent);color:#0d1117;border-color:var(--accent)}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#0d1117;box-shadow:0 0 18px var(--accent-glow)}.btn-secondary{background:transparent;border:1px solid var(--accent);color:var(--accent)}.btn-secondary:hover{background:#39d3531a;border-color:var(--accent-hover);color:var(--accent-hover)}.about{background-color:var(--background)}.about-content{display:flex;flex-direction:row;gap:4rem;align-items:flex-start}.about-text{flex:1;min-width:0}.about .skills{flex:1;min-width:280px;flex-shrink:0}.about-subheading{font-size:1.15rem;font-weight:700;color:var(--text-primary);margin:0 0 1rem;letter-spacing:.03em;word-spacing:.05em}.about-text .about-subheading+p,.about-text .about-subheading+.about-education-card{margin-top:0}.about-text .about-subheading:not(:first-child){margin-top:2rem}.about-text p{font-size:1.05rem;line-height:1.85;margin-bottom:1.5rem;color:var(--text-secondary)}.about-text p:last-of-type{margin-bottom:0}.about-education-card{margin:0;padding:1.25rem 1.5rem;background:var(--bg-card, var(--background-secondary));border:1px solid var(--card-border, var(--border-color));border-radius:12px}.about-degree{margin:0 0 .25rem!important;color:var(--text-primary)}.about-school{margin:0 0 .75rem!important;color:var(--text-primary)}.about-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem;font-size:.95rem;color:var(--text-muted);margin:0!important}.about-location{text-align:right}.skills-main-title{font-size:1.15rem;font-weight:700;color:var(--text-primary);margin:0 0 1.25rem}.skills-category{margin-bottom:1.25rem;background:transparent;border:none}.skills-category:last-child{margin-bottom:0}.skills-category-title{font-size:.95rem;font-weight:600;color:var(--text-secondary);margin:0 0 .5rem}.about .skills .skills-grid{display:flex;flex-wrap:wrap;gap:.4rem .6rem;background:transparent;border:none;padding:0}.about .skill-tag{display:inline-block;background:var(--surface-highlight);color:var(--text-primary);padding:.3rem .6rem;border-radius:6px;font-size:.75rem;font-weight:500;border:1px solid rgba(57,211,83,.35);width:max-content}.section-header{text-align:center;margin-bottom:3rem}.section-title{margin-bottom:.5rem;padding-bottom:.35rem;font-size:2.5rem;color:var(--text-primary);border-bottom:2px solid var(--accent);display:inline-block}.section-subtitle{font-size:1.1rem;color:var(--text-muted);margin:0}.project-card{display:flex;flex-direction:column;background:var(--bg-card);border-radius:12px;border:1px solid var(--card-border);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.project-card-clickable{cursor:pointer}.project-card:hover{transform:translateY(-2px);border-color:#ffffff1f;box-shadow:0 0 20px var(--accent-glow)}.project-image{flex:0 0 auto;width:100%;max-height:200px;aspect-ratio:16 / 9;background:var(--bg-secondary);display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--card-border);overflow:hidden;position:relative}.project-placeholder{color:var(--text-muted);font-size:1.5rem;font-weight:700;letter-spacing:2px;text-align:center;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);padding:.5rem}.project-logo{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;vertical-align:middle}.coursify-logo{object-fit:cover;object-position:center center}.project-content{flex:1;padding:1.4rem 1.5rem;display:flex;flex-direction:column;min-height:0}.project-title{margin-bottom:.7rem;font-size:1.2rem;color:var(--text-primary)}.project-description{flex:1;margin-bottom:1rem;line-height:1.55;font-size:.92rem;min-height:0}.project-tech{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.1rem;margin-top:auto}.tech-tag{background:var(--bg-secondary);color:var(--text-primary);padding:.25rem .65rem;border-radius:8px;font-size:.8rem;font-weight:500}.project-links{display:flex;gap:1rem}.project-link{color:var(--accent);font-weight:600;text-decoration:none;transition:color .2s ease}.project-link:hover{color:var(--accent-hover);font-weight:700}.projects{background-color:var(--background-secondary);padding:6rem 0;min-height:100vh;display:flex;flex-direction:column;justify-content:center}.projects .container{max-width:none;width:100%;padding-left:2rem;padding-right:2rem;box-sizing:border-box}.projects-grid{display:grid;grid-template-columns:repeat(3,minmax(260px,400px));gap:2.5rem;align-items:stretch;justify-content:center}.projects-grid .project-card{min-width:0}.projects-view-all{text-align:center;margin-top:3.5rem}@media(max-width:1100px){.projects-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.projects-grid{grid-template-columns:1fr}.projects{padding:4rem 0;min-height:auto}}.project-detail{background-color:var(--background);padding:4rem 0 6rem;min-height:100vh}.project-detail-container{max-width:800px;margin:0 auto;padding-left:2rem;padding-right:2rem;box-sizing:border-box}.project-detail-actions{margin-bottom:2rem}.project-detail-title{font-size:2rem;color:var(--text-primary);margin-bottom:1.5rem;font-weight:700}.project-detail-image-wrap{width:100%;max-height:320px;aspect-ratio:16 / 9;margin-bottom:2rem;border-radius:12px;overflow:hidden;background:var(--bg-secondary);border:1px solid var(--card-border);display:flex;align-items:center;justify-content:center}.project-detail-image{width:100%;height:100%;object-fit:cover;object-position:center top;display:block}.project-detail-image.coursify-logo{object-position:center center}.project-detail-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:1.25rem;font-weight:700;letter-spacing:2px;background:var(--bg-secondary)}.project-detail-bullets{margin:0 0 1.5rem;padding-left:1.25rem;line-height:1.6;font-size:1rem;color:var(--text-primary)}.project-detail-bullets li{margin-bottom:.75rem}.project-detail-bullets li:last-child{margin-bottom:0}.project-detail-video-wrap{width:100%;aspect-ratio:16 / 9;margin-bottom:.5rem;border-radius:12px;overflow:hidden;background:var(--bg-secondary);border:1px solid var(--card-border)}.project-detail-video{width:100%;height:100%;display:block;object-fit:contain}.project-detail-video-credit{margin:0 0 2rem;font-size:.875rem;color:var(--text-muted);font-style:italic}.project-detail-description{margin-bottom:1.5rem;line-height:1.6;font-size:1rem;color:var(--text-primary)}.project-detail-description p{margin:0 0 1rem}.project-detail-description p:last-child{margin-bottom:0}.project-detail-tech{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.project-detail-tech .tech-tag{background:var(--bg-secondary);color:var(--text-primary);padding:.25rem .65rem;border-radius:8px;font-size:.8rem;font-weight:500}.project-detail-links{display:flex;gap:1rem}.project-detail-links .project-link{color:var(--accent);font-weight:600;text-decoration:none;transition:color .2s ease}.project-detail-links .project-link:hover{color:var(--accent-hover);font-weight:700}.technical-skills{background-color:var(--background)}.skills-tabs{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:2rem}.skills-wrap{padding:1.5rem 2rem;max-width:900px;margin:0 auto}.skills-tab{padding:.5rem 1rem;border-radius:9999px;border:none;background-color:transparent;color:var(--text-secondary);font-weight:500;font-size:.95rem;cursor:pointer;transition:background-color .2s ease,color .2s ease}.skills-tab:hover{color:var(--text-primary)}.skills-tab-active{background:var(--surface-highlight);color:var(--text-primary)}.skills-grid{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.skill-pill{display:inline-flex;align-items:center;justify-content:center;padding:.45rem .85rem;background:var(--surface-highlight);border-radius:9999px;border:1px solid var(--card-border);width:max-content}.skill-pill-name{font-size:.95rem;font-weight:500;color:var(--text-primary)}.activities{padding:4rem 0;background-color:var(--background)}.activities-content{display:grid;gap:3rem;margin-top:2rem;grid-template-columns:1fr}.work-experience{margin-bottom:2rem}.experience-list{display:grid;gap:1.5rem}.experience-card{background:var(--bg-card);border:1px solid var(--card-border);border-radius:12px;padding:1.5rem;transition:transform .2s ease,box-shadow .2s ease}.experience-card:hover{transform:translateY(-2px);border-color:#ffffff1f;box-shadow:0 0 20px var(--accent-glow)}.experience-header{margin-bottom:1rem}.job-title{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.job-company{font-size:1rem;font-weight:500;color:var(--primary-color);margin-bottom:.25rem}.job-location{font-size:.9rem;color:var(--text-muted);margin-bottom:.25rem}.job-duration{font-size:.9rem;color:var(--text-muted);font-style:italic}.job-description{margin-bottom:1rem;line-height:1.6;color:var(--text-secondary)}.job-skills{display:flex;flex-wrap:wrap;gap:.5rem}.tech-tag{background-color:var(--background-secondary);color:var(--text-primary);padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500}.leadership{margin-bottom:2rem}.leadership-list{display:grid;gap:1.5rem}.leadership-card{background:var(--bg-card);border:1px solid var(--card-border);border-radius:12px;padding:1.5rem;transition:transform .2s ease,box-shadow .2s ease}.leadership-card:hover{transform:translateY(-2px);border-color:#ffffff1f;box-shadow:0 0 20px var(--accent-glow)}.leadership-header{margin-bottom:1rem}.role-title{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.role-organization{font-size:1rem;font-weight:500;color:var(--primary-color);margin-bottom:.25rem}.role-duration{font-size:.9rem;color:var(--text-muted);font-style:italic}.role-description{margin-bottom:1rem;line-height:1.6;color:var(--text-secondary)}.role-achievements h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.role-achievements ul{list-style:none;padding:0;margin:0}.role-achievements li{position:relative;padding-left:1.5rem;margin-bottom:.5rem;color:var(--text-secondary);line-height:1.5}.role-achievements li:before{content:"✓";position:absolute;left:0;color:var(--primary-color);font-weight:700}.certifications{margin-bottom:2rem}.certification-list{display:grid;gap:1rem}.certification-card{background:var(--bg-card);border:1px solid var(--card-border);border-radius:12px;padding:1.5rem;transition:transform .2s ease,box-shadow .2s ease;display:flex;flex-direction:column;justify-content:space-between}.certification-card:hover{transform:translateY(-2px);border-color:#ffffff1f;box-shadow:0 0 20px var(--accent-glow)}.cert-header{margin-bottom:1rem}.cert-title{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.cert-organization{font-size:1rem;font-weight:500;color:var(--primary-color);margin-bottom:.25rem}.cert-year{font-size:.9rem;color:var(--text-muted);font-style:italic}.cert-actions{margin-top:auto}.cert-button{display:inline-block;background-color:transparent;color:var(--primary-color);padding:.5rem 1rem;border:1px solid var(--primary-color);border-radius:6px;text-decoration:none;font-weight:500;font-size:.8rem;transition:all .2s ease;text-align:center;width:auto;box-sizing:border-box}.cert-button:hover{background-color:var(--primary-color);color:#fff;transform:translateY(-1px)}.education{margin-bottom:2rem}.section-subtitle{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:1.5rem;text-align:center}.education-card{background:var(--bg-card);border:1px solid var(--card-border);border-radius:12px;padding:1.5rem;transition:transform .2s ease,box-shadow .2s ease}.education-card:hover{transform:translateY(-2px);border-color:#ffffff1f;box-shadow:0 0 20px var(--accent-glow)}.education-header{margin-bottom:1.5rem}.degree-title{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.school-name{font-size:1rem;font-weight:500;color:var(--accent);margin-bottom:.25rem}.school-location{font-size:.9rem;color:var(--text-muted);margin-bottom:.25rem}.education-duration{font-size:.9rem;color:var(--text-muted);font-style:italic}.coursework h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:.75rem}.coursework-tags{display:flex;flex-wrap:wrap;gap:.5rem}.tech-tag{background:var(--bg-secondary);color:var(--text-primary);padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500}.contact{background-color:var(--background)}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}.contact-content-centered{display:flex;justify-content:center;align-items:center;max-width:600px;margin:0 auto}.contact-info h3{margin-bottom:1rem;color:var(--text-primary)}.contact-info p{margin-bottom:2rem;font-size:1.1rem;line-height:1.6}.contact-links{display:flex;flex-direction:column;gap:1rem}.contact-link{display:flex;align-items:center;gap:.75rem;color:var(--text-primary);text-decoration:none;transition:all .3s ease;margin-bottom:1rem;padding:.75rem 1.5rem;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);font-weight:500;position:relative;overflow:hidden}.contact-link-icon{width:1.25rem;height:1.25rem;flex-shrink:0}.contact-link:hover{color:var(--accent-hover);border-color:var(--accent);background:#39d35314;transform:translateY(-2px)}.contact-form{background:var(--bg-card);padding:2rem;border-radius:12px;border:1px solid var(--card-border)}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--text-primary)}.form-group input,.form-group textarea{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:6px;font-family:inherit;font-size:1rem;background:var(--bg-secondary);color:var(--text-primary);transition:border-color .2s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent)}.form-group textarea{resize:vertical;min-height:120px}.footer{background-color:var(--background-secondary);border-top:1px solid var(--border-color);padding:3rem 0 0}.footer-container{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem;padding:0 2rem 2rem;max-width:1200px;margin:0 auto}.footer-column{min-width:0}.footer-heading{font-size:1rem;font-weight:700;color:var(--text-primary);margin-bottom:1rem}.footer-bio{font-size:.9rem;color:var(--text-secondary);line-height:1.5;margin:0}.footer-links{list-style:none;margin:0;padding:0}.footer-links li{margin-bottom:.5rem}.footer-links a{color:var(--text-secondary);text-decoration:none;font-size:.95rem}.footer-links a:hover{color:var(--primary-color)}.footer-connect{display:flex;gap:.75rem;flex-wrap:wrap}.footer-connect-link{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:50%;background-color:var(--bg-card);border:1px solid var(--card-border);color:var(--text-primary);transition:background-color .2s ease,border-color .2s ease,color .2s ease}.footer-connect-icon{width:1.2rem;height:1.2rem}.footer-connect-link:hover{background-color:var(--border-hover);border-color:var(--primary-color);color:var(--primary-color)}.footer-bottom{padding:1.25rem 2rem;text-align:center;border-top:1px solid var(--border-color);color:var(--text-muted);font-size:.9rem}.footer-bottom p{margin:0}@media(max-width:900px){.footer-container{grid-template-columns:1fr 1fr}}@media(max-width:500px){.footer-container{grid-template-columns:1fr}}.scroll-to-top{position:fixed;bottom:2rem;right:2rem;z-index:50;width:3rem;height:3rem;border-radius:50%;border:none;background:var(--accent);color:#0d1117;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease,transform .2s ease,box-shadow .2s ease}.scroll-to-top:hover{background:var(--accent-hover);transform:translateY(-2px);box-shadow:0 0 20px var(--accent-glow)}.scroll-to-top-icon{font-size:1.25rem;line-height:1;font-weight:700}
