/* ==========================================================================
   Ashby Job Board – Pareto.ai Brand Theme
   ==========================================================================
   The embed runs inside an iframe so fonts and styles from the parent
   Webflow page are not inherited. @font-face declarations below load
   the same files Webflow uses.
   ========================================================================== */

/* ========================= */
/* 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: #faf8f5;
  --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: #f8f6f0;

  /* 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", Arial, sans-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: 0px;
  --borderRadiusControl: 0px;
  --borderRadiusButton: 0.5rem;
  --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: var(--colorBrandCream);
  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(--colorNeutral950);
  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);
}

a {
  color: var(--colorBrandBrown);
}

/* ========================= */
/* Job Board – Public Classes */
/* ========================= */

/* ---- Board heading ---- */
.ashby-job-board-heading {
  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(--colorNeutral950);
}

.ashby-job-board-heading-count {}

/* ---- Filters ---- */
.ashby-job-board-filter {}
.ashby-job-board-filters-label {}
.ashby-job-board-reset-filters-label {}

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

/* ---- Department / team headings ---- */
.ashby-department-heading {
  font-family: var(--fontFamilyDisplay);
  font-weight: 300;
  font-size: var(--fontSizeLarge);
  color: var(--colorNeutral950);
  margin-left: 0px;
  display: inline;
  margin-bottom: var(--spacingXsmall);
}

.ashby-department-heading-level {
  color: var(--colorNeutral950);
}

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

.ashby-job-posting-brief-list {
  margin-bottom: var(--spacingXlarge);
  margin-top: var(--spacingXsmall);
}

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

.ashby-job-posting-brief-list > a:first-child {
  border-top: var(--borderWidthNormal) solid transparent !important;
}

.ashby-job-posting-brief-list > a::after {
  content: "Apply";
  border-radius: var(--borderRadiusButton);
  font-family: var(--fontFamily);
  font-weight: var(--fontWeightLightBold);
  font-size: var(--fontSizeNormal);
  line-height: 1.25;
  padding: 10px 40px;
  background-color: var(--colorNeutral200);
  color: var(--colorNeutral950);
  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(--colorNeutral950);
  font-size: var(--fontSizeLarge);
  font-weight: var(--fontWeightLightBold);
}

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

.ashby-job-posting-brief-department-heading {}
.ashby-job-posting-brief-department-heading-level {}

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

@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: var(--colorBrandCream);
}

.ashby-job-posting-right-pane {
  font-family: var(--fontFamily);
  color: var(--colorBrandBrown);
  background-color: var(--colorBrandCream);
}

.ashby-job-posting-right-pane-overview-tab,
.ashby-job-posting-right-pane-application-tab {}
.ashby-job-posting-right-pane-tab-slider {}

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

.ashby-application-form-section-container {}
.ashby-application-form-section-header {}
.ashby-application-form-section-header-title {}
.ashby-application-form-section-header-description {}
.ashby-application-form-question-title {}
.ashby-application-form-question-description {}
.ashby-application-form-field-entry {}
.ashby-application-form-submit-button {}
.ashby-application-form-success-container {}
.ashby-application-form-failure-container {}
.ashby-application-form-blocked-application-container {}
.ashby-application-form-texting-consent-description {}

/* ---- Autofill / resume uploader ---- */
.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 {}

/* ---- Survey ---- */
.ashby-survey-form-container {}

/* ========================= */
/* Internal Ashby Components  */
/* ========================= */

/* ---- Layout containers ---- */
._titles_ud4nd_34 {
  margin: 0;
  margin-bottom: var(--spacingXlarge);
}

._content_ud4nd_71 {
  padding: 0;
}

._container_ud4nd_29 {
  padding-top: var(--spacingXxxlarge);
}

/* ---- Top description / hero ---- */
._topDescription_12ylk_30 {
  margin-bottom: 96px;
}

._topDescription_12ylk_30 h1 {
  font-size: var(--fontSizeHuge);
  font-family: var(--fontFamilyDisplay);
  font-weight: 300;
  color: var(--colorNeutral950);
  letter-spacing: var(--letterSpacingTight);
  margin-bottom: 72px;
}

._topDescription_12ylk_30 h1 strong {
  color: inherit;
  font-weight: inherit;
}

@media only screen and (max-width: 768px) {
  ._topDescription_12ylk_30 h1 {
    font-size: var(--fontSizeXxxxlarge);
    margin-bottom: var(--spacingLarge);
  }

  ._topDescription_12ylk_30 {
    margin-bottom: var(--spacingXxlarge);
  }
}

/* ---- Job posting hover state ---- */
._jobPosting_12ylk_379:hover,
._jobPosting_12ylk_379:active {
  background: transparent;
}

._section_12ylk_341 {
  padding-top: 0;
}

/* ---- Tabs ---- */
._tabs_4fqrp_30 {
  box-shadow: inset 0 -1px 0 0 var(--colorNeutral200);
}

._tab_4fqrp_30 {
  color: var(--colorNeutral500);
  font-family: var(--fontFamilyDisplay);
  font-weight: 300;
  font-size: var(--fontSizeXlarge);
}

._tab_4fqrp_30:not(._active_4fqrp_60):hover {
  border-bottom-color: var(--colorNeutral300);
  color: var(--colorBrandBrown);
}

._tab_4fqrp_30._active_4fqrp_60 {
  color: var(--colorNeutral950);
}

@media only screen and (min-width: 768px) {
  ._tab_4fqrp_30,
  ._slider_4fqrp_69 {
    margin-left: 0px;
    border-radius: 0px;
  }

  :nth-child(2)._active_4fqrp_60 ~ ._slider_4fqrp_69 {
    transform: translate(200px);
  }
}

/* ---- Job posting description text ---- */
._descriptionText_4fqrp_201 ol,
._descriptionText_4fqrp_201 ul {
  margin: var(--spacingNormal) 0 var(--spacingNormal) var(--spacingXlarge);
}

@media only screen and (max-width: 768px) {
  ._descriptionText_4fqrp_201 ol,
  ._descriptionText_4fqrp_201 ul {
    margin: var(--spacingNormal) 0 var(--spacingNormal) var(--spacingNormal);
  }
}

/* ---- Job posting details grid ---- */
@media only screen and (min-width: 768px) {
  ._details_4fqrp_417 {
    grid-template-columns: 260px 1fr;
    grid-column-gap: 2rem;
  }
}

/* ---- Buttons ---- */
._button_8wvgw_29 {
  background-color: var(--colorBrandBrown);
  font-family: var(--fontFamily);
  font-weight: var(--fontWeightLightBold);
  color: var(--colorBrandCream);
  border: none;
  border-radius: var(--borderRadiusButton);
  transition: background-color var(--transitionDurationSlow);
}

._button_8wvgw_29:hover,
._button_8wvgw_29:active {
  background-color: var(--colorBrandBrownDark);
  box-shadow: none;
}

._button_8wvgw_29 svg {
  fill: currentColor;
}

/* ---- Application form container ---- */
._container_101oc_29 {
  box-shadow: none;
  border-radius: 0px;
  margin-top: 0px;
  padding: var(--spacingLarge) 0px;
  background-color: var(--colorBrandCream);
}

._heading_101oc_53 {
  color: var(--colorBrandBrown);
}

._section_101oc_37 > p {
  font-family: var(--fontFamilyDisplay);
  font-weight: 300;
  font-size: var(--fontSizeNormal);
}

/* ---- Form field entries ---- */
body ._fieldEntry_hkyf8_29 {
  margin-bottom: 40px;
}

._label_hkyf8_43 {
  font-family: var(--fontFamily);
  color: var(--colorNeutral950);
  font-weight: var(--fontWeightLightBold);
  margin-bottom: var(--spacingSmall);
}

._description_hkyf8_49 {
  font-family: var(--fontFamily);
  color: var(--colorNeutral500);
  font-size: var(--fontSizeSmall);
}

/* ---- Form inputs ---- */
._input_1wkz4_28 {
  border-top-width: 0px;
  border-right-width: 0px;
  border-left-width: 0px;
  border-bottom: var(--borderWidthNormal) solid var(--colorNeutral200);
  padding: 12px 0px;
  transition: all var(--transitionDuration) var(--transitionFunction);
  cursor: auto;
  font-family: var(--fontFamily);
  color: var(--colorBrandBrown);
}

._input_1wkz4_28::placeholder {
  color: var(--colorNeutral300);
}

._input_1wkz4_28:hover {
  border-bottom: var(--borderWidthNormal) solid var(--colorNeutral400);
  color: var(--colorBrandBrown);
}

._input_1wkz4_28:not([data-disabled="true"]):focus-within {
  outline-width: 0px;
  border-bottom-color: var(--colorBrandBrown);
}

/* ---- Select / option styles ---- */
._option_y2cw4_33 {
  border: var(--borderWidthNormal) solid var(--colorNeutral300);
  margin-left: calc(-1 * var(--borderWidthNormal));
}

._option_y2cw4_33:not(._active_y2cw4_58):hover {
  background: var(--colorNeutral50A);
}

/* ---- Resume upload container ---- */
@media only screen and (min-width: 768px) {
  ._container_6k3nb_71 {
    border: var(--borderWidthBold) dashed var(--colorNeutral200);
    transition: all var(--transitionDuration) var(--transitionFunction);
    background: var(--colorNeutral50A);
  }

  ._container_6k3nb_71:hover {
    border: var(--borderWidthBold) dashed var(--colorNeutral300);
  }
}

/* ---- Autofill widget ---- */
._root_xd2v0_1 {
  background: var(--colorNeutral50A);
}

._title_xd2v0_64 {
  font-family: var(--fontFamilyDisplay);
  font-weight: 300;
  font-size: var(--fontSizeLarge);
}

._header_xd2v0_43 {
  align-items: center;
  gap: var(--spacingXsmall);
}

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