@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:wght@400;500&display=swap');
:root{--ink:#22221f;--muted:#77766f;--paper:#f8f7f4;--line:#deddd7;--accent:#9c6849}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}.site-header,.site-footer{max-width:1440px;margin:auto;padding:27px 6vw;display:flex;align-items:center;justify-content:space-between}.site-header{border-bottom:1px solid var(--line)}.wordmark{font-size:13px;font-weight:600;letter-spacing:.16em}.site-header nav{display:flex;gap:34px;font-size:13px}.site-footer{margin-top:100px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}main{max-width:1440px;margin:auto;padding:0 6vw}.intro{padding:95px 0 62px}.eyebrow{font-size:10px;letter-spacing:.19em;color:var(--muted);font-weight:600}.intro h1,.project-heading h1,.info-page h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(48px,7vw,88px);font-weight:400;line-height:1.04;letter-spacing:-.04em;margin:20px 0}.lede{font-size:17px;color:#66645e;max-width:560px}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:34px;row-gap:54px}.project-card:nth-child(even){padding-top:90px}.image-link{display:block;background:#e5e3dd;overflow:hidden}.project-card img{display:block;width:100%;height:auto;aspect-ratio:1.38;object-fit:cover;transition:transform .5s}.image-link:hover img,.gallery-item:hover img{transform:scale(1.015)}.image-placeholder{aspect-ratio:1.38;background:linear-gradient(145deg,#e4e2dc,#d6d4cd)}.card-meta{display:flex;justify-content:space-between;align-items:baseline;margin-top:12px}.card-meta h2{font-size:17px;font-weight:500;margin:0}.card-meta span,.project-card>p{font-size:12px;color:var(--muted)}.project-card>p{margin-top:5px}.back-link{display:inline-block;margin:40px 0 28px;color:var(--muted);font-size:13px}.project-heading{max-width:680px;margin-bottom:56px}.project-heading h1,.info-page h1{font-size:clamp(42px,6vw,70px);margin:12px 0}.prose{max-width:620px;color:#55544e}.photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}.gallery-item{overflow:hidden}.gallery-item img{display:block;width:100%;height:auto;max-height:720px;object-fit:cover;transition:transform .5s}.gallery-item span{display:block;margin-top:9px;color:var(--muted);font-size:12px}.photo-view{margin:8px auto 28px;text-align:center}.photo-view img{max-width:100%;max-height:78vh;width:auto;height:auto;object-fit:contain}.photo-view figcaption{display:flex;justify-content:space-between;gap:20px;margin:12px auto 0;max-width:900px;text-align:left;font-size:12px;color:var(--muted)}.photo-nav{display:flex;justify-content:space-between;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;font-size:12px}.comments{max-width:640px;margin:65px auto}.comments h2,.comment-form h3{font-family:'Playfair Display',Georgia,serif;font-size:28px;font-weight:400}.comment{border-bottom:1px solid var(--line);padding:12px 0}.comment-meta,.muted{font-size:12px;color:var(--muted)}.comment-form{margin-top:42px}.comment-form label{display:block;margin:16px 0 5px;font-size:12px}.comment-form input,.comment-form textarea{width:100%;padding:12px;border:1px solid var(--line);background:transparent;font:inherit}.comment-form button{margin-top:18px;border:0;background:var(--ink);color:white;padding:12px 20px;font:inherit;font-size:12px;cursor:pointer}.comment-form button:hover{background:var(--accent)}.errorlist{color:#9b382e;font-size:12px}.info-page{max-width:650px;padding:78px 0}.contact-links{list-style:none;margin:36px 0;padding:0}.contact-links li{padding:12px 0;border-bottom:1px solid var(--line)}.contact-links a{font-size:17px}.empty-state{color:var(--muted);padding:30px 0}code{font-size:.9em}@media(max-width:700px){.site-header,.site-footer{padding:20px 6vw}.site-header nav{gap:20px}main{padding:0 6vw}.intro{padding:70px 0 40px}.project-grid,.photo-grid{grid-template-columns:1fr;row-gap:35px}.project-card:nth-child(even){padding-top:0}.photo-nav{font-size:10px;gap:8px}.site-footer{margin-top:65px}}
