/* === Consultation CTA block === */
/* Reusable across the science/learn content pages.
   Uses tokens from public/css/main.css. No new color tokens. */

.pycta-section {
  padding: clamp(60px, 8vw, 100px) 0;
  background: var(--color-bg);
  border-top: 1px solid var(--color-border);
}

.pycta-inner {
  /* composes with .container (max-width + horizontal padding) */
}

.pycta-card {
  padding: clamp(32px, 4vw, 56px) clamp(24px, 4vw, 48px);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: 4px;
  text-align: left;
}

.pycta-eyebrow {
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: 0.8rem;
}

.pycta-headline {
  font-family: var(--font-serif);
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  font-weight: 400;
  line-height: 1.25;
  color: var(--color-text-primary);
  margin-bottom: 0.9rem;
  max-width: 720px;
}

.pycta-lead {
  font-size: 0.98rem;
  line-height: 1.7;
  color: var(--color-text-secondary);
  max-width: 640px;
  margin-bottom: 1.6rem;
}

.pycta-btn {
  display: inline-block;
  font-family: var(--font-serif);
  font-size: 1.05rem;
  color: var(--color-accent-dark);
  text-decoration: none;
  border-bottom: 2px solid var(--color-accent);
  padding-bottom: 4px;
  transition: color 0.2s, border-color 0.2s;
}

.pycta-btn:hover {
  color: var(--color-text-primary);
  border-bottom-color: var(--color-text-primary);
}

.pycta-note {
  font-size: 0.85rem;
  color: var(--color-text-secondary);
  margin-top: 1.1rem;
}

@media (max-width: 760px) {
  .pycta-headline {
    font-size: 1.45rem;
  }
}
