/* Plain type, a few photographs, and room to breathe. */
:root { color-scheme:light; --paper:#f7f6f2; --ink:#252522; --muted:#6d6d65; --link:#244dc5; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { max-width:1080px; margin:0 auto; padding:0 40px; background:var(--paper); color:var(--ink); font:20px/1.65 Georgia,'Times New Roman',serif; }
a { color:var(--link); text-underline-offset:4px; text-decoration-thickness:1px; }
a:hover { color:var(--ink); }
a:focus-visible { outline:2px solid var(--link); outline-offset:6px; }
header,footer,figcaption,.location,.photo-placeholder div { font:12px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace; }
header { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:46px 0; }
.signature { display:block; width:100px; flex-shrink:0; }
.signature img { width:100%; height:auto; filter:brightness(0); }
.intro { padding:100px 0 140px; max-width:620px; }
h1 { font-family:Arial,Helvetica,sans-serif; font-weight:700; font-size:clamp(42px,5.8vw,70px); line-height:1.02; letter-spacing:-.055em; margin:0 0 42px; }
p { margin:0 0 24px; }
.intro>p:not(.location) { max-width:470px; }
.location { color:var(--muted); margin-top:36px; }
figure { margin:0; }
.shot img { display:block; width:100%; height:auto; border-bottom-right-radius:30px; }
figcaption { color:var(--muted); padding-top:14px; }
.approach { max-width:490px; margin:150px 0 150px auto; }
.second-shot { width:72%; }
.photo-placeholder { width:65%; margin:150px 0 0 auto; }
.photo-placeholder div { aspect-ratio:3/2; display:grid; place-items:center; color:var(--muted); border:1px dashed #c9c9c0; }
.photo-placeholder figcaption { max-width:370px; }
.contact { margin:170px 0; }
.contact p { margin-bottom:8px; }
.contact a { overflow-wrap:anywhere; }
footer { display:flex; justify-content:space-between; flex-wrap:wrap; gap:16px; padding:0 0 40px; color:var(--muted); }
.skip { position:absolute; left:-10000px; }.skip:focus { left:20px; top:10px; background:var(--paper); }
@media(max-width:600px){body{padding:0 24px;font-size:18px;} header{padding:30px 0;} .signature{width:82px;} .intro{padding:76px 0 96px;} h1{margin-bottom:30px;} .approach{margin:100px 0;} .second-shot{width:90%;} .photo-placeholder{width:90%;margin-top:100px;} .contact{margin:110px 0;} footer{font-size:11px;} }
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}

.disciplines { color:var(--muted); font:13px/1.9 ui-monospace,SFMono-Regular,Consolas,monospace; margin-bottom:36px; }
.photo-pair { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start; }
.photo-pair figure:last-child { margin-top:100px; }
.project-shot { width:78%; margin:140px 0 0; }
.field-shot { margin-left:auto; }
@media(max-width:600px){.photo-pair{grid-template-columns:1fr;gap:70px;}.photo-pair figure:last-child{margin-top:0;width:90%;margin-left:auto;}.project-shot{width:100%;margin-top:90px;}}
