.tc-main {
  display: block;
}

.tc-section {
  padding-block: var(--space-3);
}

.tc-section:nth-child(even) {
  background: var(--color-surface-alabaster);
}

.tc-card {
  max-width: 760px;
  margin-inline: auto;
}

.tc-text-block {
  max-width: 720px;
  margin-inline: auto;
}

.tc-intro-card,
.tc-ip-card,
.tc-disclaimer-card,
.tc-updates-card {
  text-align: center;
}

.tc-usage-card {
  max-width: 800px;
}

.tc-content-stack {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.tc-block {
  min-width: 0;
}

.tc-list {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  margin-bottom: var(--space-2);
}

.tc-cta-card {
  max-width: 600px;
  text-align: center;
  border: 1px solid var(--color-border-soft);
  box-shadow: var(--shadow-elevated);
}

.tc-cta-content {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  align-items: center;
}

.tc-cta-btn {
  animation: pulse 2.5s infinite;
}

.tc-cta-btn:hover {
  animation: none;
}

@keyframes pulse {
  0% { transform: scale(1); }
  50% { transform: scale(1.05); }
  100% { transform: scale(1); }
}

@media (max-width: 600px) {
  .tc-card {
    padding: var(--space-2);
  }

  .tc-text-block {
    max-width: 100%;
  }
}
