*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:#f5f7fa;color:#18212f;font-family:"Inter",Arial,sans-serif;-webkit-font-smoothing:antialiased}body,dd,dl,figure,h1,h2,h3,h4,p{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}::selection{background:#245cdb;color:#fff}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.notebook{--paper:#f5f7fa;--ink:#18212f;--muted:#596575;--accent:#245cdb;--rule:#dce2ea;background:var(--paper);color:var(--ink);font:1rem/1.7 "Inter",Arial,sans-serif}.wrap{max-width:1320px;margin:0 auto;padding-inline:clamp(24px,5vw,80px)}.notebook h1,.notebook h2,.notebook h3{line-height:1.15;letter-spacing:-.045em}.notebook a{transition:color .2s,background .2s}.notebook a:hover{color:var(--accent)}.notebook :is(a,button,summary):focus-visible{outline:3px solid #6499ff;outline-offset:5px}.notebook section{scroll-margin-top:24px}.overline{font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.skip-link{position:fixed;top:-100px;left:20px;padding:12px;background:#fff;z-index:20}.skip-link:focus{top:20px}.journal-header{display:flex;justify-content:space-between;align-items:center;grid-gap:24px;gap:24px;min-height:92px}.wordmark{font-size:1.15rem;font-weight:700;letter-spacing:-.04em;line-height:1.3}.wordmark span{display:block;font-size:.75rem;font-weight:400;color:var(--muted);letter-spacing:0;margin-top:4px}.journal-header nav{display:flex;align-items:center;grid-gap:26px;gap:26px;font-size:.875rem;font-weight:500}.resume-link{border:1px solid var(--rule);border-radius:6px;padding:8px 14px}.intro{background:#11151c;color:#f8fafc;max-width:1440px;border-radius:12px}.intro-top{display:flex;justify-content:space-between;padding-top:28px;color:#aab8cc}.intro-top .overline:first-child{color:#b6d8fe}.intro-grid{display:grid;grid-template-columns:1.35fr 1fr;grid-gap:clamp(32px,5vw,80px);gap:clamp(32px,5vw,80px);align-items:center;padding:40px 0}.intro h1{font-size:clamp(2.7rem,5vw,4.4rem);font-weight:650;line-height:1.04;letter-spacing:-.06em}.notebook em{color:#97bdff;font-style:normal}.intro-copy{max-width:570px;color:#b8c3d2;margin:24px 0;line-height:1.75}.intro-actions{display:flex;grid-gap:25px;gap:25px;align-items:center;flex-wrap:wrap}.primary-link{display:inline-flex;grid-gap:24px;gap:24px;padding:12px 18px;background:#b5d3ff;color:#112342;border-radius:6px;font-size:.875rem;font-weight:650}.primary-link:hover{background:#d5e5ff}.text-link{display:inline-flex;align-items:center;grid-gap:20px;gap:20px;border-bottom:1px solid;padding-bottom:4px;font-size:.875rem;font-weight:550}.intro .text-link{color:#d8e1ee}.career-snapshot{border:1px solid #344052;border-radius:10px;background:#1b232e;padding:26px}.snapshot-heading{display:flex;grid-gap:14px;gap:14px;align-items:center}.snapshot-heading img{width:52px;height:52px;border-radius:50%;object-fit:cover}.snapshot-heading .overline{font-size:.7rem;color:#a9c9ff}.snapshot-heading p{font-size:.875rem;font-weight:500}.snapshot-stat{display:flex;align-items:center;grid-gap:20px;gap:20px;padding:16px 0}.snapshot-stat strong{font-size:5.5rem;line-height:1.1;letter-spacing:-.08em;font-weight:600}.snapshot-stat strong span{color:#a9c9ff;font-size:3rem;vertical-align:top}.snapshot-stat p{font-size:.875rem;line-height:1.5}.snapshot-stat p span{color:#aab8cc;font-size:.75rem}.snapshot-roles>div{display:grid;grid-template-columns:88px 1fr;grid-column-gap:12px;column-gap:12px;padding:9px 0;border-top:1px solid #344052}.snapshot-roles span{color:#aab8cc;font-size:.75rem;grid-row:span 2}.snapshot-roles strong{font-size:.875rem;font-weight:550}.snapshot-roles p{font-size:.75rem;color:#aab8cc}.career-snapshot>a{color:#b5d3ff;margin-top:16px}.career-snapshot>a,.intro-bottom{display:flex;justify-content:space-between;font-size:.8rem}.intro-bottom{grid-gap:20px;gap:20px;padding:17px 0;border-top:1px solid #344052;color:#aab8cc}.section-heading{display:flex;justify-content:space-between;align-items:end;grid-gap:40px;gap:40px;margin-bottom:36px}.section-heading .overline{color:var(--accent);display:block;margin-bottom:15px}.section-heading h2{font-size:clamp(1.85rem,3.3vw,2.75rem);font-weight:650}.section-heading h2 span{color:var(--muted)}.section-heading>p{color:var(--muted);max-width:300px;font-size:.9375rem}.career{padding-top:52px;padding-bottom:64px}.career-list{border-top:1px solid var(--rule);margin-bottom:26px}.career-row{display:grid;grid-template-columns:225px 1fr;grid-gap:40px;gap:40px;padding:30px 0;border-bottom:1px solid var(--rule)}.career-row--current{border-top:3px solid var(--accent)}.career-date{font-size:.875rem;color:var(--muted);padding-top:3px}.current-label{display:block;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;color:#1645aa;background:#e4edff;padding:3px 10px;border-radius:4px;font-size:.75rem;margin-top:12px;font-weight:550}.career-body h3{font-size:1.35rem;font-weight:650}.career-role{font-size:1rem;margin:6px 0 13px;color:#354b69;font-weight:500}.career-highlights{padding-left:18px;margin:12px 0;color:var(--muted);font-size:.9375rem}.career-highlights li{padding-left:4px;margin-bottom:6px}.career-highlights li::marker{color:var(--accent)}.role-details summary{cursor:pointer;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;font-size:.875rem;color:var(--accent)}.career-tags{display:flex;grid-gap:8px;gap:8px;flex-wrap:wrap;margin-top:16px}.career-tags span{font-size:.75rem;color:#45556a;background:#e9edf3;padding:3px 9px;border-radius:4px}.career-description{color:var(--muted);font-size:.9375rem;max-width:760px}.work{padding-top:64px;padding-bottom:70px}.story,.work{border-top:1px solid var(--rule)}.story{display:grid;grid-template-columns:105px 1fr 230px;grid-gap:30px;gap:30px;padding:35px 0}.story-meta{font-size:.75rem;color:var(--muted)}.story-number{display:block;font-size:1.8rem;color:var(--accent);font-weight:600;margin-bottom:10px;letter-spacing:-.06em}.story-content h3{font-size:clamp(1.5rem,2.4vw,2rem);font-weight:600;margin-bottom:18px}.story-context{color:var(--muted);margin-bottom:24px}.story-details h4{font-size:.8rem;color:var(--accent);margin-bottom:6px}.story-details p{font-size:.9375rem;margin-bottom:20px;color:var(--muted)}.tool-line{font-size:.75rem;font-family:"JetBrains Mono",monospace;color:var(--muted)}.system-sketch{align-self:start;background:#eaf0f8;border:1px solid #d6e0ef;border-radius:8px;padding:22px}.system-sketch figcaption{font-size:.8rem;color:#45556a;margin-bottom:22px}.system-node{border:1px solid #b1bfd3;padding:12px 8px;border-radius:5px;background:#fff;text-align:center;font-size:.875rem;font-weight:500}.system-node--result{border-color:var(--accent);color:var(--accent)}.system-arrow{text-align:center;color:var(--accent);font-size:1.5rem}.system-sketch p{margin-top:20px;font-size:.9375rem;font-weight:500}.sketch-label{display:block;margin-top:18px;color:var(--muted);font-size:.75rem}.other-work{border-top:1px solid var(--rule);padding-top:30px}.other-work>h3{font-size:1.4rem;margin-bottom:25px}.other-work>div{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:30px;gap:30px}.other-work article+article{border-left:1px solid var(--rule);padding-left:25px}.other-work h4{font-size:1.1rem;line-height:1.4;margin:12px 0;letter-spacing:-.025em}.other-work p{font-size:.9375rem;color:var(--muted)}.other-work .text-link{margin-top:18px}.about-journal{background:#e9eef5;padding:65px 0}.about-layout{display:grid;grid-template-columns:1fr 1.5fr;grid-gap:clamp(35px,7vw,100px);gap:clamp(35px,7vw,100px)}.portrait-column img{width:100%;height:auto;aspect-ratio:6/7;max-height:480px;object-fit:cover;border-radius:10px}.portrait-caption{font-weight:550;font-size:.875rem;margin-top:15px}.portrait-caption span{display:block;color:var(--muted);font-weight:400}.about-copy h2{font-size:clamp(2rem,3.5vw,3rem);margin:22px 0;font-weight:600}.about-copy em{color:var(--accent)}.about-copy>p{color:var(--muted);margin-bottom:18px}.practice{margin-top:30px;border-top:1px solid #ccd6e3;padding-top:24px}.practice h3{font-size:1.2rem}.practice dl>div{margin-top:14px}.practice dt{font-size:.875rem;font-weight:550}.practice dd{font-size:.875rem;color:var(--muted)}.contact-journal{background:#11151c;color:#f8fafc;padding:55px 0}.contact-journal .overline{color:#a9c9ff}.contact-layout{display:grid;grid-template-columns:1fr 1.2fr;grid-gap:60px;gap:60px;margin-top:30px;align-items:center}.contact-layout h2{font-size:clamp(2.5rem,4vw,3.75rem);font-weight:600}.contact-layout p{max-width:450px;color:#b8c3d2;margin-bottom:22px}.email-link{font-size:clamp(.9rem,1.5vw,1.2rem);border-bottom:1px solid #61738d;padding-bottom:6px;overflow-wrap:anywhere}.contact-links{display:flex;flex-wrap:wrap;grid-gap:24px;gap:24px;font-size:.875rem;margin-top:22px;color:#b8c3d2}.contact-journal a:hover{color:#a9c9ff}.email-copy{display:flex;grid-gap:15px;gap:15px;align-items:center;flex-wrap:wrap;margin-top:15px;font-size:.8rem;color:#b8c3d2}.email-copy button{background:transparent;border:0;border-bottom:1px solid #61738d;color:inherit;padding:0 0 2px;cursor:pointer}.journal-footer{display:flex;justify-content:space-between;grid-gap:20px;gap:20px;padding-block:24px;font-size:.75rem;color:var(--muted)}@media (max-width:1000px){.intro-grid{grid-template-columns:1.15fr 1fr;grid-gap:30px;gap:30px}.career-snapshot{padding:20px}.intro h1{font-size:3.4rem}.story{grid-template-columns:65px 1fr 200px;grid-gap:20px;gap:20px}.career-row{grid-template-columns:185px 1fr;grid-gap:25px;gap:25px}.journal-header nav{grid-gap:18px;gap:18px}.section-heading{grid-gap:24px;gap:24px}}@media (max-width:760px){.journal-header{flex-direction:column;align-items:start;grid-gap:20px;gap:20px;padding-block:20px}.journal-header nav{width:100%;flex-wrap:wrap;justify-content:space-between;grid-gap:14px;gap:14px;font-size:.8rem}.intro{border-radius:0}.intro-top{grid-gap:16px;gap:16px}.intro-top .overline{font-size:.7rem}.intro-grid{grid-template-columns:1fr;padding-block:30px}.intro h1{font-size:clamp(2.6rem,9vw,3.7rem)}.intro-copy{margin-block:20px}.intro-actions{grid-gap:18px;gap:18px}.career-snapshot{max-width:100%}.snapshot-stat strong{font-size:4.5rem}.intro-bottom{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px 20px;gap:10px 20px;font-size:.75rem}.section-heading{flex-direction:column;align-items:start;grid-gap:15px;gap:15px}.section-heading>p{max-width:100%}.career,.work{padding-block:42px}.career-row{grid-template-columns:1fr;grid-gap:12px;gap:12px;padding-block:25px}.career-date{display:flex;align-items:center;flex-wrap:wrap;grid-gap:15px;gap:15px}.current-label{margin:0}.career-body h3{font-size:1.2rem}.story{grid-template-columns:1fr;grid-gap:20px;gap:20px}.story-meta{display:flex;align-items:center;grid-gap:15px;gap:15px}.story-number{margin:0}.system-sketch{display:grid;grid-template-columns:1fr 24px 1fr;grid-gap:12px;gap:12px;align-items:center;padding:20px}.system-sketch figcaption{grid-column:1/-1;margin:0 0 6px}.system-arrow{transform:rotate(-90deg)}.sketch-label,.system-sketch p{grid-column:1/-1;margin-top:4px}.other-work>div{grid-template-columns:1fr}.other-work article+article{border-left:0;border-top:1px solid var(--rule);padding-left:0;padding-top:24px}.about-journal{padding-block:45px}.about-layout{grid-template-columns:1fr;grid-gap:30px;gap:30px}.portrait-column{max-width:320px}.contact-layout{grid-template-columns:1fr;grid-gap:28px;gap:28px}.contact-journal{padding-block:40px}.journal-footer{flex-wrap:wrap}.journal-footer>span:nth-child(2){display:none}}@media (prefers-reduced-motion:reduce){.notebook a{transition:none}}.earlier-experience{border:1px solid var(--rule);border-radius:8px;margin:0 0 26px;padding:0 22px;background:#edf1f7}.earlier-experience>summary{display:flex;align-items:center;justify-content:space-between;grid-gap:20px;gap:20px;cursor:pointer;padding:20px 0;font-weight:550;list-style:none}.earlier-experience>summary::-webkit-details-marker{display:none}.earlier-years{display:block;color:var(--muted);font-size:.8rem;font-weight:400;margin-top:3px}.earlier-toggle{color:var(--accent);font-size:1.6rem;transition:transform .2s}.earlier-experience[open] .earlier-toggle{transform:rotate(45deg)}.earlier-experience .career-row{border-top:1px solid var(--rule);border-bottom:0}@media (prefers-reduced-motion:reduce){.earlier-toggle{transition:none}}.career-explorer{--pointer-x:65%;--pointer-y:20%;position:relative;min-width:0;overflow:hidden;isolation:isolate;border:1px solid #435571;border-radius:18px;padding:26px;background:linear-gradient(145deg,#24334b,#172131 48%,#151d28);box-shadow:0 24px 60px -30px #000,inset 0 1px 0 hsla(0,0%,100%,.09411764705882353)}.career-explorer:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(260px circle at var(--pointer-x) var(--pointer-y),rgba(120,168,255,.1411764705882353),transparent 75%)}.explorer-footer,.explorer-heading{display:flex;align-items:center;justify-content:space-between;grid-gap:12px;gap:12px}.explorer-heading{color:#adc3e4}.explorer-heading>span:last-child{font-size:.75rem}.explorer-track{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:30px 0 26px;padding:0 0 10px;border-bottom:1px solid #3d506a}.explorer-track button{position:relative;padding:12px 2px;color:#aebdd1;border:0;background:none;cursor:pointer;font-size:.75rem;transition:color .2s}.explorer-track button[aria-pressed=true]{color:#fff}.explorer-dot{display:block;width:8px;height:8px;margin:0 auto 12px;border:1px solid #7c92b1;border-radius:50%;transition:background .25s,box-shadow .25s}.explorer-track button[aria-pressed=true] .explorer-dot{background:#afceff;border-color:#afceff;box-shadow:0 0 0 5px rgba(125,175,255,.09411764705882353),0 0 24px rgba(130,179,255,.5333333333333333)}.explorer-indicator{position:absolute;bottom:-1px;left:0;width:calc(100%/var(--count));height:2px;background:#a8cbff;box-shadow:0 0 14px rgba(130,179,255,.5333333333333333);transform:translateX(calc(var(--selected)*100%));transition:transform .4s cubic-bezier(.22,1,.36,1)}.explorer-focus{min-height:285px}.explorer-content{animation:reveal-role .35s ease-out both}.explorer-date{display:flex;align-items:center;grid-gap:12px;gap:12px;color:#b0c0d6;font-size:.75rem;min-height:24px}.explorer-current{border:1px solid #5c8e86;border-radius:20px;color:#b3e7cf;padding:1px 8px}.explorer-content h2{font-size:clamp(2.3rem,4vw,3.25rem);margin:14px 0 8px;font-weight:600;color:#fff}.explorer-role{font-size:.9375rem;line-height:1.5;color:#c5d9f7;min-height:45px}.explorer-description{color:#acbdd3;font-size:.875rem;margin:16px 0;line-height:1.65}.explorer-technologies{display:flex;flex-wrap:wrap;grid-gap:7px;gap:7px;padding-bottom:20px}.explorer-technologies span{font-size:.75rem;border:1px solid #41546f;background:hsla(0,0%,100%,.023529411764705882);border-radius:5px;color:#d0def2;padding:4px 9px}.explorer-footer{border-top:1px solid #344660;padding-top:16px;font-size:.75rem;color:#a9bad1;flex-wrap:wrap}.explorer-footer a{color:#c5dcff}@keyframes reveal-role{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1000px){.career-explorer{padding:20px}.explorer-heading .overline{font-size:.7rem}.explorer-focus{min-height:325px}}@media (max-width:760px){.explorer-focus{min-height:285px}}@media (prefers-reduced-motion:reduce){.explorer-content{animation:none}.explorer-dot,.explorer-indicator,.explorer-track button{transition:none}.career-explorer:before{background:none}}
/*# sourceMappingURL=main.ba7b7b62.chunk.css.map */