:root{--maroon: #8a100b;--maroon-dark: #5d0906;--paper: #fffefa;--field: #d0d0d0;--ink: #151515;--muted: #585858;--rule: #a6a6a6;--link: #0000ee;--visited: #551a8b;--gold: #e3b923}*{box-sizing:border-box}html{min-width:320px;min-height:100%;background:var(--field);overflow-y:scroll;scrollbar-gutter:stable}body{margin:0;padding:18px 12px 28px;color:var(--ink);background:repeating-linear-gradient(0deg,rgba(255,255,255,.16) 0,rgba(255,255,255,.16) 1px,transparent 1px,transparent 4px),var(--field);font:15px/1.58 Georgia,Times New Roman,serif}a{color:var(--link);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.12em}a:visited{color:var(--visited)}a:hover,a:focus-visible{color:var(--maroon);background:#fff4b8}#page{width:min(100%,820px);min-height:calc(100vh - 46px);margin:0 auto;background:var(--paper);border:1px solid #747474;box-shadow:5px 5px #0000002e}.site-header{border-top:8px solid var(--maroon)}.eyebrow{margin:0;padding:3px 18px 2px;color:#fff;background:var(--maroon-dark);font:700 10px/1.5 Verdana,Geneva,sans-serif;letter-spacing:.08em;text-transform:uppercase}.identity{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:16px 24px 13px;background:#f7f3e9;border-bottom:1px solid #b7a989}h1{margin:0;color:var(--maroon);font-size:clamp(27px,5vw,38px);line-height:1.05;font-weight:400;letter-spacing:-.025em}.subtitle{margin:6px 0 0;color:#373737;font-size:14px;font-style:italic}.affiliation{min-width:205px;margin:0;padding-left:13px;border-left:3px double var(--maroon);color:#303030;font:11px/1.45 Verdana,Geneva,sans-serif;text-align:right}nav{display:flex;flex-wrap:wrap;gap:0;padding:6px 16px;background:#e7e7e7;border-top:1px solid #fff;border-bottom:1px solid #777;font:11px/1.5 Verdana,Geneva,sans-serif}nav a,nav strong{display:inline-block;padding:1px 10px;border-right:1px solid #aaa}nav a:first-child,nav strong:first-child{border-left:1px solid #aaa}nav strong{color:#fff;background:var(--maroon);font-weight:400}nav a:visited{color:var(--link)}main{padding:12px 25px 26px}section{clear:both;margin:0 0 26px}h2{margin:22px 0 10px;padding:3px 7px 4px;color:var(--maroon);background:#f2eee4;border-top:1px solid var(--maroon);border-bottom:1px solid #c8baa0;font-size:18px;line-height:1.25}h3{margin:0;color:var(--maroon-dark);font-size:16px;line-height:1.3}p{margin:8px 0 11px}.intro:after{display:table;clear:both;content:""}.portrait{float:right;width:226px;margin:2px 0 18px 24px;padding:7px 7px 4px;background:#eee9dc;border:1px solid #82775f}.portrait img{display:block;width:210px;height:170px;object-fit:cover;object-position:50% 31%;border:1px solid #403b34;filter:saturate(.88) contrast(1.04)}.portrait p{margin:4px 1px 0;color:var(--muted);font:9px/1.4 Verdana,Geneva,sans-serif;text-align:right}.news-list,.experience-list,.directory-list{margin:0}.news-list>div,.experience-list>div,.directory-list>div{display:grid;grid-template-columns:92px 1fr;gap:12px;padding:5px 3px;border-bottom:1px dotted #bbb}.news-list dt,.experience-list dt{color:var(--maroon-dark);font:700 10px/1.7 Verdana,Geneva,sans-serif}.news-list dd,.experience-list dd,.directory-list dd{margin:0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;padding:5px 8px 2px}address{font-style:normal}.link-list,.plain-list{margin:0;padding-left:20px}.link-list li,.plain-list li{margin:2px 0}.columns{columns:2;column-gap:35px}.bibliography{margin:0;padding:0;list-style:none;counter-reset:papers 3}.publication-heading{margin:16px 0 9px;padding-bottom:3px;border-bottom:1px dotted var(--rule);font-size:15px}.coauthored-bibliography{counter-reset:papers 2}.bibliography li{position:relative;margin:0 0 20px;padding:0 0 0 37px;counter-increment:papers -1}.bibliography li:before{position:absolute;top:0;left:0;color:var(--muted);content:"[" counter(papers) "]";font:10px/1.9 Verdana,Geneva,sans-serif}.year{display:inline-block;margin-right:6px;padding:1px 5px;color:#fff;background:var(--maroon);font:700 9px/1.5 Verdana,Geneva,sans-serif;vertical-align:2px}.resource-links{display:block;margin-top:4px;font:10px/1.5 Verdana,Geneva,sans-serif}.experience-list>div{grid-template-columns:112px 1fr;padding-top:8px;padding-bottom:8px}.experience-list dd span{color:#424242;font-size:14px}.dated-list,.writing-list{margin:0;padding:0;list-style:none}.dated-list li,.writing-list li{display:grid;grid-template-columns:112px 1fr;gap:12px;padding:7px 3px;border-bottom:1px dotted #bbb}.dated-list time,.writing-list time{color:var(--maroon-dark);font:700 10px/1.7 Verdana,Geneva,sans-serif}.project{display:grid;grid-template-columns:40px 1fr;gap:10px;padding:13px 4px 15px;border-bottom:1px dotted #aaa}.project-number{margin:0;color:#9c917c;font:700 18px/1.1 Georgia,serif}.project p{margin-top:5px;margin-bottom:5px}.meta{color:var(--muted);font:9px/1.5 Verdana,Geneva,sans-serif;text-transform:uppercase;letter-spacing:.04em}.note{margin:25px 0 0;padding:8px 10px;background:#fff9d7;border:1px solid #bbad66;font-size:13px}.writing-list li{grid-template-columns:125px 1fr}.writing-list p{margin:3px 0 0}.directory-list>div{grid-template-columns:210px 1fr;padding-top:7px;padding-bottom:7px}.directory-list dt{font-weight:700}footer{padding:9px 24px 12px;color:#555;background:#ededed;border-top:3px double #888;font:9px/1.45 Verdana,Geneva,sans-serif}footer p{margin:2px 0}@media(max-width:620px){body{padding:0;background:var(--paper)}#page{width:100%;min-height:100vh;border:0;box-shadow:none}.identity{align-items:flex-start;padding:17px 16px 14px}.affiliation{min-width:auto;font-size:9px}nav{padding-right:8px;padding-left:8px}nav a,nav strong{padding-right:7px;padding-left:7px}main{padding-right:16px;padding-left:16px}.portrait{float:none;width:196px;margin:0 0 16px}.portrait img{width:180px;height:146px}.columns{columns:1}.contact-grid{grid-template-columns:1fr;gap:12px}.directory-list>div{grid-template-columns:1fr;gap:2px}}@media(max-width:430px){.identity{display:block}.affiliation{margin-top:13px;padding-top:6px;padding-left:0;border-top:1px dotted #998e75;border-left:0;text-align:left}.news-list>div,.experience-list>div,.dated-list li,.writing-list li{grid-template-columns:1fr;gap:1px}}@media print{html,body{background:#fff}body{padding:0;font-size:11pt}#page{width:100%;border:0;box-shadow:none}nav{display:none}a{color:#000}}
