*{box-sizing:border-box}
body{margin:0;font-family:Georgia,"Times New Roman",serif;color:#222;background:#faf9f7;line-height:1.6}
header{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;padding:28px 6vw;border-bottom:1px solid #e5e1da}
header a.brand{font-size:1.5rem;letter-spacing:.08em;text-transform:uppercase;color:#222;text-decoration:none}
nav a{margin-left:22px;color:#555;text-decoration:none;font-size:.95rem}
nav a:hover,nav a.on{color:#000;border-bottom:1px solid #000}
main{padding:40px 6vw 60px;max-width:1400px;margin:0 auto}
h1{font-weight:normal;font-size:2rem;margin:0 0 .4em}
p.lead{color:#666;max-width:680px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;margin-top:32px}
.grid figure{margin:0}
.grid img{width:100%;height:auto;display:block}
.grid figcaption{font-size:.85rem;color:#777;margin-top:6px}
.hero img{width:100%;height:auto;display:block}
.cols{display:grid;grid-template-columns:1fr 1fr;gap:48px}
@media(max-width:760px){.cols{grid-template-columns:1fr}nav a{margin:0 16px 0 0}}
form label{display:block;margin:14px 0 4px;font-size:.9rem;color:#555}
form input,form textarea{width:100%;padding:10px;border:1px solid #ccc;background:#fff;font:inherit}
form button{margin-top:18px;padding:10px 26px;border:1px solid #222;background:#222;color:#fff;font:inherit;cursor:pointer}
footer{padding:24px 6vw;border-top:1px solid #e5e1da;color:#888;font-size:.85rem}
