.reveal-pending{opacity:0;transition:opacity .85s cubic-bezier(.2,.65,.2,1),transform .85s cubic-bezier(.2,.65,.2,1);transform:translateY(16px)}.reveal-pending.reveal-shown{opacity:1;transform:translateY(0)}.topbar{z-index:50;-webkit-backdrop-filter:blur(9px);border-bottom:1px solid var(--line);background:#f5f1e8cc;position:sticky;top:0}.topbar-inner{max-width:var(--maxw);padding:11px var(--pad-x);justify-content:space-between;align-items:center;gap:16px;margin:0 auto;display:flex}.topbar-name{opacity:0;font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink);font-size:12px;font-weight:500;text-decoration:none;transition:opacity .45s}.topbar-name.visible{opacity:1}.topbar-links{align-items:center;gap:clamp(16px,3vw,28px);display:flex}.topbar-link{white-space:nowrap;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink2);border-bottom:1px solid #0000;padding-bottom:2px;font-size:12px;text-decoration:none;transition:color .2s,border-color .2s}.topbar-link:hover{color:var(--ink);border-bottom-color:var(--accent)}.hero-section{max-width:var(--maxw);padding:clamp(52px,10vw,116px) var(--pad-x) clamp(38px,6vw,64px);margin:0 auto;scroll-margin-top:60px}.hero-kicker{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin:0;font-size:clamp(11px,1.4vw,12px)}.hero-h1{font-family:var(--font-serif);letter-spacing:-.022em;max-width:15ch;color:var(--ink);margin:clamp(18px,3vw,30px) 0 0;font-size:clamp(38px,8.4vw,84px);font-weight:400;line-height:1.02}.hero-h1 em{color:var(--accent);font-style:italic}.hero-sub{font-family:var(--font-serif);color:var(--ink2);max-width:50ch;margin:clamp(20px,3vw,30px) 0 0;font-size:clamp(18px,2.4vw,24px);font-weight:300;line-height:1.5}.hero-actions{flex-wrap:wrap;align-items:center;gap:16px 30px;margin-top:clamp(28px,4vw,42px);display:flex}.hero-action{font-family:var(--font-mono);letter-spacing:.05em;color:var(--ink);border-bottom:1px solid var(--line);padding-bottom:3px;font-size:12.5px;text-decoration:none;transition:border-color .2s}.hero-action:hover{border-bottom-color:var(--accent)}.stat-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(158px,1fr));gap:1px;margin-top:clamp(34px,5vw,56px);display:grid}.stat-cell{background:var(--bg);padding:clamp(17px,2.2vw,24px) clamp(15px,2vw,22px)}.stat-value{font-family:var(--font-mono);letter-spacing:-.01em;color:var(--ink);font-size:clamp(21px,3vw,29px);font-weight:500;line-height:1.05}.stat-label{font-family:var(--font-mono);letter-spacing:.03em;text-transform:uppercase;color:var(--ink2);margin-top:9px;font-size:11px;line-height:1.5}.pulled-quote-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.pulled-quote-inner{max-width:var(--maxw);padding:clamp(38px,6vw,72px) var(--pad-x);margin:0 auto}.pulled-quote{font-family:var(--font-serif);letter-spacing:-.012em;max-width:23ch;color:var(--ink);margin:0;font-size:clamp(23px,3.6vw,40px);font-weight:300;line-height:1.28}.pillars-section{max-width:var(--maxw);padding:clamp(48px,8vw,104px) var(--pad-x);flex-direction:column;gap:clamp(50px,8vw,100px);margin:0 auto;display:flex}.pillar{align-items:start;gap:22px;display:grid}.pillar-aside{flex-direction:column;gap:14px;padding-top:5px;display:flex}.pillar-index{font-family:var(--font-serif);color:var(--faint);font-size:clamp(40px,5vw,58px);font-weight:300;line-height:1}.pillar-rule{background:var(--line);width:34px;height:1px}.pillar-facts{flex-direction:column;gap:7px;margin:0;padding:0;list-style:none;display:flex}.pillar-facts li{font-family:var(--font-mono);letter-spacing:.03em;color:var(--ink2);font-size:11.5px}.pillar-takeaway{font-family:var(--font-mono);letter-spacing:.01em;color:var(--accent);font-size:11.5px;line-height:1.5}.pillar-title{font-family:var(--font-serif);letter-spacing:-.015em;margin:0;font-size:clamp(24px,3.4vw,35px);font-weight:400;line-height:1.14}.pillar-prose{font-family:var(--font-serif);color:var(--ink);text-wrap:pretty;max-width:60ch;margin:clamp(15px,2vw,22px) 0 0;font-size:clamp(17px,1.95vw,21px);font-weight:300;line-height:1.62}.record-section{background:var(--panel);border-top:1px solid var(--line)}.record-inner{max-width:var(--maxw);padding:clamp(48px,8vw,100px) var(--pad-x);margin:0 auto}.record-kicker{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin:0;font-size:12px}.record-intro{font-family:var(--font-serif);color:var(--ink);max-width:34ch;margin:clamp(12px,1.6vw,18px) 0 0;font-size:clamp(19px,2.6vw,27px);font-weight:300;line-height:1.4}.record-list{border-top:1px solid var(--line);margin-top:clamp(28px,4vw,46px)}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.pm{transition:transform .28s}details[open] .pm{transform:rotate(45deg)}.record-accordion{border-bottom:1px solid var(--line)}.record-summary{justify-content:space-between;align-items:baseline;gap:18px;padding:clamp(17px,2.2vw,24px) 0;transition:opacity .2s;display:flex}.record-summary:hover{opacity:.72}.record-summary-title{font-family:var(--font-serif);color:var(--ink);font-size:clamp(19px,2.3vw,24px);font-weight:400}.record-summary-role{color:var(--ink2)}.record-summary-meta{flex:none;align-items:baseline;gap:14px;display:flex}.record-summary-dates{font-family:var(--font-mono);letter-spacing:.05em;color:var(--ink2);white-space:nowrap;font-size:11px}.record-summary-plus{font-family:var(--font-mono);color:var(--accent);font-size:17px;line-height:1}.record-body{flex-direction:column;gap:clamp(20px,2.6vw,30px);padding:2px 0 clamp(22px,3vw,32px);display:flex}.record-group-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink2);margin-bottom:12px;font-size:11px}.record-achievements{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.record-achievements li{align-items:baseline;gap:12px;display:flex}.record-marker{color:var(--accent);font-family:var(--font-mono);flex:none;font-size:12px}.record-achievements li span:last-child{font-family:var(--font-serif);color:var(--ink);font-size:clamp(15px,1.7vw,17px);font-weight:300;line-height:1.55}.recrow{border-bottom:1px solid var(--line);gap:8px;padding:clamp(20px,3vw,30px) 0;display:grid}.recrow-meta{font-family:var(--font-mono);letter-spacing:.05em;color:var(--ink2);font-size:11px;line-height:1.6}.recrow-title{font-family:var(--font-serif);color:var(--ink);font-size:clamp(18px,2.1vw,22px);font-weight:400}.recrow-role{color:var(--ink2)}.recrow-prose{font-family:var(--font-serif);color:var(--ink);text-wrap:pretty;max-width:62ch;margin:10px 0 0;font-size:clamp(15px,1.7vw,17px);font-weight:300;line-height:1.58}.recrow-tags{font-family:var(--font-mono);letter-spacing:.03em;color:var(--ink2);margin-top:11px;font-size:11px}.skills-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:clamp(22px,3vw,40px);margin-top:clamp(34px,5vw,58px);display:grid}.skills-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:12px;font-size:11px}.skills-items{font-family:var(--font-serif);color:var(--ink);font-size:clamp(15px,1.7vw,17px);font-weight:300;line-height:1.75}.site-footer{border-top:1px solid var(--line)}.foot{max-width:var(--maxw);padding:clamp(40px,6vw,72px) var(--pad-x) clamp(20px,3vw,28px);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:30px;margin:0 auto;display:flex}.site-footer-name{font-family:var(--font-serif);color:var(--ink);font-size:clamp(22px,3vw,28px);font-weight:400}.site-footer-contact{font-family:var(--font-mono);letter-spacing:.02em;color:var(--ink2);flex-wrap:wrap;gap:8px 16px;margin-top:12px;font-size:12px;display:flex}.site-footer-contact-link{color:var(--ink2);border-bottom:1px solid var(--line);text-decoration:none;transition:color .2s,border-color .2s}.site-footer-contact-link:hover{color:var(--ink);border-bottom-color:var(--accent)}.site-footer-actions{flex-direction:column;align-items:flex-start;gap:11px;display:flex}.site-footer-action{font-family:var(--font-mono);letter-spacing:.05em;color:var(--ink);border-bottom:1px solid var(--line);padding-bottom:3px;font-size:12.5px;text-decoration:none;transition:border-color .2s}.site-footer-action:hover{border-bottom-color:var(--accent)}.site-footer-colophon-wrap{max-width:var(--maxw);padding:0 var(--pad-x) clamp(30px,4vw,44px);margin:0 auto}.site-footer-colophon{font-family:var(--font-mono);letter-spacing:.06em;color:var(--faint);font-size:10.5px}@media (min-width:820px){.pillar{grid-template-columns:186px minmax(0,1fr);column-gap:clamp(40px,5vw,72px)}.recrow{grid-template-columns:184px minmax(0,1fr);column-gap:44px}.foot{flex-wrap:nowrap}}.thesis{padding:var(--space-5) 0 var(--space-4);max-width:42rem}.thesis .kicker{font-family:var(--font-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin:0 0 var(--space-3);font-size:.72rem}.thesis h1{letter-spacing:-.01em;margin:0 0 var(--space-2);text-wrap:balance;font-size:clamp(2rem,5.5vw,3.2rem);font-weight:500;line-height:1.12}.thesis .sub{color:var(--ink-soft);margin:0 0 var(--space-2);font-size:1.1rem;font-style:italic}.thesis .contact{font-family:var(--font-sans);color:var(--ink-soft);letter-spacing:.02em;font-size:.8rem}.chapter{padding:var(--space-4) 0;border-top:1px solid var(--rule)}.chapter>.chapter-title{font-family:var(--font-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin:0 0 var(--space-1);font-size:.72rem}.chapter>.chapter-thesis{margin:0 0 var(--space-3);max-width:var(--measure);text-wrap:balance;font-size:1.25rem;font-weight:500}.evidence{margin:0;padding:0;list-style:none}.evidence li{border-bottom:1px solid var(--rule)}.evidence button.row{all:unset;gap:var(--space-2);cursor:pointer;align-items:baseline;width:100%;padding:.7rem 0;display:flex}.evidence button.row:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.evidence .marker{color:var(--ink-soft);flex:none;width:1rem;font-size:.65rem}.evidence .statement{flex:1;font-size:1rem;line-height:1.5}.evidence .metric{font-family:var(--font-sans);color:var(--accent);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.72rem}.evidence .expanded{background:var(--paper-raise);padding:var(--space-2);color:var(--ink-soft);max-width:var(--measure);margin:0 0 .7rem;font-size:.95rem;line-height:1.6}.evidence li.static .row{cursor:default}.timeline{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:var(--space-3) 0;margin:var(--space-4) 0}.timeline .tl-title{font-family:var(--font-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 var(--space-2);font-size:.72rem}.timeline ol{gap:var(--space-3);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.timeline li{min-width:8rem}.timeline .year{font-family:var(--font-sans);font-size:.85rem;font-weight:600;display:block}.timeline .label{color:var(--ink-soft);font-size:.9rem}.interlude{padding:var(--space-4) 0;text-align:center;color:var(--ink-soft);font-size:1.5rem;font-style:italic}.interlude strong{color:var(--accent);font-style:normal;font-weight:500}.closing{border-top:1px solid var(--rule);padding:var(--space-4) 0 var(--space-5)}.closing p{color:var(--ink-soft);max-width:var(--measure)}.closing .pdf-link{font-family:var(--font-sans);font-size:.9rem}
