/* ==========================================================================
   Sponsorship Page Styles
   ========================================================================== */

.tier-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1.5rem;
  margin: 2rem 0;
}

.tier-card {
  background: var(--warm-white);
  border-radius: var(--radius-lg);
  padding: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--border-color);
  transition: box-shadow 0.2s ease;
}

.tier-header {
  padding: 1rem 1.5rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
}

.tier-name {
  font-family: var(--font-heading);
  font-size: 1.25rem;
  font-weight: 700;
  color: white;
}

.tier-price {
  font-family: var(--font-mono);
  font-size: 1rem;
  font-weight: 600;
  color: white;
  opacity: 0.95;
}

.tier-availability {
  font-family: var(--font-mono);
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--warm-gray);
  padding: 1rem 1.5rem 0;
  border-top: none;
}

ul.tier-benefits {
  /* list-style: none; */
  padding: 1rem 1.5rem 1.5rem 2.25rem;
  margin: 0;
  flex-grow: 1;
}

.tier-benefits li {
  position: relative;
  padding-left: 0.25rem;
  margin-bottom: 0.5rem;
  font-size: 0.95rem;
  color: var(--charcoal);
}

.tier-benefits li::marker {
  color: var(--plum);
}

.tier-benefits li:last-child {
  margin-bottom: 0;
}

.tier-note {
  font-size: 0.85rem;
  color: var(--warm-gray);
  font-style: italic;
  margin: 0;
}


.tier-platinum .tier-header {
  background: linear-gradient(60deg, var(--plum), var(--light-plum));
  /* var(--plum)); */
  /* background: linear-gradient(135deg, var(--dark-plum) 0%, var(--plum) 100%); */
}

.tier-platinum .tier-benefits li::marker {
  color: var(--plum);
}

.tier-gold .tier-header {
  background: linear-gradient(60deg,
      #b57935,
      #e49825);
      /* #ba7f3b); */
  /* background: linear-gradient(135deg, #8B6914 0%, #B8860B 100%); */
}

.tier-gold .tier-benefits li::marker {
  color: #B8860B;
}

.tier-silver .tier-header {
  background: linear-gradient(60deg,
      #8c8b88,
      #a1a1a1);
  /* #706F6B); */
}

.tier-silver .tier-benefits li::marker {
  color: #63625D;
}

.tier-bronze .tier-header {
  background:
    linear-gradient(60deg,
      #9a6147,
      #c27551);
  /* #9a6147); */
}

.tier-bronze .tier-benefits li::marker {
  color: #9a6147;
}

.tier-community .tier-header {
  background: linear-gradient(60deg, var(--blue),
      #3da6d0);
  /* var(--blue)); */
}

.tier-community .tier-benefits li::marker {
  color: var(--blue);
}

@media (max-width: 768px) {
  .tier-grid {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .tier-header {
    padding: 1rem 1.25rem;
  }

  .tier-name {
    font-size: 1.1rem;
  }

  .tier-price {
    font-size: 0.9rem;
  }

  .tier-benefits {
    padding: 0.75rem 1.25rem 1.25rem;
  }

  .tier-benefits li {
    font-size: 0.9rem;
  }
}

@media (min-width: 1200px) {
  .tier-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .tier-card {
    min-width: 0;
  }
}

/* ==========================================================================
   Sponsorship Timeline - Active Deadline Styling
   ========================================================================== */

/* Override the timeline marker for active deadline items */
.timeline-item.active-deadline::before {
  box-shadow: 0 0 0 2px var(--plum);
  animation: pulse-deadline 2s ease-in-out infinite;
}

/* More pronounced pulse animation for deadlines */
@keyframes pulse-deadline {
  0%, 80% {
    box-shadow: 0 0 0 2px var(--plum);
  }
  40% {
    box-shadow: 0 0 0 4px var(--plum), 0 0 6px var(--plum);
  }
}

/* Past deadlines get a muted appearance */
.timeline-item.past-deadline::before {
  background: var(--light-gray);
  box-shadow: 0 0 0 2px var(--light-gray);
  text-decoration: line-through;
}

.timeline-item.past-deadline .timeline-date {
  color: var(--warm-gray);
  text-decoration: line-through;
}

.timeline-item.past-deadline .timeline-label {
  color: var(--warm-gray);
  text-decoration: line-through;
}

/* Respect reduced motion preferences */
@media (prefers-reduced-motion: reduce) {
  .timeline-item.active-deadline::before {
    animation: none;
    box-shadow: 0 0 0 3px var(--plum);
  }
}
