*{box-sizing:border-box}
:root{--ground:#f5f5f3;--ink:#1a1613;--muted:#5a5149;--accent:#d4452a}
body{margin:0;background:var(--ground);color:var(--ink);font-family:'Archivo',Helvetica,Arial,sans-serif;min-height:100vh;display:flex;flex-direction:column}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:4px}
.site-header{max-width:1360px;width:100%;margin:0 auto;padding:20px 40px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 32px}
.brand{font-size:20px;font-weight:800;letter-spacing:-.02em;min-height:44px;display:inline-flex;align-items:center}
nav{display:flex;flex-wrap:wrap;gap:0 28px;font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}
nav a,nav .inactive{min-height:44px;display:inline-flex;align-items:center}
nav .inactive{cursor:default}
nav a[aria-current]{border-bottom:2px solid var(--accent)}
.social a{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.social img{display:block;width:20px;height:20px}
main{max-width:1360px;width:100%;margin:0 auto;padding:0 40px;flex:1}
.page-head{padding:56px 0 48px;border-top:1px solid var(--ink);margin-top:8px;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px 48px}
h1{margin:0;font-size:56px;line-height:1;font-weight:800;letter-spacing:-.03em;text-transform:uppercase}
.intro{max-width:900px}.intro p{margin:20px 0 0;font-size:15px;max-width:640px;line-height:1.5}
.count{font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding-bottom:64px}
.tile{display:block;position:relative;width:100%;padding:0;margin:0;border:0;background:#e6e6e3;cursor:pointer;text-align:left;font:inherit;color:inherit;aspect-ratio:4/5;overflow:hidden}
.tile .art{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.tile:hover .art{transform:scale(1.03)}
.tile .cap{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;gap:4px;padding:48px 14px 14px;font-size:13px;line-height:1.35;color:#fff;background:linear-gradient(to top,rgba(26,22,19,.8),rgba(26,22,19,0));opacity:0;transition:opacity .2s ease}
.tile .cap b{font-weight:600}.tile .cap span{opacity:.85}
.tile:hover .cap,.tile:focus-visible .cap{opacity:1}
.tile:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
@media(max-width:640px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-header,main{padding-left:16px;padding-right:16px}h1{font-size:40px}.site-footer .inner{padding-left:16px;padding-right:16px}}
.about{border-top:1px solid var(--ink);margin-top:8px;padding:56px 0 96px;display:flex;justify-content:center}
.about-col{flex:1 1 420px;max-width:643px;display:flex;flex-direction:column;gap:20px;font-size:17px;line-height:1.65}
.about-col img{display:block;width:100%;height:auto;aspect-ratio:643/605;margin-bottom:12px}
.about-col p{margin:0}
.drawings{padding-bottom:96px;display:flex;flex-direction:column;gap:64px}
.drawing{display:flex;flex-wrap:wrap;gap:32px 64px;align-items:flex-start}
.d-img{flex:1 1 420px;min-width:0;max-width:620px}.d-img img{display:block;width:100%;height:auto}
.d-info{flex:1 1 280px;min-width:0;max-width:420px;display:flex;flex-direction:column;gap:24px}
.d-info h2{margin:0 0 8px;font-size:28px;line-height:1.15;font-weight:800;letter-spacing:-.02em}
.price{font-size:20px;font-weight:600}
.buy{align-self:flex-start;min-height:48px;padding:0 28px;display:inline-flex;align-items:center;background:var(--ink);color:var(--ground);font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}
.buy:hover{background:var(--accent);text-decoration:none}
dl{margin:0;display:flex;flex-direction:column;gap:16px;font-size:15px;line-height:1.5}
dt{font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
dd{margin:0}
.site-footer{border-top:1px solid var(--ink)}
.site-footer .inner{max-width:1360px;margin:0 auto;padding:32px 40px 40px;display:flex;flex-wrap:wrap;gap:24px 64px;justify-content:space-between;font-size:13px}
.links{display:flex;flex-wrap:wrap;gap:0 28px}.links a{min-height:44px;display:inline-flex;align-items:center}
.copy{min-height:44px;display:inline-flex;align-items:center;color:var(--muted)}
.lb{position:fixed;inset:0;z-index:50;background:rgba(26,22,19,.95);color:#f5f5f3;display:flex;flex-direction:column;padding:16px 24px 24px}
.lb[hidden]{display:none}
.lb-top,.lb-bot{display:flex;align-items:center;justify-content:space-between;gap:12px 24px;flex-wrap:wrap}
.lb-top{min-height:44px;font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}
.lb button{min-height:44px;padding:0 16px;border:1px solid #f5f5f3;background:none;color:#f5f5f3;font:inherit;font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.lb button:hover{background:rgba(245,245,243,.14)}
.lb-img{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:16px 0}
.lb-img img{display:block;max-width:100%;max-height:64vh;width:auto;height:auto}
.lb-info{display:flex;flex-direction:column;gap:4px;font-size:14px;line-height:1.35}.lb-info span{opacity:.75}
.lb-nav{display:flex;gap:8px}
