.events-page { padding-bottom: 4rem; }
.events-hero { padding: 3.5rem 0 5rem; background: linear-gradient(135deg, #083a5a 0%, #0c4f7a 55%, #1572b6 100%); color: #fff; }
.events-kicker { color: #fdd835; font-size: .8rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.events-hero h1 { max-width: 680px; font-size: clamp(2.2rem, 5vw, 4rem); font-weight: 800; line-height: 1.05; }
.events-hero p { max-width: 580px; color: #d9efff; font-size: 1.1rem; }
.filters-wrap { margin-top: -2.5rem; position: relative; z-index: 1; }
.filters-card { padding: 1.25rem; border: 0; border-radius: 1rem; box-shadow: 0 1rem 2.5rem rgba(12, 79, 122, .14); }
.filters-card .form-control, .filters-card .form-select { min-height: 48px; border-color: #d5e3ed; }
.events-toolbar { padding: 2.75rem 0 1.25rem; }
.events-count { color: #667085; }
.event-card { height: 100%; overflow: hidden; border: 1px solid #e5edf3; border-radius: 1rem; background: #fff; box-shadow: 0 .35rem 1rem rgba(12, 79, 122, .07); transition: transform .2s ease, box-shadow .2s ease; }
.event-card:hover { transform: translateY(-5px); box-shadow: 0 1rem 2rem rgba(12, 79, 122, .14); }
.event-card-image { width: 100%; height: 220px; object-fit: cover; }
.event-card-body { display: flex; height: calc(100% - 220px); flex-direction: column; padding: 1.25rem; }
.event-card-category { color: #7a5c00; font-size: .75rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.event-card-title { color: var(--color-azul-oscuro); font-size: 1.25rem; font-weight: 800; }
.event-card-meta { display: flex; gap: .55rem; align-items: flex-start; color: #667085; font-size: .9rem; }
.event-card-meta i { color: var(--color-azul); }
.events-empty { padding: 4rem 1.5rem; border: 1px dashed #b8d3e6; border-radius: 1rem; background: #fff; text-align: center; }
.events-empty i { color: var(--color-azul); font-size: 3rem; }
.events-empty h2 { color: var(--color-azul-oscuro); font-weight: 800; }
@media (max-width: 767.98px) { .events-hero { padding: 2.5rem 0 4rem; } .filters-wrap { margin-top: -1.75rem; } }
