/* ============================================================
   BELISAR × ASHBY
   ============================================================ */

:root {
  /* Page background */
  --colorAppBackground: #FFFCF4;

  /*
   * Ashby uses these primary colors for built-in controls,
   * including controls that do not have their own custom class.
   *
   * Keep BOTH dark so hover states stay high-contrast.
   */
  --colorPrimary900: #22211F !important;
  --colorPrimary600: #22211F !important;

  /* Widths */
  --widthMaxContent: 1100px;
  --widthMaxJobBoard: 1100px;
  --widthMaxSubscriptionPreferences: 800px;

  /* Square / editorial styling */
  --borderRadiusContainer: 0px;
  --borderRadiusControl: 0px;
  --borderRadiusButton: 0px;

  /* Typography */
  --fontFamily:
    "ABC Diatype",
    "Helvetica Neue",
    Arial,
    sans-serif;
}


/* ============================================================
   JOB BOARD HEADING
   ============================================================ */

.ashby-job-board-heading {
  color: #22211F;

  font-size: 22px;
  line-height: 1.15;
  font-weight: 600;

  letter-spacing: -0.02em;

  margin-bottom: 28px;
}

.ashby-job-board-heading-count {
  color: #656464;
}


/* ============================================================
   FILTERS
   ============================================================ */

.ashby-job-board-filters-label {
  color: #656464;

  font-size: 11px;
  font-weight: 500;

  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.ashby-job-board-filter {
  background: #FFFCF4;
  color: #22211F;

  border: 1px solid #E1DED6;
  border-radius: 0px;

  box-shadow: none;
}

.ashby-job-board-reset-filters-label {
  color: #656464;
}


/* ============================================================
   DEPARTMENT HEADINGS
   ============================================================ */

.ashby-department-heading {
  color: #22211F;

  font-size: 12px;
  line-height: 1.2;
  font-weight: 600;

  letter-spacing: 0.06em;
  text-transform: uppercase;

  margin-top: 48px;
  padding-top: 14px;

  border-top: 1px solid #E1DED6;
}

.ashby-department-heading-level {
  color: #656464;

  font-size: 12px;
  font-weight: 500;

  letter-spacing: 0.04em;
  text-transform: uppercase;
}


/* ============================================================
   JOB LIST
   ============================================================ */

.ashby-job-posting-brief-list {
  margin-top: 4px;
}

.ashby-job-posting-brief {
  margin-bottom: 0px;

  padding-top: 22px;
  padding-bottom: 22px;

  background: transparent;

  border-bottom: 1px solid #E1DED6;
  border-radius: 0px;

  box-shadow: none;

  transition: background-color 150ms ease;
}

.ashby-job-posting-brief:hover {
  background: #F9F5E7;
}


/* ============================================================
   JOB TITLE + DETAILS
   ============================================================ */

.ashby-job-posting-brief-title {
  color: #22211F;

  font-size: 18px;
  line-height: 1.25;
  font-weight: 600;

  letter-spacing: -0.015em;

  margin-bottom: 6px;
}

.ashby-job-posting-brief-details {
  color: #656464;

  font-size: 12px;
  line-height: 1.5;
}

.ashby-job-posting-brief-department-heading {
  color: #656464;

  font-size: 11px;
  font-weight: 500;

  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.ashby-job-posting-brief-department-heading-level {
  color: #656464;

  font-size: 11px;
  font-weight: 500;

  letter-spacing: 0.04em;
  text-transform: uppercase;
}


/* ============================================================
   INDIVIDUAL JOB PAGE
   ============================================================ */

.ashby-job-posting-header {
  background: transparent;
}

.ashby-job-posting-heading {
  color: #22211F;

  font-size: 40px;
  line-height: 1.05;
  font-weight: 500;

  letter-spacing: -0.03em;
}

.ashby-job-posting-description-container {
  background: transparent;
}

.ashby-job-posting-description {
  color: #22211F;
}

.ashby-job-posting-left-pane {
  background: transparent;
}

.ashby-job-posting-right-pane {
  background: transparent;
}


/* ============================================================
   BACK TO ALL JOBS
   Ashby explicitly exposes this class.
   ============================================================ */

.ashby-job-board-back-to-all-jobs-button {
  background: #FFFFFF !important;
  color: #22211F !important;

  border: 1px solid #22211F !important;
  border-radius: 0px;

  box-shadow: none !important;

  font-size: 12px;
  font-weight: 600;

  transition:
    background-color 150ms ease,
    color 150ms ease;
}

.ashby-job-board-back-to-all-jobs-button:hover {
  background: #22211F !important;
  color: #FFFFFF !important;

  border-color: #22211F !important;
}


/* ============================================================
   JOB PAGE TABS
   ============================================================ */

.ashby-job-posting-right-pane-overview-tab {
  color: #22211F;
}

.ashby-job-posting-right-pane-application-tab {
  color: #22211F;
}

.ashby-job-posting-right-pane-tab-slider {
  background: #22211F;
}


/* ============================================================
   APPLICATION FORM
   ============================================================ */

.ashby-application-form-container {
  background: transparent;
  box-shadow: none;
}

.ashby-application-form-section-container {
  margin-top: 36px;
  background: transparent;
}

.ashby-application-form-section-header {
  margin-bottom: 24px;
}

.ashby-application-form-section-header-title {
  color: #22211F;

  font-size: 22px;
  line-height: 1.15;
  font-weight: 600;

  letter-spacing: -0.02em;
}

.ashby-application-form-section-header-description {
  color: #656464;
}

.ashby-application-form-field-entry {
  margin-bottom: 24px;
}

.ashby-application-form-question-title {
  color: #22211F;

  font-size: 13px;
  font-weight: 500;
}

.ashby-application-form-question-description {
  color: #656464;
}


/* ============================================================
   FORM INPUTS
   ============================================================ */

.ashby-application-form-input-text {
  background: #FFFFFF;
  color: #22211F;

  border-radius: 0px;
}

.ashby-application-form-input-textarea {
  background: #FFFFFF;
  color: #22211F;

  border-radius: 0px;
}

.ashby-application-form-input-dropdown {
  background: #FFFFFF;
  color: #22211F;

  border-radius: 0px;
}

.ashby-application-form-input-dropdown-select {
  color: #22211F;
}


/* ============================================================
   FILE UPLOAD
   ============================================================ */

.ashby-application-form-input-file {
  background: transparent;
}

.ashby-application-form-input-file-dropzone {
  background: #F9F5E7;

  border-radius: 0px;
}

.ashby-application-form-input-file-dropzone-instructions {
  color: #656464;
}

.ashby-application-form-input-file-dropzone-upload {
  color: #22211F;
}


/* ============================================================
   FINAL APPLICATION SUBMIT BUTTON
   ============================================================ */

.ashby-application-form-submit-button {
  margin-top: 40px;

  background: #FFFFFF !important;
  color: #22211F !important;

  border: 1px solid #22211F !important;
  border-radius: 0px;

  box-shadow: none !important;

  font-size: 13px;
  font-weight: 600;

  transition:
    background-color 150ms ease,
    color 150ms ease;
}

.ashby-application-form-submit-button:hover {
  background: #22211F !important;
  color: #FFFFFF !important;

  border-color: #22211F !important;
}


/* ============================================================
   SUCCESS / FAILURE
   ============================================================ */

.ashby-application-form-success-container {
  background: #F9F5E7;
  color: #22211F;

  border-radius: 0px;
}

.ashby-application-form-failure-container {
  background: #F9F5E7;
  color: #733635;

  border-radius: 0px;
}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 700px) {
  :root {
    --widthMaxContent: 100%;
    --widthMaxJobBoard: 100%;
  }

  .ashby-job-posting-heading {
    font-size: 32px;
  }

  .ashby-department-heading {
    margin-top: 36px;
  }

  .ashby-job-posting-brief {
    padding-top: 18px;
    padding-bottom: 18px;
  }
}