body { background: #faf9f6; }
.hero img { max-height: 420px; object-fit: cover; }
.hero-text { text-shadow: 0 2px 10px rgba(0,0,0,0.18); }
.category-card, .event-card { transition: box-shadow .2s; }
.category-card:hover, .event-card:hover { box-shadow: 0 0.5rem 1rem rgba(0,0,0,.08); }
footer { font-size: 0.95rem; }
.btn-primary { background: #e75480; border: none; }
.btn-primary:hover { background: #d1426f; }
.btn-outline-primary { border-color: #e75480; color: #e75480; }
.btn-outline-primary:hover { background: #e75480; color: #fff; }
