:root {
  --bg:#f5f5f7;--surface:#fff;--text:#1d1d1f;--dark:#2c2c2e;--muted:#6e6e73;--line:#d2d2d7;
  --blue:#0071e3;--blue-hover:#0077ed;--blue-soft:#e8f2ff;--shadow:0 16px 50px rgba(0,0,0,.055);
  --radius:32px;--max:1220px;--pad:clamp(22px,4vw,54px);
  --font:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",Inter,"Helvetica Neue",Arial,sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;color:var(--text);background:var(--bg);font-family:var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}img{display:block;width:100%}::selection{color:#fff;background:var(--blue)}
.skip-link{position:fixed;z-index:300;left:18px;top:-60px;padding:12px 18px;border-radius:12px;color:#fff;background:var(--blue);transition:top .2s}.skip-link:focus{top:18px}.page-progress{position:fixed;z-index:250;inset:0 0 auto;height:3px}.page-progress span{display:block;width:0;height:100%;background:var(--blue)}
.site-header{position:sticky;z-index:100;top:0;min-height:72px;padding:0 max(var(--pad),calc((100vw - var(--max))/2));display:flex;align-items:center;justify-content:space-between;gap:28px;border-bottom:1px solid rgba(210,210,215,.72);background:rgba(245,245,247,.82);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px)}.brand{display:inline-flex;align-items:center;gap:9px;font-size:15px;font-weight:650;letter-spacing:-.02em}.brand-dot{width:7px;height:7px;border-radius:50%;background:var(--blue)}nav{display:flex;align-items:center;gap:clamp(17px,2.4vw,34px);color:var(--muted);font-size:13px}nav a{transition:color .2s}nav a:hover{color:var(--text)}.nav-cta{padding:10px 16px;border-radius:980px;color:#fff;background:var(--text)}.nav-cta:hover{color:#fff;background:var(--dark)}.nav-cta span{margin-left:8px}
.hero,.section{width:min(100%,calc(var(--max) + var(--pad)*2));margin:0 auto;padding-inline:var(--pad)}.hero{min-height:calc(100svh - 72px);padding-top:clamp(72px,10vw,144px);padding-bottom:clamp(72px,9vw,130px);display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:clamp(44px,8vw,110px);align-items:start}.eyebrow{margin:0 0 19px;color:var(--blue);font-size:12px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}h1,h2,h3,p{overflow-wrap:anywhere}h1{margin:0;font-size:clamp(76px,10vw,154px);line-height:.82;letter-spacing:-.072em}.hero-role{margin:37px 0 0;max-width:720px;color:var(--muted);font-size:clamp(21px,2.4vw,34px);line-height:1.15;letter-spacing:-.036em}.hero-actions,.contact-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:38px}.button{min-height:48px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;gap:18px;border:1px solid transparent;border-radius:980px;font-size:14px;font-weight:650;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-primary{color:#fff;background:var(--blue)}.button-primary:hover{background:var(--blue-hover)}.button-secondary{border-color:var(--line);background:var(--surface)}.button-secondary:hover{background:#ebebf0}.hero-profile{max-width:390px;justify-self:end}.portrait-card{padding:12px;overflow:hidden;border:1px solid var(--line);border-radius:38px;background:var(--surface);box-shadow:var(--shadow)}.portrait-card img{aspect-ratio:1;border-radius:28px;object-fit:cover}.availability{margin-top:16px;padding:0 10px;display:flex;align-items:center;gap:12px}.availability p{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.availability strong{color:var(--text)}.status-dot{width:10px;height:10px;flex:0 0 auto;border-radius:50%;background:var(--blue);box-shadow:0 0 0 5px var(--blue-soft)}.hero-statement{grid-column:1/-1;margin-top:clamp(50px,8vw,110px);padding-top:clamp(44px,5vw,74px);border-top:1px solid var(--line)}.hero-statement p{max-width:1080px;margin:0;font-size:clamp(43px,6.2vw,84px);line-height:1.01;letter-spacing:-.057em}
.section{padding-top:clamp(100px,12vw,170px);padding-bottom:clamp(100px,12vw,170px)}.section-label{margin-bottom:54px;padding-bottom:17px;display:flex;justify-content:space-between;gap:28px;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px;font-weight:650;text-transform:uppercase;letter-spacing:.1em}.section-label p{margin:0}.section-label span{color:var(--blue)}.section-heading{max-width:930px;margin-bottom:clamp(55px,7vw,95px)}.section-heading h2,.tools-layout h2{margin:0;font-size:clamp(44px,6vw,78px);line-height:1.02;letter-spacing:-.056em}.section-heading>p:last-child{max-width:720px;margin:30px 0 0;color:var(--muted);font-size:18px;line-height:1.62}
.profile-card{padding:clamp(30px,5vw,72px);display:grid;grid-template-columns:1fr 1fr;gap:clamp(42px,7vw,100px);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.profile-card h2{margin:0;font-size:clamp(38px,4.8vw,64px);line-height:1.04;letter-spacing:-.052em}.profile-copy{color:var(--muted);font-size:17px;line-height:1.67}.profile-copy p{margin:0 0 22px}.profile-copy p:last-child{margin:0}.competency-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}.competency-grid article{min-height:245px;padding:27px;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.78)}.competency-grid span{color:var(--blue);font-size:12px;font-weight:700}.competency-grid h3{margin:72px 0 12px;font-size:23px;letter-spacing:-.035em}.competency-grid p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}
.experience{background:var(--surface);border-radius:58px}.experience-list{display:grid;gap:18px}.experience-card{padding:clamp(28px,4vw,54px);display:grid;grid-template-columns:.62fr 1.38fr;gap:clamp(40px,7vw,90px);border:1px solid var(--line);border-radius:var(--radius);background:var(--bg)}.experience-card.featured{color:#f5f5f7;background:var(--text)}.experience-meta time{display:inline-flex;padding:9px 13px;border-radius:980px;color:var(--blue);background:var(--blue-soft);font-size:12px;font-weight:700}.featured .experience-meta time{color:#fff;background:var(--blue)}.experience-meta span{display:block;margin-top:18px;color:var(--muted);font-size:13px;line-height:1.45}.featured .experience-meta span{color:#a1a1a6}.experience-content h3{margin:0;font-size:clamp(27px,3vw,43px);line-height:1.06;letter-spacing:-.045em}.experience-content ul{margin:30px 0 0;padding:0;display:grid;gap:15px;list-style:none}.experience-content li{position:relative;padding-left:20px;color:var(--muted);font-size:15px;line-height:1.55}.experience-content li:before{content:'';position:absolute;left:0;top:.63em;width:6px;height:6px;border-radius:50%;background:var(--blue)}.featured .experience-content li{color:#d1d1d6}.experience-card.compact{align-items:center}
.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.project-card{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.project-wide{grid-column:1/-1;display:grid;grid-template-columns:1.2fr .8fr}.project-image{display:block;overflow:hidden;background:#ededf1}.project-image img{height:100%;min-height:330px;object-fit:cover;transition:transform .65s cubic-bezier(.2,.8,.2,1)}.project-card:hover .project-image img{transform:scale(1.025)}.project-copy{padding:clamp(26px,4vw,48px)}.project-number{color:var(--blue);font-size:12px;font-weight:700}.project-copy h3{margin:30px 0 14px;font-size:clamp(27px,3.2vw,44px);line-height:1.02;letter-spacing:-.045em}.project-copy p{margin:0;color:var(--muted);font-size:15px;line-height:1.58}.project-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:25px}.project-tags span,.tool-cloud span{padding:8px 12px;border:1px solid var(--line);border-radius:980px;color:var(--muted);background:var(--bg);font-size:12px}.project-copy>a{display:inline-flex;margin-top:30px;color:var(--blue);font-size:14px;font-weight:650}
.tools-layout{padding:clamp(30px,5vw,70px);display:grid;grid-template-columns:1fr 1fr;gap:clamp(45px,8vw,110px);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.tool-cloud{align-content:start;display:flex;flex-wrap:wrap;gap:9px}.tool-cloud span{padding:12px 16px;color:var(--text);background:var(--bg)}.education-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.education-grid article{padding:clamp(28px,4vw,48px);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.education-grid h3{margin:0 0 15px;font-size:27px;letter-spacing:-.035em}.education-grid p:last-child{margin:0;color:var(--muted);font-size:15px;line-height:1.55}
.contact{padding-top:30px}.contact-card{padding:clamp(36px,7vw,90px);overflow:hidden;border-radius:42px;color:#f5f5f7;background:var(--text)}.contact-card h2{max-width:940px;margin:0;font-size:clamp(45px,7vw,92px);line-height:.98;letter-spacing:-.06em}.contact-card>p:not(.eyebrow){max-width:760px;margin:35px 0 0;color:#a1a1a6;font-size:18px;line-height:1.6}.contact-card .button-secondary{color:#fff;border-color:#4a4a4e;background:var(--dark)}.contact-meta{margin-top:75px;padding-top:22px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:15px;border-top:1px solid #3a3a3c;color:#a1a1a6;font-size:12px}footer{min-height:90px;width:min(100%,calc(var(--max) + var(--pad)*2));margin:0 auto;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;gap:30px;color:var(--muted);font-size:12px}footer a{color:var(--blue);font-weight:650}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .72s cubic-bezier(.2,.8,.2,1),transform .72s cubic-bezier(.2,.8,.2,1)}.reveal.in-view{opacity:1;transform:none}
@media(max-width:900px){nav>a:not(.nav-cta){display:none}.hero{grid-template-columns:1fr}.hero-profile{justify-self:start;max-width:330px}.hero-statement{margin-top:25px}.profile-card,.tools-layout,.experience-card{grid-template-columns:1fr}.competency-grid{grid-template-columns:repeat(2,1fr)}.project-wide{display:block}.project-image img{min-height:270px}}
@media(max-width:620px){.site-header{min-height:64px}.nav-cta{padding:9px 13px;font-size:12px}.hero{min-height:auto;padding-top:62px}h1{font-size:clamp(70px,22vw,102px)}.hero-role{font-size:21px}.hero-profile{max-width:100%}.hero-statement p{font-size:43px}.profile-card,.tools-layout{padding:28px 23px}.competency-grid,.project-grid,.education-grid{grid-template-columns:1fr}.project-wide{grid-column:auto}.competency-grid article{min-height:220px}.experience{border-radius:34px}.experience-card{padding:28px 23px}.contact-card{border-radius:30px}.contact-actions{align-items:stretch;flex-direction:column}.contact-actions .button{width:100%}footer{min-height:110px;align-items:flex-start;justify-content:center;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
