.public-talent-intake {
  --font-body: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-heading: Georgia, "Times New Roman", serif;
  padding: clamp(2.5rem, 6vw, 5rem) 0 clamp(4rem, 8vw, 7rem);
  background: var(--color-bg-muted);
}

.public-talent-intake .external-main.talent-intake-main {
  padding-top: 0;
  padding-bottom: 0;
}

.public-talent-intake .external-page-header {
  margin-top: 0;
}

.public-talent-intake .external-page-header h1 {
  color: var(--ink);
  font-family: var(--font-serif);
  font-weight: 500;
  line-height: 1.02;
  letter-spacing: -.035em;
}

.public-talent-intake .external-page-header p {
  color: var(--muted);
}

.public-talent-intake .talent-steps li,
.public-talent-intake .talent-thank-you {
  background-color: var(--color-surface, #fff);
}

.public-talent-intake .talent-intake-form,
.public-talent-intake .talent-form-section,
.public-talent-intake .talent-resume-actions {
  background-color: transparent;
}

.public-talent-intake .form-actions {
  border-top: 0;
}

.public-talent-intake .talent-steps li.is-active {
  background-color: var(--color-primary-soft);
  box-shadow: inset 0 .2rem 0 var(--color-secondary), var(--shadow-sm);
}

.public-talent-intake .file-upload {
  background-color: var(--color-bg-muted);
}

.public-talent-intake .file-upload:hover {
  border-color: var(--color-primary);
  background-color: var(--color-bg-muted);
}

.public-talent-intake .file-upload-icon {
  border-radius: 50%;
  box-shadow: var(--shadow-sm);
}

.public-talent-intake .external-form {
  margin-top: 0;
}

.public-talent-intake .talent-thank-you a[href="/"] {
  text-decoration: none;
}

.page-loading-overlay[hidden],
.public-talent-intake [hidden] {
  display: none !important;
}

/* Shared Talent layout utilities define a compact flex footer. The public
   shell owns its footer and must remain a full-width block with a grid above
   the legal row. */
body > .site-footer {
  display: block;
  align-items: initial;
  justify-content: initial;
  gap: 0;
  text-align: left;
}

@media (max-width: 48rem) {
  .public-talent-intake {
    padding-top: 2rem;
  }
}
