:root{--bg:#f5f5f2;--ink:#292b29;--muted:#65675f;--gold:#aa8e59;--line:#dcded7;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}a:hover{color:#816a40}button,input,textarea,select{font:inherit}button,a,input,textarea,select,summary{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:6px}header{padding:24px 3.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px;background:var(--bg);position:relative;z-index:5}.brand{font-size:25px;letter-spacing:-1px;display:flex;align-items:center;font-weight:600;line-height:1.25}.brand small{display:block;font-size:8px;letter-spacing:1.2px;margin-top:6px;font-weight:400}.gold,em{color:var(--gold)}.monogram{display:grid;place-items:center;background:#373936;color:#c3ab7b;font-family:Georgia,serif;font-style:italic;font-size:42px;font-weight:400;width:48px;height:48px;margin-right:12px}nav{display:flex;align-items:center;gap:25px;font-size:12px;font-weight:600}nav a{position:relative}nav a[aria-current=page]:after{content:'';height:1px;background:var(--gold);position:absolute;bottom:-8px;left:0;right:0}.navcontact{padding:10px 18px;border:1px solid #b4b7af}.menu{display:none}.skip{position:absolute;left:20px;top:-100px;background:white;z-index:20;padding:12px}.skip:focus{top:10px}main>section{padding:90px max(4.3%,calc((100vw - 1400px)/2));}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(45px,4.6vw,76px);letter-spacing:-3.5px;font-weight:500;line-height:1.09;margin:28px 0 30px}h2{font-size:clamp(34px,3.4vw,52px);font-weight:500;line-height:1.15;letter-spacing:-1.8px;margin:20px 0 25px}h3{font-size:24px;font-weight:500;line-height:1.25;letter-spacing:-.5px;margin-bottom:18px}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-1.5px}p{color:var(--muted);line-height:1.85}b{font-weight:600}.lead{font-size:18px;max-width:600px;line-height:1.8}.eyebrow{font-size:10px;font-weight:600;letter-spacing:1.7px;display:block;line-height:1.7}.dot{display:inline-block;height:6px;width:6px;border-radius:50%;background:var(--ink);margin-right:10px}.hero{display:grid;grid-template-columns:1.08fr 1fr;gap:7%;align-items:center;min-height:720px}.hero h1{font-size:clamp(44px,4.35vw,72px)}.hero .lead{max-width:550px}.actions{display:flex;align-items:center;gap:25px;margin-top:30px;flex-wrap:wrap}.button{background:#393c38;color:#fff;padding:16px 21px;border:1px solid #393c38;display:inline-flex;align-items:center;gap:30px;font-size:13px;font-weight:600;line-height:1.5}.button:hover{background:#50534c;color:white}.button span{font-size:21px}.textlink{font-size:13px;font-weight:600;border-bottom:1px solid var(--gold);padding-bottom:7px;display:inline-block}.caption{font-size:11px;color:var(--muted);margin-top:20px;line-height:1.7}.diagram{background-color:#e8e9e4;background-image:linear-gradient(#dfe1da 1px,transparent 1px),linear-gradient(90deg,#dfe1da 1px,transparent 1px);background-size:35px 35px;border:1px solid var(--line);padding:24px 27px;min-height:480px}.diagram>.eyebrow{font-size:8px;color:#70766d}.paper{background:white;padding:30px;margin:23px 0;box-shadow:0 14px 30px #3331;transform:rotate(-2deg)}.paper .eyebrow{letter-spacing:1px;font-size:8px;border-bottom:1px solid var(--line);padding-bottom:15px}.paper h2{font-size:29px;letter-spacing:-.7px;margin:25px 0}.paper h2 em{color:var(--ink)}.methodrow{display:flex;align-items:center;border-top:1px solid var(--line);padding:14px 0;gap:14px;font-size:11px}.methodrow>span{color:#80847a}.methodrow>span:last-child{margin-left:auto}.methodrow small,.result small{display:block;font-size:9px;color:var(--muted)}.result{margin-top:12px;background:#eceee9;padding:14px;display:flex;gap:15px;font-size:12px}.diagram-foot{font-size:8px;letter-spacing:1px}.trust{text-align:center;padding:26px 20px;border-block:1px solid var(--line)}.trust>span{font-size:9px;letter-spacing:1.5px}.trust p{font-size:15px;margin:7px 0}.trust i{font-style:normal;color:var(--gold);padding:0 12px}.sectionhead{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:0 8%;margin-bottom:35px}.sectionhead>.eyebrow{grid-column:1/-1}.sectionhead p{max-width:460px}.topicgrid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.topic{display:block;position:relative;padding:30px 30px 45px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .2s}.topic:hover{background:#eaece5;color:inherit}.topic h3{margin-top:24px}.topic p{font-size:14px;line-height:1.8}.arrow{position:absolute;bottom:18px;right:26px}.background{background:#ebede6}.split{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.split p{max-width:530px}blockquote{font-family:Georgia,serif;font-size:31px;line-height:1.5;margin:0;border-left:2px solid var(--gold);padding-left:35px}cite{display:block;font-family:Arial,sans-serif;font-style:normal;font-size:11px;color:var(--muted);margin-top:25px;line-height:1.8}.portrait{width:100%;display:block;filter:grayscale(1);object-fit:cover}.references-preview{text-align:center;border-block:1px solid var(--line)}.references-preview blockquote{max-width:850px;margin:30px auto;border:0;padding:0}.original{border-block:1px solid var(--line);padding:22px 0}.original summary{font-size:18px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}.original[open] summary{margin-bottom:30px}.prose{max-width:850px}.prose p{white-space:normal;font-size:16px;margin-bottom:21px}.prose a{text-decoration:underline}.videocard{padding:25px;background:#eaece5;margin-top:30px}.contactstrip{background:#dedfd7;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10%}.contactstrip p{max-width:440px}.pagehero{border-bottom:1px solid var(--line);padding-top:85px;padding-bottom:60px}.pagehero h1{max-width:1000px}.pagehero .lead{max-width:740px}.reading{max-width:1040px;margin:auto}.reading .prose{max-width:100%}.reading.background{max-width:none}.reading.background .prose,.reading.background h2,.reading.background>.eyebrow{max-width:850px;margin-left:auto;margin-right:auto}.traininglist article{display:grid;grid-template-columns:60px 1fr 150px;gap:30px;align-items:start;border-top:1px solid var(--line);padding:32px 0}.traininglist article:last-child{border-bottom:1px solid var(--line)}.traininglist h2{font-size:32px;margin-top:0}.traininglist p{max-width:670px}.traininglist a{justify-self:end}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:25px 0 45px}.photobutton{padding:0;background:transparent;border:0;text-align:left}.photobutton img{width:100%;height:220px;object-fit:cover;filter:grayscale(1);transition:filter .2s}.photobutton:hover img{filter:none}.photobutton span{display:block;font-size:10px;margin-top:8px}.related{border-top:1px solid var(--line);padding-top:30px;margin-top:30px}.related a{margin-right:25px;font-size:14px;text-decoration:underline}.archivebar{display:flex;align-items:center;justify-content:space-between;gap:30px}.archivebar h2{font-size:33px}.archivebar label{font-size:11px;width:280px}.refrow{display:grid;grid-template-columns:180px 1fr 20px;align-items:center;gap:20px;padding:24px 0;border-top:1px solid var(--line)}.refrow h3{margin:0;font-size:23px}.refrow .eyebrow{font-size:9px}.refrow:hover{background:#ebece6}.refrow[hidden]{display:none}.contact{align-items:start}.email{font-size:clamp(19px,2.1vw,30px);letter-spacing:-.5px;line-height:1.4;display:block;margin:25px 0}.contact form{background:white;padding:35px}.contact label{display:block;font-size:12px;font-weight:600;margin:20px 0 7px}input,textarea,select{display:block;width:100%;border:1px solid #c8cdc2;background:var(--bg);padding:12px;color:var(--ink);border-radius:0}input:focus,textarea:focus,select:focus{outline:2px solid var(--gold);outline-offset:2px}form .button{margin-top:25px}#form-status{font-size:12px}footer{padding:45px 4.3%;border-top:1px solid var(--line)}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:32px}.footer-top .brand{font-size:25px;display:block}.footer-top p{font-size:13px;margin:0}.footer-top>a:last-child{font-size:11px}.footer-bottom{display:flex;align-items:center;gap:24px;border-top:1px solid var(--line);padding-top:22px;font-size:10px;color:var(--muted)}.footer-bottom span{margin-right:auto}dialog{max-width:90vw;max-height:90vh;border:0;padding:22px;background:var(--bg)}dialog::backdrop{background:#20231ce0}dialog img{display:block;max-width:80vw;max-height:70vh;margin:auto}dialog .close{display:block;border:0;background:none;margin-left:auto;margin-bottom:15px}dialog p{font-size:12px;margin:15px 0 0}@media(min-width:1600px){header,footer{padding-left:calc((100vw - 1460px)/2);padding-right:calc((100vw - 1460px)/2)}}@media(max-width:1050px){nav{gap:17px}.brand{font-size:20px}.brand small{font-size:7px}.hero{gap:4%}.hero h1{font-size:47px;letter-spacing:-2px}.paper{padding:24px 20px}.diagram{padding:20px}.topic{padding:25px 20px 40px}}@media(max-width:800px){header{flex-wrap:wrap;padding:18px 5%}.menu{display:flex;align-items:center;gap:15px;border:1px solid var(--line);background:none;padding:8px 12px;font-size:12px}nav{display:none;width:100%;flex-direction:column;align-items:stretch;padding:15px 0}nav.open{display:flex}nav a{padding:8px 0}nav a[aria-current=page]:after{bottom:0}nav .navcontact{padding:10px}main>section{padding:55px 6%}.hero{grid-template-columns:1fr;gap:35px}.hero h1{font-size:clamp(38px,8vw,60px);letter-spacing:-2px}.diagram{max-width:550px;width:100%;margin:auto;min-height:0}.lead{font-size:16px}.sectionhead,.split,.contactstrip{grid-template-columns:1fr;gap:30px}.sectionhead{gap:0}.topicgrid{grid-template-columns:repeat(2,1fr)}h1{letter-spacing:-2px}.gallery{grid-template-columns:repeat(2,1fr)}.photobutton img{height:190px}.traininglist article{grid-template-columns:30px 1fr;gap:15px}.traininglist a{grid-column:2;justify-self:start}.traininglist h2{font-size:27px}.archivebar{display:block}.archivebar label{display:block;width:100%;margin-bottom:30px}.refrow{grid-template-columns:1fr 20px;gap:10px}.refrow .eyebrow{grid-column:1/-1}.refrow h3{font-size:20px}.footer-top{flex-wrap:wrap}.footer-top p{width:100%;order:2}.footer-bottom{flex-wrap:wrap}.footer-bottom span{width:100%}.contact form{padding:25px}blockquote{font-size:26px;padding-left:23px}}@media(max-width:480px){.topicgrid{grid-template-columns:1fr}.brand{font-size:19px}.monogram{width:38px;height:40px;font-size:35px;margin-right:9px}.brand small{font-size:6px}.gallery{gap:12px}.photobutton img{height:140px}.actions{gap:20px}.hero h1{font-size:39px}.paper{padding:22px 17px}.paper h2{font-size:28px}.diagram{padding:16px}.contact form{padding:20px}.email{font-size:23px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media print{header,footer,.actions,.contactstrip,.menu{display:none}body{background:white}main>section{padding:20px}details>.prose{display:block}.hero,.split{display:block}.diagram{display:none}}

.vitae .career{padding:24px 0;border-top:1px solid var(--line)}.vitae .career p{margin-bottom:5px}.vitae .career p:first-child{font-size:12px;letter-spacing:1px;color:#816a40;font-weight:600}.vitae h3{margin-top:40px}.vitae .career p:not(:first-child){margin-bottom:2px}

/* Keep faces visible in every cropped photograph. */
.photobutton img,.portrait{object-position:center top}
/* Gold heading lines reveal once, over four seconds, when visible. */
.motion-ready main :is(h1,h2,h3) em{opacity:0;transition:opacity 4s ease}
.motion-ready main :is(h1,h2,h3) em.is-revealed{opacity:1}
@media(prefers-reduced-motion:reduce){.motion-ready main :is(h1,h2,h3) em{opacity:1;transition:none}}
@media print{.motion-ready main :is(h1,h2,h3) em{opacity:1}}

/* Vita: portrait visible in the opening section, without cropping. */
.pagehero.vitahero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:7%;align-items:center;padding-top:40px;padding-bottom:40px}
.vitahero h1{font-size:clamp(42px,4.4vw,65px)}.vitahero .lead{font-size:18px;line-height:1.8}.vitahero .portrait{width:100%;height:auto;max-height:450px;object-fit:contain;object-position:center top}.vitaintro{max-width:none}.vitaintro>div{max-width:800px;margin:auto}.career.additional-experience p:first-child{font-size:inherit;letter-spacing:normal;color:inherit;font-weight:400}
@media(max-width:760px){.pagehero.vitahero{grid-template-columns:1fr;gap:24px;padding-top:35px;padding-bottom:35px}.vitaheading{display:contents}.vitahero .eyebrow{grid-row:1}.vitahero h1{grid-row:2;margin:0;font-size:40px}.vitahero .portrait{grid-row:3;max-height:290px;justify-self:center}.vitahero .lead{grid-row:4;font-size:16px;margin:0}}

/* Homepage photograph: preserve the complete gesture and face. */
.hero.with-photo{grid-template-columns:minmax(0,1.05fr) minmax(0,1.1fr);gap:6%;min-height:660px;padding-top:55px;padding-bottom:55px}.with-photo h1{font-size:clamp(38px,4vw,65px)}.homeportrait{margin:0;min-width:0}.homeportrait img{display:block;width:100%;height:auto;object-fit:contain;filter:grayscale(1)}.homeportrait figcaption{margin-top:12px;font-size:11px;letter-spacing:.6px;color:var(--muted)}.split.background>div>blockquote{font-size:23px;line-height:1.6;margin:35px 0 0;padding-left:20px;border-left:1px solid var(--gold)}.split.background>div>blockquote cite{font-size:11px}
@media(max-width:800px){.hero.with-photo{grid-template-columns:1fr;gap:35px;min-height:0;padding-top:40px;padding-bottom:40px}.with-photo h1{font-size:clamp(37px,7vw,55px)}.homeportrait{max-width:700px;width:100%;justify-self:center}.split.background .diagram{margin-top:30px}}

/* Constrain the homepage portrait at every viewport size. */
.hero.with-photo>div{min-width:0}.homeportrait{width:100%;max-width:580px;justify-self:center}.homeportrait img{max-width:580px;max-height:435px;height:auto}
