/* stylelint-disable */

/* ==========================================================================
   GT Standard – from Webflow CDN (.otf = OpenType)
   Add more @font-face blocks below for other weights (Regular, Medium, Bold) when you have URLs.
   ========================================================================== */
   @font-face {
    font-family: "GT Standard";
    src: url("https://cdn.prod.website-files.com/697732d0a9e7ed6e5a43811f/6979bb03d3584700c1e1abe4_GT-Standard-L-Standard-Light-Trial.otf") format("opentype");
    font-weight: 300;
    font-display: swap;
  }
  
  /* ==========================================================================
     Ashby Custom Iframe - Left-aligned
     ========================================================================== */
  :root {
    --widthMaxJobBoard: 100%;
    --widthMaxContent: 100%;
    --colorAppBackground: transparent;
    --fontFamily: "GT Standard", "-apple-system", "BlinkMacSystemFont", "Segoe UI", "Helvetica", "Arial", sans-serif;
  }
  
  .ashby-job-board-back-to-all-jobs-button {
    box-shadow: none !important;
    border: none !important;
    background: transparent !important;
    padding-left: var(--spacingLarge) !important;
  }

  .ashby-job-posting-heading {
    text-align: left !important;
    margin: 0 0 0 -16px !important;
    padding: 0 !important;
  }

  /* Keep within container without clipping text (no overflow-x: hidden) */
  .ashby-job-board-heading,
  .ashby-job-board-filters-label,
  .ashby-job-board-reset-filters-label,
  .ashby-job-board-filter,
  .ashby-job-posting-brief-list,
  .ashby-job-posting-brief,
  .ashby-job-posting-brief-details,
  .ashby-job-posting-brief-title,
  .ashby-department-heading,
  .ashby-department-heading-level,
  .ashby-job-posting-left-pane,
  .ashby-job-posting-right-pane,
  .ashby-application-form-container {
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }
  
  .ashby-job-posting-brief-details,
  .ashby-job-posting-brief-title {
    overflow-wrap: break-word;
    word-break: break-word;
    min-width: 0;
  }
  
  /* ==========================================================================
     Align title, filters, and jobs to the same left margin (match the title)
     ========================================================================== */
  .ashby-job-board-heading,
  .ashby-job-board-heading-count {
    margin-left: 0 !important;
    padding-left: 0 !important;
  }
  
  .ashby-job-board-heading {
    margin-top: var(--spacingLarge) !important;
    margin-right: auto;
    max-width: 100%;
    background: transparent;
    line-height: 1.5;
    overflow-x: hidden;
  }
  
  /* Same left margin for filters and jobs (no negative margin to avoid overflow) */
  .ashby-job-board-filters-label,
  .ashby-job-board-reset-filters-label,
  .ashby-job-board-filter,
  .ashby-job-board-back-to-all-jobs-button,
  .ashby-job-posting-brief-list,
  .ashby-job-posting-brief,
  .ashby-job-posting-brief-details,
  .ashby-job-posting-brief-title,
  .ashby-job-posting-brief-department-heading,
  .ashby-job-posting-brief-department-heading-level,
  .ashby-department-heading,
  .ashby-department-heading-level {
    margin-left: 0 !important;
    padding-left: 0 !important;
  }
  
  .ashby-job-board-filter,
  .ashby-job-board-filters-label,
  .ashby-job-board-reset-filters-label {
    margin-right: auto;
  }
  
  .ashby-job-posting-brief-list {
    margin-right: auto;
    max-width: 100%;
    background: transparent;
    display: flex;
    flex-direction: column;
    gap: var(--spacingNormal);
  }
  
  .ashby-job-posting-brief {
    margin-right: auto;
    padding: var(--spacingNormal) var(--spacingXlarge) var(--spacingNormal) var(--spacingNormal) !important;
  }
  
  .ashby-department-heading,
  .ashby-department-heading-level {
    margin-right: auto;
  }

  .ashby-department-heading:first-child {
    margin-top: 0 !important;
  }
  
  .ashby-job-posting-left-pane {
    margin-left: 0 !important;
    margin-right: auto;
    padding-left: 0 !important;
    padding-right: 42px !important;
    width: 100% !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  
  .ashby-job-posting-right-pane,
  .ashby-job-posting-right-pane > * {
    margin-left: 0 !important;
    margin-right: auto;
    padding-left: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
  }
  
  .ashby-application-form-container {
    margin-left: 0 !important;
    margin-right: auto;
    padding-left: 0 !important;
    background: transparent;
  }
  
  /* ==========================================================================
     Larger font sizes + 14pt line height (allowed Ashby classes only)
     ========================================================================== */
  .ashby-job-board-heading {
    font-size: 1.75rem;
    line-height: 1.3;
    margin-bottom: var(--spacingNormal) !important;
  }

  .ashby-job-board-heading-count {
    font-size: 1.75rem;
    line-height: 1.3;
  }

  .ashby-job-board-filters-label,
  .ashby-job-board-reset-filters-label {
    font-size: 1.0625rem;
    line-height: 1.4;
  }

  .ashby-job-board-filter {
    font-size: 1.0625rem;
    line-height: 1.4;
    padding-left: var(--spacingNormal) !important;
    padding-right: var(--spacingNormal) !important;
  }
  
  .ashby-department-heading {
    font-size: 1.375rem;
    line-height: 1.4;
    padding-bottom: var(--spacingXsmall) !important;
    border-bottom: var(--borderWidthNormal) solid #e1e1e1;
    margin-top: var(--spacingXlarge) !important;
    margin-bottom: var(--spacingNormal) !important;
  }

  .ashby-department-heading-level {
    font-size: 1.375rem;
    line-height: 1.4;
    font-weight: 600;
    letter-spacing: var(--letterSpacingTight);
  }
  
  .ashby-job-posting-brief-department-heading,
  .ashby-job-posting-brief-department-heading-level {
    font-size: 1.25rem;
    line-height: 1.4;
  }
  
  .ashby-job-posting-brief-title {
    font-size: 1.125rem;
    line-height: 1.4;
    margin-bottom: var(--spacingXxsmall);
  }

  .ashby-job-posting-brief-details {
    font-size: 0.9375rem;
    line-height: 1.5;
  }
  
  .ashby-job-posting-right-pane-overview-tab,
  .ashby-job-posting-right-pane-application-tab {
    background: transparent !important;
  }

  .ashby-job-posting-right-pane > nav > a:hover {
    border-bottom: none !important;
  }

  /* Remove Ashby's default margin-left on tab anchors (desktop only) */
  .ashby-job-posting-right-pane > nav > a {
    margin-left: 0 !important;
  }

  /* Remove margin-left on slider too so it tracks correctly */
  .ashby-job-posting-right-pane-tab-slider {
    margin-left: 0 !important;
  }

  /* Add gap between tabs via nav */
  .ashby-job-posting-right-pane > nav {
    gap: var(--spacingLarge) !important;
  }

  .ashby-job-posting-right-pane-tab-slider {
    position: absolute !important;
    bottom: -1px !important;
    height: var(--borderWidthBold) !important;
    background: #000 !important;
  }


  .ashby-job-posting-heading {
    font-size: 1.5rem;
    line-height: 1.3;
    font-weight: 600;
    letter-spacing: var(--letterSpacingTight);
  }

  .ashby-job-posting-right-pane h1 {
    margin-top: var(--spacingXlarge) !important;
    margin-bottom: var(--spacingSmall) !important;
  }

  .ashby-job-posting-right-pane p {
    margin-bottom: 14px !important;
  }

  .ashby-job-posting-right-pane ul {
    margin-bottom: var(--spacingNormal) !important;
  }

  .ashby-job-posting-right-pane li {
    margin-bottom: var(--spacingXsmall) !important;
  }

  /* ==========================================================================
     Ashby class hooks (style as needed)
     ========================================================================== */
  
  /* Application form - autofill */
  .ashby-application-form-autofill-input-base-layer {}
  .ashby-application-form-autofill-input-description {}
  .ashby-application-form-autofill-input-drag-layer {}
  .ashby-application-form-autofill-input-form-alert {}
  .ashby-application-form-autofill-input-icon {}
  .ashby-application-form-autofill-input-pending-layer {}
  .ashby-application-form-autofill-input-root {}
  .ashby-application-form-autofill-input-title {}
  .ashby-application-form-autofill-pane {}
  .ashby-application-form-autofill-uploader {}
  
  /* Application form - general */
  .ashby-application-form-blocked-application-container {}
  .ashby-application-form-failure-container {}
  .ashby-application-form-field-entry {}
  .ashby-application-form-question-description {}
  .ashby-application-form-question-title {}
  .ashby-application-form-section-container {}
  .ashby-application-form-section-header {}
  .ashby-application-form-section-header-description {}
  .ashby-application-form-section-header-title {}
  .ashby-application-form-submit-button {}
  .ashby-application-form-success-container {}
  .ashby-application-form-texting-consent-description {}
  
  /* Departments & teams */
  .ashby-department-heading {}
  .ashby-department-heading-level {}
  
  /* Job board - list & filters */
  .ashby-job-board-back-to-all-jobs-button {}
  .ashby-job-board-filter {}
  .ashby-job-board-filters-label {}
  .ashby-job-board-heading {}
  .ashby-job-board-heading-count {}
  .ashby-job-board-reset-filters-label {}
  
  /* Job posting brief (list items) */
  .ashby-job-posting-brief-department-heading {}
  .ashby-job-posting-brief-department-heading-level {}
  .ashby-job-posting-brief-details {}
  .ashby-job-posting-brief-list {}
  .ashby-job-posting-brief-title {}
  
  /* Job posting - detail view */
  .ashby-job-posting-header {
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
  }
  .ashby-job-posting-heading {}
  .ashby-job-posting-left-pane {}
  .ashby-job-posting-right-pane {}
  .ashby-job-posting-right-pane-application-tab {}
  .ashby-job-posting-right-pane-overview-tab {}
  .ashby-job-posting-right-pane-tab-slider {}
  
  /* Surveys */
  .ashby-survey-form-container {}
  
  /* ==========================================================================
     Mobile
     ========================================================================== */
  @media (max-width: 787px) {
    .ashby-job-posting-brief {
      box-shadow: none;
      padding: 0 !important;
    }

    .ashby-job-posting-brief-list {
      padding: 0 !important;
    }

    .ashby-job-posting-brief-title {
      font-size: 1rem;
      padding-left: 14px !important;
      border-left: var(--borderWidthHeavy) solid #e1e1e1;
    }

    .ashby-job-posting-brief-details {
      padding-left: 18px !important;
    }

    .ashby-job-posting-brief-details {
      font-size: 0.8125rem;
    }

    .ashby-job-board-heading {
      font-size: 1.375rem;
      margin-bottom: var(--spacingSmall) !important;
    }

    .ashby-department-heading {
      margin-top: var(--spacingLarge) !important;
      margin-bottom: var(--spacingSmall) !important;
      font-size: 1.125rem;
      padding-bottom: var(--spacingXxsmall) !important;
    }

    .ashby-department-heading-level {
      font-size: 1.125rem;
    }

    .ashby-job-board-filter {
      font-size: 0.875rem;
      padding: var(--spacingXsmall) var(--spacingSmall) !important;
      width: 100%;
    }

    /* ------- After-selection (job detail) mobile fixes ------- */

    .ashby-job-posting-left-pane {
      background: transparent !important;
      box-shadow: none !important;
      border: none !important;
      border-radius: 0 !important;
      padding: 0 !important;
      margin-bottom: var(--spacingXsmall) !important;
    }

    .ashby-job-posting-right-pane {
      background: transparent !important;
      box-shadow: none !important;
      border: none !important;
      border-radius: 0 !important;
      padding: 24px 0 0 0 !important;
    }

    .ashby-job-posting-right-pane-overview-tab,
    .ashby-job-posting-right-pane-application-tab {
      font-size: 0.9375rem;
    }

    .ashby-job-posting-right-pane > nav {
      background: #f5f5f5 !important;
      border-radius: 0 !important;
      padding: var(--spacingXxsmall) !important;
      position: sticky !important;
      top: 4rem !important;
      z-index: 100 !important;
      gap: 0 !important;
    }

    .ashby-job-posting-right-pane > nav > a {
      margin-right: 0 !important;
      margin-left: 0 !important;
    }

    .ashby-job-posting-heading {
      font-size: 1.375rem;
      line-height: 1.3;
    }

    .ashby-job-board-back-to-all-jobs-button {
      position: relative !important;
      background: transparent !important;
      margin-left: var(--spacingSmall) !important;
      padding-left: 0 !important;
    }
  }
  
  