
:root{--line:#E5E7EB;--ink:#2F3E46;--muted:#5F7370;--accent:#B75536;--sand:#EFA07F}
*{box-sizing:border-box}
body{margin:0;background:#FFFFFF;color:var(--ink);font:300 16px/1.7 Archivo,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--accent);text-decoration:none}
a:hover{color:var(--ink)}
a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
header{border-bottom:1px solid var(--line)}
.wrap{max-width:1100px;margin:0 auto;padding:0 28px}
.brand{display:flex;flex-direction:column;line-height:1;padding:22px 0;color:var(--ink)}
.brand b{font:600 15px 'Cormorant Garamond',Georgia,serif;letter-spacing:.24em;text-transform:uppercase}
.brand i{font:italic 400 13px 'Cormorant Garamond',Georgia,serif;letter-spacing:.3em;text-transform:uppercase;opacity:.7;margin-top:3px}
h1{font:300 clamp(34px,5vw,54px)/1.12 'Cormorant Garamond',Georgia,serif;margin:0 0 18px;text-wrap:balance}
h2{font:400 23px 'Cormorant Garamond',Georgia,serif;margin:0 0 8px}
.eyebrow{font:500 11px Archivo,sans-serif;letter-spacing:.3em;text-transform:uppercase;color:var(--accent);margin:0 0 14px}
.lede{font-size:17px;color:#44565C;max-width:640px;margin:0 0 36px}
main{padding:72px 0 84px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:24px;margin:0;padding:0;list-style:none}
.card{border:1px solid var(--line);background:#FFFFFF;display:block;color:inherit;transition:box-shadow .2s ease}
.card:hover{box-shadow:0 14px 40px rgba(47,62,70,.10);color:inherit}
.card img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;background:#F2F6F0}
.card .body{padding:20px 22px 24px}
.card .meta{font:400 11px Archivo,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0 0 8px}
.card h2{margin:0}
.card .price{font:400 21px 'Cormorant Garamond',Georgia,serif;margin:12px 0 0}
.card .desc{font-size:14px;color:#44565C;margin:8px 0 0}
.empty{border:1px solid var(--line);padding:32px}
.empty h2{margin-top:0}
footer{border-top:1px solid var(--line);padding:30px 0;font-size:13px;color:var(--muted)}
footer nav{display:flex;flex-wrap:wrap;gap:8px 22px;margin-bottom:10px}
@media(max-width:700px){.wrap{padding:0 20px}main{padding:52px 0 64px}}
