/* Root Variables */
:root {
    /* Primary Colors */
    --colorPrimary900: darkorange; /* Darker primary color */
    --colorPrimary600: orange; /* Lighter primary color */

    /* Dimensions */
    --widthMaxJobBoard: 800px; /* Max width of the job board container */
    /* --widthMaxJobBoard: 800px; */ /* Max width of the application form section */

    /* Border Radius */
    --borderRadiusContainer: 5px; /* Container border radius */
    --borderRadiusControl: 5px; /* Control elements border radius */
    --borderRadiusButton: 5px; /* Button border radius */

    /* Font Family */
    --fontFamily: "Inter Tight", sans-serif !important;

    /* Background Color */
    --colorAppBackground: transparent;
}

/* General Styles */
body {
    font-family: 'Inter Tight', sans-serif !important;
    background-color: transparent;
    color: #000 !important;
}

a {
    color: #000 !important;
}

button {
    font-family: 'Inter Tight', sans-serif !important;
    letter-spacing: 0px !important;
}

/* Department Heading */
.ashby-department-heading-level {
    color: #000 !important;
    font-weight: 500;
}

.ashby-department-heading-level {
    font-size: var(--fontSizeLarge) !important;
}


/* Job Posting Brief Title */
.ashby-job-posting-brief-title {
    color: #000 !important;
    font-weight: 500;
}

/* Job Board Filter */
.ashby-job-board-filter {
    background-color: transparent !important;
    background-image: none !important;
    border: #000 1px solid;
}

.ashby-job-board-filter:focus-visible {
    box-shadow: none;
    border: #000 1px solid;
}

/* Job Posting Brief */
.ashby-job-posting-brief {
    background-color: transparent;
    color: #000 !important;
}

.ashby-job-posting-brief:hover {
    background-color: #ff978080;
    color: #000 !important;
}

/* Job Posting Brief Details */
.ashby-job-posting-brief-details {
    color: #000;
}

/* Job Posting Right Pane */
.ashby-job-posting-right-pane-overview-tab,
.ashby-job-posting-right-pane-application-tab {
    color: #000;
}

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

.ashby-job-posting-right-pane > div {
    background-color: transparent !important;
}

/* Application Form */
.ashby-application-form-container {
    background-color: transparent !important;
    color: #000 !important;
}

.ashby-application-form-question-title {
    color: #000 !important;
}

.ashby-application-form-field-entry > input,
.ashby-application-form-field-entry > button {
    border: 1px solid #000 !important;
}

input:focus-within {
    border-color: var(--colorPrimary600);
    outline-color: transparent !important;
    outline-offset: 0;
    outline-style: solid;
    outline-width: 0px;
}

/* Job Posting Left Pane */
.ashby-job-posting-left-pane {
    background-color: transparent;
    margin-top: 0px !important;
    padding-left: 0px !important;
}

.ashby-job-posting-left-pane > div {
    border-bottom: 0px solid transparent;
}

.ashby-job-posting-left-pane > div > div > p {
    color: #000;
}

/* Job Board Heading */
.ashby-job-board-heading,
.ashby-job-posting-heading {
    color: #000;
}

/* Job Board Filters Label */
.ashby-job-board-filters-label {
    color: #000;
    font-weight: 400;
}

label {
    font-weight: var(--fontWeightLightBold) !important;
}

/* Buttons */
button,
.ashby-application-form-submit-button,
.ashby-job-board-back-to-all-jobs-button {
    grid-column-gap: .5rem;
    grid-row-gap: .5rem;
    border: 0px none #000;
    border-radius: 5px !important;
    background-color: #ff9780;
    color: #000;
    text-align: center;
    text-transform: none;
    white-space: nowrap;
    justify-content: center;
    align-items: center;
    max-width: 100%;
    padding: .75rem 1.25rem;
    font-size: 1.125rem;
    font-weight: 400 !important;
    line-height: 1;
    text-decoration: none;
    transition: all .15s;
    display: flex;
    box-shadow: none !important;
}

button:hover,
.ashby-application-form-submit-button:hover,
.ashby-job-board-back-to-all-jobs-button:hover {
    background-color: #000000;
    box-shadow: none;
    color: #fff;
}

svg > path{
    fill: currentColor;
}

/* Third direct child div inside the field entry */
.ashby-application-form-field-entry > div + div + div {
  column-gap: 1rem !important;  
}

/* Extra safeguard: target Ashby's yes/no container by predictable class fragments */
.ashby-application-form-field-entry > div[class^="_container_"][class*="_yesno_"] {
  column-gap: 1rem !important;
}

.ashby-job-board-back-to-all-jobs-button > svg {
    display: none;
}

/* Hide Ashby back-to-all-jobs button in job posting header */
.ashby-job-posting-header .ashby-job-board-back-to-all-jobs-button {
  display: none !important;
}

/* Application Form Success Container */
.ashby-application-form-success-container {
    color: #000;
}

/* Application Form Autofill Uploader */
.ashby-application-form-autofill-uploader {
    border: 1px dashed #000;
}

/* Application Form Field Entry */
.ashby-application-form-field-entry > div > div > p {
    color: #000;
    font-weight: 400;
}

.ashby-application-form-field-entry > div > button {
    color: #000;
    border: 1px solid #000;
}

.ashby-application-form-field-entry > div > button:hover {
    color: #fff;
    border: 1px solid #000;
    background-color: #000;
}

/* Hide empty Ashby description blocks */
.ashby-application-form-question-description > p:empty {
  display: none !important;
}

/* If the only child is an empty <p>, hide the wrapper too (modern browsers) */
.ashby-application-form-question-description:has(> p:empty) {
  display: none !important;
}

/* Buttons (global CTAs) */
button,
.ashby-application-form-submit-button,
.ashby-job-board-back-to-all-jobs-button {
  border: 1px solid var(--relume-library-lite--rl-black, #000) !important;
  border-radius: var(--border-radius--xsmall-5px, 5px) !important;
  background-color: var(--black, #000) !important;
  color: var(--primary-white, #fff) !important;
  text-align: center !important;
  cursor: pointer !important;
  flex: none !important;
  justify-content: center !important;
  align-items: center !important;
  padding: .81rem 1.25rem !important;
  font-size: 1rem !important;
  line-height: 1 !important;
  transition: all .15s ease !important;
  display: flex !important;
  box-shadow: none !important;
}

button:hover,
.ashby-application-form-submit-button:hover,
.ashby-job-board-back-to-all-jobs-button:hover,
button:active,
.ashby-application-form-submit-button:active,
.ashby-job-board-back-to-all-jobs-button:active  {
  background-color: var(--primary-coral, #ff9780) !important;
  color: var(--black, #000) !important;
}

/* Job posting heading spacing */
.ashby-job-posting-heading {
  margin-left: var(--spacingSmall, 1rem) !important;
}

/* === Yes/No field — selected state should match hover ===
   Cover multiple implementation patterns used by Ashby. */
.ashby-application-form-field-entry [class*="_yesno_"] button[aria-pressed="true"],
.ashby-application-form-field-entry [class*="_yesno_"] button[aria-checked="true"],
.ashby-application-form-field-entry [class*="_yesno_"] button[aria-current="true"],
.ashby-application-form-field-entry [class*="_yesno_"] button[data-state="active"],
.ashby-application-form-field-entry [class*="_yesno_"] input:checked + button {
  background-color: var(--primary-coral, #ff9780) !important;
  color: var(--black, #000) !important;
  border-color: var(--black, #000) !important;
}

/* Also handle Ashby's hashed "active" class on the button itself */
.ashby-application-form-field-entry [class*="_yesno_"] button[class*="_active_"] {
  background-color: var(--primary-coral, #ff9780) !important;
  color: var(--black, #000) !important;
  border-color: var(--black, #000) !important;
}

/* Keep same look on hover while selected via hashed class */
.ashby-application-form-field-entry [class*="_yesno_"] button[class*="_active_"]:hover {
  background-color: var(--primary-coral, #ff9780) !important;
  color: var(--black, #000) !important;
}

/* Keep the same look on hover while selected */
.ashby-application-form-field-entry [class*="_yesno_"] button[aria-pressed="true"]:hover,
.ashby-application-form-field-entry [class*="_yesno_"] button[aria-checked="true"]:hover,
.ashby-application-form-field-entry [class*="_yesno_"] button[aria-current="true"]:hover,
.ashby-application-form-field-entry [class*="_yesno_"] button[data-state="active"]:hover,
.ashby-application-form-field-entry [class*="_yesno_"] input:checked + button:hover {
  background-color: var(--primary-coral, #ff9780) !important;
  color: var(--black, #000) !important;
}

/* ==== Job Posting Header — layout & spacing fixes ==== */
/* Make the entire header clean with no backgrounds/borders */
.ashby-job-posting-header {
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}

/* Target the hashed titles wrapper inside the header */
.ashby-job-posting-header [class*="_titles_"] {
  display: block !important;
  padding-left: var(--spacingSmall, 1rem) !important;
  margin: var(--spacingSmall, 1rem) 0 !important;
  background: transparent !important; /* remove colored bar backgrounds */
}

/* Remove any decorative before/after bars Ashby injects */
.ashby-job-posting-header [class*="_titles_"]::before,
.ashby-job-posting-header [class*="_titles_"]::after {
  content: none !important;
  display: none !important;
}

/* Keep the actual heading flush with our padding */
.ashby-job-posting-heading {
  margin: 0 !important; /* reset default margins */
  margin-left: var(--spacingSmall, 1rem) !important; /* ensure left spacing if titles wrapper changes */
}

/* Nudge the right-pane tabs to align with the heading */
.ashby-job-posting-right-pane > nav {
  margin-left: var(--spacingSmall, 1rem) !important;
}

/* Ensure the back-to-list button in header stays hidden (redundant safety) */
.ashby-job-posting-header .ashby-job-board-back-to-all-jobs-button {
  display: none !important;
}