/* === BASE STYLES === */
.event-card {
  border-radius: 12px;
  padding: 32px;
  text-align: left;
  max-width: 650px;
  margin: 10px auto;
  border: 2px solid transparent;
  transition: all 0.3s ease;
  max-height: 600px;
  min-height: 520px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  background-color: #ffffff;
  color: #000000;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

@media only screen and (max-width: 600px) {
  .event-card {
    border-radius: 12px;
    padding: 12px;
    text-align: left;
    max-width: auto;
    margin: 5px auto;
    border: 2px solid transparent;
    transition: all 0.3s ease;
    min-height: auto;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    background-color: #ffffff;
    color: #000000;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  }
}

@media only screen and (min-width: 1200px) {
  .event-card {
    border-radius: 12px;
    padding: 30px;
    min-height: 577px;
  }
}
.event-card h3 {
  font-size: 1.5rem;
  margin-bottom: 10px;
  line-height: 100%;
  font-family: 'Inter Tight', Arial, sans-serif;
}
  margin-bottom: 10px;
  line-height: 100%;
}

/* === NEW: WRAPPER FOR TITLE + BUTTON === */
.event-header {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 10px;
}

.event-header h3 {
  margin: 0;
  padding: 0;
  font-size: 1.5rem;
  line-height: 100%;
  font-family: 'Inter Tight', Arial, sans-serif;
}

.event-button {
  display: inline-block;
  align-self: flex-start;
  padding: 12px 24px;
  font-weight: 600;
  text-decoration: none;
  border-radius: 8px;
  font-size: 1rem;
  line-height: 100%;
  text-align: left;
  max-width: 250px;
  margin: 0;
  transition: all 0.3s ease;
  margin-top: 6px;
}

/* Button hover effect (inherits existing behavior) */
.event-card:hover .event-button {
  transform: scale(1.05);
}

.event-meta {
  font-weight: 600;
  margin-bottom: 10px;
  line-height: 100%;
}

.event-description {
  margin-bottom: 10px;
  line-height: 100%;
}

.event-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}
.event-card.border-blue    { border-color: #000000; }
.event-card.border-red     { border-color: #cc4b2c; }
.event-card.border-purple  { border-color: #3e2c80; }
.event-card.border-yellow  { border-color: #d0d000; }
.event-card.border-none    { border-color: transparent; }

.theme-blue .event-button   { background-color: #0077c9; color: #fff; }
.theme-red .event-button    { background-color: #cc4b2c; color: #fff; }
.theme-purple .event-button { background-color: #3e2c80; color: #fff; }
.theme-yellow .event-button { background-color: #d0d000; color: #000; }

/* === CANNES COLORS (with !important for override) === */
.event-card.border-dark-blue {
  border-color: #292662 !important;
}
.theme-dark-blue .event-button {
  background-color: #041CFF !important;
  color: #ffffff !important;
}
}
}

.event-card.border-light-blue {
  border-color: #97C2FA !important;
}
.theme-light-blue .event-button {
  background-color: #97C2FA !important;
  color: #000000 !important;
}

.event-card.border-soft-canyon {
  border-color: #D56F4E !important;
}
.theme-soft-canyon .event-button {
  background-color: #D56F4E !important;
  color: #ffffff !important;
}

.event-card.border-satin-clay {
  border-color: #FFE4E4 !important;
}
.theme-satin-clay .event-button {
  background-color: #FFE4E4 !important;
  color: #292662 !important;
}

.event-card.border-lemon-silk {
  border-color: #DEE57D !important;
}
.theme-lemon-silk .event-button {
  background-color: #DEE57D !important;
  color: #292662 !important;
}


