*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root{--header-offset: 75px}body{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;font-size:1rem;line-height:1.6;background-color:#f8f9fa;color:#212529;min-height:100vh;display:flex;flex-direction:column}img,picture,video,canvas,svg{display:block;max-width:100%}ul,ol{list-style:none}a{color:#007bff;text-decoration:none}a:hover{text-decoration:underline}h1,h3,h4,h5,h6{font-weight:700;line-height:1.2;margin-bottom:1rem}p{margin-bottom:1rem}.container{width:90%;max-width:1100px;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}main{flex-grow:1}.tag{display:inline-block;background-color:#e9ecef;color:#495057;padding:.25rem .6rem;border-radius:4px;font-size:.85rem;margin-right:.5rem;margin-bottom:.5rem;line-height:1.4}.site-header{background-color:#212529;backdrop-filter:blur(5px);padding-top:1rem;padding-bottom:1rem;position:sticky;top:0;z-index:1000;box-shadow:0 2px 5px #0003;transition:padding-top .3s ease,padding-bottom .3s ease}body.header-scrolled .site-header{padding-top:.4rem;padding-bottom:.4rem;box-shadow:0 3px 8px #00000040}.header-content{display:flex;justify-content:flex-end;align-items:center;transition:min-height .3s ease}.main-navigation ul{display:flex;gap:1.8rem}.main-navigation li{display:inline-block}.main-navigation a{color:#adb5bd;font-weight:600;text-decoration:none;padding:.4rem 0;white-space:nowrap;border-bottom:2px solid transparent;transition:color .2s ease-in-out,border-color .2s ease-in-out,font-size .3s ease,padding .3s ease}body.header-scrolled .main-navigation a{font-size:.95rem;padding-top:.3rem;padding-bottom:.3rem}.main-navigation a:focus-visible{color:#fff;border-bottom-color:#ffffff80;text-decoration:none}@media(hover:hover)and (pointer:fine){.main-navigation a:hover{color:#fff;border-bottom-color:#ffffff80;text-decoration:none}}.main-navigation a.active-link{color:#fff;font-weight:600;border-bottom-color:#007bff}main section[id]{scroll-margin-top:var(--header-offset)}@media(max-width:768px){.header-content{justify-content:center}.main-navigation{width:100%}.main-navigation ul{justify-content:center;flex-wrap:wrap;row-gap:.45rem;column-gap:1rem;max-width:100%}}@media(max-width:380px){.main-navigation ul{column-gap:.7rem;row-gap:.4rem}.main-navigation a{font-size:.92rem}body.header-scrolled .main-navigation a{font-size:.86rem;padding-top:.25rem;padding-bottom:.25rem}}.hero-section{background-color:#343a40;color:#fff;padding:5rem 0;overflow:hidden}.hero-content-wrapper{display:flex;align-items:center;gap:3rem}.hero-text{flex:1;display:flex;flex-direction:column;align-items:flex-start}.hero-title{font-size:3.2rem;margin-bottom:.5rem;color:#fff;line-height:1.1;font-weight:700}.hero-subtitle{font-size:1.6rem;font-weight:300;color:#adb5bd;margin-bottom:.5rem}.hero-location{font-size:1rem;color:#ced4da;margin-bottom:1.5rem}.hero-tagline{font-size:1.1rem;line-height:1.7;color:#f8f9fa;margin-bottom:2rem}.hero-photo-container{flex-basis:300px;flex-shrink:0;display:flex;justify-content:center;align-items:center}.hero-photo{display:block;max-width:100%;height:auto;border-radius:50%;object-fit:cover;object-position:center}@media(max-width:768px){.hero-content-wrapper{flex-direction:column;text-align:center;gap:2rem}.hero-photo-container{order:-1;width:200px;height:200px;margin:0 auto 1.5rem;flex-basis:auto}.hero-photo{max-width:100%;height:100%}.hero-text{align-items:center}}.hero-cta{margin-top:0}.content-section{padding:5rem 0 3rem}.content-section h2{text-align:center;font-size:2.5rem;font-weight:700;color:#343a40;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:3rem;position:relative;padding-bottom:.75rem}.content-section h2:after{content:"";position:absolute;display:block;width:80px;height:3px;background-color:#007bff;bottom:0;left:50%;transform:translate(-50%)}.alt-bg{background-color:#fff}.content-section.alt-bg h2:after{background-color:#0056b3}.experience-list{max-width:800px;margin:0 auto;display:grid;gap:2rem}.experience-item{background-color:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 2px 8px #00000014;border-left:4px solid #007bff;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.experience-item:hover{transform:translateY(-5px);box-shadow:0 8px 16px #0000001f}.experience-item.has-career-path{border-left-color:#0554f2}.experience-title{font-size:1.3rem;margin-bottom:.25rem;color:#343a40}.experience-company-heading{font-size:1.3rem;margin-bottom:1rem;color:#343a40}.experience-company{font-size:1.1rem;font-weight:600;color:#495057;margin-bottom:.25rem}.experience-dates{font-size:.9rem;color:#6c757d;margin-bottom:.8rem}.experience-description{font-size:1rem;line-height:1.7;color:#495057;margin-bottom:1rem}.experience-career-path,.experience-single-role{margin-bottom:1rem}.career-step{position:relative;padding-left:1.75rem}.career-step:not(:last-child){padding-bottom:1.1rem}.career-step:not(:last-child):before{content:"";position:absolute;left:.45rem;top:1rem;bottom:.1rem;width:2px;background-color:#ced4da}.career-step:after{content:"";position:absolute;left:.15rem;top:.35rem;width:.62rem;height:.62rem;border-radius:50%;border:2px solid #007bff;background-color:#fff}.career-step-header{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:.2rem}.career-step-title{font-size:1.08rem;margin-bottom:0;line-height:1.35;color:#343a40}.career-step-current{display:inline-block;padding:.15rem .55rem;border-radius:999px;border:1px solid rgba(5,84,242,.25);background-color:#0554f21a;color:#0554f2;font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.career-step-dates{font-size:.88rem;color:#6c757d;margin-bottom:.4rem}.career-step-description{font-size:.96rem;line-height:1.6;color:#495057;margin-bottom:0}.experience-tags{margin-top:1rem}.experience-tags strong{margin-right:.5rem;color:#343a40;font-weight:600}.project-grid{display:grid;grid-template-columns:1fr;gap:2rem}@media(min-width:768px){.project-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.project-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.career-step{padding-left:1.55rem}.career-step:not(:last-child):before{left:.4rem}.career-step:after{left:.1rem}}.contact-section{background-color:#f8f9fa;padding-top:4rem;padding-bottom:4rem}.contact-intro{max-width:650px;margin-left:auto;margin-right:auto;text-align:center;font-size:1.1rem;color:#495057;margin-bottom:3rem}.contact-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;max-width:1000px;margin:0 auto}.contact-item.card-style{background-color:#fff;padding:1.5rem 2rem;border-radius:8px;box-shadow:0 4px 15px #00000012;display:flex;align-items:center;gap:1.5rem;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.contact-item.card-style:hover{transform:translateY(-5px);box-shadow:0 6px 20px #0000001a}.contact-icon svg{width:40px;height:40px;stroke:#007bff;flex-shrink:0}.contact-text{text-align:left}.contact-label{display:block;font-weight:600;color:#343a40;font-size:1.05rem;margin-bottom:-.25rem}.contact-link{display:block;font-size:1rem;color:#6c757d;text-decoration:none;word-break:break-word;transition:color .2s ease-in-out}.contact-link:hover{text-decoration:underline;color:#007bff}.btn{display:inline-block;padding:.8rem 1.8rem;font-size:1rem;font-weight:600;line-height:1.5;text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;user-select:none;background-color:transparent;border:1px solid transparent;border-radius:.3rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.btn-primary{color:#fff;background-color:#0554f2;border-color:#0554f2}.btn-primary:hover{color:#fff;background-color:#0056b3;border-color:#0056b3;text-decoration:none}.btn:focus{outline:0;box-shadow:0 0 0 .2rem #007bff80}.btn-primary:focus{box-shadow:0 0 0 .2rem #268fff80}.site-footer{background-color:#e9ecef;border-top:1px solid #dee2e6;padding:1.5rem 0;margin-top:3rem;text-align:center;font-size:.9rem;color:#6c757d}.site-footer p{margin-bottom:.5rem}.site-footer a{color:#6c757d}.site-footer a:hover{color:#007bff}.project-card[data-astro-cid-mspuyifq]{background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a;overflow:hidden;display:flex;flex-direction:column;height:100%;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.project-card[data-astro-cid-mspuyifq]:hover{transform:translateY(-5px);box-shadow:0 8px 16px #0000001f}.project-card-header[data-astro-cid-mspuyifq]{background-color:#f8f9fa;padding:1rem 1.5rem;border-bottom:1px solid #e9ecef}.project-title[data-astro-cid-mspuyifq]{font-size:1.4rem;margin-bottom:.1rem;color:#343a40}.project-team[data-astro-cid-mspuyifq]{font-size:1rem;color:#6c757d;font-style:italic}.project-card-body[data-astro-cid-mspuyifq]{padding:1.5rem;flex-grow:1}.project-role[data-astro-cid-mspuyifq]{margin-top:1rem;margin-bottom:1rem;font-size:1rem;line-height:1.6;color:#495057}.project-role[data-astro-cid-mspuyifq] strong[data-astro-cid-mspuyifq]{color:#212529}.project-description-highlighted[data-astro-cid-mspuyifq]{font-size:1rem;line-height:1.6;color:#495057;margin-bottom:1rem}.project-tags[data-astro-cid-mspuyifq]{margin-top:1.5rem;margin-bottom:.5rem;font-size:.9rem}.project-tags[data-astro-cid-mspuyifq] strong[data-astro-cid-mspuyifq]{color:#212529;margin-right:.5rem}.project-card-footer[data-astro-cid-mspuyifq].project-links{padding:1rem 1.5rem;background-color:#f8f9fa;border-top:1px solid #e9ecef;display:flex;flex-wrap:wrap;gap:.75rem}.btn-project-link[data-astro-cid-mspuyifq]{padding:.4rem .9rem;font-size:.9rem;background-color:#fff;border:1px solid #ced4da;color:#495057;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem;line-height:1.4}.btn-project-link[data-astro-cid-mspuyifq]:hover{background-color:#f8f9fa;border-color:#adb5bd;color:#212529;text-decoration:none}.btn-project-link[data-astro-cid-mspuyifq] .btn-icon[data-astro-cid-mspuyifq]{width:1em;height:1em;filter:invert(35%) sepia(7%) saturate(895%) hue-rotate(167deg) brightness(95%) contrast(86%)}.btn-project-link[data-astro-cid-mspuyifq]:hover .btn-icon[data-astro-cid-mspuyifq]{filter:invert(12%) sepia(11%) saturate(1000%) hue-rotate(167deg) brightness(98%) contrast(91%)}.project-card-footer[data-astro-cid-mspuyifq] ul[data-astro-cid-mspuyifq]{padding-left:0}.project-card-footer[data-astro-cid-mspuyifq] li[data-astro-cid-mspuyifq]{margin-bottom:.25rem}
