/* ── Bambino category tiles — cloud-shaped illustration + label ──────── */
.bmb-category__grid {
  margin-top: 44px;
  display: flex; flex-wrap: wrap; justify-content: center;
  gap: 24px 38px;
}
.bmb-category__tile {
  flex: 0 0 auto; width: 200px;
  display: flex; flex-direction: column; align-items: center; gap: 26px;
  text-align: center; transition: transform var(--transition);
}
.bmb-category__tile:hover { transform: translateY(-6px); }
.bmb-category__cloud {
  width: 200px; height: 150px;
  display: flex; align-items: center; justify-content: center;
}
.bmb-category__cloud img { max-width: 100%; max-height: 145px; width: auto; object-fit: contain; }
.bmb-category__label {
  font-family: var(--bambino-font-body); font-weight: 700; font-size: 1.25rem;
  color: var(--bambino-ink); line-height: 1.1;
}
.bmb-category__tile:hover .bmb-category__label { color: var(--bambino-teal); }

@media (max-width: 768px) {
  .bmb-category__grid { gap: 20px; }
  .bmb-category__tile { width: 44%; }
  .bmb-category__cloud { width: 100%; height: 120px; }
  .bmb-category__label { font-size: 1.05rem; }
}

/* Theme blocks (blocks/*.liquid). Every rule is opt-in: an untouched block matches none of them. */
.qm-contents { display: contents; }
.av-block-group { display: flex; flex-direction: column; gap: var(--av-group-gap, 12px); align-items: var(--av-group-align, stretch); }
.av-block-group--row { flex-direction: row; flex-wrap: wrap; justify-content: var(--av-group-justify, flex-start); align-items: var(--av-group-align, center); }
.av-block-text p, .av-block-text li { font: inherit; letter-spacing: inherit; text-transform: inherit; color: inherit; }
