.career-hero{background:var(--surface);flex-direction:column;flex:1;padding:48px 24px 32px;display:flex}.career-intro{text-align:center}.career-intro h1{letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:clamp(2.3rem,4vw,3.75rem);font-weight:600;line-height:1.15}.career-shelf{border-top:1px solid var(--line);flex:1;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:1040px;margin:28px auto 0;display:grid;position:relative}.lanyard{z-index:1;text-align:center;--pull:0px;min-width:0;position:relative}.lanyard[data-dragging=true]{z-index:2}.lanyard-stage{min-height:var(--stage-height);width:100%;height:100%;position:relative}.static-strap{top:0;left:calc(50% - var(--strap-width) / 2);width:var(--strap-width);height:calc(var(--strap-rest) + var(--pull));background:var(--strap-color);border-inline:var(--strap-border-width) solid var(--strap-border);background-image:var(--strap-pattern);background-size:100% var(--strap-pattern-size);background-repeat:repeat-y;border-radius:0 0 3px 3px;position:absolute}.lanyard-canvas{z-index:0;pointer-events:none;opacity:0;position:absolute;inset:0}.career-shelf[data-physics=ready] .lanyard-canvas{opacity:1}.career-shelf[data-physics=ready] .static-strap{visibility:hidden}.badge-anchor{top:var(--badge-top);left:calc(50% - var(--badge-width) / 2);width:var(--badge-width);height:var(--badge-height);color:inherit;touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;transform-origin:50%;will-change:transform;border-radius:12px;text-decoration:none;display:block;position:absolute}.badge-anchor:active{cursor:grabbing}.badge-loading{pointer-events:none;justify-content:center;align-items:center;display:none;position:absolute;inset:0}.lanyard[data-loading=true] .badge-loading{display:flex}.lanyard[data-loading=true] .badge-anchor{cursor:progress}.badge-spinner{border:2px solid var(--line);border-top-color:var(--ink-secondary);border-radius:50%;width:22px;height:22px;animation:.8s linear infinite badge-loading-spin}@keyframes badge-loading-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.badge-spinner{animation:none}}.badge-face{border:2px solid var(--badge-border,transparent);text-align:left;background-color:var(--badge-paper,#fafafa);width:224px;height:304px;color:var(--badge-ink,#252629);background-position:50%;background-size:cover;border-radius:12px;flex-direction:column;padding:52px 21px 28px;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 22px -12px #1d1d1f38,0 2px 5px #1d1d1f12}.badge-face:after{content:"";pointer-events:none;border:1px solid #1d1d1f12;border-radius:7px;position:absolute;inset:6px}.badge-slot{background:#d9dadd;border-radius:4px;width:34px;height:7px;position:absolute;top:14px;left:calc(50% - 17px);box-shadow:inset 0 1px 2px #0000001f}.badge-title{letter-spacing:-.04em;word-break:keep-all;font-size:23px;font-weight:650;line-height:1.4}.badge-information{flex-direction:column;margin-top:auto;display:flex}.badge-role{margin-bottom:12px;font-size:13px;font-weight:500;line-height:1.6}.badge-period{font-variant-numeric:tabular-nums;font-size:12px}.badge-drag-hint{opacity:0;text-align:center;color:var(--ink-muted);grid-template-rows:0fr;font-size:13px;font-weight:600;line-height:18px;transition:grid-template-rows .22s cubic-bezier(.16,1,.3,1),opacity .16s,transform .22s cubic-bezier(.16,1,.3,1);display:grid;position:relative;overflow:hidden;transform:translateY(6px)}.badge-drag-hint-clip{min-height:0;display:grid;position:relative;overflow:hidden}.badge-drag-hint-clip>span{opacity:0;grid-area:1/1;padding-top:8px;transition:opacity .16s,transform .2s cubic-bezier(.16,1,.3,1),color .16s;transform:translateY(5px)}.badge-face[data-interaction=pull] .badge-drag-hint,.badge-face[data-interaction=release] .badge-drag-hint{opacity:1;grid-template-rows:1fr;transform:translateY(0)}.badge-face[data-interaction=pull] .badge-drag-hint-pull,.badge-face[data-interaction=release] .badge-drag-hint-release{opacity:1;transform:translateY(0)}.badge-face[data-interaction=release] .badge-drag-hint-release{color:var(--accent)}.badge-footer{height:10px;display:flex;position:absolute;bottom:0;left:0;right:0}.badge-footer>span{height:100%}.badge-anchor:hover .badge-face{box-shadow:0 16px 28px -12px #1d1d1f47,0 2px 5px #1d1d1f17}.lanyard-status{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.career-guidance{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 24px;max-width:1040px;margin:22px auto 0;display:flex}.career-guidance p{color:var(--ink-secondary);margin:0;font-size:13px;line-height:1.7}.career-guidance p span{color:var(--ink-muted)}.career-back{min-height:44px;font:inherit;cursor:pointer;background:var(--nav-surface);color:var(--ink-secondary);border-radius:999px;padding:10px 16px;font-size:13px;font-weight:500;transition:background-color .16s,transform .16s}.career-back:hover{background:var(--line)}.career-back:active{transform:scale(.98)}.career-detail{max-width:960px;margin:32px auto 20px}.career-back{margin-bottom:28px}.career-detail-heading{grid-template-columns:224px 1fr;align-items:center;gap:56px;display:grid}.career-detail-heading h2{letter-spacing:-.04em;margin:0;font-size:clamp(1.9rem,4vw,2.8rem);font-weight:600;line-height:1.2}.career-detail-role{color:var(--ink-muted);margin-top:16px;font-size:14px}.career-summary{max-width:60ch;color:var(--ink-secondary);word-break:keep-all;margin-top:24px;font-size:16px;line-height:1.9}.career-projects{margin-top:48px}.career-project{border-top:1px solid var(--line);padding:28px 0;text-decoration:none;display:block}.career-project h3{letter-spacing:-.025em;font-size:21px;font-weight:600}.career-project p{max-width:65ch;color:var(--ink-secondary);white-space:pre-line;margin-top:12px;font-size:15px;line-height:1.8}.career-project span{color:var(--accent);margin-top:16px;font-size:13px;text-decoration:underline;display:inline-block}.career-project:hover h3{color:var(--accent)}@media (width<=959px){.career-hero{padding:36px 20px 28px}.career-shelf{grid-template-columns:1fr;gap:24px;max-width:400px}.lanyard+.lanyard{border-top:1px solid var(--line)}.career-guidance{text-align:center}.career-guidance p span{display:block}.career-detail-heading{grid-template-columns:1fr;gap:32px}.career-selected-badge{justify-self:center}.career-summary{font-size:15px}}@media (prefers-reduced-motion:reduce){.badge-anchor{will-change:auto}}@media (prefers-reduced-motion:no-preference){.career-detail{animation:.28s cubic-bezier(.16,1,.3,1) career-reveal}@keyframes career-reveal{0%{opacity:.6;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}}
