:root{--paper: #f4f3ee;--white: #fffefa;--ink: #101110;--soft-ink: #272925;--muted: #656960;--red: #d64a35;--red-dark: #a93123;--line: rgba(16, 17, 16, .2);--line-light: rgba(255, 255, 255, .25);--display: "Archivo", Arial, sans-serif;--serif: "Source Serif 4", Georgia, serif;--page: min(100% - 3rem, 88rem)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip;scroll-padding-top:5.5rem}body{margin:0;min-width:320px;overflow-x:clip;background:var(--paper);color:var(--ink);font-family:var(--display);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body.no-scroll{overflow:hidden}img{display:block;max-width:100%}a{color:inherit}button{font:inherit}h1,h2,h3,h4,p,blockquote{margin-top:0}:focus-visible{outline:3px solid var(--red);outline-offset:4px}.skip-link{position:fixed;top:.75rem;left:.75rem;z-index:1000;transform:translateY(-180%);padding:.8rem 1rem;background:var(--red);color:#fff;font-weight:700}.skip-link:focus{transform:none}.page-progress{position:fixed;inset:0 0 auto;z-index:200;height:4px;pointer-events:none}.page-progress span{display:block;width:100%;height:100%;background:var(--red);transform:scaleX(0);transform-origin:left;will-change:transform}.masthead{width:100%;height:76px;padding:0 max(1.5rem,calc((100vw - 88rem)/2));display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);background:var(--paper);position:relative;z-index:40}.brand{display:flex;align-items:baseline;gap:.8rem;width:fit-content;color:var(--ink);text-decoration:none}.brand-name{font-size:.92rem;font-weight:800;letter-spacing:-.03em;text-transform:uppercase}.brand-location{color:var(--muted);font-family:var(--serif);font-size:.78rem;font-style:italic}.desktop-nav{display:flex;gap:clamp(1.5rem,3vw,3rem)}.desktop-nav a,.header-link{position:relative;font-size:.68rem;font-weight:800;text-decoration:none;text-transform:uppercase;letter-spacing:.13em}.desktop-nav a:before,.header-link:before{content:"";position:absolute;left:0;right:100%;bottom:-.4rem;height:2px;background:var(--red);transition:right .18s ease}.desktop-nav a:hover:before,.header-link:hover:before{right:0}.header-link{justify-self:end}.menu-button{display:none}.cover{--portrait-shift: 0px;position:relative;min-height:min(880px,calc(100svh - 76px));display:grid;grid-template-columns:minmax(0,1.05fr) minmax(25rem,.95fr);grid-template-rows:1fr auto;overflow:hidden;background:var(--ink);color:#fff}.cover-copy{position:relative;z-index:3;align-self:center;max-width:52rem;padding:clamp(5rem,9vw,9rem) clamp(2rem,6vw,7rem) clamp(4rem,7vw,7rem) max(1.5rem,calc((100vw - 88rem)/2))}.cover-overline{display:flex;gap:.8rem;margin-bottom:1.8rem;color:#ffffffa3;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.13em}.cover-overline span+span:before{content:"/";margin-right:.8rem;color:var(--red)}.cover h1{max-width:11ch;margin-bottom:2rem;font-family:var(--serif);font-size:clamp(4.2rem,6.6vw,7.2rem);font-weight:500;line-height:.92;letter-spacing:-.052em}.title-line{display:block;overflow:hidden;padding-bottom:.08em}.title-line:last-child{color:var(--red);font-style:italic}.title-line>span{display:block;will-change:transform}.cover-intro{max-width:37rem;margin-bottom:2.2rem;color:#ffffffb8;font-family:var(--serif);font-size:clamp(1.08rem,1.5vw,1.34rem);line-height:1.58}.cover-actions{display:flex;gap:1rem;flex-wrap:wrap}.cover-actions a{display:inline-flex;align-items:center;gap:.7rem;min-height:48px;padding:.75rem 1rem;border:1px solid rgba(255,255,255,.34);color:#fff;font-size:.72rem;font-weight:800;text-decoration:none;text-transform:uppercase;letter-spacing:.09em;transition:background-color .18s ease,color .18s ease,border-color .18s ease}.cover-actions a:first-child,.cover-actions a:hover{border-color:var(--red);background:var(--red)}.cover-actions a:first-child:hover{border-color:#fff;background:#fff;color:var(--ink)}.cover-portrait{position:relative;overflow:hidden;min-height:100%;transform:translateY(var(--portrait-shift));will-change:transform}.hero-portrait{display:block;width:100%;height:100%;min-height:inherit}.hero-portrait img{width:100%;height:100%;min-height:min(880px,calc(100svh - 76px));object-fit:cover;object-position:center 25%;filter:grayscale(1) contrast(1.05)}.cover-portrait:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(16,17,16,.35),transparent 30%);mix-blend-mode:multiply}.portrait-curtain{position:absolute;inset:0;z-index:4;background:var(--red);transform:scaleX(0);transform-origin:right;pointer-events:none}.portrait-credit{position:absolute;left:1.25rem;right:1.25rem;bottom:1.25rem;z-index:5;display:flex;justify-content:space-between;margin:0;color:#ffffffc7;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.cover-route{grid-column:1 / -1;min-height:58px;display:flex;align-items:center;gap:1rem;padding:0 max(1.5rem,calc((100vw - 88rem)/2));border-top:1px solid var(--line-light);color:#ffffffa8;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.13em}.cover-route i{flex:1;height:1px;background:#ffffff38}.cover-index{position:absolute;left:1rem;top:50%;z-index:5;color:#ffffff59;font-size:.58rem;font-weight:700;letter-spacing:.15em;writing-mode:vertical-rl;transform:rotate(180deg)}.motion-enabled .title-line>span{animation:title-enter .82s cubic-bezier(.16,1,.3,1) both}.motion-enabled .title-line:nth-child(2)>span{animation-delay:.1s}.motion-enabled .portrait-curtain{animation:portrait-wipe .9s cubic-bezier(.7,0,.2,1) both}@keyframes title-enter{0%{transform:translateY(108%)}to{transform:translateY(0)}}@keyframes portrait-wipe{0%{transform:scaleX(1);transform-origin:left}48%{transform:scaleX(1);transform-origin:right}to{transform:scaleX(0);transform-origin:right}}.section-kicker{margin:0;color:var(--red-dark);font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.15em}.origin{width:var(--page);margin:0 auto;padding:clamp(6rem,11vw,11rem) 0;display:grid;grid-template-columns:.45fr 2.2fr .9fr;gap:clamp(2rem,5vw,5rem);align-items:start}.origin-label{display:flex;justify-content:space-between;padding-top:.55rem;border-top:3px solid var(--ink);font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.11em}.origin-main h2{max-width:20ch;margin:1.2rem 0 3rem;font-family:var(--serif);font-size:clamp(3rem,5vw,5.7rem);font-weight:500;line-height:.98;letter-spacing:-.04em}.origin-copy{max-width:51rem;margin-left:auto;display:grid;grid-template-columns:1fr 1fr;gap:2.5rem}.origin-copy p{margin:0;color:var(--muted);font-family:var(--serif);font-size:1.02rem;line-height:1.7}.origin blockquote{margin:5rem 0 0;padding:1.5rem 0 0;border-top:1px solid var(--line)}.origin blockquote>span{display:block;height:2.6rem;color:var(--red);font-family:var(--serif);font-size:4rem;line-height:1}.origin blockquote p{margin:0;font-family:var(--serif);font-size:1.2rem;font-style:italic;line-height:1.45}.practice{padding:clamp(6rem,10vw,10rem) max(1.5rem,calc((100vw - 88rem)/2));background:var(--white);border-top:1px solid var(--line)}.practice-header{display:grid;grid-template-columns:1.5fr .75fr;gap:clamp(3rem,8vw,9rem);align-items:end;margin-bottom:clamp(4rem,7vw,7rem)}.practice-header h2,.career-header h2,.notes>header h2,.education-heading h2,.connect h2{margin:1rem 0 0;font-family:var(--serif);font-size:clamp(3rem,5.2vw,5.8rem);font-weight:500;line-height:.96;letter-spacing:-.045em}.practice-header>p{margin:0;color:var(--muted);font-family:var(--serif);font-size:1.08rem;line-height:1.62}.practice-list{border-top:3px solid var(--ink)}.practice-row{position:relative;display:grid;grid-template-columns:.35fr .8fr 1.35fr 1fr;gap:1.5rem;align-items:start;padding:2.6rem 0;border-bottom:1px solid var(--line)}.practice-number,.practice-label{margin:0;color:var(--muted);font-size:.64rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.practice-row h3{margin:0;font-family:var(--serif);font-size:clamp(2rem,3vw,3.35rem);font-weight:500;line-height:1;letter-spacing:-.035em}.practice-body{margin:0;color:var(--muted);font-family:var(--serif);line-height:1.62}.practice-rule{position:absolute;left:0;right:100%;bottom:-1px;height:3px;background:var(--red);transition:right .65s cubic-bezier(.16,1,.3,1)}.practice-row.entered .practice-rule,.practice-row:hover .practice-rule{right:0}.career{padding:clamp(6rem,10vw,10rem) max(1.5rem,calc((100vw - 88rem)/2));background:#d9d9d2}.career-header{display:grid;grid-template-columns:.42fr 1.55fr .8fr;gap:clamp(2rem,5vw,5rem);align-items:end;margin-bottom:5rem}.career-header h2{margin:0;max-width:12ch;font-size:clamp(3rem,4.8vw,5.4rem)}.career-header>p:last-child{margin:0;color:#54584f;font-family:var(--serif);line-height:1.65}.career-layout{position:relative;padding-left:3.8rem}.career-track{position:absolute;left:.75rem;top:0;bottom:0;width:2px;background:#1011102e}.career-track span{display:block;width:100%;height:100%;background:var(--red);transform:scaleY(0);transform-origin:top;will-change:transform}.career-list{margin:0;padding:0;list-style:none;border-top:3px solid var(--ink)}.career-item{position:relative;display:grid;grid-template-columns:.32fr .7fr 1.05fr 1.25fr;gap:1.5rem;align-items:start;padding:2rem 0;border-bottom:1px solid rgba(16,17,16,.25);transition:transform .5s cubic-bezier(.16,1,.3,1),opacity .5s ease}.motion-enabled .career-item:not(.entered){transform:translate(18px)}.career-marker{position:absolute;left:-3.8rem;top:1.7rem;width:1.6rem;height:1.6rem;display:grid;place-items:center;border:2px solid var(--ink);border-radius:50%;background:#d9d9d2}.career-marker span{font-size:.52rem;font-weight:800}.career-period>span{display:block;margin-bottom:.65rem;color:#555a51;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em}.career-period strong{display:inline-block;padding-bottom:.2rem;border-bottom:2px solid var(--red);font-size:.58rem;text-transform:uppercase;letter-spacing:.1em}.career-period strong.completed{border-color:#10111042;color:#62665e}.career-role h3{margin:0 0 .35rem;font-family:var(--serif);font-size:clamp(1.5rem,2.2vw,2.35rem);font-weight:600;line-height:1}.career-role p{margin:0;color:var(--red-dark);font-size:.64rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.career-note{margin:0;color:#4f534c;font-family:var(--serif);line-height:1.58}.notes{display:grid;grid-template-columns:.75fr 1.6fr;gap:clamp(3rem,8vw,9rem);padding:clamp(6rem,10vw,10rem) max(1.5rem,calc((100vw - 88rem)/2));background:var(--red);color:#fff}.notes>header{position:sticky;top:3rem;align-self:start}.notes .section-kicker{color:#ffffffb3}.notes>header h2{max-width:8ch;font-size:clamp(3rem,4.5vw,5rem)}.notes-list{margin:0;padding:0;list-style:none;border-top:2px solid white}.notes-list li{display:grid;grid-template-columns:3rem 1fr 1fr;gap:1.5rem;padding:2.2rem 0;border-bottom:1px solid rgba(255,255,255,.38);transition:transform .5s cubic-bezier(.16,1,.3,1)}.motion-enabled .notes-list li:not(.entered){transform:translate(16px)}.notes-list li>span{font-family:var(--serif);font-size:1.2rem;font-style:italic}.notes-list h3{margin:0;font-family:var(--serif);font-size:clamp(1.6rem,2.5vw,2.6rem);font-weight:600;line-height:1.05}.notes-list p{margin:0;color:#ffffffbd;font-family:var(--serif);line-height:1.6}.education{display:grid;grid-template-columns:.85fr 1.6fr;gap:clamp(3rem,8vw,9rem);padding:clamp(6rem,10vw,10rem) max(1.5rem,calc((100vw - 88rem)/2));background:var(--ink);color:#fff}.education .section-kicker{color:var(--red)}.education-heading h2{max-width:10ch;font-size:clamp(2.8rem,3.7vw,4rem)}.education-content{display:grid;grid-template-columns:1fr 1fr;gap:3rem}.education-column>h3{margin:0;padding-bottom:1rem;border-bottom:2px solid white;color:#ffffffad;font-size:.64rem;text-transform:uppercase;letter-spacing:.14em}.education-column article{padding:1.5rem 0;border-bottom:1px solid rgba(255,255,255,.25)}.education-column h4{margin:0 0 .5rem;font-family:var(--serif);font-size:clamp(1.35rem,2vw,1.95rem);font-weight:600;line-height:1.12}.education-column article>p:last-child{margin:0;color:#ffffff9e;font-family:var(--serif)}.education-period{margin:0 0 .7rem;color:var(--red);font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em}.connect{min-height:70svh;display:grid;grid-template-columns:.3fr 2fr .4fr;gap:2rem;align-items:center;padding:clamp(6rem,11vw,10rem) max(1.5rem,calc((100vw - 88rem)/2));background:var(--paper)}.connect-index,.connect-place{margin:0;color:var(--muted);font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.connect-index{align-self:start;padding-top:.6rem;border-top:3px solid var(--ink)}.connect h2{max-width:10ch;margin-bottom:1.6rem;font-size:clamp(3.8rem,6.8vw,7.4rem)}.connect>div>p:not(.section-kicker){max-width:34rem;color:var(--muted);font-family:var(--serif);font-size:1.1rem;line-height:1.6}.connect a{display:inline-flex;align-items:center;gap:.7rem;margin-top:1rem;padding:.85rem 1rem;border:2px solid var(--ink);background:var(--ink);color:#fff;font-size:.7rem;font-weight:800;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;transition:background-color .18s ease,color .18s ease}.connect a:hover{background:var(--red);border-color:var(--red)}.connect-place{justify-self:end;align-self:end;line-height:1.6;text-align:right}.site-footer{min-height:72px;padding:0 max(1.5rem,calc((100vw - 88rem)/2));display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);background:var(--paper);color:var(--muted);font-size:.64rem;text-transform:uppercase;letter-spacing:.1em}.site-footer a{color:var(--ink);font-weight:800;text-decoration:none}.site-footer p{margin:0}.menu-scrim[hidden]{display:none}.menu-scrim{position:fixed;inset:0;z-index:80;background:#101110a6}.mobile-menu{position:fixed;inset:0 0 0 auto;z-index:90;width:min(90vw,27rem);padding:1.5rem;background:var(--red);color:#fff;transform:translate(105%);transition:transform .26s cubic-bezier(.16,1,.3,1);visibility:hidden}.mobile-menu.open{transform:none;visibility:visible}.drawer-topline{display:flex;justify-content:space-between;padding-bottom:.8rem;border-bottom:1px solid rgba(255,255,255,.45);font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.menu-close{display:block;margin:1rem 0 0 auto;padding:.5rem 0;border:0;background:transparent;color:#fff;font-size:.68rem;font-weight:800;text-transform:uppercase}.mobile-menu nav{display:grid;gap:.2rem;margin-top:2.5rem}.mobile-menu nav a{width:fit-content;padding:.3rem 0;font-size:clamp(2.5rem,12vw,4rem);font-weight:800;line-height:1;letter-spacing:-.055em;text-decoration:none;text-transform:uppercase}.mobile-menu>p{position:absolute;left:1.5rem;right:1.5rem;bottom:1.5rem;max-width:20rem;margin:0;color:#ffffffb8;font-family:var(--serif);line-height:1.5}@media(max-width:1080px){.origin{grid-template-columns:.4fr 2.1fr}.origin blockquote{grid-column:2;max-width:30rem;margin-top:0}.career-header{grid-template-columns:.35fr 1.65fr}.career-header>p:last-child{grid-column:2}}@media(max-width:960px){:root{--page: min(100% - 2rem, 88rem)}.masthead{height:70px;grid-template-columns:1fr auto}.desktop-nav,.header-link{display:none}.menu-button{justify-self:end;display:flex;align-items:center;gap:.6rem;padding:.45rem 0;border:0;background:transparent;color:var(--ink);font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.menu-lines{display:grid;gap:5px}.menu-lines i{display:block;width:22px;height:2px;background:var(--red)}.cover{grid-template-columns:1fr;grid-template-rows:auto auto auto}.cover-copy{padding:5.5rem 1rem 4rem}.cover-portrait{min-height:48rem;transform:none}.hero-portrait img{min-height:48rem;object-position:center 24%}.cover-index{display:none}.origin{grid-template-columns:1fr}.origin blockquote{grid-column:auto}.practice-header,.career-header,.notes,.education{grid-template-columns:1fr}.career-header>p:last-child{grid-column:auto}.notes>header{position:static}}@media(max-width:700px){.masthead{padding-inline:1rem}.brand-location{display:none}.cover-copy{padding-top:4.4rem}.cover-overline{flex-direction:column;gap:.3rem}.cover-overline span+span:before{display:none}.cover h1{max-width:10ch;font-size:clamp(3.35rem,14.5vw,4.9rem);line-height:.93}.cover-intro{font-size:1rem}.cover-actions{align-items:flex-start;flex-direction:column}.cover-portrait{min-height:33rem}.hero-portrait img{min-height:33rem;height:33rem}.portrait-credit{left:.8rem;right:.8rem;bottom:.8rem}.cover-route{min-height:auto;padding:1.3rem 1rem;align-items:flex-start;flex-direction:column;gap:.45rem}.cover-route i{width:2rem;flex:none}.origin,.practice,.career,.notes,.education,.connect{padding:5.5rem 1rem}.origin-main h2{margin-bottom:2rem;font-size:clamp(2.65rem,11.5vw,4rem)}.origin-copy{grid-template-columns:1fr;gap:1rem}.origin blockquote{margin-top:1rem}.practice-header{gap:1.5rem;margin-bottom:3.5rem}.practice-header h2,.career-header h2,.notes>header h2,.education-heading h2{font-size:clamp(2.75rem,12vw,4rem)}.practice-row{grid-template-columns:2.3rem 1fr;gap:.75rem 1rem;padding:2rem 0}.practice-label{align-self:center}.practice-row h3,.practice-body{grid-column:2}.practice-row h3{font-size:2.15rem}.career-header{gap:1.2rem;margin-bottom:3.5rem}.career-layout{padding-left:2.5rem}.career-track{left:.55rem}.career-item{grid-template-columns:1fr;gap:.85rem;padding:1.7rem 0}.career-marker{left:-2.5rem;width:1.2rem;height:1.2rem}.career-marker span{display:none}.career-role h3{font-size:2rem}.notes{gap:3rem}.notes-list li{grid-template-columns:2rem 1fr;gap:.8rem 1rem}.notes-list p{grid-column:2}.education{gap:3rem}.education-heading h2{max-width:none;font-size:clamp(2.5rem,12.5vw,3.8rem)}.education-content{grid-template-columns:1fr;gap:2.5rem}.connect{min-height:auto;grid-template-columns:1fr;gap:3rem}.connect-index{width:7rem}.connect h2{font-size:clamp(3.25rem,14vw,5rem)}.connect-place{justify-self:start;text-align:left}.site-footer{padding:1.5rem 1rem;align-items:flex-start;flex-direction:column;gap:.6rem}}@media(max-width:350px){.menu-button-label{display:none}.cover h1{font-size:3.1rem}.cover-portrait,.hero-portrait img{min-height:29rem;height:29rem}.practice-header h2,.career-header h2,.notes>header h2{font-size:2.6rem}.education-heading h2{font-size:2.45rem}.connect h2{font-size:3rem}}@media(max-width:700px){html{scroll-padding-top:4.5rem}.masthead{height:64px}.brand-name{font-size:.78rem}.menu-button{min-width:48px;min-height:48px;justify-content:flex-end}.cover-copy{padding:3rem 1rem 2.75rem}.cover-overline{margin-bottom:1.25rem;flex-direction:row;gap:.6rem;font-size:.56rem;line-height:1.4}.cover-overline span+span:before{display:inline;margin-right:.6rem}.cover h1{max-width:none;margin-bottom:1.4rem;font-size:clamp(2.35rem,10.8vw,3rem);line-height:.94}.cover-intro{max-width:35rem;margin-bottom:1.5rem;font-size:.96rem;line-height:1.55}.cover-actions{flex-direction:row;flex-wrap:nowrap;gap:.65rem}.cover-actions a{min-height:46px;padding:.65rem .78rem;font-size:.6rem;letter-spacing:.075em;white-space:nowrap}.cover-portrait,.hero-portrait img{min-height:clamp(27rem,125vw,33rem);height:clamp(27rem,125vw,33rem)}.hero-portrait img{object-position:center 22%}.cover-route{min-height:64px;padding:.9rem 1rem;flex-direction:row;align-items:center;justify-content:space-between;gap:.65rem;font-size:.52rem;line-height:1.35}.cover-route i{display:none}.cover-route span{flex:1;text-align:center}.cover-route span:first-child{text-align:left}.cover-route span:last-child{text-align:right}.origin,.practice,.career,.notes,.education,.connect{padding-top:4.5rem;padding-bottom:4.5rem}.origin-main h2{margin-top:.9rem}.origin blockquote{padding-top:1.2rem}.practice-header,.career-header{margin-bottom:3rem}.practice-row{padding:1.7rem 0}.career-item{padding:1.55rem 0}.notes{gap:2.5rem}.notes-list li{padding:1.8rem 0}.education{gap:2.5rem}.education-period{line-height:1.45}.connect{gap:2.25rem}.connect a{min-height:48px}.mobile-menu{width:100vw;padding:1.25rem}.drawer-topline{min-height:40px;align-items:center}.menu-close{min-width:64px;min-height:48px;display:flex;align-items:center;justify-content:flex-end}.mobile-menu nav{gap:.15rem;margin-top:1.8rem}.mobile-menu nav a{min-height:48px;display:flex;align-items:center;font-size:clamp(2.05rem,10vw,3.1rem);line-height:1.02}.mobile-menu>p{bottom:1.25rem;font-size:.98rem}}@media(max-width:350px){.cover h1{font-size:2.25rem}.cover-actions{gap:.45rem}.cover-actions a{padding-inline:.62rem;font-size:.56rem}.cover-portrait,.hero-portrait img{min-height:25.5rem;height:25.5rem}.mobile-menu nav a{font-size:2rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.career-item,.notes-list li,.title-line>span,.portrait-curtain{opacity:1!important;transform:none!important}}
