/* Available-now grids — merch-style cards, Available badge instead of buy */
.avail-wrap { padding: 2.25rem 1.25rem 2.75rem; background: var(--page,#f4f6f5); }
.avail-head { max-width:1100px; margin:0 auto 1.4rem; }
.avail-head h1 { margin:0; color:#00f058; font-size:clamp(1.55rem,3.5vw,1.9rem); letter-spacing:.02em; }
.avail-head p { margin:.35rem 0 0; color:#18a8e0; line-height:1.45; max-width:40rem; }
.avail-head .back { display:inline-block; margin-bottom:.75rem; font-weight:700; color:#ec1880; font-size:.92rem; }
.avail-head .back:hover { color:#c8076a; }
.mgrid { display:grid; grid-template-columns:repeat(4,1fr); gap:1.25rem; max-width:1100px; margin:0 auto; }
.mcard { background:#fff; border-radius:14px; overflow:hidden; box-shadow:0 10px 28px rgba(16,40,34,.08); display:flex; flex-direction:column; pointer-events:none; user-select:none; }
.mcard > img, .mcard .photo { width:100%; aspect-ratio:1/1; object-fit:contain; object-position:center; display:block; background:#fff; }
.mcard .photo-missing[hidden],
.mcard .photo-missing[hidden] { display:none !important; }
.mcard .photo-missing {
  width:100%; aspect-ratio:1/1; display:flex; align-items:center; justify-content:center; text-align:center;
  background:linear-gradient(145deg,#f7faf8,#eef1f3); color:#5d7169; font-size:.82rem; font-weight:600; padding:1rem; line-height:1.35;
}
.mbody { padding:.9rem 1rem 1.1rem; display:flex; flex-direction:column; gap:.45rem; flex:1; }
.mbody h3 { margin:0; font-size:.98rem; color:#ec1880; line-height:1.3; }
.mbody .aka { margin:0; font-size:.78rem; color:#5d7169; font-weight:600; }
.mbody .blurb { margin:0; font-size:.88rem; color:#18a8e0; line-height:1.45; flex:1; }
.avail-badge {
  margin-top:auto; display:inline-flex; align-items:center; justify-content:center;
  background:#00c84a; color:#ffffff; border:0; border-radius:999px; padding:.7rem .65rem; font-weight:900;
  font-size:.9rem; letter-spacing:.02em; width:100%; cursor:default;
  text-shadow:0 1px 0 rgba(0,0,0,.12);
}
.cta-bar {
  max-width:1100px; margin:1.75rem auto 0; background:#fff; border-radius:14px; padding:1.15rem 1.25rem;
  box-shadow:0 10px 28px rgba(16,40,34,.08); border:1px solid rgba(236,24,128,.12);
}
.cta-bar p { margin:0 0 .55rem; color:#18a8e0; line-height:1.45; }
.cta-bar a { color:#ec1880; font-weight:700; }
.preview-banner {
  background:#fff3f8; border-bottom:1px solid #f5c6dc; color:#c8076a; text-align:center;
  padding:.55rem 1rem; font-size:.85rem; font-weight:700;
}
@media (max-width: 900px) { .mgrid { grid-template-columns:repeat(2,1fr); } }
@media (max-width: 520px) { .mgrid { grid-template-columns:1fr; } }

.care-link{display:inline-block;margin-top:.4rem;font-size:.82rem;font-weight:700;color:#ec1880;text-decoration:underline;text-underline-offset:2px;pointer-events:auto !important}
.mcard{pointer-events:none}
.mcard .care-link{pointer-events:auto}
