.site-header.solid{position:relative;background:var(--paper);border-bottom:1px solid var(--line)}
.portfolio-page{padding:60px 6% 40px}
.portfolio-head{max-width:760px;margin:0 auto 40px;text-align:center}
.portfolio-head .rule{margin:17px auto 22px}
.portfolio-head h1 em{font-family:'Playfair Display',Georgia,serif;font-style:italic;color:#b77b23}
.eyebrow{display:block;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#a67319;margin-bottom:12px}
.filters{display:flex;gap:10px;justify-content:center;margin-top:22px;flex-wrap:wrap}
.filters .pill.active{background:var(--marigold);color:#1e1a16}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:26px;max-width:1180px;margin:0 auto}
.card{background:var(--white);border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column}
.card button{all:unset;cursor:pointer;display:block;position:relative;width:100%;aspect-ratio:4/5;background:#efe8db}
.card button:focus-visible{outline:3px solid var(--marigold);outline-offset:-3px}
.card img{position:absolute;inset:14px;width:calc(100% - 28px);height:calc(100% - 28px);object-fit:contain;transition:transform .35s}.card button:hover img{transform:scale(1.02)}
.card-body{padding:16px 18px 20px}
.card-body h3{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;font-size:22px;margin:0 0 4px}
.card-body p{margin:0;color:var(--muted);font-size:13.5px}
.card-body .tag{display:inline-block;margin-top:10px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#a67319}
.empty{text-align:center;color:var(--muted);padding:40px 0}
.portfolio-cta{text-align:center;padding:70px 0 50px}
.portfolio-cta h2{margin-bottom:22px}
