@import url('https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=DM+Sans:wght@400;500;600&display=swap');
:root{--ink:#161615;--paper:#fafaf8;--line:#dfdfdb}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font:15px 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit;color:inherit}button{cursor:pointer;background:none;border:1px solid var(--line);padding:10px 14px}a:hover{text-decoration:underline}button:hover{border-color:var(--ink)}header,footer{display:flex;align-items:center;justify-content:space-between;padding:18px max(5vw,20px);gap:16px;border-bottom:1px solid var(--line)}nav{display:flex;align-items:center;gap:clamp(8px,3vw,34px);flex-wrap:wrap;justify-content:flex-end}.mark,#splash{font:42px 'Instrument Serif',Georgia,serif;letter-spacing:.14em}footer{border-top:1px solid var(--line);border-bottom:0}footer span{color:#666}main{min-height:65vh}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:min(68vh,680px);background:#151515;color:#fff}.hero>div{padding:clamp(36px,8vw,126px);align-self:center}.hero img{width:100%;height:100%;max-height:680px;object-fit:cover;object-position:center 26%}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:.72rem}h1,h2{font-family:'Instrument Serif',Georgia,serif;font-weight:400;margin:.25em 0}h1{font-size:clamp(50px,7vw,112px);line-height:.91}h2{font-size:clamp(36px,5vw,66px)}.wrap{max-width:1200px;margin:auto;padding:50px 24px 72px}.narrow{max-width:620px}.cta{display:inline-block;background:var(--ink);color:white;border:1px solid var(--ink);padding:12px 20px}.hero .cta{background:white;color:#111;margin-top:12px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,245px),1fr));gap:24px;margin-top:24px}.card{position:relative}.card img,.placeholder{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 27%;background:#eaeae7;display:block}.placeholder{display:grid;place-items:center;font:44px 'Instrument Serif',serif}.card .heart{position:absolute;right:12px;top:12px;border-radius:50%;background:white}.row{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding:12px 0}.card .row{border:0}.muted{color:#61615e}.stack{display:grid;gap:14px;margin:18px 0}.stack label{display:grid;gap:5px}input,select{width:100%;padding:11px;border:1px solid #aaa;background:white}.panel{border:1px solid var(--line);padding:20px;margin:20px 0}.notice{background:#ededeb;padding:12px}#splash{position:fixed;inset:0;display:grid;place-items:center;background:#101010;color:white;z-index:3;font-size:80px;animation:splash .65s .25s both;pointer-events:none}@keyframes splash{to{opacity:0;visibility:hidden}}@media(prefers-reduced-motion:reduce){#splash{display:none}}@media(max-width:650px){.hero{grid-template-columns:1fr}.hero img{max-height:430px}nav{font-size:13px}footer{flex-wrap:wrap}}
.filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.filters button[aria-pressed=true]{background:#161615;color:white;border-color:#161615}.purchase{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.purchase label{display:grid;gap:4px;font-size:13px}.purchase select{padding:9px 26px 9px 9px}.purchase button{min-height:42px}button:disabled{cursor:default;color:#555;background:#e9e9e7;border-color:#ddd}.stack .check{display:flex;align-items:center;gap:8px}.check input{width:auto}.admin-link{border-bottom:1px solid #aaa}.card img,.hero img{filter:grayscale(1)}.row>div:last-child{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.card .row>div{display:block}@media(max-width:650px){header{align-items:flex-start;gap:10px;padding:12px 16px}header .mark{font-size:34px}nav{gap:4px 12px}nav a,nav button{min-height:40px;display:inline-flex;align-items:center}nav button{padding:5px 10px}.hero{min-height:0}.hero>div{padding:34px 24px}.hero img{height:320px;object-position:center 28%}.wrap{padding:32px 16px 52px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.card .row{align-items:start;flex-direction:column;gap:5px}.card .heart{right:6px;top:6px}.purchase{align-items:stretch}.purchase button,.purchase label{width:100%}.narrow .row{align-items:start;flex-wrap:wrap}}@media(max-width:340px){.grid{grid-template-columns:1fr}}
