/* ==========================================================================
   Ashby Job Board — Pareto.ai Brand Theme (Dashboard Version)
   ==========================================================================
   This version uses only public ashby-* classes and standard CSS.
   Safe to upload directly to Ashby Settings → Job Board → Custom CSS.
   ========================================================================== */

/* ========================= */
/* Fonts                      */
/* ========================= */
@font-face {
  font-family: "TWK Lausanne";
  src: url("https://cdn.prod.website-files.com/68af03db44bb54b7bcf3ef0a/68b1570194d4e812f2b5dd95_TWKLausanne-300.woff2") format("woff2");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "TWK Lausanne";
  src: url("https://cdn.prod.website-files.com/68af03db44bb54b7bcf3ef0a/68b15701af665415ad057350_TWKLausanne-400.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "TWK Lausanne";
  src: url("https://cdn.prod.website-files.com/68af03db44bb54b7bcf3ef0a/68b157018d1ae666f9e051fe_TWKLausanne-500.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "TWK Lausanne";
  src: url("https://cdn.prod.website-files.com/68af03db44bb54b7bcf3ef0a/68b157018d74d681c5720ce2_TWKLausanne-650.woff2") format("woff2"),
       url("https://cdn.prod.website-files.com/68af03db44bb54b7bcf3ef0a/68b15701e1db58596e430821_TWKLausanne-600.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "TWK Lausanne";
  src: url("https://cdn.prod.website-files.com/68af03db44bb54b7bcf3ef0a/68b1570124aa4ca815e27f1c_TWKLausanne-700.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Getsura";
  src: url("https://cdn.prod.website-files.com/68af03db44bb54b7bcf3ef0a/68b5458f42e2b142ba543875_GesturaText-Light.woff2") format("woff2");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

/* ========================= */
/* Global Variables           */
/* ========================= */
:root {
  /* Pareto warm-brown neutral scale */
  --colorNeutral50: #fbfaf5;
  --colorNeutral100: #f8f6f0;
  --colorNeutral200: #ecece5;
  --colorNeutral300: #dddad2;
  --colorNeutral400: #b5b0a6;
  --colorNeutral500: #8a847a;
  --colorNeutral600: #6b655f;
  --colorNeutral700: #4d4843;
  --colorNeutral800: #33302c;
  --colorNeutral900: #1f1d1b;
  --colorNeutral950: #141414;

  /* Neutral alpha variants */
  --colorNeutral50A: rgba(248, 246, 240, 0.78);
  --colorNeutral100A: rgba(236, 236, 229, 0.67);
  --colorNeutral200A: rgba(221, 218, 210, 0.51);
  --colorNeutral300A: rgba(181, 176, 166, 0.24);
  --colorNeutral400A: rgba(138, 132, 122, 0.16);
  --colorNeutral950A: rgba(20, 20, 20, 0.1);

  /* Brand colors */
  --colorBrandBrown: #5b2d2d;
  --colorBrandBrownDark: #4a2424;
  --colorBrandBrownFade: rgba(91, 45, 45, 0.6);
  --colorBrandPurple: #6369e5;
  --colorBrandPurpleDark: #4f55cc;
  --colorBrandLightPurple: #d1d8ff;
  --colorBrandMint: #edffd9;
  --colorBrandCream: #fbfaf5;

  /* Ashby primary overrides */
  --colorPrimary500A: rgba(91, 45, 45, 0.13);
  --colorPrimary600: var(--colorBrandBrown) !important;
  --colorPrimary900: var(--colorNeutral950) !important;
  --colorSecondary900: var(--colorBrandPurple);

  /* Semantic colors */
  --colorNegative800: #891b1b;
  --colorNegative600: #dc3030;
  --colorNegative200: #fce8e8;
  --colorPositive800: #197729;
  --colorPositive600: #29b458;
  --colorPositive200: #eafcec;
  --colorWarning900: #5c4813;
  --colorWarning800: #8c6d1f;
  --colorWarning600: #f4ca64;

  --colorAppBackground: var(--colorBrandCream);

  /* Shadows */
  --colorNeutralShadow: rgba(91, 45, 45, 0.12);
  --colorPrimaryShadow: rgba(91, 45, 45, 0.12);
  --colorShadowPrimaryXLight: rgba(20, 20, 20, 0.06);
  --colorShadowPrimaryLight: rgba(20, 20, 20, 0.12);

  /* Widths */
  --widthMaxContent: 1024px;
  --widthMaxJobBoard: 960px;

  /* Spacing */
  --spacingXxxsmall: 2px;
  --spacingXxsmall: 4px;
  --spacingXsmall: 8px;
  --spacingSmall: 12px;
  --spacingNormal: 16px;
  --spacingLarge: 24px;
  --spacingXlarge: 32px;
  --spacingXxlarge: 48px;
  --spacingXxxlarge: 64px;

  /* Typography */
  --fontFamily: "TWK Lausanne", Arial, sans-serif;
  --fontFamilyDisplay: "Getsura", Georgia, serif;
  --fontSizeHuge: 68px;
  --fontSizeXxxxlarge: 40px;
  --fontSizeXxxlarge: 30px;
  --fontSizeXxlarge: 24px;
  --fontSizeXlarge: 20px;
  --fontSizeLarge: 18px;
  --fontSizeNormal: 16px;
  --fontSizeSmall: 14px;
  --fontSizeXsmall: 12px;
  --fontWeightNormal: 400;
  --fontWeightLightBold: 500;
  --fontWeightMediumBold: 600;
  --fontWeightHeavyBold: 700;
  --letterSpacingTight: -0.01em;
  --letterSpacingWide: 0.04em;
  --lineHeightSingle: 1.15;
  --lineHeightTitle: 1.2;
  --lineHeightNormal: 1.5;

  /* Borders */
  --borderRadiusContainer: 4px;
  --borderRadiusControl: 4px;
  --borderRadiusButton: 0.375rem;
  --borderRadiusCircle: 100%;
  --borderWidthThin: 0.5px;
  --borderWidthNormal: 1px;
  --borderWidthBold: 2px;

  /* Transitions */
  --transitionDurationFast: 0.1s;
  --transitionDuration: 0.25s;
  --transitionDurationSlow: 0.4s;
  --transitionFunction: ease-in-out;

  /* Other */
  --tabSliderHeight: 2px;
  --checkboxAndRadioDim: 24px;
  --checkboxAndRadioCheckDim: 12px;
  --selectIconDim: 16px;
}

/* ========================= */
/* Basic Elements             */
/* ========================= */
body {
  background-color: transparent;
  color: var(--colorBrandBrown);
  font-family: var(--fontFamily);
}

footer {
  display: none !important;
}

b, strong {
  font-weight: var(--fontWeightMediumBold);
  color: var(--colorBrandBrown);
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--fontFamilyDisplay);
  font-weight: 300;
  color: var(--colorBrandBrown);
  letter-spacing: var(--letterSpacingTight);
}

h1 {
  font-size: var(--fontSizeXxxxlarge);
  line-height: var(--lineHeightSingle);
}

h2 {
  font-size: var(--fontSizeXxxlarge);
  line-height: var(--lineHeightTitle);
}

h3 {
  font-size: var(--fontSizeXxlarge);
  line-height: var(--lineHeightTitle);
}

p, li, td, th, label, span, div {
  font-family: var(--fontFamily);
  font-weight: 300;
}

a {
  color: var(--colorBrandBrown);
  font-weight: 300;
}

h1 strong, h2 strong, h3 strong, h4 strong, h5 strong, h6 strong {
  font-weight: inherit;
  font-family: inherit;
}

/* ========================= */
/* Job Board — Public Classes */
/* ========================= */

/* ---- Board heading ---- */
.ashby-job-board-heading {
  font-family: var(--fontFamilyDisplay);
  font-weight: 300;
  font-size: var(--fontSizeXxlarge);
  letter-spacing: var(--letterSpacingTight);
  line-height: var(--lineHeightTitle);
  margin-top: 0 !important;
  color: var(--colorBrandBrown);
}

.ashby-job-board-heading-count {
  font-family: var(--fontFamilyDisplay);
  font-weight: 300;
  font-size: var(--fontSizeXlarge);
  letter-spacing: var(--letterSpacingTight);
  line-height: var(--lineHeightTitle);
  margin-top: 0 !important;
  color: var(--colorBrandBrown);
}

/* ---- Filters ---- */
.ashby-job-board-filter {
  display: none !important;
}

/* Hide the filter container (including chevron icons) via :has() */
div:has(> .ashby-job-board-filter) {
  display: none !important;
}

/* Hide the entire filters section */
div:has(.ashby-job-board-filters-label) {
  display: none !important;
}

.ashby-job-board-filters-label { display: none !important; }
.ashby-job-board-reset-filters-label { display: none !important; }

/* ---- Back to all jobs ---- */
.ashby-job-board-back-to-all-jobs-button {}

/* ---- Department / team headings ---- */
.ashby-department-heading {
  display: none !important;
}

.ashby-department-heading-level:first-child {
  display: block;
  font-family: var(--fontFamily);
  font-weight: 300;
  font-size: var(--fontSizeSmall);
  color: var(--colorNeutral500);
  margin-bottom: var(--spacingXsmall);
}

.ashby-department-heading-level:last-child {
  font-family: var(--fontFamilyDisplay);
  font-weight: 300;
  font-size: var(--fontSizeXxlarge);
  color: var(--colorBrandBrown);
}

/* ---- Job posting brief (list items) ---- */
.ashby-job-posting-brief {
  margin-left: 0px !important;
  background-color: transparent !important;
  padding: 0px !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

.ashby-job-posting-brief-list {
  margin-bottom: 0;
  margin-top: 0;
}

.ashby-job-posting-brief-list > a {
  display: flex;
  padding: var(--spacingXlarge) 0px;
  justify-content: space-between;
  align-items: center;
  border-top: none !important;
  border-bottom: var(--borderWidthNormal) solid var(--colorNeutral300) !important;
  transition: all var(--transitionDuration) var(--transitionFunction);
  background-color: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

.ashby-job-posting-brief-list > a::after {
  content: "Apply";
  border-radius: var(--borderRadiusButton);
  font-family: var(--fontFamily);
  font-weight: var(--fontWeightNormal);
  font-size: var(--fontSizeNormal);
  line-height: 1.25;
  padding: 10px 40px;
  background-color: var(--colorNeutral200);
  color: var(--colorBrandBrown);
  transition: all var(--transitionDuration) var(--transitionFunction);
}

.ashby-job-posting-brief-list > a:hover::after {
  background-color: var(--colorBrandBrown);
  color: var(--colorBrandCream);
}

.ashby-job-posting-brief-title {
  color: var(--colorBrandBrownDark);
  font-size: var(--fontSizeXlarge);
  font-weight: var(--fontWeightNormal);
}

.ashby-job-posting-brief-details {
  font-family: var(--fontFamily);
  color: var(--colorNeutral600);
  font-weight: 300;
}

/* ---- Individual job posting ---- */
.ashby-job-posting-heading {
  font-family: var(--fontFamilyDisplay);
  font-weight: 300;
  letter-spacing: -0.03em;
  font-size: var(--fontSizeXxxxlarge);
  color: var(--colorBrandBrown);
}

@media only screen and (max-width: 768px) {
  .ashby-job-posting-heading {
    letter-spacing: -0.02em;
    font-size: var(--fontSizeXxxxlarge);
  }
}

.ashby-job-posting-header {
  font-family: var(--fontFamily);
  color: var(--colorBrandBrown);
}

.ashby-job-posting-left-pane {
  font-family: var(--fontFamily);
  color: var(--colorBrandBrown);
  background-color: transparent !important;
  overflow: hidden;
  border-radius: 0 !important;
  box-shadow: none !important;
  border: none !important;
}

.ashby-job-posting-left-pane p,
.ashby-job-posting-left-pane .ashby-job-posting-brief-department-heading-level:last-child,
.ashby-job-posting-left-pane [class*="compensationTier"] {
  font-family: var(--fontFamily) !important;
  font-weight: 300 !important;
  font-size: var(--fontSizeNormal) !important;
  color: var(--colorBrandBrown) !important;
}

.ashby-job-posting-left-pane .ashby-job-posting-brief-department-heading-level:first-child {
  font-family: var(--fontFamily) !important;
  font-weight: 300 !important;
  font-size: var(--fontSizeXsmall) !important;
  color: var(--colorNeutral500) !important;
}

.ashby-job-posting-right-pane {
  font-family: var(--fontFamily);
  color: var(--colorBrandBrown);
  background-color: var(--colorBrandCream) !important;
  padding-left: var(--spacingNormal);
  border-radius: 0 !important;
  box-shadow: none !important;
  border: none !important;
}

/* ---- Tabs ---- */
.ashby-job-posting-right-pane nav[role="tablist"] {
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-shadow: inset 0 -1px 0 0 var(--colorNeutral200);
}

/* ---- Overview & Application tab containers ---- */
.ashby-job-posting-right-pane-overview-tab,
.ashby-job-posting-right-pane-overview-tab div,
.ashby-job-posting-right-pane-application-tab,
.ashby-job-posting-right-pane-application-tab div {
  background-color: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* ---- Application form ---- */
.ashby-application-form-container {
  font-family: var(--fontFamily);
  color: var(--colorBrandBrown);
  background-color: transparent !important;
}

.ashby-application-form-container input,
.ashby-application-form-container textarea,
.ashby-application-form-container select {
  background-color: transparent !important;
}

.ashby-application-form-autofill-pane,
.ashby-application-form-autofill-uploader,
.ashby-application-form-autofill-input-root,
.ashby-application-form-autofill-input-base-layer {
  background-color: transparent !important;
}

/* ---- Mobile ---- */
@media only screen and (max-width: 768px) {
  .ashby-job-posting-brief-list > a {
    flex-direction: column;
    align-items: start;
    gap: var(--spacingLarge);
  }

  .ashby-job-posting-left-pane,
  .ashby-job-posting-header {
    box-shadow: none !important;
    border-radius: 0 !important;
    border: none !important;
    background-color: transparent !important;
  }

  .ashby-job-posting-right-pane {
    box-shadow: none !important;
    border-radius: 0 !important;
    border: none !important;
    background-color: var(--colorBrandCream) !important;
  }

  .ashby-job-posting-right-pane-overview-tab,
  .ashby-job-posting-right-pane-application-tab {
    background-color: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
  }

  .ashby-job-posting-right-pane nav[role="tablist"] {
    background-color: var(--colorBrandCream) !important;
  }
}
