@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400;1,500&display=swap";:root{--paper:#f5f1e9;--ink:#29251f;--muted:#746d63;--accent:#a94d38;--line:#d7d0c5;--light:#e7ded0;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 var(--sans)}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.045em}h1 em,h2 em{color:var(--accent);font-weight:400}h2{font-size:clamp(2.8rem,5.2vw,5.3rem);line-height:1.09}p{max-width:68ch}.container{width:min(1400px,calc(100% - 88px));margin-inline:auto}.skip-link{position:absolute;left:10px;top:-60px;background:var(--ink);color:#fff;padding:10px;z-index:20}.skip-link:focus{top:10px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.73rem;font-weight:700}.asterisk{color:var(--accent);font-size:1.4rem;vertical-align:-.15em;margin-right:.45rem}.site-header{border-bottom:1px solid var(--line)}.header-inner{min-height:82px;display:flex;align-items:center;gap:50px}.wordmark{font-family:var(--serif);font-size:1.65rem;letter-spacing:-.06em;white-space:nowrap}.wordmark span{font-style:italic;color:var(--accent);margin-left:.16rem}.wordmark i{font-family:var(--sans);font-style:normal;font-size:.85rem;margin-left:.5rem;color:var(--accent)}nav{display:flex;gap:32px;margin-left:auto}nav a,.header-contact{font-size:.84rem;font-weight:700}nav a:hover,.header-contact:hover,.text-link:hover,.back-link:hover{color:var(--accent)}.header-contact{border-bottom:1px solid var(--ink);padding-bottom:3px;white-space:nowrap}.hero{min-height:750px;display:grid;grid-template-columns:1.22fr .78fr;gap:6%;align-items:center;position:relative;padding-top:50px;padding-bottom:80px}.hero-copy{padding-bottom:18px}.hero h1{font-size:clamp(5rem,9.1vw,9.7rem);line-height:.93;margin:32px 0 42px}.hero-intro{font-size:clamp(1.12rem,1.5vw,1.42rem);line-height:1.5;max-width:600px}.hero-actions{display:flex;gap:28px;align-items:center;margin-top:36px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:14px 20px;min-height:50px;font-size:.85rem;font-weight:700;transition:background .2s,color .2s}.button-dark{background:var(--ink);color:var(--paper)}.button-dark:hover{background:var(--accent)}.button-outline{border:1px solid var(--ink)}.button-outline:hover{background:var(--ink);color:var(--paper)}.text-link{border-bottom:1px solid var(--ink);font-size:.85rem;font-weight:700;padding-bottom:4px}.hero-footnote{margin-top:74px;text-transform:uppercase;letter-spacing:.12em;font-size:.68rem;color:var(--muted);font-weight:700}.hero-photo-wrap{position:relative;height:min(650px,57vw);min-height:470px;background:#d5c5b5;overflow:hidden}.hero-photo{width:100%;height:100%;object-fit:cover;object-position:center 20%}.hero-photo-label{position:absolute;right:0;bottom:0;background:var(--paper);padding:16px 23px;font-size:.71rem;line-height:1.5;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.hero-index{position:absolute;right:0;bottom:35px;color:var(--muted);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase}.section{padding:100px 0;border-top:1px solid var(--line)}.section-topline{display:flex;justify-content:space-between;align-items:center;padding-bottom:56px;color:var(--muted);font-size:.78rem}.section-topline .eyebrow{color:var(--accent)}.section-heading-row{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:55px}.section-heading-row p{max-width:310px;color:var(--muted)}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:34px}.filters button{border:1px solid var(--line);background:transparent;padding:9px 18px;border-radius:30px;color:var(--ink);cursor:pointer;font-size:.78rem;font-weight:700}.filters button[aria-pressed=true]{color:var(--paper);background:var(--ink);border-color:var(--ink)}.filters button:hover:not([aria-pressed=true]){border-color:var(--accent);color:var(--accent)}.filters button span{font-size:.63rem;vertical-align:top;margin-left:6px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:24px;row-gap:60px}.project-filter-item[hidden]{display:none}.project-image{display:block;position:relative;aspect-ratio:1.16;overflow:hidden;background:var(--light)}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.project-image:hover img,.project-image:focus img{transform:scale(1.04)}.project-arrow{position:absolute;right:14px;top:14px;background:var(--paper);width:36px;height:36px;display:grid;place-items:center;font-size:1.2rem}.project-meta{display:flex;justify-content:space-between;margin:16px 0 6px;text-transform:uppercase;letter-spacing:.13em;font-size:.65rem;font-weight:700;color:var(--accent)}.project-card h3{font:400 1.8rem/1.15 var(--serif);letter-spacing:-.03em}.project-card h3 a:hover{color:var(--accent)}.project-card p{color:var(--muted);font-size:.88rem;margin-top:9px}.project-count{text-align:right;color:var(--muted);font-size:.75rem;margin-top:28px}.profile-section{background:#e9e1d5}.profile-grid,.teaching-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%}.profile-grid h2,.teaching-grid h2{margin-top:36px}.profile-copy{padding-top:43px}.profile-copy p,.teaching-grid p{margin-bottom:24px;color:#4d4740}.lead{font:400 clamp(1.4rem,2.15vw,2.25rem)/1.35 var(--serif);letter-spacing:-.025em;color:var(--ink)!important}.skill-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}.skill-list span{border:1px solid #bfb5a8;padding:8px 13px;font-size:.78rem;font-weight:700}.teaching-section{background:#f0e7da}.teaching-links{display:flex;flex-direction:column;align-items:start;gap:9px;margin:30px 0 16px}.teaching-links a{border-bottom:1px solid var(--ink);font-size:.84rem;font-weight:700}.teaching-links a:hover{color:var(--accent)}.small-note{font-size:.75rem;color:var(--muted)!important}.career-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%}.career-grid h2{margin-bottom:45px}.experience-item{display:grid;grid-template-columns:150px 1fr;gap:30px;border-top:1px solid var(--line);padding:25px 0 30px}.experience-period{font-size:.73rem;color:var(--accent);font-weight:700;line-height:1.5}.experience-item h3{font:400 1.52rem/1.2 var(--serif)}.experience-role{font-size:.82rem;font-weight:700;margin:5px 0 10px}.experience-item p:last-child{font-size:.85rem;color:var(--muted)}.education-grid{border-top:1px solid var(--line);margin-top:75px;padding-top:35px;display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.education-grid h3{font-size:.75rem;text-transform:uppercase;letter-spacing:.13em;margin-bottom:25px}.education-grid p{font-size:.82rem;margin:0 0 20px;color:var(--muted)}.education-grid strong{color:var(--ink)}.contact-section{background:var(--accent);color:#fff7ed;padding:110px 0 120px}.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:10%}.contact-grid h2{margin-top:30px}.contact-grid h2 em{color:#f0c6af}.contact-details{display:flex;flex-direction:column;align-items:start;gap:12px;justify-content:end}.contact-details p{font:400 1.55rem/1.35 var(--serif);margin-bottom:22px}.contact-email{font:400 clamp(1.3rem,2vw,2rem)/1.2 var(--serif);border-bottom:1px solid currentColor;padding-bottom:5px;word-break:break-word}.contact-details a:not(.contact-email),.contact-details span{font-size:.83rem}.site-footer{padding:26px 0}.footer-inner{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}.footer-inner a:hover{color:var(--accent)}.project-detail{padding-top:55px;padding-bottom:100px}.back-link{font-size:.8rem;font-weight:700}.project-detail-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;padding:85px 0 52px}.project-detail-heading .eyebrow{color:var(--accent)}.project-detail h1{font-size:clamp(4rem,9vw,8rem);line-height:1;margin-top:18px}.project-detail-heading>p{font:400 clamp(1.2rem,2vw,1.8rem)/1.4 var(--serif);max-width:430px}.detail-cover{background:var(--light)}.detail-cover img{width:100%;max-height:760px;object-fit:contain}.detail-body{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:45px 0 65px;border-bottom:1px solid var(--line)}.detail-body .eyebrow{color:var(--accent)}.detail-body p{font-size:1.1rem;margin-top:15px}.detail-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:45px}.detail-gallery figure{background:var(--light);display:grid;place-items:center}.detail-gallery img{width:100%;height:100%;max-height:540px;object-fit:contain}.detail-next{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:90px;padding-top:24px}.detail-next span{font-size:.75rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}.detail-next a{font:400 2rem var(--serif)}.detail-next a:hover{color:var(--accent)}@media(max-width:1000px){.container{width:min(100% - 48px,1400px)}.header-inner{gap:25px}nav{gap:18px}.hero{min-height:680px}.hero h1{font-size:clamp(4.8rem,9vw,7rem)}.project-grid{grid-template-columns:repeat(2,1fr)}.experience-item{grid-template-columns:110px 1fr;gap:18px}}@media(max-width:700px){.container{width:calc(100% - 36px)}.site-header .header-inner{min-height:76px;flex-wrap:wrap;gap:0;padding:15px 0}.wordmark{width:100%}.header-contact{display:none}nav{margin:8px 0 0;gap:18px;overflow:auto}nav a{font-size:.73rem}.hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:55px 0 70px;gap:38px}.hero h1{font-size:clamp(4.1rem,17vw,6rem);margin:20px 0 30px}.hero-intro{font-size:1.08rem}.hero-footnote{display:none}.hero-photo-wrap{height:460px;min-height:0}.hero-index{display:none}.section{padding:70px 0}.section-topline{padding-bottom:30px}.section-heading-row,.profile-grid,.teaching-grid,.career-grid,.contact-grid{display:block}.section-heading-row p{margin-top:20px}.project-grid{grid-template-columns:1fr;row-gap:45px}.project-image{aspect-ratio:1.25}.profile-grid h2,.teaching-grid h2{margin:22px 0 32px}.profile-copy{padding-top:0}.career-grid h2{margin-bottom:25px}.experience-item{grid-template-columns:1fr;gap:8px}.education-grid{grid-template-columns:1fr;gap:22px;margin-top:45px}.contact-section{padding:70px 0}.contact-details{margin-top:50px}.footer-inner{flex-wrap:wrap}.project-detail-heading{display:block;padding:60px 0 30px}.project-detail-heading>p{margin-top:25px}.detail-body,.detail-gallery{grid-template-columns:1fr}.detail-next a{font-size:1.4rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.project-image img{transition:none}}
