/* Cercle des Œnophiles — habillage sobre, cohérent avec la maquette validée */
.col-fiche{
	--col-ink:#15110E;
	--col-paper-soft:#F6F3EE;
	--col-line:#DAD3C6;
	--col-muted:#6E6357;
	--col-accent:#7A1626;
	font-family:inherit;
	max-width:820px;
	margin:32px 0;
}
.col-fiche__meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
.col-tag{border:1px solid var(--col-line);padding:4px 10px;font-size:12px;letter-spacing:.3px;color:var(--col-muted)}
.col-tag--premium{background:var(--col-accent);border-color:var(--col-accent);color:#fff}
.col-fiche__date{font-size:13px;color:var(--col-muted)}
.col-fiche__infos{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin:18px 0;padding:16px 0;border-top:1px solid var(--col-line);border-bottom:1px solid var(--col-line)}
.col-fiche__infos span{display:block;font-size:10.5px;letter-spacing:1px;text-transform:uppercase;color:var(--col-muted);margin-bottom:4px}

.col-booking{max-width:380px;border:1px solid var(--col-ink);padding:24px;margin-top:24px}
.col-booking__notice{margin:0 0 14px;font-size:14px}
.col-booking__row{display:flex;justify-content:space-between;font-size:13px;color:var(--col-muted);margin-bottom:6px}
.col-booking__bar{height:3px;background:var(--col-paper-soft);margin-bottom:16px;overflow:hidden}
.col-booking__bar div{height:100%;background:var(--col-accent)}
.col-booking__balance{font-weight:600;color:var(--col-ink)}
.col-booking__qty{margin:16px 0}
.col-booking__qty > span{display:block;font-size:12.5px;color:var(--col-muted);margin-bottom:8px}
.col-stepper{display:flex;align-items:center;gap:14px}
.col-stepper button{width:36px;height:36px;border:1px solid var(--col-line);background:#fff;font-size:18px;cursor:pointer}
.col-qty-val{flex-grow:1;text-align:center;font-size:18px;font-weight:600}
.col-booking__total{padding-top:14px;border-top:1px solid var(--col-line);font-size:14px;color:var(--col-ink)}
.col-booking__total .col-total-cost{font-size:18px;font-weight:600}
.col-booking__fine{font-size:11.5px;color:var(--col-muted);margin-top:14px;line-height:1.5}
.col-booking__result{margin-top:12px;font-size:13px}
.col-booking__result.is-error{color:#8a1f1f}
.col-booking__result.is-success{color:#166534}

.col-btn{display:inline-block;border:none;padding:13px 22px;font-size:13.5px;cursor:pointer;text-decoration:none}
.col-btn--primary{background:var(--col-ink,#15110E);color:#fff;width:100%;text-align:center;box-sizing:border-box}
.col-btn--primary:disabled{background:#9a9086;cursor:not-allowed}
.col-btn--ghost{background:#fff;border:1px solid var(--col-line,#DAD3C6);color:var(--col-ink,#15110E)}

.col-programme{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px}
.col-card{display:block;border:1px solid var(--col-line,#DAD3C6);text-decoration:none;color:inherit}
.col-card__img img{display:block;width:100%;height:130px;object-fit:cover}
.col-card__body{padding:16px 18px}
.col-card__date{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--col-muted,#6E6357)}
.col-card__title{font-size:16px;font-weight:600;margin:6px 0 10px}
.col-card__tags{display:flex;gap:8px;flex-wrap:wrap}

.col-compte__balance{font-size:16px;margin-bottom:24px}
.col-table{width:100%;border-collapse:collapse}
.col-table th,.col-table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--col-line,#DAD3C6);font-size:14px}
