:root {
  --colorPrimary900: #1a1a1a;
  --colorPrimary600: #a38f76;
  --colorAccent: #d8c8b8;
  --colorBackground: #faf9f7;
  --colorText: #1a1a1a;
  --colorMutedText: #7a7a7a;
  --colorSubText: #3D3C3B; /* Darker subtext color */

  /* Fonts */
  --fontTitle: "Canela", serif;
  --fontText: "Cormorant Garamond", serif;
  --fontButton: "Canela", serif; /* LIGHT */

  --borderRadiusContainer: 8px;
  --borderRadiusButton: 6px;
  --transitionFast: all 0.25s ease-in-out;
}

/* Main heading (TITLE) */
.ashby-job-board-heading {
  font-family: var(--fontTitle);
  font-size: 2.25rem;
  font-weight: 300; /* LIGHT */
  color: var(--colorText);
  margin-bottom: 2rem;
  padding: 2rem;
  background-image: url("polene-paris.com/cdn/shop/files/RESIZE-PAYSAGE_5d6980e6-f39d-4779-a7d8-32ad8dedef62.jpg?v=1763626180&width=1920");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  border-radius: var(--borderRadiusContainer);
  box-shadow: none; /* Removed shadow around Open Positions */
}

/* Light overlay for readability */
.ashby-job-board-heading::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(255,255,255,0.6);
  z-index: -1;
  border-radius: var(--borderRadiusContainer);
}

/* Job cards */
.ashby-job-posting-brief {
  font-family: var(--fontText);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  border: 1px solid #eceae6;
  border-radius: var(--borderRadiusContainer);
  padding: 2rem;
  margin: 0 auto 1.5rem auto; /* center cards */
  transition: var(--transitionFast);
  cursor: pointer;
  color: var(--colorText);
  position: relative;
  box-shadow: 0 3px 12px rgba(0,0,0,0.05);
  max-width: 100%; /* Use as much width as allowed inside Ashby container */
}

/* Light overlay for job cards */
.ashby-job-posting-brief::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(255,255,255,0.65);
  border-radius: var(--borderRadiusContainer);
  z-index: -1;
}

/* Hover effect */
.ashby-job-posting-brief:hover {
  border-color: var(--colorPrimary600);
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(0,0,0,0.08);
}

/* Job title (TITLE) */
.ashby-job-posting-brief-title {
  font-family: var(--fontTitle);
  font-size: 1.5rem;
  font-weight: 300; /* LIGHT */
  margin-bottom: 0.5rem;
  color: var(--colorText);
  position: relative;
  z-index: 1;
}

/* Department heading + meta text */
.ashby-job-posting-brief-department-heading-level {
  font-family: var(--fontText);
  font-size: 0.95rem;
  font-weight: 300; /* LIGHT */
  color: var(--colorSubText);
  position: relative;
  z-index: 1;
}

/* Paragraphs */
p,
.ashby-job-posting-brief p {
  font-family: var(--fontText);
  font-weight: 300; /* LIGHT */
  color: var(--colorSubText);
  line-height: 1.65;
  margin-bottom: 1rem;
}

/* Buttons (LIGHT) */
.ashby-application-form-submit-button {
  font-family: var(--fontButton);
  font-weight: 300; /* LIGHT */
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: #ffffff;
  background-color: var(--colorPrimary900);
  border-radius: var(--borderRadiusButton);
  border: none;
  padding: 0.9rem 1.5rem;
  width: 100%;
  margin-top: 1rem;
  transition: var(--transitionFast);
}

/* Hover on buttons */
.ashby-application-form-submit-button:hover {
  background-color: var(--colorPrimary600);
  transform: translateY(-1px);
}

/* Success container */
.ashby-application-form-success-container {
  font-family: var(--fontText);
  background-color: #f4f2ef;
  border-radius: var(--borderRadiusContainer);
  padding: 2rem;
  color: var(--colorPrimary900);
  text-align: center;
  position: relative;
  z-index: 1;
}

/* Scrollbar styling */
::-webkit-scrollbar {
  width: 6px;
}
::-webkit-scrollbar-thumb {
  background-color: var(--colorPrimary600);
  border-radius: 3px;
}

/* Fade in animation */
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Optional: alternate row backgrounds for better visual depth */
.ashby-job-posting-brief:nth-child(odd) {
  background-color: rgba(250, 249, 247, 0.9);
}

.ashby-job-posting-brief:nth-child(even) {
  background-color: rgba(255, 255, 255, 0.95);
}
