.site-nav{display:flex;gap:28px;font-size:15px}.site-nav a{text-decoration:none;color:#667078;padding:10px 0}.site-nav a[aria-current=page]{color:#1d242c;border-bottom:1px solid}.page-heading{padding:56px 0 35px}.page-heading h1{max-width:950px;font-size:52px}.page-heading p{color:#667078;font-size:14px;letter-spacing:1.5px;margin:0 0 18px}.prose{font-size:17px;line-height:1.8;max-width:760px;white-space:pre-line;margin:0 0 30px}.page-section{border-top:1px solid #dce0e2;padding:40px 0}.page-section h2{font:400 30px Georgia,serif;margin:0 0 24px}.photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px 28px;margin:30px 0 60px}.photo-grid figure{margin:0;min-width:0}.photo-grid button{border:0;background:#f4f5f5;width:100%;padding:18px;cursor:zoom-in}.photo-grid img{width:100%;height:auto;display:block}.photo-grid figcaption{font-size:14px;color:#667078;margin-top:12px;white-space:pre-line}.about-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:60px;align-items:start}.about-grid .photo-grid{grid-template-columns:1fr;margin:0}.cv-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px 50px}.cv-grid h3{font-size:17px;font-weight:400;margin:0 0 16px}.cv-grid p{white-space:pre-line;font-size:15px;line-height:1.8;color:#667078;margin:0}#photo-viewer{padding:0;background:#15191e;color:white}#photo-viewer[open]{display:flex;flex-direction:column}.photo-bar{padding:16px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.photo-bar button{background:transparent;color:white;border:1px solid #596169;padding:10px 14px;font-size:14px;min-height:44px}#photo-stage{flex:1;min-height:0;overflow:auto;display:grid;place-items:center;padding:16px}#photo-large{max-width:100%;max-height:calc(100dvh - 170px);object-fit:contain}#photo-stage.enlarged{display:block}#photo-stage.enlarged img{max-width:none;max-height:none;width:150%;height:auto;cursor:zoom-out}#photo-caption{text-align:center;white-space:pre-line;font-size:14px;padding:0 20px}.page-error{padding:70px 0}@media(max-width:750px){.masthead{height:auto;min-height:100px;flex-wrap:wrap;padding-top:20px;padding-bottom:18px;gap:18px}.site-nav{order:3;width:100%;gap:26px}.page-heading{padding-top:38px}.page-heading h1{font-size:38px}.about-grid{grid-template-columns:1fr;gap:30px}.about-grid .photo-grid{grid-template-columns:1fr 1fr}.cv-grid{grid-template-columns:1fr}.photo-grid{gap:24px 16px}.prose{font-size:16px}.photo-grid button{padding:8px}}@media(max-width:480px){.photo-grid,.about-grid .photo-grid{grid-template-columns:1fr}}
