:root {
  --colorPrimary900: rgba(46, 22, 22, 1);
  --colorPrimary600: rgba(46, 22, 22, 1);
  --widthMaxJobBoard: none;
  --borderRadiusContainer: 18px;
  --borderRadiusControl: 12px;
  --borderRadiusButton: 12px;
  --fontFamily: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
  --colorAppBackground: #f3f1ee;

  --ashbyBrown: rgba(46, 22, 22, 1);
  --ashbyButtonBg: rgba(237, 231, 222, 1);
  --ashbyPink: rgba(255, 175, 244, 1);
  --ashbyHeadingText: rgba(252, 248, 242, 1);
  --ashbyRoleText: rgba(252, 248, 242, 0.8);
  --ashbyRoleTextHover: rgba(252, 248, 242, 1);
  --ashbyDivider: rgba(252, 248, 242, 0.1);
}

html,
body {
  background: var(--colorAppBackground);
}

/* Application autofill input's base layer element. This contains standard copy, a CTA button, and potential validation alerts. */
.ashby-application-form-autofill-input-base-layer {}

/* Application autofill input's description. */
.ashby-application-form-autofill-input-description {}

/* Application autofill input's drag state overlay element. Can style [data-state] which can be 'active' or 'hidden'. */
.ashby-application-form-autofill-input-drag-layer {}

/* Application autofill input form's alert element. Can style [data-highlight] which can be 'negative' or 'positive'. */
.ashby-application-form-autofill-input-form-alert {}

/* Application autofill input's magic sparkles icon. */
.ashby-application-form-autofill-input-icon {}

/* Application autofill input's pending state overlay element. Can style [data-state] which can be 'active' or 'hidden'. */
.ashby-application-form-autofill-input-pending-layer {}

/* Application autofill input's root element. Can style [data-state] which can be 'pending', 'drag', or 'default'. */
.ashby-application-form-autofill-input-root {}

/* Application autofill input's title. */
.ashby-application-form-autofill-input-title {}

/* Container element for application autofill input form. */
.ashby-application-form-autofill-pane {}

/* The resume uploader to auto-fill the application form */
.ashby-application-form-autofill-uploader {}

/* A container for displaying the custom message to the user */
.ashby-application-form-blocked-application-container {}

/* A container for the application form. */
.ashby-application-form-container {
  border-radius: var(--borderRadiusContainer);
}

/* A container for the failure message */
.ashby-application-form-failure-container {}

/* A container for the label and input on an application form. */
.ashby-application-form-field-entry {}

/* The description of each question on an application form. Will only show if a description is specified. */
.ashby-application-form-question-description {}

/* The title of each question on an application form. */
.ashby-application-form-question-title {}

/* A single section on the Ashby application form. All questions will be wrapped in sections, though the default section may not have a title. */
.ashby-application-form-section-container {}

/* The header for an application form section, possibly containing a title and description. */
.ashby-application-form-section-header {}

/* The description for an application form section. May not exist if no description was specified. */
.ashby-application-form-section-header-description {}

/* The title for an application form section. May not exist for the default section. */
.ashby-application-form-section-header-title {}

/* The application submission button. */
.ashby-application-form-submit-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 0.75rem 1.125rem !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: var(--ashbyButtonBg) !important;
  color: var(--ashbyBrown) !important;
  text-decoration: none !important;
  box-shadow: none !important;
  font-weight: 600 !important;
  transition: background-color 180ms ease, color 180ms ease, transform 180ms ease !important;
}

.ashby-application-form-submit-button:hover,
.ashby-application-form-submit-button:focus-visible {
  background: var(--ashbyPink) !important;
  color: var(--ashbyBrown) !important;
  transform: translateY(-1px);
}

/* A container for the success message */
.ashby-application-form-success-container {}

/* The text message consent description. Displayed below phone number fields. Will only show if texting is enabled. */
.ashby-application-form-texting-consent-description {}

/* The heading of a department, which can have many teams under it. */
.ashby-department-heading,
.ashby-job-posting-brief-department-heading {
  color: var(--ashbyHeadingText) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 2.25rem !important;
  line-height: 1.05 !important;
  font-weight: 500 !important;
  letter-spacing: -0.02em !important;
  margin: 0 !important;
}

/* The heading of a single team. */
.ashby-department-heading-level,
.ashby-job-posting-brief-department-heading-level {
  color: var(--ashbyHeadingText) !important;
  font-weight: 500 !important;
}

/* The button which allows users to navigate from an individual posting back to the list of all job postings. */
.ashby-job-board-back-to-all-jobs-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 0.75rem 1.125rem !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: var(--ashbyButtonBg) !important;
  color: var(--ashbyBrown) !important;
  text-decoration: none !important;
  box-shadow: none !important;
  font-weight: 600 !important;
  transition: background-color 180ms ease, color 180ms ease, transform 180ms ease !important;
}

.ashby-job-board-back-to-all-jobs-button:hover,
.ashby-job-board-back-to-all-jobs-button:focus-visible {
  background: var(--ashbyPink) !important;
  color: var(--ashbyBrown) !important;
  transform: translateY(-1px);
}

/* A select box element for filtering the job board. */
.ashby-job-board-filter {
  min-height: 48px !important;
  padding: 0.75rem 1rem !important;
  border: 1px solid var(--ashbyBrown) !important;
  border-radius: 12px !important;
  background: transparent !important;
  color: var(--ashbyBrown) !important;
  box-shadow: none !important;
  font-weight: 600 !important;
}

/* Optional: first filter dark like the mock */
.ashby-job-board-filter:first-of-type {
  background: var(--ashbyBrown) !important;
  color: var(--ashbyHeadingText) !important;
  border-color: var(--ashbyBrown) !important;
}

/* The 'Filters' label element in the job board. */
.ashby-job-board-filters-label {
  display: none !important;
}

/* The heading of the entire job board. */
.ashby-job-board-heading {
  margin-bottom: 2.5rem !important;
  color: var(--ashbyBrown) !important;
  text-align: center !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 4.5rem !important;
  line-height: 0.95 !important;
  font-weight: 500 !important;
  letter-spacing: -0.03em !important;
}

/* The count of job postings on the job board. */
.ashby-job-board-heading-count {
  display: none !important;
}

/* The 'Reset filters' label element in the job board. */
.ashby-job-board-reset-filters-label {
  display: none !important;
}

/* The container of the job posting details pane. */
.ashby-job-posting-brief {
  margin-bottom: 12px !important;
  padding: 1.6rem 1.4rem !important;
  border: 0 !important;
  border-radius: 18px !important;
  background: var(--ashbyBrown) !important;
  box-shadow: none !important;
}

/* The heading of a department name. Departments group teams. */
.ashby-job-posting-brief-department-heading {}

/* The heading of a single team. */
.ashby-job-posting-brief-department-heading-level {}

/* The container for the details of the job posting, in the details pane. */
.ashby-job-posting-brief-details {
  padding: 1.2rem 0 !important;
  border-top: 1px dashed var(--ashbyDivider) !important;
}

.ashby-job-posting-brief-details:first-child {
  padding-top: 0 !important;
  border-top: 0 !important;
}

.ashby-job-posting-brief-details:last-child {
  padding-bottom: 0 !important;
}

/* The container for the list of job post briefings. */
.ashby-job-posting-brief-list {
  display: grid !important;
  gap: 12px !important;
}

/* The title of the job posting in the details pane. */
.ashby-job-posting-brief-title,
.ashby-job-posting-brief-title a {
  color: var(--ashbyRoleText) !important;
  font-size: 1.75rem !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: color 180ms ease !important;
}

.ashby-job-posting-brief-title:hover,
.ashby-job-posting-brief-title:hover a,
.ashby-job-posting-brief-title a:hover,
.ashby-job-posting-brief-title a:focus-visible {
  color: var(--ashbyRoleTextHover) !important;
}

/* Apply role button inside each job row */
.ashby-job-posting-brief-details > a:last-child,
.ashby-job-posting-brief-details > div:last-child a,
.ashby-job-posting-brief-details button,
.ashby-job-posting-brief-details [role="button"] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 0.75rem 1.125rem !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: var(--ashbyButtonBg) !important;
  color: var(--ashbyBrown) !important;
  text-decoration: none !important;
  box-shadow: none !important;
  font-weight: 600 !important;
  transition: background-color 180ms ease, color 180ms ease, transform 180ms ease !important;
}

.ashby-job-posting-brief-details > a:last-child:hover,
.ashby-job-posting-brief-details > a:last-child:focus-visible,
.ashby-job-posting-brief-details > div:last-child a:hover,
.ashby-job-posting-brief-details > div:last-child a:focus-visible,
.ashby-job-posting-brief-details button:hover,
.ashby-job-posting-brief-details button:focus-visible,
.ashby-job-posting-brief-details [role="button"]:hover,
.ashby-job-posting-brief-details [role="button"]:focus-visible {
  background: var(--ashbyPink) !important;
  color: var(--ashbyBrown) !important;
  transform: translateY(-1px);
}

/* The main header on the job posting page */
.ashby-job-posting-header {}

/* The heading of a job post */
.ashby-job-posting-heading {
  color: var(--ashbyBrown) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 500 !important;
  letter-spacing: -0.02em !important;
}

/* The left pane of the job posting, with the job posting details */
.ashby-job-posting-left-pane {}

/* The right pane of the job posting, containing the tabs, overview, and application form */
.ashby-job-posting-right-pane {}

/* The application tab in the right pane of the job posting */
.ashby-job-posting-right-pane-application-tab {}

/* The overview tab in the right pane of the job posting */
.ashby-job-posting-right-pane-overview-tab {}

/* The tabs slider in the right pane of the job posting */
.ashby-job-posting-right-pane-tab-slider {
  background: var(--ashbyPink) !important;
}

/* A container for any surveys specified for this application form. */
.ashby-survey-form-container {}

/* Tablet */
@media (max-width: 991px) {
  .ashby-job-board-heading {
    font-size: 3.5rem !important;
    margin-bottom: 2rem !important;
  }

  .ashby-department-heading,
  .ashby-job-posting-brief-department-heading {
    font-size: 1.9rem !important;
  }

  .ashby-job-posting-brief-title,
  .ashby-job-posting-brief-title a {
    font-size: 1.5rem !important;
  }

  .ashby-job-posting-brief {
    padding: 1.3rem 1.1rem !important;
  }

  .ashby-job-posting-brief-details {
    padding: 1rem 0 !important;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .ashby-job-board-heading {
    font-size: 2.75rem !important;
    line-height: 1 !important;
    margin-bottom: 1.5rem !important;
  }

  .ashby-department-heading,
  .ashby-job-posting-brief-department-heading {
    font-size: 1.6rem !important;
    line-height: 1.1 !important;
  }

  .ashby-job-posting-brief-title,
  .ashby-job-posting-brief-title a {
    font-size: 1.25rem !important;
    line-height: 1.25 !important;
  }

  .ashby-job-posting-brief {
    padding: 1rem 0.9rem !important;
    border-radius: 14px !important;
  }

  .ashby-job-posting-brief-details {
    padding: 0.9rem 0 !important;
  }

  .ashby-job-board-filter,
  .ashby-job-board-back-to-all-jobs-button,
  .ashby-application-form-submit-button,
  .ashby-job-posting-brief-details > a:last-child,
  .ashby-job-posting-brief-details > div:last-child a,
  .ashby-job-posting-brief-details button,
  .ashby-job-posting-brief-details [role="button"] {
    min-height: 44px !important;
    padding: 0.65rem 0.95rem !important;
    border-radius: 10px !important;
  }
}