.page-container {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.algebra2-section {
  background: linear-gradient(to right, #cfa2ff, #81c7ff);
  height: 300px;
  display: flex;
  align-items: center;
  justify-content: center; /* Center horizontally */
  padding: 20px;
  box-sizing: border-box;
}

.algebra2-container {
  max-width: 1200px;
  margin: 0 auto;
  /* Removed left padding for centering */
  text-align: center; /* Center align title and description */
}

.algebra2-title {
  font-size: 45px;
  font-weight: bold;
  margin-bottom: 10px;
}

.algebra2-description {
  font-size: 1.2rem;
}

.topics-container {
  padding: 40px 20px;
}

.topics-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.topic-card {
  background-color: #f4f4f4;
  border: 1px solid #ddd;
  border-radius: 8px;
  box-shadow: 0 2px 5px rgba(0,0,0,0.1);
  transition: transform .3s;
  padding: 15px;
  text-align: center;
}

.topic-card:hover {
  transform: translateY(-5px);
}

.topic-card a {
  text-decoration: none;
  color: inherit;
}

.topic-title {
  font-size: 1rem;
  margin: 10px 0;
}

/* Center contents and disable pointer on coming-soon cards */
.topic-card.coming-soon .coming-soon-wrapper {
  pointer-events: none;
  text-align: center;         /* center all inline content */
  opacity: 0.6;               /* dim card */
  padding: 1rem;
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* Badge centered below title */
.coming-soon-badge {
  display: inline-block;
  margin-top: 0rem;         /* small gap under the title */
  font-size: 0.75rem;
  font-weight: bold;
  padding: 4px 8px;
  border-radius: 3px;
  background-color: #ffecb3;
  color: #8a6d3b;
  white-space: nowrap;
}


