 body {
     font-family: 'Inter', sans-serif;
     background-color: #f4f4f4;
 }

 .manrope {
     font-family: 'Manrope', sans-serif;
 }

 .page-title {
     font-weight: 700;
     font-size: 32px;
     color: #003366;
 }

 /* Filter bar */
 .filter-bar .btn {
     border-radius: 8px;
     background: #eee;
     font-size: 14px;
 }

 /* Event Card */
 .event-card {
     border-radius: 12px;
     overflow: hidden;
     transition: 0.3s;
     border: 1px solid #e0e0e0;
     background: #fff;
     position: relative;
     display: flex;
     /* ADD THIS */
     flex-direction: column;
     /* ADD THIS */
     height: 100%;
 }

 .event-card:hover {
     transform: translateY(-5px);
     box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
 }

 .event-img {
     height: 200px;
     object-fit: cover;
 }

 /* Date badge */
 .date-badge {
     position: absolute;
     top: 15px;
     right: 15px;
     background: white;
     width: 70px;
     height: 70px;
     border-radius: 50%;
     text-align: center;
     font-weight: 600;
     box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
     padding-top: 15px;
     font-size: 13px;
 }

 .event-body {
     padding: 20px 20px 11px 20px;
     flex-grow: 1;
 }

 .event-bottom {
     display: flex;
     align-items: center;
     height: 45px;
     border-top: 1px solid #007bff;
     background: linear-gradient(135deg, #bdddff 35%, #92c0f0 99%);
 }

 .register {
     margin: 0;
     /* IMPORTANT: remove default <p> margin */
     color: #003366;
     font-weight: 600;
 }

 .event-title {
     font-weight: 600;
     font-size: 18px;
     margin-top: 10px;
     color: #003366;
     /* min-height: 48px; */
 }

 .event-location {
     font-size: 14px;
     color: #666;
 }

 /* Tags */
 .tag {
     font-size: 12px;
     padding: 4px 8px;
     border-radius: 6px;
     margin-right: 5px;
     display: inline-block;
 }

 .tag-primary {
     background: #e7f1ff;
     color: #006aff;
     border: 1px solid #c0d8f9;
 }

 .tag-success {
     background: #f4f7f9;
     color: #003366;
     border: 1px solid #cfd8e3;
 }

 .tag-info {
     background: #e8f0fe;
     color: #007bff;
 }

 .sold-out {
     color: #dc3545;
     font-weight: 500;
     margin-top: 10px;
 }

 /* Search input */
 .search-box {
     border-radius: 8px;
 }

 .event-card {
     height: 100%;
 }

 /* Filter bar background */
 /* .filter-bar-wrapper {
            background: #ffffff;
            border-radius: 12px;
            box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);
        } */

 /* Improved select styling */
 .custom-filter {
     appearance: none;
     -webkit-appearance: none;
     -moz-appearance: none;

     background: #ecedee url("data:image/svg+xml;utf8,<svg fill='%23003366' height='20' viewBox='0 0 24 24' width='20' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>") no-repeat right 12px center;

     border: 1px solid #e0e0e0;
     padding: 8px 40px 8px 15px;
     border-radius: 8px;
     font-size: 14px;
     color: #003366;
     min-width: 170px;
     cursor: pointer;
     transition: 0.3s;
 }

 .custom-filter:hover {
     background-color: #d4d4d4;
 }

 .custom-filter:focus {
     outline: none;
     box-shadow: 0 0 0 3px rgba(111, 66, 193, 0.15);
 }