.about-profile .eyebrow,.eyebrow{font:500 .8rem/1.6 var(--tech);letter-spacing:.12em;color:var(--cyan);margin:0 0 20px}
.about-profile{padding-bottom:72px;align-items:center}.about-profile h1{font-size:clamp(64px,7vw,104px)}.about-profile .about-copy{padding-top:0}.about-profile .portrait-stage{align-self:end}.about-profile .portrait-stage[data-fx-visible=true] .core-ring{animation:core-orbit 36s linear infinite}.about-profile .portrait-stage:not([data-fx-visible=true]) .core-ring{animation-play-state:paused}.about-social{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:24px}.about-social a{min-height:44px;display:inline-flex;align-items:center;color:var(--cyan);text-decoration:underline;text-underline-offset:6px;font:500 1rem var(--tech)}
.career-intro{padding:64px 0 36px;border-top:1px solid var(--line);max-width:780px}.career-intro h2,.impact-section h2,.about-closing h2{font:600 clamp(32px,5vw,52px)/1.12 var(--tech);letter-spacing:-.035em;margin-bottom:24px}.career-intro>p:not(.eyebrow){max-width:640px;color:var(--muted);font-size:1.1rem}.career-intro .career-hint{font-size:.9rem!important;margin-top:20px}
.career-timeline{list-style:none;padding:0;margin:0 0 80px;position:relative}.career-stop{position:relative;display:grid;grid-template-columns:150px 1fr;gap:32px;padding:16px 0 24px}.career-stop:before{content:'';position:absolute;left:161px;top:32px;bottom:-32px;width:1px;background:linear-gradient(var(--cyan),var(--line));opacity:.45}.career-stop:last-child:before{bottom:40px}.career-year{font:500 .875rem var(--tech);color:var(--cyan);padding-top:33px;position:relative}.career-year:after{content:'';position:absolute;right:-17px;top:38px;width:7px;height:7px;background:var(--cyan);box-shadow:0 0 18px rgb(181 138 255 / .55);transform:rotate(45deg)}
.career-card{min-width:0;border:1px solid var(--line);background:linear-gradient(120deg,#161020,#100b1a);position:relative;transition:border-color .2s ease,box-shadow .2s ease}.career-card[open]{border-color:rgb(196 160 255 / .65);box-shadow:0 8px 36px rgb(93 39 150 / .12)}.career-card summary{list-style:none;display:grid;grid-template-columns:116px minmax(0,1fr) 28px;align-items:center;gap:24px;padding:28px;cursor:pointer;min-height:116px}.career-card summary::-webkit-details-marker{display:none}.career-card summary:focus-visible{outline:3px solid var(--cyan);outline-offset:5px}.employer-mark{min-width:0;min-height:56px;display:flex;align-items:center;justify-content:center;padding:10px;background:#f8f7fb;color:#191422;font:600 1rem/1.2 var(--tech);border-radius:3px;text-align:center}.employer-mark img{max-width:100%;width:96px;max-height:46px;height:auto;object-fit:contain}.career-heading h2{font:600 1.6rem/1.2 var(--tech);margin:0 0 8px}.career-heading p{color:var(--muted);font-size:1rem;margin:0}.career-toggle{width:24px;height:24px;position:relative;color:var(--cyan)}.career-toggle:before,.career-toggle:after{content:'';position:absolute;left:3px;top:11px;width:18px;height:2px;background:currentColor}.career-toggle:after{transform:rotate(90deg);transition:transform .2s}.career-card[open] .career-toggle:after{transform:rotate(0)}
.career-content{padding:0 28px 30px;border-top:1px solid var(--line)}.career-role{padding:26px 0 6px}.career-role+.career-role{border-top:1px solid var(--line);margin-top:20px}.role-date{font:500 .875rem var(--tech);color:var(--cyan);margin-bottom:10px}.career-role h3{font:600 1.3rem/1.4 var(--tech);margin-bottom:16px}.career-role ul{padding-left:21px;margin:0;color:var(--muted)}.career-role li{font-size:1rem;line-height:1.75;padding:0 0 10px}.career-tags{display:flex;flex-wrap:wrap;list-style:none;margin:24px 0 0;padding:0;gap:8px}.career-tags li{font:.8rem var(--tech);padding:7px 10px;border:1px solid var(--line);color:var(--muted)}.career-source{display:inline-flex;min-height:44px;align-items:center;color:var(--cyan);font-size:.9rem;text-decoration:underline;text-underline-offset:5px;margin-top:10px}
.impact-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;border-top:1px solid var(--line);padding:72px 0}.impact-section>div>p:not(.eyebrow){color:var(--muted);max-width:430px}.impact-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.impact-card{border-top:2px solid var(--cyan);padding:24px;background:var(--surface)}.impact-card:nth-child(2){border-color:var(--pink)}.impact-number{font:600 clamp(28px,3vw,40px)/1.1 var(--tech);color:var(--cyan);display:flex;flex-direction:column;gap:6px;letter-spacing:-.03em;margin-bottom:20px}.impact-card:nth-child(2) .impact-number{color:var(--pink)}.impact-number span{font:.8rem var(--body);color:var(--muted);letter-spacing:0}.impact-card h3{font:500 1.05rem var(--tech);margin-bottom:12px}.impact-card p:not(.impact-number){font-size:.9rem;color:var(--muted)}.impact-note{grid-column:1/-1;font-size:.875rem;color:var(--muted);line-height:1.7}.about-closing{padding:56px 0;border-top:1px solid var(--line);max-width:780px}.about-closing p{color:var(--muted);max-width:560px;margin-bottom:28px}.career-footnote{font-size:.8rem;color:var(--muted);max-width:720px;padding-bottom:48px;line-height:1.7}
@media(hover:hover) and (pointer:fine){.career-card:hover{border-color:var(--cyan);box-shadow:0 8px 32px rgb(93 39 150 / .13)}}
@media(max-width:800px){.career-stop{grid-template-columns:110px 1fr;gap:24px}.career-stop:before{left:121px}.career-card summary{grid-template-columns:88px minmax(0,1fr) 20px;gap:16px;padding:22px}.employer-mark{min-height:48px}.impact-section{grid-template-columns:1fr;gap:32px}.impact-section>div>p:not(.eyebrow){max-width:600px}}
@media(max-width:699px){.about-profile{padding-top:40px;padding-bottom:44px}.about-profile .portrait-stage{height:410px;margin-top:8px}.about-profile h1{font-size:70px}.about-profile .eyebrow{font-size:.7rem;letter-spacing:.08em}.career-intro{padding-top:40px}.career-timeline{margin-bottom:40px}.career-stop{display:block;padding:0 0 24px 16px}.career-stop:before{left:0;top:18px;bottom:0}.career-year{padding:0 0 14px;font-size:.8rem}.career-year:after{left:-19px;right:auto;top:5px}.career-card summary{grid-template-columns:64px minmax(0,1fr) 18px;gap:12px;padding:18px 14px;min-height:100px}.employer-mark{padding:8px 5px;min-height:46px;font-size:.75rem}.employer-mark img{max-height:34px}.career-heading h2{font-size:1.25rem}.career-heading p{font-size:.875rem;line-height:1.45}.career-content{padding:0 18px 24px}.career-role h3{font-size:1.1rem}.career-role li{font-size:1rem}.career-toggle{width:18px}.career-toggle:before,.career-toggle:after{width:14px;left:2px}.impact-section{padding:40px 0}.impact-grid{gap:12px}.impact-card{padding:18px 14px}.impact-number{font-size:31px}.about-closing{padding:40px 0}.career-footnote{font-size:.8rem;padding-bottom:32px}}
@media(max-width:360px){.about-profile h1{font-size:60px}.impact-grid{grid-template-columns:1fr}.career-card summary{grid-template-columns:54px minmax(0,1fr) 18px;gap:10px}.career-heading h2{font-size:1.1rem}}

.employer-mark[data-logo=pg]{background:#17101f}.employer-mark[data-logo=vr] img{width:44px;height:44px}.employer-mark[data-logo=conversion]{background:#fff}

.employer-mark[data-logo=orys]{background:#20192b}

.technical-lead{color:var(--muted);font-size:1rem;line-height:1.8;margin-bottom:24px}.technical-block{padding:20px 0;border-top:1px solid var(--line)}.technical-block h4{font:600 1.05rem/1.4 var(--tech);color:var(--cyan);margin:0 0 12px}.technical-block p{color:var(--muted);font-size:1rem;line-height:1.8;margin:0 0 14px}.career-role li strong{color:var(--text);font-weight:500}

.technical-toolbox{padding:56px 0;border-top:1px solid var(--line)}.technical-toolbox h2{font:600 clamp(32px,5vw,52px)/1.12 var(--tech);letter-spacing:-.035em;margin:0 0 24px}.toolbox-intro{color:var(--muted);max-width:680px;font-size:1.1rem;margin-bottom:32px}.toolbox-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.toolbox-grid details{border:1px solid var(--line);background:var(--surface);padding:0 22px}.toolbox-grid summary{font:600 1.15rem/1.4 var(--tech);color:var(--cyan);padding:22px 0;min-height:64px;cursor:pointer}.toolbox-grid summary:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}.toolbox-grid details>div{padding:0 0 24px}.toolbox-grid p{color:var(--muted);font-size:1rem;line-height:1.8}.toolbox-grid .career-tags{margin-top:20px}.career-intro{max-width:none}.career-intro>p:not(.eyebrow){max-width:720px}@media(max-width:850px){.toolbox-grid{grid-template-columns:1fr}.technical-toolbox{padding:40px 0}}

.personal-project{padding:64px 0 72px;border-top:1px solid var(--line)}.project-header{max-width:840px;margin-bottom:32px}.project-header h2{font:700 clamp(48px,7vw,80px)/1 var(--tech);letter-spacing:-.055em;color:var(--cyan);margin-bottom:24px}.project-subtitle{font:500 1.35rem/1.5 var(--tech);color:var(--text);margin-bottom:20px}.project-header>p:last-child{font-size:1.05rem;line-height:1.8;color:var(--muted)}.project-modules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.project-module{min-width:0;border:1px solid var(--line);border-top:3px solid var(--cyan);padding:30px;background:linear-gradient(145deg,#1b132a,#100b19)}.buyer-module{border-top-color:var(--pink)}.module-label{display:block;font:500 .75rem/1.6 var(--tech);letter-spacing:.12em;color:var(--cyan);margin-bottom:24px}.buyer-module .module-label{color:var(--pink)}.project-module h3{font:600 clamp(25px,3vw,34px)/1.2 var(--tech);letter-spacing:-.025em;margin-bottom:24px}.project-module>p,.project-module li{font-size:1rem;line-height:1.8;color:var(--muted)}.project-module>p{margin-bottom:20px}.project-module>ul{padding-left:20px;margin:0 0 26px}.project-module li{padding-bottom:10px}.project-depth{border-top:1px solid var(--line);margin-top:26px}.project-depth summary{font:500 1rem/1.5 var(--tech);color:var(--cyan);padding:20px 0;min-height:54px;cursor:pointer}.project-depth summary:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}.project-depth p{font-size:1rem;line-height:1.8;color:var(--muted);margin-bottom:18px}.project-depth strong{font-weight:500;color:var(--text)}.project-stack{margin:28px 0 12px}.personal-project>.career-source{margin-top:16px}@media(max-width:850px){.project-modules{grid-template-columns:1fr}.personal-project{padding:40px 0}.project-module{padding:24px}.project-header h2{font-size:56px}.project-subtitle{font-size:1.2rem}}
