/* stylelint-disable */

@import url("https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,400..500;1,6..72,400&family=Geist+Mono:wght@400;500&display=swap");

:root {
  /* Site palette */
  --ink: #0c0c0c;
  --ink-soft: #1b1b1b;
  --muted: #b3b3b0;
  --muted-2: #8d8d8a;
  --line: #ececea;
  --fill: #ecebe7;
  --join: #6B8159;
  --join-hover: #5E724E;

  --serif: "Newsreader", Georgia, "Times New Roman", serif;
  --mono: "Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;

  /* Ashby hooks */
  --colorPrimary900: var(--join-hover);  /* or set in Ashby admin theme settings */
  --colorPrimary600: var(--join);
  --colorAppBackground: #ffffff;
  --widthMaxJobBoard: 720px;             /* matches .careers column */
  --borderRadiusContainer: 10px;
  --borderRadiusControl: 8px;
  --borderRadiusButton: 999px;           /* pill buttons */
  --fontFamily: var(--serif);
}

body {
  font-family: var(--serif);
  color: var(--ink);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* ── Headings ─────────────────────────────────────────────────── */
.ashby-job-board-heading,
.ashby-job-posting-heading,
.ashby-job-posting-brief-title,
.ashby-application-form-section-header-title {
  font-family: var(--serif);
  font-weight: 500;
  letter-spacing: 0.1px;
  color: var(--ink);
}

.ashby-job-board-heading { font-size: 30px; line-height: 1.25; }
.ashby-job-posting-heading { font-size: 30px; line-height: 1.25; }
.ashby-job-posting-brief-title { font-size: 19px; line-height: 1.3; }
.ashby-application-form-section-header-title { font-size: 22px; }

.ashby-job-board-heading-count {
  font-family: var(--mono);
  font-size: 12px;
  font-weight: 400;
  color: var(--muted);
}

/* ── Department/team labels: mono uppercase, like .jobs__dept ── */
.ashby-department-heading,
.ashby-department-heading-level,
.ashby-job-posting-brief-department-heading,
.ashby-job-posting-brief-department-heading-level {
  font-family: var(--mono);
  font-weight: 400;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: var(--muted-2);
}

/* ── Body copy ────────────────────────────────────────────────── */
.ashby-job-posting-brief-details,
.ashby-application-form-section-header-description {
  font-family: var(--serif);
  font-size: 16px;
  line-height: 1.6;
  color: var(--ink-soft);
}

/* ── Form fields ──────────────────────────────────────────────── */
.ashby-application-form-field-entry { margin-bottom: 22px; }

.ashby-application-form-question-title {
  font-family: var(--serif);
  font-size: 16px;
  font-weight: 500;
  color: var(--ink);
}

.ashby-application-form-question-description,
.ashby-application-form-texting-consent-description {
  font-family: var(--serif);
  font-size: 15px;
  font-weight: 400;
  line-height: 1.55;
  color: var(--muted-2);
}

/* ── Buttons: pill, like .btn / .btn--join ────────────────────── */
.ashby-application-form-submit-button {
  background: var(--join);
  border: 1px solid var(--join);
  border-radius: 999px;
  color: #ffffff;
  font-family: var(--serif);
  font-size: 16px;
  font-weight: 500;
  padding: 10px 20px;
  transition: background 0.15s ease, border-color 0.15s ease;
}
.ashby-application-form-submit-button:hover {
  background: var(--join-hover);
  border-color: var(--join-hover);
}

.ashby-job-board-back-to-all-jobs-button {
  font-family: var(--serif);
  font-size: 15px;
  font-weight: 400;
  color: var(--ink);
  border-radius: 999px;
  transition: background 0.15s ease;
}
.ashby-job-board-back-to-all-jobs-button:hover { background: var(--fill); }

/* ── Job board filters ────────────────────────────────────────── */
.ashby-job-board-filters-label,
.ashby-job-board-reset-filters-label {
  font-family: var(--serif);
  font-size: 14px;
  color: var(--muted-2);
}
.ashby-job-board-filter {
  font-family: var(--serif);
  font-size: 15px;
  border-color: var(--line);
}

/* ── Posting list rows: hover fill like .job ──────────────────── */
.ashby-job-posting-brief {
  margin-bottom: 10px;
  border-radius: 6px;
  transition: background 0.15s ease;
}
.ashby-job-posting-brief:hover { background: var(--fill); }

/* ── Section containers ───────────────────────────────────────── */
.ashby-application-form-section-container { margin-bottom: 40px; }
.ashby-application-form-section-header { margin-bottom: 18px; }
