.card--veseli{
  --card-yellow:#F5D547;--card-coral:#FF6B6B;--card-green:#4CAF50;--card-cream:#FFFBF0;--card-text:#2D2D2D;
  background:var(--card-cream);overflow:hidden;position:relative;
  font-family:'Hind',sans-serif;color:var(--card-text);
}
.card--veseli::before{
  content:'';position:absolute;top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--card-yellow),var(--card-coral),var(--card-green));
}
.card--veseli .card__img-wrap{position:relative;overflow:hidden;aspect-ratio:4/5}
.card--veseli .card__img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease,filter .4s ease}
.card--veseli:hover .card__img{transform:scale(1.04);filter:brightness(1.05)}
.card--veseli .card__body{padding:22px 24px 26px}
.card--veseli .card__title{
  font-family:'Cardo',serif;font-size:22px;line-height:1.3;margin-bottom:8px;font-weight:700;color:var(--card-text);
}
.card--veseli:hover .card__title{color:var(--card-coral)}
.card--veseli .card__excerpt{font-size:13px;line-height:1.65;color:rgba(45,45,45,.55)}
.card--veseli .card__meta{font-family:'Dancing Script',cursive;font-size:13px;color:var(--card-coral)}

/* ── structural rules for draft-batch ── */
.card--veseli .card__badge {
  position:absolute; bottom:12px; right:12px; z-index:2;
  font-size:10px; letter-spacing:.14em; text-transform:uppercase;
  padding:4px 12px; border-radius:50px;
  background:#fff; color:var(--card-coral);
}
.card--veseli .card__year {
  font-size:10px; letter-spacing:.2em; text-transform:uppercase;
  display:block; margin-bottom:5px; color:var(--card-coral);
}
.card--veseli .card__desc {
  font-size:clamp(12px,.9vw,13px); line-height:1.65;
  color:rgba(45,45,45,.55)}
.card--veseli .card__meta{font-family:'Dancing Script',cursive;
}
