:root{--ink: #222;--muted: #595959;--line: #e9e9e9;--accent: #1858a8}*{box-sizing:border-box}html{scroll-padding-top:24px;scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font:16px/1.75 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:var(--ink);text-underline-offset:3px}a:hover{text-decoration-thickness:2px}button{font:inherit;color:inherit;cursor:pointer}a,button{touch-action:manipulation;transition:color .18s ease,background-color .18s ease,border-color .18s ease}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}h1,h2,h3,h4{line-height:1.3;color:var(--ink)}h1{margin:0 0 16px;font-size:clamp(25px,4vw,32px)}h2{margin:0 0 24px;font-size:23px}h3{margin:0 0 6px;font-size:18px}p{margin:0 0 14px}img{display:block;max-width:100%}.site-nav,main,.footer-container{width:min(860px,calc(100% - 40px));margin:auto}.site-nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 0;border-bottom:1px solid var(--line)}.logo{color:var(--ink);font-weight:650;text-decoration:none}.nav-links{display:flex;gap:24px;list-style:none;margin:0;padding:0;font-size:14px}.nav-links a,.logo{display:inline-flex;align-items:center;min-height:44px}.nav-links a{color:var(--ink);text-decoration:none}.nav-links a:hover{color:var(--ink);text-decoration:underline}.menu-toggle{display:none}.skip-link{position:fixed;top:-80px;left:20px;z-index:200;padding:12px 20px;background:#fff}.skip-link:focus{top:12px}.hero{padding:56px 0}.hero-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,32%);gap:40px;align-items:center}.profile-image{width:100%;height:auto;aspect-ratio:4 / 5;object-fit:cover;object-position:center 35%;filter:grayscale(1) contrast(1.08);border:1px solid #dedede;border-radius:16px;box-shadow:0 4px 16px #0000000a}.hero p{color:var(--muted)}.intro-links{display:flex;flex-wrap:wrap;gap:24px}.intro-links a{display:inline-flex;align-items:center;min-height:44px}.section,.skills-section,.cents-section{border-top:1px solid var(--line);padding:40px 0}.timeline-card+.timeline-card{margin-top:36px}.timeline-tag{display:block;color:var(--muted);font-size:14px;margin-bottom:6px}.timeline-role{font-size:16px;font-weight:600;margin:0;line-height:1.5}.experience-roles{list-style:none;margin:16px 0 0;padding:0}.role-heading{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 12px;margin-bottom:10px}.promotion-badge{color:#555;background:#eee;border-radius:20px;padding:3px 10px;font-size:12px;font-weight:600}.has-promotions .experience-role{position:relative;padding:0 0 28px 26px;border-left:1px solid #d5dfd9;margin-left:5px}.has-promotions .experience-role:last-child{padding-bottom:0;border-left-color:transparent}.has-promotions .experience-role:before{content:"";position:absolute;left:-5px;top:7px;width:9px;height:9px;border-radius:50%;background:#a4afa8}.has-promotions .experience-role:first-child:before{background:#777}.has-promotions .timeline-tag{margin-bottom:14px}.timeline-card p,.project-copy>p{color:var(--muted)}.tech-stack{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.tech-pill{background:#f3f3f3;color:#505050;border-radius:3px;padding:3px 8px;font-size:12px}.skills-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px}.skill-badge{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.skill-exp{color:var(--muted);font-size:13px;white-space:nowrap}.projects-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.project-card{padding:20px;text-align:left;background:#fff;border:1px solid var(--line);border-radius:4px;min-width:0}.project-card:hover{border-color:var(--accent)}.project-copy>p{font-size:14px;margin-top:10px}.project-details{display:block;margin-top:16px;color:var(--accent);font-size:14px;text-decoration:underline;text-underline-offset:3px}.cert-list{margin:0;padding-left:20px}.cert-item{margin-bottom:12px}.cert-item a{display:inline-block;padding:4px 0}footer{padding:48px 0 24px;background:#f6f7f8;border-top:1px solid var(--line)}.footer-main{display:grid;grid-template-columns:1.25fr 1fr;gap:48px;align-items:start}.footer-intro h2{font-size:28px;margin-bottom:12px}.footer-intro p{color:var(--muted);margin-bottom:20px}.contact-email{display:inline-block;padding:6px 0;font-size:20px;font-weight:500;overflow-wrap:anywhere}.footer-social-heading{font-size:14px;margin-bottom:16px}.footer-socials{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.footer-socials a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:10px 14px;background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--ink);font-size:14px;text-decoration:none}.footer-socials a span{color:var(--muted)}.footer-socials a:hover{color:var(--accent);border-color:var(--accent);background:#f0f5fc}.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 24px;color:var(--muted);font-size:13px;margin-top:36px;padding-top:20px;border-top:1px solid #dedfe1}.footer-bottom p{margin:0}.footer-bottom>a{display:inline-flex;align-items:center;min-height:44px;color:var(--muted)}.modal-content{background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:6px;padding:28px;width:min(720px,calc(100% - 32px));max-height:85vh;margin:auto;overflow:auto}.modal-content::backdrop{background:#0008}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:18px;border-bottom:1px solid var(--line)}.modal-title{font-size:24px}.modal-company{color:var(--muted);font-size:14px;margin:8px 0 0}.modal-close{flex-shrink:0;width:44px;height:44px;border:1px solid var(--line);background:#fff;border-radius:4px;font-size:24px}.modal-body{padding-top:20px;color:var(--muted)}.modal-section-title{font-size:17px;margin:24px 0 12px}.modal-list{padding-left:20px}.modal-list li{margin-bottom:10px}.modal-footer{margin-top:24px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 16px;border-radius:4px;background:var(--accent);color:#fff;text-decoration:none}.menu-toggle:hover{background-color:#f5f5f5}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}a,button{transition:none}}@media(max-width:700px){.site-nav{flex-wrap:wrap;gap:8px}.menu-toggle{display:block;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:4px;background:#fff}.nav-links{display:none;width:100%;flex-wrap:wrap;gap:8px 24px}.nav-links.is-open{display:flex}.hero-content{grid-template-columns:1fr;gap:20px}.hero{padding:32px 0}.profile-image{width:min(100%,320px);justify-self:center;order:-1}footer{padding-top:32px}.footer-main{grid-template-columns:1fr;gap:28px}.projects-grid,.skills-grid{grid-template-columns:1fr}.modal-content{padding:20px}}
