/* ── VP Bucket List — liste complète (titre + catégories) ── */

.vp-bl__title { font-family: "Playfair Display", serif; font-weight: 400; font-size: clamp(28px,3.5vw,46px); line-height: 1.15; text-align: center; color: var(--foreground,#000); margin: 0 0 56px; }
.vp-bl__title span { font-weight: 900; font-style: italic; }
.vp-bl__cats { display: grid; grid-template-columns: repeat(3,1fr); gap: 48px; }
.vp-bl__cattitle { font-family: "Montserrat", sans-serif; font-size: 11px; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color: var(--primary,#f1b8a0); margin: 0 0 16px; padding-bottom: 12px; border-bottom: 1px solid var(--border,#ececec); }
.vp-bl__items { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.vp-bl__item { display: flex; align-items: flex-start; gap: 12px; }
.vp-bl__ico { flex: 0 0 20px; width: 20px; height: 20px; border-radius: 50%; margin-top: 2px; display: flex; align-items: center; justify-content: center; }
.vp-bl__ico--done { background: var(--primary,#f1b8a0); color: #fff; }
.vp-bl__ico--todo { border: 1.5px solid var(--border,#ececec); }
.vp-bl__itemtxt { font-family: "Montserrat", sans-serif; font-size: 14px; line-height: 1.6; color: var(--muted-foreground,#6b6b6b); }
.vp-bl__item.is-done .vp-bl__itemtxt { color: var(--surface-dark,#4b4b4b); font-weight: 500; }
.vp-bl__itemtxt a { color: inherit; text-decoration: none; transition: color .2s; }
.vp-bl__itemtxt a:hover { color: var(--primary,#f1b8a0); }

@media (max-width: 1024px) {
  .vp-bl__cats { grid-template-columns: 1fr; gap: 32px; }
}
