.lottery-hero {
  padding-top: var(--space-40);
}

.lottery-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2.5fr);
  gap: var(--space-24);
  align-items: center;
}

.lottery-hero-copy .lead {
  max-width: 36rem;
}

.lottery-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-8);
  margin-top: var(--space-12);
  margin-bottom: var(--space-8);
}

.lottery-hero-meta {
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
}

.lottery-hero-visual {
  max-width: 520px;
  margin-left: auto;
}

.lottery-steps {
  margin-top: var(--space-24);
}

.lottery-prizes-layout {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2.4fr);
  gap: var(--space-24);
  align-items: flex-start;
}

.lottery-prize-grid {
  margin-top: var(--space-16);
}

.lottery-winner-list {
  list-style: none;
  padding-left: 0;
  margin-bottom: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
}

.lottery-winner-list li {
  padding-bottom: var(--space-6);
  border-bottom: 1px solid var(--color-gray-200);
}

.lottery-winner-list li:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.winner-name {
  display: block;
  font-weight: 600;
}

.winner-detail {
  display: block;
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
}

.lottery-winners-cta {
  margin-top: var(--space-12);
  width: 100%;
}

.lottery-dates-card {
  margin-top: var(--space-16);
}

.lottery-dates-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-20);
}

.lottery-dates-list {
  padding-left: 1.25rem;
}

.lottery-tickets-layout {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2.2fr);
  gap: var(--space-24);
  align-items: flex-start;
}

.lottery-ticket-options {
  margin-top: var(--space-16);
}

.lottery-impact-layout {
  display: grid;
  grid-template-columns: minmax(0, 2.3fr) minmax(0, 3fr);
  gap: var(--space-24);
  align-items: center;
}

.lottery-impact-image {
  max-height: 360px;
}

.lottery-impact-grid {
  margin-top: var(--space-12);
  gap: var(--space-16);
}

.lottery-winners-grid {
  margin-top: var(--space-16);
}

.lottery-winner-meta {
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
}

.lottery-responsible-layout {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2.4fr);
  gap: var(--space-24);
  align-items: flex-start;
}

.lottery-responsible-list {
  padding-left: 1.25rem;
}

.lottery-faq-grid {
  margin-top: var(--space-16);
}

.lottery-faq-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
}

.lottery-faq-item {
  padding: 0;
}

.lottery-faq-toggle {
  width: 100%;
  text-align: left;
  padding: var(--space-12) var(--space-16);
  background-color: transparent;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: 600;
  cursor: pointer;
}

.lottery-faq-icon {
  font-size: var(--font-size-lg);
  color: var(--color-primary);
}

.lottery-faq-panel {
  padding: 0 var(--space-16) var(--space-12);
  border-top: 1px solid var(--color-gray-200);
}

.lottery-support-layout {
  display: block;
}

.lottery-support-grid {
  margin-top: var(--space-16);
  gap: var(--space-16);
}

.lottery-cta {
  background: radial-gradient(circle at top left, var(--color-primary-soft) 0, transparent 55%), radial-gradient(circle at bottom right, var(--color-accent-soft) 0, transparent 55%);
}

.lottery-cta-inner {
  display: flex;
  justify-content: center;
}

.lottery-cta-content {
  max-width: 640px;
  text-align: center;
}

.lottery-cta-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-8);
  margin-top: var(--space-12);
}

@media (max-width: 991px) {
  .lottery-hero-grid,
  .lottery-prizes-layout,
  .lottery-dates-grid,
  .lottery-tickets-layout,
  .lottery-impact-layout,
  .lottery-responsible-layout {
    grid-template-columns: 1fr;
  }

  .lottery-hero-visual,
  .lottery-impact-image {
    max-width: 100%;
    order: -1;
  }
}

@media (max-width: 767px) {
  .lottery-hero {
    padding-top: var(--space-32);
  }

  .lottery-hero-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .lottery-winners-cta {
    width: 100%;
  }

  .lottery-faq-toggle {
    padding: var(--space-10) var(--space-12);
  }

  .lottery-faq-panel {
    padding: 0 var(--space-12) var(--space-10);
  }
}
