.ks .experience-area .back-link{min-height:44px;text-decoration:underline;-webkit-text-decoration-color:var(--line-3);text-decoration-color:var(--line-3);text-underline-offset:6px;border-bottom:0;align-items:center;gap:8px;margin-bottom:32px;padding-bottom:0;display:inline-flex}.ks .experience-area .back-link:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.ks .experience-area .career-map{--label:236px;--gap:28px;margin-bottom:clamp(16px,3vw,40px)}.ks .experience-area .career-map-top{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 24px;padding-bottom:14px;display:flex}.ks .experience-area .career-map-hint{color:var(--muted);font-size:13px}.ks .experience-area .career-map-chart{padding-top:32px;position:relative}.ks .experience-area .career-map-rows{padding:0;list-style:none}.ks .experience-area .career-map-row{grid-template-columns:var(--label) minmax(0, 1fr);column-gap:var(--gap);align-items:center;min-height:48px;transition:opacity .25s;display:grid}.ks .experience-area .career-map-rows:has(.career-map-row:hover) .career-map-row:not(:hover){opacity:.45}.ks .experience-area .career-map-row:focus-visible{outline-offset:2px}.ks .experience-area .career-map-label{gap:2px;min-width:0;display:grid}.ks .experience-area .career-map-name{color:var(--soft);text-overflow:ellipsis;white-space:nowrap;font-size:14.5px;line-height:1.25;transition:color .2s;overflow:hidden}.ks .experience-area .career-map-duration{font-family:var(--font-code);color:var(--dim);font-variant-numeric:tabular-nums;font-size:11.5px;line-height:1.3}.ks .experience-area .career-map-row:hover .career-map-name,.ks .experience-area .career-map-row:focus-visible .career-map-name,.ks .experience-area .career-map-row[data-current] .career-map-name{color:var(--fg)}.ks .experience-area .career-map-track{background-image:linear-gradient(to right, var(--line) 1px, transparent 1px);background-size:calc(100% / var(--years)) 100%;align-self:stretch;min-height:48px;position:relative}.ks .experience-area .career-map-bar{top:calc(50% - 6px);left:calc(var(--from) * 100%);width:max(4px, calc(var(--span) * 100%));background:var(--g3);transform-origin:0;border-radius:1px;height:12px;transition:background-color .2s;position:absolute}.ks .experience-area .career-map-step{top:0;bottom:0;left:calc(var(--at) * 100% - 1px);background:var(--bg);width:2px;position:absolute}.ks .experience-area .career-map-row:hover .career-map-bar,.ks .experience-area .career-map-row:focus-visible .career-map-bar{background:var(--g5)}.ks .experience-area .career-map-row[data-current] .career-map-bar{background:var(--accent)}.ks .experience-area .career-map-row[data-current] .career-map-bar:before,.ks .experience-area .career-map-row[data-current] .career-map-bar:after{content:"";border-radius:50%;width:10px;height:10px;position:absolute;top:calc(50% - 5px);right:-5px}.ks .experience-area .career-map-row[data-current] .career-map-bar:before{background:var(--accent);box-shadow:0 0 12px #b6f36a99}.ks .experience-area .career-map-row[data-current] .career-map-bar:after{border:1px solid var(--accent);animation:2s ease-out infinite ks-ping}.ks .experience-area .career-map-axis{grid-template-columns:var(--label) minmax(0, 1fr);column-gap:var(--gap);display:grid}.ks .experience-area .career-map-years{grid-column:2;grid-template-columns:repeat(var(--years), minmax(0, 1fr));border-top:1px solid var(--line-2);font-family:var(--font-code);color:var(--muted);font-variant-numeric:tabular-nums;font-size:11.5px;display:grid}.ks .experience-area .career-map-years span{border-left:1px solid var(--line-2);padding:10px 0 0 8px}.ks .experience-area .career-map-now{top:0;bottom:0;left:calc(var(--label) + var(--gap) + (100% - var(--label) - var(--gap)) * var(--now));pointer-events:none;border-left:1px dashed #b6f36a8c;position:absolute}.ks .experience-area .career-map-now span{font-family:var(--font-code);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);white-space:nowrap;font-size:11px;position:absolute;top:6px;right:8px}.ks .experience-area .experience-list{border-bottom:1px solid var(--line);padding:0;list-style:none}.ks .experience-area .experience-entry{border-top:1px solid var(--line);grid-template-columns:minmax(180px,1fr) minmax(0,2.4fr);gap:24px 40px;padding-block:clamp(40px,5vw,64px);display:grid}.ks .experience-area .experience-side{align-self:start;justify-items:start;gap:12px;display:grid;position:sticky;top:104px}.ks .experience-area .experience-period{color:var(--soft);font-variant-numeric:tabular-nums}.ks .experience-area .experience-company{color:var(--fg);letter-spacing:-.03em;text-wrap:balance;font-size:clamp(1.5rem,2.6vw,2.125rem);font-weight:400;line-height:1.08}.ks .experience-area .experience-company-note{letter-spacing:0;max-width:30ch;color:var(--muted);text-wrap:pretty;padding-top:8px;font-size:13px;line-height:1.45;display:block}.ks .experience-area .experience-tenure{font-family:var(--font-code);color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.ks .experience-area .experience-now{font-family:var(--font-code);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);align-items:center;gap:10px;font-size:11.5px;display:inline-flex}.ks .experience-area .experience-entry:target .experience-company{animation:2s ease-out experience-target}.ks .experience-area .experience-roles{gap:56px;max-width:780px;padding:0;list-style:none;display:grid}.ks .experience-area .experience-roles[data-multi]{border-left:1px solid var(--line-2);gap:48px;padding-left:28px}.ks .experience-area .experience-role{gap:8px;display:grid;position:relative}.ks .experience-area .experience-roles[data-multi] .experience-role:before{content:"";background:var(--bg);border:1px solid var(--line-3);border-radius:50%;width:9px;height:9px;position:absolute;top:3px;left:-33px}.ks .experience-area .experience-roles[data-multi] .experience-role[data-current]:before{border-color:var(--accent);background:var(--accent)}.ks .experience-area .experience-role-period{color:var(--soft);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:4px 8px;display:flex}.ks .experience-area .experience-role-period span{color:var(--muted)}.ks .experience-area .experience-role-title{color:var(--fg);letter-spacing:-.015em;text-wrap:balance;font-size:clamp(1.125rem,1.6vw,1.3rem);font-weight:500;line-height:1.25}.ks .experience-area .experience-meta{color:var(--muted);font-size:14px;line-height:1.6}.ks .experience-area .experience-highlights{max-width:68ch;color:var(--soft);gap:12px;padding:12px 0 0 22px;font-size:15.5px;line-height:1.7;list-style:none;display:grid}.ks .experience-area .experience-highlights li{text-wrap:pretty;position:relative}.ks .experience-area .experience-highlights li:before{content:"";background:var(--accent);width:5px;height:5px;position:absolute;top:.72em;left:-22px}.ks .experience-area .experience-stack{gap:10px;padding-top:16px;display:grid}.ks .experience-area .experience-chips{flex-wrap:wrap;gap:8px;padding:0;list-style:none;display:flex}.ks .experience-area .experience-chip{border:1px solid var(--line-2);height:30px;font-family:var(--font-code);color:var(--soft);white-space:nowrap;border-radius:3px;align-items:center;gap:8px;padding:0 11px;font-size:12px;display:inline-flex}.ks .experience-area .experience-chip svg{color:var(--muted)}@media (max-width:1000px){.ks .experience-area .experience-entry{grid-template-columns:minmax(0,1fr);gap:28px}.ks .experience-area .experience-side{position:static}.ks .experience-area .experience-company-note{max-width:48ch}}@media (max-width:720px){.ks .experience-area .career-map{--label:0px;--gap:0px}.ks .experience-area .career-map-row{grid-template-columns:minmax(0,1fr);row-gap:2px;min-height:0;padding-top:10px}.ks .experience-area .career-map-label{align-items:baseline;gap:10px;display:flex}.ks .experience-area .career-map-name{font-size:14px}.ks .experience-area .career-map-rows{background-image:linear-gradient(to right, var(--line) 1px, transparent 1px);background-size:calc(100% / var(--years)) 100%}.ks .experience-area .career-map-track{background:0 0;min-height:24px}.ks .experience-area .career-map-years{font-size:10.5px}.ks .experience-area .career-map-years span{padding-left:4px}.ks .experience-area .experience-roles[data-multi]{padding-left:20px}.ks .experience-area .experience-roles[data-multi] .experience-role:before{left:-25px}.ks .experience-area .experience-highlights{font-size:15px}}@keyframes ks-ping{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(2.6)}}@keyframes experience-target{0%{color:var(--accent)}}@media (prefers-reduced-motion:no-preference){.ks .experience-area .page-head,.ks .experience-area .career-map-top{animation:.7s cubic-bezier(.16,1,.3,1) both ks-rise}.ks .experience-area .career-map-top{animation-delay:80ms}.ks .experience-area .career-map-bar{animation:1.1s cubic-bezier(.16,1,.3,1) both experience-bar;animation-delay:calc(.26s + var(--i,0) * 70ms)}.ks .experience-area .career-map-now{animation:.6s ease-out 1s both experience-fade}}@keyframes experience-bar{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes experience-fade{0%{opacity:0}}@media print{.ks .experience-area .career-map{display:none}.ks .experience-area .experience-side{position:static}}
