
:root{--paper:#faf9f6;--ink:#252b2b;--muted:#606867;--accent:#843f4c;--rule:#deded6;--tint:#f0eeE8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:17px;line-height:1.75;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:4px}a:hover{color:#56222c;text-decoration:underline}a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}p{margin:0 0 1.15em}h1,h2,h3,h4{margin-top:0;font-weight:400}h1,h2,h3{font-family:Georgia,"Times New Roman",serif}h1{font-size:clamp(42px,5vw,60px);line-height:1.12;letter-spacing:-1.9px;margin-bottom:27px}h2{font-size:29px;line-height:1.35}h3{font-size:25px;line-height:1.4;letter-spacing:-.3px;margin-bottom:10px}h4{font-family:inherit}::selection{background:#e9d7da}.skip{position:absolute;top:-80px;left:16px;background:var(--paper);padding:10px;z-index:10}.skip:focus{top:12px}.site-header{border-bottom:1px solid var(--rule)}.header-inner{max-width:1080px;min-height:104px;margin:auto;padding:20px 28px;display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{color:var(--ink);font-family:Georgia,serif;text-decoration:none;font-size:24px;line-height:1.25}.wordmark span{display:block;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:11px;text-transform:uppercase;letter-spacing:1.4px;color:var(--muted);margin-top:7px}nav{display:flex;gap:32px;align-items:center}nav a{color:var(--muted);font-size:15px;text-decoration:none;padding:8px 0;border-bottom:2px solid transparent}nav a[aria-current=page]{color:var(--accent);border-color:var(--accent)}main{max-width:1024px;margin:auto}.home{padding:72px 28px 70px}.home-grid{display:grid;grid-template-columns:minmax(0,650px) minmax(210px,1fr);gap:72px}.eyebrow,.section-label{font-family:inherit;text-transform:uppercase;letter-spacing:1.6px;font-size:11px;font-weight:600;color:var(--muted);margin-bottom:19px;line-height:1.5}.lead{font-size:21px;line-height:1.6}.introduction>p:not(.eyebrow){max-width:640px}.market-note{font-weight:600;color:var(--accent);padding-top:5px}.actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:28px}.button{display:inline-flex;align-items:center;gap:28px;padding:10px 19px;border:1px solid var(--accent);background:var(--accent);color:#fff;text-decoration:none;font-size:14px;line-height:1.8}.button:hover{background:#642b36;color:#fff;text-decoration:none}.text-link,.paper-download{font-size:14px;font-weight:500}.text-link span{margin-left:7px}.profile-sidebar{padding-top:11px}.sidebar-section{margin-bottom:30px;padding-top:20px;border-top:1px solid var(--rule);font-size:14px;line-height:1.8}.sidebar-section h2{font-family:inherit;text-transform:uppercase;letter-spacing:1.4px;font-size:10px;font-weight:600;margin-bottom:12px;color:var(--muted)}.plain-list{list-style:none;padding:0;margin:0}.sidebar-section address{font-style:normal;color:var(--muted);margin-top:16px;font-size:13px}.home-feature{border-top:1px solid var(--rule);padding-top:28px;margin-top:56px;max-width:850px}.home-feature h2{font-size:26px;max-width:740px;margin-bottom:15px}.home-feature h2 a{text-decoration:none;color:var(--ink)}.home-feature h2 a:hover{color:var(--accent)}.home-feature p:not(.eyebrow){max-width:720px;font-size:15px;color:var(--muted);line-height:1.8}.home-feature .eyebrow{color:var(--accent);margin-bottom:14px}.site-footer{max-width:968px;margin:0 auto;padding:23px 0 30px;border-top:1px solid var(--rule);display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:11px;letter-spacing:.2px}.site-footer a{color:var(--muted)}.content-page{max-width:884px;padding:62px 28px 70px}.page-heading{padding-bottom:32px}.page-heading h1{font-size:48px}.page-intro{font-size:20px;line-height:1.65;max-width:760px;color:#46504e}.research-section{padding-top:28px;border-top:1px solid var(--rule);margin-bottom:36px}.research-section>.section-label{color:var(--accent);margin-bottom:23px}.paper{margin-bottom:33px}.paper:last-child{margin-bottom:0}.paper h3 a{color:var(--ink);text-decoration:none}.paper h3 a:hover{color:var(--accent)}.paper p{font-size:16px;line-height:1.8}.paper .paper-meta,.paper-meta{font-size:13px;color:var(--muted);margin-bottom:14px}.abstract{margin-top:23px}.abstract h4{font-size:12px;font-weight:600;margin-bottom:8px;color:var(--muted)}.abstract p{margin-bottom:0}.file-type{font-size:10px;letter-spacing:1px;border:1px solid var(--rule);padding:2px 5px;margin:0 8px}.featured-paper{border-left:2px solid var(--accent);padding-left:25px;scroll-margin-top:30px}.course-section,.cv-section,.teaching-philosophy{border-top:1px solid var(--rule);padding-top:27px;margin-bottom:36px}.course,.cv-entry{display:flex;justify-content:space-between;gap:30px;padding:20px 0;border-bottom:1px solid var(--rule)}.course:last-child,.cv-entry:last-child{border-bottom:0}.course h3{font-size:23px;margin:0}.course-code{font-size:11px;color:var(--muted);letter-spacing:1.2px;margin:0 0 5px}.course-term,.date{font-size:13px;color:var(--muted);white-space:nowrap;margin:4px 0 0}.current{display:block;text-align:right;font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--accent)}.cv-entry h3{font-size:22px;margin-bottom:7px}.cv-entry p{font-size:15px;margin-bottom:4px}.cv-entry .committee{font-size:13px;max-width:520px}.muted{color:var(--muted)}.teaching-philosophy p{font-size:16px}.cv-section .cv-entry:first-of-type{padding-top:7px}
@media(min-width:1500px){.home{padding-top:88px}}
@media(max-width:800px){.home-grid{grid-template-columns:1fr;gap:36px}.profile-sidebar{display:grid;grid-template-columns:1fr 1.3fr;gap:25px;padding-top:0}.sidebar-section{margin:0}.sidebar-section:last-child{display:none}.home{padding-top:45px}.home-feature{margin-top:40px}.site-footer{margin:0 28px}.header-inner{min-height:94px}nav{gap:23px}.content-page{padding-top:45px}.page-heading h1{font-size:42px}}
@media(max-width:520px){body{font-size:16px}.header-inner{display:block;padding:21px 22px 0}.wordmark{font-size:23px}.wordmark span{font-size:10px}nav{margin-top:20px;justify-content:space-between;gap:12px}nav a{font-size:14px;padding:8px 2px 13px}.home,.content-page{padding:38px 22px 45px}h1{font-size:46px}.lead{font-size:19px}.actions{gap:18px}.profile-sidebar{grid-template-columns:1fr;gap:24px}.sidebar-section address{margin-top:10px}.home-feature h2{font-size:24px}.site-footer{display:block;margin:0 22px;padding-top:21px;font-size:11px}.site-footer>a{display:block;margin-top:8px}.page-heading h1{font-size:39px;letter-spacing:-1.2px}.page-intro{font-size:18px}.featured-paper{padding-left:17px}.paper h3{font-size:24px}.course,.cv-entry{display:block}.course-term,.date{display:block;margin-top:12px}.current{display:inline;margin-left:10px}.cv-entry h3{font-size:21px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{body{background:#fff;color:#000}.site-header,.site-footer,.skip{display:none}main,.content-page{max-width:none;padding:0}.home-grid{display:block}.profile-sidebar{margin-top:25px}a{color:inherit}.paper,.course,.cv-entry{break-inside:avoid}}

/* Portrait uses the original photo; framing is presentation-only. */
.portrait{width:100%;aspect-ratio:4/5;overflow:hidden;margin:0 0 29px;background:#d8e7ef}.portrait img{width:100%;height:100%;object-fit:cover;transform:scale(1.5);transform-origin:32% 62%;display:block}.home-grid{grid-template-columns:minmax(0,620px) minmax(245px,1fr);gap:60px}
@media(max-width:800px){.home-grid{grid-template-columns:1fr}.profile-sidebar{grid-template-columns:240px 1fr;align-items:start}.portrait{grid-row:span 3;margin:0}.sidebar-section:last-child{display:block}}
@media(max-width:520px){.profile-sidebar{grid-template-columns:1fr}.portrait{max-width:300px;grid-row:auto;order:-1;margin-bottom:5px}.home-grid{gap:35px}}

/* Teaching: compact academic course listing, with statement-based context. */
.teaching-page{max-width:884px;padding-top:52px}
.teaching-page .page-heading{padding-bottom:24px}
.teaching-page .page-heading h1{font-size:40px;margin-bottom:22px}
.teaching-intro{font-size:17px;line-height:1.8;max-width:760px;margin-bottom:8px}
.teaching-page .course-section{padding-top:25px;margin-bottom:28px}
.teaching-page .section-label{font-size:13px;text-transform:none;letter-spacing:0;font-weight:600;color:var(--ink);margin-bottom:10px}
.teaching-page .course{padding:16px 0;align-items:baseline}
.teaching-page .course h3{font-family:inherit;font-size:17px;font-weight:500;letter-spacing:0;line-height:1.5}
.teaching-page .course-code{font-size:11px;margin-bottom:3px;letter-spacing:.7px}
.teaching-page .teaching-philosophy{padding-top:24px;margin-bottom:26px}
.teaching-page .teaching-philosophy p{font-size:16px;line-height:1.8}
.teaching-page .teaching-interests p{font-size:15px;color:var(--muted)}
@media(max-width:520px){.teaching-page{padding-top:35px}.teaching-page .page-heading h1{font-size:36px}.teaching-intro{font-size:16px}.teaching-page .course-term{margin-top:6px}}

/* Keep the expanded navigation comfortable on narrow screens. */
nav{flex-wrap:wrap;column-gap:26px;row-gap:4px}
@media(max-width:520px){nav{justify-content:flex-start;column-gap:20px;row-gap:0}nav a{padding-bottom:9px}.header-inner{padding-bottom:9px}}

/* A lead photograph followed by three images at a shared height, without cropping. */
.trip-section{border-top:1px solid var(--rule);padding-top:28px}.trip-photo-set{margin:0}.trip-caption{font-size:13px;color:var(--muted);margin-top:18px}.trip-gallery figure{margin:0;min-width:0}.trip-gallery img{display:block;width:100%;height:auto}.trip-details{display:grid;grid-template-columns:16fr 16fr 9fr;gap:16px;align-items:start;margin-top:16px}.turned-photo{position:relative;aspect-ratio:4/3;overflow:hidden}.trip-gallery .turned-photo img{position:absolute;left:50%;top:50%;width:75%;height:133.333333%;max-width:none;transform:translate(-50%,-50%) rotate(-90deg)}
@media(max-width:600px){.trip-details{grid-template-columns:1fr;gap:20px;margin-top:20px}}
