/* In-stock cards retain their price/contact details, with the same staged photo,
   caption, thumbnail and arrow layout used on the project's other galleries. */
.stock-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:24px;margin-top:26px;align-items:start}
.stock-card{background:#fff;border:1px solid var(--line);box-shadow:0 6px 16px rgba(34,30,25,.045)}
.stock-viewer{background:var(--paper);outline-offset:3px}
.stock-cover-link{display:block;background:#e7e1d5}
.stock-photo{display:block;width:100%;height:260px;object-fit:cover;background:#e7e1d5}
.stock-gallery-caption{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:45px;padding:9px 13px;background:#fff;border-bottom:1px solid var(--line)}
.stock-image-label{font-size:.88rem;font-weight:700;color:var(--ink);overflow-wrap:anywhere}
.stock-image-counter{flex:none;white-space:nowrap;font-size:.78rem;color:var(--muted);font-variant-numeric:tabular-nums}
.stock-gallery-navigation{display:flex;align-items:center;gap:8px;padding:8px;background:var(--paper)}
.stock-thumbs{display:flex;gap:6px;overflow-x:auto;flex:1;min-width:0}
.stock-thumbs button{border:2px solid transparent;background:transparent;padding:0;flex:none;cursor:pointer}
.stock-thumbs button[aria-pressed="true"]{border-color:var(--accent)}
.stock-thumbs img{display:block;width:60px;height:48px;object-fit:cover}
.stock-gallery-arrows{display:flex;gap:5px;flex:none}
.stock-gallery-arrows button{border:1px solid var(--line);background:#fff;color:var(--ink);width:30px;height:38px;cursor:pointer}
.stock-card-body{padding:20px 22px 24px}
.stock-tag{font:700 .72rem/1.5 var(--sans);letter-spacing:.1em;color:var(--accent-dark);text-transform:uppercase}
.stock-card h3{font:700 1.5rem/1.22 var(--serif);margin:8px 0 6px}
.stock-price{font-size:1.22rem;font-weight:700;color:var(--ink);margin-bottom:12px}
.stock-desc{font-size:.95rem;color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere}
.stock-labels{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}
.stock-labels span{background:var(--paper);border:1px solid var(--line);padding:4px 9px;color:var(--muted);font-size:.78rem}
.stock-card .btn{font-size:.9rem;min-height:44px}
.stock-empty{grid-column:1/-1;max-width:740px;border:1px solid var(--line);padding:48px 28px;background:#fff}
@media(max-width:650px){.stock-grid{gap:16px}.stock-photo{height:230px}.stock-empty{padding:28px}}
